Input Group: HextaUI und shadcn/ui
Input group von HextaUI behält die Namen und Theme-Tokens von shadcn/ui und wird mit derselben CLI installiert. Diese Seite listet die Unterschiede auf, aus dem Code beider gelesen. Die shadcn/ui-Seite ist das base-vega-Registry mit Stand 2026-10-16.
Auf einen Blick
| Kennzahl | HextaUI | shadcn/ui |
|---|---|---|
| Exportierte Teile | 9 | 6 |
| Props, die der Wrapper verarbeitet | 19 | 4 |
| Codezeilen | 682 | 158 |
| npm-Abhängigkeiten | @base-ui/react@^1.8.0@tabler/icons-reactclass-variance-authoritycn | cn |
| Aufgebaut aus | buttoninputmotionthemeuse-autosizeuse-composed-refuse-invalid-shakeuse-merged-ref | buttoninputtextarea |
Mehr Code ist für sich genommen nicht besser. Die meisten zusätzlichen Zeilen in HextaUI behandeln Zustände, Bewegung und Randfälle, die du sonst selbst schreiben würdest.
Teile
Nur in HextaUIInputGroupClearInputGroupPasswordToggleInputGroupCount
In beidenInputGroupInputGroupAddonInputGroupButtonInputGroupTextInputGroupInputInputGroupTextarea
Props, die HextaUI ergänzt
Props, die der HextaUI-Wrapper selbst verarbeitet und der shadcn/ui-Wrapper nicht. Props, die direkt an Base UI oder die zugrunde liegende Bibliothek gehen, fehlen hier, weil beide Versionen sie annehmen.
| Prop | Was sie bewirkt |
|---|---|
separatorInputGroupAddon | Zeichnet eine Haarlinie zwischen einem Block-Addon und dem Feld. |
autoResizeInputGroupTextarea | Wächst mit dem Inhalt bis 16 rem und gleitet dabei zwischen den Höhen. |
shakeInputGroupTextarea | Lässt die Gruppe wackeln, wenn ein Absenden sie als ungültig vorfindet. |
revealedInputGroupPasswordToggle | Gesteuerter State. Nicht setzen, damit es sich selbst verwaltet. |
Varianten
| Prop | In beiden | Nur HextaUI | Nur shadcn/ui |
|---|---|---|---|
sizeInputGroup | – | smdefaultlg | – |
Die HextaUI-Version
Alle Zustände, die Tastaturbelegung und die API-Referenz stehen auf der Komponentenseite.
16 seiner Beispiele haben auch eine eigene Seite.
Eine Komponente wechseln
Führe den add-Befehl mit --overwrite aus, um die shadcn/ui-Datei in @/components/ui zu ersetzen, und prüfe den Diff in git, bevor du ihn behältst. Die Imports bleiben gleich, und Komponenten, die du nicht ersetzt, funktionieren weiter.
pnpm dlx shadcn@latest add https://hextaui.com/r/input-group.json --overwrite- Jede Prop in der Tabelle oben ist neu, daher übergeben Aufrufe, die für shadcn/ui geschrieben wurden, sie noch nicht.
- Prüfe vor dem Wechsel jeden Teil und jede Variante, die nur bei shadcn/ui steht, und ordne sie dem nächsten HextaUI-Gegenstück zu.