7.6.1 • Published 1 year ago

react-imask v7.6.1

Weekly downloads
21,515
License
MIT
Repository
github
Last release
1 year ago

React IMask Plugin

react-imask

npm version License: MIT

Install

npm install react-imask

Mask Input Example

import { useRef } from 'react';
import { IMaskInput } from 'react-imask';

// use ref to get access to internal "masked = ref.current.maskRef"
const ref = useRef(null);
const inputRef = useRef(null);
<IMaskInput
  mask={Number}
  radix="."
  value="123"
  unmask={true} // true|false|'typed'
  ref={ref}
  inputRef={inputRef}  // access to nested input
  // DO NOT USE onChange TO HANDLE CHANGES!
  // USE onAccept INSTEAD
  onAccept={
    // depending on prop above first argument is
    // `value` if `unmask=false`,
    // `unmaskedValue` if `unmask=true`,
    // `typedValue` if `unmask='typed'`
    (value, mask) => console.log(value)
  }
  // ...and more mask props in a guide

  // input props also available
  placeholder='Enter number here'
/>

Extend Existing Components

import { IMaskMixin } from 'react-imask';

// extend style component
const StyledInput = styled.input`
  color: green;
`;

const MaskedStyledInput = IMaskMixin(({inputRef, ...props}) => (
  <StyledInput
    {...props}
    innerRef={inputRef}  // bind internal input (if you use styled-components V4, use "ref" instead "innerRef")
  />
));

<MaskedStyledInput
  mask={Number}
  radix="."
  onAccept={(value, mask) => console.log(value)}
  // ...and more mask props in a guide

  // ...other styled props
/>

More options see in a guide.

Using hook

import { useState } from 'react';
import { useIMask } from 'react-imask';

function IMaskWithHook () {
  const [ opts, setOpts ] = useState({ mask: Number });
  const {
    ref,
    maskRef,
    value,
    setValue,
    unmaskedValue,
    setUnmaskedValue,
    typedValue,
    setTypedValue,
  } = useIMask(opts, /* optional {
    onAccept,
    onComplete,
    ref,
    defaultValue,
    defaultUnmaskedValue,
    defaultTypedValue,
  } */);
  
  return (
    <input ref={ref} />
  );
}
bolideai-polaris-ui-kitqui-ds-tssapphire-uicf-storybookempath-video-player@bumped-inc/loyalty.designfeathery-elementsxh-common-pckxinherc1feathery-reactreact-govbr-uixinherc_testreact-ts-form-gen-elementsmy-test-devcff-uireact-mui-form-generatorraylo-apollo@everything-registry/sub-chunk-2561caseark-uitr-vonus-nextjs-storybook-v1ilive-ui-kitnineid-coredmed-react-uitacamulestatest-iuriixinhercxinherc-h55xinherc49xmluixhhentablestonex-uivienna-uibgc-shared-frontend-componentsisigo-sdkjmapserver-ngiebt-zing-storybookintersoft-componenteshyfgnlutzxbfkhvnlinear-react-components-uikui-basic@w3block/w3block-ui-sdk@web3chief/ui@tucar/pit-stop@thekidnamedkd/ods-test@thewhite/react-input@vert-capital/design-system-ui@vagaspcd-ui/reactame-miniapp-componentsame-miniapp-components-web@zydon/commonarchbase-react@gofynd/theme-template@clearfacts/cf-storybook@gsretail.com/gui-core@hapl/components@easyrent-nz/components@edunext/paragonnetbanking-admintr-vonus-uisomoffice-shelluikit12uikittest11uikitwwwwtesttourpass-frontend-components@backlight-dev/cent-undress-o9ffc.bricks-l6ngliw7zecoreuizygote-cart-clonezydon-common-v2@infinitebrahmanuniverse/nolb-react-im@labsavvyapp/ui-components@lambdacurry/component-library@ljmarquezg/pj-claim-handle-portal@loja-integrada/admin-components@leonov-va/ui-kit4@leonov-va/uikittest@netsyde/react-forms@nerdjs/nerd-ui@pochta/uimui-simplemy-yura-componentmetrocuadrado-uioms-ui-datepickerobiipayload-mask-pluginpayout-widget-zzreact-bootstrap-uirnp-govbr-uireact-burgosreact-bootstrap-frontreact-cart-testreact-masked-mui-textfieldreact-native-imaskreact-dynamic-form-composernessus-uinext-gsnext-js-eva-corenetbanking-admin1netbanking-pvtpinkitpj-login-package
7.6.1

1 year ago

7.6.0

2 years ago

7.5.1-alpha.0

2 years ago

7.5.0

2 years ago

7.4.0

2 years ago

7.3.1-alpha.0

2 years ago

7.3.0

2 years ago

7.2.1

2 years ago

7.2.0

2 years ago

7.0.0-alpha.1

2 years ago

7.0.0-alpha.0

2 years ago

7.0.0-alpha.6

2 years ago

7.1.3

2 years ago

7.0.0-alpha.3

2 years ago

7.1.2

2 years ago

7.0.0-alpha.2

2 years ago

7.1.1

2 years ago

7.0.0-alpha.5

2 years ago

7.0.0-alpha.4

2 years ago

6.6.3

2 years ago

6.6.2

2 years ago

7.0.1-alpha.0

2 years ago

7.0.0

2 years ago

7.0.1-alpha.1

2 years ago

7.0.1

2 years ago

7.1.0-alpha.0

2 years ago

7.1.0-alpha.1

2 years ago

7.1.0-alpha.2

2 years ago

6.5.1-alpha.1

3 years ago

6.5.1-alpha.0

3 years ago

6.5.0

3 years ago

6.6.0-alpha.0

3 years ago

6.6.1

3 years ago

6.6.0

3 years ago

6.5.0-alpha.1

3 years ago

6.5.0-alpha.0

3 years ago

6.5.1

3 years ago

6.6.1-alpha.2

3 years ago

6.6.1-alpha.1

3 years ago

6.6.1-alpha.0

3 years ago

6.4.3-alpha.0

3 years ago

6.4.3-alpha.1

3 years ago

6.4.3

3 years ago

6.3.0

4 years ago

6.4.1-alpha.0

4 years ago

6.4.2

4 years ago

6.3.0-alpha.0

4 years ago

6.4.1

4 years ago

6.4.0

4 years ago

6.2.2

4 years ago

6.2.1

4 years ago

6.2.0

4 years ago

6.1.0

4 years ago

6.0.7

5 years ago

6.0.6

5 years ago

6.0.5

5 years ago

6.0.3

6 years ago

6.0.2

6 years ago

6.0.1

6 years ago

6.0.0

6 years ago

6.0.0-alpha.0

6 years ago

5.2.1

6 years ago

5.2.0

6 years ago

5.1.9

6 years ago

5.1.8

6 years ago

5.1.7

6 years ago

5.1.6

6 years ago

5.1.5

6 years ago

5.1.4

6 years ago

5.1.3

6 years ago

5.1.2

6 years ago

5.1.1

7 years ago

5.1.0

7 years ago

5.0.0

7 years ago

4.1.5

7 years ago

4.1.4

7 years ago

4.1.3

7 years ago

4.1.2

7 years ago

4.1.1

7 years ago

4.1.0

7 years ago

4.0.0

7 years ago

3.4.0

7 years ago

3.3.0

7 years ago

3.2.4

8 years ago

3.2.3

8 years ago

3.2.2

8 years ago

2.2.1

8 years ago

2.2.0

8 years ago

2.1.0

8 years ago

2.0.0

8 years ago

1.0.0

8 years ago

0.1.0

8 years ago

0.0.1

8 years ago