Input OTP: Form
With a name, the code is submitted with the form. autoSubmit submits as soon as the last slot fills, so an autofilled code signs people in without another tap.
This adds the example as components/examples/input-otp/form.tsx, together with the Input OTP component and the HextaUI theme tokens it needs.
pnpm dlx shadcn@latest add https://hextaui.com/r/input-otp-form.jsonTo add only the component, follow the Input OTP installation.
Props in this example
The Input OTP props this example sets, from the API reference.
| Prop | Type | Default |
|---|---|---|
lengthRequired. The number of slots; render the same number of InputOTPSlot parts. | number | – |
autoSubmit | boolean | false |
name | string | – |
idGoes on the first slot, so a label's htmlFor points at it. | string | – |
required | boolean | false |
Every prop is in the Input OTP API reference.
- Joined
- Separate
- Sizes
- Animated
- Status
- Controlled
- With Field
- Invalid
- Letters and numbers
- Masked
- Custom separator
- Disabled
- Right to left
See them all, with keyboard support and accessibility notes, on the Input OTP page.
- MotionThe easing curves, durations and reduced-motion check every component animates with, plus hooks for size morphs and sliding highlights.
- CalendarA date grid for single, range and multiple selection, with sliding months, range previews and touch-sized days.
- CheckboxA checkbox whose check draws in, with indeterminate parents, groups and labels that share its hover.
- ComboboxA filterable select with chips, groups and async results, in a popup that resizes as you type.
- Date pickerA button that opens a calendar in a popover, or a bottom sheet on phones, for single dates and ranges.
- FieldLabels, descriptions and errors wired to their control, with validation states and layouts for forms.