@gv-tech/design-system 2.4.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/skills/dogfood-components/SKILL.md +6 -6
- package/.agent/skills/maintain-component/SKILL.md +59 -24
- package/.agent/workflows/native-playground.md +93 -0
- package/.github/workflows/ci.yml +19 -1
- package/.github/workflows/release-please.yml +32 -6
- package/.release-please-manifest.json +7 -1
- package/.tool-versions +1 -1
- package/CHANGELOG.md +7 -0
- package/apps/.gitkeep +0 -0
- package/apps/native-playground/CHANGELOG.md +8 -0
- package/apps/native-playground/app.json +37 -0
- package/apps/native-playground/assets/fonts/.gitkeep +0 -0
- package/apps/native-playground/assets/images/adaptive-icon.png +0 -0
- package/apps/native-playground/assets/images/favicon.png +0 -0
- package/apps/native-playground/assets/images/icon.png +0 -0
- package/apps/native-playground/assets/images/splash-icon.png +0 -0
- package/apps/native-playground/babel.config.js +6 -0
- package/apps/native-playground/eas.json +25 -0
- package/apps/native-playground/index.js +8 -0
- package/apps/native-playground/metro.config.js +26 -0
- package/apps/native-playground/nativewind-env.d.ts +1 -0
- package/apps/native-playground/package.json +23 -0
- package/apps/native-playground/project.json +15 -0
- package/apps/native-playground/src/app/App.tsx +842 -0
- package/apps/native-playground/src/global.css +49 -0
- package/apps/native-playground/tailwind.config.js +49 -0
- package/apps/native-playground/tsconfig.app.json +24 -0
- package/apps/native-playground/tsconfig.json +23 -0
- package/apps/native-playground/tsconfig.spec.json +24 -0
- package/apps/playground-web/CHANGELOG.md +8 -0
- package/apps/playground-web/package.json +31 -0
- package/apps/playground-web/src/App.tsx +179 -0
- package/apps/playground-web/src/components/docs/CodeBlock.tsx +34 -0
- package/apps/playground-web/src/components/docs/CombinedDocsLayout.tsx +103 -0
- package/apps/playground-web/src/components/docs/ComponentShowcase.tsx +96 -0
- package/apps/playground-web/src/components/docs/ErrorBoundary.tsx +55 -0
- package/apps/playground-web/src/components/docs/Footer.tsx +146 -0
- package/apps/playground-web/src/components/docs/PropsTable.tsx +43 -0
- package/apps/playground-web/src/components/docs/Search.tsx +75 -0
- package/apps/playground-web/src/components/docs/Sidebar.tsx +77 -0
- package/apps/playground-web/src/components/docs/ThemeToggle.tsx +19 -0
- package/apps/playground-web/src/components/docs/index.ts +9 -0
- package/apps/playground-web/src/config/docs.ts +293 -0
- package/apps/playground-web/src/globals.css +148 -0
- package/apps/playground-web/src/hooks/useDocMetadata.ts +34 -0
- package/apps/playground-web/src/hooks/usePackageManager.tsx +42 -0
- package/apps/playground-web/src/lib/react-native-shim.js +34 -0
- package/apps/playground-web/src/main.tsx +11 -0
- package/apps/playground-web/src/pages/index.ts +4 -0
- package/apps/playground-web/src/pages/native/AccordionDocs.tsx +85 -0
- package/apps/playground-web/src/pages/native/AlertDialogDocs.tsx +128 -0
- package/apps/playground-web/src/pages/native/AlertDocs.tsx +89 -0
- package/apps/playground-web/src/pages/native/AspectRatioDocs.tsx +52 -0
- package/apps/playground-web/src/pages/native/AvatarDocs.tsx +92 -0
- package/apps/playground-web/src/pages/native/BadgeDocs.tsx +63 -0
- package/apps/playground-web/src/pages/native/BreadcrumbDocs.tsx +71 -0
- package/apps/playground-web/src/pages/native/ButtonDocs.tsx +103 -0
- package/apps/playground-web/src/pages/native/CalendarDocs.tsx +74 -0
- package/apps/playground-web/src/pages/native/CardDocs.tsx +75 -0
- package/apps/playground-web/src/pages/native/CarouselDocs.tsx +113 -0
- package/apps/playground-web/src/pages/native/ChartDocs.tsx +115 -0
- package/apps/playground-web/src/pages/native/CheckboxDocs.tsx +38 -0
- package/apps/playground-web/src/pages/native/CollapsibleDocs.tsx +89 -0
- package/apps/playground-web/src/pages/native/CommandDocs.tsx +170 -0
- package/apps/playground-web/src/pages/native/ContextMenuDocs.tsx +121 -0
- package/apps/playground-web/src/pages/native/DialogDocs.tsx +132 -0
- package/apps/playground-web/src/pages/native/DrawerDocs.tsx +158 -0
- package/apps/playground-web/src/pages/native/DropdownMenuDocs.tsx +168 -0
- package/apps/playground-web/src/pages/native/HoverCardDocs.tsx +119 -0
- package/apps/playground-web/src/pages/native/InputDocs.tsx +86 -0
- package/apps/playground-web/src/pages/native/LabelDocs.tsx +55 -0
- package/apps/playground-web/src/pages/native/MenubarDocs.tsx +197 -0
- package/apps/playground-web/src/pages/native/NavigationMenuDocs.tsx +190 -0
- package/apps/playground-web/src/pages/native/PaginationDocs.tsx +70 -0
- package/apps/playground-web/src/pages/native/PopoverDocs.tsx +156 -0
- package/apps/playground-web/src/pages/native/ProgressDocs.tsx +61 -0
- package/apps/playground-web/src/pages/native/RadioGroupDocs.tsx +125 -0
- package/apps/playground-web/src/pages/native/ResizableDocs.tsx +118 -0
- package/apps/playground-web/src/pages/native/ScrollAreaDocs.tsx +92 -0
- package/apps/playground-web/src/pages/native/SearchDocs.tsx +150 -0
- package/apps/playground-web/src/pages/native/SelectDocs.tsx +141 -0
- package/apps/playground-web/src/pages/native/SeparatorDocs.tsx +72 -0
- package/apps/playground-web/src/pages/native/SheetDocs.tsx +140 -0
- package/apps/playground-web/src/pages/native/SkeletonDocs.tsx +44 -0
- package/apps/playground-web/src/pages/native/SliderDocs.tsx +118 -0
- package/apps/playground-web/src/pages/native/SonnerDocs.tsx +111 -0
- package/apps/playground-web/src/pages/native/SwitchDocs.tsx +87 -0
- package/apps/playground-web/src/pages/native/TableDocs.tsx +67 -0
- package/apps/playground-web/src/pages/native/TabsDocs.tsx +175 -0
- package/apps/playground-web/src/pages/native/TextareaDocs.tsx +61 -0
- package/apps/playground-web/src/pages/native/ThemeToggleDocs.tsx +288 -0
- package/apps/playground-web/src/pages/native/ToastDocs.tsx +124 -0
- package/apps/playground-web/src/pages/native/ToggleDocs.tsx +81 -0
- package/apps/playground-web/src/pages/native/ToggleGroupDocs.tsx +128 -0
- package/apps/playground-web/src/pages/native/TooltipDocs.tsx +140 -0
- package/apps/playground-web/src/pages/native/index.ts +47 -0
- package/apps/playground-web/src/pages/shared/ColorTokensDocs.tsx +234 -0
- package/apps/playground-web/src/pages/shared/GettingStarted.tsx +413 -0
- package/apps/playground-web/src/pages/web/AccordionDocs.tsx +194 -0
- package/apps/playground-web/src/pages/web/AlertDialogDocs.tsx +157 -0
- package/apps/playground-web/src/pages/web/AlertDocs.tsx +110 -0
- package/apps/playground-web/src/pages/web/AspectRatioDocs.tsx +94 -0
- package/apps/playground-web/src/pages/web/AvatarDocs.tsx +81 -0
- package/apps/playground-web/src/pages/web/BadgeDocs.tsx +66 -0
- package/apps/playground-web/src/pages/web/BreadcrumbDocs.tsx +93 -0
- package/apps/playground-web/src/pages/web/ButtonDocs.tsx +129 -0
- package/apps/playground-web/src/pages/web/CalendarDocs.tsx +78 -0
- package/apps/playground-web/src/pages/web/CardDocs.tsx +115 -0
- package/apps/playground-web/src/pages/web/CarouselDocs.tsx +176 -0
- package/apps/playground-web/src/pages/web/ChartDocs.tsx +151 -0
- package/apps/playground-web/src/pages/web/CheckboxDocs.tsx +95 -0
- package/apps/playground-web/src/pages/web/CollapsibleDocs.tsx +111 -0
- package/apps/playground-web/src/pages/web/CommandDocs.tsx +219 -0
- package/apps/playground-web/src/pages/web/ContextMenuDocs.tsx +164 -0
- package/apps/playground-web/src/pages/web/DialogDocs.tsx +175 -0
- package/apps/playground-web/src/pages/web/DrawerDocs.tsx +283 -0
- package/apps/playground-web/src/pages/web/DropdownMenuDocs.tsx +319 -0
- package/apps/playground-web/src/pages/web/FormDocs.tsx +175 -0
- package/apps/playground-web/src/pages/web/HoverCardDocs.tsx +151 -0
- package/apps/playground-web/src/pages/web/InputDocs.tsx +118 -0
- package/apps/playground-web/src/pages/web/LabelDocs.tsx +59 -0
- package/apps/playground-web/src/pages/web/MenubarDocs.tsx +296 -0
- package/apps/playground-web/src/pages/web/NavigationMenuDocs.tsx +263 -0
- package/apps/playground-web/src/pages/web/PaginationDocs.tsx +102 -0
- package/apps/playground-web/src/pages/web/PopoverDocs.tsx +189 -0
- package/apps/playground-web/src/pages/web/ProgressDocs.tsx +70 -0
- package/apps/playground-web/src/pages/web/RadioGroupDocs.tsx +137 -0
- package/apps/playground-web/src/pages/web/ResizableDocs.tsx +143 -0
- package/apps/playground-web/src/pages/web/ScrollAreaDocs.tsx +107 -0
- package/apps/playground-web/src/pages/web/SearchDocs.tsx +203 -0
- package/apps/playground-web/src/pages/web/SelectDocs.tsx +164 -0
- package/apps/playground-web/src/pages/web/SeparatorDocs.tsx +88 -0
- package/apps/playground-web/src/pages/web/SheetDocs.tsx +186 -0
- package/apps/playground-web/src/pages/web/SkeletonDocs.tsx +53 -0
- package/apps/playground-web/src/pages/web/SliderDocs.tsx +119 -0
- package/apps/playground-web/src/pages/web/SonnerDocs.tsx +126 -0
- package/apps/playground-web/src/pages/web/SwitchDocs.tsx +91 -0
- package/apps/playground-web/src/pages/web/TableDocs.tsx +148 -0
- package/apps/playground-web/src/pages/web/TabsDocs.tsx +241 -0
- package/apps/playground-web/src/pages/web/TextareaDocs.tsx +65 -0
- package/apps/playground-web/src/pages/web/ThemeToggleDocs.tsx +303 -0
- package/apps/playground-web/src/pages/web/ToastDocs.tsx +149 -0
- package/apps/playground-web/src/pages/web/ToggleDocs.tsx +85 -0
- package/apps/playground-web/src/pages/web/ToggleGroupDocs.tsx +140 -0
- package/apps/playground-web/src/pages/web/TooltipDocs.tsx +150 -0
- package/apps/playground-web/src/pages/web/index.ts +47 -0
- package/apps/playground-web/src/routes/doc-routes.tsx +363 -0
- package/apps/playground-web/tailwind.config.js +47 -0
- package/apps/playground-web/tsconfig.app.json +16 -0
- package/apps/playground-web/tsconfig.json +4 -0
- package/apps/playground-web/tsconfig.node.json +13 -0
- package/apps/playground-web/vite.config.ts +41 -0
- package/dist/accordion.cjs.js +1 -1
- package/dist/accordion.cjs.js.map +1 -1
- package/dist/accordion.es.js +2 -2
- package/dist/accordion.es.js.map +1 -1
- package/dist/alert-dialog.cjs.js +1 -1
- package/dist/alert-dialog.cjs.js.map +1 -1
- package/dist/alert-dialog.es.js +10 -4
- package/dist/alert-dialog.es.js.map +1 -1
- package/dist/alert.cjs.js +1 -1
- package/dist/alert.cjs.js.map +1 -1
- package/dist/alert.es.js +14 -14
- package/dist/alert.es.js.map +1 -1
- package/dist/aspect-ratio.cjs.js +1 -1
- package/dist/aspect-ratio.cjs.js.map +1 -1
- package/dist/aspect-ratio.es.js +1 -1
- package/dist/aspect-ratio.es.js.map +1 -1
- package/dist/avatar.cjs.js +1 -1
- package/dist/avatar.cjs.js.map +1 -1
- package/dist/avatar.es.js +2 -2
- package/dist/avatar.es.js.map +1 -1
- package/dist/badge.cjs.js +1 -1
- package/dist/badge.cjs.js.map +1 -1
- package/dist/badge.es.js +2 -2
- package/dist/badge.es.js.map +1 -1
- package/dist/breadcrumb.cjs.js +1 -1
- package/dist/breadcrumb.cjs.js.map +1 -1
- package/dist/breadcrumb.es.js +29 -29
- package/dist/breadcrumb.es.js.map +1 -1
- package/dist/button.cjs.js +1 -1
- package/dist/button.cjs.js.map +1 -1
- package/dist/button.es.js +2 -2
- package/dist/button.es.js.map +1 -1
- package/dist/calendar.cjs.js +1 -1
- package/dist/calendar.cjs.js.map +1 -1
- package/dist/calendar.es.js +2 -2
- package/dist/calendar.es.js.map +1 -1
- package/dist/card.cjs.js +1 -1
- package/dist/card.cjs.js.map +1 -1
- package/dist/card.es.js +2 -2
- package/dist/card.es.js.map +1 -1
- package/dist/carousel.cjs.js +1 -1
- package/dist/carousel.cjs.js.map +1 -1
- package/dist/carousel.es.js +36 -40
- package/dist/carousel.es.js.map +1 -1
- package/dist/chart.cjs.js +1 -1
- package/dist/chart.cjs.js.map +1 -1
- package/dist/chart.es.js +2 -2
- package/dist/chart.es.js.map +1 -1
- package/dist/checkbox.cjs.js +1 -1
- package/dist/checkbox.cjs.js.map +1 -1
- package/dist/checkbox.es.js +16 -14
- package/dist/checkbox.es.js.map +1 -1
- package/dist/collapsible.cjs.js +1 -1
- package/dist/collapsible.cjs.js.map +1 -1
- package/dist/collapsible.es.js +1 -1
- package/dist/collapsible.es.js.map +1 -1
- package/dist/command.cjs.js +1 -1
- package/dist/command.cjs.js.map +1 -1
- package/dist/command.es.js +2 -2
- package/dist/command.es.js.map +1 -1
- package/dist/context-menu.cjs.js +1 -1
- package/dist/context-menu.cjs.js.map +1 -1
- package/dist/context-menu.es.js +6 -3
- package/dist/context-menu.es.js.map +1 -1
- package/dist/design-system.css +1 -1
- package/dist/dialog.cjs.js +1 -1
- package/dist/dialog.cjs.js.map +1 -1
- package/dist/dialog.es.js +11 -11
- package/dist/dialog.es.js.map +1 -1
- package/dist/drawer.cjs.js +1 -1
- package/dist/drawer.cjs.js.map +1 -1
- package/dist/drawer.es.js +2 -2
- package/dist/drawer.es.js.map +1 -1
- package/dist/dropdown-menu.cjs.js +1 -1
- package/dist/dropdown-menu.cjs.js.map +1 -1
- package/dist/dropdown-menu.es.js +6 -3
- package/dist/dropdown-menu.es.js.map +1 -1
- package/dist/form.cjs.js +1 -1
- package/dist/form.cjs.js.map +1 -1
- package/dist/form.es.js +10 -23
- package/dist/form.es.js.map +1 -1
- package/dist/hover-card.cjs.js +1 -1
- package/dist/hover-card.cjs.js.map +1 -1
- package/dist/hover-card.es.js +2 -2
- package/dist/hover-card.es.js.map +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +419 -284
- package/dist/index.es.js.map +1 -1
- package/dist/input.cjs.js +1 -1
- package/dist/input.cjs.js.map +1 -1
- package/dist/input.es.js +14 -16
- package/dist/input.es.js.map +1 -1
- package/dist/label.cjs.js +1 -1
- package/dist/label.cjs.js.map +1 -1
- package/dist/label.es.js +2 -2
- package/dist/label.es.js.map +1 -1
- package/dist/menubar.cjs.js +1 -1
- package/dist/menubar.cjs.js.map +1 -1
- package/dist/menubar.es.js +2 -2
- package/dist/menubar.es.js.map +1 -1
- package/dist/navigation-menu.cjs.js +1 -1
- package/dist/navigation-menu.cjs.js.map +1 -1
- package/dist/navigation-menu.es.js +2 -2
- package/dist/navigation-menu.es.js.map +1 -1
- package/dist/packages/design-tokens/src/index.d.ts +91 -0
- package/dist/packages/design-tokens/src/index.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/index.js +21 -0
- package/dist/packages/design-tokens/src/palette.d.ts +32 -0
- package/dist/packages/design-tokens/src/palette.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/palette.js +33 -0
- package/dist/packages/design-tokens/src/radii.d.ts +21 -0
- package/dist/packages/design-tokens/src/radii.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/radii.js +21 -0
- package/dist/packages/design-tokens/src/shadows.d.ts +12 -0
- package/dist/packages/design-tokens/src/shadows.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/shadows.js +13 -0
- package/dist/packages/design-tokens/src/spacing.d.ts +30 -0
- package/dist/packages/design-tokens/src/spacing.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/spacing.js +30 -0
- package/dist/packages/design-tokens/src/theme.d.ts +48 -0
- package/dist/packages/design-tokens/src/theme.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/theme.js +50 -0
- package/dist/packages/design-tokens/src/typography.d.ts +33 -0
- package/dist/packages/design-tokens/src/typography.d.ts.map +1 -0
- package/dist/packages/design-tokens/src/typography.js +33 -0
- package/dist/packages/ui-core/src/contracts/accordion.d.ts +20 -0
- package/dist/packages/ui-core/src/contracts/accordion.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/accordion.js +1 -0
- package/dist/packages/ui-core/src/contracts/alert-dialog.d.ts +40 -0
- package/dist/packages/ui-core/src/contracts/alert-dialog.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/alert-dialog.js +1 -0
- package/dist/packages/ui-core/src/contracts/alert.d.ts +15 -0
- package/dist/packages/ui-core/src/contracts/alert.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/alert.js +1 -0
- package/dist/packages/ui-core/src/contracts/aspect-ratio.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/aspect-ratio.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/aspect-ratio.js +1 -0
- package/dist/packages/ui-core/src/contracts/avatar.d.ts +15 -0
- package/dist/packages/ui-core/src/contracts/avatar.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/avatar.js +1 -0
- package/dist/packages/ui-core/src/contracts/badge.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/badge.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/badge.js +1 -0
- package/dist/packages/ui-core/src/contracts/breadcrumb.d.ts +31 -0
- package/dist/packages/ui-core/src/contracts/breadcrumb.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/breadcrumb.js +1 -0
- package/dist/packages/ui-core/src/contracts/button.d.ts +10 -0
- package/dist/packages/ui-core/src/contracts/button.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/button.js +4 -0
- package/dist/packages/ui-core/src/contracts/calendar.d.ts +5 -0
- package/dist/packages/ui-core/src/contracts/calendar.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/calendar.js +1 -0
- package/dist/packages/ui-core/src/contracts/card.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/card.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/card.js +3 -0
- package/dist/packages/ui-core/src/contracts/carousel.d.ts +25 -0
- package/dist/packages/ui-core/src/contracts/carousel.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/carousel.js +1 -0
- package/dist/packages/ui-core/src/contracts/chart.d.ts +34 -0
- package/dist/packages/ui-core/src/contracts/chart.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/chart.js +1 -0
- package/dist/packages/ui-core/src/contracts/checkbox.d.ts +8 -0
- package/dist/packages/ui-core/src/contracts/checkbox.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/checkbox.js +3 -0
- package/dist/packages/ui-core/src/contracts/collapsible.d.ts +19 -0
- package/dist/packages/ui-core/src/contracts/collapsible.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/collapsible.js +1 -0
- package/dist/packages/ui-core/src/contracts/command.d.ts +36 -0
- package/dist/packages/ui-core/src/contracts/command.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/command.js +1 -0
- package/dist/packages/ui-core/src/contracts/context-menu.d.ts +65 -0
- package/dist/packages/ui-core/src/contracts/context-menu.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/context-menu.js +1 -0
- package/dist/packages/ui-core/src/contracts/dialog.d.ts +14 -0
- package/dist/packages/ui-core/src/contracts/dialog.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/dialog.js +3 -0
- package/dist/packages/ui-core/src/contracts/drawer.d.ts +32 -0
- package/dist/packages/ui-core/src/contracts/drawer.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/drawer.js +1 -0
- package/dist/packages/ui-core/src/contracts/dropdown-menu.d.ts +74 -0
- package/dist/packages/ui-core/src/contracts/dropdown-menu.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/dropdown-menu.js +1 -0
- package/dist/packages/ui-core/src/contracts/form.d.ts +24 -0
- package/dist/packages/ui-core/src/contracts/form.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/form.js +1 -0
- package/dist/packages/ui-core/src/contracts/hover-card.d.ts +19 -0
- package/dist/packages/ui-core/src/contracts/hover-card.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/hover-card.js +1 -0
- package/dist/packages/ui-core/src/contracts/input.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/input.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/input.js +3 -0
- package/dist/packages/ui-core/src/contracts/label.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/label.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/label.js +1 -0
- package/dist/packages/ui-core/src/contracts/menubar.d.ts +74 -0
- package/dist/packages/ui-core/src/contracts/menubar.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/menubar.js +1 -0
- package/dist/packages/ui-core/src/contracts/navigation-menu.d.ts +48 -0
- package/dist/packages/ui-core/src/contracts/navigation-menu.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/navigation-menu.js +1 -0
- package/dist/packages/ui-core/src/contracts/pagination.d.ts +32 -0
- package/dist/packages/ui-core/src/contracts/pagination.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/pagination.js +1 -0
- package/dist/packages/ui-core/src/contracts/popover.d.ts +25 -0
- package/dist/packages/ui-core/src/contracts/popover.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/popover.js +1 -0
- package/dist/packages/ui-core/src/contracts/progress.d.ts +5 -0
- package/dist/packages/ui-core/src/contracts/progress.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/progress.js +1 -0
- package/dist/packages/ui-core/src/contracts/radio.d.ts +10 -0
- package/dist/packages/ui-core/src/contracts/radio.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/radio.js +3 -0
- package/dist/packages/ui-core/src/contracts/resizable.d.ts +39 -0
- package/dist/packages/ui-core/src/contracts/resizable.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/resizable.js +1 -0
- package/dist/packages/ui-core/src/contracts/scroll-area.d.ts +14 -0
- package/dist/packages/ui-core/src/contracts/scroll-area.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/scroll-area.js +1 -0
- package/dist/packages/ui-core/src/contracts/search.d.ts +12 -0
- package/dist/packages/ui-core/src/contracts/search.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/search.js +1 -0
- package/dist/packages/ui-core/src/contracts/select.d.ts +55 -0
- package/dist/packages/ui-core/src/contracts/select.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/select.js +1 -0
- package/dist/packages/ui-core/src/contracts/separator.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/separator.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/separator.js +1 -0
- package/dist/packages/ui-core/src/contracts/sheet.d.ts +49 -0
- package/dist/packages/ui-core/src/contracts/sheet.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/sheet.js +1 -0
- package/dist/packages/ui-core/src/contracts/skeleton.d.ts +6 -0
- package/dist/packages/ui-core/src/contracts/skeleton.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/skeleton.js +1 -0
- package/dist/packages/ui-core/src/contracts/slider.d.ts +16 -0
- package/dist/packages/ui-core/src/contracts/slider.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/slider.js +1 -0
- package/dist/packages/ui-core/src/contracts/sonner.d.ts +16 -0
- package/dist/packages/ui-core/src/contracts/sonner.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/sonner.js +1 -0
- package/dist/packages/ui-core/src/contracts/switch.d.ts +12 -0
- package/dist/packages/ui-core/src/contracts/switch.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/switch.js +1 -0
- package/dist/packages/ui-core/src/contracts/table.d.ts +34 -0
- package/dist/packages/ui-core/src/contracts/table.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/table.js +1 -0
- package/dist/packages/ui-core/src/contracts/tabs.d.ts +28 -0
- package/dist/packages/ui-core/src/contracts/tabs.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/tabs.js +1 -0
- package/dist/packages/ui-core/src/contracts/text.d.ts +7 -0
- package/dist/packages/ui-core/src/contracts/text.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/text.js +3 -0
- package/dist/packages/ui-core/src/contracts/textarea.d.ts +8 -0
- package/dist/packages/ui-core/src/contracts/textarea.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/textarea.js +1 -0
- package/dist/packages/ui-core/src/contracts/theme-provider.d.ts +14 -0
- package/dist/packages/ui-core/src/contracts/theme-provider.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/theme-provider.js +1 -0
- package/dist/packages/ui-core/src/contracts/theme-toggle.d.ts +16 -0
- package/dist/packages/ui-core/src/contracts/theme-toggle.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/theme-toggle.js +1 -0
- package/dist/packages/ui-core/src/contracts/toast.d.ts +11 -0
- package/dist/packages/ui-core/src/contracts/toast.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/toast.js +3 -0
- package/dist/packages/ui-core/src/contracts/toaster.d.ts +4 -0
- package/dist/packages/ui-core/src/contracts/toaster.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/toaster.js +1 -0
- package/dist/packages/ui-core/src/contracts/toggle-group.d.ts +22 -0
- package/dist/packages/ui-core/src/contracts/toggle-group.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/toggle-group.js +1 -0
- package/dist/packages/ui-core/src/contracts/toggle.d.ts +29 -0
- package/dist/packages/ui-core/src/contracts/toggle.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/toggle.js +29 -0
- package/dist/packages/ui-core/src/contracts/tooltip.d.ts +25 -0
- package/dist/packages/ui-core/src/contracts/tooltip.d.ts.map +1 -0
- package/dist/packages/ui-core/src/contracts/tooltip.js +1 -0
- package/dist/packages/ui-core/src/index.d.ts +55 -0
- package/dist/packages/ui-core/src/index.d.ts.map +1 -0
- package/dist/packages/ui-core/src/index.js +12 -0
- package/dist/packages/ui-native/src/accordion.d.ts +46 -0
- package/dist/packages/ui-native/src/accordion.d.ts.map +1 -0
- package/dist/packages/ui-native/src/accordion.js +34 -0
- package/dist/packages/ui-native/src/alert-dialog.d.ts +59 -0
- package/dist/packages/ui-native/src/alert-dialog.d.ts.map +1 -0
- package/dist/packages/ui-native/src/alert-dialog.js +31 -0
- package/dist/packages/ui-native/src/alert.d.ts +10 -0
- package/dist/packages/ui-native/src/alert.d.ts.map +1 -0
- package/dist/packages/ui-native/src/alert.js +26 -0
- package/dist/packages/ui-native/src/aspect-ratio.d.ts +2 -0
- package/dist/packages/ui-native/src/aspect-ratio.d.ts.map +1 -0
- package/dist/packages/ui-native/src/aspect-ratio.js +5 -0
- package/dist/packages/ui-native/src/avatar.d.ts +15 -0
- package/dist/packages/ui-native/src/avatar.d.ts.map +1 -0
- package/dist/packages/ui-native/src/avatar.js +11 -0
- package/dist/packages/ui-native/src/badge.d.ts +12 -0
- package/dist/packages/ui-native/src/badge.d.ts.map +1 -0
- package/dist/packages/ui-native/src/badge.js +37 -0
- package/dist/packages/ui-native/src/breadcrumb.d.ts +2 -0
- package/dist/packages/ui-native/src/breadcrumb.d.ts.map +1 -0
- package/dist/packages/ui-native/src/breadcrumb.js +5 -0
- package/dist/packages/ui-native/src/button.d.ts +14 -0
- package/dist/packages/ui-native/src/button.d.ts.map +1 -0
- package/dist/packages/ui-native/src/button.js +50 -0
- package/dist/packages/ui-native/src/calendar.d.ts +2 -0
- package/dist/packages/ui-native/src/calendar.d.ts.map +1 -0
- package/dist/packages/ui-native/src/calendar.js +5 -0
- package/dist/packages/ui-native/src/card.d.ts +13 -0
- package/dist/packages/ui-native/src/card.d.ts.map +1 -0
- package/dist/packages/ui-native/src/card.js +18 -0
- package/dist/packages/ui-native/src/carousel.d.ts +2 -0
- package/dist/packages/ui-native/src/carousel.d.ts.map +1 -0
- package/dist/packages/ui-native/src/carousel.js +5 -0
- package/dist/packages/ui-native/src/chart.d.ts +2 -0
- package/dist/packages/ui-native/src/chart.d.ts.map +1 -0
- package/dist/packages/ui-native/src/chart.js +5 -0
- package/dist/packages/ui-native/src/checkbox.d.ts +15 -0
- package/dist/packages/ui-native/src/checkbox.d.ts.map +1 -0
- package/dist/packages/ui-native/src/checkbox.js +11 -0
- package/dist/packages/ui-native/src/collapsible.d.ts +21 -0
- package/dist/packages/ui-native/src/collapsible.d.ts.map +1 -0
- package/dist/packages/ui-native/src/collapsible.js +5 -0
- package/dist/packages/ui-native/src/command.d.ts +2 -0
- package/dist/packages/ui-native/src/command.d.ts.map +1 -0
- package/dist/packages/ui-native/src/command.js +5 -0
- package/dist/packages/ui-native/src/context-menu.d.ts +2 -0
- package/dist/packages/ui-native/src/context-menu.d.ts.map +1 -0
- package/dist/packages/ui-native/src/context-menu.js +5 -0
- package/dist/packages/ui-native/src/dialog.d.ts +56 -0
- package/dist/packages/ui-native/src/dialog.d.ts.map +1 -0
- package/dist/packages/ui-native/src/dialog.js +28 -0
- package/dist/packages/ui-native/src/drawer.d.ts +2 -0
- package/dist/packages/ui-native/src/drawer.d.ts.map +1 -0
- package/dist/packages/ui-native/src/drawer.js +5 -0
- package/dist/packages/ui-native/src/dropdown-menu.d.ts +2 -0
- package/dist/packages/ui-native/src/dropdown-menu.d.ts.map +1 -0
- package/dist/packages/ui-native/src/dropdown-menu.js +5 -0
- package/dist/packages/ui-native/src/form.d.ts +2 -0
- package/dist/packages/ui-native/src/form.d.ts.map +1 -0
- package/dist/packages/ui-native/src/form.js +5 -0
- package/dist/packages/ui-native/src/hover-card.d.ts +2 -0
- package/dist/packages/ui-native/src/hover-card.d.ts.map +1 -0
- package/dist/packages/ui-native/src/hover-card.js +5 -0
- package/dist/packages/ui-native/src/index.d.ts +61 -0
- package/dist/packages/ui-native/src/index.d.ts.map +1 -0
- package/dist/packages/ui-native/src/index.js +107 -0
- package/dist/packages/ui-native/src/input.d.ts +8 -0
- package/dist/packages/ui-native/src/input.d.ts.map +1 -0
- package/dist/packages/ui-native/src/input.js +9 -0
- package/dist/packages/ui-native/src/label.d.ts +9 -0
- package/dist/packages/ui-native/src/label.d.ts.map +1 -0
- package/dist/packages/ui-native/src/label.js +7 -0
- package/dist/packages/ui-native/src/lib/render-native.d.ts +4 -0
- package/dist/packages/ui-native/src/lib/render-native.d.ts.map +1 -0
- package/dist/packages/ui-native/src/lib/render-native.js +13 -0
- package/dist/packages/ui-native/src/lib/utils.d.ts.map +1 -0
- package/dist/packages/ui-native/src/lib/utils.js +5 -0
- package/dist/packages/ui-native/src/menubar.d.ts +2 -0
- package/dist/packages/ui-native/src/menubar.d.ts.map +1 -0
- package/dist/packages/ui-native/src/menubar.js +5 -0
- package/dist/packages/ui-native/src/navigation-menu.d.ts +2 -0
- package/dist/packages/ui-native/src/navigation-menu.d.ts.map +1 -0
- package/dist/packages/ui-native/src/navigation-menu.js +5 -0
- package/dist/packages/ui-native/src/pagination.d.ts +2 -0
- package/dist/packages/ui-native/src/pagination.d.ts.map +1 -0
- package/dist/packages/ui-native/src/pagination.js +5 -0
- package/dist/packages/ui-native/src/popover.d.ts +2 -0
- package/dist/packages/ui-native/src/popover.d.ts.map +1 -0
- package/dist/packages/ui-native/src/popover.js +5 -0
- package/dist/packages/ui-native/src/progress.d.ts +2 -0
- package/dist/packages/ui-native/src/progress.d.ts.map +1 -0
- package/dist/packages/ui-native/src/progress.js +5 -0
- package/dist/packages/ui-native/src/radio-group.d.ts +11 -0
- package/dist/packages/ui-native/src/radio-group.d.ts.map +1 -0
- package/dist/packages/ui-native/src/radio-group.js +14 -0
- package/dist/packages/ui-native/src/resizable.d.ts +4 -0
- package/dist/packages/ui-native/src/resizable.d.ts.map +1 -0
- package/dist/packages/ui-native/src/resizable.js +11 -0
- package/dist/packages/ui-native/src/scroll-area.d.ts +2 -0
- package/dist/packages/ui-native/src/scroll-area.d.ts.map +1 -0
- package/dist/packages/ui-native/src/scroll-area.js +5 -0
- package/dist/packages/ui-native/src/search.d.ts +3 -0
- package/dist/packages/ui-native/src/search.d.ts.map +1 -0
- package/dist/packages/ui-native/src/search.js +8 -0
- package/dist/packages/ui-native/src/select.d.ts +57 -0
- package/dist/packages/ui-native/src/select.d.ts.map +1 -0
- package/dist/packages/ui-native/src/select.js +45 -0
- package/dist/packages/ui-native/src/separator.d.ts +9 -0
- package/dist/packages/ui-native/src/separator.d.ts.map +1 -0
- package/dist/packages/ui-native/src/separator.js +7 -0
- package/dist/packages/ui-native/src/sheet.d.ts +53 -0
- package/dist/packages/ui-native/src/sheet.d.ts.map +1 -0
- package/dist/packages/ui-native/src/sheet.js +37 -0
- package/dist/packages/ui-native/src/skeleton.d.ts +5 -0
- package/dist/packages/ui-native/src/skeleton.d.ts.map +1 -0
- package/dist/packages/ui-native/src/skeleton.js +15 -0
- package/dist/packages/ui-native/src/slider.d.ts +2 -0
- package/dist/packages/ui-native/src/slider.d.ts.map +1 -0
- package/dist/packages/ui-native/src/slider.js +5 -0
- package/dist/packages/ui-native/src/sonner.d.ts +2 -0
- package/dist/packages/ui-native/src/sonner.d.ts.map +1 -0
- package/dist/packages/ui-native/src/sonner.js +5 -0
- package/dist/packages/ui-native/src/switch.d.ts +8 -0
- package/dist/packages/ui-native/src/switch.d.ts.map +1 -0
- package/dist/packages/ui-native/src/switch.js +7 -0
- package/dist/packages/ui-native/src/table.d.ts +12 -0
- package/dist/packages/ui-native/src/table.d.ts.map +1 -0
- package/dist/packages/ui-native/src/table.js +22 -0
- package/dist/packages/ui-native/src/tabs.d.ts +25 -0
- package/dist/packages/ui-native/src/tabs.d.ts.map +1 -0
- package/dist/packages/ui-native/src/tabs.js +16 -0
- package/dist/packages/ui-native/src/text.d.ts +13 -0
- package/dist/packages/ui-native/src/text.d.ts.map +1 -0
- package/dist/packages/ui-native/src/text.js +29 -0
- package/dist/packages/ui-native/src/textarea.d.ts +6 -0
- package/dist/packages/ui-native/src/textarea.d.ts.map +1 -0
- package/dist/packages/ui-native/src/textarea.js +9 -0
- package/dist/packages/ui-native/src/theme-provider.d.ts +5 -0
- package/dist/packages/ui-native/src/theme-provider.d.ts.map +1 -0
- package/dist/packages/ui-native/src/theme-provider.js +5 -0
- package/dist/packages/ui-native/src/theme-toggle.d.ts +2 -0
- package/dist/packages/ui-native/src/theme-toggle.d.ts.map +1 -0
- package/dist/packages/ui-native/src/theme-toggle.js +5 -0
- package/dist/packages/ui-native/src/toast.d.ts +35 -0
- package/dist/packages/ui-native/src/toast.d.ts.map +1 -0
- package/dist/packages/ui-native/src/toast.js +23 -0
- package/dist/packages/ui-native/src/toaster.d.ts.map +1 -0
- package/dist/packages/ui-native/src/toaster.js +5 -0
- package/dist/packages/ui-native/src/toggle-group.d.ts +11 -0
- package/dist/packages/ui-native/src/toggle-group.d.ts.map +1 -0
- package/dist/packages/ui-native/src/toggle-group.js +25 -0
- package/dist/packages/ui-native/src/toggle.d.ts +8 -0
- package/dist/packages/ui-native/src/toggle.d.ts.map +1 -0
- package/dist/packages/ui-native/src/toggle.js +9 -0
- package/dist/packages/ui-native/src/tooltip.d.ts +27 -0
- package/dist/packages/ui-native/src/tooltip.d.ts.map +1 -0
- package/dist/packages/ui-native/src/tooltip.js +15 -0
- package/dist/packages/ui-web/src/accordion.d.ts +10 -0
- package/dist/packages/ui-web/src/accordion.d.ts.map +1 -0
- package/dist/packages/ui-web/src/accordion.js +13 -0
- package/dist/packages/ui-web/src/alert-dialog.d.ts +23 -0
- package/dist/packages/ui-web/src/alert-dialog.d.ts.map +1 -0
- package/dist/packages/ui-web/src/alert-dialog.js +25 -0
- package/dist/packages/ui-web/src/alert.d.ts +11 -0
- package/dist/packages/ui-web/src/alert.d.ts.map +1 -0
- package/dist/packages/ui-web/src/alert.js +24 -0
- package/dist/packages/ui-web/src/aspect-ratio.d.ts +6 -0
- package/dist/packages/ui-web/src/aspect-ratio.d.ts.map +1 -0
- package/dist/packages/ui-web/src/aspect-ratio.js +3 -0
- package/dist/packages/ui-web/src/avatar.d.ts +9 -0
- package/dist/packages/ui-web/src/avatar.d.ts.map +1 -0
- package/dist/packages/ui-web/src/avatar.js +11 -0
- package/dist/packages/ui-web/src/badge.d.ts +11 -0
- package/dist/packages/ui-web/src/badge.d.ts.map +1 -0
- package/dist/packages/ui-web/src/badge.js +20 -0
- package/dist/packages/ui-web/src/breadcrumb.d.ts +20 -0
- package/dist/packages/ui-web/src/breadcrumb.d.ts.map +1 -0
- package/dist/packages/ui-web/src/breadcrumb.js +23 -0
- package/dist/packages/ui-web/src/button.d.ts +13 -0
- package/dist/packages/ui-web/src/button.d.ts.map +1 -0
- package/dist/packages/ui-web/src/button.js +33 -0
- package/dist/packages/ui-web/src/calendar.d.ts +11 -0
- package/dist/packages/ui-web/src/calendar.d.ts.map +1 -0
- package/dist/packages/ui-web/src/calendar.js +70 -0
- package/dist/packages/ui-web/src/card.d.ts +12 -0
- package/dist/packages/ui-web/src/card.d.ts.map +1 -0
- package/dist/packages/ui-web/src/card.js +16 -0
- package/dist/packages/ui-web/src/carousel.d.ts +24 -0
- package/dist/packages/ui-web/src/carousel.d.ts.map +1 -0
- package/dist/packages/ui-web/src/carousel.js +98 -0
- package/dist/packages/ui-web/src/chart.d.ts +39 -0
- package/dist/packages/ui-web/src/chart.d.ts.map +1 -0
- package/dist/packages/ui-web/src/chart.js +120 -0
- package/dist/packages/ui-web/src/checkbox.d.ts +8 -0
- package/dist/packages/ui-web/src/checkbox.d.ts.map +1 -0
- package/dist/packages/ui-web/src/checkbox.js +8 -0
- package/dist/packages/ui-web/src/collapsible.d.ts +8 -0
- package/dist/packages/ui-web/src/collapsible.d.ts.map +1 -0
- package/dist/packages/ui-web/src/collapsible.js +5 -0
- package/dist/packages/ui-web/src/command.d.ts +83 -0
- package/dist/packages/ui-web/src/command.d.ts.map +1 -0
- package/dist/packages/ui-web/src/command.js +29 -0
- package/dist/packages/ui-web/src/context-menu.d.ts +24 -0
- package/dist/packages/ui-web/src/context-menu.d.ts.map +1 -0
- package/dist/packages/ui-web/src/context-menu.js +32 -0
- package/dist/packages/ui-web/src/dialog.d.ts.map +1 -0
- package/dist/packages/ui-web/src/dialog.js +22 -0
- package/dist/packages/ui-web/src/drawer.d.ts +25 -0
- package/dist/packages/ui-web/src/drawer.d.ts.map +1 -0
- package/dist/packages/ui-web/src/drawer.js +23 -0
- package/dist/packages/ui-web/src/dropdown-menu.d.ts +24 -0
- package/dist/packages/ui-web/src/dropdown-menu.d.ts.map +1 -0
- package/dist/packages/ui-web/src/dropdown-menu.js +33 -0
- package/dist/packages/ui-web/src/form.d.ts +26 -0
- package/dist/packages/ui-web/src/form.d.ts.map +1 -0
- package/dist/packages/ui-web/src/form.js +64 -0
- package/dist/packages/ui-web/src/hooks/use-theme.d.ts.map +1 -0
- package/dist/packages/ui-web/src/hooks/use-theme.js +12 -0
- package/dist/packages/ui-web/src/hooks/use-toast.d.ts +45 -0
- package/dist/packages/ui-web/src/hooks/use-toast.d.ts.map +1 -0
- package/dist/packages/ui-web/src/hooks/use-toast.js +128 -0
- package/dist/packages/ui-web/src/hover-card.d.ts +9 -0
- package/dist/packages/ui-web/src/hover-card.d.ts.map +1 -0
- package/dist/packages/ui-web/src/hover-card.js +10 -0
- package/dist/packages/ui-web/src/index.d.ts +101 -0
- package/dist/packages/ui-web/src/index.d.ts.map +1 -0
- package/dist/packages/ui-web/src/index.js +106 -0
- package/dist/packages/ui-web/src/input.d.ts +7 -0
- package/dist/packages/ui-web/src/input.d.ts.map +1 -0
- package/dist/packages/ui-web/src/input.js +8 -0
- package/dist/packages/ui-web/src/label.d.ts +8 -0
- package/dist/packages/ui-web/src/label.d.ts.map +1 -0
- package/dist/packages/ui-web/src/label.js +10 -0
- package/dist/packages/ui-web/src/lib/utils.d.ts +3 -0
- package/dist/packages/ui-web/src/lib/utils.d.ts.map +1 -0
- package/dist/packages/ui-web/src/lib/utils.js +5 -0
- package/dist/packages/ui-web/src/menubar.d.ts +25 -0
- package/dist/packages/ui-web/src/menubar.d.ts.map +1 -0
- package/dist/packages/ui-web/src/menubar.js +46 -0
- package/dist/packages/ui-web/src/navigation-menu.d.ts +15 -0
- package/dist/packages/ui-web/src/navigation-menu.d.ts.map +1 -0
- package/dist/packages/ui-web/src/navigation-menu.js +23 -0
- package/dist/packages/ui-web/src/pagination.d.ts +31 -0
- package/dist/packages/ui-web/src/pagination.d.ts.map +1 -0
- package/dist/packages/ui-web/src/pagination.js +23 -0
- package/dist/packages/ui-web/src/popover.d.ts +10 -0
- package/dist/packages/ui-web/src/popover.d.ts.map +1 -0
- package/dist/packages/ui-web/src/popover.js +11 -0
- package/dist/packages/ui-web/src/progress.d.ts +7 -0
- package/dist/packages/ui-web/src/progress.d.ts.map +1 -0
- package/dist/packages/ui-web/src/progress.js +8 -0
- package/dist/packages/ui-web/src/radio-group.d.ts +11 -0
- package/dist/packages/ui-web/src/radio-group.d.ts.map +1 -0
- package/dist/packages/ui-web/src/radio-group.js +14 -0
- package/dist/packages/ui-web/src/resizable.d.ts +9 -0
- package/dist/packages/ui-web/src/resizable.d.ts.map +1 -0
- package/dist/packages/ui-web/src/resizable.js +17 -0
- package/dist/packages/ui-web/src/scroll-area.d.ts +8 -0
- package/dist/packages/ui-web/src/scroll-area.d.ts.map +1 -0
- package/dist/packages/ui-web/src/scroll-area.js +10 -0
- package/dist/packages/ui-web/src/search.d.ts +8 -0
- package/dist/packages/ui-web/src/search.d.ts.map +1 -0
- package/dist/packages/ui-web/src/search.js +48 -0
- package/dist/packages/ui-web/src/select.d.ts +16 -0
- package/dist/packages/ui-web/src/select.d.ts.map +1 -0
- package/dist/packages/ui-web/src/select.js +26 -0
- package/dist/packages/ui-web/src/separator.d.ts +7 -0
- package/dist/packages/ui-web/src/separator.d.ts.map +1 -0
- package/dist/packages/ui-web/src/separator.js +8 -0
- package/dist/packages/ui-web/src/sheet.d.ts +28 -0
- package/dist/packages/ui-web/src/sheet.d.ts.map +1 -0
- package/dist/packages/ui-web/src/sheet.js +37 -0
- package/dist/packages/ui-web/src/skeleton.d.ts +6 -0
- package/dist/packages/ui-web/src/skeleton.d.ts.map +1 -0
- package/dist/packages/ui-web/src/skeleton.js +6 -0
- package/dist/packages/ui-web/src/slider.d.ts +7 -0
- package/dist/packages/ui-web/src/slider.d.ts.map +1 -0
- package/dist/packages/ui-web/src/slider.js +8 -0
- package/dist/packages/ui-web/src/sonner.d.ts +8 -0
- package/dist/packages/ui-web/src/sonner.d.ts.map +1 -0
- package/dist/packages/ui-web/src/sonner.js +16 -0
- package/dist/packages/ui-web/src/switch.d.ts +7 -0
- package/dist/packages/ui-web/src/switch.d.ts.map +1 -0
- package/dist/packages/ui-web/src/switch.js +8 -0
- package/dist/packages/ui-web/src/table.d.ts +13 -0
- package/dist/packages/ui-web/src/table.d.ts.map +1 -0
- package/dist/packages/ui-web/src/table.js +21 -0
- package/dist/packages/ui-web/src/tabs.d.ts +10 -0
- package/dist/packages/ui-web/src/tabs.d.ts.map +1 -0
- package/dist/packages/ui-web/src/tabs.js +13 -0
- package/dist/packages/ui-web/src/text.d.ts +12 -0
- package/dist/packages/ui-web/src/text.d.ts.map +1 -0
- package/dist/packages/ui-web/src/text.js +40 -0
- package/dist/packages/ui-web/src/textarea.d.ts +7 -0
- package/dist/packages/ui-web/src/textarea.d.ts.map +1 -0
- package/dist/packages/ui-web/src/textarea.js +9 -0
- package/dist/packages/ui-web/src/theme-provider.d.ts +5 -0
- package/dist/packages/ui-web/src/theme-provider.d.ts.map +1 -0
- package/dist/packages/ui-web/src/theme-provider.js +6 -0
- package/dist/packages/ui-web/src/theme-toggle.d.ts +4 -0
- package/dist/packages/ui-web/src/theme-toggle.d.ts.map +1 -0
- package/dist/packages/ui-web/src/theme-toggle.js +29 -0
- package/dist/packages/ui-web/src/toast.d.ts.map +1 -0
- package/dist/packages/ui-web/src/toast.js +33 -0
- package/dist/packages/ui-web/src/toaster.d.ts +3 -0
- package/dist/packages/ui-web/src/toaster.d.ts.map +1 -0
- package/dist/packages/ui-web/src/toaster.js +10 -0
- package/dist/packages/ui-web/src/toggle-group.d.ts +13 -0
- package/dist/packages/ui-web/src/toggle-group.d.ts.map +1 -0
- package/dist/packages/ui-web/src/toggle-group.js +21 -0
- package/dist/packages/ui-web/src/toggle.d.ts +9 -0
- package/dist/packages/ui-web/src/toggle.d.ts.map +1 -0
- package/dist/packages/ui-web/src/toggle.js +9 -0
- package/dist/packages/ui-web/src/tooltip.d.ts +13 -0
- package/dist/packages/ui-web/src/tooltip.d.ts.map +1 -0
- package/dist/packages/ui-web/src/tooltip.js +12 -0
- package/dist/pagination.cjs.js +1 -1
- package/dist/pagination.cjs.js.map +1 -1
- package/dist/pagination.es.js +13 -5
- package/dist/pagination.es.js.map +1 -1
- package/dist/popover.cjs.js +1 -1
- package/dist/popover.cjs.js.map +1 -1
- package/dist/popover.es.js +2 -2
- package/dist/popover.es.js.map +1 -1
- package/dist/progress.cjs.js +1 -1
- package/dist/progress.cjs.js.map +1 -1
- package/dist/progress.es.js +2 -2
- package/dist/progress.es.js.map +1 -1
- package/dist/radio-group.cjs.js +1 -1
- package/dist/radio-group.cjs.js.map +1 -1
- package/dist/radio-group.es.js +19 -15
- package/dist/radio-group.es.js.map +1 -1
- package/dist/resizable.cjs.js +1 -1
- package/dist/resizable.cjs.js.map +1 -1
- package/dist/resizable.es.js +2 -2
- package/dist/resizable.es.js.map +1 -1
- package/dist/scroll-area.cjs.js +1 -1
- package/dist/scroll-area.cjs.js.map +1 -1
- package/dist/scroll-area.es.js +2 -2
- package/dist/scroll-area.es.js.map +1 -1
- package/dist/search.cjs.js +1 -1
- package/dist/search.cjs.js.map +1 -1
- package/dist/search.es.js +20 -29
- package/dist/search.es.js.map +1 -1
- package/dist/select.cjs.js +1 -1
- package/dist/select.cjs.js.map +1 -1
- package/dist/select.es.js +2 -2
- package/dist/select.es.js.map +1 -1
- package/dist/separator.cjs.js +1 -1
- package/dist/separator.cjs.js.map +1 -1
- package/dist/separator.es.js +2 -2
- package/dist/separator.es.js.map +1 -1
- package/dist/sheet.cjs.js +1 -1
- package/dist/sheet.cjs.js.map +1 -1
- package/dist/sheet.es.js +7 -7
- package/dist/sheet.es.js.map +1 -1
- package/dist/skeleton.cjs.js +1 -1
- package/dist/skeleton.cjs.js.map +1 -1
- package/dist/skeleton.es.js +2 -2
- package/dist/skeleton.es.js.map +1 -1
- package/dist/slider.cjs.js +1 -1
- package/dist/slider.cjs.js.map +1 -1
- package/dist/slider.es.js +2 -2
- package/dist/slider.es.js.map +1 -1
- package/dist/sonner.cjs.js +1 -1
- package/dist/sonner.cjs.js.map +1 -1
- package/dist/sonner.es.js +1 -1
- package/dist/sonner.es.js.map +1 -1
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +3 -0
- package/dist/switch.cjs.js +1 -1
- package/dist/switch.cjs.js.map +1 -1
- package/dist/switch.es.js +2 -2
- package/dist/switch.es.js.map +1 -1
- package/dist/table.cjs.js +1 -1
- package/dist/table.cjs.js.map +1 -1
- package/dist/table.es.js +25 -37
- package/dist/table.es.js.map +1 -1
- package/dist/tabs.cjs.js +1 -1
- package/dist/tabs.cjs.js.map +1 -1
- package/dist/tabs.es.js +2 -2
- package/dist/tabs.es.js.map +1 -1
- package/dist/text.cjs.js +2 -0
- package/dist/text.cjs.js.map +1 -0
- package/dist/text.es.js +42 -0
- package/dist/text.es.js.map +1 -0
- package/dist/textarea.cjs.js +1 -1
- package/dist/textarea.cjs.js.map +1 -1
- package/dist/textarea.es.js +13 -15
- package/dist/textarea.es.js.map +1 -1
- package/dist/theme-provider.cjs.js +1 -1
- package/dist/theme-provider.cjs.js.map +1 -1
- package/dist/theme-provider.es.js +1 -1
- package/dist/theme-provider.es.js.map +1 -1
- package/dist/theme-toggle-BTT5z37-.js +2 -0
- package/dist/theme-toggle-BTT5z37-.js.map +1 -0
- package/dist/theme-toggle-Dhc53hqa.mjs +176 -0
- package/dist/theme-toggle-Dhc53hqa.mjs.map +1 -0
- package/dist/theme-toggle.cjs.js +1 -1
- package/dist/theme-toggle.es.js +3 -3
- package/dist/toast.cjs.js +1 -1
- package/dist/toast.cjs.js.map +1 -1
- package/dist/toast.es.js +2 -2
- package/dist/toast.es.js.map +1 -1
- package/dist/toaster-BOqCGbZ6.js +2 -0
- package/dist/toaster-BOqCGbZ6.js.map +1 -0
- package/dist/toaster-CmNmQ6jI.mjs +119 -0
- package/dist/toaster-CmNmQ6jI.mjs.map +1 -0
- package/dist/toaster.cjs.js +1 -1
- package/dist/toaster.es.js +2 -2
- package/dist/toggle-CYawMoye.mjs +25 -0
- package/dist/toggle-CYawMoye.mjs.map +1 -0
- package/dist/toggle-Dmzk_m4r.js +2 -0
- package/dist/toggle-Dmzk_m4r.js.map +1 -0
- package/dist/toggle-group.cjs.js +1 -1
- package/dist/toggle-group.cjs.js.map +1 -1
- package/dist/toggle-group.es.js +26 -22
- package/dist/toggle-group.es.js.map +1 -1
- package/dist/toggle.cjs.js +1 -1
- package/dist/toggle.cjs.js.map +1 -1
- package/dist/toggle.es.js +10 -26
- package/dist/toggle.es.js.map +1 -1
- package/dist/tooltip.cjs.js +1 -1
- package/dist/tooltip.cjs.js.map +1 -1
- package/dist/tooltip.es.js +25 -19
- package/dist/tooltip.es.js.map +1 -1
- package/dist/utils-5NfNUIaP.js +2 -0
- package/dist/utils-5NfNUIaP.js.map +1 -0
- package/dist/utils-BfGqxkzX.mjs +8 -0
- package/dist/utils-BfGqxkzX.mjs.map +1 -0
- package/dist/vendor-B8N-rYkV.mjs +25431 -0
- package/dist/vendor-B8N-rYkV.mjs.map +1 -0
- package/dist/vendor-D51Wvbw-.js +68 -0
- package/dist/vendor-D51Wvbw-.js.map +1 -0
- package/docs/architecture-pivot.md +165 -0
- package/docs/native-setup-decision.md +57 -0
- package/docs/phase-1-tracker.md +144 -0
- package/docs/release-tooling-evaluation.md +67 -0
- package/docs/universal-implementation.md +195 -0
- package/docs/update-plan.md +268 -0
- package/eslint.config.mjs +1 -1
- package/nx.json +50 -0
- package/package.json +65 -302
- package/packages/.gitkeep +0 -0
- package/packages/design-tokens/CHANGELOG.md +8 -0
- package/packages/design-tokens/package.json +20 -0
- package/packages/design-tokens/src/index.ts +35 -0
- package/packages/design-tokens/src/palette.ts +36 -0
- package/packages/design-tokens/src/radii.ts +26 -0
- package/packages/design-tokens/src/shadows.ts +16 -0
- package/packages/design-tokens/src/spacing.ts +33 -0
- package/packages/design-tokens/src/theme.ts +54 -0
- package/packages/design-tokens/src/typography.ts +36 -0
- package/packages/design-tokens/tsconfig.json +17 -0
- package/packages/ui-core/CHANGELOG.md +8 -0
- package/packages/ui-core/package.json +40 -0
- package/packages/ui-core/src/contracts/accordion.ts +23 -0
- package/packages/ui-core/src/contracts/alert-dialog.ts +48 -0
- package/packages/ui-core/src/contracts/alert.ts +17 -0
- package/packages/ui-core/src/contracts/aspect-ratio.ts +7 -0
- package/packages/ui-core/src/contracts/avatar.ts +17 -0
- package/packages/ui-core/src/contracts/badge.ts +7 -0
- package/packages/ui-core/src/contracts/breadcrumb.ts +37 -0
- package/packages/ui-core/src/contracts/button.ts +17 -0
- package/packages/ui-core/src/contracts/calendar.ts +4 -0
- package/packages/ui-core/src/contracts/card.ts +11 -0
- package/packages/ui-core/src/contracts/carousel.ts +29 -0
- package/packages/ui-core/src/contracts/chart.ts +31 -0
- package/packages/ui-core/src/contracts/checkbox.ts +11 -0
- package/packages/ui-core/src/contracts/collapsible.ts +21 -0
- package/packages/ui-core/src/contracts/command.ts +43 -0
- package/packages/ui-core/src/contracts/context-menu.ts +78 -0
- package/packages/ui-core/src/contracts/dialog.ts +29 -0
- package/packages/ui-core/src/contracts/drawer.ts +39 -0
- package/packages/ui-core/src/contracts/dropdown-menu.ts +87 -0
- package/packages/ui-core/src/contracts/form.ts +29 -0
- package/packages/ui-core/src/contracts/hover-card.ts +21 -0
- package/packages/ui-core/src/contracts/input.ts +11 -0
- package/packages/ui-core/src/contracts/label.ts +7 -0
- package/packages/ui-core/src/contracts/menubar.ts +86 -0
- package/packages/ui-core/src/contracts/navigation-menu.ts +55 -0
- package/packages/ui-core/src/contracts/pagination.ts +38 -0
- package/packages/ui-core/src/contracts/popover.ts +28 -0
- package/packages/ui-core/src/contracts/progress.ts +4 -0
- package/packages/ui-core/src/contracts/radio.ts +16 -0
- package/packages/ui-core/src/contracts/resizable.ts +36 -0
- package/packages/ui-core/src/contracts/scroll-area.ts +15 -0
- package/packages/ui-core/src/contracts/search.ts +13 -0
- package/packages/ui-core/src/contracts/select.ts +64 -0
- package/packages/ui-core/src/contracts/separator.ts +5 -0
- package/packages/ui-core/src/contracts/sheet.ts +58 -0
- package/packages/ui-core/src/contracts/skeleton.ts +6 -0
- package/packages/ui-core/src/contracts/slider.ts +15 -0
- package/packages/ui-core/src/contracts/sonner.ts +15 -0
- package/packages/ui-core/src/contracts/switch.ts +11 -0
- package/packages/ui-core/src/contracts/table.ts +41 -0
- package/packages/ui-core/src/contracts/tabs.ts +31 -0
- package/packages/ui-core/src/contracts/text.ts +12 -0
- package/packages/ui-core/src/contracts/textarea.ts +7 -0
- package/packages/ui-core/src/contracts/theme-provider.ts +14 -0
- package/packages/ui-core/src/contracts/theme-toggle.ts +15 -0
- package/packages/ui-core/src/contracts/toast.ts +15 -0
- package/packages/ui-core/src/contracts/toaster.ts +3 -0
- package/packages/ui-core/src/contracts/toggle-group.ts +23 -0
- package/packages/ui-core/src/contracts/toggle.ts +49 -0
- package/packages/ui-core/src/contracts/tooltip.ts +28 -0
- package/packages/ui-core/src/index.ts +327 -0
- package/packages/ui-core/tsconfig.json +18 -0
- package/packages/ui-native/CHANGELOG.md +8 -0
- package/packages/ui-native/package.json +76 -0
- package/packages/ui-native/src/accordion.tsx +93 -0
- package/packages/ui-native/src/alert-dialog.tsx +123 -0
- package/packages/ui-native/src/alert.tsx +50 -0
- package/packages/ui-native/src/aspect-ratio.tsx +9 -0
- package/packages/ui-native/src/avatar.tsx +38 -0
- package/packages/ui-native/src/badge.tsx +51 -0
- package/packages/ui-native/src/breadcrumb.tsx +9 -0
- package/packages/ui-native/src/button.test.tsx +27 -0
- package/packages/ui-native/src/button.tsx +75 -0
- package/packages/ui-native/src/calendar.tsx +9 -0
- package/packages/ui-native/src/card.test.tsx +33 -0
- package/packages/ui-native/src/card.tsx +56 -0
- package/packages/ui-native/src/carousel.tsx +9 -0
- package/packages/ui-native/src/chart.tsx +9 -0
- package/packages/ui-native/src/checkbox.test.tsx +58 -0
- package/packages/ui-native/src/checkbox.tsx +31 -0
- package/packages/ui-native/src/collapsible.test.tsx +50 -0
- package/packages/ui-native/src/collapsible.tsx +15 -0
- package/packages/ui-native/src/command.tsx +9 -0
- package/packages/ui-native/src/context-menu.tsx +9 -0
- package/packages/ui-native/src/dialog.test.tsx +91 -0
- package/packages/ui-native/src/dialog.tsx +121 -0
- package/packages/ui-native/src/drawer.tsx +9 -0
- package/packages/ui-native/src/dropdown-menu.tsx +9 -0
- package/packages/ui-native/src/form.tsx +9 -0
- package/packages/ui-native/src/hover-card.tsx +9 -0
- package/packages/ui-native/src/index.ts +209 -0
- package/packages/ui-native/src/input.test.tsx +27 -0
- package/packages/ui-native/src/input.tsx +27 -0
- package/packages/ui-native/src/label.tsx +29 -0
- package/packages/ui-native/src/lib/render-native.tsx +17 -0
- package/packages/ui-native/src/menubar.tsx +9 -0
- package/packages/ui-native/src/nativewind-env.d.ts +1 -0
- package/packages/ui-native/src/navigation-menu.tsx +9 -0
- package/packages/ui-native/src/pagination.tsx +9 -0
- package/packages/ui-native/src/popover.tsx +9 -0
- package/packages/ui-native/src/progress.tsx +9 -0
- package/packages/ui-native/src/radio-group.test.tsx +77 -0
- package/packages/ui-native/src/radio-group.tsx +42 -0
- package/packages/ui-native/src/resizable.tsx +25 -0
- package/packages/ui-native/src/scroll-area.tsx +9 -0
- package/packages/ui-native/src/search.tsx +17 -0
- package/packages/ui-native/src/select.tsx +229 -0
- package/packages/ui-native/src/separator.tsx +20 -0
- package/packages/ui-native/src/sheet.test.tsx +93 -0
- package/packages/ui-native/src/sheet.tsx +127 -0
- package/packages/ui-native/src/skeleton.test.tsx +29 -0
- package/packages/ui-native/src/skeleton.tsx +31 -0
- package/packages/ui-native/src/slider.tsx +9 -0
- package/packages/ui-native/src/sonner.tsx +9 -0
- package/packages/ui-native/src/switch.tsx +34 -0
- package/packages/ui-native/src/table.tsx +73 -0
- package/packages/ui-native/src/tabs.tsx +74 -0
- package/packages/ui-native/src/text.test.tsx +24 -0
- package/packages/ui-native/src/text.tsx +43 -0
- package/packages/ui-native/src/textarea.test.tsx +27 -0
- package/packages/ui-native/src/textarea.tsx +29 -0
- package/packages/ui-native/src/theme-provider.tsx +6 -0
- package/packages/ui-native/src/theme-toggle.tsx +11 -0
- package/packages/ui-native/src/toast.test.tsx +61 -0
- package/packages/ui-native/src/toast.tsx +88 -0
- package/packages/ui-native/src/toaster.tsx +9 -0
- package/packages/ui-native/src/toggle-group.tsx +78 -0
- package/packages/ui-native/src/toggle.tsx +35 -0
- package/packages/ui-native/src/tooltip.tsx +44 -0
- package/packages/ui-native/tsconfig.json +23 -0
- package/packages/ui-native/vite.config.ts +17 -0
- package/packages/ui-web/CHANGELOG.md +8 -0
- package/packages/ui-web/package.json +84 -0
- package/packages/ui-web/src/accordion.tsx +58 -0
- package/packages/ui-web/src/alert-dialog.test.tsx +91 -0
- package/packages/ui-web/src/alert-dialog.tsx +121 -0
- package/packages/ui-web/src/alert.test.tsx +47 -0
- package/packages/ui-web/src/alert.tsx +49 -0
- package/packages/ui-web/src/aspect-ratio.test.tsx +34 -0
- package/packages/ui-web/src/aspect-ratio.tsx +7 -0
- package/packages/ui-web/src/avatar.tsx +40 -0
- package/packages/ui-web/src/badge.tsx +34 -0
- package/packages/ui-web/src/breadcrumb.tsx +105 -0
- package/packages/ui-web/src/button.test.tsx +62 -0
- package/packages/ui-web/src/button.tsx +47 -0
- package/packages/ui-web/src/calendar.test.tsx +23 -0
- package/packages/ui-web/src/calendar.tsx +163 -0
- package/packages/ui-web/src/card.test.tsx +35 -0
- package/packages/ui-web/src/card.tsx +46 -0
- package/packages/ui-web/src/carousel.test.tsx +37 -0
- package/packages/ui-web/src/carousel.tsx +234 -0
- package/packages/ui-web/src/chart.test.tsx +62 -0
- package/packages/ui-web/src/chart.tsx +296 -0
- package/packages/ui-web/src/checkbox.test.tsx +30 -0
- package/packages/ui-web/src/checkbox.tsx +31 -0
- package/packages/ui-web/src/collapsible.test.tsx +51 -0
- package/packages/ui-web/src/collapsible.tsx +15 -0
- package/packages/ui-web/src/command.test.tsx +79 -0
- package/packages/ui-web/src/command.tsx +154 -0
- package/packages/ui-web/src/context-menu.test.tsx +37 -0
- package/packages/ui-web/src/context-menu.tsx +208 -0
- package/packages/ui-web/src/dialog.test.tsx +66 -0
- package/packages/ui-web/src/dialog.tsx +95 -0
- package/packages/ui-web/src/drawer.test.tsx +68 -0
- package/packages/ui-web/src/drawer.tsx +110 -0
- package/packages/ui-web/src/dropdown-menu.test.tsx +93 -0
- package/packages/ui-web/src/dropdown-menu.tsx +212 -0
- package/packages/ui-web/src/form.test.tsx +84 -0
- package/packages/ui-web/src/form.tsx +160 -0
- package/packages/ui-web/src/hooks/use-theme.ts +15 -0
- package/packages/ui-web/src/hooks/use-toast.ts +189 -0
- package/packages/ui-web/src/hover-card.test.tsx +48 -0
- package/packages/ui-web/src/hover-card.tsx +35 -0
- package/packages/ui-web/src/index.ts +474 -0
- package/packages/ui-web/src/input.test.tsx +33 -0
- package/packages/ui-web/src/input.tsx +23 -0
- package/packages/ui-web/src/label.tsx +21 -0
- package/packages/ui-web/src/lib/utils.ts +6 -0
- package/packages/ui-web/src/menubar.test.tsx +92 -0
- package/packages/ui-web/src/menubar.tsx +244 -0
- package/packages/ui-web/src/navigation-menu.test.tsx +53 -0
- package/packages/ui-web/src/navigation-menu.tsx +143 -0
- package/packages/ui-web/src/pagination.test.tsx +57 -0
- package/packages/ui-web/src/pagination.tsx +107 -0
- package/packages/ui-web/src/popover.test.tsx +31 -0
- package/packages/ui-web/src/popover.tsx +45 -0
- package/packages/ui-web/src/progress.test.tsx +18 -0
- package/packages/ui-web/src/progress.tsx +28 -0
- package/packages/ui-web/src/radio-group.test.tsx +39 -0
- package/packages/ui-web/src/radio-group.tsx +41 -0
- package/packages/ui-web/src/resizable.test.tsx +23 -0
- package/packages/ui-web/src/resizable.tsx +59 -0
- package/packages/ui-web/src/scroll-area.test.tsx +15 -0
- package/packages/ui-web/src/scroll-area.tsx +42 -0
- package/packages/ui-web/src/search.test.tsx +81 -0
- package/packages/ui-web/src/search.tsx +87 -0
- package/packages/ui-web/src/select.test.tsx +42 -0
- package/packages/ui-web/src/select.tsx +169 -0
- package/packages/ui-web/src/separator.test.tsx +16 -0
- package/packages/ui-web/src/separator.tsx +24 -0
- package/packages/ui-web/src/setupTests.ts +114 -0
- package/packages/ui-web/src/sheet.test.tsx +48 -0
- package/packages/ui-web/src/sheet.tsx +136 -0
- package/packages/ui-web/src/skeleton.test.tsx +13 -0
- package/packages/ui-web/src/skeleton.tsx +10 -0
- package/packages/ui-web/src/slider.test.tsx +18 -0
- package/packages/ui-web/src/slider.tsx +27 -0
- package/packages/ui-web/src/sonner.test.tsx +13 -0
- package/packages/ui-web/src/sonner.tsx +32 -0
- package/packages/ui-web/src/switch.test.tsx +22 -0
- package/packages/ui-web/src/switch.tsx +31 -0
- package/packages/ui-web/src/table.test.tsx +29 -0
- package/packages/ui-web/src/table.tsx +104 -0
- package/packages/ui-web/src/tabs.test.tsx +43 -0
- package/packages/ui-web/src/tabs.tsx +62 -0
- package/packages/ui-web/src/text.test.tsx +34 -0
- package/packages/ui-web/src/text.tsx +55 -0
- package/packages/ui-web/src/textarea.test.tsx +21 -0
- package/packages/ui-web/src/textarea.tsx +25 -0
- package/packages/ui-web/src/theme-provider.tsx +15 -0
- package/packages/ui-web/src/theme-toggle.test.tsx +49 -0
- package/packages/ui-web/src/theme-toggle.tsx +92 -0
- package/packages/ui-web/src/toast.test.tsx +42 -0
- package/packages/ui-web/src/toast.tsx +111 -0
- package/packages/ui-web/src/toaster.tsx +27 -0
- package/packages/ui-web/src/toggle-group.test.tsx +40 -0
- package/packages/ui-web/src/toggle-group.tsx +55 -0
- package/packages/ui-web/src/toggle.test.tsx +21 -0
- package/packages/ui-web/src/toggle.tsx +24 -0
- package/packages/ui-web/src/tooltip.tsx +51 -0
- package/packages/ui-web/tsconfig.json +24 -0
- package/packages/ui-web/vite.config.ts +21 -0
- package/release-please-config.json +25 -1
- package/scripts/build-registry.ts +60 -27
- package/scripts/sync-tokens.ts +29 -16
- package/scripts/validate.ts +20 -7
- package/src/index.ts +2 -56
- package/src/types/nativewind.d.ts +19 -0
- package/tailwind.config.js +48 -0
- package/tsconfig.build.json +13 -3
- package/tsconfig.json +8 -2
- package/vite.config.ts +42 -8
- package/vitest.config.ts +7 -1
- package/wrangler.toml +1 -1
- package/.yarn/releases/yarn-4.12.0.cjs +0 -942
- package/dist/App.d.ts +0 -2
- package/dist/App.d.ts.map +0 -1
- package/dist/components/docs/CodeBlock.d.ts +0 -8
- package/dist/components/docs/CodeBlock.d.ts.map +0 -1
- package/dist/components/docs/ComponentShowcase.d.ts +0 -17
- package/dist/components/docs/ComponentShowcase.d.ts.map +0 -1
- package/dist/components/docs/Footer.d.ts +0 -2
- package/dist/components/docs/Footer.d.ts.map +0 -1
- package/dist/components/docs/PropsTable.d.ts +0 -13
- package/dist/components/docs/PropsTable.d.ts.map +0 -1
- package/dist/components/docs/Sidebar.d.ts +0 -15
- package/dist/components/docs/Sidebar.d.ts.map +0 -1
- package/dist/components/docs/ThemeToggle.d.ts +0 -2
- package/dist/components/docs/ThemeToggle.d.ts.map +0 -1
- package/dist/components/docs/index.d.ts +0 -7
- package/dist/components/docs/index.d.ts.map +0 -1
- package/dist/components/ui/accordion.d.ts +0 -8
- package/dist/components/ui/accordion.d.ts.map +0 -1
- package/dist/components/ui/accordion.test.d.ts +0 -2
- package/dist/components/ui/accordion.test.d.ts.map +0 -1
- package/dist/components/ui/alert-dialog.d.ts +0 -21
- package/dist/components/ui/alert-dialog.d.ts.map +0 -1
- package/dist/components/ui/alert-dialog.test.d.ts +0 -2
- package/dist/components/ui/alert-dialog.test.d.ts.map +0 -1
- package/dist/components/ui/alert.d.ts +0 -9
- package/dist/components/ui/alert.d.ts.map +0 -1
- package/dist/components/ui/alert.test.d.ts +0 -2
- package/dist/components/ui/alert.test.d.ts.map +0 -1
- package/dist/components/ui/aspect-ratio.d.ts +0 -4
- package/dist/components/ui/aspect-ratio.d.ts.map +0 -1
- package/dist/components/ui/aspect-ratio.test.d.ts +0 -2
- package/dist/components/ui/aspect-ratio.test.d.ts.map +0 -1
- package/dist/components/ui/avatar.d.ts +0 -7
- package/dist/components/ui/avatar.d.ts.map +0 -1
- package/dist/components/ui/avatar.test.d.ts +0 -2
- package/dist/components/ui/avatar.test.d.ts.map +0 -1
- package/dist/components/ui/badge.d.ts +0 -10
- package/dist/components/ui/badge.d.ts.map +0 -1
- package/dist/components/ui/badge.test.d.ts +0 -2
- package/dist/components/ui/badge.test.d.ts.map +0 -1
- package/dist/components/ui/breadcrumb.d.ts +0 -20
- package/dist/components/ui/breadcrumb.d.ts.map +0 -1
- package/dist/components/ui/breadcrumb.test.d.ts +0 -2
- package/dist/components/ui/breadcrumb.test.d.ts.map +0 -1
- package/dist/components/ui/button.d.ts +0 -12
- package/dist/components/ui/button.d.ts.map +0 -1
- package/dist/components/ui/button.test.d.ts +0 -2
- package/dist/components/ui/button.test.d.ts.map +0 -1
- package/dist/components/ui/calendar.d.ts +0 -9
- package/dist/components/ui/calendar.d.ts.map +0 -1
- package/dist/components/ui/calendar.test.d.ts +0 -2
- package/dist/components/ui/calendar.test.d.ts.map +0 -1
- package/dist/components/ui/card.d.ts +0 -9
- package/dist/components/ui/card.d.ts.map +0 -1
- package/dist/components/ui/card.test.d.ts +0 -2
- package/dist/components/ui/card.test.d.ts.map +0 -1
- package/dist/components/ui/carousel.d.ts +0 -19
- package/dist/components/ui/carousel.d.ts.map +0 -1
- package/dist/components/ui/carousel.test.d.ts +0 -2
- package/dist/components/ui/carousel.test.d.ts.map +0 -1
- package/dist/components/ui/chart.d.ts +0 -63
- package/dist/components/ui/chart.d.ts.map +0 -1
- package/dist/components/ui/chart.test.d.ts +0 -2
- package/dist/components/ui/chart.test.d.ts.map +0 -1
- package/dist/components/ui/checkbox.d.ts +0 -5
- package/dist/components/ui/checkbox.d.ts.map +0 -1
- package/dist/components/ui/checkbox.test.d.ts +0 -2
- package/dist/components/ui/checkbox.test.d.ts.map +0 -1
- package/dist/components/ui/collapsible.d.ts +0 -6
- package/dist/components/ui/collapsible.d.ts.map +0 -1
- package/dist/components/ui/collapsible.test.d.ts +0 -2
- package/dist/components/ui/collapsible.test.d.ts.map +0 -1
- package/dist/components/ui/command.d.ts +0 -81
- package/dist/components/ui/command.d.ts.map +0 -1
- package/dist/components/ui/command.test.d.ts +0 -2
- package/dist/components/ui/command.test.d.ts.map +0 -1
- package/dist/components/ui/context-menu.d.ts +0 -28
- package/dist/components/ui/context-menu.d.ts.map +0 -1
- package/dist/components/ui/context-menu.test.d.ts +0 -2
- package/dist/components/ui/context-menu.test.d.ts.map +0 -1
- package/dist/components/ui/dialog.d.ts.map +0 -1
- package/dist/components/ui/dialog.test.d.ts +0 -2
- package/dist/components/ui/dialog.test.d.ts.map +0 -1
- package/dist/components/ui/drawer.d.ts +0 -23
- package/dist/components/ui/drawer.d.ts.map +0 -1
- package/dist/components/ui/drawer.test.d.ts +0 -2
- package/dist/components/ui/drawer.test.d.ts.map +0 -1
- package/dist/components/ui/dropdown-menu.d.ts +0 -28
- package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
- package/dist/components/ui/dropdown-menu.test.d.ts +0 -2
- package/dist/components/ui/dropdown-menu.test.d.ts.map +0 -1
- package/dist/components/ui/form.d.ts +0 -24
- package/dist/components/ui/form.d.ts.map +0 -1
- package/dist/components/ui/form.test.d.ts +0 -2
- package/dist/components/ui/form.test.d.ts.map +0 -1
- package/dist/components/ui/hover-card.d.ts +0 -7
- package/dist/components/ui/hover-card.d.ts.map +0 -1
- package/dist/components/ui/hover-card.test.d.ts +0 -2
- package/dist/components/ui/hover-card.test.d.ts.map +0 -1
- package/dist/components/ui/input.d.ts +0 -4
- package/dist/components/ui/input.d.ts.map +0 -1
- package/dist/components/ui/input.test.d.ts +0 -2
- package/dist/components/ui/input.test.d.ts.map +0 -1
- package/dist/components/ui/label.d.ts +0 -6
- package/dist/components/ui/label.d.ts.map +0 -1
- package/dist/components/ui/label.test.d.ts +0 -2
- package/dist/components/ui/label.test.d.ts.map +0 -1
- package/dist/components/ui/menubar.d.ts +0 -29
- package/dist/components/ui/menubar.d.ts.map +0 -1
- package/dist/components/ui/menubar.test.d.ts +0 -2
- package/dist/components/ui/menubar.test.d.ts.map +0 -1
- package/dist/components/ui/navigation-menu.d.ts +0 -13
- package/dist/components/ui/navigation-menu.d.ts.map +0 -1
- package/dist/components/ui/navigation-menu.test.d.ts +0 -2
- package/dist/components/ui/navigation-menu.test.d.ts.map +0 -1
- package/dist/components/ui/pagination.d.ts +0 -29
- package/dist/components/ui/pagination.d.ts.map +0 -1
- package/dist/components/ui/pagination.test.d.ts +0 -2
- package/dist/components/ui/pagination.test.d.ts.map +0 -1
- package/dist/components/ui/popover.d.ts +0 -8
- package/dist/components/ui/popover.d.ts.map +0 -1
- package/dist/components/ui/popover.test.d.ts +0 -2
- package/dist/components/ui/popover.test.d.ts.map +0 -1
- package/dist/components/ui/progress.d.ts +0 -5
- package/dist/components/ui/progress.d.ts.map +0 -1
- package/dist/components/ui/progress.test.d.ts +0 -2
- package/dist/components/ui/progress.test.d.ts.map +0 -1
- package/dist/components/ui/radio-group.d.ts +0 -6
- package/dist/components/ui/radio-group.d.ts.map +0 -1
- package/dist/components/ui/radio-group.test.d.ts +0 -2
- package/dist/components/ui/radio-group.test.d.ts.map +0 -1
- package/dist/components/ui/resizable.d.ts +0 -11
- package/dist/components/ui/resizable.d.ts.map +0 -1
- package/dist/components/ui/resizable.test.d.ts +0 -2
- package/dist/components/ui/resizable.test.d.ts.map +0 -1
- package/dist/components/ui/scroll-area.d.ts +0 -6
- package/dist/components/ui/scroll-area.d.ts.map +0 -1
- package/dist/components/ui/scroll-area.test.d.ts +0 -2
- package/dist/components/ui/scroll-area.test.d.ts.map +0 -1
- package/dist/components/ui/search.d.ts +0 -16
- package/dist/components/ui/search.d.ts.map +0 -1
- package/dist/components/ui/search.test.d.ts +0 -2
- package/dist/components/ui/search.test.d.ts.map +0 -1
- package/dist/components/ui/select.d.ts +0 -14
- package/dist/components/ui/select.d.ts.map +0 -1
- package/dist/components/ui/select.test.d.ts +0 -2
- package/dist/components/ui/select.test.d.ts.map +0 -1
- package/dist/components/ui/separator.d.ts +0 -5
- package/dist/components/ui/separator.d.ts.map +0 -1
- package/dist/components/ui/separator.test.d.ts +0 -2
- package/dist/components/ui/separator.test.d.ts.map +0 -1
- package/dist/components/ui/sheet.d.ts +0 -26
- package/dist/components/ui/sheet.d.ts.map +0 -1
- package/dist/components/ui/sheet.test.d.ts +0 -2
- package/dist/components/ui/sheet.test.d.ts.map +0 -1
- package/dist/components/ui/skeleton.d.ts +0 -4
- package/dist/components/ui/skeleton.d.ts.map +0 -1
- package/dist/components/ui/skeleton.test.d.ts +0 -2
- package/dist/components/ui/skeleton.test.d.ts.map +0 -1
- package/dist/components/ui/slider.d.ts +0 -5
- package/dist/components/ui/slider.d.ts.map +0 -1
- package/dist/components/ui/slider.test.d.ts +0 -2
- package/dist/components/ui/slider.test.d.ts.map +0 -1
- package/dist/components/ui/sonner.d.ts +0 -6
- package/dist/components/ui/sonner.d.ts.map +0 -1
- package/dist/components/ui/sonner.test.d.ts +0 -2
- package/dist/components/ui/sonner.test.d.ts.map +0 -1
- package/dist/components/ui/switch.d.ts +0 -5
- package/dist/components/ui/switch.d.ts.map +0 -1
- package/dist/components/ui/switch.test.d.ts +0 -2
- package/dist/components/ui/switch.test.d.ts.map +0 -1
- package/dist/components/ui/table.d.ts +0 -11
- package/dist/components/ui/table.d.ts.map +0 -1
- package/dist/components/ui/table.test.d.ts +0 -2
- package/dist/components/ui/table.test.d.ts.map +0 -1
- package/dist/components/ui/tabs.d.ts +0 -8
- package/dist/components/ui/tabs.d.ts.map +0 -1
- package/dist/components/ui/tabs.test.d.ts +0 -2
- package/dist/components/ui/tabs.test.d.ts.map +0 -1
- package/dist/components/ui/textarea.d.ts +0 -4
- package/dist/components/ui/textarea.d.ts.map +0 -1
- package/dist/components/ui/textarea.test.d.ts +0 -2
- package/dist/components/ui/textarea.test.d.ts.map +0 -1
- package/dist/components/ui/theme-provider.d.ts +0 -4
- package/dist/components/ui/theme-provider.d.ts.map +0 -1
- package/dist/components/ui/theme-provider.test.d.ts +0 -2
- package/dist/components/ui/theme-provider.test.d.ts.map +0 -1
- package/dist/components/ui/theme-toggle.d.ts +0 -17
- package/dist/components/ui/theme-toggle.d.ts.map +0 -1
- package/dist/components/ui/theme-toggle.test.d.ts +0 -2
- package/dist/components/ui/theme-toggle.test.d.ts.map +0 -1
- package/dist/components/ui/toast.d.ts.map +0 -1
- package/dist/components/ui/toast.test.d.ts +0 -2
- package/dist/components/ui/toast.test.d.ts.map +0 -1
- package/dist/components/ui/toaster.d.ts.map +0 -1
- package/dist/components/ui/toggle-group.d.ts +0 -13
- package/dist/components/ui/toggle-group.d.ts.map +0 -1
- package/dist/components/ui/toggle-group.test.d.ts +0 -2
- package/dist/components/ui/toggle-group.test.d.ts.map +0 -1
- package/dist/components/ui/toggle.d.ts +0 -13
- package/dist/components/ui/toggle.d.ts.map +0 -1
- package/dist/components/ui/toggle.test.d.ts +0 -2
- package/dist/components/ui/toggle.test.d.ts.map +0 -1
- package/dist/components/ui/tooltip.d.ts +0 -8
- package/dist/components/ui/tooltip.d.ts.map +0 -1
- package/dist/components/ui/tooltip.test.d.ts +0 -2
- package/dist/components/ui/tooltip.test.d.ts.map +0 -1
- package/dist/hooks/use-theme.d.ts.map +0 -1
- package/dist/hooks/use-theme.test.d.ts +0 -2
- package/dist/hooks/use-theme.test.d.ts.map +0 -1
- package/dist/hooks/use-toast.d.ts +0 -45
- package/dist/hooks/use-toast.d.ts.map +0 -1
- package/dist/index.d.ts +0 -54
- package/dist/index.d.ts.map +0 -1
- package/dist/lib/utils.d.ts.map +0 -1
- package/dist/main.d.ts +0 -2
- package/dist/main.d.ts.map +0 -1
- package/dist/pages/ColorTokensDocs.d.ts +0 -2
- package/dist/pages/ColorTokensDocs.d.ts.map +0 -1
- package/dist/pages/GettingStarted.d.ts +0 -3
- package/dist/pages/GettingStarted.d.ts.map +0 -1
- package/dist/pages/components/AccordionDocs.d.ts +0 -2
- package/dist/pages/components/AccordionDocs.d.ts.map +0 -1
- package/dist/pages/components/AlertDialogDocs.d.ts +0 -2
- package/dist/pages/components/AlertDialogDocs.d.ts.map +0 -1
- package/dist/pages/components/AlertDocs.d.ts +0 -2
- package/dist/pages/components/AlertDocs.d.ts.map +0 -1
- package/dist/pages/components/AspectRatioDocs.d.ts +0 -2
- package/dist/pages/components/AspectRatioDocs.d.ts.map +0 -1
- package/dist/pages/components/AvatarDocs.d.ts +0 -2
- package/dist/pages/components/AvatarDocs.d.ts.map +0 -1
- package/dist/pages/components/BadgeDocs.d.ts +0 -2
- package/dist/pages/components/BadgeDocs.d.ts.map +0 -1
- package/dist/pages/components/BreadcrumbDocs.d.ts +0 -2
- package/dist/pages/components/BreadcrumbDocs.d.ts.map +0 -1
- package/dist/pages/components/ButtonDocs.d.ts +0 -2
- package/dist/pages/components/ButtonDocs.d.ts.map +0 -1
- package/dist/pages/components/CalendarDocs.d.ts +0 -2
- package/dist/pages/components/CalendarDocs.d.ts.map +0 -1
- package/dist/pages/components/CardDocs.d.ts +0 -2
- package/dist/pages/components/CardDocs.d.ts.map +0 -1
- package/dist/pages/components/CarouselDocs.d.ts +0 -2
- package/dist/pages/components/CarouselDocs.d.ts.map +0 -1
- package/dist/pages/components/ChartDocs.d.ts +0 -2
- package/dist/pages/components/ChartDocs.d.ts.map +0 -1
- package/dist/pages/components/CheckboxDocs.d.ts +0 -2
- package/dist/pages/components/CheckboxDocs.d.ts.map +0 -1
- package/dist/pages/components/CollapsibleDocs.d.ts +0 -2
- package/dist/pages/components/CollapsibleDocs.d.ts.map +0 -1
- package/dist/pages/components/CommandDocs.d.ts +0 -2
- package/dist/pages/components/CommandDocs.d.ts.map +0 -1
- package/dist/pages/components/ContextMenuDocs.d.ts +0 -2
- package/dist/pages/components/ContextMenuDocs.d.ts.map +0 -1
- package/dist/pages/components/DialogDocs.d.ts +0 -2
- package/dist/pages/components/DialogDocs.d.ts.map +0 -1
- package/dist/pages/components/DrawerDocs.d.ts +0 -2
- package/dist/pages/components/DrawerDocs.d.ts.map +0 -1
- package/dist/pages/components/DropdownMenuDocs.d.ts +0 -2
- package/dist/pages/components/DropdownMenuDocs.d.ts.map +0 -1
- package/dist/pages/components/FormDocs.d.ts +0 -2
- package/dist/pages/components/FormDocs.d.ts.map +0 -1
- package/dist/pages/components/HoverCardDocs.d.ts +0 -2
- package/dist/pages/components/HoverCardDocs.d.ts.map +0 -1
- package/dist/pages/components/InputDocs.d.ts +0 -2
- package/dist/pages/components/InputDocs.d.ts.map +0 -1
- package/dist/pages/components/LabelDocs.d.ts +0 -2
- package/dist/pages/components/LabelDocs.d.ts.map +0 -1
- package/dist/pages/components/MenubarDocs.d.ts +0 -2
- package/dist/pages/components/MenubarDocs.d.ts.map +0 -1
- package/dist/pages/components/NavigationMenuDocs.d.ts +0 -2
- package/dist/pages/components/NavigationMenuDocs.d.ts.map +0 -1
- package/dist/pages/components/PaginationDocs.d.ts +0 -2
- package/dist/pages/components/PaginationDocs.d.ts.map +0 -1
- package/dist/pages/components/PopoverDocs.d.ts +0 -2
- package/dist/pages/components/PopoverDocs.d.ts.map +0 -1
- package/dist/pages/components/ProgressDocs.d.ts +0 -2
- package/dist/pages/components/ProgressDocs.d.ts.map +0 -1
- package/dist/pages/components/RadioGroupDocs.d.ts +0 -2
- package/dist/pages/components/RadioGroupDocs.d.ts.map +0 -1
- package/dist/pages/components/ResizableDocs.d.ts +0 -2
- package/dist/pages/components/ResizableDocs.d.ts.map +0 -1
- package/dist/pages/components/ScrollAreaDocs.d.ts +0 -2
- package/dist/pages/components/ScrollAreaDocs.d.ts.map +0 -1
- package/dist/pages/components/SearchDocs.d.ts +0 -2
- package/dist/pages/components/SearchDocs.d.ts.map +0 -1
- package/dist/pages/components/SelectDocs.d.ts +0 -2
- package/dist/pages/components/SelectDocs.d.ts.map +0 -1
- package/dist/pages/components/SeparatorDocs.d.ts +0 -2
- package/dist/pages/components/SeparatorDocs.d.ts.map +0 -1
- package/dist/pages/components/SheetDocs.d.ts +0 -2
- package/dist/pages/components/SheetDocs.d.ts.map +0 -1
- package/dist/pages/components/SkeletonDocs.d.ts +0 -2
- package/dist/pages/components/SkeletonDocs.d.ts.map +0 -1
- package/dist/pages/components/SliderDocs.d.ts +0 -2
- package/dist/pages/components/SliderDocs.d.ts.map +0 -1
- package/dist/pages/components/SonnerDocs.d.ts +0 -2
- package/dist/pages/components/SonnerDocs.d.ts.map +0 -1
- package/dist/pages/components/SwitchDocs.d.ts +0 -2
- package/dist/pages/components/SwitchDocs.d.ts.map +0 -1
- package/dist/pages/components/TableDocs.d.ts +0 -2
- package/dist/pages/components/TableDocs.d.ts.map +0 -1
- package/dist/pages/components/TabsDocs.d.ts +0 -2
- package/dist/pages/components/TabsDocs.d.ts.map +0 -1
- package/dist/pages/components/TextareaDocs.d.ts +0 -2
- package/dist/pages/components/TextareaDocs.d.ts.map +0 -1
- package/dist/pages/components/ThemeToggleDocs.d.ts +0 -2
- package/dist/pages/components/ThemeToggleDocs.d.ts.map +0 -1
- package/dist/pages/components/ToastDocs.d.ts +0 -2
- package/dist/pages/components/ToastDocs.d.ts.map +0 -1
- package/dist/pages/components/ToggleDocs.d.ts +0 -2
- package/dist/pages/components/ToggleDocs.d.ts.map +0 -1
- package/dist/pages/components/ToggleGroupDocs.d.ts +0 -2
- package/dist/pages/components/ToggleGroupDocs.d.ts.map +0 -1
- package/dist/pages/components/TooltipDocs.d.ts +0 -2
- package/dist/pages/components/TooltipDocs.d.ts.map +0 -1
- package/dist/pages/index.d.ts +0 -50
- package/dist/pages/index.d.ts.map +0 -1
- package/dist/registry/accordion.json +0 -13
- package/dist/registry/accordion.test.json +0 -13
- package/dist/registry/alert-dialog.json +0 -13
- package/dist/registry/alert-dialog.test.json +0 -13
- package/dist/registry/alert.json +0 -13
- package/dist/registry/alert.test.json +0 -13
- package/dist/registry/aspect-ratio.json +0 -13
- package/dist/registry/aspect-ratio.test.json +0 -13
- package/dist/registry/avatar.json +0 -13
- package/dist/registry/avatar.test.json +0 -13
- package/dist/registry/badge.json +0 -13
- package/dist/registry/badge.test.json +0 -13
- package/dist/registry/breadcrumb.json +0 -13
- package/dist/registry/breadcrumb.test.json +0 -13
- package/dist/registry/button.json +0 -13
- package/dist/registry/button.test.json +0 -13
- package/dist/registry/calendar.json +0 -13
- package/dist/registry/calendar.test.json +0 -13
- package/dist/registry/card.json +0 -13
- package/dist/registry/card.test.json +0 -13
- package/dist/registry/carousel.json +0 -13
- package/dist/registry/carousel.test.json +0 -13
- package/dist/registry/chart.json +0 -13
- package/dist/registry/chart.test.json +0 -13
- package/dist/registry/checkbox.json +0 -13
- package/dist/registry/checkbox.test.json +0 -13
- package/dist/registry/collapsible.json +0 -13
- package/dist/registry/collapsible.test.json +0 -13
- package/dist/registry/command.json +0 -13
- package/dist/registry/command.test.json +0 -13
- package/dist/registry/context-menu.json +0 -13
- package/dist/registry/context-menu.test.json +0 -13
- package/dist/registry/dialog.json +0 -13
- package/dist/registry/dialog.test.json +0 -13
- package/dist/registry/drawer.json +0 -13
- package/dist/registry/drawer.test.json +0 -13
- package/dist/registry/dropdown-menu.json +0 -13
- package/dist/registry/dropdown-menu.test.json +0 -13
- package/dist/registry/form.json +0 -13
- package/dist/registry/form.test.json +0 -13
- package/dist/registry/hover-card.json +0 -13
- package/dist/registry/hover-card.test.json +0 -13
- package/dist/registry/index.json +0 -681
- package/dist/registry/input.json +0 -13
- package/dist/registry/input.test.json +0 -13
- package/dist/registry/label.json +0 -13
- package/dist/registry/label.test.json +0 -13
- package/dist/registry/menubar.json +0 -13
- package/dist/registry/menubar.test.json +0 -13
- package/dist/registry/navigation-menu.json +0 -13
- package/dist/registry/navigation-menu.test.json +0 -13
- package/dist/registry/pagination.json +0 -13
- package/dist/registry/pagination.test.json +0 -13
- package/dist/registry/popover.json +0 -13
- package/dist/registry/popover.test.json +0 -13
- package/dist/registry/progress.json +0 -13
- package/dist/registry/progress.test.json +0 -13
- package/dist/registry/radio-group.json +0 -13
- package/dist/registry/radio-group.test.json +0 -13
- package/dist/registry/resizable.json +0 -13
- package/dist/registry/resizable.test.json +0 -13
- package/dist/registry/scroll-area.json +0 -13
- package/dist/registry/scroll-area.test.json +0 -13
- package/dist/registry/search.json +0 -13
- package/dist/registry/search.test.json +0 -13
- package/dist/registry/select.json +0 -13
- package/dist/registry/select.test.json +0 -13
- package/dist/registry/separator.json +0 -13
- package/dist/registry/separator.test.json +0 -13
- package/dist/registry/sheet.json +0 -13
- package/dist/registry/sheet.test.json +0 -13
- package/dist/registry/skeleton.json +0 -13
- package/dist/registry/skeleton.test.json +0 -13
- package/dist/registry/slider.json +0 -13
- package/dist/registry/slider.test.json +0 -13
- package/dist/registry/sonner.json +0 -13
- package/dist/registry/sonner.test.json +0 -13
- package/dist/registry/switch.json +0 -13
- package/dist/registry/switch.test.json +0 -13
- package/dist/registry/table.json +0 -13
- package/dist/registry/table.test.json +0 -13
- package/dist/registry/tabs.json +0 -13
- package/dist/registry/tabs.test.json +0 -13
- package/dist/registry/textarea.json +0 -13
- package/dist/registry/textarea.test.json +0 -13
- package/dist/registry/theme-provider.json +0 -13
- package/dist/registry/theme-provider.test.json +0 -13
- package/dist/registry/theme-toggle.json +0 -13
- package/dist/registry/theme-toggle.test.json +0 -13
- package/dist/registry/toast.json +0 -13
- package/dist/registry/toast.test.json +0 -13
- package/dist/registry/toaster.json +0 -13
- package/dist/registry/toggle-group.json +0 -13
- package/dist/registry/toggle-group.test.json +0 -13
- package/dist/registry/toggle.json +0 -13
- package/dist/registry/toggle.test.json +0 -13
- package/dist/registry/tooltip.json +0 -13
- package/dist/registry/tooltip.test.json +0 -13
- package/dist/setupTests.d.ts +0 -2
- package/dist/setupTests.d.ts.map +0 -1
- package/dist/theme/tokens.d.ts +0 -161
- package/dist/theme/tokens.d.ts.map +0 -1
- package/dist/theme-toggle-CCUkxY6o.mjs +0 -181
- package/dist/theme-toggle-CCUkxY6o.mjs.map +0 -1
- package/dist/theme-toggle-Dc_nm_32.js +0 -2
- package/dist/theme-toggle-Dc_nm_32.js.map +0 -1
- package/dist/toaster-BjPc-lId.js +0 -2
- package/dist/toaster-BjPc-lId.js.map +0 -1
- package/dist/toaster-Bk6a4gIz.mjs +0 -120
- package/dist/toaster-Bk6a4gIz.mjs.map +0 -1
- package/dist/utils-C9QGdMaH.mjs +0 -8
- package/dist/utils-C9QGdMaH.mjs.map +0 -1
- package/dist/utils-CUFNKXRW.js +0 -2
- package/dist/utils-CUFNKXRW.js.map +0 -1
- package/dist/vendor-CCQzmGyD.mjs +0 -25810
- package/dist/vendor-CCQzmGyD.mjs.map +0 -1
- package/dist/vendor-CIyDEr7H.js +0 -73
- package/dist/vendor-CIyDEr7H.js.map +0 -1
- package/docs/MIGRATE_TO_GVTECH_SCOPE.md +0 -74
- package/public/favicon.png +0 -0
- package/public/index.demo.html +0 -40
- package/public/logo192.png +0 -0
- package/public/logo512.png +0 -0
- package/public/manifest.json +0 -25
- package/public/robots.txt +0 -2
- package/scripts/import-all-shadcn.ts +0 -68
- package/scripts/sync-exports.ts +0 -52
- package/src/App.tsx +0 -311
- package/src/components/docs/CodeBlock.tsx +0 -34
- package/src/components/docs/ComponentShowcase.tsx +0 -68
- package/src/components/docs/Footer.tsx +0 -138
- package/src/components/docs/PropsTable.tsx +0 -43
- package/src/components/docs/Sidebar.tsx +0 -176
- package/src/components/docs/ThemeToggle.tsx +0 -19
- package/src/components/docs/index.ts +0 -6
- package/src/components/ui/accordion.tsx +0 -51
- package/src/components/ui/alert-dialog.test.tsx +0 -91
- package/src/components/ui/alert-dialog.tsx +0 -104
- package/src/components/ui/alert.test.tsx +0 -33
- package/src/components/ui/alert.tsx +0 -43
- package/src/components/ui/aspect-ratio.test.tsx +0 -34
- package/src/components/ui/aspect-ratio.tsx +0 -5
- package/src/components/ui/avatar.tsx +0 -38
- package/src/components/ui/badge.tsx +0 -29
- package/src/components/ui/breadcrumb.test.tsx +0 -55
- package/src/components/ui/breadcrumb.tsx +0 -90
- package/src/components/ui/button.test.tsx +0 -62
- package/src/components/ui/button.tsx +0 -46
- package/src/components/ui/calendar.test.tsx +0 -23
- package/src/components/ui/calendar.tsx +0 -160
- package/src/components/ui/card.test.tsx +0 -35
- package/src/components/ui/card.tsx +0 -43
- package/src/components/ui/carousel.test.tsx +0 -37
- package/src/components/ui/carousel.tsx +0 -224
- package/src/components/ui/chart.test.tsx +0 -62
- package/src/components/ui/chart.tsx +0 -307
- package/src/components/ui/checkbox.test.tsx +0 -30
- package/src/components/ui/checkbox.tsx +0 -26
- package/src/components/ui/collapsible.test.tsx +0 -51
- package/src/components/ui/collapsible.tsx +0 -9
- package/src/components/ui/command.test.tsx +0 -79
- package/src/components/ui/command.tsx +0 -134
- package/src/components/ui/context-menu.test.tsx +0 -37
- package/src/components/ui/context-menu.tsx +0 -178
- package/src/components/ui/dialog.test.tsx +0 -66
- package/src/components/ui/dialog.tsx +0 -95
- package/src/components/ui/drawer.test.tsx +0 -68
- package/src/components/ui/drawer.tsx +0 -87
- package/src/components/ui/dropdown-menu.test.tsx +0 -93
- package/src/components/ui/dropdown-menu.tsx +0 -180
- package/src/components/ui/form.test.tsx +0 -85
- package/src/components/ui/form.tsx +0 -149
- package/src/components/ui/hover-card.test.tsx +0 -48
- package/src/components/ui/hover-card.tsx +0 -27
- package/src/components/ui/input.test.tsx +0 -33
- package/src/components/ui/input.tsx +0 -22
- package/src/components/ui/label.tsx +0 -17
- package/src/components/ui/menubar.test.tsx +0 -92
- package/src/components/ui/menubar.tsx +0 -217
- package/src/components/ui/navigation-menu.test.tsx +0 -53
- package/src/components/ui/navigation-menu.tsx +0 -120
- package/src/components/ui/pagination.test.tsx +0 -57
- package/src/components/ui/pagination.tsx +0 -81
- package/src/components/ui/popover.test.tsx +0 -31
- package/src/components/ui/popover.tsx +0 -31
- package/src/components/ui/progress.test.tsx +0 -18
- package/src/components/ui/progress.tsx +0 -24
- package/src/components/ui/radio-group.test.tsx +0 -39
- package/src/components/ui/radio-group.tsx +0 -36
- package/src/components/ui/resizable.test.tsx +0 -23
- package/src/components/ui/resizable.tsx +0 -45
- package/src/components/ui/scroll-area.test.tsx +0 -15
- package/src/components/ui/scroll-area.tsx +0 -38
- package/src/components/ui/search.test.tsx +0 -77
- package/src/components/ui/search.tsx +0 -93
- package/src/components/ui/select.test.tsx +0 -42
- package/src/components/ui/select.tsx +0 -142
- package/src/components/ui/separator.test.tsx +0 -16
- package/src/components/ui/separator.tsx +0 -20
- package/src/components/ui/sheet.test.tsx +0 -48
- package/src/components/ui/sheet.tsx +0 -106
- package/src/components/ui/skeleton.test.tsx +0 -13
- package/src/components/ui/skeleton.tsx +0 -8
- package/src/components/ui/slider.test.tsx +0 -18
- package/src/components/ui/slider.tsx +0 -23
- package/src/components/ui/sonner.test.tsx +0 -13
- package/src/components/ui/sonner.tsx +0 -28
- package/src/components/ui/switch.test.tsx +0 -22
- package/src/components/ui/switch.tsx +0 -27
- package/src/components/ui/table.test.tsx +0 -29
- package/src/components/ui/table.tsx +0 -76
- package/src/components/ui/tabs.test.tsx +0 -43
- package/src/components/ui/tabs.tsx +0 -53
- package/src/components/ui/textarea.test.tsx +0 -21
- package/src/components/ui/textarea.tsx +0 -21
- package/src/components/ui/theme-provider.test.tsx +0 -47
- package/src/components/ui/theme-provider.tsx +0 -12
- package/src/components/ui/theme-toggle.test.tsx +0 -49
- package/src/components/ui/theme-toggle.tsx +0 -108
- package/src/components/ui/toast.test.tsx +0 -42
- package/src/components/ui/toast.tsx +0 -111
- package/src/components/ui/toaster.tsx +0 -24
- package/src/components/ui/toggle-group.test.tsx +0 -40
- package/src/components/ui/toggle-group.tsx +0 -51
- package/src/components/ui/toggle.test.tsx +0 -21
- package/src/components/ui/toggle.tsx +0 -37
- package/src/components/ui/tooltip.test.tsx +0 -25
- package/src/components/ui/tooltip.tsx +0 -30
- package/src/hooks/use-theme.test.tsx +0 -27
- package/src/hooks/use-theme.ts +0 -15
- package/src/hooks/use-toast.ts +0 -189
- package/src/main.tsx +0 -10
- package/src/pages/ColorTokensDocs.tsx +0 -218
- package/src/pages/GettingStarted.tsx +0 -304
- package/src/pages/components/AccordionDocs.tsx +0 -164
- package/src/pages/components/AlertDialogDocs.tsx +0 -151
- package/src/pages/components/AlertDocs.tsx +0 -65
- package/src/pages/components/AspectRatioDocs.tsx +0 -85
- package/src/pages/components/AvatarDocs.tsx +0 -82
- package/src/pages/components/BadgeDocs.tsx +0 -56
- package/src/pages/components/BreadcrumbDocs.tsx +0 -87
- package/src/pages/components/ButtonDocs.tsx +0 -120
- package/src/pages/components/CalendarDocs.tsx +0 -72
- package/src/pages/components/CardDocs.tsx +0 -101
- package/src/pages/components/CarouselDocs.tsx +0 -163
- package/src/pages/components/ChartDocs.tsx +0 -145
- package/src/pages/components/CheckboxDocs.tsx +0 -107
- package/src/pages/components/CollapsibleDocs.tsx +0 -103
- package/src/pages/components/CommandDocs.tsx +0 -209
- package/src/pages/components/ContextMenuDocs.tsx +0 -158
- package/src/pages/components/DialogDocs.tsx +0 -167
- package/src/pages/components/DrawerDocs.tsx +0 -274
- package/src/pages/components/DropdownMenuDocs.tsx +0 -313
- package/src/pages/components/FormDocs.tsx +0 -163
- package/src/pages/components/HoverCardDocs.tsx +0 -136
- package/src/pages/components/InputDocs.tsx +0 -99
- package/src/pages/components/LabelDocs.tsx +0 -54
- package/src/pages/components/MenubarDocs.tsx +0 -290
- package/src/pages/components/NavigationMenuDocs.tsx +0 -254
- package/src/pages/components/PaginationDocs.tsx +0 -93
- package/src/pages/components/PopoverDocs.tsx +0 -183
- package/src/pages/components/ProgressDocs.tsx +0 -64
- package/src/pages/components/RadioGroupDocs.tsx +0 -132
- package/src/pages/components/ResizableDocs.tsx +0 -137
- package/src/pages/components/ScrollAreaDocs.tsx +0 -102
- package/src/pages/components/SearchDocs.tsx +0 -194
- package/src/pages/components/SelectDocs.tsx +0 -158
- package/src/pages/components/SeparatorDocs.tsx +0 -79
- package/src/pages/components/SheetDocs.tsx +0 -178
- package/src/pages/components/SkeletonDocs.tsx +0 -44
- package/src/pages/components/SliderDocs.tsx +0 -110
- package/src/pages/components/SonnerDocs.tsx +0 -117
- package/src/pages/components/SwitchDocs.tsx +0 -86
- package/src/pages/components/TableDocs.tsx +0 -139
- package/src/pages/components/TabsDocs.tsx +0 -223
- package/src/pages/components/TextareaDocs.tsx +0 -60
- package/src/pages/components/ThemeToggleDocs.tsx +0 -296
- package/src/pages/components/ToastDocs.tsx +0 -141
- package/src/pages/components/ToggleDocs.tsx +0 -76
- package/src/pages/components/ToggleGroupDocs.tsx +0 -131
- package/src/pages/components/TooltipDocs.tsx +0 -147
- package/src/pages/index.ts +0 -52
- package/src/theme/tokens.ts +0 -90
- /package/{index.html → apps/playground-web/index.html} +0 -0
- /package/{dist → apps/playground-web/public}/favicon.png +0 -0
- /package/{dist → apps/playground-web/public}/index.demo.html +0 -0
- /package/{dist → apps/playground-web/public}/logo192.png +0 -0
- /package/{dist → apps/playground-web/public}/logo512.png +0 -0
- /package/{dist → apps/playground-web/public}/manifest.json +0 -0
- /package/{dist → apps/playground-web/public}/robots.txt +0 -0
- /package/dist/{lib → packages/ui-native/src/lib}/utils.d.ts +0 -0
- /package/dist/{components/ui → packages/ui-native/src}/toaster.d.ts +0 -0
- /package/dist/{components/ui → packages/ui-web/src}/dialog.d.ts +0 -0
- /package/dist/{hooks → packages/ui-web/src/hooks}/use-theme.d.ts +0 -0
- /package/dist/{components/ui → packages/ui-web/src}/toast.d.ts +0 -0
- /package/{src → packages/ui-native/src}/lib/utils.ts +0 -0
- /package/{src/components/ui → packages/ui-web/src}/accordion.test.tsx +0 -0
- /package/{src/components/ui → packages/ui-web/src}/avatar.test.tsx +0 -0
- /package/{src/components/ui → packages/ui-web/src}/badge.test.tsx +0 -0
- /package/{src/components/ui → packages/ui-web/src}/label.test.tsx +0 -0
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { render, screen } from '@testing-library/react';
|
|
2
|
-
import { describe, expect, it, vi } from 'vitest';
|
|
3
|
-
import {
|
|
4
|
-
Drawer,
|
|
5
|
-
DrawerClose,
|
|
6
|
-
DrawerContent,
|
|
7
|
-
DrawerDescription,
|
|
8
|
-
DrawerFooter,
|
|
9
|
-
DrawerHeader,
|
|
10
|
-
DrawerTitle,
|
|
11
|
-
DrawerTrigger,
|
|
12
|
-
} from './drawer';
|
|
13
|
-
|
|
14
|
-
// Mock vaul components to avoid jsdom issues
|
|
15
|
-
vi.mock('./drawer', () => {
|
|
16
|
-
return {
|
|
17
|
-
Drawer: ({ children }: { children: React.ReactNode }) => <div>{children}</div>,
|
|
18
|
-
DrawerTrigger: ({ children }: { children: React.ReactNode }) => <button>{children}</button>,
|
|
19
|
-
DrawerContent: ({ children }: { children: React.ReactNode }) => <div>{children}</div>,
|
|
20
|
-
DrawerHeader: ({ children }: { children: React.ReactNode }) => <div>{children}</div>,
|
|
21
|
-
DrawerTitle: ({ children }: { children: React.ReactNode }) => <h1>{children}</h1>,
|
|
22
|
-
DrawerDescription: ({ children }: { children: React.ReactNode }) => <p>{children}</p>,
|
|
23
|
-
DrawerFooter: ({ children }: { children: React.ReactNode }) => <footer>{children}</footer>,
|
|
24
|
-
DrawerClose: ({ children }: { children: React.ReactNode }) => <button>{children}</button>,
|
|
25
|
-
};
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
describe('Drawer', () => {
|
|
29
|
-
it('renders correctly', () => {
|
|
30
|
-
render(
|
|
31
|
-
<Drawer>
|
|
32
|
-
<DrawerTrigger>Open Drawer</DrawerTrigger>
|
|
33
|
-
<DrawerContent>
|
|
34
|
-
<DrawerHeader>
|
|
35
|
-
<DrawerTitle>Title</DrawerTitle>
|
|
36
|
-
<DrawerDescription>Description</DrawerDescription>
|
|
37
|
-
</DrawerHeader>
|
|
38
|
-
</DrawerContent>
|
|
39
|
-
</Drawer>,
|
|
40
|
-
);
|
|
41
|
-
|
|
42
|
-
expect(screen.getByText('Open Drawer')).toBeInTheDocument();
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
it('opens and closes the drawer', async () => {
|
|
46
|
-
// With mocked components, we just verify they render their children.
|
|
47
|
-
// Real interaction testing for vaul is best done in e2e tests.
|
|
48
|
-
render(
|
|
49
|
-
<Drawer>
|
|
50
|
-
<DrawerTrigger>Open Drawer</DrawerTrigger>
|
|
51
|
-
<DrawerContent>
|
|
52
|
-
<DrawerHeader>
|
|
53
|
-
<DrawerTitle>Drawer Title</DrawerTitle>
|
|
54
|
-
<DrawerDescription>Drawer Description</DrawerDescription>
|
|
55
|
-
</DrawerHeader>
|
|
56
|
-
<DrawerFooter>
|
|
57
|
-
<DrawerClose>Close</DrawerClose>
|
|
58
|
-
</DrawerFooter>
|
|
59
|
-
</DrawerContent>
|
|
60
|
-
</Drawer>,
|
|
61
|
-
);
|
|
62
|
-
|
|
63
|
-
expect(screen.getByText('Open Drawer')).toBeInTheDocument();
|
|
64
|
-
expect(screen.getByText('Drawer Title')).toBeInTheDocument();
|
|
65
|
-
expect(screen.getByText('Drawer Description')).toBeInTheDocument();
|
|
66
|
-
expect(screen.getByText('Close')).toBeInTheDocument();
|
|
67
|
-
});
|
|
68
|
-
});
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { Drawer as DrawerPrimitive } from 'vaul';
|
|
3
|
-
|
|
4
|
-
import { cn } from '@/lib/utils';
|
|
5
|
-
|
|
6
|
-
const Drawer = ({ shouldScaleBackground = true, ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>) => (
|
|
7
|
-
<DrawerPrimitive.Root shouldScaleBackground={shouldScaleBackground} {...props} />
|
|
8
|
-
);
|
|
9
|
-
Drawer.displayName = 'Drawer';
|
|
10
|
-
|
|
11
|
-
const DrawerTrigger = DrawerPrimitive.Trigger;
|
|
12
|
-
|
|
13
|
-
const DrawerPortal = DrawerPrimitive.Portal;
|
|
14
|
-
|
|
15
|
-
const DrawerClose = DrawerPrimitive.Close;
|
|
16
|
-
|
|
17
|
-
const DrawerOverlay = React.forwardRef<
|
|
18
|
-
React.ElementRef<typeof DrawerPrimitive.Overlay>,
|
|
19
|
-
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Overlay>
|
|
20
|
-
>(({ className, ...props }, ref) => (
|
|
21
|
-
<DrawerPrimitive.Overlay ref={ref} className={cn('fixed inset-0 z-50 bg-black/80', className)} {...props} />
|
|
22
|
-
));
|
|
23
|
-
DrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName;
|
|
24
|
-
|
|
25
|
-
const DrawerContent = React.forwardRef<
|
|
26
|
-
React.ElementRef<typeof DrawerPrimitive.Content>,
|
|
27
|
-
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Content>
|
|
28
|
-
>(({ className, children, ...props }, ref) => (
|
|
29
|
-
<DrawerPortal>
|
|
30
|
-
<DrawerOverlay />
|
|
31
|
-
<DrawerPrimitive.Content
|
|
32
|
-
ref={ref}
|
|
33
|
-
className={cn(
|
|
34
|
-
'fixed inset-x-0 bottom-0 z-50 mt-24 flex h-auto flex-col rounded-t-[10px] border bg-background',
|
|
35
|
-
className,
|
|
36
|
-
)}
|
|
37
|
-
{...props}
|
|
38
|
-
>
|
|
39
|
-
<div className="mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted" />
|
|
40
|
-
{children}
|
|
41
|
-
</DrawerPrimitive.Content>
|
|
42
|
-
</DrawerPortal>
|
|
43
|
-
));
|
|
44
|
-
DrawerContent.displayName = 'DrawerContent';
|
|
45
|
-
|
|
46
|
-
const DrawerHeader = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (
|
|
47
|
-
<div className={cn('grid gap-1.5 p-4 text-center sm:text-left', className)} {...props} />
|
|
48
|
-
);
|
|
49
|
-
DrawerHeader.displayName = 'DrawerHeader';
|
|
50
|
-
|
|
51
|
-
const DrawerFooter = ({ className, ...props }: React.HTMLAttributes<HTMLDivElement>) => (
|
|
52
|
-
<div className={cn('mt-auto flex flex-col gap-2 p-4', className)} {...props} />
|
|
53
|
-
);
|
|
54
|
-
DrawerFooter.displayName = 'DrawerFooter';
|
|
55
|
-
|
|
56
|
-
const DrawerTitle = React.forwardRef<
|
|
57
|
-
React.ElementRef<typeof DrawerPrimitive.Title>,
|
|
58
|
-
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Title>
|
|
59
|
-
>(({ className, ...props }, ref) => (
|
|
60
|
-
<DrawerPrimitive.Title
|
|
61
|
-
ref={ref}
|
|
62
|
-
className={cn('text-lg font-semibold leading-none tracking-tight', className)}
|
|
63
|
-
{...props}
|
|
64
|
-
/>
|
|
65
|
-
));
|
|
66
|
-
DrawerTitle.displayName = DrawerPrimitive.Title.displayName;
|
|
67
|
-
|
|
68
|
-
const DrawerDescription = React.forwardRef<
|
|
69
|
-
React.ElementRef<typeof DrawerPrimitive.Description>,
|
|
70
|
-
React.ComponentPropsWithoutRef<typeof DrawerPrimitive.Description>
|
|
71
|
-
>(({ className, ...props }, ref) => (
|
|
72
|
-
<DrawerPrimitive.Description ref={ref} className={cn('text-sm text-muted-foreground', className)} {...props} />
|
|
73
|
-
));
|
|
74
|
-
DrawerDescription.displayName = DrawerPrimitive.Description.displayName;
|
|
75
|
-
|
|
76
|
-
export {
|
|
77
|
-
Drawer,
|
|
78
|
-
DrawerClose,
|
|
79
|
-
DrawerContent,
|
|
80
|
-
DrawerDescription,
|
|
81
|
-
DrawerFooter,
|
|
82
|
-
DrawerHeader,
|
|
83
|
-
DrawerOverlay,
|
|
84
|
-
DrawerPortal,
|
|
85
|
-
DrawerTitle,
|
|
86
|
-
DrawerTrigger,
|
|
87
|
-
};
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { render, screen } from '@testing-library/react';
|
|
2
|
-
import userEvent from '@testing-library/user-event';
|
|
3
|
-
import { describe, expect, it } from 'vitest';
|
|
4
|
-
import {
|
|
5
|
-
DropdownMenu,
|
|
6
|
-
DropdownMenuCheckboxItem,
|
|
7
|
-
DropdownMenuContent,
|
|
8
|
-
DropdownMenuItem,
|
|
9
|
-
DropdownMenuLabel,
|
|
10
|
-
DropdownMenuRadioGroup,
|
|
11
|
-
DropdownMenuRadioItem,
|
|
12
|
-
DropdownMenuSeparator,
|
|
13
|
-
DropdownMenuTrigger,
|
|
14
|
-
} from './dropdown-menu';
|
|
15
|
-
|
|
16
|
-
describe('DropdownMenu', () => {
|
|
17
|
-
it('renders trigger correctly', () => {
|
|
18
|
-
render(
|
|
19
|
-
<DropdownMenu>
|
|
20
|
-
<DropdownMenuTrigger>Open Menu</DropdownMenuTrigger>
|
|
21
|
-
<DropdownMenuContent>
|
|
22
|
-
<DropdownMenuItem>Item 1</DropdownMenuItem>
|
|
23
|
-
</DropdownMenuContent>
|
|
24
|
-
</DropdownMenu>,
|
|
25
|
-
);
|
|
26
|
-
|
|
27
|
-
expect(screen.getByText('Open Menu')).toBeInTheDocument();
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
it('opens menu on click', async () => {
|
|
31
|
-
const user = userEvent.setup();
|
|
32
|
-
render(
|
|
33
|
-
<DropdownMenu>
|
|
34
|
-
<DropdownMenuTrigger>Open Menu</DropdownMenuTrigger>
|
|
35
|
-
<DropdownMenuContent>
|
|
36
|
-
<DropdownMenuLabel>My Account</DropdownMenuLabel>
|
|
37
|
-
<DropdownMenuSeparator />
|
|
38
|
-
<DropdownMenuItem>Profile</DropdownMenuItem>
|
|
39
|
-
<DropdownMenuItem>Billing</DropdownMenuItem>
|
|
40
|
-
</DropdownMenuContent>
|
|
41
|
-
</DropdownMenu>,
|
|
42
|
-
);
|
|
43
|
-
|
|
44
|
-
await user.click(screen.getByText('Open Menu'));
|
|
45
|
-
|
|
46
|
-
expect(screen.getByText('My Account')).toBeVisible();
|
|
47
|
-
expect(screen.getByText('Profile')).toBeVisible();
|
|
48
|
-
});
|
|
49
|
-
|
|
50
|
-
it('handles checkbox items', async () => {
|
|
51
|
-
const user = userEvent.setup();
|
|
52
|
-
render(
|
|
53
|
-
<DropdownMenu>
|
|
54
|
-
<DropdownMenuTrigger>Open</DropdownMenuTrigger>
|
|
55
|
-
<DropdownMenuContent>
|
|
56
|
-
<DropdownMenuCheckboxItem checked>Checked Item</DropdownMenuCheckboxItem>
|
|
57
|
-
<DropdownMenuCheckboxItem checked={false}>Unchecked Item</DropdownMenuCheckboxItem>
|
|
58
|
-
</DropdownMenuContent>
|
|
59
|
-
</DropdownMenu>,
|
|
60
|
-
);
|
|
61
|
-
|
|
62
|
-
await user.click(screen.getByText('Open'));
|
|
63
|
-
|
|
64
|
-
const checkedItem = screen.getByText('Checked Item');
|
|
65
|
-
// const uncheckedItem = screen.getByText('Unchecked Item');
|
|
66
|
-
|
|
67
|
-
expect(checkedItem).toBeVisible();
|
|
68
|
-
// Radix UI adds data-state="checked" or similar.
|
|
69
|
-
// But testing-library's toBeChecked() works on roles like 'checkbox' or 'menuitemcheckbox'
|
|
70
|
-
expect(screen.getByRole('menuitemcheckbox', { name: 'Checked Item' })).toBeChecked();
|
|
71
|
-
expect(screen.getByRole('menuitemcheckbox', { name: 'Unchecked Item' })).not.toBeChecked();
|
|
72
|
-
});
|
|
73
|
-
|
|
74
|
-
it('handles radio items', async () => {
|
|
75
|
-
const user = userEvent.setup();
|
|
76
|
-
render(
|
|
77
|
-
<DropdownMenu>
|
|
78
|
-
<DropdownMenuTrigger>Open</DropdownMenuTrigger>
|
|
79
|
-
<DropdownMenuContent>
|
|
80
|
-
<DropdownMenuRadioGroup value="top">
|
|
81
|
-
<DropdownMenuRadioItem value="top">Top</DropdownMenuRadioItem>
|
|
82
|
-
<DropdownMenuRadioItem value="bottom">Bottom</DropdownMenuRadioItem>
|
|
83
|
-
</DropdownMenuRadioGroup>
|
|
84
|
-
</DropdownMenuContent>
|
|
85
|
-
</DropdownMenu>,
|
|
86
|
-
);
|
|
87
|
-
|
|
88
|
-
await user.click(screen.getByText('Open'));
|
|
89
|
-
|
|
90
|
-
expect(screen.getByRole('menuitemradio', { name: 'Top' })).toBeChecked();
|
|
91
|
-
expect(screen.getByRole('menuitemradio', { name: 'Bottom' })).not.toBeChecked();
|
|
92
|
-
});
|
|
93
|
-
});
|
|
@@ -1,180 +0,0 @@
|
|
|
1
|
-
import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
|
|
2
|
-
import { Check, ChevronRight, Circle } from 'lucide-react';
|
|
3
|
-
import * as React from 'react';
|
|
4
|
-
|
|
5
|
-
import { cn } from '@/lib/utils';
|
|
6
|
-
|
|
7
|
-
const DropdownMenu = DropdownMenuPrimitive.Root;
|
|
8
|
-
|
|
9
|
-
const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
|
|
10
|
-
|
|
11
|
-
const DropdownMenuGroup = DropdownMenuPrimitive.Group;
|
|
12
|
-
|
|
13
|
-
const DropdownMenuPortal = DropdownMenuPrimitive.Portal;
|
|
14
|
-
|
|
15
|
-
const DropdownMenuSub = DropdownMenuPrimitive.Sub;
|
|
16
|
-
|
|
17
|
-
const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
|
|
18
|
-
|
|
19
|
-
const DropdownMenuSubTrigger = React.forwardRef<
|
|
20
|
-
React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>,
|
|
21
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & {
|
|
22
|
-
inset?: boolean;
|
|
23
|
-
}
|
|
24
|
-
>(({ className, inset, children, ...props }, ref) => (
|
|
25
|
-
<DropdownMenuPrimitive.SubTrigger
|
|
26
|
-
ref={ref}
|
|
27
|
-
className={cn(
|
|
28
|
-
'flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0',
|
|
29
|
-
inset && 'pl-8',
|
|
30
|
-
className,
|
|
31
|
-
)}
|
|
32
|
-
{...props}
|
|
33
|
-
>
|
|
34
|
-
{children}
|
|
35
|
-
<ChevronRight className="ml-auto" />
|
|
36
|
-
</DropdownMenuPrimitive.SubTrigger>
|
|
37
|
-
));
|
|
38
|
-
DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
|
|
39
|
-
|
|
40
|
-
const DropdownMenuSubContent = React.forwardRef<
|
|
41
|
-
React.ElementRef<typeof DropdownMenuPrimitive.SubContent>,
|
|
42
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent>
|
|
43
|
-
>(({ className, ...props }, ref) => (
|
|
44
|
-
<DropdownMenuPrimitive.SubContent
|
|
45
|
-
ref={ref}
|
|
46
|
-
className={cn(
|
|
47
|
-
'z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-dropdown-menu-content-transform-origin]',
|
|
48
|
-
className,
|
|
49
|
-
)}
|
|
50
|
-
{...props}
|
|
51
|
-
/>
|
|
52
|
-
));
|
|
53
|
-
DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
|
|
54
|
-
|
|
55
|
-
const DropdownMenuContent = React.forwardRef<
|
|
56
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Content>,
|
|
57
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content>
|
|
58
|
-
>(({ className, sideOffset = 4, ...props }, ref) => (
|
|
59
|
-
<DropdownMenuPrimitive.Portal>
|
|
60
|
-
<DropdownMenuPrimitive.Content
|
|
61
|
-
ref={ref}
|
|
62
|
-
sideOffset={sideOffset}
|
|
63
|
-
className={cn(
|
|
64
|
-
'z-50 max-h-[var(--radix-dropdown-menu-content-available-height)] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md',
|
|
65
|
-
'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-dropdown-menu-content-transform-origin]',
|
|
66
|
-
className,
|
|
67
|
-
)}
|
|
68
|
-
{...props}
|
|
69
|
-
/>
|
|
70
|
-
</DropdownMenuPrimitive.Portal>
|
|
71
|
-
));
|
|
72
|
-
DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
|
|
73
|
-
|
|
74
|
-
const DropdownMenuItem = React.forwardRef<
|
|
75
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Item>,
|
|
76
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & {
|
|
77
|
-
inset?: boolean;
|
|
78
|
-
}
|
|
79
|
-
>(({ className, inset, ...props }, ref) => (
|
|
80
|
-
<DropdownMenuPrimitive.Item
|
|
81
|
-
ref={ref}
|
|
82
|
-
className={cn(
|
|
83
|
-
'relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0',
|
|
84
|
-
inset && 'pl-8',
|
|
85
|
-
className,
|
|
86
|
-
)}
|
|
87
|
-
{...props}
|
|
88
|
-
/>
|
|
89
|
-
));
|
|
90
|
-
DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
|
|
91
|
-
|
|
92
|
-
const DropdownMenuCheckboxItem = React.forwardRef<
|
|
93
|
-
React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>,
|
|
94
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem>
|
|
95
|
-
>(({ className, children, checked, ...props }, ref) => (
|
|
96
|
-
<DropdownMenuPrimitive.CheckboxItem
|
|
97
|
-
ref={ref}
|
|
98
|
-
className={cn(
|
|
99
|
-
'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
100
|
-
className,
|
|
101
|
-
)}
|
|
102
|
-
checked={checked}
|
|
103
|
-
{...props}
|
|
104
|
-
>
|
|
105
|
-
<span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
|
|
106
|
-
<DropdownMenuPrimitive.ItemIndicator>
|
|
107
|
-
<Check className="h-4 w-4" />
|
|
108
|
-
</DropdownMenuPrimitive.ItemIndicator>
|
|
109
|
-
</span>
|
|
110
|
-
{children}
|
|
111
|
-
</DropdownMenuPrimitive.CheckboxItem>
|
|
112
|
-
));
|
|
113
|
-
DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
|
|
114
|
-
|
|
115
|
-
const DropdownMenuRadioItem = React.forwardRef<
|
|
116
|
-
React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>,
|
|
117
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem>
|
|
118
|
-
>(({ className, children, ...props }, ref) => (
|
|
119
|
-
<DropdownMenuPrimitive.RadioItem
|
|
120
|
-
ref={ref}
|
|
121
|
-
className={cn(
|
|
122
|
-
'relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',
|
|
123
|
-
className,
|
|
124
|
-
)}
|
|
125
|
-
{...props}
|
|
126
|
-
>
|
|
127
|
-
<span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center">
|
|
128
|
-
<DropdownMenuPrimitive.ItemIndicator>
|
|
129
|
-
<Circle className="h-2 w-2 fill-current" />
|
|
130
|
-
</DropdownMenuPrimitive.ItemIndicator>
|
|
131
|
-
</span>
|
|
132
|
-
{children}
|
|
133
|
-
</DropdownMenuPrimitive.RadioItem>
|
|
134
|
-
));
|
|
135
|
-
DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
|
|
136
|
-
|
|
137
|
-
const DropdownMenuLabel = React.forwardRef<
|
|
138
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Label>,
|
|
139
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & {
|
|
140
|
-
inset?: boolean;
|
|
141
|
-
}
|
|
142
|
-
>(({ className, inset, ...props }, ref) => (
|
|
143
|
-
<DropdownMenuPrimitive.Label
|
|
144
|
-
ref={ref}
|
|
145
|
-
className={cn('px-2 py-1.5 text-sm font-semibold', inset && 'pl-8', className)}
|
|
146
|
-
{...props}
|
|
147
|
-
/>
|
|
148
|
-
));
|
|
149
|
-
DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
|
|
150
|
-
|
|
151
|
-
const DropdownMenuSeparator = React.forwardRef<
|
|
152
|
-
React.ElementRef<typeof DropdownMenuPrimitive.Separator>,
|
|
153
|
-
React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator>
|
|
154
|
-
>(({ className, ...props }, ref) => (
|
|
155
|
-
<DropdownMenuPrimitive.Separator ref={ref} className={cn('-mx-1 my-1 h-px bg-muted', className)} {...props} />
|
|
156
|
-
));
|
|
157
|
-
DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
|
|
158
|
-
|
|
159
|
-
const DropdownMenuShortcut = ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>) => {
|
|
160
|
-
return <span className={cn('ml-auto text-xs tracking-widest opacity-60', className)} {...props} />;
|
|
161
|
-
};
|
|
162
|
-
DropdownMenuShortcut.displayName = 'DropdownMenuShortcut';
|
|
163
|
-
|
|
164
|
-
export {
|
|
165
|
-
DropdownMenu,
|
|
166
|
-
DropdownMenuCheckboxItem,
|
|
167
|
-
DropdownMenuContent,
|
|
168
|
-
DropdownMenuGroup,
|
|
169
|
-
DropdownMenuItem,
|
|
170
|
-
DropdownMenuLabel,
|
|
171
|
-
DropdownMenuPortal,
|
|
172
|
-
DropdownMenuRadioGroup,
|
|
173
|
-
DropdownMenuRadioItem,
|
|
174
|
-
DropdownMenuSeparator,
|
|
175
|
-
DropdownMenuShortcut,
|
|
176
|
-
DropdownMenuSub,
|
|
177
|
-
DropdownMenuSubContent,
|
|
178
|
-
DropdownMenuSubTrigger,
|
|
179
|
-
DropdownMenuTrigger,
|
|
180
|
-
};
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { zodResolver } from '@hookform/resolvers/zod';
|
|
2
|
-
import { render, screen, waitFor } from '@testing-library/react';
|
|
3
|
-
import userEvent from '@testing-library/user-event';
|
|
4
|
-
import { useForm } from 'react-hook-form';
|
|
5
|
-
import { describe, expect, it } from 'vitest';
|
|
6
|
-
import { z } from 'zod';
|
|
7
|
-
import { Button } from './button';
|
|
8
|
-
import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage } from './form';
|
|
9
|
-
import { Input } from './input';
|
|
10
|
-
|
|
11
|
-
const formSchema = z.object({
|
|
12
|
-
username: z.string().min(2, {
|
|
13
|
-
message: 'Username must be at least 2 characters.',
|
|
14
|
-
}),
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
function TestForm({ onSubmit }: { onSubmit: (values: z.infer<typeof formSchema>) => void }) {
|
|
18
|
-
const form = useForm<z.infer<typeof formSchema>>({
|
|
19
|
-
resolver: zodResolver(formSchema),
|
|
20
|
-
defaultValues: {
|
|
21
|
-
username: '',
|
|
22
|
-
},
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
return (
|
|
26
|
-
<Form {...form}>
|
|
27
|
-
<form onSubmit={form.handleSubmit(onSubmit)} className="space-y-8">
|
|
28
|
-
<FormField
|
|
29
|
-
control={form.control}
|
|
30
|
-
name="username"
|
|
31
|
-
render={({ field }) => (
|
|
32
|
-
<FormItem>
|
|
33
|
-
<FormLabel>Username</FormLabel>
|
|
34
|
-
<FormControl>
|
|
35
|
-
<Input placeholder="shadcn" {...field} />
|
|
36
|
-
</FormControl>
|
|
37
|
-
<FormDescription>This is your public display name.</FormDescription>
|
|
38
|
-
<FormMessage />
|
|
39
|
-
</FormItem>
|
|
40
|
-
)}
|
|
41
|
-
/>
|
|
42
|
-
<Button type="submit">Submit</Button>
|
|
43
|
-
</form>
|
|
44
|
-
</Form>
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
describe('Form', () => {
|
|
49
|
-
it('renders form fields correctly', () => {
|
|
50
|
-
render(<TestForm onSubmit={() => {}} />);
|
|
51
|
-
|
|
52
|
-
expect(screen.getByLabelText('Username')).toBeInTheDocument();
|
|
53
|
-
expect(screen.getByPlaceholderText('shadcn')).toBeInTheDocument();
|
|
54
|
-
expect(screen.getByText('This is your public display name.')).toBeInTheDocument();
|
|
55
|
-
expect(screen.getByRole('button', { name: 'Submit' })).toBeInTheDocument();
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
it('validates input and displays error message', async () => {
|
|
59
|
-
const user = userEvent.setup();
|
|
60
|
-
render(<TestForm onSubmit={() => {}} />);
|
|
61
|
-
|
|
62
|
-
const submitButton = screen.getByRole('button', { name: 'Submit' });
|
|
63
|
-
await user.click(submitButton);
|
|
64
|
-
|
|
65
|
-
await waitFor(() => {
|
|
66
|
-
expect(screen.getByText('Username must be at least 2 characters.')).toBeVisible();
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
|
|
70
|
-
it('submits valid data', async () => {
|
|
71
|
-
const user = userEvent.setup();
|
|
72
|
-
const { vi } = await import('vitest');
|
|
73
|
-
const mockSubmit = vi.fn();
|
|
74
|
-
|
|
75
|
-
render(<TestForm onSubmit={mockSubmit} />);
|
|
76
|
-
|
|
77
|
-
const input = screen.getByLabelText('Username');
|
|
78
|
-
await user.type(input, 'johndoe');
|
|
79
|
-
await user.click(screen.getByRole('button', { name: 'Submit' }));
|
|
80
|
-
|
|
81
|
-
await waitFor(() => {
|
|
82
|
-
expect(mockSubmit).toHaveBeenCalledWith({ username: 'johndoe' }, expect.anything());
|
|
83
|
-
});
|
|
84
|
-
});
|
|
85
|
-
});
|
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import * as LabelPrimitive from '@radix-ui/react-label';
|
|
4
|
-
import { Slot } from '@radix-ui/react-slot';
|
|
5
|
-
import * as React from 'react';
|
|
6
|
-
import {
|
|
7
|
-
Controller,
|
|
8
|
-
FormProvider,
|
|
9
|
-
useFormContext,
|
|
10
|
-
type ControllerProps,
|
|
11
|
-
type FieldPath,
|
|
12
|
-
type FieldValues,
|
|
13
|
-
} from 'react-hook-form';
|
|
14
|
-
|
|
15
|
-
import { Label } from '@/components/ui/label';
|
|
16
|
-
import { cn } from '@/lib/utils';
|
|
17
|
-
|
|
18
|
-
const Form = FormProvider;
|
|
19
|
-
|
|
20
|
-
type FormFieldContextValue<
|
|
21
|
-
TFieldValues extends FieldValues = FieldValues,
|
|
22
|
-
TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,
|
|
23
|
-
> = {
|
|
24
|
-
name: TName;
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
const FormFieldContext = React.createContext<FormFieldContextValue | null>(null);
|
|
28
|
-
|
|
29
|
-
const FormField = <
|
|
30
|
-
TFieldValues extends FieldValues = FieldValues,
|
|
31
|
-
TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,
|
|
32
|
-
>({
|
|
33
|
-
...props
|
|
34
|
-
}: ControllerProps<TFieldValues, TName>) => {
|
|
35
|
-
return (
|
|
36
|
-
<FormFieldContext.Provider value={{ name: props.name }}>
|
|
37
|
-
<Controller {...props} />
|
|
38
|
-
</FormFieldContext.Provider>
|
|
39
|
-
);
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
const useFormField = () => {
|
|
43
|
-
const fieldContext = React.useContext(FormFieldContext);
|
|
44
|
-
const itemContext = React.useContext(FormItemContext);
|
|
45
|
-
const { getFieldState, formState } = useFormContext();
|
|
46
|
-
|
|
47
|
-
if (!fieldContext) {
|
|
48
|
-
throw new Error('useFormField should be used within <FormField>');
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
if (!itemContext) {
|
|
52
|
-
throw new Error('useFormField should be used within <FormItem>');
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
const fieldState = getFieldState(fieldContext.name, formState);
|
|
56
|
-
|
|
57
|
-
const { id } = itemContext;
|
|
58
|
-
|
|
59
|
-
return {
|
|
60
|
-
id,
|
|
61
|
-
name: fieldContext.name,
|
|
62
|
-
formItemId: `${id}-form-item`,
|
|
63
|
-
formDescriptionId: `${id}-form-item-description`,
|
|
64
|
-
formMessageId: `${id}-form-item-message`,
|
|
65
|
-
...fieldState,
|
|
66
|
-
};
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
type FormItemContextValue = {
|
|
70
|
-
id: string;
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
const FormItemContext = React.createContext<FormItemContextValue | null>(null);
|
|
74
|
-
|
|
75
|
-
const FormItem = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
|
|
76
|
-
({ className, ...props }, ref) => {
|
|
77
|
-
const id = React.useId();
|
|
78
|
-
|
|
79
|
-
return (
|
|
80
|
-
<FormItemContext.Provider value={{ id }}>
|
|
81
|
-
<div ref={ref} className={cn('space-y-2', className)} {...props} />
|
|
82
|
-
</FormItemContext.Provider>
|
|
83
|
-
);
|
|
84
|
-
},
|
|
85
|
-
);
|
|
86
|
-
FormItem.displayName = 'FormItem';
|
|
87
|
-
|
|
88
|
-
const FormLabel = React.forwardRef<
|
|
89
|
-
React.ElementRef<typeof LabelPrimitive.Root>,
|
|
90
|
-
React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>
|
|
91
|
-
>(({ className, ...props }, ref) => {
|
|
92
|
-
const { error, formItemId } = useFormField();
|
|
93
|
-
|
|
94
|
-
return <Label ref={ref} className={cn(error && 'text-destructive', className)} htmlFor={formItemId} {...props} />;
|
|
95
|
-
});
|
|
96
|
-
FormLabel.displayName = 'FormLabel';
|
|
97
|
-
|
|
98
|
-
const FormControl = React.forwardRef<React.ElementRef<typeof Slot>, React.ComponentPropsWithoutRef<typeof Slot>>(
|
|
99
|
-
({ ...props }, ref) => {
|
|
100
|
-
const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
|
|
101
|
-
|
|
102
|
-
return (
|
|
103
|
-
<Slot
|
|
104
|
-
ref={ref}
|
|
105
|
-
id={formItemId}
|
|
106
|
-
aria-describedby={!error ? `${formDescriptionId}` : `${formDescriptionId} ${formMessageId}`}
|
|
107
|
-
aria-invalid={!!error}
|
|
108
|
-
{...props}
|
|
109
|
-
/>
|
|
110
|
-
);
|
|
111
|
-
},
|
|
112
|
-
);
|
|
113
|
-
FormControl.displayName = 'FormControl';
|
|
114
|
-
|
|
115
|
-
const FormDescription = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(
|
|
116
|
-
({ className, ...props }, ref) => {
|
|
117
|
-
const { formDescriptionId } = useFormField();
|
|
118
|
-
|
|
119
|
-
return (
|
|
120
|
-
<p ref={ref} id={formDescriptionId} className={cn('text-[0.8rem] text-muted-foreground', className)} {...props} />
|
|
121
|
-
);
|
|
122
|
-
},
|
|
123
|
-
);
|
|
124
|
-
FormDescription.displayName = 'FormDescription';
|
|
125
|
-
|
|
126
|
-
const FormMessage = React.forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(
|
|
127
|
-
({ className, children, ...props }, ref) => {
|
|
128
|
-
const { error, formMessageId } = useFormField();
|
|
129
|
-
const body = error ? String(error?.message ?? '') : children;
|
|
130
|
-
|
|
131
|
-
if (!body) {
|
|
132
|
-
return null;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
return (
|
|
136
|
-
<p
|
|
137
|
-
ref={ref}
|
|
138
|
-
id={formMessageId}
|
|
139
|
-
className={cn('text-[0.8rem] font-medium text-destructive', className)}
|
|
140
|
-
{...props}
|
|
141
|
-
>
|
|
142
|
-
{body}
|
|
143
|
-
</p>
|
|
144
|
-
);
|
|
145
|
-
},
|
|
146
|
-
);
|
|
147
|
-
FormMessage.displayName = 'FormMessage';
|
|
148
|
-
|
|
149
|
-
export { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, useFormField };
|