Field: HextaUI e shadcn/ui
O Field do HextaUI mantém os nomes e tokens de tema do shadcn/ui e instala com a mesma CLI. Esta página lista o que muda, lido do código de ambos. O lado do shadcn/ui é o registro base-vega em 2026-10-16.
Visão geral
| Medida | HextaUI | shadcn/ui |
|---|---|---|
| Partes exportadas | 13 | 10 |
| Props tratadas pelo wrapper | 12 | 3 |
| Linhas de código | 604 | 238 |
| Dependências do npm | @base-ui/react@^1.8.0@tabler/icons-reactclass-variance-authoritycn | cn |
| Construído com | inputmotionseparatorthemeuse-composed-refuse-merged-ref | labelseparator |
Mais código não é melhor por si só. A maior parte das linhas extras do HextaUI cuida de estados, animações e casos extremos que você escreveria por conta própria.
Partes
Só no HextaUIFieldItemFieldStatusFieldCounter
Em ambosFieldSetFieldLegendFieldGroupFieldFieldContentFieldLabelFieldTitleFieldDescriptionFieldSeparatorFieldError
Props que o HextaUI adiciona
Props que o próprio wrapper do HextaUI trata e o do shadcn/ui não. Props repassadas direto ao Base UI ou à biblioteca por baixo ficam de fora, porque as duas versões as aceitam.
| Prop | O que faz |
|---|---|
indicatorFieldSet | Aplica-se a todo campo dentro. |
indicatorFieldGroup | Aplica-se a todo campo dentro. |
indicatorField | Marca o rótulo a partir do atributo required do controle. Herdado de FieldGroup ou FieldSet. |
optionalTextFieldLabel | Texto exibido com indicator="optional". |
A versão do HextaUI
Todos os estados, o mapa de teclado e a referência da API estão na página do componente.
14 dos seus exemplos também têm uma página própria.
Troque um componente
Rode o comando add com --overwrite para substituir o arquivo do shadcn/ui em @/components/ui e revise o diff no git antes de mantê-lo. Os imports continuam iguais e os componentes que você não trocar seguem funcionando.
pnpm dlx shadcn@latest add https://hextaui.com/r/field.json --overwrite- Cada prop da tabela acima é nova, então o código escrito para o shadcn/ui ainda não a passa.
- Antes de trocar, confira qualquer parte ou variante listada só para o shadcn/ui e associe-a à mais próxima do HextaUI.