@piplup/rhf-adaptersreact-number-formatComponents
PatternFormatElement
A pre-integrated PatternFormatElement component for masked and pattern-based input with React Hook Form.
Import
import { PatternFormatElement } from "@piplup/rhf-adapters/react-number-format";Usage
"use client";import Stack from "@mui/material/Stack";import { PatternFormatElement } from "@piplup/rhf-adapters/react-number-format";import { MuiButtonElement } from "@piplup/rhf-adapters/mui-material";import { useForm } from "react-hook-form";export default function Page() { const { control, handleSubmit } = useForm({ defaultValues: { card: "4242424242424242" }, }); return ( <form onSubmit={handleSubmit((values) => alert(JSON.stringify(values, null, 2)), )} > <Stack direction="column" spacing={2}> <PatternFormatElement control={control} name="card" format="#### #### #### ####" mask="_" /> <div> <MuiButtonElement control={control} type="submit" variant="contained"> Submit </MuiButtonElement> </div> </Stack> </form> );}"use client";import Stack from "@mui/material/Stack";import { PatternFormatElement } from "@piplup/rhf-adapters/react-number-format";import { MuiButtonElement } from "@piplup/rhf-adapters/mui-material";import { FormContainer } from "@piplup/rhf-core";export default function Page() { return ( <FormContainer defaultValues={{ card: "4242424242424242" }} onSubmit={(values) => alert(JSON.stringify(values, null, 2))} > <Stack direction="column" spacing={2}> <PatternFormatElement name="card" format="#### #### #### ####" mask="_" /> <div> <MuiButtonElement type="submit" variant="contained"> Submit </MuiButtonElement> </div> </Stack> </FormContainer> );}Props
Prop
Type
PatternFormatElement supports all standard props of the PatternFormat component, along with additional adapter-specific props.
The
refis forwarded to the underlying<PatternFormat />component.
Notes
- Use this component for masked values such as card, phone, or code patterns.
- For custom masked inputs, build on
usePatternFormatAdapter.