Migrating to Version 2
This guide is aimed at developers wanting to update from v0.1.x to v2.x.x.
Check the following steps one by one and execute the ones that apply to your situation.
Rename prop: input
The input prop has been renamed to inputProps in order to be more explicit
about the props being forwarded to the input element. Also, the onChange
callback is now available on the top level. This matches the interface of a
regular input element more closely (there is also a new top-level prop
value).
// v0.1.x
<VerificationInput
input={{
type: "tel",
value={code}
onChange={handleCodeChange}
}}
/>
// v2
<VerificationInput
inputProps={{
type: "tel",
}}
value={code}
onChange={handleCodeChange}
/>Remove props: container, inputField, characters, character
These props have been removed. Your custom CSS classes can be passed to the
new classNames prop. In order to simplify the component structure, the
characters element has been removed, use container instead. For more
details see Styling. Additional props can no longer be forwarded
to these elements.
// v0.1.x
<VerificationInput
container={{
className: 'container',
}}
characters={{
className: 'characters',
}}
character={{
className: 'character',
}}
/>
// v2
<VerificationInput
classNames={{
container: "container",
character: "character",
}}
/>Remove prop: getInputRef
This callback has been removed. The new way to receive the input ref is to use
the standard ref prop (opens in a new tab). The
result will be a ref to the actual (invisible) input element.
// v0.1.x
<VerificationInput
getInputRef={ref => {myRef = ref}}
/>
// v2
<VerificationInput
ref={myRef}
/>