OTP input
⟦Íñpút fór óñé-tímé çódéš, wíth óñé šlót pér çháráçtér.~~~~~~~~~~~~~~~~~~~⟧
- ⟦Brówšérš~~~⟧
- Chrome 123+Firefox 121+Safari 17.5+
- ⟦Tíér~~⟧
- 2
- ⟦Búñdlé çómpréššéd~~~~~~⟧
- 1.53 kB
- ⟦Fórçéd láýóút búdgét~~~~~~~⟧
- 0 ms
- ⟦Áxé búdgét~~~~⟧
- 0
- ⟦ŠŠR çómpátíblé~~~~~⟧
- ⟦Ýéš~~⟧
- ⟦Públíšhéd çóñtráçt~~~~~~~⟧
- ⟦Téšt hárñéšš~~~~~⟧
⟦Pláýgróúñd~~~~⟧
OTP Input
⟦Défáúlt~~~⟧
⟦ÁPÍ~~⟧
OtpInput.Root
| ⟦Próp~~⟧ | ⟦Týpé~~⟧ | ⟦Défáúlt~~~⟧ | ⟦Déšçríptíóñ~~~~⟧ |
|---|---|---|---|
value | string | — | ⟦Çúrréñt çódé, mákíñg thé fíéld çóñtrólléd.~~~~~~~~~~~~~~~⟧ |
defaultValue | string | "" | ⟦Štártíñg çódé fór thé úñçóñtrólléd fíéld.~~~~~~~~~~~~~~~⟧ |
onValueChange | (value: string) => void | — | ⟦Çálléd wíth thé çódé whéñévér ít çháñgéš.~~~~~~~~~~~~~~~⟧ |
onComplete | (value: string) => void | — | ⟦Çálléd óñçé thé çódé réáçhéš thé çóñfígúréd léñgth.~~~~~~~~~~~~~~~~~~⟧ |
length | number | 6 | ⟦Ñúmbér óf çháráçtérš thé çódé hóldš.~~~~~~~~~~~~~⟧ |
type | "numeric" | "alphanumeric" | "numeric" | ⟦Whíçh çháráçtérš áré képt whéñ týpíñg ór páštíñg.~~~~~~~~~~~~~~~~~~⟧ |
mask | boolean | false | ⟦Hídéš thé éñtéréd çháráçtérš íñ thé šlótš.~~~~~~~~~~~~~~~⟧ |
disabled | boolean | false | ⟦Díšábléš thé híddéñ íñpút áñd šétš thé dátá-díšábléd áttríbúté.~~~~~~~~~~~~~~~~~~~~~~~⟧ |
autoFocus | boolean | false | ⟦Fóçúšéš thé híddéñ íñpút whéñ thé fíéld móúñtš.~~~~~~~~~~~~~~~~~⟧ |
id | string | — | ⟦Íd ápplíéd tó thé réñdéréd róót éléméñt.~~~~~~~~~~~~~~⟧ |
render | ReactElement | ((props, state) => ReactElement) | — | ⟦Répláçé thé réñdéréd éléméñt whílé kéépíñg béhávíór áñd áççéššíbílítý wíríñg.~~~~~~~~~~~~~~~~~~~~~~~~~~~⟧ |
OtpInput.Slot
| ⟦Próp~~⟧ | ⟦Týpé~~⟧ | ⟦Défáúlt~~~⟧ | ⟦Déšçríptíóñ~~~~⟧ |
|---|---|---|---|
index* | number | — | ⟦Póšítíóñ íñ thé çódé thíš šlót díšpláýš.~~~~~~~~~~~~~~⟧ |
render | ReactElement | ((props, state) => ReactElement) | — | ⟦Répláçé thé réñdéréd éléméñt whílé kéépíñg béhávíór áñd áççéššíbílítý wíríñg.~~~~~~~~~~~~~~~~~~~~~~~~~~~⟧ |
OtpInput.HiddenInput
| ⟦Próp~~⟧ | ⟦Týpé~~⟧ | ⟦Défáúlt~~~⟧ | ⟦Déšçríptíóñ~~~~⟧ |
|---|---|---|---|
autoFocus | boolean | — | ⟦Fóçúšéš thíš íñpút óñ móúñt, óvérrídíñg thé róót šéttíñg.~~~~~~~~~~~~~~~~~~~~⟧ |
render | ReactElement | ((props, state) => ReactElement) | — | ⟦Répláçé thé réñdéréd éléméñt whílé kéépíñg béhávíór áñd áççéššíbílítý wíríñg.~~~~~~~~~~~~~~~~~~~~~~~~~~~⟧ |
⟦Kéýbóárd~~~⟧
| ⟦Kéý~~⟧ | ⟦Áçtíóñ~~~⟧ |
|---|---|
| Tab | ⟦Móvé fóçúš tó/fróm thé çóñtról~~~~~~~~~~~⟧ |
| Enter / Space | ⟦Áçtíváté whéñ fóçúšéd (búttóñ-líké çóñtrólš)~~~~~~~~~~~~~~~~⟧ |
⟦Áççéššíbílítý~~~~~⟧
⟦Úšéš šémáñtíç HTML whéré póššíblé. Íñšpéçt réñdéréd márkúp íñ thé pláýgróúñd — ÁRÍÁ íš áddéd óñlý whéñ ñátívé éléméñtš áré íñšúffíçíéñt.~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~⟧
⟦Štýlíñg hóókš~~~~~⟧
data-disabled