0.1.5 • Published 2 years ago

rc-otp-input v0.1.5

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

otp-input-react

A fully customizable otp component.

Features

  • Invalid and disabled state
  • Flexible input separators based on index
  • Flexible focus styling state
  • Numeric and alphanumeric support @todo accept regex validation
  • Default values for maintaining form states

Installation

npm install --save rc-otp-input

or if you are using yarn :

yarn add rc-otp-input

Usage:

import Otp from "rc-otp-input";

function App() {
  const [OTP, setOTP] = useState("");
  return (
    <>
      <Otp onChange={setOTP} autoFocus numOfFields={4} type="text" />
    </>
  );
}

Custom separators

const customSeparator = (
  <div style={{ marginLeft: "16px", marginRight: "16px" }}> - </div>
);

<OtpInput
  numOfFields="8"
  separator={[1, 3, 5]}
  customSeparator={customSeparator}
/>;

API

apityperequireddefaultvaluedesciption
numOfFieldsnumberno4Number between 2 and 12Number of fields to be rendered
typestringno"text""text" , "password"Change input to password
autoFocusbooleannofalsefalse , trueAuto focuses input on page load.
isNumbooleannofalsefalse , trueIf true allows only numbers
onChangefunctionno(value)=>{}any executable functionreturns the values keyed in by user on change
defaultValuestringno-String length equivlant to the numOfFieldsTakes a string value and spreads it to the number of rendered input
separatorarraynumber--An array of elements Index numberBased on the input index will add a custom seperator after it (to the right)
customSeparatorReact.ReactNode--An elementcould be an element or a string used to create a custom seperator

Support

If you like this package please consider giving it a star.

Contributing

Feel Free to contributing or feature request

  1. Fork it ( https://github.com/raedsalah/rc-otp-input.git/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature) @todo - to add commit patterns
  5. Create a new pull request.

License

MIT © Raed Salah

0.1.5

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago

0.0.1

2 years ago