Input OTP: HextaUI y shadcn/ui
El Input OTP de HextaUI mantiene los nombres y tokens de tema de shadcn/ui y se instala con la misma CLI. Esta página lista lo que cambia, leído del código de ambos. El lado de shadcn/ui es su registro base-vega a fecha de 2026-10-16.
De un vistazo
| Medida | HextaUI | shadcn/ui |
|---|---|---|
| Partes exportadas | 4 | 4 |
| Props que gestiona el envoltorio | 24 | 2 |
| Líneas de código | 912 | 92 |
| Dependencias de npm | @base-ui/react@^1.8.0@tabler/icons-reactclass-variance-authoritycn | cninput-otp |
| Construido con | motiontheme | – |
Más código no es mejor por sí solo. La mayoría de las líneas extra de HextaUI cubren estados, animaciones y casos límite que de otro modo escribirías tú.
Props que añade HextaUI
Props que gestiona el propio envoltorio de HextaUI y el de shadcn/ui no. Se omiten las props que pasan directamente a Base UI o a la librería subyacente, porque ambas versiones las aceptan.
| Prop | Qué hace |
|---|---|
variantInputOTP | Ver la referencia de la API |
animatedInputOTP | Anima la entrada y salida de caracteres, encadena en cascada la entrada de varios caracteres y anima el estado. |
loadingLabelInputOTP | Ver la referencia de la API |
successLabelInputOTP | Ver la referencia de la API |
errorLabelInputOTP | Ver la referencia de la API |
Variantes
| Prop | En ambos | Solo HextaUI | Solo shadcn/ui |
|---|---|---|---|
variantInputOTPGroup | – | joinedseparate | – |
sizeInputOTPGroup | – | smdefaultlg | – |
variantInputOTPSlot | – | joinedseparate | – |
sizeInputOTPSlot | – | smdefaultlg | – |
La versión de HextaUI
Type or paste 123456 to pass. Anything else fails.
Todos los estados, el mapa de teclado y la referencia de la API están en la página del componente.
14 de sus ejemplos también tienen su propia página.
Cambia un componente
Ejecuta el comando add con --overwrite para reemplazar el archivo de shadcn/ui en @/components/ui y revisa el diff en git antes de quedártelo. Los imports no cambian y los componentes que no reemplaces siguen funcionando.
pnpm dlx shadcn@latest add https://hextaui.com/r/input-otp.json --overwrite- Cada prop de la tabla anterior es nueva, así que el código escrito para shadcn/ui todavía no la pasa.
- Antes de cambiar, revisa cualquier parte o variante que solo aparezca en shadcn/ui y asígnala a la más parecida de HextaUI.