@nuka-ui/core 1.0.2 → 1.1.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/README.md +135 -23
- package/dist/_virtual/_rolldown/runtime.cjs +1 -0
- package/dist/bundle.css +1 -1
- package/dist/components/Accordion/Accordion.cjs +2 -0
- package/dist/components/Accordion/Accordion.cjs.map +1 -0
- package/dist/components/Accordion/Accordion.context.cjs +2 -0
- package/dist/components/Accordion/Accordion.context.cjs.map +1 -0
- package/dist/components/Accordion/Accordion.context.d.ts.map +1 -1
- package/dist/components/Accordion/Accordion.context.js +19 -0
- package/dist/components/Accordion/Accordion.context.js.map +1 -0
- package/dist/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/Accordion/Accordion.js +103 -0
- package/dist/components/Accordion/Accordion.js.map +1 -0
- package/dist/components/Accordion/AccordionContent.cjs +2 -0
- package/dist/components/Accordion/AccordionContent.cjs.map +1 -0
- package/dist/components/Accordion/AccordionContent.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionContent.js +19 -0
- package/dist/components/Accordion/AccordionContent.js.map +1 -0
- package/dist/components/Accordion/AccordionItem.cjs +2 -0
- package/dist/components/Accordion/AccordionItem.cjs.map +1 -0
- package/dist/components/Accordion/AccordionItem.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionItem.js +35 -0
- package/dist/components/Accordion/AccordionItem.js.map +1 -0
- package/dist/components/Accordion/AccordionTrigger.cjs +2 -0
- package/dist/components/Accordion/AccordionTrigger.cjs.map +1 -0
- package/dist/components/Accordion/AccordionTrigger.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionTrigger.js +39 -0
- package/dist/components/Accordion/AccordionTrigger.js.map +1 -0
- package/dist/components/Alert/Alert.cjs +2 -0
- package/dist/components/Alert/Alert.cjs.map +1 -0
- package/dist/components/Alert/Alert.js +35 -0
- package/dist/components/Alert/Alert.js.map +1 -0
- package/dist/components/Alert/Alert.variants.cjs +2 -0
- package/dist/components/Alert/Alert.variants.cjs.map +1 -0
- package/dist/components/Alert/Alert.variants.js +42 -0
- package/dist/components/Alert/Alert.variants.js.map +1 -0
- package/dist/components/AppShell/AppShell.cjs +2 -0
- package/dist/components/AppShell/AppShell.cjs.map +1 -0
- package/dist/components/AppShell/AppShell.js +14 -0
- package/dist/components/AppShell/AppShell.js.map +1 -0
- package/dist/components/AppShell/AppShellBody.cjs +2 -0
- package/dist/components/AppShell/AppShellBody.cjs.map +1 -0
- package/dist/components/AppShell/AppShellBody.js +14 -0
- package/dist/components/AppShell/AppShellBody.js.map +1 -0
- package/dist/components/AppShell/AppShellHeader.cjs +2 -0
- package/dist/components/AppShell/AppShellHeader.cjs.map +1 -0
- package/dist/components/AppShell/AppShellHeader.js +14 -0
- package/dist/components/AppShell/AppShellHeader.js.map +1 -0
- package/dist/components/AppShell/AppShellMain.cjs +2 -0
- package/dist/components/AppShell/AppShellMain.cjs.map +1 -0
- package/dist/components/AppShell/AppShellMain.js +14 -0
- package/dist/components/AppShell/AppShellMain.js.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.cjs +2 -0
- package/dist/components/AspectRatio/AspectRatio.cjs.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.d.ts +2 -2
- package/dist/components/AspectRatio/AspectRatio.d.ts.map +1 -1
- package/dist/components/AspectRatio/AspectRatio.js +17 -0
- package/dist/components/AspectRatio/AspectRatio.js.map +1 -0
- package/dist/components/AspectRatio/AspectRatio.utils.d.ts +1 -2
- package/dist/components/AspectRatio/AspectRatio.utils.d.ts.map +1 -1
- package/dist/components/Avatar/Avatar.cjs +2 -0
- package/dist/components/Avatar/Avatar.cjs.map +1 -0
- package/dist/components/Avatar/Avatar.d.ts.map +1 -1
- package/dist/components/Avatar/Avatar.js +64 -0
- package/dist/components/Avatar/Avatar.js.map +1 -0
- package/dist/components/Avatar/Avatar.variants.cjs +2 -0
- package/dist/components/Avatar/Avatar.variants.cjs.map +1 -0
- package/dist/components/Avatar/Avatar.variants.js +32 -0
- package/dist/components/Avatar/Avatar.variants.js.map +1 -0
- package/dist/components/Badge/Badge.cjs +2 -0
- package/dist/components/Badge/Badge.cjs.map +1 -0
- package/dist/components/Badge/Badge.js +20 -0
- package/dist/components/Badge/Badge.js.map +1 -0
- package/dist/components/Badge/Badge.variants.cjs +2 -0
- package/dist/components/Badge/Badge.variants.cjs.map +1 -0
- package/dist/components/Badge/Badge.variants.js +97 -0
- package/dist/components/Badge/Badge.variants.js.map +1 -0
- package/dist/components/Banner/Banner.cjs +2 -0
- package/dist/components/Banner/Banner.cjs.map +1 -0
- package/dist/components/Banner/Banner.js +32 -0
- package/dist/components/Banner/Banner.js.map +1 -0
- package/dist/components/Banner/Banner.variants.cjs +2 -0
- package/dist/components/Banner/Banner.variants.cjs.map +1 -0
- package/dist/components/Banner/Banner.variants.js +20 -0
- package/dist/components/Banner/Banner.variants.js.map +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.cjs +2 -0
- package/dist/components/Breadcrumb/Breadcrumb.cjs.map +1 -0
- package/dist/components/Breadcrumb/Breadcrumb.js +13 -0
- package/dist/components/Breadcrumb/Breadcrumb.js.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.cjs +2 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.cjs.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.js +22 -0
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.js.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.cjs +2 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.cjs.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.js +14 -0
- package/dist/components/Breadcrumb/BreadcrumbItem.js.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.cjs +2 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.cjs.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.js +15 -0
- package/dist/components/Breadcrumb/BreadcrumbLink.js.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbList.cjs +2 -0
- package/dist/components/Breadcrumb/BreadcrumbList.cjs.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbList.js +15 -0
- package/dist/components/Breadcrumb/BreadcrumbList.js.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.cjs +2 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.cjs.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.js +15 -0
- package/dist/components/Breadcrumb/BreadcrumbPage.js.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.cjs +2 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.cjs.map +1 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.js +23 -0
- package/dist/components/Breadcrumb/BreadcrumbSeparator.js.map +1 -0
- package/dist/components/Button/Button.cjs +2 -0
- package/dist/components/Button/Button.cjs.map +1 -0
- package/dist/components/Button/Button.js +20 -0
- package/dist/components/Button/Button.js.map +1 -0
- package/dist/components/Button/Button.variants.cjs +2 -0
- package/dist/components/Button/Button.variants.cjs.map +1 -0
- package/dist/components/Button/Button.variants.js +209 -0
- package/dist/components/Button/Button.variants.js.map +1 -0
- package/dist/components/Card/Card.cjs +2 -0
- package/dist/components/Card/Card.cjs.map +1 -0
- package/dist/components/Card/Card.js +67 -0
- package/dist/components/Card/Card.js.map +1 -0
- package/dist/components/Card/Card.variants.cjs +2 -0
- package/dist/components/Card/Card.variants.cjs.map +1 -0
- package/dist/components/Card/Card.variants.js +18 -0
- package/dist/components/Card/Card.variants.js.map +1 -0
- package/dist/components/Checkbox/Checkbox.cjs +2 -0
- package/dist/components/Checkbox/Checkbox.cjs.map +1 -0
- package/dist/components/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/components/Checkbox/Checkbox.js +59 -0
- package/dist/components/Checkbox/Checkbox.js.map +1 -0
- package/dist/components/Checkbox/Checkbox.variants.cjs +2 -0
- package/dist/components/Checkbox/Checkbox.variants.cjs.map +1 -0
- package/dist/components/Checkbox/Checkbox.variants.js +49 -0
- package/dist/components/Checkbox/Checkbox.variants.js.map +1 -0
- package/dist/components/Chip/Chip.cjs +2 -0
- package/dist/components/Chip/Chip.cjs.map +1 -0
- package/dist/components/Chip/Chip.d.ts +8 -0
- package/dist/components/Chip/Chip.d.ts.map +1 -0
- package/dist/components/Chip/Chip.js +22 -0
- package/dist/components/Chip/Chip.js.map +1 -0
- package/dist/components/Chip/Chip.variants.cjs +2 -0
- package/dist/components/Chip/Chip.variants.cjs.map +1 -0
- package/dist/components/Chip/Chip.variants.d.ts +9 -0
- package/dist/components/Chip/Chip.variants.d.ts.map +1 -0
- package/dist/components/Chip/Chip.variants.js +296 -0
- package/dist/components/Chip/Chip.variants.js.map +1 -0
- package/dist/components/Chip/index.d.ts +4 -0
- package/dist/components/Chip/index.d.ts.map +1 -0
- package/dist/components/Code/Code.cjs +2 -0
- package/dist/components/Code/Code.cjs.map +1 -0
- package/dist/components/Code/Code.d.ts.map +1 -1
- package/dist/components/Code/Code.js +20 -0
- package/dist/components/Code/Code.js.map +1 -0
- package/dist/components/Code/Code.variants.cjs +2 -0
- package/dist/components/Code/Code.variants.cjs.map +1 -0
- package/dist/components/Code/Code.variants.d.ts +1 -0
- package/dist/components/Code/Code.variants.d.ts.map +1 -1
- package/dist/components/Code/Code.variants.js +106 -0
- package/dist/components/Code/Code.variants.js.map +1 -0
- package/dist/components/Collapsible/Collapsible.cjs +2 -0
- package/dist/components/Collapsible/Collapsible.cjs.map +1 -0
- package/dist/components/Collapsible/Collapsible.context.cjs +2 -0
- package/dist/components/Collapsible/Collapsible.context.cjs.map +1 -0
- package/dist/components/Collapsible/Collapsible.context.d.ts.map +1 -1
- package/dist/components/Collapsible/Collapsible.context.js +13 -0
- package/dist/components/Collapsible/Collapsible.context.js.map +1 -0
- package/dist/components/Collapsible/Collapsible.d.ts.map +1 -1
- package/dist/components/Collapsible/Collapsible.js +35 -0
- package/dist/components/Collapsible/Collapsible.js.map +1 -0
- package/dist/components/Collapsible/CollapsibleContent.cjs +2 -0
- package/dist/components/Collapsible/CollapsibleContent.cjs.map +1 -0
- package/dist/components/Collapsible/CollapsibleContent.d.ts.map +1 -1
- package/dist/components/Collapsible/CollapsibleContent.js +28 -0
- package/dist/components/Collapsible/CollapsibleContent.js.map +1 -0
- package/dist/components/Collapsible/CollapsibleTrigger.cjs +2 -0
- package/dist/components/Collapsible/CollapsibleTrigger.cjs.map +1 -0
- package/dist/components/Collapsible/CollapsibleTrigger.d.ts.map +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.js +29 -0
- package/dist/components/Collapsible/CollapsibleTrigger.js.map +1 -0
- package/dist/components/Combobox/Combobox.cjs +2 -0
- package/dist/components/Combobox/Combobox.cjs.map +1 -0
- package/dist/components/Combobox/Combobox.context.cjs +2 -0
- package/dist/components/Combobox/Combobox.context.cjs.map +1 -0
- package/dist/components/Combobox/Combobox.context.d.ts.map +1 -1
- package/dist/components/Combobox/Combobox.context.js +13 -0
- package/dist/components/Combobox/Combobox.context.js.map +1 -0
- package/dist/components/Combobox/Combobox.d.ts.map +1 -1
- package/dist/components/Combobox/Combobox.js +114 -0
- package/dist/components/Combobox/Combobox.js.map +1 -0
- package/dist/components/Combobox/Combobox.utils.cjs +2 -0
- package/dist/components/Combobox/Combobox.utils.cjs.map +1 -0
- package/dist/components/Combobox/Combobox.utils.js +11 -0
- package/dist/components/Combobox/Combobox.utils.js.map +1 -0
- package/dist/components/Combobox/Combobox.variants.cjs +2 -0
- package/dist/components/Combobox/Combobox.variants.cjs.map +1 -0
- package/dist/components/Combobox/Combobox.variants.js +36 -0
- package/dist/components/Combobox/Combobox.variants.js.map +1 -0
- package/dist/components/Combobox/ComboboxContent.cjs +2 -0
- package/dist/components/Combobox/ComboboxContent.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxContent.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxContent.js +28 -0
- package/dist/components/Combobox/ComboboxContent.js.map +1 -0
- package/dist/components/Combobox/ComboboxEmpty.cjs +2 -0
- package/dist/components/Combobox/ComboboxEmpty.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxEmpty.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxEmpty.js +23 -0
- package/dist/components/Combobox/ComboboxEmpty.js.map +1 -0
- package/dist/components/Combobox/ComboboxGroup.cjs +2 -0
- package/dist/components/Combobox/ComboboxGroup.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxGroup.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxGroup.js +37 -0
- package/dist/components/Combobox/ComboboxGroup.js.map +1 -0
- package/dist/components/Combobox/ComboboxInput.cjs +2 -0
- package/dist/components/Combobox/ComboboxInput.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxInput.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxInput.js +107 -0
- package/dist/components/Combobox/ComboboxInput.js.map +1 -0
- package/dist/components/Combobox/ComboboxListbox.cjs +2 -0
- package/dist/components/Combobox/ComboboxListbox.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxListbox.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxListbox.js +34 -0
- package/dist/components/Combobox/ComboboxListbox.js.map +1 -0
- package/dist/components/Combobox/ComboboxOption.cjs +2 -0
- package/dist/components/Combobox/ComboboxOption.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxOption.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxOption.js +40 -0
- package/dist/components/Combobox/ComboboxOption.js.map +1 -0
- package/dist/components/Combobox/ComboboxTrigger.cjs +2 -0
- package/dist/components/Combobox/ComboboxTrigger.cjs.map +1 -0
- package/dist/components/Combobox/ComboboxTrigger.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxTrigger.js +84 -0
- package/dist/components/Combobox/ComboboxTrigger.js.map +1 -0
- package/dist/components/CommandMenu/CommandMenu.cjs +2 -0
- package/dist/components/CommandMenu/CommandMenu.cjs.map +1 -0
- package/dist/components/CommandMenu/CommandMenu.context.cjs +2 -0
- package/dist/components/CommandMenu/CommandMenu.context.cjs.map +1 -0
- package/dist/components/CommandMenu/CommandMenu.context.d.ts.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.context.js +13 -0
- package/dist/components/CommandMenu/CommandMenu.context.js.map +1 -0
- package/dist/components/CommandMenu/CommandMenu.d.ts.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.js +230 -0
- package/dist/components/CommandMenu/CommandMenu.js.map +1 -0
- package/dist/components/Container/Container.cjs +2 -0
- package/dist/components/Container/Container.cjs.map +1 -0
- package/dist/components/Container/Container.js +22 -0
- package/dist/components/Container/Container.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenu.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.context.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenu.context.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.context.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.context.js +13 -0
- package/dist/components/ContextMenu/ContextMenu.context.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenu.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.js +45 -0
- package/dist/components/ContextMenu/ContextMenu.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.js +14 -0
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuContent.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuContent.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuContent.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuContent.js +42 -0
- package/dist/components/ContextMenu/ContextMenuContent.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuItem.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuItem.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuItem.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuItem.js +14 -0
- package/dist/components/ContextMenu/ContextMenuItem.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuLabel.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuLabel.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuLabel.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuLabel.js +14 -0
- package/dist/components/ContextMenu/ContextMenuLabel.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuRadioGroup.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuRadioGroup.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuRadioGroup.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioGroup.js +14 -0
- package/dist/components/ContextMenu/ContextMenuRadioGroup.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioItem.js +14 -0
- package/dist/components/ContextMenu/ContextMenuRadioItem.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuSeparator.js +14 -0
- package/dist/components/ContextMenu/ContextMenuSeparator.js.map +1 -0
- package/dist/components/ContextMenu/ContextMenuTrigger.cjs +2 -0
- package/dist/components/ContextMenu/ContextMenuTrigger.cjs.map +1 -0
- package/dist/components/ContextMenu/ContextMenuTrigger.d.ts.map +1 -1
- package/dist/components/ContextMenu/ContextMenuTrigger.js +54 -0
- package/dist/components/ContextMenu/ContextMenuTrigger.js.map +1 -0
- package/dist/components/DataTable/DataTable.cjs +2 -0
- package/dist/components/DataTable/DataTable.cjs.map +1 -0
- package/dist/components/DataTable/DataTable.d.ts.map +1 -1
- package/dist/components/DataTable/DataTable.js +118 -0
- package/dist/components/DataTable/DataTable.js.map +1 -0
- package/dist/components/DatePicker/DatePicker.cjs +2 -0
- package/dist/components/DatePicker/DatePicker.cjs.map +1 -0
- package/dist/components/DatePicker/DatePicker.context.cjs +2 -0
- package/dist/components/DatePicker/DatePicker.context.cjs.map +1 -0
- package/dist/components/DatePicker/DatePicker.context.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.context.js +13 -0
- package/dist/components/DatePicker/DatePicker.context.js.map +1 -0
- package/dist/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.hooks.cjs +2 -0
- package/dist/components/DatePicker/DatePicker.hooks.cjs.map +1 -0
- package/dist/components/DatePicker/DatePicker.hooks.js +141 -0
- package/dist/components/DatePicker/DatePicker.hooks.js.map +1 -0
- package/dist/components/DatePicker/DatePicker.js +89 -0
- package/dist/components/DatePicker/DatePicker.js.map +1 -0
- package/dist/components/DatePicker/DatePicker.utils.cjs +2 -0
- package/dist/components/DatePicker/DatePicker.utils.cjs.map +1 -0
- package/dist/components/DatePicker/DatePicker.utils.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.utils.js +40 -0
- package/dist/components/DatePicker/DatePicker.utils.js.map +1 -0
- package/dist/components/DatePicker/DatePickerCalendar.cjs +2 -0
- package/dist/components/DatePicker/DatePickerCalendar.cjs.map +1 -0
- package/dist/components/DatePicker/DatePickerCalendar.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePickerCalendar.js +158 -0
- package/dist/components/DatePicker/DatePickerCalendar.js.map +1 -0
- package/dist/components/DatePicker/DatePickerInput.cjs +2 -0
- package/dist/components/DatePicker/DatePickerInput.cjs.map +1 -0
- package/dist/components/DatePicker/DatePickerInput.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePickerInput.js +116 -0
- package/dist/components/DatePicker/DatePickerInput.js.map +1 -0
- package/dist/components/Dialog/Dialog.cjs +2 -0
- package/dist/components/Dialog/Dialog.cjs.map +1 -0
- package/dist/components/Dialog/Dialog.context.cjs +2 -0
- package/dist/components/Dialog/Dialog.context.cjs.map +1 -0
- package/dist/components/Dialog/Dialog.context.d.ts.map +1 -1
- package/dist/components/Dialog/Dialog.context.js +13 -0
- package/dist/components/Dialog/Dialog.context.js.map +1 -0
- package/dist/components/Dialog/Dialog.d.ts.map +1 -1
- package/dist/components/Dialog/Dialog.js +47 -0
- package/dist/components/Dialog/Dialog.js.map +1 -0
- package/dist/components/Divider/Divider.cjs +2 -0
- package/dist/components/Divider/Divider.cjs.map +1 -0
- package/dist/components/Divider/Divider.d.ts +3 -2
- package/dist/components/Divider/Divider.d.ts.map +1 -1
- package/dist/components/Divider/Divider.js +60 -0
- package/dist/components/Divider/Divider.js.map +1 -0
- package/dist/components/Divider/Divider.variants.d.ts +5 -6
- package/dist/components/Divider/Divider.variants.d.ts.map +1 -1
- package/dist/components/Divider/index.d.ts +1 -3
- package/dist/components/Divider/index.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenu.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.context.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenu.context.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.context.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.context.js +13 -0
- package/dist/components/DropdownMenu/DropdownMenu.context.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenu.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.js +49 -0
- package/dist/components/DropdownMenu/DropdownMenu.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuContent.js +42 -0
- package/dist/components/DropdownMenu/DropdownMenuContent.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuItem.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuLabel.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuLabel.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuSeparator.js +14 -0
- package/dist/components/DropdownMenu/DropdownMenuSeparator.js.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuTrigger.cjs +2 -0
- package/dist/components/DropdownMenu/DropdownMenuTrigger.cjs.map +1 -0
- package/dist/components/DropdownMenu/DropdownMenuTrigger.d.ts.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuTrigger.js +22 -0
- package/dist/components/DropdownMenu/DropdownMenuTrigger.js.map +1 -0
- package/dist/components/EmptyState/EmptyState.cjs +2 -0
- package/dist/components/EmptyState/EmptyState.cjs.map +1 -0
- package/dist/components/EmptyState/EmptyState.js +40 -0
- package/dist/components/EmptyState/EmptyState.js.map +1 -0
- package/dist/components/Eyebrow/Eyebrow.cjs +2 -0
- package/dist/components/Eyebrow/Eyebrow.cjs.map +1 -0
- package/dist/components/Eyebrow/Eyebrow.d.ts +9 -0
- package/dist/components/Eyebrow/Eyebrow.d.ts.map +1 -0
- package/dist/components/Eyebrow/Eyebrow.js +15 -0
- package/dist/components/Eyebrow/Eyebrow.js.map +1 -0
- package/dist/components/Eyebrow/Eyebrow.variants.cjs +2 -0
- package/dist/components/Eyebrow/Eyebrow.variants.cjs.map +1 -0
- package/dist/components/Eyebrow/Eyebrow.variants.d.ts +6 -0
- package/dist/components/Eyebrow/Eyebrow.variants.d.ts.map +1 -0
- package/dist/components/Eyebrow/Eyebrow.variants.js +20 -0
- package/dist/components/Eyebrow/Eyebrow.variants.js.map +1 -0
- package/dist/components/Eyebrow/index.d.ts +4 -0
- package/dist/components/Eyebrow/index.d.ts.map +1 -0
- package/dist/components/FileInput/FileInput.cjs +2 -0
- package/dist/components/FileInput/FileInput.cjs.map +1 -0
- package/dist/components/FileInput/FileInput.d.ts +11 -0
- package/dist/components/FileInput/FileInput.d.ts.map +1 -0
- package/dist/components/FileInput/FileInput.js +109 -0
- package/dist/components/FileInput/FileInput.js.map +1 -0
- package/dist/components/FileInput/FileInput.variants.cjs +2 -0
- package/dist/components/FileInput/FileInput.variants.cjs.map +1 -0
- package/dist/components/FileInput/FileInput.variants.d.ts +7 -0
- package/dist/components/FileInput/FileInput.variants.d.ts.map +1 -0
- package/dist/components/FileInput/FileInput.variants.js +105 -0
- package/dist/components/FileInput/FileInput.variants.js.map +1 -0
- package/dist/components/FileInput/index.d.ts +4 -0
- package/dist/components/FileInput/index.d.ts.map +1 -0
- package/dist/components/FormField/FormField.cjs +2 -0
- package/dist/components/FormField/FormField.cjs.map +1 -0
- package/dist/components/FormField/FormField.context.cjs +2 -0
- package/dist/components/FormField/FormField.context.cjs.map +1 -0
- package/dist/components/FormField/FormField.context.d.ts.map +1 -1
- package/dist/components/FormField/FormField.context.js +18 -0
- package/dist/components/FormField/FormField.context.js.map +1 -0
- package/dist/components/FormField/FormField.d.ts.map +1 -1
- package/dist/components/FormField/FormField.js +53 -0
- package/dist/components/FormField/FormField.js.map +1 -0
- package/dist/components/Grid/Grid.cjs +2 -0
- package/dist/components/Grid/Grid.cjs.map +1 -0
- package/dist/components/Grid/Grid.js +16 -0
- package/dist/components/Grid/Grid.js.map +1 -0
- package/dist/components/Heading/Heading.cjs +2 -0
- package/dist/components/Heading/Heading.cjs.map +1 -0
- package/dist/components/Heading/Heading.d.ts +2 -0
- package/dist/components/Heading/Heading.d.ts.map +1 -1
- package/dist/components/Heading/Heading.js +21 -0
- package/dist/components/Heading/Heading.js.map +1 -0
- package/dist/components/Heading/Heading.variants.cjs +2 -0
- package/dist/components/Heading/Heading.variants.cjs.map +1 -0
- package/dist/components/Heading/Heading.variants.d.ts +1 -1
- package/dist/components/Heading/Heading.variants.d.ts.map +1 -1
- package/dist/components/Heading/Heading.variants.js +43 -0
- package/dist/components/Heading/Heading.variants.js.map +1 -0
- package/dist/components/Icon/Icon.cjs +2 -0
- package/dist/components/Icon/Icon.cjs.map +1 -0
- package/dist/components/Icon/Icon.js +28 -0
- package/dist/components/Icon/Icon.js.map +1 -0
- package/dist/components/Icon/Icon.variants.cjs +2 -0
- package/dist/components/Icon/Icon.variants.cjs.map +1 -0
- package/dist/components/Icon/Icon.variants.js +30 -0
- package/dist/components/Icon/Icon.variants.js.map +1 -0
- package/dist/components/Input/Input.cjs +2 -0
- package/dist/components/Input/Input.cjs.map +1 -0
- package/dist/components/Input/Input.d.ts.map +1 -1
- package/dist/components/Input/Input.js +32 -0
- package/dist/components/Input/Input.js.map +1 -0
- package/dist/components/Input/Input.variants.cjs +2 -0
- package/dist/components/Input/Input.variants.cjs.map +1 -0
- package/dist/components/Input/Input.variants.js +26 -0
- package/dist/components/Input/Input.variants.js.map +1 -0
- package/dist/components/Kbd/Kbd.cjs +2 -0
- package/dist/components/Kbd/Kbd.cjs.map +1 -0
- package/dist/components/Kbd/Kbd.js +18 -0
- package/dist/components/Kbd/Kbd.js.map +1 -0
- package/dist/components/Kbd/Kbd.variants.cjs +2 -0
- package/dist/components/Kbd/Kbd.variants.cjs.map +1 -0
- package/dist/components/Kbd/Kbd.variants.d.ts +1 -0
- package/dist/components/Kbd/Kbd.variants.d.ts.map +1 -1
- package/dist/components/Kbd/Kbd.variants.js +32 -0
- package/dist/components/Kbd/Kbd.variants.js.map +1 -0
- package/dist/components/Label/Label.cjs +2 -0
- package/dist/components/Label/Label.cjs.map +1 -0
- package/dist/components/Label/Label.d.ts.map +1 -1
- package/dist/components/Label/Label.js +26 -0
- package/dist/components/Label/Label.js.map +1 -0
- package/dist/components/Menu/MenuCheckboxItemBase.cjs +2 -0
- package/dist/components/Menu/MenuCheckboxItemBase.cjs.map +1 -0
- package/dist/components/Menu/MenuCheckboxItemBase.js +46 -0
- package/dist/components/Menu/MenuCheckboxItemBase.js.map +1 -0
- package/dist/components/Menu/MenuContentBase.cjs +2 -0
- package/dist/components/Menu/MenuContentBase.cjs.map +1 -0
- package/dist/components/Menu/MenuContentBase.js +84 -0
- package/dist/components/Menu/MenuContentBase.js.map +1 -0
- package/dist/components/Menu/MenuItemBase.cjs +2 -0
- package/dist/components/Menu/MenuItemBase.cjs.map +1 -0
- package/dist/components/Menu/MenuItemBase.js +29 -0
- package/dist/components/Menu/MenuItemBase.js.map +1 -0
- package/dist/components/Menu/MenuLabelBase.cjs +2 -0
- package/dist/components/Menu/MenuLabelBase.cjs.map +1 -0
- package/dist/components/Menu/MenuLabelBase.js +16 -0
- package/dist/components/Menu/MenuLabelBase.js.map +1 -0
- package/dist/components/Menu/MenuRadioGroupBase.cjs +2 -0
- package/dist/components/Menu/MenuRadioGroupBase.cjs.map +1 -0
- package/dist/components/Menu/MenuRadioGroupBase.js +26 -0
- package/dist/components/Menu/MenuRadioGroupBase.js.map +1 -0
- package/dist/components/Menu/MenuRadioItemBase.cjs +2 -0
- package/dist/components/Menu/MenuRadioItemBase.cjs.map +1 -0
- package/dist/components/Menu/MenuRadioItemBase.js +47 -0
- package/dist/components/Menu/MenuRadioItemBase.js.map +1 -0
- package/dist/components/Menu/MenuSeparatorBase.cjs +2 -0
- package/dist/components/Menu/MenuSeparatorBase.cjs.map +1 -0
- package/dist/components/Menu/MenuSeparatorBase.js +16 -0
- package/dist/components/Menu/MenuSeparatorBase.js.map +1 -0
- package/dist/components/Menu/menuItemVariants.cjs +2 -0
- package/dist/components/Menu/menuItemVariants.cjs.map +1 -0
- package/dist/components/Menu/menuItemVariants.js +53 -0
- package/dist/components/Menu/menuItemVariants.js.map +1 -0
- package/dist/components/Menubar/Menubar.cjs +2 -0
- package/dist/components/Menubar/Menubar.cjs.map +1 -0
- package/dist/components/Menubar/Menubar.context.cjs +2 -0
- package/dist/components/Menubar/Menubar.context.cjs.map +1 -0
- package/dist/components/Menubar/Menubar.context.d.ts.map +1 -1
- package/dist/components/Menubar/Menubar.context.js +19 -0
- package/dist/components/Menubar/Menubar.context.js.map +1 -0
- package/dist/components/Menubar/Menubar.d.ts.map +1 -1
- package/dist/components/Menubar/Menubar.js +46 -0
- package/dist/components/Menubar/Menubar.js.map +1 -0
- package/dist/components/Menubar/MenubarCheckboxItem.cjs +2 -0
- package/dist/components/Menubar/MenubarCheckboxItem.cjs.map +1 -0
- package/dist/components/Menubar/MenubarCheckboxItem.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarCheckboxItem.js +14 -0
- package/dist/components/Menubar/MenubarCheckboxItem.js.map +1 -0
- package/dist/components/Menubar/MenubarContent.cjs +2 -0
- package/dist/components/Menubar/MenubarContent.cjs.map +1 -0
- package/dist/components/Menubar/MenubarContent.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarContent.js +55 -0
- package/dist/components/Menubar/MenubarContent.js.map +1 -0
- package/dist/components/Menubar/MenubarItem.cjs +2 -0
- package/dist/components/Menubar/MenubarItem.cjs.map +1 -0
- package/dist/components/Menubar/MenubarItem.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarItem.js +14 -0
- package/dist/components/Menubar/MenubarItem.js.map +1 -0
- package/dist/components/Menubar/MenubarMenu.cjs +2 -0
- package/dist/components/Menubar/MenubarMenu.cjs.map +1 -0
- package/dist/components/Menubar/MenubarMenu.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarMenu.js +56 -0
- package/dist/components/Menubar/MenubarMenu.js.map +1 -0
- package/dist/components/Menubar/MenubarRadioGroup.cjs +2 -0
- package/dist/components/Menubar/MenubarRadioGroup.cjs.map +1 -0
- package/dist/components/Menubar/MenubarRadioGroup.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarRadioGroup.js +14 -0
- package/dist/components/Menubar/MenubarRadioGroup.js.map +1 -0
- package/dist/components/Menubar/MenubarRadioItem.cjs +2 -0
- package/dist/components/Menubar/MenubarRadioItem.cjs.map +1 -0
- package/dist/components/Menubar/MenubarRadioItem.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarRadioItem.js +14 -0
- package/dist/components/Menubar/MenubarRadioItem.js.map +1 -0
- package/dist/components/Menubar/MenubarSeparator.cjs +2 -0
- package/dist/components/Menubar/MenubarSeparator.cjs.map +1 -0
- package/dist/components/Menubar/MenubarSeparator.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarSeparator.js +14 -0
- package/dist/components/Menubar/MenubarSeparator.js.map +1 -0
- package/dist/components/Menubar/MenubarTrigger.cjs +2 -0
- package/dist/components/Menubar/MenubarTrigger.cjs.map +1 -0
- package/dist/components/Menubar/MenubarTrigger.d.ts.map +1 -1
- package/dist/components/Menubar/MenubarTrigger.js +44 -0
- package/dist/components/Menubar/MenubarTrigger.js.map +1 -0
- package/dist/components/Nav/Nav.cjs +2 -0
- package/dist/components/Nav/Nav.cjs.map +1 -0
- package/dist/components/Nav/Nav.d.ts +7 -0
- package/dist/components/Nav/Nav.d.ts.map +1 -0
- package/dist/components/Nav/Nav.js +13 -0
- package/dist/components/Nav/Nav.js.map +1 -0
- package/dist/components/Nav/NavItem.cjs +2 -0
- package/dist/components/Nav/NavItem.cjs.map +1 -0
- package/dist/components/Nav/NavItem.d.ts +7 -0
- package/dist/components/Nav/NavItem.d.ts.map +1 -0
- package/dist/components/Nav/NavItem.js +14 -0
- package/dist/components/Nav/NavItem.js.map +1 -0
- package/dist/components/Nav/NavLink.cjs +2 -0
- package/dist/components/Nav/NavLink.cjs.map +1 -0
- package/dist/components/Nav/NavLink.d.ts +8 -0
- package/dist/components/Nav/NavLink.d.ts.map +1 -0
- package/dist/components/Nav/NavLink.js +16 -0
- package/dist/components/Nav/NavLink.js.map +1 -0
- package/dist/components/Nav/NavList.cjs +2 -0
- package/dist/components/Nav/NavList.cjs.map +1 -0
- package/dist/components/Nav/NavList.d.ts +6 -0
- package/dist/components/Nav/NavList.d.ts.map +1 -0
- package/dist/components/Nav/NavList.js +14 -0
- package/dist/components/Nav/NavList.js.map +1 -0
- package/dist/components/Nav/NavSubmenu.cjs +2 -0
- package/dist/components/Nav/NavSubmenu.cjs.map +1 -0
- package/dist/components/Nav/NavSubmenu.d.ts +7 -0
- package/dist/components/Nav/NavSubmenu.d.ts.map +1 -0
- package/dist/components/Nav/NavSubmenu.js +14 -0
- package/dist/components/Nav/NavSubmenu.js.map +1 -0
- package/dist/components/Nav/NavTrigger.cjs +2 -0
- package/dist/components/Nav/NavTrigger.cjs.map +1 -0
- package/dist/components/Nav/NavTrigger.d.ts +7 -0
- package/dist/components/Nav/NavTrigger.d.ts.map +1 -0
- package/dist/components/Nav/NavTrigger.js +47 -0
- package/dist/components/Nav/NavTrigger.js.map +1 -0
- package/dist/components/Nav/index.d.ts +13 -0
- package/dist/components/Nav/index.d.ts.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.cjs +2 -0
- package/dist/components/NavigationMenu/NavigationMenu.cjs.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.context.cjs +2 -0
- package/dist/components/NavigationMenu/NavigationMenu.context.cjs.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.context.d.ts.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.context.js +23 -0
- package/dist/components/NavigationMenu/NavigationMenu.context.js.map +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.d.ts +1 -0
- package/dist/components/NavigationMenu/NavigationMenu.d.ts.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.js +220 -0
- package/dist/components/NavigationMenu/NavigationMenu.js.map +1 -0
- package/dist/components/NumberInput/NumberInput.cjs +2 -0
- package/dist/components/NumberInput/NumberInput.cjs.map +1 -0
- package/dist/components/NumberInput/NumberInput.d.ts +16 -0
- package/dist/components/NumberInput/NumberInput.d.ts.map +1 -0
- package/dist/components/NumberInput/NumberInput.js +117 -0
- package/dist/components/NumberInput/NumberInput.js.map +1 -0
- package/dist/components/NumberInput/index.d.ts +3 -0
- package/dist/components/NumberInput/index.d.ts.map +1 -0
- package/dist/components/Pagination/Pagination.cjs +2 -0
- package/dist/components/Pagination/Pagination.cjs.map +1 -0
- package/dist/components/Pagination/Pagination.js +15 -0
- package/dist/components/Pagination/Pagination.js.map +1 -0
- package/dist/components/Pagination/PaginationContent.cjs +2 -0
- package/dist/components/Pagination/PaginationContent.cjs.map +1 -0
- package/dist/components/Pagination/PaginationContent.js +14 -0
- package/dist/components/Pagination/PaginationContent.js.map +1 -0
- package/dist/components/Pagination/PaginationEllipsis.cjs +2 -0
- package/dist/components/Pagination/PaginationEllipsis.cjs.map +1 -0
- package/dist/components/Pagination/PaginationEllipsis.js +19 -0
- package/dist/components/Pagination/PaginationEllipsis.js.map +1 -0
- package/dist/components/Pagination/PaginationItem.cjs +2 -0
- package/dist/components/Pagination/PaginationItem.cjs.map +1 -0
- package/dist/components/Pagination/PaginationItem.js +12 -0
- package/dist/components/Pagination/PaginationItem.js.map +1 -0
- package/dist/components/Pagination/PaginationLink.cjs +2 -0
- package/dist/components/Pagination/PaginationLink.cjs.map +1 -0
- package/dist/components/Pagination/PaginationLink.js +21 -0
- package/dist/components/Pagination/PaginationLink.js.map +1 -0
- package/dist/components/Pagination/PaginationNext.cjs +2 -0
- package/dist/components/Pagination/PaginationNext.cjs.map +1 -0
- package/dist/components/Pagination/PaginationNext.js +61 -0
- package/dist/components/Pagination/PaginationNext.js.map +1 -0
- package/dist/components/Pagination/PaginationPrevious.cjs +2 -0
- package/dist/components/Pagination/PaginationPrevious.cjs.map +1 -0
- package/dist/components/Pagination/PaginationPrevious.js +61 -0
- package/dist/components/Pagination/PaginationPrevious.js.map +1 -0
- package/dist/components/Popover/Popover.cjs +2 -0
- package/dist/components/Popover/Popover.cjs.map +1 -0
- package/dist/components/Popover/Popover.context.cjs +2 -0
- package/dist/components/Popover/Popover.context.cjs.map +1 -0
- package/dist/components/Popover/Popover.context.d.ts.map +1 -1
- package/dist/components/Popover/Popover.context.js +13 -0
- package/dist/components/Popover/Popover.context.js.map +1 -0
- package/dist/components/Popover/Popover.d.ts.map +1 -1
- package/dist/components/Popover/Popover.js +49 -0
- package/dist/components/Popover/Popover.js.map +1 -0
- package/dist/components/Popover/PopoverContent.cjs +2 -0
- package/dist/components/Popover/PopoverContent.cjs.map +1 -0
- package/dist/components/Popover/PopoverContent.d.ts.map +1 -1
- package/dist/components/Popover/PopoverContent.js +34 -0
- package/dist/components/Popover/PopoverContent.js.map +1 -0
- package/dist/components/Popover/PopoverTrigger.cjs +2 -0
- package/dist/components/Popover/PopoverTrigger.cjs.map +1 -0
- package/dist/components/Popover/PopoverTrigger.d.ts.map +1 -1
- package/dist/components/Popover/PopoverTrigger.js +20 -0
- package/dist/components/Popover/PopoverTrigger.js.map +1 -0
- package/dist/components/Progress/Progress.cjs +2 -0
- package/dist/components/Progress/Progress.cjs.map +1 -0
- package/dist/components/Progress/Progress.d.ts.map +1 -1
- package/dist/components/Progress/Progress.js +28 -0
- package/dist/components/Progress/Progress.js.map +1 -0
- package/dist/components/Progress/Progress.variants.cjs +2 -0
- package/dist/components/Progress/Progress.variants.cjs.map +1 -0
- package/dist/components/Progress/Progress.variants.js +40 -0
- package/dist/components/Progress/Progress.variants.js.map +1 -0
- package/dist/components/RadioGroup/Radio.cjs +2 -0
- package/dist/components/RadioGroup/Radio.cjs.map +1 -0
- package/dist/components/RadioGroup/Radio.d.ts.map +1 -1
- package/dist/components/RadioGroup/Radio.js +55 -0
- package/dist/components/RadioGroup/Radio.js.map +1 -0
- package/dist/components/RadioGroup/Radio.variants.cjs +2 -0
- package/dist/components/RadioGroup/Radio.variants.cjs.map +1 -0
- package/dist/components/RadioGroup/Radio.variants.js +38 -0
- package/dist/components/RadioGroup/Radio.variants.js.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.cjs +2 -0
- package/dist/components/RadioGroup/RadioGroup.cjs.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.context.cjs +2 -0
- package/dist/components/RadioGroup/RadioGroup.context.cjs.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.context.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.context.js +18 -0
- package/dist/components/RadioGroup/RadioGroup.context.js.map +1 -0
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.js +110 -0
- package/dist/components/RadioGroup/RadioGroup.js.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.cjs +2 -0
- package/dist/components/ScrollArea/ScrollArea.cjs.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts +13 -0
- package/dist/components/ScrollArea/ScrollArea.d.ts.map +1 -0
- package/dist/components/ScrollArea/ScrollArea.js +24 -0
- package/dist/components/ScrollArea/ScrollArea.js.map +1 -0
- package/dist/components/ScrollArea/index.d.ts +3 -0
- package/dist/components/ScrollArea/index.d.ts.map +1 -0
- package/dist/components/Section/Section.cjs +2 -0
- package/dist/components/Section/Section.cjs.map +1 -0
- package/dist/components/Section/Section.d.ts +10 -0
- package/dist/components/Section/Section.d.ts.map +1 -0
- package/dist/components/Section/Section.js +20 -0
- package/dist/components/Section/Section.js.map +1 -0
- package/dist/components/Section/Section.variants.cjs +2 -0
- package/dist/components/Section/Section.variants.cjs.map +1 -0
- package/dist/components/Section/Section.variants.d.ts +8 -0
- package/dist/components/Section/Section.variants.d.ts.map +1 -0
- package/dist/components/Section/Section.variants.js +31 -0
- package/dist/components/Section/Section.variants.js.map +1 -0
- package/dist/components/Section/index.d.ts +4 -0
- package/dist/components/Section/index.d.ts.map +1 -0
- package/dist/components/Select/Select.cjs +2 -0
- package/dist/components/Select/Select.cjs.map +1 -0
- package/dist/components/Select/Select.context.cjs +2 -0
- package/dist/components/Select/Select.context.cjs.map +1 -0
- package/dist/components/Select/Select.context.d.ts.map +1 -1
- package/dist/components/Select/Select.context.js +13 -0
- package/dist/components/Select/Select.context.js.map +1 -0
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/Select/Select.js +83 -0
- package/dist/components/Select/Select.js.map +1 -0
- package/dist/components/Select/SelectContent.cjs +2 -0
- package/dist/components/Select/SelectContent.cjs.map +1 -0
- package/dist/components/Select/SelectContent.d.ts.map +1 -1
- package/dist/components/Select/SelectContent.js +22 -0
- package/dist/components/Select/SelectContent.js.map +1 -0
- package/dist/components/Select/SelectItem.cjs +2 -0
- package/dist/components/Select/SelectItem.cjs.map +1 -0
- package/dist/components/Select/SelectItem.d.ts.map +1 -1
- package/dist/components/Select/SelectItem.js +38 -0
- package/dist/components/Select/SelectItem.js.map +1 -0
- package/dist/components/Select/SelectSeparator.cjs +2 -0
- package/dist/components/Select/SelectSeparator.cjs.map +1 -0
- package/dist/components/Select/SelectSeparator.d.ts.map +1 -1
- package/dist/components/Select/SelectSeparator.js +17 -0
- package/dist/components/Select/SelectSeparator.js.map +1 -0
- package/dist/components/Select/SelectTrigger.cjs +2 -0
- package/dist/components/Select/SelectTrigger.cjs.map +1 -0
- package/dist/components/Select/SelectTrigger.d.ts.map +1 -1
- package/dist/components/Select/SelectTrigger.js +157 -0
- package/dist/components/Select/SelectTrigger.js.map +1 -0
- package/dist/components/Select/SelectTrigger.variants.cjs +2 -0
- package/dist/components/Select/SelectTrigger.variants.cjs.map +1 -0
- package/dist/components/Select/SelectTrigger.variants.js +36 -0
- package/dist/components/Select/SelectTrigger.variants.js.map +1 -0
- package/dist/components/Sheet/Sheet.cjs +2 -0
- package/dist/components/Sheet/Sheet.cjs.map +1 -0
- package/dist/components/Sheet/Sheet.context.cjs +2 -0
- package/dist/components/Sheet/Sheet.context.cjs.map +1 -0
- package/dist/components/Sheet/Sheet.context.d.ts.map +1 -1
- package/dist/components/Sheet/Sheet.context.js +13 -0
- package/dist/components/Sheet/Sheet.context.js.map +1 -0
- package/dist/components/Sheet/Sheet.d.ts.map +1 -1
- package/dist/components/Sheet/Sheet.js +53 -0
- package/dist/components/Sheet/Sheet.js.map +1 -0
- package/dist/components/Sidebar/Sidebar.cjs +2 -0
- package/dist/components/Sidebar/Sidebar.cjs.map +1 -0
- package/dist/components/Sidebar/Sidebar.context.cjs +2 -0
- package/dist/components/Sidebar/Sidebar.context.cjs.map +1 -0
- package/dist/components/Sidebar/Sidebar.context.d.ts.map +1 -1
- package/dist/components/Sidebar/Sidebar.context.js +13 -0
- package/dist/components/Sidebar/Sidebar.context.js.map +1 -0
- package/dist/components/Sidebar/Sidebar.d.ts.map +1 -1
- package/dist/components/Sidebar/Sidebar.js +45 -0
- package/dist/components/Sidebar/Sidebar.js.map +1 -0
- package/dist/components/Sidebar/SidebarContent.cjs +2 -0
- package/dist/components/Sidebar/SidebarContent.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarContent.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarContent.js +15 -0
- package/dist/components/Sidebar/SidebarContent.js.map +1 -0
- package/dist/components/Sidebar/SidebarFooter.cjs +2 -0
- package/dist/components/Sidebar/SidebarFooter.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarFooter.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarFooter.js +15 -0
- package/dist/components/Sidebar/SidebarFooter.js.map +1 -0
- package/dist/components/Sidebar/SidebarGroup.cjs +2 -0
- package/dist/components/Sidebar/SidebarGroup.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarGroup.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarGroup.js +15 -0
- package/dist/components/Sidebar/SidebarGroup.js.map +1 -0
- package/dist/components/Sidebar/SidebarGroupLabel.cjs +2 -0
- package/dist/components/Sidebar/SidebarGroupLabel.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarGroupLabel.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarGroupLabel.js +24 -0
- package/dist/components/Sidebar/SidebarGroupLabel.js.map +1 -0
- package/dist/components/Sidebar/SidebarHeader.cjs +2 -0
- package/dist/components/Sidebar/SidebarHeader.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarHeader.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarHeader.js +15 -0
- package/dist/components/Sidebar/SidebarHeader.js.map +1 -0
- package/dist/components/Sidebar/SidebarInset.cjs +2 -0
- package/dist/components/Sidebar/SidebarInset.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarInset.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarInset.js +19 -0
- package/dist/components/Sidebar/SidebarInset.js.map +1 -0
- package/dist/components/Sidebar/SidebarMenu.cjs +2 -0
- package/dist/components/Sidebar/SidebarMenu.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarMenu.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarMenu.js +15 -0
- package/dist/components/Sidebar/SidebarMenu.js.map +1 -0
- package/dist/components/Sidebar/SidebarMenuButton.cjs +2 -0
- package/dist/components/Sidebar/SidebarMenuButton.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarMenuButton.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarMenuButton.js +31 -0
- package/dist/components/Sidebar/SidebarMenuButton.js.map +1 -0
- package/dist/components/Sidebar/SidebarMenuItem.cjs +2 -0
- package/dist/components/Sidebar/SidebarMenuItem.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarMenuItem.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarMenuItem.js +15 -0
- package/dist/components/Sidebar/SidebarMenuItem.js.map +1 -0
- package/dist/components/Sidebar/SidebarProvider.cjs +2 -0
- package/dist/components/Sidebar/SidebarProvider.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarProvider.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarProvider.js +36 -0
- package/dist/components/Sidebar/SidebarProvider.js.map +1 -0
- package/dist/components/Sidebar/SidebarTrigger.cjs +2 -0
- package/dist/components/Sidebar/SidebarTrigger.cjs.map +1 -0
- package/dist/components/Sidebar/SidebarTrigger.d.ts.map +1 -1
- package/dist/components/Sidebar/SidebarTrigger.js +79 -0
- package/dist/components/Sidebar/SidebarTrigger.js.map +1 -0
- package/dist/components/Skeleton/Skeleton.cjs +2 -0
- package/dist/components/Skeleton/Skeleton.cjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.js +16 -0
- package/dist/components/Skeleton/Skeleton.js.map +1 -0
- package/dist/components/Skeleton/Skeleton.variants.cjs +2 -0
- package/dist/components/Skeleton/Skeleton.variants.cjs.map +1 -0
- package/dist/components/Skeleton/Skeleton.variants.js +14 -0
- package/dist/components/Skeleton/Skeleton.variants.js.map +1 -0
- package/dist/components/SkipLink/SkipLink.cjs +2 -0
- package/dist/components/SkipLink/SkipLink.cjs.map +1 -0
- package/dist/components/SkipLink/SkipLink.d.ts +8 -0
- package/dist/components/SkipLink/SkipLink.d.ts.map +1 -0
- package/dist/components/SkipLink/SkipLink.js +16 -0
- package/dist/components/SkipLink/SkipLink.js.map +1 -0
- package/dist/components/SkipLink/index.d.ts +3 -0
- package/dist/components/SkipLink/index.d.ts.map +1 -0
- package/dist/components/Slider/Slider.cjs +2 -0
- package/dist/components/Slider/Slider.cjs.map +1 -0
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/Slider.js +75 -0
- package/dist/components/Slider/Slider.js.map +1 -0
- package/dist/components/Slider/Slider.variants.cjs +2 -0
- package/dist/components/Slider/Slider.variants.cjs.map +1 -0
- package/dist/components/Slider/Slider.variants.js +65 -0
- package/dist/components/Slider/Slider.variants.js.map +1 -0
- package/dist/components/Spinner/Spinner.cjs +2 -0
- package/dist/components/Spinner/Spinner.cjs.map +1 -0
- package/dist/components/Spinner/Spinner.js +52 -0
- package/dist/components/Spinner/Spinner.js.map +1 -0
- package/dist/components/Spinner/Spinner.variants.cjs +2 -0
- package/dist/components/Spinner/Spinner.variants.cjs.map +1 -0
- package/dist/components/Spinner/Spinner.variants.js +21 -0
- package/dist/components/Spinner/Spinner.variants.js.map +1 -0
- package/dist/components/SplitLayout/SplitLayout.cjs +2 -0
- package/dist/components/SplitLayout/SplitLayout.cjs.map +1 -0
- package/dist/components/SplitLayout/SplitLayout.d.ts +15 -0
- package/dist/components/SplitLayout/SplitLayout.d.ts.map +1 -0
- package/dist/components/SplitLayout/SplitLayout.js +56 -0
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -0
- package/dist/components/SplitLayout/index.d.ts +3 -0
- package/dist/components/SplitLayout/index.d.ts.map +1 -0
- package/dist/components/Stack/Stack.cjs +2 -0
- package/dist/components/Stack/Stack.cjs.map +1 -0
- package/dist/components/Stack/Stack.js +16 -0
- package/dist/components/Stack/Stack.js.map +1 -0
- package/dist/components/Stepper/Stepper.cjs +2 -0
- package/dist/components/Stepper/Stepper.cjs.map +1 -0
- package/dist/components/Stepper/Stepper.context.cjs +2 -0
- package/dist/components/Stepper/Stepper.context.cjs.map +1 -0
- package/dist/components/Stepper/Stepper.context.d.ts.map +1 -1
- package/dist/components/Stepper/Stepper.context.js +19 -0
- package/dist/components/Stepper/Stepper.context.js.map +1 -0
- package/dist/components/Stepper/Stepper.d.ts.map +1 -1
- package/dist/components/Stepper/Stepper.js +55 -0
- package/dist/components/Stepper/Stepper.js.map +1 -0
- package/dist/components/Stepper/StepperContent.cjs +2 -0
- package/dist/components/Stepper/StepperContent.cjs.map +1 -0
- package/dist/components/Stepper/StepperContent.d.ts.map +1 -1
- package/dist/components/Stepper/StepperContent.js +19 -0
- package/dist/components/Stepper/StepperContent.js.map +1 -0
- package/dist/components/Stepper/StepperDescription.cjs +2 -0
- package/dist/components/Stepper/StepperDescription.cjs.map +1 -0
- package/dist/components/Stepper/StepperDescription.d.ts.map +1 -1
- package/dist/components/Stepper/StepperDescription.js +23 -0
- package/dist/components/Stepper/StepperDescription.js.map +1 -0
- package/dist/components/Stepper/StepperIndicator.cjs +2 -0
- package/dist/components/Stepper/StepperIndicator.cjs.map +1 -0
- package/dist/components/Stepper/StepperIndicator.d.ts.map +1 -1
- package/dist/components/Stepper/StepperIndicator.js +63 -0
- package/dist/components/Stepper/StepperIndicator.js.map +1 -0
- package/dist/components/Stepper/StepperItem.cjs +2 -0
- package/dist/components/Stepper/StepperItem.cjs.map +1 -0
- package/dist/components/Stepper/StepperItem.d.ts.map +1 -1
- package/dist/components/Stepper/StepperItem.js +38 -0
- package/dist/components/Stepper/StepperItem.js.map +1 -0
- package/dist/components/Stepper/StepperTitle.cjs +2 -0
- package/dist/components/Stepper/StepperTitle.cjs.map +1 -0
- package/dist/components/Stepper/StepperTitle.d.ts.map +1 -1
- package/dist/components/Stepper/StepperTitle.js +23 -0
- package/dist/components/Stepper/StepperTitle.js.map +1 -0
- package/dist/components/Switch/Switch.cjs +2 -0
- package/dist/components/Switch/Switch.cjs.map +1 -0
- package/dist/components/Switch/Switch.d.ts.map +1 -1
- package/dist/components/Switch/Switch.js +50 -0
- package/dist/components/Switch/Switch.js.map +1 -0
- package/dist/components/Switch/Switch.variants.cjs +2 -0
- package/dist/components/Switch/Switch.variants.cjs.map +1 -0
- package/dist/components/Switch/Switch.variants.js +35 -0
- package/dist/components/Switch/Switch.variants.js.map +1 -0
- package/dist/components/Table/Table.cjs +2 -0
- package/dist/components/Table/Table.cjs.map +1 -0
- package/dist/components/Table/Table.context.cjs +2 -0
- package/dist/components/Table/Table.context.cjs.map +1 -0
- package/dist/components/Table/Table.context.d.ts.map +1 -1
- package/dist/components/Table/Table.context.js +11 -0
- package/dist/components/Table/Table.context.js.map +1 -0
- package/dist/components/Table/Table.d.ts.map +1 -1
- package/dist/components/Table/Table.js +28 -0
- package/dist/components/Table/Table.js.map +1 -0
- package/dist/components/Table/Table.variants.cjs +2 -0
- package/dist/components/Table/Table.variants.cjs.map +1 -0
- package/dist/components/Table/Table.variants.js +13 -0
- package/dist/components/Table/Table.variants.js.map +1 -0
- package/dist/components/Table/TableBody.cjs +2 -0
- package/dist/components/Table/TableBody.cjs.map +1 -0
- package/dist/components/Table/TableBody.js +14 -0
- package/dist/components/Table/TableBody.js.map +1 -0
- package/dist/components/Table/TableCell.cjs +2 -0
- package/dist/components/Table/TableCell.cjs.map +1 -0
- package/dist/components/Table/TableCell.d.ts.map +1 -1
- package/dist/components/Table/TableCell.js +19 -0
- package/dist/components/Table/TableCell.js.map +1 -0
- package/dist/components/Table/TableFooter.cjs +2 -0
- package/dist/components/Table/TableFooter.cjs.map +1 -0
- package/dist/components/Table/TableFooter.js +14 -0
- package/dist/components/Table/TableFooter.js.map +1 -0
- package/dist/components/Table/TableHead.cjs +2 -0
- package/dist/components/Table/TableHead.cjs.map +1 -0
- package/dist/components/Table/TableHead.d.ts.map +1 -1
- package/dist/components/Table/TableHead.js +54 -0
- package/dist/components/Table/TableHead.js.map +1 -0
- package/dist/components/Table/TableHeader.cjs +2 -0
- package/dist/components/Table/TableHeader.cjs.map +1 -0
- package/dist/components/Table/TableHeader.js +14 -0
- package/dist/components/Table/TableHeader.js.map +1 -0
- package/dist/components/Table/TableRow.cjs +2 -0
- package/dist/components/Table/TableRow.cjs.map +1 -0
- package/dist/components/Table/TableRow.js +20 -0
- package/dist/components/Table/TableRow.js.map +1 -0
- package/dist/components/Tabs/Tabs.cjs +2 -0
- package/dist/components/Tabs/Tabs.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.context.cjs +2 -0
- package/dist/components/Tabs/Tabs.context.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.context.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.context.js +13 -0
- package/dist/components/Tabs/Tabs.context.js.map +1 -0
- package/dist/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.js +39 -0
- package/dist/components/Tabs/Tabs.js.map +1 -0
- package/dist/components/Tabs/Tabs.variants.cjs +2 -0
- package/dist/components/Tabs/Tabs.variants.cjs.map +1 -0
- package/dist/components/Tabs/Tabs.variants.js +24 -0
- package/dist/components/Tabs/Tabs.variants.js.map +1 -0
- package/dist/components/Tabs/TabsContent.cjs +2 -0
- package/dist/components/Tabs/TabsContent.cjs.map +1 -0
- package/dist/components/Tabs/TabsContent.d.ts.map +1 -1
- package/dist/components/Tabs/TabsContent.js +25 -0
- package/dist/components/Tabs/TabsContent.js.map +1 -0
- package/dist/components/Tabs/TabsList.cjs +2 -0
- package/dist/components/Tabs/TabsList.cjs.map +1 -0
- package/dist/components/Tabs/TabsList.d.ts.map +1 -1
- package/dist/components/Tabs/TabsList.js +52 -0
- package/dist/components/Tabs/TabsList.js.map +1 -0
- package/dist/components/Tabs/TabsTrigger.cjs +2 -0
- package/dist/components/Tabs/TabsTrigger.cjs.map +1 -0
- package/dist/components/Tabs/TabsTrigger.d.ts.map +1 -1
- package/dist/components/Tabs/TabsTrigger.js +34 -0
- package/dist/components/Tabs/TabsTrigger.js.map +1 -0
- package/dist/components/Tag/Tag.cjs +2 -0
- package/dist/components/Tag/Tag.cjs.map +1 -0
- package/dist/components/Tag/Tag.js +24 -0
- package/dist/components/Tag/Tag.js.map +1 -0
- package/dist/components/Tag/Tag.variants.cjs +2 -0
- package/dist/components/Tag/Tag.variants.cjs.map +1 -0
- package/dist/components/Tag/Tag.variants.js +39 -0
- package/dist/components/Tag/Tag.variants.js.map +1 -0
- package/dist/components/Text/Text.cjs +2 -0
- package/dist/components/Text/Text.cjs.map +1 -0
- package/dist/components/Text/Text.d.ts +3 -0
- package/dist/components/Text/Text.d.ts.map +1 -1
- package/dist/components/Text/Text.js +21 -0
- package/dist/components/Text/Text.js.map +1 -0
- package/dist/components/Text/Text.variants.cjs +2 -0
- package/dist/components/Text/Text.variants.cjs.map +1 -0
- package/dist/components/Text/Text.variants.d.ts +1 -2
- package/dist/components/Text/Text.variants.d.ts.map +1 -1
- package/dist/components/Text/Text.variants.js +43 -0
- package/dist/components/Text/Text.variants.js.map +1 -0
- package/dist/components/Textarea/Textarea.cjs +2 -0
- package/dist/components/Textarea/Textarea.cjs.map +1 -0
- package/dist/components/Textarea/Textarea.js +31 -0
- package/dist/components/Textarea/Textarea.js.map +1 -0
- package/dist/components/Textarea/Textarea.variants.cjs +2 -0
- package/dist/components/Textarea/Textarea.variants.cjs.map +1 -0
- package/dist/components/Textarea/Textarea.variants.js +26 -0
- package/dist/components/Textarea/Textarea.variants.js.map +1 -0
- package/dist/components/Timeline/Timeline.cjs +2 -0
- package/dist/components/Timeline/Timeline.cjs.map +1 -0
- package/dist/components/Timeline/Timeline.js +14 -0
- package/dist/components/Timeline/Timeline.js.map +1 -0
- package/dist/components/Timeline/Timeline.variants.cjs +2 -0
- package/dist/components/Timeline/Timeline.variants.cjs.map +1 -0
- package/dist/components/Timeline/Timeline.variants.js +21 -0
- package/dist/components/Timeline/Timeline.variants.js.map +1 -0
- package/dist/components/Timeline/TimelineItem.cjs +2 -0
- package/dist/components/Timeline/TimelineItem.cjs.map +1 -0
- package/dist/components/Timeline/TimelineItem.js +55 -0
- package/dist/components/Timeline/TimelineItem.js.map +1 -0
- package/dist/components/Toast/Toast.cjs +2 -0
- package/dist/components/Toast/Toast.cjs.map +1 -0
- package/dist/components/Toast/Toast.d.ts.map +1 -1
- package/dist/components/Toast/Toast.js +45 -0
- package/dist/components/Toast/Toast.js.map +1 -0
- package/dist/components/Toast/Toast.variants.cjs +2 -0
- package/dist/components/Toast/Toast.variants.cjs.map +1 -0
- package/dist/components/Toast/Toast.variants.js +38 -0
- package/dist/components/Toast/Toast.variants.js.map +1 -0
- package/dist/components/Toast/Toaster.cjs +2 -0
- package/dist/components/Toast/Toaster.cjs.map +1 -0
- package/dist/components/Toast/Toaster.d.ts.map +1 -1
- package/dist/components/Toast/Toaster.js +33 -0
- package/dist/components/Toast/Toaster.js.map +1 -0
- package/dist/components/Toast/toastStore.cjs +2 -0
- package/dist/components/Toast/toastStore.cjs.map +1 -0
- package/dist/components/Toast/toastStore.js +89 -0
- package/dist/components/Toast/toastStore.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.cjs +2 -0
- package/dist/components/Tooltip/Tooltip.cjs.map +1 -0
- package/dist/components/Tooltip/Tooltip.context.cjs +2 -0
- package/dist/components/Tooltip/Tooltip.context.cjs.map +1 -0
- package/dist/components/Tooltip/Tooltip.context.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.context.js +13 -0
- package/dist/components/Tooltip/Tooltip.context.js.map +1 -0
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +51 -0
- package/dist/components/Tooltip/Tooltip.js.map +1 -0
- package/dist/components/Tooltip/TooltipContent.cjs +2 -0
- package/dist/components/Tooltip/TooltipContent.cjs.map +1 -0
- package/dist/components/Tooltip/TooltipContent.d.ts.map +1 -1
- package/dist/components/Tooltip/TooltipContent.js +25 -0
- package/dist/components/Tooltip/TooltipContent.js.map +1 -0
- package/dist/components/Tooltip/TooltipTrigger.cjs +2 -0
- package/dist/components/Tooltip/TooltipTrigger.cjs.map +1 -0
- package/dist/components/Tooltip/TooltipTrigger.d.ts.map +1 -1
- package/dist/components/Tooltip/TooltipTrigger.js +20 -0
- package/dist/components/Tooltip/TooltipTrigger.js.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.cjs +2 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.cjs.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +8 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js +14 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -0
- package/dist/components/VisuallyHidden/index.d.ts +3 -0
- package/dist/components/VisuallyHidden/index.d.ts.map +1 -0
- package/dist/hooks/use-controllable-state.cjs +2 -0
- package/dist/hooks/use-controllable-state.cjs.map +1 -0
- package/dist/hooks/use-controllable-state.d.ts.map +1 -1
- package/dist/hooks/use-controllable-state.js +13 -0
- package/dist/hooks/use-controllable-state.js.map +1 -0
- package/dist/hooks/use-escape-key.cjs +2 -0
- package/dist/hooks/use-escape-key.cjs.map +1 -0
- package/dist/hooks/use-escape-key.d.ts.map +1 -1
- package/dist/hooks/use-escape-key.js +16 -0
- package/dist/hooks/use-escape-key.js.map +1 -0
- package/dist/hooks/use-focus-first-interactive.cjs +2 -0
- package/dist/hooks/use-focus-first-interactive.cjs.map +1 -0
- package/dist/hooks/use-focus-first-interactive.d.ts.map +1 -1
- package/dist/hooks/use-focus-first-interactive.js +19 -0
- package/dist/hooks/use-focus-first-interactive.js.map +1 -0
- package/dist/hooks/use-focus-trap.cjs +2 -0
- package/dist/hooks/use-focus-trap.cjs.map +1 -0
- package/dist/hooks/use-focus-trap.d.ts.map +1 -1
- package/dist/hooks/use-focus-trap.js +41 -0
- package/dist/hooks/use-focus-trap.js.map +1 -0
- package/dist/hooks/use-form-field-props.cjs +2 -0
- package/dist/hooks/use-form-field-props.cjs.map +1 -0
- package/dist/hooks/use-form-field-props.d.ts.map +1 -1
- package/dist/hooks/use-form-field-props.js +17 -0
- package/dist/hooks/use-form-field-props.js.map +1 -0
- package/dist/hooks/use-media-query.cjs +2 -0
- package/dist/hooks/use-media-query.cjs.map +1 -0
- package/dist/hooks/use-media-query.d.ts.map +1 -1
- package/dist/hooks/use-media-query.js +18 -0
- package/dist/hooks/use-media-query.js.map +1 -0
- package/dist/hooks/use-menu-navigation.cjs +2 -0
- package/dist/hooks/use-menu-navigation.cjs.map +1 -0
- package/dist/hooks/use-menu-navigation.d.ts +1 -0
- package/dist/hooks/use-menu-navigation.d.ts.map +1 -1
- package/dist/hooks/use-menu-navigation.js +99 -0
- package/dist/hooks/use-menu-navigation.js.map +1 -0
- package/dist/hooks/use-scroll-lock.cjs +2 -0
- package/dist/hooks/use-scroll-lock.cjs.map +1 -0
- package/dist/hooks/use-scroll-lock.d.ts.map +1 -1
- package/dist/hooks/use-scroll-lock.js +22 -0
- package/dist/hooks/use-scroll-lock.js.map +1 -0
- package/dist/index.cjs +1 -2
- package/dist/index.d.ts +22 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +211 -10328
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.cjs +2 -0
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +267 -0
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -0
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs +2 -0
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +330 -0
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.cjs +2 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js +738 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js.map +1 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.cjs +2 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +108 -0
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js.map +1 -0
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs +2 -0
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +179 -0
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.cjs +2 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.cjs +2 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.cjs.map +1 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +99 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +103 -0
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -0
- package/dist/node_modules/class-variance-authority/dist/index.cjs +2 -0
- package/dist/node_modules/class-variance-authority/dist/index.cjs.map +1 -0
- package/dist/node_modules/class-variance-authority/dist/index.js +35 -0
- package/dist/node_modules/class-variance-authority/dist/index.js.map +1 -0
- package/dist/node_modules/clsx/dist/clsx.cjs +2 -0
- package/dist/node_modules/clsx/dist/clsx.cjs.map +1 -0
- package/dist/node_modules/clsx/dist/clsx.js +18 -0
- package/dist/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/node_modules/tabbable/dist/index.esm.cjs +2 -0
- package/dist/node_modules/tabbable/dist/index.esm.cjs.map +1 -0
- package/dist/node_modules/tabbable/dist/index.esm.js +169 -0
- package/dist/node_modules/tabbable/dist/index.esm.js.map +1 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs +2 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs.map +1 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +1674 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
- package/dist/styles-root.css +31 -1
- package/dist/styles.css +39 -1
- package/dist/utils/cn.cjs +2 -0
- package/dist/utils/cn.cjs.map +1 -0
- package/dist/utils/cn.js +10 -0
- package/dist/utils/cn.js.map +1 -0
- package/dist/utils/dismiss-button.cjs +2 -0
- package/dist/utils/dismiss-button.cjs.map +1 -0
- package/dist/utils/dismiss-button.js +41 -0
- package/dist/utils/dismiss-button.js.map +1 -0
- package/dist/utils/field-base.cjs +2 -0
- package/dist/utils/field-base.cjs.map +1 -0
- package/dist/utils/field-base.js +16 -0
- package/dist/utils/field-base.js.map +1 -0
- package/dist/utils/modal-primitive.cjs +2 -0
- package/dist/utils/modal-primitive.cjs.map +1 -0
- package/dist/utils/modal-primitive.d.ts.map +1 -1
- package/dist/utils/modal-primitive.js +111 -0
- package/dist/utils/modal-primitive.js.map +1 -0
- package/dist/utils/portal.cjs +2 -0
- package/dist/utils/portal.cjs.map +1 -0
- package/dist/utils/portal.d.ts.map +1 -1
- package/dist/utils/portal.js +11 -0
- package/dist/utils/portal.js.map +1 -0
- package/dist/utils/responsive.cjs +2 -0
- package/dist/utils/responsive.cjs.map +1 -0
- package/dist/utils/responsive.d.ts +11 -0
- package/dist/utils/responsive.d.ts.map +1 -1
- package/dist/utils/responsive.js +128 -0
- package/dist/utils/responsive.js.map +1 -0
- package/dist/utils/slot.cjs +2 -0
- package/dist/utils/slot.cjs.map +1 -0
- package/dist/utils/slot.js +46 -0
- package/dist/utils/slot.js.map +1 -0
- package/dist/utils/variants.cjs +2 -0
- package/dist/utils/variants.cjs.map +1 -0
- package/dist/utils/variants.js +141 -0
- package/dist/utils/variants.js.map +1 -0
- package/package.json +1 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../utils/slot.cjs`),r=require(`../Icon/Icon.cjs`),i=require(`../../utils/portal.cjs`),a=require(`../../node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs`),o=require(`../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs`),s=require(`../../node_modules/@floating-ui/react/dist/floating-ui.react.cjs`),c=require(`../../hooks/use-focus-first-interactive.cjs`),l=require(`./NavigationMenu.context.cjs`);let u=require(`react`);u=e.__toESM(u,1);let d=require(`react/jsx-runtime`);var f=u.forwardRef(({className:e,children:n,"aria-label":r=`Main navigation`,...i},a)=>{let[o,s]=u.useState(null),c=u.useRef(new Map),f=u.useRef([]),p=u.useRef(new Map),[m,h]=u.useState(null),g=u.useCallback(e=>{s(e)},[]),_=u.useCallback(()=>{s(null)},[]),v=u.useCallback((e,t)=>{t?(c.current.set(e,t),f.current.includes(e)||(f.current.push(e),h(t=>t??e))):(c.current.delete(e),f.current=f.current.filter(t=>t!==e))},[]);return(0,d.jsx)(l.NavigationMenuContext,{value:u.useMemo(()=>({activeValue:o,openMenu:g,closeMenu:_,registerItem:v,itemValues:f,itemRefs:c,itemLabels:p,rovingValue:m,setRovingValue:h}),[o,g,_,v,m]),children:(0,d.jsx)(`nav`,{ref:a,"aria-label":r,className:t.cn(`relative`,e),...i,children:n})})});f.displayName=`NavigationMenu`;var p=u.forwardRef(({className:e,...n},r)=>(0,d.jsx)(`ul`,{ref:r,className:t.cn(`flex items-center gap-(--space-1)`,`list-none`,e),...n}));p.displayName=`NavigationMenuList`;var m=u.forwardRef(({value:e,placement:n=`bottom-start`,className:r,children:i,...c},f)=>{let p=l.useNavigationMenuContext(),m=p.activeValue===e,h=u.useId(),g=u.useCallback(t=>{if(t)p.openMenu(e);else{p.closeMenu();let t=p.itemRefs.current.get(e);t&&(t.tabIndex=0,p.setRovingValue(e),t.focus())}},[p,e]),{refs:_,floatingStyles:v,context:y}=s.useFloating({open:m,onOpenChange:g,placement:n,middleware:[o.offset(4),o.flip(),o.shift({padding:8})],whileElementsMounted:a.autoUpdate}),{getReferenceProps:b,getFloatingProps:x}=s.useInteractions([s.useClick(y),s.useDismiss(y),s.useRole(y,{role:`dialog`})]);return(0,d.jsx)(l.NavigationMenuItemContext,{value:u.useMemo(()=>({value:e,open:m,onOpenChange:g,contentId:h,refs:_,floatingStyles:v,getReferenceProps:b,getFloatingProps:x}),[e,m,g,h,_,v,b,x]),children:(0,d.jsx)(`li`,{ref:f,role:`none`,className:t.cn(`relative`,r),...c,children:i})})});m.displayName=`NavigationMenuItem`;function h(e,t,n){let r=e.itemValues.current,i=r.indexOf(t);if(i===-1)return;let a=r[(i+n+r.length)%r.length];if(a===void 0)return;let o=e.itemRefs.current.get(a);if(o){let n=e.itemRefs.current.get(t);n&&(n.tabIndex=-1),o.tabIndex=0,e.setRovingValue(a),o.focus()}return o}var g=u.forwardRef(({className:e,children:i,onClick:a,onKeyDown:o,...s},c)=>{let u=l.useNavigationMenuContext(),f=l.useNavigationMenuItemContext(),p=n.composeRefs(c,f.refs.setReference,e=>{u.registerItem(f.value,e),e?u.itemLabels.current.set(f.value,e.textContent.trim()||f.value):u.itemLabels.current.delete(f.value)}),m=e=>{f.onOpenChange(!f.open),a?.(e)},g=e=>{if(o?.(e),!e.defaultPrevented)switch(e.key){case`ArrowRight`:e.preventDefault(),f.open&&f.onOpenChange(!1),h(u,f.value,1);break;case`ArrowLeft`:e.preventDefault(),f.open&&f.onOpenChange(!1),h(u,f.value,-1);break;case`ArrowDown`:f.open||(e.preventDefault(),f.onOpenChange(!0));break}},_=f.getReferenceProps({...s,onClick:m,onKeyDown:g});return(0,d.jsxs)(`button`,{ref:p,type:`button`,"aria-haspopup":`dialog`,"aria-expanded":f.open,"aria-controls":f.contentId,className:t.cn(`inline-flex items-center gap-(--space-1)`,`rounded-(--radius-md) px-(--space-3) py-(--space-2)`,`text-sm font-medium`,`text-(--nuka-text-base)`,`select-none`,`hover:bg-(--nuka-bg-muted)`,`focus-visible:outline-2 focus-visible:outline-offset-2`,`focus-visible:outline-(--nuka-border-focus)`,`data-[state=open]:bg-(--nuka-bg-muted)`,e),"data-state":f.open?`open`:`closed`,..._,tabIndex:f.value===u.rovingValue?0:-1,children:[i,(0,d.jsx)(r.Icon,{size:`sm`,className:t.cn(`transition-transform duration-200`,f.open&&`rotate-180`),children:(0,d.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,d.jsx)(`path`,{d:`m6 9 6 6 6-6`})})})]})});g.displayName=`NavigationMenuTrigger`;var _=u.forwardRef(({portal:e=!1,className:r,children:a,...o},s)=>{let f=l.useNavigationMenuContext(),p=l.useNavigationMenuItemContext(),m=u.useRef(null),h=n.composeRefs(s,m,p.refs.setFloating);c.useFocusFirstInteractive(m,p.open);let g=p.getFloatingProps(o),_=(0,d.jsx)(l.NavigationMenuContentContext,{value:!0,children:(0,d.jsx)(`div`,{ref:h,id:p.contentId,role:`dialog`,"aria-label":f.itemLabels.current.get(p.value)??p.value,"aria-hidden":!p.open,tabIndex:-1,style:p.floatingStyles,...g,className:t.cn(`z-(--nuka-z-dropdown) min-w-48`,`rounded-(--radius-md) border border-(--nuka-border-base)`,`bg-(--nuka-bg-base) shadow-md`,`p-(--space-4)`,`focus-visible:outline-none`,p.open?`visible pointer-events-auto`:`invisible pointer-events-none`,r),children:a})});return e?(0,d.jsx)(i.Portal,{children:_}):_});_.displayName=`NavigationMenuContent`;var v=u.forwardRef(({asChild:e=!1,active:r=!1,className:i,onKeyDown:a,...o},s)=>{let c=l.useNavigationMenuContext(),u=l.useNavigationMenuItemContext(),f=l.useIsInsideContent(),p=e?n.Slot:`a`,m=n.composeRefs(s,f?void 0:e=>{c.registerItem(u.value,e)}),g=f?a:e=>{if(a?.(e),!e.defaultPrevented)switch(e.key){case`ArrowRight`:e.preventDefault(),h(c,u.value,1);break;case`ArrowLeft`:e.preventDefault(),h(c,u.value,-1);break;case`Escape`:e.preventDefault(),c.activeValue!==null&&c.closeMenu();break}},_=f?{}:{tabIndex:u.value===c.rovingValue?0:-1};return(0,d.jsx)(p,{ref:m,"aria-current":r?`page`:void 0,className:t.cn(`inline-flex items-center`,`rounded-(--radius-md) px-(--space-3) py-(--space-2)`,`text-sm font-medium`,`text-(--nuka-text-base)`,`select-none`,`hover:bg-(--nuka-bg-muted)`,`focus-visible:outline-2 focus-visible:outline-offset-2`,`focus-visible:outline-(--nuka-border-focus)`,r&&`text-(--nuka-accent-text)`,i),..._,onKeyDown:g,...o})});v.displayName=`NavigationMenuLink`,exports.NavigationMenu=f,exports.NavigationMenuContent=_,exports.NavigationMenuItem=m,exports.NavigationMenuLink=v,exports.NavigationMenuList=p,exports.NavigationMenuTrigger=g;
|
|
2
|
+
//# sourceMappingURL=NavigationMenu.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationMenu.cjs","names":[],"sources":["../../../src/components/NavigationMenu/NavigationMenu.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport {\n useFloating,\n useClick,\n useDismiss,\n useRole,\n useInteractions,\n offset,\n flip,\n shift,\n autoUpdate,\n} from \"@floating-ui/react\";\nimport type { Placement } from \"@floating-ui/react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Slot, composeRefs } from \"@nuka/utils/slot\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { useFocusFirstInteractive } from \"@nuka/hooks/use-focus-first-interactive\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport {\n NavigationMenuContext,\n NavigationMenuItemContext,\n NavigationMenuContentContext,\n useNavigationMenuContext,\n useNavigationMenuItemContext,\n useIsInsideContent,\n} from \"@nuka/components/NavigationMenu/NavigationMenu.context\";\n\nexport interface NavigationMenuProps extends React.HTMLAttributes<HTMLElement> {\n \"aria-label\"?: string;\n}\n\nconst NavigationMenu = React.forwardRef<HTMLElement, NavigationMenuProps>(\n (\n {\n className,\n children,\n \"aria-label\": ariaLabel = \"Main navigation\",\n ...props\n },\n ref,\n ) => {\n const [activeValue, setActiveValue] = React.useState<string | null>(null);\n const itemRefs = React.useRef(new Map<string, HTMLElement>());\n const itemValues = React.useRef<string[]>([]);\n const itemLabels = React.useRef(new Map<string, string>());\n const [rovingValue, setRovingValue] = React.useState<string | null>(null);\n\n const openMenu = React.useCallback((value: string) => {\n setActiveValue(value);\n }, []);\n\n const closeMenu = React.useCallback(() => {\n setActiveValue(null);\n }, []);\n\n const registerItem = React.useCallback(\n (value: string, el: HTMLElement | null) => {\n if (el) {\n itemRefs.current.set(value, el);\n if (!itemValues.current.includes(value)) {\n itemValues.current.push(value);\n setRovingValue((prev) => prev ?? value);\n }\n } else {\n itemRefs.current.delete(value);\n itemValues.current = itemValues.current.filter((v) => v !== value);\n }\n },\n [],\n );\n\n const contextValue = React.useMemo(\n () => ({\n activeValue,\n openMenu,\n closeMenu,\n registerItem,\n itemValues,\n itemRefs,\n itemLabels,\n rovingValue,\n setRovingValue,\n }),\n [activeValue, openMenu, closeMenu, registerItem, rovingValue],\n );\n\n return (\n <NavigationMenuContext value={contextValue}>\n <nav\n ref={ref}\n aria-label={ariaLabel}\n className={cn(\"relative\", className)}\n {...props}\n >\n {children}\n </nav>\n </NavigationMenuContext>\n );\n },\n);\n\nNavigationMenu.displayName = \"NavigationMenu\";\n\nexport interface NavigationMenuListProps extends React.HTMLAttributes<HTMLUListElement> {}\n\nconst NavigationMenuList = React.forwardRef<\n HTMLUListElement,\n NavigationMenuListProps\n>(({ className, ...props }, ref) => (\n <ul\n ref={ref}\n className={cn(\"flex items-center gap-(--space-1)\", \"list-none\", className)}\n {...props}\n />\n));\n\nNavigationMenuList.displayName = \"NavigationMenuList\";\n\nexport interface NavigationMenuItemProps extends React.LiHTMLAttributes<HTMLLIElement> {\n value: string;\n placement?: Placement;\n}\n\nconst NavigationMenuItem = React.forwardRef<\n HTMLLIElement,\n NavigationMenuItemProps\n>(\n (\n { value, placement = \"bottom-start\", className, children, ...props },\n ref,\n ) => {\n const rootCtx = useNavigationMenuContext();\n const open = rootCtx.activeValue === value;\n const contentId = React.useId();\n\n const handleOpenChange = React.useCallback(\n (next: boolean) => {\n if (next) {\n rootCtx.openMenu(value);\n } else {\n rootCtx.closeMenu();\n const itemEl = rootCtx.itemRefs.current.get(value);\n if (itemEl) {\n itemEl.tabIndex = 0;\n rootCtx.setRovingValue(value);\n itemEl.focus();\n }\n }\n },\n [rootCtx, value],\n );\n\n const { refs, floatingStyles, context } = useFloating({\n open,\n onOpenChange: handleOpenChange,\n placement,\n middleware: [offset(4), flip(), shift({ padding: 8 })],\n whileElementsMounted: autoUpdate,\n });\n\n const click = useClick(context);\n const dismiss = useDismiss(context);\n const role = useRole(context, { role: \"dialog\" });\n\n const { getReferenceProps, getFloatingProps } = useInteractions([\n click,\n dismiss,\n role,\n ]);\n\n const itemContextValue = React.useMemo(\n () => ({\n value,\n open,\n onOpenChange: handleOpenChange,\n contentId,\n refs,\n floatingStyles,\n getReferenceProps,\n getFloatingProps,\n }),\n [\n value,\n open,\n handleOpenChange,\n contentId,\n refs,\n floatingStyles,\n getReferenceProps,\n getFloatingProps,\n ],\n );\n\n return (\n <NavigationMenuItemContext value={itemContextValue}>\n <li\n ref={ref}\n role=\"none\"\n className={cn(\"relative\", className)}\n {...props}\n >\n {children}\n </li>\n </NavigationMenuItemContext>\n );\n },\n);\n\nNavigationMenuItem.displayName = \"NavigationMenuItem\";\n\nexport interface NavigationMenuTriggerProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {}\n\nfunction navigateToAdjacentItem(\n rootCtx: ReturnType<typeof useNavigationMenuContext>,\n currentValue: string,\n direction: -1 | 1,\n): HTMLElement | undefined {\n const values = rootCtx.itemValues.current;\n const currentIndex = values.indexOf(currentValue);\n if (currentIndex === -1) return undefined;\n const nextIndex = (currentIndex + direction + values.length) % values.length;\n const nextValue = values[nextIndex];\n if (nextValue === undefined) return undefined;\n const nextEl = rootCtx.itemRefs.current.get(nextValue);\n if (nextEl) {\n const currentEl = rootCtx.itemRefs.current.get(currentValue);\n if (currentEl) currentEl.tabIndex = -1;\n nextEl.tabIndex = 0;\n rootCtx.setRovingValue(nextValue);\n nextEl.focus();\n }\n return nextEl;\n}\n\nconst NavigationMenuTrigger = React.forwardRef<\n HTMLButtonElement,\n NavigationMenuTriggerProps\n>(({ className, children, onClick, onKeyDown, ...props }, ref) => {\n const rootCtx = useNavigationMenuContext();\n const itemCtx = useNavigationMenuItemContext();\n const composedRef = composeRefs(\n ref,\n itemCtx.refs.setReference,\n (el: HTMLButtonElement | null) => {\n rootCtx.registerItem(itemCtx.value, el);\n if (el) {\n rootCtx.itemLabels.current.set(\n itemCtx.value,\n el.textContent.trim() || itemCtx.value,\n );\n } else {\n rootCtx.itemLabels.current.delete(itemCtx.value);\n }\n },\n );\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n itemCtx.onOpenChange(!itemCtx.open);\n onClick?.(e);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowRight\": {\n e.preventDefault();\n if (itemCtx.open) {\n itemCtx.onOpenChange(false);\n }\n navigateToAdjacentItem(rootCtx, itemCtx.value, 1);\n break;\n }\n case \"ArrowLeft\": {\n e.preventDefault();\n if (itemCtx.open) {\n itemCtx.onOpenChange(false);\n }\n navigateToAdjacentItem(rootCtx, itemCtx.value, -1);\n break;\n }\n case \"ArrowDown\": {\n if (!itemCtx.open) {\n e.preventDefault();\n itemCtx.onOpenChange(true);\n }\n break;\n }\n }\n };\n\n const triggerProps = itemCtx.getReferenceProps({\n ...props,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n });\n\n return (\n <button\n ref={composedRef}\n type=\"button\"\n aria-haspopup=\"dialog\"\n aria-expanded={itemCtx.open}\n aria-controls={itemCtx.contentId}\n className={cn(\n \"inline-flex items-center gap-(--space-1)\",\n \"rounded-(--radius-md) px-(--space-3) py-(--space-2)\",\n \"text-sm font-medium\",\n \"text-(--nuka-text-base)\",\n \"select-none\",\n \"hover:bg-(--nuka-bg-muted)\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2\",\n \"focus-visible:outline-(--nuka-border-focus)\",\n \"data-[state=open]:bg-(--nuka-bg-muted)\",\n className,\n )}\n data-state={itemCtx.open ? \"open\" : \"closed\"}\n // Safe: Floating UI getReferenceProps() returns Record<string, unknown>;\n // values are standard DOM event handlers.\n {...(triggerProps as React.ButtonHTMLAttributes<HTMLButtonElement>)}\n tabIndex={itemCtx.value === rootCtx.rovingValue ? 0 : -1}\n >\n {children}\n <Icon\n size=\"sm\"\n className={cn(\n \"transition-transform duration-200\",\n itemCtx.open && \"rotate-180\",\n )}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </Icon>\n </button>\n );\n});\n\nNavigationMenuTrigger.displayName = \"NavigationMenuTrigger\";\n\nexport interface NavigationMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {\n portal?: boolean;\n}\n\nconst NavigationMenuContent = React.forwardRef<\n HTMLDivElement,\n NavigationMenuContentProps\n>(({ portal = false, className, children, ...props }, ref) => {\n const rootCtx = useNavigationMenuContext();\n const itemCtx = useNavigationMenuItemContext();\n const contentRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, contentRef, itemCtx.refs.setFloating);\n\n useFocusFirstInteractive(contentRef, itemCtx.open);\n\n const floatingProps = itemCtx.getFloatingProps(props);\n\n const content = (\n <NavigationMenuContentContext value={true}>\n <div\n ref={composedRef}\n id={itemCtx.contentId}\n role=\"dialog\"\n aria-label={\n rootCtx.itemLabels.current.get(itemCtx.value) ?? itemCtx.value\n }\n aria-hidden={!itemCtx.open}\n tabIndex={-1}\n style={itemCtx.floatingStyles}\n // Safe: Floating UI getFloatingProps() returns Record<string, unknown>;\n // values are standard DOM attributes and event handlers.\n {...(floatingProps as React.HTMLAttributes<HTMLDivElement>)}\n className={cn(\n \"z-(--nuka-z-dropdown) min-w-48\",\n \"rounded-(--radius-md) border border-(--nuka-border-base)\",\n \"bg-(--nuka-bg-base) shadow-md\",\n \"p-(--space-4)\",\n \"focus-visible:outline-none\",\n itemCtx.open\n ? \"visible pointer-events-auto\"\n : \"invisible pointer-events-none\",\n className,\n )}\n >\n {children}\n </div>\n </NavigationMenuContentContext>\n );\n\n return portal ? <Portal>{content}</Portal> : content;\n});\n\nNavigationMenuContent.displayName = \"NavigationMenuContent\";\n\nexport interface NavigationMenuLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n asChild?: boolean;\n active?: boolean;\n}\n\nconst NavigationMenuLink = React.forwardRef<\n HTMLAnchorElement,\n NavigationMenuLinkProps\n>(\n (\n { asChild = false, active = false, className, onKeyDown, ...props },\n ref,\n ) => {\n const rootCtx = useNavigationMenuContext();\n const itemCtx = useNavigationMenuItemContext();\n const insideContent = useIsInsideContent();\n const Comp = asChild ? Slot : \"a\";\n\n const composedRef = composeRefs(\n ref,\n insideContent\n ? undefined\n : (el: HTMLAnchorElement | null) => {\n rootCtx.registerItem(itemCtx.value, el);\n },\n );\n\n const handleKeyDown = insideContent\n ? onKeyDown\n : (e: React.KeyboardEvent<HTMLAnchorElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowRight\": {\n e.preventDefault();\n navigateToAdjacentItem(rootCtx, itemCtx.value, 1);\n break;\n }\n case \"ArrowLeft\": {\n e.preventDefault();\n navigateToAdjacentItem(rootCtx, itemCtx.value, -1);\n break;\n }\n case \"Escape\": {\n e.preventDefault();\n if (rootCtx.activeValue !== null) {\n rootCtx.closeMenu();\n }\n break;\n }\n }\n };\n\n const menubarProps = insideContent\n ? {}\n : {\n tabIndex: itemCtx.value === rootCtx.rovingValue ? 0 : -1,\n };\n\n return (\n <Comp\n ref={composedRef}\n aria-current={active ? \"page\" : undefined}\n className={cn(\n \"inline-flex items-center\",\n \"rounded-(--radius-md) px-(--space-3) py-(--space-2)\",\n \"text-sm font-medium\",\n \"text-(--nuka-text-base)\",\n \"select-none\",\n \"hover:bg-(--nuka-bg-muted)\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2\",\n \"focus-visible:outline-(--nuka-border-focus)\",\n active && \"text-(--nuka-accent-text)\",\n className,\n )}\n {...menubarProps}\n onKeyDown={handleKeyDown}\n {...props}\n />\n );\n },\n);\n\nNavigationMenuLink.displayName = \"NavigationMenuLink\";\n\nexport {\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuTrigger,\n NavigationMenuContent,\n NavigationMenuLink,\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`);let t=require(`react`);t=e.__toESM(t,1);var n=t.createContext(null);function r(){let e=t.useContext(n);if(e===null)throw Error(`NavigationMenu compound components must be used within <NavigationMenu>`);return e}var i=t.createContext(null);function a(){let e=t.useContext(i);if(e===null)throw Error(`NavigationMenuItem compound components must be used within <NavigationMenuItem>`);return e}var o=t.createContext(!1);function s(){return t.useContext(o)}exports.NavigationMenuContentContext=o,exports.NavigationMenuContext=n,exports.NavigationMenuItemContext=i,exports.useIsInsideContent=s,exports.useNavigationMenuContext=r,exports.useNavigationMenuItemContext=a;
|
|
2
|
+
//# sourceMappingURL=NavigationMenu.context.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationMenu.context.cjs","names":[],"sources":["../../../src/components/NavigationMenu/NavigationMenu.context.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport type { useFloating, useInteractions } from \"@floating-ui/react\";\n\nexport interface NavigationMenuContextValue {\n activeValue: string | null;\n openMenu: (value: string) => void;\n closeMenu: () => void;\n registerItem: (value: string, el: HTMLElement | null) => void;\n itemValues: React.RefObject<string[]>;\n itemRefs: React.RefObject<Map<string, HTMLElement>>;\n itemLabels: React.RefObject<Map<string, string>>;\n rovingValue: string | null;\n setRovingValue: (value: string | null) => void;\n}\n\nconst NavigationMenuContext =\n React.createContext<NavigationMenuContextValue | null>(null);\n\nexport function useNavigationMenuContext(): NavigationMenuContextValue {\n const context = React.useContext(NavigationMenuContext);\n if (context === null) {\n throw new Error(\n \"NavigationMenu compound components must be used within <NavigationMenu>\",\n );\n }\n return context;\n}\n\nexport interface NavigationMenuItemContextValue {\n value: string;\n open: boolean;\n onOpenChange: (open: boolean) => void;\n contentId: string;\n refs: ReturnType<typeof useFloating>[\"refs\"];\n floatingStyles: React.CSSProperties;\n getReferenceProps: ReturnType<typeof useInteractions>[\"getReferenceProps\"];\n getFloatingProps: ReturnType<typeof useInteractions>[\"getFloatingProps\"];\n}\n\nconst NavigationMenuItemContext =\n React.createContext<NavigationMenuItemContextValue | null>(null);\n\nexport function useNavigationMenuItemContext(): NavigationMenuItemContextValue {\n const context = React.useContext(NavigationMenuItemContext);\n if (context === null) {\n throw new Error(\n \"NavigationMenuItem compound components must be used within <NavigationMenuItem>\",\n );\n }\n return context;\n}\n\nconst NavigationMenuContentContext = React.createContext(false);\n\nexport function useIsInsideContent(): boolean {\n return React.useContext(NavigationMenuContentContext);\n}\n\nexport {\n NavigationMenuContext,\n NavigationMenuItemContext,\n NavigationMenuContentContext,\n};\n"],"mappings":"6GAgBA,IAAM,EACJ,EAAM,cAAiD,KAAK,CAE9D,SAAgB,GAAuD,CACrE,IAAM,EAAU,EAAM,WAAW,EAAsB,CACvD,GAAI,IAAY,KACd,MAAU,MACR,0EACD,CAEH,OAAO,EAcT,IAAM,EACJ,EAAM,cAAqD,KAAK,CAElE,SAAgB,GAA+D,CAC7E,IAAM,EAAU,EAAM,WAAW,EAA0B,CAC3D,GAAI,IAAY,KACd,MAAU,MACR,kFACD,CAEH,OAAO,EAGT,IAAM,EAA+B,EAAM,cAAc,GAAM,CAE/D,SAAgB,GAA8B,CAC5C,OAAO,EAAM,WAAW,EAA6B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationMenu.context.d.ts","sourceRoot":"","sources":["../../../src/components/NavigationMenu/NavigationMenu.context.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NavigationMenu.context.d.ts","sourceRoot":"","sources":["../../../src/components/NavigationMenu/NavigationMenu.context.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAEvE,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;IAC9D,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IACpD,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACjD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAChD;AAED,QAAA,MAAM,qBAAqB,kDACmC,CAAC;AAE/D,wBAAgB,wBAAwB,IAAI,0BAA0B,CAQrE;AAED,MAAM,WAAW,8BAA8B;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;IAC7C,cAAc,EAAE,KAAK,CAAC,aAAa,CAAC;IACpC,iBAAiB,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAC3E,gBAAgB,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,kBAAkB,CAAC,CAAC;CAC1E;AAED,QAAA,MAAM,yBAAyB,sDACmC,CAAC;AAEnE,wBAAgB,4BAA4B,IAAI,8BAA8B,CAQ7E;AAED,QAAA,MAAM,4BAA4B,wBAA6B,CAAC;AAEhE,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAED,OAAO,EACL,qBAAqB,EACrB,yBAAyB,EACzB,4BAA4B,GAC7B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import * as e from "react";
|
|
3
|
+
//#region src/components/NavigationMenu/NavigationMenu.context.tsx
|
|
4
|
+
var t = e.createContext(null);
|
|
5
|
+
function n() {
|
|
6
|
+
let n = e.useContext(t);
|
|
7
|
+
if (n === null) throw Error("NavigationMenu compound components must be used within <NavigationMenu>");
|
|
8
|
+
return n;
|
|
9
|
+
}
|
|
10
|
+
var r = e.createContext(null);
|
|
11
|
+
function i() {
|
|
12
|
+
let t = e.useContext(r);
|
|
13
|
+
if (t === null) throw Error("NavigationMenuItem compound components must be used within <NavigationMenuItem>");
|
|
14
|
+
return t;
|
|
15
|
+
}
|
|
16
|
+
var a = e.createContext(!1);
|
|
17
|
+
function o() {
|
|
18
|
+
return e.useContext(a);
|
|
19
|
+
}
|
|
20
|
+
//#endregion
|
|
21
|
+
export { a as NavigationMenuContentContext, t as NavigationMenuContext, r as NavigationMenuItemContext, o as useIsInsideContent, n as useNavigationMenuContext, i as useNavigationMenuItemContext };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=NavigationMenu.context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationMenu.context.js","names":[],"sources":["../../../src/components/NavigationMenu/NavigationMenu.context.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport type { useFloating, useInteractions } from \"@floating-ui/react\";\n\nexport interface NavigationMenuContextValue {\n activeValue: string | null;\n openMenu: (value: string) => void;\n closeMenu: () => void;\n registerItem: (value: string, el: HTMLElement | null) => void;\n itemValues: React.RefObject<string[]>;\n itemRefs: React.RefObject<Map<string, HTMLElement>>;\n itemLabels: React.RefObject<Map<string, string>>;\n rovingValue: string | null;\n setRovingValue: (value: string | null) => void;\n}\n\nconst NavigationMenuContext =\n React.createContext<NavigationMenuContextValue | null>(null);\n\nexport function useNavigationMenuContext(): NavigationMenuContextValue {\n const context = React.useContext(NavigationMenuContext);\n if (context === null) {\n throw new Error(\n \"NavigationMenu compound components must be used within <NavigationMenu>\",\n );\n }\n return context;\n}\n\nexport interface NavigationMenuItemContextValue {\n value: string;\n open: boolean;\n onOpenChange: (open: boolean) => void;\n contentId: string;\n refs: ReturnType<typeof useFloating>[\"refs\"];\n floatingStyles: React.CSSProperties;\n getReferenceProps: ReturnType<typeof useInteractions>[\"getReferenceProps\"];\n getFloatingProps: ReturnType<typeof useInteractions>[\"getFloatingProps\"];\n}\n\nconst NavigationMenuItemContext =\n React.createContext<NavigationMenuItemContextValue | null>(null);\n\nexport function useNavigationMenuItemContext(): NavigationMenuItemContextValue {\n const context = React.useContext(NavigationMenuItemContext);\n if (context === null) {\n throw new Error(\n \"NavigationMenuItem compound components must be used within <NavigationMenuItem>\",\n );\n }\n return context;\n}\n\nconst NavigationMenuContentContext = React.createContext(false);\n\nexport function useIsInsideContent(): boolean {\n return React.useContext(NavigationMenuContentContext);\n}\n\nexport {\n NavigationMenuContext,\n NavigationMenuItemContext,\n NavigationMenuContentContext,\n};\n"],"mappings":";;;AAgBA,IAAM,IACJ,EAAM,cAAiD,KAAK;AAE9D,SAAgB,IAAuD;CACrE,IAAM,IAAU,EAAM,WAAW,EAAsB;AACvD,KAAI,MAAY,KACd,OAAU,MACR,0EACD;AAEH,QAAO;;AAcT,IAAM,IACJ,EAAM,cAAqD,KAAK;AAElE,SAAgB,IAA+D;CAC7E,IAAM,IAAU,EAAM,WAAW,EAA0B;AAC3D,KAAI,MAAY,KACd,OAAU,MACR,kFACD;AAEH,QAAO;;AAGT,IAAM,IAA+B,EAAM,cAAc,GAAM;AAE/D,SAAgB,IAA8B;AAC5C,QAAO,EAAM,WAAW,EAA6B"}
|
|
@@ -16,6 +16,7 @@ export interface NavigationMenuTriggerProps extends React.ButtonHTMLAttributes<H
|
|
|
16
16
|
}
|
|
17
17
|
declare const NavigationMenuTrigger: React.ForwardRefExoticComponent<NavigationMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
18
18
|
export interface NavigationMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
19
|
+
portal?: boolean;
|
|
19
20
|
}
|
|
20
21
|
declare const NavigationMenuContent: React.ForwardRefExoticComponent<NavigationMenuContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
21
22
|
export interface NavigationMenuLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationMenu.d.ts","sourceRoot":"","sources":["../../../src/components/NavigationMenu/NavigationMenu.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NavigationMenu.d.ts","sourceRoot":"","sources":["../../../src/components/NavigationMenu/NavigationMenu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAY/B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAepD,MAAM,WAAW,mBAAoB,SAAQ,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC;IAC5E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,QAAA,MAAM,cAAc,yFAoEnB,CAAC;AAIF,MAAM,WAAW,uBAAwB,SAAQ,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC;CAAG;AAE1F,QAAA,MAAM,kBAAkB,kGAStB,CAAC;AAIH,MAAM,WAAW,uBAAwB,SAAQ,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,QAAA,MAAM,kBAAkB,+FAmFvB,CAAC;AAIF,MAAM,WAAW,0BAA2B,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;CAAG;AAwBpG,QAAA,MAAM,qBAAqB,sGA+GzB,CAAC;AAIH,MAAM,WAAW,0BAA2B,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACtF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,QAAA,MAAM,qBAAqB,mGA8CzB,CAAC;AAIH,MAAM,WAAW,uBAAwB,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IAC5F,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,QAAA,MAAM,kBAAkB,mGA6EvB,CAAC;AAIF,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,GACnB,CAAC"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn as e } from "../../utils/cn.js";
|
|
3
|
+
import { Slot as t, composeRefs as n } from "../../utils/slot.js";
|
|
4
|
+
import { Icon as r } from "../Icon/Icon.js";
|
|
5
|
+
import { Portal as i } from "../../utils/portal.js";
|
|
6
|
+
import { autoUpdate as a } from "../../node_modules/@floating-ui/dom/dist/floating-ui.dom.js";
|
|
7
|
+
import { flip as o, offset as s, shift as c } from "../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js";
|
|
8
|
+
import { useClick as l, useDismiss as u, useFloating as d, useInteractions as f, useRole as p } from "../../node_modules/@floating-ui/react/dist/floating-ui.react.js";
|
|
9
|
+
import { useFocusFirstInteractive as m } from "../../hooks/use-focus-first-interactive.js";
|
|
10
|
+
import { NavigationMenuContentContext as h, NavigationMenuContext as g, NavigationMenuItemContext as _, useIsInsideContent as v, useNavigationMenuContext as y, useNavigationMenuItemContext as b } from "./NavigationMenu.context.js";
|
|
11
|
+
import * as x from "react";
|
|
12
|
+
import { jsx as S, jsxs as C } from "react/jsx-runtime";
|
|
13
|
+
//#region src/components/NavigationMenu/NavigationMenu.tsx
|
|
14
|
+
var w = x.forwardRef(({ className: t, children: n, "aria-label": r = "Main navigation", ...i }, a) => {
|
|
15
|
+
let [o, s] = x.useState(null), c = x.useRef(/* @__PURE__ */ new Map()), l = x.useRef([]), u = x.useRef(/* @__PURE__ */ new Map()), [d, f] = x.useState(null), p = x.useCallback((e) => {
|
|
16
|
+
s(e);
|
|
17
|
+
}, []), m = x.useCallback(() => {
|
|
18
|
+
s(null);
|
|
19
|
+
}, []), h = x.useCallback((e, t) => {
|
|
20
|
+
t ? (c.current.set(e, t), l.current.includes(e) || (l.current.push(e), f((t) => t ?? e))) : (c.current.delete(e), l.current = l.current.filter((t) => t !== e));
|
|
21
|
+
}, []);
|
|
22
|
+
return /* @__PURE__ */ S(g, {
|
|
23
|
+
value: x.useMemo(() => ({
|
|
24
|
+
activeValue: o,
|
|
25
|
+
openMenu: p,
|
|
26
|
+
closeMenu: m,
|
|
27
|
+
registerItem: h,
|
|
28
|
+
itemValues: l,
|
|
29
|
+
itemRefs: c,
|
|
30
|
+
itemLabels: u,
|
|
31
|
+
rovingValue: d,
|
|
32
|
+
setRovingValue: f
|
|
33
|
+
}), [
|
|
34
|
+
o,
|
|
35
|
+
p,
|
|
36
|
+
m,
|
|
37
|
+
h,
|
|
38
|
+
d
|
|
39
|
+
]),
|
|
40
|
+
children: /* @__PURE__ */ S("nav", {
|
|
41
|
+
ref: a,
|
|
42
|
+
"aria-label": r,
|
|
43
|
+
className: e("relative", t),
|
|
44
|
+
...i,
|
|
45
|
+
children: n
|
|
46
|
+
})
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
w.displayName = "NavigationMenu";
|
|
50
|
+
var T = x.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ S("ul", {
|
|
51
|
+
ref: r,
|
|
52
|
+
className: e("flex items-center gap-(--space-1)", "list-none", t),
|
|
53
|
+
...n
|
|
54
|
+
}));
|
|
55
|
+
T.displayName = "NavigationMenuList";
|
|
56
|
+
var E = x.forwardRef(({ value: t, placement: n = "bottom-start", className: r, children: i, ...m }, h) => {
|
|
57
|
+
let g = y(), v = g.activeValue === t, b = x.useId(), C = x.useCallback((e) => {
|
|
58
|
+
if (e) g.openMenu(t);
|
|
59
|
+
else {
|
|
60
|
+
g.closeMenu();
|
|
61
|
+
let e = g.itemRefs.current.get(t);
|
|
62
|
+
e && (e.tabIndex = 0, g.setRovingValue(t), e.focus());
|
|
63
|
+
}
|
|
64
|
+
}, [g, t]), { refs: w, floatingStyles: T, context: E } = d({
|
|
65
|
+
open: v,
|
|
66
|
+
onOpenChange: C,
|
|
67
|
+
placement: n,
|
|
68
|
+
middleware: [
|
|
69
|
+
s(4),
|
|
70
|
+
o(),
|
|
71
|
+
c({ padding: 8 })
|
|
72
|
+
],
|
|
73
|
+
whileElementsMounted: a
|
|
74
|
+
}), { getReferenceProps: D, getFloatingProps: O } = f([
|
|
75
|
+
l(E),
|
|
76
|
+
u(E),
|
|
77
|
+
p(E, { role: "dialog" })
|
|
78
|
+
]);
|
|
79
|
+
return /* @__PURE__ */ S(_, {
|
|
80
|
+
value: x.useMemo(() => ({
|
|
81
|
+
value: t,
|
|
82
|
+
open: v,
|
|
83
|
+
onOpenChange: C,
|
|
84
|
+
contentId: b,
|
|
85
|
+
refs: w,
|
|
86
|
+
floatingStyles: T,
|
|
87
|
+
getReferenceProps: D,
|
|
88
|
+
getFloatingProps: O
|
|
89
|
+
}), [
|
|
90
|
+
t,
|
|
91
|
+
v,
|
|
92
|
+
C,
|
|
93
|
+
b,
|
|
94
|
+
w,
|
|
95
|
+
T,
|
|
96
|
+
D,
|
|
97
|
+
O
|
|
98
|
+
]),
|
|
99
|
+
children: /* @__PURE__ */ S("li", {
|
|
100
|
+
ref: h,
|
|
101
|
+
role: "none",
|
|
102
|
+
className: e("relative", r),
|
|
103
|
+
...m,
|
|
104
|
+
children: i
|
|
105
|
+
})
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
E.displayName = "NavigationMenuItem";
|
|
109
|
+
function D(e, t, n) {
|
|
110
|
+
let r = e.itemValues.current, i = r.indexOf(t);
|
|
111
|
+
if (i === -1) return;
|
|
112
|
+
let a = r[(i + n + r.length) % r.length];
|
|
113
|
+
if (a === void 0) return;
|
|
114
|
+
let o = e.itemRefs.current.get(a);
|
|
115
|
+
if (o) {
|
|
116
|
+
let n = e.itemRefs.current.get(t);
|
|
117
|
+
n && (n.tabIndex = -1), o.tabIndex = 0, e.setRovingValue(a), o.focus();
|
|
118
|
+
}
|
|
119
|
+
return o;
|
|
120
|
+
}
|
|
121
|
+
var O = x.forwardRef(({ className: t, children: i, onClick: a, onKeyDown: o, ...s }, c) => {
|
|
122
|
+
let l = y(), u = b(), d = n(c, u.refs.setReference, (e) => {
|
|
123
|
+
l.registerItem(u.value, e), e ? l.itemLabels.current.set(u.value, e.textContent.trim() || u.value) : l.itemLabels.current.delete(u.value);
|
|
124
|
+
}), f = (e) => {
|
|
125
|
+
u.onOpenChange(!u.open), a?.(e);
|
|
126
|
+
}, p = (e) => {
|
|
127
|
+
if (o?.(e), !e.defaultPrevented) switch (e.key) {
|
|
128
|
+
case "ArrowRight":
|
|
129
|
+
e.preventDefault(), u.open && u.onOpenChange(!1), D(l, u.value, 1);
|
|
130
|
+
break;
|
|
131
|
+
case "ArrowLeft":
|
|
132
|
+
e.preventDefault(), u.open && u.onOpenChange(!1), D(l, u.value, -1);
|
|
133
|
+
break;
|
|
134
|
+
case "ArrowDown":
|
|
135
|
+
u.open || (e.preventDefault(), u.onOpenChange(!0));
|
|
136
|
+
break;
|
|
137
|
+
}
|
|
138
|
+
}, m = u.getReferenceProps({
|
|
139
|
+
...s,
|
|
140
|
+
onClick: f,
|
|
141
|
+
onKeyDown: p
|
|
142
|
+
});
|
|
143
|
+
return /* @__PURE__ */ C("button", {
|
|
144
|
+
ref: d,
|
|
145
|
+
type: "button",
|
|
146
|
+
"aria-haspopup": "dialog",
|
|
147
|
+
"aria-expanded": u.open,
|
|
148
|
+
"aria-controls": u.contentId,
|
|
149
|
+
className: e("inline-flex items-center gap-(--space-1)", "rounded-(--radius-md) px-(--space-3) py-(--space-2)", "text-sm font-medium", "text-(--nuka-text-base)", "select-none", "hover:bg-(--nuka-bg-muted)", "focus-visible:outline-2 focus-visible:outline-offset-2", "focus-visible:outline-(--nuka-border-focus)", "data-[state=open]:bg-(--nuka-bg-muted)", t),
|
|
150
|
+
"data-state": u.open ? "open" : "closed",
|
|
151
|
+
...m,
|
|
152
|
+
tabIndex: u.value === l.rovingValue ? 0 : -1,
|
|
153
|
+
children: [i, /* @__PURE__ */ S(r, {
|
|
154
|
+
size: "sm",
|
|
155
|
+
className: e("transition-transform duration-200", u.open && "rotate-180"),
|
|
156
|
+
children: /* @__PURE__ */ S("svg", {
|
|
157
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
158
|
+
viewBox: "0 0 24 24",
|
|
159
|
+
fill: "none",
|
|
160
|
+
stroke: "currentColor",
|
|
161
|
+
strokeWidth: "2",
|
|
162
|
+
strokeLinecap: "round",
|
|
163
|
+
strokeLinejoin: "round",
|
|
164
|
+
children: /* @__PURE__ */ S("path", { d: "m6 9 6 6 6-6" })
|
|
165
|
+
})
|
|
166
|
+
})]
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
O.displayName = "NavigationMenuTrigger";
|
|
170
|
+
var k = x.forwardRef(({ portal: t = !1, className: r, children: a, ...o }, s) => {
|
|
171
|
+
let c = y(), l = b(), u = x.useRef(null), d = n(s, u, l.refs.setFloating);
|
|
172
|
+
m(u, l.open);
|
|
173
|
+
let f = l.getFloatingProps(o), p = /* @__PURE__ */ S(h, {
|
|
174
|
+
value: !0,
|
|
175
|
+
children: /* @__PURE__ */ S("div", {
|
|
176
|
+
ref: d,
|
|
177
|
+
id: l.contentId,
|
|
178
|
+
role: "dialog",
|
|
179
|
+
"aria-label": c.itemLabels.current.get(l.value) ?? l.value,
|
|
180
|
+
"aria-hidden": !l.open,
|
|
181
|
+
tabIndex: -1,
|
|
182
|
+
style: l.floatingStyles,
|
|
183
|
+
...f,
|
|
184
|
+
className: e("z-(--nuka-z-dropdown) min-w-48", "rounded-(--radius-md) border border-(--nuka-border-base)", "bg-(--nuka-bg-base) shadow-md", "p-(--space-4)", "focus-visible:outline-none", l.open ? "visible pointer-events-auto" : "invisible pointer-events-none", r),
|
|
185
|
+
children: a
|
|
186
|
+
})
|
|
187
|
+
});
|
|
188
|
+
return t ? /* @__PURE__ */ S(i, { children: p }) : p;
|
|
189
|
+
});
|
|
190
|
+
k.displayName = "NavigationMenuContent";
|
|
191
|
+
var A = x.forwardRef(({ asChild: r = !1, active: i = !1, className: a, onKeyDown: o, ...s }, c) => {
|
|
192
|
+
let l = y(), u = b(), d = v(), f = r ? t : "a", p = n(c, d ? void 0 : (e) => {
|
|
193
|
+
l.registerItem(u.value, e);
|
|
194
|
+
}), m = d ? o : (e) => {
|
|
195
|
+
if (o?.(e), !e.defaultPrevented) switch (e.key) {
|
|
196
|
+
case "ArrowRight":
|
|
197
|
+
e.preventDefault(), D(l, u.value, 1);
|
|
198
|
+
break;
|
|
199
|
+
case "ArrowLeft":
|
|
200
|
+
e.preventDefault(), D(l, u.value, -1);
|
|
201
|
+
break;
|
|
202
|
+
case "Escape":
|
|
203
|
+
e.preventDefault(), l.activeValue !== null && l.closeMenu();
|
|
204
|
+
break;
|
|
205
|
+
}
|
|
206
|
+
}, h = d ? {} : { tabIndex: u.value === l.rovingValue ? 0 : -1 };
|
|
207
|
+
return /* @__PURE__ */ S(f, {
|
|
208
|
+
ref: p,
|
|
209
|
+
"aria-current": i ? "page" : void 0,
|
|
210
|
+
className: e("inline-flex items-center", "rounded-(--radius-md) px-(--space-3) py-(--space-2)", "text-sm font-medium", "text-(--nuka-text-base)", "select-none", "hover:bg-(--nuka-bg-muted)", "focus-visible:outline-2 focus-visible:outline-offset-2", "focus-visible:outline-(--nuka-border-focus)", i && "text-(--nuka-accent-text)", a),
|
|
211
|
+
...h,
|
|
212
|
+
onKeyDown: m,
|
|
213
|
+
...s
|
|
214
|
+
});
|
|
215
|
+
});
|
|
216
|
+
A.displayName = "NavigationMenuLink";
|
|
217
|
+
//#endregion
|
|
218
|
+
export { w as NavigationMenu, k as NavigationMenuContent, E as NavigationMenuItem, A as NavigationMenuLink, T as NavigationMenuList, O as NavigationMenuTrigger };
|
|
219
|
+
|
|
220
|
+
//# sourceMappingURL=NavigationMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NavigationMenu.js","names":[],"sources":["../../../src/components/NavigationMenu/NavigationMenu.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport {\n useFloating,\n useClick,\n useDismiss,\n useRole,\n useInteractions,\n offset,\n flip,\n shift,\n autoUpdate,\n} from \"@floating-ui/react\";\nimport type { Placement } from \"@floating-ui/react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Slot, composeRefs } from \"@nuka/utils/slot\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { useFocusFirstInteractive } from \"@nuka/hooks/use-focus-first-interactive\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport {\n NavigationMenuContext,\n NavigationMenuItemContext,\n NavigationMenuContentContext,\n useNavigationMenuContext,\n useNavigationMenuItemContext,\n useIsInsideContent,\n} from \"@nuka/components/NavigationMenu/NavigationMenu.context\";\n\nexport interface NavigationMenuProps extends React.HTMLAttributes<HTMLElement> {\n \"aria-label\"?: string;\n}\n\nconst NavigationMenu = React.forwardRef<HTMLElement, NavigationMenuProps>(\n (\n {\n className,\n children,\n \"aria-label\": ariaLabel = \"Main navigation\",\n ...props\n },\n ref,\n ) => {\n const [activeValue, setActiveValue] = React.useState<string | null>(null);\n const itemRefs = React.useRef(new Map<string, HTMLElement>());\n const itemValues = React.useRef<string[]>([]);\n const itemLabels = React.useRef(new Map<string, string>());\n const [rovingValue, setRovingValue] = React.useState<string | null>(null);\n\n const openMenu = React.useCallback((value: string) => {\n setActiveValue(value);\n }, []);\n\n const closeMenu = React.useCallback(() => {\n setActiveValue(null);\n }, []);\n\n const registerItem = React.useCallback(\n (value: string, el: HTMLElement | null) => {\n if (el) {\n itemRefs.current.set(value, el);\n if (!itemValues.current.includes(value)) {\n itemValues.current.push(value);\n setRovingValue((prev) => prev ?? value);\n }\n } else {\n itemRefs.current.delete(value);\n itemValues.current = itemValues.current.filter((v) => v !== value);\n }\n },\n [],\n );\n\n const contextValue = React.useMemo(\n () => ({\n activeValue,\n openMenu,\n closeMenu,\n registerItem,\n itemValues,\n itemRefs,\n itemLabels,\n rovingValue,\n setRovingValue,\n }),\n [activeValue, openMenu, closeMenu, registerItem, rovingValue],\n );\n\n return (\n <NavigationMenuContext value={contextValue}>\n <nav\n ref={ref}\n aria-label={ariaLabel}\n className={cn(\"relative\", className)}\n {...props}\n >\n {children}\n </nav>\n </NavigationMenuContext>\n );\n },\n);\n\nNavigationMenu.displayName = \"NavigationMenu\";\n\nexport interface NavigationMenuListProps extends React.HTMLAttributes<HTMLUListElement> {}\n\nconst NavigationMenuList = React.forwardRef<\n HTMLUListElement,\n NavigationMenuListProps\n>(({ className, ...props }, ref) => (\n <ul\n ref={ref}\n className={cn(\"flex items-center gap-(--space-1)\", \"list-none\", className)}\n {...props}\n />\n));\n\nNavigationMenuList.displayName = \"NavigationMenuList\";\n\nexport interface NavigationMenuItemProps extends React.LiHTMLAttributes<HTMLLIElement> {\n value: string;\n placement?: Placement;\n}\n\nconst NavigationMenuItem = React.forwardRef<\n HTMLLIElement,\n NavigationMenuItemProps\n>(\n (\n { value, placement = \"bottom-start\", className, children, ...props },\n ref,\n ) => {\n const rootCtx = useNavigationMenuContext();\n const open = rootCtx.activeValue === value;\n const contentId = React.useId();\n\n const handleOpenChange = React.useCallback(\n (next: boolean) => {\n if (next) {\n rootCtx.openMenu(value);\n } else {\n rootCtx.closeMenu();\n const itemEl = rootCtx.itemRefs.current.get(value);\n if (itemEl) {\n itemEl.tabIndex = 0;\n rootCtx.setRovingValue(value);\n itemEl.focus();\n }\n }\n },\n [rootCtx, value],\n );\n\n const { refs, floatingStyles, context } = useFloating({\n open,\n onOpenChange: handleOpenChange,\n placement,\n middleware: [offset(4), flip(), shift({ padding: 8 })],\n whileElementsMounted: autoUpdate,\n });\n\n const click = useClick(context);\n const dismiss = useDismiss(context);\n const role = useRole(context, { role: \"dialog\" });\n\n const { getReferenceProps, getFloatingProps } = useInteractions([\n click,\n dismiss,\n role,\n ]);\n\n const itemContextValue = React.useMemo(\n () => ({\n value,\n open,\n onOpenChange: handleOpenChange,\n contentId,\n refs,\n floatingStyles,\n getReferenceProps,\n getFloatingProps,\n }),\n [\n value,\n open,\n handleOpenChange,\n contentId,\n refs,\n floatingStyles,\n getReferenceProps,\n getFloatingProps,\n ],\n );\n\n return (\n <NavigationMenuItemContext value={itemContextValue}>\n <li\n ref={ref}\n role=\"none\"\n className={cn(\"relative\", className)}\n {...props}\n >\n {children}\n </li>\n </NavigationMenuItemContext>\n );\n },\n);\n\nNavigationMenuItem.displayName = \"NavigationMenuItem\";\n\nexport interface NavigationMenuTriggerProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {}\n\nfunction navigateToAdjacentItem(\n rootCtx: ReturnType<typeof useNavigationMenuContext>,\n currentValue: string,\n direction: -1 | 1,\n): HTMLElement | undefined {\n const values = rootCtx.itemValues.current;\n const currentIndex = values.indexOf(currentValue);\n if (currentIndex === -1) return undefined;\n const nextIndex = (currentIndex + direction + values.length) % values.length;\n const nextValue = values[nextIndex];\n if (nextValue === undefined) return undefined;\n const nextEl = rootCtx.itemRefs.current.get(nextValue);\n if (nextEl) {\n const currentEl = rootCtx.itemRefs.current.get(currentValue);\n if (currentEl) currentEl.tabIndex = -1;\n nextEl.tabIndex = 0;\n rootCtx.setRovingValue(nextValue);\n nextEl.focus();\n }\n return nextEl;\n}\n\nconst NavigationMenuTrigger = React.forwardRef<\n HTMLButtonElement,\n NavigationMenuTriggerProps\n>(({ className, children, onClick, onKeyDown, ...props }, ref) => {\n const rootCtx = useNavigationMenuContext();\n const itemCtx = useNavigationMenuItemContext();\n const composedRef = composeRefs(\n ref,\n itemCtx.refs.setReference,\n (el: HTMLButtonElement | null) => {\n rootCtx.registerItem(itemCtx.value, el);\n if (el) {\n rootCtx.itemLabels.current.set(\n itemCtx.value,\n el.textContent.trim() || itemCtx.value,\n );\n } else {\n rootCtx.itemLabels.current.delete(itemCtx.value);\n }\n },\n );\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n itemCtx.onOpenChange(!itemCtx.open);\n onClick?.(e);\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowRight\": {\n e.preventDefault();\n if (itemCtx.open) {\n itemCtx.onOpenChange(false);\n }\n navigateToAdjacentItem(rootCtx, itemCtx.value, 1);\n break;\n }\n case \"ArrowLeft\": {\n e.preventDefault();\n if (itemCtx.open) {\n itemCtx.onOpenChange(false);\n }\n navigateToAdjacentItem(rootCtx, itemCtx.value, -1);\n break;\n }\n case \"ArrowDown\": {\n if (!itemCtx.open) {\n e.preventDefault();\n itemCtx.onOpenChange(true);\n }\n break;\n }\n }\n };\n\n const triggerProps = itemCtx.getReferenceProps({\n ...props,\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n });\n\n return (\n <button\n ref={composedRef}\n type=\"button\"\n aria-haspopup=\"dialog\"\n aria-expanded={itemCtx.open}\n aria-controls={itemCtx.contentId}\n className={cn(\n \"inline-flex items-center gap-(--space-1)\",\n \"rounded-(--radius-md) px-(--space-3) py-(--space-2)\",\n \"text-sm font-medium\",\n \"text-(--nuka-text-base)\",\n \"select-none\",\n \"hover:bg-(--nuka-bg-muted)\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2\",\n \"focus-visible:outline-(--nuka-border-focus)\",\n \"data-[state=open]:bg-(--nuka-bg-muted)\",\n className,\n )}\n data-state={itemCtx.open ? \"open\" : \"closed\"}\n // Safe: Floating UI getReferenceProps() returns Record<string, unknown>;\n // values are standard DOM event handlers.\n {...(triggerProps as React.ButtonHTMLAttributes<HTMLButtonElement>)}\n tabIndex={itemCtx.value === rootCtx.rovingValue ? 0 : -1}\n >\n {children}\n <Icon\n size=\"sm\"\n className={cn(\n \"transition-transform duration-200\",\n itemCtx.open && \"rotate-180\",\n )}\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"m6 9 6 6 6-6\" />\n </svg>\n </Icon>\n </button>\n );\n});\n\nNavigationMenuTrigger.displayName = \"NavigationMenuTrigger\";\n\nexport interface NavigationMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {\n portal?: boolean;\n}\n\nconst NavigationMenuContent = React.forwardRef<\n HTMLDivElement,\n NavigationMenuContentProps\n>(({ portal = false, className, children, ...props }, ref) => {\n const rootCtx = useNavigationMenuContext();\n const itemCtx = useNavigationMenuItemContext();\n const contentRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, contentRef, itemCtx.refs.setFloating);\n\n useFocusFirstInteractive(contentRef, itemCtx.open);\n\n const floatingProps = itemCtx.getFloatingProps(props);\n\n const content = (\n <NavigationMenuContentContext value={true}>\n <div\n ref={composedRef}\n id={itemCtx.contentId}\n role=\"dialog\"\n aria-label={\n rootCtx.itemLabels.current.get(itemCtx.value) ?? itemCtx.value\n }\n aria-hidden={!itemCtx.open}\n tabIndex={-1}\n style={itemCtx.floatingStyles}\n // Safe: Floating UI getFloatingProps() returns Record<string, unknown>;\n // values are standard DOM attributes and event handlers.\n {...(floatingProps as React.HTMLAttributes<HTMLDivElement>)}\n className={cn(\n \"z-(--nuka-z-dropdown) min-w-48\",\n \"rounded-(--radius-md) border border-(--nuka-border-base)\",\n \"bg-(--nuka-bg-base) shadow-md\",\n \"p-(--space-4)\",\n \"focus-visible:outline-none\",\n itemCtx.open\n ? \"visible pointer-events-auto\"\n : \"invisible pointer-events-none\",\n className,\n )}\n >\n {children}\n </div>\n </NavigationMenuContentContext>\n );\n\n return portal ? <Portal>{content}</Portal> : content;\n});\n\nNavigationMenuContent.displayName = \"NavigationMenuContent\";\n\nexport interface NavigationMenuLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n asChild?: boolean;\n active?: boolean;\n}\n\nconst NavigationMenuLink = React.forwardRef<\n HTMLAnchorElement,\n NavigationMenuLinkProps\n>(\n (\n { asChild = false, active = false, className, onKeyDown, ...props },\n ref,\n ) => {\n const rootCtx = useNavigationMenuContext();\n const itemCtx = useNavigationMenuItemContext();\n const insideContent = useIsInsideContent();\n const Comp = asChild ? Slot : \"a\";\n\n const composedRef = composeRefs(\n ref,\n insideContent\n ? undefined\n : (el: HTMLAnchorElement | null) => {\n rootCtx.registerItem(itemCtx.value, el);\n },\n );\n\n const handleKeyDown = insideContent\n ? onKeyDown\n : (e: React.KeyboardEvent<HTMLAnchorElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowRight\": {\n e.preventDefault();\n navigateToAdjacentItem(rootCtx, itemCtx.value, 1);\n break;\n }\n case \"ArrowLeft\": {\n e.preventDefault();\n navigateToAdjacentItem(rootCtx, itemCtx.value, -1);\n break;\n }\n case \"Escape\": {\n e.preventDefault();\n if (rootCtx.activeValue !== null) {\n rootCtx.closeMenu();\n }\n break;\n }\n }\n };\n\n const menubarProps = insideContent\n ? {}\n : {\n tabIndex: itemCtx.value === rootCtx.rovingValue ? 0 : -1,\n };\n\n return (\n <Comp\n ref={composedRef}\n aria-current={active ? \"page\" : undefined}\n className={cn(\n \"inline-flex items-center\",\n \"rounded-(--radius-md) px-(--space-3) py-(--space-2)\",\n \"text-sm font-medium\",\n \"text-(--nuka-text-base)\",\n \"select-none\",\n \"hover:bg-(--nuka-bg-muted)\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2\",\n \"focus-visible:outline-(--nuka-border-focus)\",\n active && \"text-(--nuka-accent-text)\",\n className,\n )}\n {...menubarProps}\n onKeyDown={handleKeyDown}\n {...props}\n />\n );\n },\n);\n\nNavigationMenuLink.displayName = \"NavigationMenuLink\";\n\nexport {\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuTrigger,\n NavigationMenuContent,\n NavigationMenuLink,\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use client";const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`),n=require(`../../hooks/use-controllable-state.cjs`),r=require(`../Icon/Icon.cjs`),i=require(`../../hooks/use-form-field-props.cjs`),a=require(`../Input/Input.variants.cjs`);let o=require(`react`);o=e.__toESM(o,1);let s=require(`react/jsx-runtime`);function c(e,t,n){let r=e;return t!==void 0&&r<t&&(r=t),n!==void 0&&r>n&&(r=n),r}var l=o.forwardRef(({className:e,intent:l,size:u,value:d,defaultValue:f,min:p,max:m,step:h=1,onValueChange:g,showControls:_=!0,incrementLabel:v=`Increment`,decrementLabel:y=`Decrement`,id:b,disabled:x,"aria-label":S,"aria-labelledby":C,...w},T)=>{let E=i.useFormFieldProps({id:b,disabled:x,"aria-invalid":w[`aria-invalid`],"aria-describedby":w[`aria-describedby`],"aria-required":w[`aria-required`]}),[D,O]=n.useControllableState(d,f??c(0,p,m),g),[k,A]=o.useState(String(D));o.useEffect(()=>{A(String(D))},[D]),process.env.NODE_ENV!==`production`&&!S&&!C&&!E.resolvedId&&console.warn(`[nuka-ui] NumberInput: provide aria-label, aria-labelledby, or wrap in FormField for accessibility.`);let j=p!==void 0&&D<=p,M=m!==void 0&&D>=m,N=e=>{O(c(D+h*e,p,m))},P=e=>{let t=e.target.value;if(A(t),t===``||t===`-`)return;let n=Number(t);Number.isNaN(n)||O(c(n,p,m))},F=()=>{if(k===``||k===`-`){let e=c(D,p,m);O(e),A(String(e))}},I=(e,n,i)=>(0,s.jsx)(`button`,{type:`button`,"aria-label":e===`increment`?v:y,tabIndex:0,disabled:E.resolvedDisabled===!0||n,onClick:()=>N(e===`increment`?1:-1),className:t.cn(`inline-flex items-center justify-center`,`px-(--space-2) text-(--nuka-text-muted)`,`hover:text-(--nuka-text-base) hover:bg-(--nuka-bg-muted)`,`disabled:opacity-50 disabled:pointer-events-none`,`transition-colors cursor-pointer`,`focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)`,e===`decrement`&&`rounded-l-(--radius-md)`,e===`increment`&&`rounded-r-(--radius-md)`),children:(0,s.jsx)(r.Icon,{size:`sm`,children:i})}),L=(0,s.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,s.jsx)(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})}),R=(0,s.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,s.jsx)(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),(0,s.jsx)(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})]}),z=E.ariaInvalid??(l===`danger`?!0:void 0);return(0,s.jsxs)(`div`,{role:`group`,"aria-label":S,"aria-labelledby":C,className:t.cn(`inline-flex items-stretch`,e),children:[_&&I(`decrement`,j,L),(0,s.jsx)(`input`,{ref:T,type:`number`,id:E.resolvedId,value:k,onChange:P,onBlur:F,min:p,max:m,step:h,disabled:E.resolvedDisabled,className:t.cn(a.inputVariants({intent:l,size:u}),`text-center rounded-none`,`[appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none`,!_&&`rounded-(--radius-md)`),"aria-invalid":z,"aria-describedby":E.ariaDescribedBy,"aria-required":E.ariaRequired,...w}),_&&I(`increment`,M,R)]})});l.displayName=`NumberInput`,exports.NumberInput=l;
|
|
2
|
+
//# sourceMappingURL=NumberInput.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberInput.cjs","names":[],"sources":["../../../src/components/NumberInput/NumberInput.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport {\n inputVariants,\n type InputVariantProps,\n} from \"@nuka/components/Input/Input.variants\";\n\nexport interface NumberInputProps\n extends\n Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"size\" | \"type\" | \"onChange\"\n >,\n InputVariantProps {\n value?: number;\n defaultValue?: number;\n min?: number;\n max?: number;\n step?: number;\n onValueChange?: (value: number) => void;\n showControls?: boolean;\n incrementLabel?: string;\n decrementLabel?: string;\n}\n\nfunction clamp(value: number, min?: number, max?: number): number {\n let clamped = value;\n if (min !== undefined && clamped < min) clamped = min;\n if (max !== undefined && clamped > max) clamped = max;\n return clamped;\n}\n\nconst NumberInput = React.forwardRef<HTMLInputElement, NumberInputProps>(\n (\n {\n className,\n intent,\n size,\n value: controlledValue,\n defaultValue,\n min,\n max,\n step = 1,\n onValueChange,\n showControls = true,\n incrementLabel = \"Increment\",\n decrementLabel = \"Decrement\",\n id,\n disabled,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ...props\n },\n ref,\n ) => {\n const field = useFormFieldProps({\n id,\n disabled,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const [currentValue, setCurrentValue] = useControllableState(\n controlledValue,\n defaultValue ?? clamp(0, min, max),\n onValueChange,\n );\n\n const [displayValue, setDisplayValue] = React.useState(\n String(currentValue),\n );\n\n // Sync displayValue when the committed value changes externally\n React.useEffect(() => {\n setDisplayValue(String(currentValue));\n }, [currentValue]);\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!ariaLabel && !ariaLabelledBy && !field.resolvedId) {\n console.warn(\n \"[nuka-ui] NumberInput: provide aria-label, aria-labelledby, or wrap in FormField for accessibility.\",\n );\n }\n }\n\n const atMin = min !== undefined && currentValue <= min;\n const atMax = max !== undefined && currentValue >= max;\n\n const nudge = (direction: 1 | -1) => {\n setCurrentValue(clamp(currentValue + step * direction, min, max));\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const raw = e.target.value;\n setDisplayValue(raw);\n if (raw === \"\" || raw === \"-\") return;\n const parsed = Number(raw);\n if (!Number.isNaN(parsed)) {\n setCurrentValue(clamp(parsed, min, max));\n }\n };\n\n const handleBlur = () => {\n if (displayValue === \"\" || displayValue === \"-\") {\n const clamped = clamp(currentValue, min, max);\n setCurrentValue(clamped);\n setDisplayValue(String(clamped));\n }\n };\n\n const controlButton = (\n direction: \"increment\" | \"decrement\",\n isDisabled: boolean,\n icon: React.ReactNode,\n ) => (\n <button\n type=\"button\"\n aria-label={direction === \"increment\" ? incrementLabel : decrementLabel}\n tabIndex={0}\n disabled={field.resolvedDisabled === true || isDisabled}\n onClick={() => nudge(direction === \"increment\" ? 1 : -1)}\n className={cn(\n \"inline-flex items-center justify-center\",\n \"px-(--space-2) text-(--nuka-text-muted)\",\n \"hover:text-(--nuka-text-base) hover:bg-(--nuka-bg-muted)\",\n \"disabled:opacity-50 disabled:pointer-events-none\",\n \"transition-colors cursor-pointer\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)\",\n direction === \"decrement\" && \"rounded-l-(--radius-md)\",\n direction === \"increment\" && \"rounded-r-(--radius-md)\",\n )}\n >\n <Icon size=\"sm\">{icon as React.ReactElement}</Icon>\n </button>\n );\n\n const minusSvg = (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n </svg>\n );\n\n const plusSvg = (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\" />\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n </svg>\n );\n\n const ariaInvalid =\n field.ariaInvalid ?? (intent === \"danger\" ? true : undefined);\n\n return (\n <div\n role=\"group\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={cn(\"inline-flex items-stretch\", className)}\n >\n {showControls && controlButton(\"decrement\", atMin, minusSvg)}\n <input\n ref={ref}\n type=\"number\"\n id={field.resolvedId}\n value={displayValue}\n onChange={handleChange}\n onBlur={handleBlur}\n min={min}\n max={max}\n step={step}\n disabled={field.resolvedDisabled}\n className={cn(\n inputVariants({ intent, size }),\n \"text-center rounded-none\",\n \"[appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none\",\n !showControls && \"rounded-(--radius-md)\",\n )}\n aria-invalid={ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n {...props}\n />\n {showControls && controlButton(\"increment\", atMax, plusSvg)}\n </div>\n );\n },\n);\n\nNumberInput.displayName = \"NumberInput\";\n\nexport { NumberInput };\n"],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { InputVariantProps } from '../Input/Input.variants';
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
export interface NumberInputProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "size" | "type" | "onChange">, InputVariantProps {
|
|
4
|
+
value?: number;
|
|
5
|
+
defaultValue?: number;
|
|
6
|
+
min?: number;
|
|
7
|
+
max?: number;
|
|
8
|
+
step?: number;
|
|
9
|
+
onValueChange?: (value: number) => void;
|
|
10
|
+
showControls?: boolean;
|
|
11
|
+
incrementLabel?: string;
|
|
12
|
+
decrementLabel?: string;
|
|
13
|
+
}
|
|
14
|
+
declare const NumberInput: React.ForwardRefExoticComponent<NumberInputProps & React.RefAttributes<HTMLInputElement>>;
|
|
15
|
+
export { NumberInput };
|
|
16
|
+
//# sourceMappingURL=NumberInput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberInput.d.ts","sourceRoot":"","sources":["../../../src/components/NumberInput/NumberInput.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,uCAAuC,CAAC;AAE/C,MAAM,WAAW,gBACf,SACE,IAAI,CACF,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,MAAM,GAAG,MAAM,GAAG,UAAU,CAC7B,EACD,iBAAiB;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AASD,QAAA,MAAM,WAAW,2FA2KhB,CAAC;AAIF,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn as e } from "../../utils/cn.js";
|
|
3
|
+
import { useControllableState as t } from "../../hooks/use-controllable-state.js";
|
|
4
|
+
import { Icon as n } from "../Icon/Icon.js";
|
|
5
|
+
import { useFormFieldProps as r } from "../../hooks/use-form-field-props.js";
|
|
6
|
+
import { inputVariants as i } from "../Input/Input.variants.js";
|
|
7
|
+
import * as a from "react";
|
|
8
|
+
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
9
|
+
//#region src/components/NumberInput/NumberInput.tsx
|
|
10
|
+
function c(e, t, n) {
|
|
11
|
+
let r = e;
|
|
12
|
+
return t !== void 0 && r < t && (r = t), n !== void 0 && r > n && (r = n), r;
|
|
13
|
+
}
|
|
14
|
+
var l = a.forwardRef(({ className: l, intent: u, size: d, value: f, defaultValue: p, min: m, max: h, step: g = 1, onValueChange: _, showControls: v = !0, incrementLabel: y = "Increment", decrementLabel: b = "Decrement", id: x, disabled: S, "aria-label": C, "aria-labelledby": w, ...T }, E) => {
|
|
15
|
+
let D = r({
|
|
16
|
+
id: x,
|
|
17
|
+
disabled: S,
|
|
18
|
+
"aria-invalid": T["aria-invalid"],
|
|
19
|
+
"aria-describedby": T["aria-describedby"],
|
|
20
|
+
"aria-required": T["aria-required"]
|
|
21
|
+
}), [O, k] = t(f, p ?? c(0, m, h), _), [A, j] = a.useState(String(O));
|
|
22
|
+
a.useEffect(() => {
|
|
23
|
+
j(String(O));
|
|
24
|
+
}, [O]), process.env.NODE_ENV !== "production" && !C && !w && !D.resolvedId && console.warn("[nuka-ui] NumberInput: provide aria-label, aria-labelledby, or wrap in FormField for accessibility.");
|
|
25
|
+
let M = m !== void 0 && O <= m, N = h !== void 0 && O >= h, P = (e) => {
|
|
26
|
+
k(c(O + g * e, m, h));
|
|
27
|
+
}, F = (e) => {
|
|
28
|
+
let t = e.target.value;
|
|
29
|
+
if (j(t), t === "" || t === "-") return;
|
|
30
|
+
let n = Number(t);
|
|
31
|
+
Number.isNaN(n) || k(c(n, m, h));
|
|
32
|
+
}, I = () => {
|
|
33
|
+
if (A === "" || A === "-") {
|
|
34
|
+
let e = c(O, m, h);
|
|
35
|
+
k(e), j(String(e));
|
|
36
|
+
}
|
|
37
|
+
}, L = (t, r, i) => /* @__PURE__ */ o("button", {
|
|
38
|
+
type: "button",
|
|
39
|
+
"aria-label": t === "increment" ? y : b,
|
|
40
|
+
tabIndex: 0,
|
|
41
|
+
disabled: D.resolvedDisabled === !0 || r,
|
|
42
|
+
onClick: () => P(t === "increment" ? 1 : -1),
|
|
43
|
+
className: e("inline-flex items-center justify-center", "px-(--space-2) text-(--nuka-text-muted)", "hover:text-(--nuka-text-base) hover:bg-(--nuka-bg-muted)", "disabled:opacity-50 disabled:pointer-events-none", "transition-colors cursor-pointer", "focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)", t === "decrement" && "rounded-l-(--radius-md)", t === "increment" && "rounded-r-(--radius-md)"),
|
|
44
|
+
children: /* @__PURE__ */ o(n, {
|
|
45
|
+
size: "sm",
|
|
46
|
+
children: i
|
|
47
|
+
})
|
|
48
|
+
}), R = /* @__PURE__ */ o("svg", {
|
|
49
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
50
|
+
viewBox: "0 0 24 24",
|
|
51
|
+
fill: "none",
|
|
52
|
+
stroke: "currentColor",
|
|
53
|
+
strokeWidth: "2",
|
|
54
|
+
strokeLinecap: "round",
|
|
55
|
+
strokeLinejoin: "round",
|
|
56
|
+
children: /* @__PURE__ */ o("line", {
|
|
57
|
+
x1: "5",
|
|
58
|
+
y1: "12",
|
|
59
|
+
x2: "19",
|
|
60
|
+
y2: "12"
|
|
61
|
+
})
|
|
62
|
+
}), z = /* @__PURE__ */ s("svg", {
|
|
63
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
64
|
+
viewBox: "0 0 24 24",
|
|
65
|
+
fill: "none",
|
|
66
|
+
stroke: "currentColor",
|
|
67
|
+
strokeWidth: "2",
|
|
68
|
+
strokeLinecap: "round",
|
|
69
|
+
strokeLinejoin: "round",
|
|
70
|
+
children: [/* @__PURE__ */ o("line", {
|
|
71
|
+
x1: "12",
|
|
72
|
+
y1: "5",
|
|
73
|
+
x2: "12",
|
|
74
|
+
y2: "19"
|
|
75
|
+
}), /* @__PURE__ */ o("line", {
|
|
76
|
+
x1: "5",
|
|
77
|
+
y1: "12",
|
|
78
|
+
x2: "19",
|
|
79
|
+
y2: "12"
|
|
80
|
+
})]
|
|
81
|
+
}), B = D.ariaInvalid ?? (u === "danger" ? !0 : void 0);
|
|
82
|
+
return /* @__PURE__ */ s("div", {
|
|
83
|
+
role: "group",
|
|
84
|
+
"aria-label": C,
|
|
85
|
+
"aria-labelledby": w,
|
|
86
|
+
className: e("inline-flex items-stretch", l),
|
|
87
|
+
children: [
|
|
88
|
+
v && L("decrement", M, R),
|
|
89
|
+
/* @__PURE__ */ o("input", {
|
|
90
|
+
ref: E,
|
|
91
|
+
type: "number",
|
|
92
|
+
id: D.resolvedId,
|
|
93
|
+
value: A,
|
|
94
|
+
onChange: F,
|
|
95
|
+
onBlur: I,
|
|
96
|
+
min: m,
|
|
97
|
+
max: h,
|
|
98
|
+
step: g,
|
|
99
|
+
disabled: D.resolvedDisabled,
|
|
100
|
+
className: e(i({
|
|
101
|
+
intent: u,
|
|
102
|
+
size: d
|
|
103
|
+
}), "text-center rounded-none", "[appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none", !v && "rounded-(--radius-md)"),
|
|
104
|
+
"aria-invalid": B,
|
|
105
|
+
"aria-describedby": D.ariaDescribedBy,
|
|
106
|
+
"aria-required": D.ariaRequired,
|
|
107
|
+
...T
|
|
108
|
+
}),
|
|
109
|
+
v && L("increment", N, z)
|
|
110
|
+
]
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
l.displayName = "NumberInput";
|
|
114
|
+
//#endregion
|
|
115
|
+
export { l as NumberInput };
|
|
116
|
+
|
|
117
|
+
//# sourceMappingURL=NumberInput.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberInput.js","names":[],"sources":["../../../src/components/NumberInput/NumberInput.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { Icon } from \"@nuka/components/Icon\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport {\n inputVariants,\n type InputVariantProps,\n} from \"@nuka/components/Input/Input.variants\";\n\nexport interface NumberInputProps\n extends\n Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"size\" | \"type\" | \"onChange\"\n >,\n InputVariantProps {\n value?: number;\n defaultValue?: number;\n min?: number;\n max?: number;\n step?: number;\n onValueChange?: (value: number) => void;\n showControls?: boolean;\n incrementLabel?: string;\n decrementLabel?: string;\n}\n\nfunction clamp(value: number, min?: number, max?: number): number {\n let clamped = value;\n if (min !== undefined && clamped < min) clamped = min;\n if (max !== undefined && clamped > max) clamped = max;\n return clamped;\n}\n\nconst NumberInput = React.forwardRef<HTMLInputElement, NumberInputProps>(\n (\n {\n className,\n intent,\n size,\n value: controlledValue,\n defaultValue,\n min,\n max,\n step = 1,\n onValueChange,\n showControls = true,\n incrementLabel = \"Increment\",\n decrementLabel = \"Decrement\",\n id,\n disabled,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n ...props\n },\n ref,\n ) => {\n const field = useFormFieldProps({\n id,\n disabled,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const [currentValue, setCurrentValue] = useControllableState(\n controlledValue,\n defaultValue ?? clamp(0, min, max),\n onValueChange,\n );\n\n const [displayValue, setDisplayValue] = React.useState(\n String(currentValue),\n );\n\n // Sync displayValue when the committed value changes externally\n React.useEffect(() => {\n setDisplayValue(String(currentValue));\n }, [currentValue]);\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!ariaLabel && !ariaLabelledBy && !field.resolvedId) {\n console.warn(\n \"[nuka-ui] NumberInput: provide aria-label, aria-labelledby, or wrap in FormField for accessibility.\",\n );\n }\n }\n\n const atMin = min !== undefined && currentValue <= min;\n const atMax = max !== undefined && currentValue >= max;\n\n const nudge = (direction: 1 | -1) => {\n setCurrentValue(clamp(currentValue + step * direction, min, max));\n };\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const raw = e.target.value;\n setDisplayValue(raw);\n if (raw === \"\" || raw === \"-\") return;\n const parsed = Number(raw);\n if (!Number.isNaN(parsed)) {\n setCurrentValue(clamp(parsed, min, max));\n }\n };\n\n const handleBlur = () => {\n if (displayValue === \"\" || displayValue === \"-\") {\n const clamped = clamp(currentValue, min, max);\n setCurrentValue(clamped);\n setDisplayValue(String(clamped));\n }\n };\n\n const controlButton = (\n direction: \"increment\" | \"decrement\",\n isDisabled: boolean,\n icon: React.ReactNode,\n ) => (\n <button\n type=\"button\"\n aria-label={direction === \"increment\" ? incrementLabel : decrementLabel}\n tabIndex={0}\n disabled={field.resolvedDisabled === true || isDisabled}\n onClick={() => nudge(direction === \"increment\" ? 1 : -1)}\n className={cn(\n \"inline-flex items-center justify-center\",\n \"px-(--space-2) text-(--nuka-text-muted)\",\n \"hover:text-(--nuka-text-base) hover:bg-(--nuka-bg-muted)\",\n \"disabled:opacity-50 disabled:pointer-events-none\",\n \"transition-colors cursor-pointer\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)\",\n direction === \"decrement\" && \"rounded-l-(--radius-md)\",\n direction === \"increment\" && \"rounded-r-(--radius-md)\",\n )}\n >\n <Icon size=\"sm\">{icon as React.ReactElement}</Icon>\n </button>\n );\n\n const minusSvg = (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n </svg>\n );\n\n const plusSvg = (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <line x1=\"12\" y1=\"5\" x2=\"12\" y2=\"19\" />\n <line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\" />\n </svg>\n );\n\n const ariaInvalid =\n field.ariaInvalid ?? (intent === \"danger\" ? true : undefined);\n\n return (\n <div\n role=\"group\"\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n className={cn(\"inline-flex items-stretch\", className)}\n >\n {showControls && controlButton(\"decrement\", atMin, minusSvg)}\n <input\n ref={ref}\n type=\"number\"\n id={field.resolvedId}\n value={displayValue}\n onChange={handleChange}\n onBlur={handleBlur}\n min={min}\n max={max}\n step={step}\n disabled={field.resolvedDisabled}\n className={cn(\n inputVariants({ intent, size }),\n \"text-center rounded-none\",\n \"[appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none\",\n !showControls && \"rounded-(--radius-md)\",\n )}\n aria-invalid={ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n {...props}\n />\n {showControls && controlButton(\"increment\", atMax, plusSvg)}\n </div>\n );\n },\n);\n\nNumberInput.displayName = \"NumberInput\";\n\nexport { NumberInput };\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/NumberInput/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const e=require(`../../_virtual/_rolldown/runtime.cjs`),t=require(`../../utils/cn.cjs`);let n=require(`react`);n=e.__toESM(n,1);let r=require(`react/jsx-runtime`);var i=n.forwardRef(({"aria-label":e=`Pagination`,className:n,...i},a)=>(0,r.jsx)(`nav`,{ref:a,"aria-label":e,className:t.cn(`mx-auto flex w-full justify-center`,n),...i}));i.displayName=`Pagination`,exports.Pagination=i;
|
|
2
|
+
//# sourceMappingURL=Pagination.cjs.map
|