Piplup
@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 ref is 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.

On this page