@nuka-ui/core 1.1.4 → 1.1.5
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/dist/bundle.css +2 -2
- package/dist/components/Accordion/Accordion.cjs +1 -1
- package/dist/components/Accordion/Accordion.cjs.map +1 -1
- package/dist/components/Accordion/Accordion.context.cjs +1 -1
- package/dist/components/Accordion/Accordion.context.cjs.map +1 -1
- package/dist/components/Accordion/Accordion.context.js +1 -1
- package/dist/components/Accordion/Accordion.context.js.map +1 -1
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/Accordion/AccordionContent.cjs +1 -1
- package/dist/components/Accordion/AccordionContent.cjs.map +1 -1
- package/dist/components/Accordion/AccordionContent.js.map +1 -1
- package/dist/components/Accordion/AccordionItem.cjs +1 -1
- package/dist/components/Accordion/AccordionItem.cjs.map +1 -1
- package/dist/components/Accordion/AccordionItem.js.map +1 -1
- package/dist/components/Accordion/AccordionTrigger.cjs +1 -1
- package/dist/components/Accordion/AccordionTrigger.cjs.map +1 -1
- package/dist/components/Accordion/AccordionTrigger.d.ts.map +1 -1
- package/dist/components/Accordion/AccordionTrigger.js.map +1 -1
- package/dist/components/Alert/Alert.cjs +1 -1
- package/dist/components/Alert/Alert.cjs.map +1 -1
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/Alert/Alert.variants.cjs +1 -1
- package/dist/components/Alert/Alert.variants.cjs.map +1 -1
- package/dist/components/Alert/Alert.variants.js.map +1 -1
- package/dist/components/AppShell/AppShell.cjs +1 -1
- package/dist/components/AppShell/AppShell.cjs.map +1 -1
- package/dist/components/AppShell/AppShell.js.map +1 -1
- package/dist/components/AppShell/AppShellBody.cjs +1 -1
- package/dist/components/AppShell/AppShellBody.cjs.map +1 -1
- package/dist/components/AppShell/AppShellBody.js.map +1 -1
- package/dist/components/AppShell/AppShellHeader.cjs +1 -1
- package/dist/components/AppShell/AppShellHeader.cjs.map +1 -1
- package/dist/components/AppShell/AppShellHeader.js.map +1 -1
- package/dist/components/AppShell/AppShellMain.cjs +1 -1
- package/dist/components/AppShell/AppShellMain.cjs.map +1 -1
- package/dist/components/AppShell/AppShellMain.js.map +1 -1
- package/dist/components/AspectRatio/AspectRatio.cjs +1 -1
- package/dist/components/AspectRatio/AspectRatio.cjs.map +1 -1
- package/dist/components/AspectRatio/AspectRatio.js.map +1 -1
- package/dist/components/Avatar/Avatar.cjs +1 -1
- package/dist/components/Avatar/Avatar.cjs.map +1 -1
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Avatar/Avatar.variants.cjs +1 -1
- package/dist/components/Avatar/Avatar.variants.cjs.map +1 -1
- package/dist/components/Avatar/Avatar.variants.js.map +1 -1
- package/dist/components/Badge/Badge.cjs +1 -1
- package/dist/components/Badge/Badge.cjs.map +1 -1
- package/dist/components/Badge/Badge.js.map +1 -1
- package/dist/components/Badge/Badge.variants.cjs +1 -1
- package/dist/components/Badge/Badge.variants.cjs.map +1 -1
- package/dist/components/Badge/Badge.variants.js.map +1 -1
- package/dist/components/Banner/Banner.cjs +1 -1
- package/dist/components/Banner/Banner.cjs.map +1 -1
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Banner/Banner.variants.cjs +1 -1
- package/dist/components/Banner/Banner.variants.cjs.map +1 -1
- package/dist/components/Banner/Banner.variants.js.map +1 -1
- package/dist/components/Breadcrumb/Breadcrumb.cjs +1 -1
- package/dist/components/Breadcrumb/Breadcrumb.cjs.map +1 -1
- package/dist/components/Breadcrumb/Breadcrumb.js.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.cjs +1 -1
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.cjs.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbEllipsis.js.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbItem.cjs +1 -1
- package/dist/components/Breadcrumb/BreadcrumbItem.cjs.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbItem.js.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbLink.cjs +1 -1
- package/dist/components/Breadcrumb/BreadcrumbLink.cjs.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbLink.js.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbList.cjs +1 -1
- package/dist/components/Breadcrumb/BreadcrumbList.cjs.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbList.js.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbPage.cjs +1 -1
- package/dist/components/Breadcrumb/BreadcrumbPage.cjs.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbPage.js.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbSeparator.cjs +1 -1
- package/dist/components/Breadcrumb/BreadcrumbSeparator.cjs.map +1 -1
- package/dist/components/Breadcrumb/BreadcrumbSeparator.js.map +1 -1
- package/dist/components/Button/Button.cjs +1 -1
- package/dist/components/Button/Button.cjs.map +1 -1
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/Button/Button.variants.cjs +1 -1
- package/dist/components/Button/Button.variants.cjs.map +1 -1
- package/dist/components/Button/Button.variants.js.map +1 -1
- package/dist/components/Callout/Callout.cjs +1 -1
- package/dist/components/Callout/Callout.cjs.map +1 -1
- package/dist/components/Callout/Callout.js.map +1 -1
- package/dist/components/Callout/Callout.variants.cjs +1 -1
- package/dist/components/Callout/Callout.variants.cjs.map +1 -1
- package/dist/components/Callout/Callout.variants.js.map +1 -1
- package/dist/components/Card/Card.cjs +1 -1
- package/dist/components/Card/Card.cjs.map +1 -1
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/Card/Card.variants.cjs +1 -1
- package/dist/components/Card/Card.variants.cjs.map +1 -1
- package/dist/components/Card/Card.variants.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.cjs +1 -1
- package/dist/components/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.variants.cjs +1 -1
- package/dist/components/Checkbox/Checkbox.variants.cjs.map +1 -1
- package/dist/components/Checkbox/Checkbox.variants.js.map +1 -1
- package/dist/components/Chip/Chip.cjs +1 -1
- package/dist/components/Chip/Chip.cjs.map +1 -1
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/Chip/Chip.variants.cjs +1 -1
- package/dist/components/Chip/Chip.variants.cjs.map +1 -1
- package/dist/components/Chip/Chip.variants.js.map +1 -1
- package/dist/components/Code/Code.cjs +1 -1
- package/dist/components/Code/Code.cjs.map +1 -1
- package/dist/components/Code/Code.js.map +1 -1
- package/dist/components/Code/Code.variants.cjs +1 -1
- package/dist/components/Code/Code.variants.cjs.map +1 -1
- package/dist/components/Code/Code.variants.js.map +1 -1
- package/dist/components/Collapsible/Collapsible.cjs +1 -1
- package/dist/components/Collapsible/Collapsible.cjs.map +1 -1
- package/dist/components/Collapsible/Collapsible.context.cjs +1 -1
- package/dist/components/Collapsible/Collapsible.context.cjs.map +1 -1
- package/dist/components/Collapsible/Collapsible.context.js +1 -1
- package/dist/components/Collapsible/Collapsible.context.js.map +1 -1
- package/dist/components/Collapsible/Collapsible.js.map +1 -1
- package/dist/components/Collapsible/CollapsibleContent.cjs +1 -1
- package/dist/components/Collapsible/CollapsibleContent.cjs.map +1 -1
- package/dist/components/Collapsible/CollapsibleContent.js.map +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.cjs +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.cjs.map +1 -1
- package/dist/components/Collapsible/CollapsibleTrigger.js.map +1 -1
- package/dist/components/Combobox/Combobox.cjs +1 -1
- package/dist/components/Combobox/Combobox.cjs.map +1 -1
- package/dist/components/Combobox/Combobox.context.cjs +1 -1
- package/dist/components/Combobox/Combobox.context.cjs.map +1 -1
- package/dist/components/Combobox/Combobox.context.d.ts +6 -1
- package/dist/components/Combobox/Combobox.context.d.ts.map +1 -1
- package/dist/components/Combobox/Combobox.context.js +3 -2
- package/dist/components/Combobox/Combobox.context.js.map +1 -1
- package/dist/components/Combobox/Combobox.js.map +1 -1
- package/dist/components/Combobox/Combobox.utils.cjs.map +1 -1
- package/dist/components/Combobox/Combobox.utils.js.map +1 -1
- package/dist/components/Combobox/Combobox.variants.cjs +1 -1
- package/dist/components/Combobox/Combobox.variants.cjs.map +1 -1
- package/dist/components/Combobox/Combobox.variants.js.map +1 -1
- package/dist/components/Combobox/ComboboxContent.cjs +1 -1
- package/dist/components/Combobox/ComboboxContent.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxContent.js.map +1 -1
- package/dist/components/Combobox/ComboboxEmpty.cjs +1 -1
- package/dist/components/Combobox/ComboboxEmpty.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxEmpty.js.map +1 -1
- package/dist/components/Combobox/ComboboxGroup.cjs +1 -1
- package/dist/components/Combobox/ComboboxGroup.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxGroup.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxGroup.js +37 -24
- package/dist/components/Combobox/ComboboxGroup.js.map +1 -1
- package/dist/components/Combobox/ComboboxInput.cjs +1 -1
- package/dist/components/Combobox/ComboboxInput.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxInput.js.map +1 -1
- package/dist/components/Combobox/ComboboxListbox.cjs +1 -1
- package/dist/components/Combobox/ComboboxListbox.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxListbox.js.map +1 -1
- package/dist/components/Combobox/ComboboxOption.cjs +1 -1
- package/dist/components/Combobox/ComboboxOption.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxOption.d.ts.map +1 -1
- package/dist/components/Combobox/ComboboxOption.js +37 -28
- package/dist/components/Combobox/ComboboxOption.js.map +1 -1
- package/dist/components/Combobox/ComboboxTrigger.cjs +1 -1
- package/dist/components/Combobox/ComboboxTrigger.cjs.map +1 -1
- package/dist/components/Combobox/ComboboxTrigger.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenu.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.context.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenu.context.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.context.d.ts +8 -1
- package/dist/components/CommandMenu/CommandMenu.context.d.ts.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.context.js +3 -2
- package/dist/components/CommandMenu/CommandMenu.context.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.d.ts.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.js +49 -39
- package/dist/components/CommandMenu/CommandMenu.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.utils.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenu.utils.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenu.utils.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenuEmpty.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenuEmpty.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenuEmpty.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenuGroup.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenuGroup.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenuGroup.d.ts.map +1 -1
- package/dist/components/CommandMenu/CommandMenuGroup.js +41 -26
- package/dist/components/CommandMenu/CommandMenuGroup.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenuInput.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenuInput.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenuInput.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenuItem.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenuItem.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenuItem.d.ts.map +1 -1
- package/dist/components/CommandMenu/CommandMenuItem.js +35 -21
- package/dist/components/CommandMenu/CommandMenuItem.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenuList.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenuList.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenuList.js.map +1 -1
- package/dist/components/CommandMenu/CommandMenuShortcut.cjs +1 -1
- package/dist/components/CommandMenu/CommandMenuShortcut.cjs.map +1 -1
- package/dist/components/CommandMenu/CommandMenuShortcut.js.map +1 -1
- package/dist/components/Container/Container.cjs +1 -1
- package/dist/components/Container/Container.cjs.map +1 -1
- package/dist/components/Container/Container.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenu.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.context.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenu.context.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.context.js +1 -1
- package/dist/components/ContextMenu/ContextMenu.context.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenu.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuCheckboxItem.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuContent.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuContent.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuContent.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuItem.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuItem.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuItem.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuLabel.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuLabel.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuLabel.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioGroup.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioGroup.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioGroup.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioItem.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioItem.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuRadioItem.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuSeparator.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuSeparator.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuSeparator.js.map +1 -1
- package/dist/components/ContextMenu/ContextMenuTrigger.cjs +1 -1
- package/dist/components/ContextMenu/ContextMenuTrigger.cjs.map +1 -1
- package/dist/components/ContextMenu/ContextMenuTrigger.js.map +1 -1
- package/dist/components/DataTable/DataTable.cjs +1 -1
- package/dist/components/DataTable/DataTable.cjs.map +1 -1
- package/dist/components/DataTable/DataTable.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.cjs.map +1 -1
- package/dist/components/DatePicker/DatePicker.context.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.context.cjs.map +1 -1
- package/dist/components/DatePicker/DatePicker.context.js +1 -1
- package/dist/components/DatePicker/DatePicker.context.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.hooks.cjs +1 -1
- package/dist/components/DatePicker/DatePicker.hooks.cjs.map +1 -1
- package/dist/components/DatePicker/DatePicker.hooks.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePicker.hooks.js +10 -12
- package/dist/components/DatePicker/DatePicker.hooks.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.utils.cjs.map +1 -1
- package/dist/components/DatePicker/DatePicker.utils.js.map +1 -1
- package/dist/components/DatePicker/DatePickerCalendar.cjs +1 -1
- package/dist/components/DatePicker/DatePickerCalendar.cjs.map +1 -1
- package/dist/components/DatePicker/DatePickerCalendar.js +6 -6
- package/dist/components/DatePicker/DatePickerCalendar.js.map +1 -1
- package/dist/components/DatePicker/DatePickerInput.cjs +1 -1
- package/dist/components/DatePicker/DatePickerInput.cjs.map +1 -1
- package/dist/components/DatePicker/DatePickerInput.d.ts.map +1 -1
- package/dist/components/DatePicker/DatePickerInput.js +16 -22
- package/dist/components/DatePicker/DatePickerInput.js.map +1 -1
- package/dist/components/Dialog/Dialog.cjs +1 -1
- package/dist/components/Dialog/Dialog.cjs.map +1 -1
- package/dist/components/Dialog/Dialog.context.cjs +1 -1
- package/dist/components/Dialog/Dialog.context.cjs.map +1 -1
- package/dist/components/Dialog/Dialog.context.js +1 -1
- package/dist/components/Dialog/Dialog.context.js.map +1 -1
- package/dist/components/Dialog/Dialog.js.map +1 -1
- package/dist/components/Divider/Divider.cjs +1 -1
- package/dist/components/Divider/Divider.cjs.map +1 -1
- package/dist/components/Divider/Divider.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.context.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.context.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.context.js +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.context.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenu.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuCheckboxItem.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuContent.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuContent.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuContent.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuItem.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuLabel.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuLabel.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuLabel.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioGroup.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuRadioItem.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuSeparator.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuSeparator.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuSeparator.js.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuTrigger.cjs +1 -1
- package/dist/components/DropdownMenu/DropdownMenuTrigger.cjs.map +1 -1
- package/dist/components/DropdownMenu/DropdownMenuTrigger.js.map +1 -1
- package/dist/components/EmptyState/EmptyState.cjs +1 -1
- package/dist/components/EmptyState/EmptyState.cjs.map +1 -1
- package/dist/components/EmptyState/EmptyState.js.map +1 -1
- package/dist/components/Eyebrow/Eyebrow.cjs +1 -1
- package/dist/components/Eyebrow/Eyebrow.cjs.map +1 -1
- package/dist/components/Eyebrow/Eyebrow.js.map +1 -1
- package/dist/components/Eyebrow/Eyebrow.variants.cjs +1 -1
- package/dist/components/Eyebrow/Eyebrow.variants.cjs.map +1 -1
- package/dist/components/Eyebrow/Eyebrow.variants.js.map +1 -1
- package/dist/components/FileInput/FileInput.cjs +1 -1
- package/dist/components/FileInput/FileInput.cjs.map +1 -1
- package/dist/components/FileInput/FileInput.js.map +1 -1
- package/dist/components/FileInput/FileInput.variants.cjs +1 -1
- package/dist/components/FileInput/FileInput.variants.cjs.map +1 -1
- package/dist/components/FileInput/FileInput.variants.js.map +1 -1
- package/dist/components/FormField/FormField.cjs +1 -1
- package/dist/components/FormField/FormField.cjs.map +1 -1
- package/dist/components/FormField/FormField.context.cjs +1 -1
- package/dist/components/FormField/FormField.context.cjs.map +1 -1
- package/dist/components/FormField/FormField.context.js +1 -1
- package/dist/components/FormField/FormField.context.js.map +1 -1
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/Grid/Grid.cjs +1 -1
- package/dist/components/Grid/Grid.cjs.map +1 -1
- package/dist/components/Grid/Grid.js.map +1 -1
- package/dist/components/Heading/Heading.cjs +1 -1
- package/dist/components/Heading/Heading.cjs.map +1 -1
- package/dist/components/Heading/Heading.js.map +1 -1
- package/dist/components/Heading/Heading.variants.cjs +1 -1
- package/dist/components/Heading/Heading.variants.cjs.map +1 -1
- package/dist/components/Heading/Heading.variants.js.map +1 -1
- package/dist/components/Icon/Icon.cjs +1 -1
- package/dist/components/Icon/Icon.cjs.map +1 -1
- package/dist/components/Icon/Icon.d.ts.map +1 -1
- package/dist/components/Icon/Icon.js +5 -11
- package/dist/components/Icon/Icon.js.map +1 -1
- package/dist/components/Icon/Icon.variants.cjs +1 -1
- package/dist/components/Icon/Icon.variants.cjs.map +1 -1
- package/dist/components/Icon/Icon.variants.js.map +1 -1
- package/dist/components/Input/Input.cjs +1 -1
- package/dist/components/Input/Input.cjs.map +1 -1
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/Input/Input.variants.cjs +1 -1
- package/dist/components/Input/Input.variants.cjs.map +1 -1
- package/dist/components/Input/Input.variants.js.map +1 -1
- package/dist/components/Kbd/Kbd.cjs +1 -1
- package/dist/components/Kbd/Kbd.cjs.map +1 -1
- package/dist/components/Kbd/Kbd.js.map +1 -1
- package/dist/components/Kbd/Kbd.variants.cjs +1 -1
- package/dist/components/Kbd/Kbd.variants.cjs.map +1 -1
- package/dist/components/Kbd/Kbd.variants.js.map +1 -1
- package/dist/components/Label/Label.cjs +1 -1
- package/dist/components/Label/Label.cjs.map +1 -1
- package/dist/components/Label/Label.js.map +1 -1
- package/dist/components/Menu/MenuCheckboxItemBase.cjs +1 -1
- package/dist/components/Menu/MenuCheckboxItemBase.cjs.map +1 -1
- package/dist/components/Menu/MenuCheckboxItemBase.js.map +1 -1
- package/dist/components/Menu/MenuContentBase.cjs +1 -1
- package/dist/components/Menu/MenuContentBase.cjs.map +1 -1
- package/dist/components/Menu/MenuContentBase.js +1 -1
- package/dist/components/Menu/MenuContentBase.js.map +1 -1
- package/dist/components/Menu/MenuItemBase.cjs +1 -1
- package/dist/components/Menu/MenuItemBase.cjs.map +1 -1
- package/dist/components/Menu/MenuItemBase.js.map +1 -1
- package/dist/components/Menu/MenuLabelBase.cjs +1 -1
- package/dist/components/Menu/MenuLabelBase.cjs.map +1 -1
- package/dist/components/Menu/MenuLabelBase.js.map +1 -1
- package/dist/components/Menu/MenuRadioGroupBase.cjs +1 -1
- package/dist/components/Menu/MenuRadioGroupBase.cjs.map +1 -1
- package/dist/components/Menu/MenuRadioGroupBase.js +1 -1
- package/dist/components/Menu/MenuRadioGroupBase.js.map +1 -1
- package/dist/components/Menu/MenuRadioItemBase.cjs +1 -1
- package/dist/components/Menu/MenuRadioItemBase.cjs.map +1 -1
- package/dist/components/Menu/MenuRadioItemBase.js.map +1 -1
- package/dist/components/Menu/MenuSeparatorBase.cjs +1 -1
- package/dist/components/Menu/MenuSeparatorBase.cjs.map +1 -1
- package/dist/components/Menu/MenuSeparatorBase.js.map +1 -1
- package/dist/components/Menu/menuItemVariants.cjs +1 -1
- package/dist/components/Menu/menuItemVariants.cjs.map +1 -1
- package/dist/components/Menu/menuItemVariants.js.map +1 -1
- package/dist/components/Menubar/Menubar.cjs +1 -1
- package/dist/components/Menubar/Menubar.cjs.map +1 -1
- package/dist/components/Menubar/Menubar.context.cjs +1 -1
- package/dist/components/Menubar/Menubar.context.cjs.map +1 -1
- package/dist/components/Menubar/Menubar.context.js +2 -2
- package/dist/components/Menubar/Menubar.context.js.map +1 -1
- package/dist/components/Menubar/Menubar.js.map +1 -1
- package/dist/components/Menubar/MenubarCheckboxItem.cjs +1 -1
- package/dist/components/Menubar/MenubarCheckboxItem.cjs.map +1 -1
- package/dist/components/Menubar/MenubarCheckboxItem.js.map +1 -1
- package/dist/components/Menubar/MenubarContent.cjs +1 -1
- package/dist/components/Menubar/MenubarContent.cjs.map +1 -1
- package/dist/components/Menubar/MenubarContent.js.map +1 -1
- package/dist/components/Menubar/MenubarItem.cjs +1 -1
- package/dist/components/Menubar/MenubarItem.cjs.map +1 -1
- package/dist/components/Menubar/MenubarItem.js.map +1 -1
- package/dist/components/Menubar/MenubarMenu.cjs +1 -1
- package/dist/components/Menubar/MenubarMenu.cjs.map +1 -1
- package/dist/components/Menubar/MenubarMenu.js.map +1 -1
- package/dist/components/Menubar/MenubarRadioGroup.cjs +1 -1
- package/dist/components/Menubar/MenubarRadioGroup.cjs.map +1 -1
- package/dist/components/Menubar/MenubarRadioGroup.js.map +1 -1
- package/dist/components/Menubar/MenubarRadioItem.cjs +1 -1
- package/dist/components/Menubar/MenubarRadioItem.cjs.map +1 -1
- package/dist/components/Menubar/MenubarRadioItem.js.map +1 -1
- package/dist/components/Menubar/MenubarSeparator.cjs +1 -1
- package/dist/components/Menubar/MenubarSeparator.cjs.map +1 -1
- package/dist/components/Menubar/MenubarSeparator.js.map +1 -1
- package/dist/components/Menubar/MenubarTrigger.cjs +1 -1
- package/dist/components/Menubar/MenubarTrigger.cjs.map +1 -1
- package/dist/components/Menubar/MenubarTrigger.js.map +1 -1
- package/dist/components/Nav/Nav.cjs +1 -1
- package/dist/components/Nav/Nav.cjs.map +1 -1
- package/dist/components/Nav/Nav.js.map +1 -1
- package/dist/components/Nav/NavItem.cjs +1 -1
- package/dist/components/Nav/NavItem.cjs.map +1 -1
- package/dist/components/Nav/NavItem.js.map +1 -1
- package/dist/components/Nav/NavLink.cjs +1 -1
- package/dist/components/Nav/NavLink.cjs.map +1 -1
- package/dist/components/Nav/NavLink.js.map +1 -1
- package/dist/components/Nav/NavList.cjs +1 -1
- package/dist/components/Nav/NavList.cjs.map +1 -1
- package/dist/components/Nav/NavList.js.map +1 -1
- package/dist/components/Nav/NavSubmenu.cjs +1 -1
- package/dist/components/Nav/NavSubmenu.cjs.map +1 -1
- package/dist/components/Nav/NavSubmenu.js.map +1 -1
- package/dist/components/Nav/NavTrigger.cjs +1 -1
- package/dist/components/Nav/NavTrigger.cjs.map +1 -1
- package/dist/components/Nav/NavTrigger.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.context.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.context.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.context.js +3 -3
- package/dist/components/NavigationMenu/NavigationMenu.context.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.d.ts.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.utils.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenu.utils.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuContent.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenuContent.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuContent.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuItem.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenuItem.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuItem.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuLink.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenuLink.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuLink.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuList.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenuList.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuList.js.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuTrigger.cjs +1 -1
- package/dist/components/NavigationMenu/NavigationMenuTrigger.cjs.map +1 -1
- package/dist/components/NavigationMenu/NavigationMenuTrigger.js.map +1 -1
- package/dist/components/NumberInput/NumberInput.cjs +1 -1
- package/dist/components/NumberInput/NumberInput.cjs.map +1 -1
- package/dist/components/NumberInput/NumberInput.js.map +1 -1
- package/dist/components/Pagination/Pagination.cjs +1 -1
- package/dist/components/Pagination/Pagination.cjs.map +1 -1
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Pagination/PaginationContent.cjs +1 -1
- package/dist/components/Pagination/PaginationContent.cjs.map +1 -1
- package/dist/components/Pagination/PaginationContent.js.map +1 -1
- package/dist/components/Pagination/PaginationEllipsis.cjs +1 -1
- package/dist/components/Pagination/PaginationEllipsis.cjs.map +1 -1
- package/dist/components/Pagination/PaginationEllipsis.js.map +1 -1
- package/dist/components/Pagination/PaginationItem.cjs +1 -1
- package/dist/components/Pagination/PaginationItem.cjs.map +1 -1
- package/dist/components/Pagination/PaginationItem.js.map +1 -1
- package/dist/components/Pagination/PaginationLink.cjs +1 -1
- package/dist/components/Pagination/PaginationLink.cjs.map +1 -1
- package/dist/components/Pagination/PaginationLink.js.map +1 -1
- package/dist/components/Pagination/PaginationNext.cjs +1 -1
- package/dist/components/Pagination/PaginationNext.cjs.map +1 -1
- package/dist/components/Pagination/PaginationNext.d.ts.map +1 -1
- package/dist/components/Pagination/PaginationNext.js.map +1 -1
- package/dist/components/Pagination/PaginationPrevious.cjs +1 -1
- package/dist/components/Pagination/PaginationPrevious.cjs.map +1 -1
- package/dist/components/Pagination/PaginationPrevious.d.ts.map +1 -1
- package/dist/components/Pagination/PaginationPrevious.js.map +1 -1
- package/dist/components/Popover/Popover.cjs +1 -1
- package/dist/components/Popover/Popover.cjs.map +1 -1
- package/dist/components/Popover/Popover.context.cjs +1 -1
- package/dist/components/Popover/Popover.context.cjs.map +1 -1
- package/dist/components/Popover/Popover.context.js +1 -1
- package/dist/components/Popover/Popover.context.js.map +1 -1
- package/dist/components/Popover/Popover.js.map +1 -1
- package/dist/components/Popover/PopoverContent.cjs +1 -1
- package/dist/components/Popover/PopoverContent.cjs.map +1 -1
- package/dist/components/Popover/PopoverContent.js.map +1 -1
- package/dist/components/Popover/PopoverTrigger.cjs +1 -1
- package/dist/components/Popover/PopoverTrigger.cjs.map +1 -1
- package/dist/components/Popover/PopoverTrigger.js.map +1 -1
- package/dist/components/Progress/Progress.cjs +1 -1
- package/dist/components/Progress/Progress.cjs.map +1 -1
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/Progress/Progress.variants.cjs +1 -1
- package/dist/components/Progress/Progress.variants.cjs.map +1 -1
- package/dist/components/Progress/Progress.variants.js.map +1 -1
- package/dist/components/RadioGroup/Radio.cjs +1 -1
- package/dist/components/RadioGroup/Radio.cjs.map +1 -1
- package/dist/components/RadioGroup/Radio.js.map +1 -1
- package/dist/components/RadioGroup/Radio.variants.cjs +1 -1
- package/dist/components/RadioGroup/Radio.variants.cjs.map +1 -1
- package/dist/components/RadioGroup/Radio.variants.js.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.cjs +1 -1
- package/dist/components/RadioGroup/RadioGroup.cjs.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.context.cjs +1 -1
- package/dist/components/RadioGroup/RadioGroup.context.cjs.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.context.js +1 -1
- package/dist/components/RadioGroup/RadioGroup.context.js.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.js +14 -23
- package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/ScrollArea/ScrollArea.cjs +1 -1
- package/dist/components/ScrollArea/ScrollArea.cjs.map +1 -1
- package/dist/components/ScrollArea/ScrollArea.js.map +1 -1
- package/dist/components/Section/Section.cjs +1 -1
- package/dist/components/Section/Section.cjs.map +1 -1
- package/dist/components/Section/Section.js.map +1 -1
- package/dist/components/Section/Section.variants.cjs +1 -1
- package/dist/components/Section/Section.variants.cjs.map +1 -1
- package/dist/components/Section/Section.variants.js.map +1 -1
- package/dist/components/Select/Select.cjs +1 -1
- package/dist/components/Select/Select.cjs.map +1 -1
- package/dist/components/Select/Select.context.cjs +1 -1
- package/dist/components/Select/Select.context.cjs.map +1 -1
- package/dist/components/Select/Select.context.js +1 -1
- package/dist/components/Select/Select.context.js.map +1 -1
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/Select/SelectContent.cjs +1 -1
- package/dist/components/Select/SelectContent.cjs.map +1 -1
- package/dist/components/Select/SelectContent.js.map +1 -1
- package/dist/components/Select/SelectItem.cjs +1 -1
- package/dist/components/Select/SelectItem.cjs.map +1 -1
- package/dist/components/Select/SelectItem.js.map +1 -1
- package/dist/components/Select/SelectSeparator.cjs +1 -1
- package/dist/components/Select/SelectSeparator.cjs.map +1 -1
- package/dist/components/Select/SelectSeparator.js.map +1 -1
- package/dist/components/Select/SelectTrigger.cjs +1 -1
- package/dist/components/Select/SelectTrigger.cjs.map +1 -1
- package/dist/components/Select/SelectTrigger.js.map +1 -1
- package/dist/components/Select/SelectTrigger.utils.cjs +1 -1
- package/dist/components/Select/SelectTrigger.utils.cjs.map +1 -1
- package/dist/components/Select/SelectTrigger.utils.js.map +1 -1
- package/dist/components/Select/SelectTrigger.variants.cjs +1 -1
- package/dist/components/Select/SelectTrigger.variants.cjs.map +1 -1
- package/dist/components/Select/SelectTrigger.variants.js.map +1 -1
- package/dist/components/Sheet/Sheet.cjs +1 -1
- package/dist/components/Sheet/Sheet.cjs.map +1 -1
- package/dist/components/Sheet/Sheet.context.cjs +1 -1
- package/dist/components/Sheet/Sheet.context.cjs.map +1 -1
- package/dist/components/Sheet/Sheet.context.js +1 -1
- package/dist/components/Sheet/Sheet.context.js.map +1 -1
- package/dist/components/Sheet/Sheet.js.map +1 -1
- package/dist/components/Sidebar/Sidebar.cjs +1 -1
- package/dist/components/Sidebar/Sidebar.cjs.map +1 -1
- package/dist/components/Sidebar/Sidebar.context.cjs +1 -1
- package/dist/components/Sidebar/Sidebar.context.cjs.map +1 -1
- package/dist/components/Sidebar/Sidebar.context.js +1 -1
- package/dist/components/Sidebar/Sidebar.context.js.map +1 -1
- package/dist/components/Sidebar/Sidebar.js.map +1 -1
- package/dist/components/Sidebar/SidebarContent.cjs +1 -1
- package/dist/components/Sidebar/SidebarContent.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarContent.js.map +1 -1
- package/dist/components/Sidebar/SidebarFooter.cjs +1 -1
- package/dist/components/Sidebar/SidebarFooter.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarFooter.js.map +1 -1
- package/dist/components/Sidebar/SidebarGroup.cjs +1 -1
- package/dist/components/Sidebar/SidebarGroup.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarGroup.js.map +1 -1
- package/dist/components/Sidebar/SidebarGroupLabel.cjs +1 -1
- package/dist/components/Sidebar/SidebarGroupLabel.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarGroupLabel.js.map +1 -1
- package/dist/components/Sidebar/SidebarHeader.cjs +1 -1
- package/dist/components/Sidebar/SidebarHeader.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarHeader.js.map +1 -1
- package/dist/components/Sidebar/SidebarInset.cjs +1 -1
- package/dist/components/Sidebar/SidebarInset.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarInset.js.map +1 -1
- package/dist/components/Sidebar/SidebarMenu.cjs +1 -1
- package/dist/components/Sidebar/SidebarMenu.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarMenu.js.map +1 -1
- package/dist/components/Sidebar/SidebarMenuButton.cjs +1 -1
- package/dist/components/Sidebar/SidebarMenuButton.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarMenuButton.js.map +1 -1
- package/dist/components/Sidebar/SidebarMenuItem.cjs +1 -1
- package/dist/components/Sidebar/SidebarMenuItem.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarMenuItem.js.map +1 -1
- package/dist/components/Sidebar/SidebarProvider.cjs +1 -1
- package/dist/components/Sidebar/SidebarProvider.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarProvider.js.map +1 -1
- package/dist/components/Sidebar/SidebarTrigger.cjs +1 -1
- package/dist/components/Sidebar/SidebarTrigger.cjs.map +1 -1
- package/dist/components/Sidebar/SidebarTrigger.js.map +1 -1
- package/dist/components/Skeleton/Skeleton.cjs +1 -1
- package/dist/components/Skeleton/Skeleton.cjs.map +1 -1
- package/dist/components/Skeleton/Skeleton.js.map +1 -1
- package/dist/components/Skeleton/Skeleton.variants.cjs +1 -1
- package/dist/components/Skeleton/Skeleton.variants.cjs.map +1 -1
- package/dist/components/Skeleton/Skeleton.variants.js.map +1 -1
- package/dist/components/SkipLink/SkipLink.cjs +1 -1
- package/dist/components/SkipLink/SkipLink.cjs.map +1 -1
- package/dist/components/SkipLink/SkipLink.js.map +1 -1
- package/dist/components/Slider/Slider.cjs +1 -1
- package/dist/components/Slider/Slider.cjs.map +1 -1
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/Slider/Slider.variants.cjs +1 -1
- package/dist/components/Slider/Slider.variants.cjs.map +1 -1
- package/dist/components/Slider/Slider.variants.js.map +1 -1
- package/dist/components/Spinner/Spinner.cjs +1 -1
- package/dist/components/Spinner/Spinner.cjs.map +1 -1
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/Spinner/Spinner.variants.cjs +1 -1
- package/dist/components/Spinner/Spinner.variants.cjs.map +1 -1
- package/dist/components/Spinner/Spinner.variants.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.cjs +1 -1
- package/dist/components/SplitLayout/SplitLayout.cjs.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.d.ts.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.js +1 -1
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/Stack/Stack.cjs +1 -1
- package/dist/components/Stack/Stack.cjs.map +1 -1
- package/dist/components/Stack/Stack.js.map +1 -1
- package/dist/components/Stepper/Stepper.cjs +1 -1
- package/dist/components/Stepper/Stepper.cjs.map +1 -1
- package/dist/components/Stepper/Stepper.context.cjs +1 -1
- package/dist/components/Stepper/Stepper.context.cjs.map +1 -1
- package/dist/components/Stepper/Stepper.context.js +1 -1
- package/dist/components/Stepper/Stepper.context.js.map +1 -1
- package/dist/components/Stepper/Stepper.d.ts.map +1 -1
- package/dist/components/Stepper/Stepper.js +1 -1
- package/dist/components/Stepper/Stepper.js.map +1 -1
- package/dist/components/Stepper/StepperContent.cjs +1 -1
- package/dist/components/Stepper/StepperContent.cjs.map +1 -1
- package/dist/components/Stepper/StepperContent.js.map +1 -1
- package/dist/components/Stepper/StepperDescription.cjs +1 -1
- package/dist/components/Stepper/StepperDescription.cjs.map +1 -1
- package/dist/components/Stepper/StepperDescription.js.map +1 -1
- package/dist/components/Stepper/StepperIndicator.cjs +1 -1
- package/dist/components/Stepper/StepperIndicator.cjs.map +1 -1
- package/dist/components/Stepper/StepperIndicator.js.map +1 -1
- package/dist/components/Stepper/StepperItem.cjs +1 -1
- package/dist/components/Stepper/StepperItem.cjs.map +1 -1
- package/dist/components/Stepper/StepperItem.js.map +1 -1
- package/dist/components/Stepper/StepperTitle.cjs +1 -1
- package/dist/components/Stepper/StepperTitle.cjs.map +1 -1
- package/dist/components/Stepper/StepperTitle.js.map +1 -1
- package/dist/components/Switch/Switch.cjs +1 -1
- package/dist/components/Switch/Switch.cjs.map +1 -1
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Switch/Switch.variants.cjs +1 -1
- package/dist/components/Switch/Switch.variants.cjs.map +1 -1
- package/dist/components/Switch/Switch.variants.js.map +1 -1
- package/dist/components/Table/Table.cjs +1 -1
- package/dist/components/Table/Table.cjs.map +1 -1
- package/dist/components/Table/Table.context.cjs +1 -1
- package/dist/components/Table/Table.context.cjs.map +1 -1
- package/dist/components/Table/Table.context.js +1 -1
- package/dist/components/Table/Table.context.js.map +1 -1
- package/dist/components/Table/Table.js.map +1 -1
- package/dist/components/Table/Table.variants.cjs +1 -1
- package/dist/components/Table/Table.variants.cjs.map +1 -1
- package/dist/components/Table/Table.variants.js.map +1 -1
- package/dist/components/Table/TableBody.cjs +1 -1
- package/dist/components/Table/TableBody.cjs.map +1 -1
- package/dist/components/Table/TableBody.js.map +1 -1
- package/dist/components/Table/TableCell.cjs +1 -1
- package/dist/components/Table/TableCell.cjs.map +1 -1
- package/dist/components/Table/TableCell.js.map +1 -1
- package/dist/components/Table/TableFooter.cjs +1 -1
- package/dist/components/Table/TableFooter.cjs.map +1 -1
- package/dist/components/Table/TableFooter.js.map +1 -1
- package/dist/components/Table/TableHead.cjs +1 -1
- package/dist/components/Table/TableHead.cjs.map +1 -1
- package/dist/components/Table/TableHead.js.map +1 -1
- package/dist/components/Table/TableHeader.cjs +1 -1
- package/dist/components/Table/TableHeader.cjs.map +1 -1
- package/dist/components/Table/TableHeader.js.map +1 -1
- package/dist/components/Table/TableRow.cjs +1 -1
- package/dist/components/Table/TableRow.cjs.map +1 -1
- package/dist/components/Table/TableRow.js.map +1 -1
- package/dist/components/Tabs/Tabs.cjs +1 -1
- package/dist/components/Tabs/Tabs.cjs.map +1 -1
- package/dist/components/Tabs/Tabs.context.cjs +1 -1
- package/dist/components/Tabs/Tabs.context.cjs.map +1 -1
- package/dist/components/Tabs/Tabs.context.js +1 -1
- package/dist/components/Tabs/Tabs.context.js.map +1 -1
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/Tabs/Tabs.variants.cjs +1 -1
- package/dist/components/Tabs/Tabs.variants.cjs.map +1 -1
- package/dist/components/Tabs/Tabs.variants.js.map +1 -1
- package/dist/components/Tabs/TabsContent.cjs +1 -1
- package/dist/components/Tabs/TabsContent.cjs.map +1 -1
- package/dist/components/Tabs/TabsContent.js.map +1 -1
- package/dist/components/Tabs/TabsList.cjs +1 -1
- package/dist/components/Tabs/TabsList.cjs.map +1 -1
- package/dist/components/Tabs/TabsList.js.map +1 -1
- package/dist/components/Tabs/TabsTrigger.cjs +1 -1
- package/dist/components/Tabs/TabsTrigger.cjs.map +1 -1
- package/dist/components/Tabs/TabsTrigger.js.map +1 -1
- package/dist/components/Tag/Tag.cjs +1 -1
- package/dist/components/Tag/Tag.cjs.map +1 -1
- package/dist/components/Tag/Tag.js.map +1 -1
- package/dist/components/Tag/Tag.variants.cjs +1 -1
- package/dist/components/Tag/Tag.variants.cjs.map +1 -1
- package/dist/components/Tag/Tag.variants.js.map +1 -1
- package/dist/components/Text/Text.cjs +1 -1
- package/dist/components/Text/Text.cjs.map +1 -1
- package/dist/components/Text/Text.js.map +1 -1
- package/dist/components/Text/Text.variants.cjs +1 -1
- package/dist/components/Text/Text.variants.cjs.map +1 -1
- package/dist/components/Text/Text.variants.js.map +1 -1
- package/dist/components/Textarea/Textarea.cjs +1 -1
- package/dist/components/Textarea/Textarea.cjs.map +1 -1
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Textarea/Textarea.variants.cjs +1 -1
- package/dist/components/Textarea/Textarea.variants.cjs.map +1 -1
- package/dist/components/Textarea/Textarea.variants.js.map +1 -1
- package/dist/components/Timeline/Timeline.cjs +1 -1
- package/dist/components/Timeline/Timeline.cjs.map +1 -1
- package/dist/components/Timeline/Timeline.js.map +1 -1
- package/dist/components/Timeline/Timeline.variants.cjs +1 -1
- package/dist/components/Timeline/Timeline.variants.cjs.map +1 -1
- package/dist/components/Timeline/Timeline.variants.js.map +1 -1
- package/dist/components/Timeline/TimelineItem.cjs +1 -1
- package/dist/components/Timeline/TimelineItem.cjs.map +1 -1
- package/dist/components/Timeline/TimelineItem.js.map +1 -1
- package/dist/components/Toast/Toast.cjs +1 -1
- package/dist/components/Toast/Toast.cjs.map +1 -1
- package/dist/components/Toast/Toast.js.map +1 -1
- package/dist/components/Toast/Toast.variants.cjs +1 -1
- package/dist/components/Toast/Toast.variants.cjs.map +1 -1
- package/dist/components/Toast/Toast.variants.js.map +1 -1
- package/dist/components/Toast/Toaster.cjs +1 -1
- package/dist/components/Toast/Toaster.cjs.map +1 -1
- package/dist/components/Toast/Toaster.js.map +1 -1
- package/dist/components/Toast/toastStore.cjs.map +1 -1
- package/dist/components/Toast/toastStore.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.cjs +1 -1
- package/dist/components/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/components/Tooltip/Tooltip.context.cjs +1 -1
- package/dist/components/Tooltip/Tooltip.context.cjs.map +1 -1
- package/dist/components/Tooltip/Tooltip.context.js +1 -1
- package/dist/components/Tooltip/Tooltip.context.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Tooltip/TooltipContent.cjs +1 -1
- package/dist/components/Tooltip/TooltipContent.cjs.map +1 -1
- package/dist/components/Tooltip/TooltipContent.js.map +1 -1
- package/dist/components/Tooltip/TooltipTrigger.cjs +1 -1
- package/dist/components/Tooltip/TooltipTrigger.cjs.map +1 -1
- package/dist/components/Tooltip/TooltipTrigger.js.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.cjs +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.cjs.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/hooks/use-controllable-state.cjs +1 -1
- package/dist/hooks/use-controllable-state.cjs.map +1 -1
- package/dist/hooks/use-controllable-state.js.map +1 -1
- package/dist/hooks/use-escape-key.cjs +1 -1
- package/dist/hooks/use-escape-key.cjs.map +1 -1
- package/dist/hooks/use-escape-key.js.map +1 -1
- package/dist/hooks/use-focus-first-interactive.cjs +1 -1
- package/dist/hooks/use-focus-first-interactive.cjs.map +1 -1
- package/dist/hooks/use-focus-first-interactive.js.map +1 -1
- package/dist/hooks/use-focus-trap.cjs +1 -1
- package/dist/hooks/use-focus-trap.cjs.map +1 -1
- package/dist/hooks/use-focus-trap.js.map +1 -1
- package/dist/hooks/use-form-field-props.cjs +1 -1
- package/dist/hooks/use-form-field-props.cjs.map +1 -1
- package/dist/hooks/use-form-field-props.js.map +1 -1
- package/dist/hooks/use-media-query.cjs +1 -1
- package/dist/hooks/use-media-query.cjs.map +1 -1
- package/dist/hooks/use-media-query.d.ts.map +1 -1
- package/dist/hooks/use-media-query.js +5 -10
- package/dist/hooks/use-media-query.js.map +1 -1
- package/dist/hooks/use-menu-navigation.cjs +1 -1
- package/dist/hooks/use-menu-navigation.cjs.map +1 -1
- package/dist/hooks/use-menu-navigation.js.map +1 -1
- package/dist/hooks/use-modal-title-warning.cjs +1 -1
- package/dist/hooks/use-modal-title-warning.cjs.map +1 -1
- package/dist/hooks/use-modal-title-warning.js.map +1 -1
- package/dist/hooks/use-option-registry.cjs +1 -1
- package/dist/hooks/use-option-registry.cjs.map +1 -1
- package/dist/hooks/use-option-registry.js.map +1 -1
- package/dist/hooks/use-scroll-lock.cjs +1 -1
- package/dist/hooks/use-scroll-lock.cjs.map +1 -1
- package/dist/hooks/use-scroll-lock.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.cjs +1 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +1 -1
- package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js.map +1 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs +1 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +1 -1
- package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js.map +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.cjs +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js +4 -4
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.js.map +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.cjs +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +1 -1
- package/dist/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js.map +1 -1
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs +1 -1
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.cjs.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js.map +1 -1
- package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js.map +1 -1
- package/dist/node_modules/class-variance-authority/dist/index.cjs +1 -1
- package/dist/node_modules/class-variance-authority/dist/index.cjs.map +1 -1
- package/dist/node_modules/class-variance-authority/dist/index.js.map +1 -1
- package/dist/node_modules/clsx/dist/clsx.cjs.map +1 -1
- package/dist/node_modules/clsx/dist/clsx.js.map +1 -1
- package/dist/node_modules/tabbable/dist/index.esm.cjs.map +1 -1
- package/dist/node_modules/tabbable/dist/index.esm.js +1 -1
- package/dist/node_modules/tabbable/dist/index.esm.js.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.cjs.map +1 -1
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +211 -169
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -1
- package/dist/styles-root.css +2 -2
- package/dist/styles.css +2 -2
- package/dist/utils/cn.cjs +1 -1
- package/dist/utils/cn.cjs.map +1 -1
- package/dist/utils/cn.js.map +1 -1
- package/dist/utils/dismiss-button.cjs +1 -1
- package/dist/utils/dismiss-button.cjs.map +1 -1
- package/dist/utils/dismiss-button.js.map +1 -1
- package/dist/utils/field-base.cjs.map +1 -1
- package/dist/utils/field-base.js.map +1 -1
- package/dist/utils/get-active-element.cjs.map +1 -1
- package/dist/utils/get-active-element.js.map +1 -1
- package/dist/utils/modal-primitive.cjs +1 -1
- package/dist/utils/modal-primitive.cjs.map +1 -1
- package/dist/utils/modal-primitive.js.map +1 -1
- package/dist/utils/portal.cjs +1 -1
- package/dist/utils/portal.cjs.map +1 -1
- package/dist/utils/portal.js.map +1 -1
- package/dist/utils/responsive-maps.cjs.map +1 -1
- package/dist/utils/responsive-maps.js.map +1 -1
- package/dist/utils/responsive.cjs +1 -1
- package/dist/utils/responsive.cjs.map +1 -1
- package/dist/utils/responsive.js.map +1 -1
- package/dist/utils/roving-index.cjs.map +1 -1
- package/dist/utils/roving-index.js.map +1 -1
- package/dist/utils/scroll-into-view-safe.cjs.map +1 -1
- package/dist/utils/scroll-into-view-safe.js.map +1 -1
- package/dist/utils/slot.cjs +1 -1
- package/dist/utils/slot.cjs.map +1 -1
- package/dist/utils/slot.d.ts.map +1 -1
- package/dist/utils/slot.js.map +1 -1
- package/dist/utils/variants.cjs +1 -1
- package/dist/utils/variants.cjs.map +1 -1
- package/dist/utils/variants.js.map +1 -1
- package/package.json +14 -8
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../utils/slot.cjs"),n=require("../../hooks/use-controllable-state.cjs"),r=require("../../hooks/use-option-registry.cjs"),i=require("./Select.context.cjs");let a=require("react");a=e.__toESM(a,1);let o=require("react/jsx-runtime");function s({ref:e,children:s,value:c,defaultValue:l,onValueChange:u,open:d,defaultOpen:f=!1,onOpenChange:p,disabled:m=!1,name:h}){let[g,_]=n.useControllableState(c,l,u),[v,y]=n.useControllableState(d,f,p),[b,x]=a.useState(void 0),S=r.useOptionRegistry(),C=a.useRef(null),w=`${a.useId()}-listbox`,T=a.useCallback(e=>{y(e),e||x(void 0)},[y]);return a.useEffect(()=>{if(!v)return;let e=e=>{C.current&&!C.current.contains(e.target)&&T(!1)};return document.addEventListener(`mousedown`,e),()=>{document.removeEventListener(`mousedown`,e)}},[v,T]),(0,o.jsx)(i.SelectContext,{value:a.useMemo(()=>(S.registryVersion,{open:v,value:g,highlightedValue:b,disabled:m,listboxId:w,onOpenChange:T,onValueChange:_,onHighlightChange:x,registerOption:S.registerOption,unregisterOption:S.unregisterOption,getOptions:S.getOptions,getOptionLabel:S.getOptionLabel,getOptionRef:S.getOptionRef,isOptionDisabled:S.isOptionDisabled,registerDisabledOption:S.registerDisabledOption}),[v,g,b,m,w,T,_,S]),children:(0,o.jsxs)(`div`,{ref:t.composeRefs(e,C),"data-slot":`root`,className:`relative inline-block w-full`,children:[s,h!==void 0&&(0,o.jsx)(`input`,{type:`hidden`,name:h,value:g??``})]})})}s.displayName=`Select`,exports.Select=s;
|
|
2
2
|
//# sourceMappingURL=Select.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.cjs","names":[],"sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { useOptionRegistry } from \"@nuka/hooks/use-option-registry\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { SelectContext } from \"@nuka/components/Select/Select.context\";\nimport type { SelectContextValue } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n children: React.ReactNode;\n value?: string | undefined;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n disabled?: boolean;\n name?: string;\n}\n\nfunction Select({\n ref,\n children,\n value: controlledValue,\n defaultValue,\n onValueChange,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n disabled = false,\n name,\n}: SelectProps) {\n const [currentValue, handleValueChange] = useControllableState(\n controlledValue,\n defaultValue,\n onValueChange,\n );\n const [currentOpen, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n const [highlightedValue, setHighlightedValue] = React.useState<\n string | undefined\n >(undefined);\n\n const registry = useOptionRegistry();\n const rootRef = React.useRef<HTMLDivElement>(null);\n\n const generatedId = React.useId();\n const listboxId = `${generatedId}-listbox`;\n\n const handleOpenChange = React.useCallback(\n (nextOpen: boolean) => {\n setOpen(nextOpen);\n if (!nextOpen) {\n setHighlightedValue(undefined);\n }\n },\n [setOpen],\n );\n\n // TODO: extract to useOutsideClick or migrate to Floating UI useDismiss\n // when SelectContent moves to Portal rendering (deferred from audit batch 2).\n // Close on outside click. Manual listener because Select uses absolute\n // positioning (ADR-013), not Floating UI. A Portal + useFloating refactor\n // would unify this with useDismiss but requires rearchitecting SelectContent.\n React.useEffect(() => {\n if (!currentOpen) return;\n\n const handleMouseDown = (e: MouseEvent) => {\n if (rootRef.current && !rootRef.current.contains(e.target as Node)) {\n handleOpenChange(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleMouseDown);\n return () => {\n document.removeEventListener(\"mousedown\", handleMouseDown);\n };\n }, [currentOpen, handleOpenChange]);\n\n const contextValue: SelectContextValue = React.useMemo(() => {\n void registry.registryVersion;\n return {\n open: currentOpen,\n value: currentValue,\n highlightedValue,\n disabled,\n listboxId,\n onOpenChange: handleOpenChange,\n onValueChange: handleValueChange,\n onHighlightChange: setHighlightedValue,\n registerOption: registry.registerOption,\n unregisterOption: registry.unregisterOption,\n getOptions: registry.getOptions,\n getOptionLabel: registry.getOptionLabel,\n getOptionRef: registry.getOptionRef,\n isOptionDisabled: registry.isOptionDisabled,\n registerDisabledOption: registry.registerDisabledOption,\n };\n }, [\n currentOpen,\n currentValue,\n highlightedValue,\n disabled,\n listboxId,\n handleOpenChange,\n handleValueChange,\n registry,\n ]);\n\n return (\n <SelectContext value={contextValue}>\n <div\n ref={composeRefs(ref, rootRef)}\n data-slot=\"root\"\n className=\"relative inline-block w-full\"\n >\n {children}\n {name !== undefined && (\n <input type=\"hidden\" name={name} value={currentValue ?? \"\"} />\n )}\n </div>\n </SelectContext>\n );\n}\n\nSelect.displayName = \"Select\";\n\nexport { Select };\n"],"mappings":"yTAqBA,SAAS,EAAO,CACd,MACA,WACA,MAAO,EACP,eACA,gBACA,KAAM,EACN,cAAc,GACd,eACA,WAAW,GACX,QACc,CACd,GAAM,CAAC,EAAc,GAAqB,EAAA,qBACxC,EACA,EACA,
|
|
1
|
+
{"version":3,"file":"Select.cjs","names":[],"sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { useOptionRegistry } from \"@nuka/hooks/use-option-registry\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { SelectContext } from \"@nuka/components/Select/Select.context\";\nimport type { SelectContextValue } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n children: React.ReactNode;\n value?: string | undefined;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n disabled?: boolean;\n name?: string;\n}\n\nfunction Select({\n ref,\n children,\n value: controlledValue,\n defaultValue,\n onValueChange,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n disabled = false,\n name,\n}: SelectProps) {\n const [currentValue, handleValueChange] = useControllableState(\n controlledValue,\n defaultValue,\n onValueChange,\n );\n const [currentOpen, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n const [highlightedValue, setHighlightedValue] = React.useState<\n string | undefined\n >(undefined);\n\n const registry = useOptionRegistry();\n const rootRef = React.useRef<HTMLDivElement>(null);\n\n const generatedId = React.useId();\n const listboxId = `${generatedId}-listbox`;\n\n const handleOpenChange = React.useCallback(\n (nextOpen: boolean) => {\n setOpen(nextOpen);\n if (!nextOpen) {\n setHighlightedValue(undefined);\n }\n },\n [setOpen],\n );\n\n // TODO: extract to useOutsideClick or migrate to Floating UI useDismiss\n // when SelectContent moves to Portal rendering (deferred from audit batch 2).\n // Close on outside click. Manual listener because Select uses absolute\n // positioning (ADR-013), not Floating UI. A Portal + useFloating refactor\n // would unify this with useDismiss but requires rearchitecting SelectContent.\n React.useEffect(() => {\n if (!currentOpen) return;\n\n const handleMouseDown = (e: MouseEvent) => {\n if (rootRef.current && !rootRef.current.contains(e.target as Node)) {\n handleOpenChange(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleMouseDown);\n return () => {\n document.removeEventListener(\"mousedown\", handleMouseDown);\n };\n }, [currentOpen, handleOpenChange]);\n\n const contextValue: SelectContextValue = React.useMemo(() => {\n void registry.registryVersion;\n return {\n open: currentOpen,\n value: currentValue,\n highlightedValue,\n disabled,\n listboxId,\n onOpenChange: handleOpenChange,\n onValueChange: handleValueChange,\n onHighlightChange: setHighlightedValue,\n registerOption: registry.registerOption,\n unregisterOption: registry.unregisterOption,\n getOptions: registry.getOptions,\n getOptionLabel: registry.getOptionLabel,\n getOptionRef: registry.getOptionRef,\n isOptionDisabled: registry.isOptionDisabled,\n registerDisabledOption: registry.registerDisabledOption,\n };\n }, [\n currentOpen,\n currentValue,\n highlightedValue,\n disabled,\n listboxId,\n handleOpenChange,\n handleValueChange,\n registry,\n ]);\n\n return (\n <SelectContext value={contextValue}>\n <div\n ref={composeRefs(ref, rootRef)}\n data-slot=\"root\"\n className=\"relative inline-block w-full\"\n >\n {children}\n {name !== undefined && (\n <input type=\"hidden\" name={name} value={currentValue ?? \"\"} />\n )}\n </div>\n </SelectContext>\n );\n}\n\nSelect.displayName = \"Select\";\n\nexport { Select };\n"],"mappings":"yTAqBA,SAAS,EAAO,CACd,MACA,WACA,MAAO,EACP,eACA,gBACA,KAAM,EACN,cAAc,GACd,eACA,WAAW,GACX,QACc,CACd,GAAM,CAAC,EAAc,GAAqB,EAAA,qBACxC,EACA,EACA,CACF,EACM,CAAC,EAAa,GAAW,EAAA,qBAC7B,EACA,EACA,CACF,EACM,CAAC,EAAkB,GAAuB,EAAM,SAEpD,IAAA,EAAS,EAEL,EAAW,EAAA,kBAAkB,EAC7B,EAAU,EAAM,OAAuB,IAAI,EAG3C,EAAY,GADE,EAAM,MACL,EAAY,UAE3B,EAAmB,EAAM,YAC5B,GAAsB,CACrB,EAAQ,CAAQ,EACX,GACH,EAAoB,IAAA,EAAS,CAEjC,EACA,CAAC,CAAO,CACV,EAoDA,OA7CA,EAAM,cAAgB,CACpB,GAAI,CAAC,EAAa,OAElB,IAAM,EAAmB,GAAkB,CACrC,EAAQ,SAAW,CAAC,EAAQ,QAAQ,SAAS,EAAE,MAAc,GAC/D,EAAiB,EAAK,CAE1B,EAGA,OADA,SAAS,iBAAiB,YAAa,CAAe,MACzC,CACX,SAAS,oBAAoB,YAAa,CAAe,CAC3D,CACF,EAAG,CAAC,EAAa,CAAgB,CAAC,GAiChC,EAAA,EAAA,KAAC,EAAA,cAAD,CAAe,MA/BwB,EAAM,aAC7C,EAAc,gBACP,CACL,KAAM,EACN,MAAO,EACP,mBACA,WACA,YACA,aAAc,EACd,cAAe,EACf,kBAAmB,EACnB,eAAgB,EAAS,eACzB,iBAAkB,EAAS,iBAC3B,WAAY,EAAS,WACrB,eAAgB,EAAS,eACzB,aAAc,EAAS,aACvB,iBAAkB,EAAS,iBAC3B,uBAAwB,EAAS,sBACnC,GACC,CACD,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACF,CAGwB,YACpB,EAAA,EAAA,MAAC,MAAD,CACE,IAAK,EAAA,YAAY,EAAK,CAAO,EAC7B,YAAU,OACV,UAAU,wCAHZ,CAKG,EACA,IAAS,IAAA,KACR,EAAA,EAAA,KAAC,QAAD,CAAO,KAAK,SAAe,OAAM,MAAO,GAAgB,EAAK,CAAA,CAE5D,GACQ,CAAA,CAEnB,CAEA,EAAO,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs");let t=require("react");t=e.__toESM(t,1);var n=t.createContext(void 0);function r(){let e=t.use(n);if(e===void 0)throw Error(`useSelect must be used within a <Select> component`);return e}exports.SelectContext=n,exports.useSelect=r;
|
|
2
2
|
//# sourceMappingURL=Select.context.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.context.cjs","names":[],"sources":["../../../src/components/Select/Select.context.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\n\nexport interface SelectContextValue {\n open: boolean;\n value: string | undefined;\n highlightedValue: string | undefined;\n disabled: boolean;\n listboxId: string;\n onOpenChange: (open: boolean) => void;\n onValueChange: (value: string) => void;\n onHighlightChange: (value: string | undefined) => void;\n registerOption: (\n value: string,\n label: string,\n ref: HTMLElement | null,\n ) => void;\n unregisterOption: (value: string) => void;\n getOptions: () => string[];\n getOptionLabel: (value: string) => string | undefined;\n getOptionRef: (value: string) => HTMLElement | null | undefined;\n isOptionDisabled: (value: string) => boolean;\n registerDisabledOption: (value: string, disabled: boolean) => void;\n}\n\nconst SelectContext = React.createContext<SelectContextValue | undefined>(\n undefined,\n);\n\nexport function useSelect(): SelectContextValue {\n const context = React.
|
|
1
|
+
{"version":3,"file":"Select.context.cjs","names":[],"sources":["../../../src/components/Select/Select.context.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\n\nexport interface SelectContextValue {\n open: boolean;\n value: string | undefined;\n highlightedValue: string | undefined;\n disabled: boolean;\n listboxId: string;\n onOpenChange: (open: boolean) => void;\n onValueChange: (value: string) => void;\n onHighlightChange: (value: string | undefined) => void;\n registerOption: (\n value: string,\n label: string,\n ref: HTMLElement | null,\n ) => void;\n unregisterOption: (value: string) => void;\n getOptions: () => string[];\n getOptionLabel: (value: string) => string | undefined;\n getOptionRef: (value: string) => HTMLElement | null | undefined;\n isOptionDisabled: (value: string) => boolean;\n registerDisabledOption: (value: string, disabled: boolean) => void;\n}\n\nconst SelectContext = React.createContext<SelectContextValue | undefined>(\n undefined,\n);\n\nexport function useSelect(): SelectContextValue {\n const context = React.use(SelectContext);\n if (context === undefined) {\n throw new Error(\"useSelect must be used within a <Select> component\");\n }\n return context;\n}\n\nexport { SelectContext };\n"],"mappings":"6GAyBA,IAAM,EAAgB,EAAM,cAC1B,IAAA,EACF,EAEA,SAAgB,GAAgC,CAC9C,IAAM,EAAU,EAAM,IAAI,CAAa,EACvC,GAAI,IAAY,IAAA,GACd,MAAU,MAAM,oDAAoD,EAEtE,OAAO,CACT"}
|
|
@@ -3,7 +3,7 @@ import * as e from "react";
|
|
|
3
3
|
//#region src/components/Select/Select.context.tsx
|
|
4
4
|
var t = e.createContext(void 0);
|
|
5
5
|
function n() {
|
|
6
|
-
let n = e.
|
|
6
|
+
let n = e.use(t);
|
|
7
7
|
if (n === void 0) throw Error("useSelect must be used within a <Select> component");
|
|
8
8
|
return n;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.context.js","names":[],"sources":["../../../src/components/Select/Select.context.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\n\nexport interface SelectContextValue {\n open: boolean;\n value: string | undefined;\n highlightedValue: string | undefined;\n disabled: boolean;\n listboxId: string;\n onOpenChange: (open: boolean) => void;\n onValueChange: (value: string) => void;\n onHighlightChange: (value: string | undefined) => void;\n registerOption: (\n value: string,\n label: string,\n ref: HTMLElement | null,\n ) => void;\n unregisterOption: (value: string) => void;\n getOptions: () => string[];\n getOptionLabel: (value: string) => string | undefined;\n getOptionRef: (value: string) => HTMLElement | null | undefined;\n isOptionDisabled: (value: string) => boolean;\n registerDisabledOption: (value: string, disabled: boolean) => void;\n}\n\nconst SelectContext = React.createContext<SelectContextValue | undefined>(\n undefined,\n);\n\nexport function useSelect(): SelectContextValue {\n const context = React.
|
|
1
|
+
{"version":3,"file":"Select.context.js","names":[],"sources":["../../../src/components/Select/Select.context.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\n\nexport interface SelectContextValue {\n open: boolean;\n value: string | undefined;\n highlightedValue: string | undefined;\n disabled: boolean;\n listboxId: string;\n onOpenChange: (open: boolean) => void;\n onValueChange: (value: string) => void;\n onHighlightChange: (value: string | undefined) => void;\n registerOption: (\n value: string,\n label: string,\n ref: HTMLElement | null,\n ) => void;\n unregisterOption: (value: string) => void;\n getOptions: () => string[];\n getOptionLabel: (value: string) => string | undefined;\n getOptionRef: (value: string) => HTMLElement | null | undefined;\n isOptionDisabled: (value: string) => boolean;\n registerDisabledOption: (value: string, disabled: boolean) => void;\n}\n\nconst SelectContext = React.createContext<SelectContextValue | undefined>(\n undefined,\n);\n\nexport function useSelect(): SelectContextValue {\n const context = React.use(SelectContext);\n if (context === undefined) {\n throw new Error(\"useSelect must be used within a <Select> component\");\n }\n return context;\n}\n\nexport { SelectContext };\n"],"mappings":";;;AAyBA,IAAM,IAAgB,EAAM,cAC1B,KAAA,CACF;AAEA,SAAgB,IAAgC;CAC9C,IAAM,IAAU,EAAM,IAAI,CAAa;CACvC,IAAI,MAAY,KAAA,GACd,MAAU,MAAM,oDAAoD;CAEtE,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","names":[],"sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { useOptionRegistry } from \"@nuka/hooks/use-option-registry\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { SelectContext } from \"@nuka/components/Select/Select.context\";\nimport type { SelectContextValue } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n children: React.ReactNode;\n value?: string | undefined;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n disabled?: boolean;\n name?: string;\n}\n\nfunction Select({\n ref,\n children,\n value: controlledValue,\n defaultValue,\n onValueChange,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n disabled = false,\n name,\n}: SelectProps) {\n const [currentValue, handleValueChange] = useControllableState(\n controlledValue,\n defaultValue,\n onValueChange,\n );\n const [currentOpen, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n const [highlightedValue, setHighlightedValue] = React.useState<\n string | undefined\n >(undefined);\n\n const registry = useOptionRegistry();\n const rootRef = React.useRef<HTMLDivElement>(null);\n\n const generatedId = React.useId();\n const listboxId = `${generatedId}-listbox`;\n\n const handleOpenChange = React.useCallback(\n (nextOpen: boolean) => {\n setOpen(nextOpen);\n if (!nextOpen) {\n setHighlightedValue(undefined);\n }\n },\n [setOpen],\n );\n\n // TODO: extract to useOutsideClick or migrate to Floating UI useDismiss\n // when SelectContent moves to Portal rendering (deferred from audit batch 2).\n // Close on outside click. Manual listener because Select uses absolute\n // positioning (ADR-013), not Floating UI. A Portal + useFloating refactor\n // would unify this with useDismiss but requires rearchitecting SelectContent.\n React.useEffect(() => {\n if (!currentOpen) return;\n\n const handleMouseDown = (e: MouseEvent) => {\n if (rootRef.current && !rootRef.current.contains(e.target as Node)) {\n handleOpenChange(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleMouseDown);\n return () => {\n document.removeEventListener(\"mousedown\", handleMouseDown);\n };\n }, [currentOpen, handleOpenChange]);\n\n const contextValue: SelectContextValue = React.useMemo(() => {\n void registry.registryVersion;\n return {\n open: currentOpen,\n value: currentValue,\n highlightedValue,\n disabled,\n listboxId,\n onOpenChange: handleOpenChange,\n onValueChange: handleValueChange,\n onHighlightChange: setHighlightedValue,\n registerOption: registry.registerOption,\n unregisterOption: registry.unregisterOption,\n getOptions: registry.getOptions,\n getOptionLabel: registry.getOptionLabel,\n getOptionRef: registry.getOptionRef,\n isOptionDisabled: registry.isOptionDisabled,\n registerDisabledOption: registry.registerDisabledOption,\n };\n }, [\n currentOpen,\n currentValue,\n highlightedValue,\n disabled,\n listboxId,\n handleOpenChange,\n handleValueChange,\n registry,\n ]);\n\n return (\n <SelectContext value={contextValue}>\n <div\n ref={composeRefs(ref, rootRef)}\n data-slot=\"root\"\n className=\"relative inline-block w-full\"\n >\n {children}\n {name !== undefined && (\n <input type=\"hidden\" name={name} value={currentValue ?? \"\"} />\n )}\n </div>\n </SelectContext>\n );\n}\n\nSelect.displayName = \"Select\";\n\nexport { Select };\n"],"mappings":";;;;;;;;AAqBA,SAAS,EAAO,EACd,QACA,aACA,OAAO,GACP,iBACA,kBACA,MAAM,GACN,iBAAc,IACd,iBACA,cAAW,IACX,WACc;CACd,IAAM,CAAC,GAAc,KAAqB,EACxC,GACA,GACA,
|
|
1
|
+
{"version":3,"file":"Select.js","names":[],"sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { useControllableState } from \"@nuka/hooks/use-controllable-state\";\nimport { useOptionRegistry } from \"@nuka/hooks/use-option-registry\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { SelectContext } from \"@nuka/components/Select/Select.context\";\nimport type { SelectContextValue } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n children: React.ReactNode;\n value?: string | undefined;\n defaultValue?: string;\n onValueChange?: (value: string) => void;\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n disabled?: boolean;\n name?: string;\n}\n\nfunction Select({\n ref,\n children,\n value: controlledValue,\n defaultValue,\n onValueChange,\n open: controlledOpen,\n defaultOpen = false,\n onOpenChange,\n disabled = false,\n name,\n}: SelectProps) {\n const [currentValue, handleValueChange] = useControllableState(\n controlledValue,\n defaultValue,\n onValueChange,\n );\n const [currentOpen, setOpen] = useControllableState(\n controlledOpen,\n defaultOpen,\n onOpenChange,\n );\n const [highlightedValue, setHighlightedValue] = React.useState<\n string | undefined\n >(undefined);\n\n const registry = useOptionRegistry();\n const rootRef = React.useRef<HTMLDivElement>(null);\n\n const generatedId = React.useId();\n const listboxId = `${generatedId}-listbox`;\n\n const handleOpenChange = React.useCallback(\n (nextOpen: boolean) => {\n setOpen(nextOpen);\n if (!nextOpen) {\n setHighlightedValue(undefined);\n }\n },\n [setOpen],\n );\n\n // TODO: extract to useOutsideClick or migrate to Floating UI useDismiss\n // when SelectContent moves to Portal rendering (deferred from audit batch 2).\n // Close on outside click. Manual listener because Select uses absolute\n // positioning (ADR-013), not Floating UI. A Portal + useFloating refactor\n // would unify this with useDismiss but requires rearchitecting SelectContent.\n React.useEffect(() => {\n if (!currentOpen) return;\n\n const handleMouseDown = (e: MouseEvent) => {\n if (rootRef.current && !rootRef.current.contains(e.target as Node)) {\n handleOpenChange(false);\n }\n };\n\n document.addEventListener(\"mousedown\", handleMouseDown);\n return () => {\n document.removeEventListener(\"mousedown\", handleMouseDown);\n };\n }, [currentOpen, handleOpenChange]);\n\n const contextValue: SelectContextValue = React.useMemo(() => {\n void registry.registryVersion;\n return {\n open: currentOpen,\n value: currentValue,\n highlightedValue,\n disabled,\n listboxId,\n onOpenChange: handleOpenChange,\n onValueChange: handleValueChange,\n onHighlightChange: setHighlightedValue,\n registerOption: registry.registerOption,\n unregisterOption: registry.unregisterOption,\n getOptions: registry.getOptions,\n getOptionLabel: registry.getOptionLabel,\n getOptionRef: registry.getOptionRef,\n isOptionDisabled: registry.isOptionDisabled,\n registerDisabledOption: registry.registerDisabledOption,\n };\n }, [\n currentOpen,\n currentValue,\n highlightedValue,\n disabled,\n listboxId,\n handleOpenChange,\n handleValueChange,\n registry,\n ]);\n\n return (\n <SelectContext value={contextValue}>\n <div\n ref={composeRefs(ref, rootRef)}\n data-slot=\"root\"\n className=\"relative inline-block w-full\"\n >\n {children}\n {name !== undefined && (\n <input type=\"hidden\" name={name} value={currentValue ?? \"\"} />\n )}\n </div>\n </SelectContext>\n );\n}\n\nSelect.displayName = \"Select\";\n\nexport { Select };\n"],"mappings":";;;;;;;;AAqBA,SAAS,EAAO,EACd,QACA,aACA,OAAO,GACP,iBACA,kBACA,MAAM,GACN,iBAAc,IACd,iBACA,cAAW,IACX,WACc;CACd,IAAM,CAAC,GAAc,KAAqB,EACxC,GACA,GACA,CACF,GACM,CAAC,GAAa,KAAW,EAC7B,GACA,GACA,CACF,GACM,CAAC,GAAkB,KAAuB,EAAM,SAEpD,KAAA,CAAS,GAEL,IAAW,EAAkB,GAC7B,IAAU,EAAM,OAAuB,IAAI,GAG3C,IAAY,GADE,EAAM,MACL,EAAY,WAE3B,IAAmB,EAAM,aAC5B,MAAsB;EAErB,AADA,EAAQ,CAAQ,GACX,KACH,EAAoB,KAAA,CAAS;CAEjC,GACA,CAAC,CAAO,CACV;CAoDA,OA7CA,EAAM,gBAAgB;EACpB,IAAI,CAAC,GAAa;EAElB,IAAM,KAAmB,MAAkB;GACzC,AAAI,EAAQ,WAAW,CAAC,EAAQ,QAAQ,SAAS,EAAE,MAAc,KAC/D,EAAiB,EAAK;EAE1B;EAGA,OADA,SAAS,iBAAiB,aAAa,CAAe,SACzC;GACX,SAAS,oBAAoB,aAAa,CAAe;EAC3D;CACF,GAAG,CAAC,GAAa,CAAgB,CAAC,GAiChC,kBAAC,GAAD;EAAe,OA/BwB,EAAM,eAC7C,EAAc,iBACP;GACL,MAAM;GACN,OAAO;GACP;GACA;GACA;GACA,cAAc;GACd,eAAe;GACf,mBAAmB;GACnB,gBAAgB,EAAS;GACzB,kBAAkB,EAAS;GAC3B,YAAY,EAAS;GACrB,gBAAgB,EAAS;GACzB,cAAc,EAAS;GACvB,kBAAkB,EAAS;GAC3B,wBAAwB,EAAS;EACnC,IACC;GACD;GACA;GACA;GACA;GACA;GACA;GACA;GACA;EACF,CAGwB;YACpB,kBAAC,OAAD;GACE,KAAK,EAAY,GAAK,CAAO;GAC7B,aAAU;GACV,WAAU;aAHZ,CAKG,GACA,MAAS,KAAA,KACR,kBAAC,SAAD;IAAO,MAAK;IAAe;IAAM,OAAO,KAAgB;GAAK,CAAA,CAE5D;;CACQ,CAAA;AAEnB;AAEA,EAAO,cAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../utils/cn.cjs"),n=require("./Select.context.cjs");let r=require("react");r=e.__toESM(r,1);let i=require("react/jsx-runtime");function a({ref:e,className:r,children:a}){let o=n.useSelect();return(0,i.jsx)(`div`,{ref:e,id:o.listboxId,"data-slot":`content`,role:`listbox`,hidden:!o.open,className:t.cn(`absolute left-0 w-full`,`z-(--nuka-z-dropdown)`,`bg-(--nuka-bg-base)`,`border border-(--nuka-border-base)`,`rounded-(--radius-md)`,`shadow-md`,`py-(--space-1)`,`mt-(--space-1)`,`max-h-60 overflow-y-auto`,r),children:a})}a.displayName=`SelectContent`,exports.SelectContent=a;
|
|
2
2
|
//# sourceMappingURL=SelectContent.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectContent.cjs","names":[],"sources":["../../../src/components/Select/SelectContent.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectContentProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n className?: string;\n children: React.ReactNode;\n}\n\n// TODO: migrate to Portal + Floating UI positioning to avoid overflow/stacking\n// context clipping (deferred from audit batch 2).\nfunction SelectContent({ ref, className, children }: SelectContentProps) {\n const ctx = useSelect();\n\n return (\n <div\n ref={ref}\n id={ctx.listboxId}\n data-slot=\"content\"\n role=\"listbox\"\n hidden={!ctx.open}\n className={cn(\n \"absolute left-0 w-full\",\n \"z-(--nuka-z-dropdown)\",\n \"bg-(--nuka-bg-base)\",\n \"border border-(--nuka-border-base)\",\n \"rounded-(--radius-md)\",\n \"shadow-md\",\n \"py-(--space-1)\",\n \"mt-(--space-1)\",\n \"max-h-60 overflow-y-auto\",\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nSelectContent.displayName = \"SelectContent\";\n\nexport { SelectContent };\n"],"mappings":"kNAaA,SAAS,EAAc,CAAE,MAAK,YAAW,YAAgC,CACvE,IAAM,EAAM,EAAA,
|
|
1
|
+
{"version":3,"file":"SelectContent.cjs","names":[],"sources":["../../../src/components/Select/SelectContent.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectContentProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n className?: string;\n children: React.ReactNode;\n}\n\n// TODO: migrate to Portal + Floating UI positioning to avoid overflow/stacking\n// context clipping (deferred from audit batch 2).\nfunction SelectContent({ ref, className, children }: SelectContentProps) {\n const ctx = useSelect();\n\n return (\n <div\n ref={ref}\n id={ctx.listboxId}\n data-slot=\"content\"\n role=\"listbox\"\n hidden={!ctx.open}\n className={cn(\n \"absolute left-0 w-full\",\n \"z-(--nuka-z-dropdown)\",\n \"bg-(--nuka-bg-base)\",\n \"border border-(--nuka-border-base)\",\n \"rounded-(--radius-md)\",\n \"shadow-md\",\n \"py-(--space-1)\",\n \"mt-(--space-1)\",\n \"max-h-60 overflow-y-auto\",\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nSelectContent.displayName = \"SelectContent\";\n\nexport { SelectContent };\n"],"mappings":"kNAaA,SAAS,EAAc,CAAE,MAAK,YAAW,YAAgC,CACvE,IAAM,EAAM,EAAA,UAAU,EAEtB,OACE,EAAA,EAAA,KAAC,MAAD,CACO,MACL,GAAI,EAAI,UACR,YAAU,UACV,KAAK,UACL,OAAQ,CAAC,EAAI,KACb,UAAW,EAAA,GACT,yBACA,wBACA,sBACA,qCACA,wBACA,YACA,iBACA,iBACA,2BACA,CACF,EAEC,UACE,CAAA,CAET,CAEA,EAAc,YAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectContent.js","names":[],"sources":["../../../src/components/Select/SelectContent.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectContentProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n className?: string;\n children: React.ReactNode;\n}\n\n// TODO: migrate to Portal + Floating UI positioning to avoid overflow/stacking\n// context clipping (deferred from audit batch 2).\nfunction SelectContent({ ref, className, children }: SelectContentProps) {\n const ctx = useSelect();\n\n return (\n <div\n ref={ref}\n id={ctx.listboxId}\n data-slot=\"content\"\n role=\"listbox\"\n hidden={!ctx.open}\n className={cn(\n \"absolute left-0 w-full\",\n \"z-(--nuka-z-dropdown)\",\n \"bg-(--nuka-bg-base)\",\n \"border border-(--nuka-border-base)\",\n \"rounded-(--radius-md)\",\n \"shadow-md\",\n \"py-(--space-1)\",\n \"mt-(--space-1)\",\n \"max-h-60 overflow-y-auto\",\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nSelectContent.displayName = \"SelectContent\";\n\nexport { SelectContent };\n"],"mappings":";;;;;;AAaA,SAAS,EAAc,EAAE,QAAK,cAAW,eAAgC;CACvE,IAAM,IAAM,
|
|
1
|
+
{"version":3,"file":"SelectContent.js","names":[],"sources":["../../../src/components/Select/SelectContent.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectContentProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n className?: string;\n children: React.ReactNode;\n}\n\n// TODO: migrate to Portal + Floating UI positioning to avoid overflow/stacking\n// context clipping (deferred from audit batch 2).\nfunction SelectContent({ ref, className, children }: SelectContentProps) {\n const ctx = useSelect();\n\n return (\n <div\n ref={ref}\n id={ctx.listboxId}\n data-slot=\"content\"\n role=\"listbox\"\n hidden={!ctx.open}\n className={cn(\n \"absolute left-0 w-full\",\n \"z-(--nuka-z-dropdown)\",\n \"bg-(--nuka-bg-base)\",\n \"border border-(--nuka-border-base)\",\n \"rounded-(--radius-md)\",\n \"shadow-md\",\n \"py-(--space-1)\",\n \"mt-(--space-1)\",\n \"max-h-60 overflow-y-auto\",\n className,\n )}\n >\n {children}\n </div>\n );\n}\n\nSelectContent.displayName = \"SelectContent\";\n\nexport { SelectContent };\n"],"mappings":";;;;;;AAaA,SAAS,EAAc,EAAE,QAAK,cAAW,eAAgC;CACvE,IAAM,IAAM,EAAU;CAEtB,OACE,kBAAC,OAAD;EACO;EACL,IAAI,EAAI;EACR,aAAU;EACV,MAAK;EACL,QAAQ,CAAC,EAAI;EACb,WAAW,EACT,0BACA,yBACA,uBACA,sCACA,yBACA,aACA,kBACA,kBACA,4BACA,CACF;EAEC;CACE,CAAA;AAET;AAEA,EAAc,cAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../utils/cn.cjs"),n=require("../../utils/slot.cjs"),r=require("./Select.context.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");function o(e){return typeof e==`string`?e:typeof e==`number`?String(e):``}function s({ref:e,value:s,disabled:c=!1,className:l,children:u}){let d=r.useSelect(),f=i.useRef(null),p=n.composeRefs(e,f),m=d.value===s,h=d.highlightedValue===s,g=`${d.listboxId}-option-${s}`,_=o(u);return i.useLayoutEffect(()=>(d.registerOption(s,_,f.current),()=>{d.unregisterOption(s)}),[]),i.useEffect(()=>{d.registerDisabledOption(s,c)},[d,s,c]),(0,a.jsx)(`div`,{ref:p,id:g,"data-slot":`item`,role:`option`,"aria-selected":m,"aria-disabled":c||void 0,className:t.cn(`px-(--space-3) py-(--space-2)`,`text-sm`,`cursor-pointer`,`select-none`,`text-(--nuka-text-base)`,c&&`opacity-50 cursor-not-allowed pointer-events-none`,m&&!h&&`bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)`,h&&`bg-(--nuka-bg-muted) outline-none`,!m&&!h&&!c&&`hover:bg-(--nuka-bg-muted)`,l),onClick:()=>{c||(d.onValueChange(s),d.onOpenChange(!1))},children:u})}s.displayName=`SelectItem`,exports.SelectItem=s;
|
|
2
2
|
//# sourceMappingURL=SelectItem.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItem.cjs","names":[],"sources":["../../../src/components/Select/SelectItem.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectItemProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n value: string;\n disabled?: boolean;\n className?: string;\n children: React.ReactNode;\n}\n\nfunction getLabel(children: React.ReactNode): string {\n if (typeof children === \"string\") return children;\n if (typeof children === \"number\") return String(children);\n return \"\";\n}\n\nfunction SelectItem({\n ref,\n value,\n disabled = false,\n className,\n children,\n}: SelectItemProps) {\n const ctx = useSelect();\n const internalRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, internalRef);\n\n const isSelected = ctx.value === value;\n const isHighlighted = ctx.highlightedValue === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n data-slot=\"item\"\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isHighlighted &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isHighlighted && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected &&\n !isHighlighted &&\n !disabled &&\n \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nSelectItem.displayName = \"SelectItem\";\n\nexport { SelectItem };\n"],"mappings":"oPAcA,SAAS,EAAS,EAAmC,CAGnD,OAFI,OAAO,GAAa,SAAiB,EACrC,OAAO,GAAa,SAAiB,OAAO,
|
|
1
|
+
{"version":3,"file":"SelectItem.cjs","names":[],"sources":["../../../src/components/Select/SelectItem.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectItemProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n value: string;\n disabled?: boolean;\n className?: string;\n children: React.ReactNode;\n}\n\nfunction getLabel(children: React.ReactNode): string {\n if (typeof children === \"string\") return children;\n if (typeof children === \"number\") return String(children);\n return \"\";\n}\n\nfunction SelectItem({\n ref,\n value,\n disabled = false,\n className,\n children,\n}: SelectItemProps) {\n const ctx = useSelect();\n const internalRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, internalRef);\n\n const isSelected = ctx.value === value;\n const isHighlighted = ctx.highlightedValue === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps, @eslint-react/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n data-slot=\"item\"\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isHighlighted &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isHighlighted && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected &&\n !isHighlighted &&\n !disabled &&\n \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nSelectItem.displayName = \"SelectItem\";\n\nexport { SelectItem };\n"],"mappings":"oPAcA,SAAS,EAAS,EAAmC,CAGnD,OAFI,OAAO,GAAa,SAAiB,EACrC,OAAO,GAAa,SAAiB,OAAO,CAAQ,EACjD,EACT,CAEA,SAAS,EAAW,CAClB,MACA,QACA,WAAW,GACX,YACA,YACkB,CAClB,IAAM,EAAM,EAAA,UAAU,EAChB,EAAc,EAAM,OAAuB,IAAI,EAC/C,EAAc,EAAA,YAAY,EAAK,CAAW,EAE1C,EAAa,EAAI,QAAU,EAC3B,EAAgB,EAAI,mBAAqB,EACzC,EAAW,GAAG,EAAI,UAAU,UAAU,IACtC,EAAQ,EAAS,CAAQ,EAoB/B,OAlBA,EAAM,qBACJ,EAAI,eAAe,EAAO,EAAO,EAAY,OAAO,MACvC,CACX,EAAI,iBAAiB,CAAK,CAC5B,GAEC,CAAC,CAAC,EAEL,EAAM,cAAgB,CACpB,EAAI,uBAAuB,EAAO,CAAQ,CAC5C,EAAG,CAAC,EAAK,EAAO,CAAQ,CAAC,GASvB,EAAA,EAAA,KAAC,MAAD,CACE,IAAK,EACL,GAAI,EACJ,YAAU,OACV,KAAK,SACL,gBAAe,EACf,gBAAe,GAAY,IAAA,GAC3B,UAAW,EAAA,GACT,gCACA,UACA,iBACA,cACA,0BACA,GAAY,oDACZ,GACE,CAAC,GACD,yDACF,GAAiB,oCACjB,CAAC,GACC,CAAC,GACD,CAAC,GACD,6BACF,CACF,EACA,YA/BsB,CACpB,IACJ,EAAI,cAAc,CAAK,EACvB,EAAI,aAAa,EAAK,EACxB,EA6BK,UACE,CAAA,CAET,CAEA,EAAW,YAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectItem.js","names":[],"sources":["../../../src/components/Select/SelectItem.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectItemProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n value: string;\n disabled?: boolean;\n className?: string;\n children: React.ReactNode;\n}\n\nfunction getLabel(children: React.ReactNode): string {\n if (typeof children === \"string\") return children;\n if (typeof children === \"number\") return String(children);\n return \"\";\n}\n\nfunction SelectItem({\n ref,\n value,\n disabled = false,\n className,\n children,\n}: SelectItemProps) {\n const ctx = useSelect();\n const internalRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, internalRef);\n\n const isSelected = ctx.value === value;\n const isHighlighted = ctx.highlightedValue === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n data-slot=\"item\"\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isHighlighted &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isHighlighted && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected &&\n !isHighlighted &&\n !disabled &&\n \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nSelectItem.displayName = \"SelectItem\";\n\nexport { SelectItem };\n"],"mappings":";;;;;;;AAcA,SAAS,EAAS,GAAmC;
|
|
1
|
+
{"version":3,"file":"SelectItem.js","names":[],"sources":["../../../src/components/Select/SelectItem.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\n\nexport interface SelectItemProps {\n ref?: React.Ref<HTMLDivElement> | undefined;\n value: string;\n disabled?: boolean;\n className?: string;\n children: React.ReactNode;\n}\n\nfunction getLabel(children: React.ReactNode): string {\n if (typeof children === \"string\") return children;\n if (typeof children === \"number\") return String(children);\n return \"\";\n}\n\nfunction SelectItem({\n ref,\n value,\n disabled = false,\n className,\n children,\n}: SelectItemProps) {\n const ctx = useSelect();\n const internalRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, internalRef);\n\n const isSelected = ctx.value === value;\n const isHighlighted = ctx.highlightedValue === value;\n const optionId = `${ctx.listboxId}-option-${value}`;\n const label = getLabel(children);\n\n React.useLayoutEffect(() => {\n ctx.registerOption(value, label, internalRef.current);\n return () => {\n ctx.unregisterOption(value);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps, @eslint-react/exhaustive-deps -- register once on mount, unregister on unmount\n }, []);\n\n React.useEffect(() => {\n ctx.registerDisabledOption(value, disabled);\n }, [ctx, value, disabled]);\n\n const handleClick = () => {\n if (disabled) return;\n ctx.onValueChange(value);\n ctx.onOpenChange(false);\n };\n\n return (\n <div\n ref={composedRef}\n id={optionId}\n data-slot=\"item\"\n role=\"option\"\n aria-selected={isSelected}\n aria-disabled={disabled || undefined}\n className={cn(\n \"px-(--space-3) py-(--space-2)\",\n \"text-sm\",\n \"cursor-pointer\",\n \"select-none\",\n \"text-(--nuka-text-base)\",\n disabled && \"opacity-50 cursor-not-allowed pointer-events-none\",\n isSelected &&\n !isHighlighted &&\n \"bg-(--nuka-accent-bg-subtle) text-(--nuka-accent-text)\",\n isHighlighted && \"bg-(--nuka-bg-muted) outline-none\",\n !isSelected &&\n !isHighlighted &&\n !disabled &&\n \"hover:bg-(--nuka-bg-muted)\",\n className,\n )}\n onClick={handleClick}\n >\n {children}\n </div>\n );\n}\n\nSelectItem.displayName = \"SelectItem\";\n\nexport { SelectItem };\n"],"mappings":";;;;;;;AAcA,SAAS,EAAS,GAAmC;CAGnD,OAFI,OAAO,KAAa,WAAiB,IACrC,OAAO,KAAa,WAAiB,OAAO,CAAQ,IACjD;AACT;AAEA,SAAS,EAAW,EAClB,QACA,UACA,cAAW,IACX,cACA,eACkB;CAClB,IAAM,IAAM,EAAU,GAChB,IAAc,EAAM,OAAuB,IAAI,GAC/C,IAAc,EAAY,GAAK,CAAW,GAE1C,IAAa,EAAI,UAAU,GAC3B,IAAgB,EAAI,qBAAqB,GACzC,IAAW,GAAG,EAAI,UAAU,UAAU,KACtC,IAAQ,EAAS,CAAQ;CAoB/B,OAlBA,EAAM,uBACJ,EAAI,eAAe,GAAO,GAAO,EAAY,OAAO,SACvC;EACX,EAAI,iBAAiB,CAAK;CAC5B,IAEC,CAAC,CAAC,GAEL,EAAM,gBAAgB;EACpB,EAAI,uBAAuB,GAAO,CAAQ;CAC5C,GAAG;EAAC;EAAK;EAAO;CAAQ,CAAC,GASvB,kBAAC,OAAD;EACE,KAAK;EACL,IAAI;EACJ,aAAU;EACV,MAAK;EACL,iBAAe;EACf,iBAAe,KAAY,KAAA;EAC3B,WAAW,EACT,iCACA,WACA,kBACA,eACA,2BACA,KAAY,qDACZ,KACE,CAAC,KACD,0DACF,KAAiB,qCACjB,CAAC,KACC,CAAC,KACD,CAAC,KACD,8BACF,CACF;EACA,eA/BsB;GACpB,MACJ,EAAI,cAAc,CAAK,GACvB,EAAI,aAAa,EAAK;EACxB;EA6BK;CACE,CAAA;AAET;AAEA,EAAW,cAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";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");function i({ref:e,className:n,...i}){return(0,r.jsx)(`div`,{ref:e,role:`separator`,"aria-orientation":`horizontal`,className:t.cn(`my-(--space-1) h-px bg-(--nuka-border-base)`,n),"data-slot":`separator`,...i})}i.displayName=`SelectSeparator`,exports.SelectSeparator=i;
|
|
2
2
|
//# sourceMappingURL=SelectSeparator.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectSeparator.cjs","names":[],"sources":["../../../src/components/Select/SelectSeparator.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\n\nexport interface SelectSeparatorProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction SelectSeparator({ ref, className, ...props }: SelectSeparatorProps) {\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n className={cn(\"my-(--space-1) h-px bg-(--nuka-border-base)\", className)}\n data-slot=\"separator\"\n {...props}\n />\n );\n}\n\nSelectSeparator.displayName = \"SelectSeparator\";\n\nexport { SelectSeparator };\n"],"mappings":"gLAQA,SAAS,EAAgB,CAAE,MAAK,YAAW,GAAG,GAA+B,CAC3E,OACE,EAAA,EAAA,KAAC,MAAD,CACO,MACL,KAAK,YACL,mBAAiB,aACjB,UAAW,EAAA,GAAG,8CAA+C,
|
|
1
|
+
{"version":3,"file":"SelectSeparator.cjs","names":[],"sources":["../../../src/components/Select/SelectSeparator.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\n\nexport interface SelectSeparatorProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction SelectSeparator({ ref, className, ...props }: SelectSeparatorProps) {\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n className={cn(\"my-(--space-1) h-px bg-(--nuka-border-base)\", className)}\n data-slot=\"separator\"\n {...props}\n />\n );\n}\n\nSelectSeparator.displayName = \"SelectSeparator\";\n\nexport { SelectSeparator };\n"],"mappings":"gLAQA,SAAS,EAAgB,CAAE,MAAK,YAAW,GAAG,GAA+B,CAC3E,OACE,EAAA,EAAA,KAAC,MAAD,CACO,MACL,KAAK,YACL,mBAAiB,aACjB,UAAW,EAAA,GAAG,8CAA+C,CAAS,EACtE,YAAU,YACV,GAAI,CACL,CAAA,CAEL,CAEA,EAAgB,YAAc"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectSeparator.js","names":[],"sources":["../../../src/components/Select/SelectSeparator.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\n\nexport interface SelectSeparatorProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction SelectSeparator({ ref, className, ...props }: SelectSeparatorProps) {\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n className={cn(\"my-(--space-1) h-px bg-(--nuka-border-base)\", className)}\n data-slot=\"separator\"\n {...props}\n />\n );\n}\n\nSelectSeparator.displayName = \"SelectSeparator\";\n\nexport { SelectSeparator };\n"],"mappings":";;;;;AAQA,SAAS,EAAgB,EAAE,QAAK,cAAW,GAAG,KAA+B;
|
|
1
|
+
{"version":3,"file":"SelectSeparator.js","names":[],"sources":["../../../src/components/Select/SelectSeparator.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\n\nexport interface SelectSeparatorProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n}\n\nfunction SelectSeparator({ ref, className, ...props }: SelectSeparatorProps) {\n return (\n <div\n ref={ref}\n role=\"separator\"\n aria-orientation=\"horizontal\"\n className={cn(\"my-(--space-1) h-px bg-(--nuka-border-base)\", className)}\n data-slot=\"separator\"\n {...props}\n />\n );\n}\n\nSelectSeparator.displayName = \"SelectSeparator\";\n\nexport { SelectSeparator };\n"],"mappings":";;;;;AAQA,SAAS,EAAgB,EAAE,QAAK,cAAW,GAAG,KAA+B;CAC3E,OACE,kBAAC,OAAD;EACO;EACL,MAAK;EACL,oBAAiB;EACjB,WAAW,EAAG,+CAA+C,CAAS;EACtE,aAAU;EACV,GAAI;CACL,CAAA;AAEL;AAEA,EAAgB,cAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../utils/cn.cjs"),n=require("../../utils/roving-index.cjs"),r=require("../FormField/FormField.context.cjs"),i=require("../../hooks/use-form-field-props.cjs"),a=require("../../utils/scroll-into-view-safe.cjs"),o=require("./Select.context.cjs"),s=require("./SelectTrigger.utils.cjs"),c=require("./SelectTrigger.variants.cjs");let l=require("react");l=e.__toESM(l,1);let u=require("react/jsx-runtime");function d({ref:e,className:d,placeholder:f,intent:p,size:m,disabled:h,...g}){let _=o.useSelect(),v=r.useFormField(),y=i.useFormFieldProps({id:g.id,"aria-invalid":g[`aria-invalid`],"aria-describedby":g[`aria-describedby`],"aria-required":g[`aria-required`]}),b=l.useRef(``),x=l.useRef(void 0),S=h??_.disabled,C=g[`aria-labelledby`]??(v.labelId||void 0),w=_.value===void 0?void 0:_.getOptionLabel(_.value),T=g[`aria-label`]??(C===void 0?w??f??`Select`:void 0),E=l.useCallback(()=>_.getOptions().filter(e=>!_.isOptionDisabled(e)),[_]),D=l.useCallback(e=>{_.onHighlightChange(e),e!==void 0&&a.scrollIntoViewSafe(_.getOptionRef(e))},[_]),O=l.useCallback(()=>{_.highlightedValue!==void 0&&(_.onValueChange(_.highlightedValue),_.onOpenChange(!1))},[_]),k=l.useCallback(e=>{let t=E();if(t.length===0)return;let r=_.highlightedValue===void 0?-1:t.indexOf(_.highlightedValue),i=n.getRovingIndex({next:`ArrowDown`,prev:`ArrowUp`,first:`Home`,last:`End`}[e],r,t.length,`vertical`);if(i===void 0)return;let a=t[i];a!==void 0&&D(a)},[_.highlightedValue,E,D]),A=l.useCallback(e=>{_.onOpenChange(!0);let t=E();if(t.length!==0){if(e===`current`&&_.value!==void 0){let e=t.indexOf(_.value);if(e!==-1){D(t[e]);return}}D(e===`last`?t[t.length-1]:t[0])}},[_,E,D]),j=l.useCallback(e=>{x.current!==void 0&&clearTimeout(x.current),b.current+=e.toLowerCase(),x.current=setTimeout(()=>{b.current=``},300);let t=E().find(e=>_.getOptionLabel(e)?.toLowerCase().startsWith(b.current));t!==void 0&&(_.open||_.onOpenChange(!0),D(t))},[_,E,D]),M=e=>{if(g.onKeyDown?.(e),!e.defaultPrevented)switch(e.key){case`ArrowDown`:e.preventDefault(),_.open?k(`next`):A(`first`);break;case`ArrowUp`:e.preventDefault(),_.open?k(`prev`):A(`last`);break;case`Home`:_.open&&(e.preventDefault(),k(`first`));break;case`End`:_.open&&(e.preventDefault(),k(`last`));break;case`Enter`:e.preventDefault(),_.open?O():A(`current`);break;case` `:e.preventDefault(),_.open?O():A(`current`);break;case`Escape`:_.open&&(e.preventDefault(),_.onOpenChange(!1));break;case`Tab`:_.open&&_.onOpenChange(!1);break;default:e.key.length===1&&!e.ctrlKey&&!e.metaKey&&!e.altKey&&j(e.key);break}},N=e=>{if(g.onClick?.(e),!e.defaultPrevented&&(_.onOpenChange(!_.open),!_.open)){let e=E();_.value!==void 0&&e.includes(_.value)&&D(_.value)}},P=_.open&&_.highlightedValue!==void 0?`${_.listboxId}-option-${_.highlightedValue}`:void 0;return(0,u.jsxs)(`button`,{...g,ref:e,type:`button`,id:y.resolvedId,"data-slot":`trigger`,role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":_.open,"aria-controls":_.listboxId,"aria-activedescendant":P,"aria-label":T,"aria-labelledby":C,"aria-invalid":y.ariaInvalid,"aria-describedby":y.ariaDescribedBy,"aria-required":y.ariaRequired,disabled:S,className:t.cn(c.selectTriggerVariants({intent:p,size:m}),d),onClick:N,onKeyDown:M,children:[(0,u.jsx)(`span`,{className:t.cn(`truncate`,w===void 0&&`text-(--nuka-text-muted)`),children:w??f}),(0,u.jsx)(s.ChevronIcon,{open:_.open})]})}d.displayName=`SelectTrigger`,exports.SelectTrigger=d;
|
|
2
2
|
//# sourceMappingURL=SelectTrigger.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.cjs","names":[],"sources":["../../../src/components/Select/SelectTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport {\n TYPEAHEAD_TIMEOUT,\n ChevronIcon,\n} from \"@nuka/components/Select/SelectTrigger.utils\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport {\n selectTriggerVariants,\n type SelectTriggerVariantProps,\n} from \"@nuka/components/Select/SelectTrigger.variants\";\n\nexport interface SelectTriggerProps\n extends\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\">,\n SelectTriggerVariantProps {\n ref?: React.Ref<HTMLButtonElement> | undefined;\n placeholder?: string;\n}\n\nfunction SelectTrigger({\n ref,\n className,\n placeholder,\n intent,\n size,\n disabled: disabledProp,\n ...props\n}: SelectTriggerProps) {\n const ctx = useSelect();\n const formCtx = useFormField();\n\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const typeaheadBufferRef = React.useRef(\"\");\n const typeaheadTimerRef = React.useRef<\n ReturnType<typeof setTimeout> | undefined\n >(undefined);\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n // Fallback aria-label when no aria-labelledby provides a name.\n // role=\"combobox\" has nameFrom:author, so text content alone won't work.\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const getEnabledOptions = React.useCallback((): string[] => {\n return ctx.getOptions().filter((v) => !ctx.isOptionDisabled(v));\n }, [ctx]);\n\n const highlightOption = React.useCallback(\n (optionValue: string | undefined) => {\n ctx.onHighlightChange(optionValue);\n if (optionValue !== undefined) {\n scrollIntoViewSafe(ctx.getOptionRef(optionValue));\n }\n },\n [ctx],\n );\n\n const selectHighlighted = React.useCallback(() => {\n if (ctx.highlightedValue !== undefined) {\n ctx.onValueChange(ctx.highlightedValue);\n ctx.onOpenChange(false);\n }\n }, [ctx]);\n\n const moveHighlight = React.useCallback(\n (direction: \"next\" | \"prev\" | \"first\" | \"last\") => {\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n const currentIndex =\n ctx.highlightedValue !== undefined\n ? options.indexOf(ctx.highlightedValue)\n : -1;\n\n const keyMap = {\n next: \"ArrowDown\",\n prev: \"ArrowUp\",\n first: \"Home\",\n last: \"End\",\n } as const;\n const nextIndex = getRovingIndex(\n keyMap[direction],\n currentIndex,\n options.length,\n \"vertical\",\n );\n if (nextIndex === undefined) return;\n\n const nextValue = options[nextIndex];\n if (nextValue !== undefined) {\n highlightOption(nextValue);\n }\n },\n [ctx.highlightedValue, getEnabledOptions, highlightOption],\n );\n\n const openAndHighlight = React.useCallback(\n (direction: \"first\" | \"last\" | \"current\") => {\n ctx.onOpenChange(true);\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n if (direction === \"current\" && ctx.value !== undefined) {\n const valueIndex = options.indexOf(ctx.value);\n if (valueIndex !== -1) {\n highlightOption(options[valueIndex]);\n return;\n }\n }\n\n if (direction === \"last\") {\n highlightOption(options[options.length - 1]);\n } else {\n highlightOption(options[0]);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleTypeahead = React.useCallback(\n (char: string) => {\n if (typeaheadTimerRef.current !== undefined) {\n clearTimeout(typeaheadTimerRef.current);\n }\n\n typeaheadBufferRef.current += char.toLowerCase();\n\n typeaheadTimerRef.current = setTimeout(() => {\n typeaheadBufferRef.current = \"\";\n }, TYPEAHEAD_TIMEOUT);\n\n const options = getEnabledOptions();\n const match = options.find((v) => {\n const label = ctx.getOptionLabel(v);\n return label?.toLowerCase().startsWith(typeaheadBufferRef.current);\n });\n\n if (match !== undefined) {\n if (!ctx.open) {\n ctx.onOpenChange(true);\n }\n highlightOption(match);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n props.onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"first\");\n } else {\n moveHighlight(\"next\");\n }\n break;\n\n case \"ArrowUp\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"last\");\n } else {\n moveHighlight(\"prev\");\n }\n break;\n\n case \"Home\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"first\");\n }\n break;\n\n case \"End\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"last\");\n }\n break;\n\n case \"Enter\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \" \":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \"Escape\":\n if (ctx.open) {\n e.preventDefault();\n ctx.onOpenChange(false);\n }\n break;\n\n case \"Tab\":\n if (ctx.open) {\n ctx.onOpenChange(false);\n // Do not preventDefault: allow Tab to move focus naturally\n }\n break;\n\n default:\n if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) {\n handleTypeahead(e.key);\n }\n break;\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n props.onClick?.(e);\n if (e.defaultPrevented) return;\n ctx.onOpenChange(!ctx.open);\n if (!ctx.open) {\n // Opening: highlight current value or first option\n const options = getEnabledOptions();\n if (ctx.value !== undefined && options.includes(ctx.value)) {\n highlightOption(ctx.value);\n }\n }\n };\n\n // aria-activedescendant must be undefined (not empty string) when no highlight\n const ariaActiveDescendant =\n ctx.open && ctx.highlightedValue !== undefined\n ? `${ctx.listboxId}-option-${ctx.highlightedValue}`\n : undefined;\n\n return (\n <button\n {...props}\n ref={ref}\n type=\"button\"\n id={field.resolvedId}\n data-slot=\"trigger\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ariaActiveDescendant}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(selectTriggerVariants({ intent, size }), className)}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <ChevronIcon open={ctx.open} />\n </button>\n );\n}\n\nSelectTrigger.displayName = \"SelectTrigger\";\n\nexport { SelectTrigger, selectTriggerVariants };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectTrigger.cjs","names":[],"sources":["../../../src/components/Select/SelectTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport {\n TYPEAHEAD_TIMEOUT,\n ChevronIcon,\n} from \"@nuka/components/Select/SelectTrigger.utils\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport {\n selectTriggerVariants,\n type SelectTriggerVariantProps,\n} from \"@nuka/components/Select/SelectTrigger.variants\";\n\nexport interface SelectTriggerProps\n extends\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\">,\n SelectTriggerVariantProps {\n ref?: React.Ref<HTMLButtonElement> | undefined;\n placeholder?: string;\n}\n\nfunction SelectTrigger({\n ref,\n className,\n placeholder,\n intent,\n size,\n disabled: disabledProp,\n ...props\n}: SelectTriggerProps) {\n const ctx = useSelect();\n const formCtx = useFormField();\n\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const typeaheadBufferRef = React.useRef(\"\");\n const typeaheadTimerRef = React.useRef<\n ReturnType<typeof setTimeout> | undefined\n >(undefined);\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n // Fallback aria-label when no aria-labelledby provides a name.\n // role=\"combobox\" has nameFrom:author, so text content alone won't work.\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const getEnabledOptions = React.useCallback((): string[] => {\n return ctx.getOptions().filter((v) => !ctx.isOptionDisabled(v));\n }, [ctx]);\n\n const highlightOption = React.useCallback(\n (optionValue: string | undefined) => {\n ctx.onHighlightChange(optionValue);\n if (optionValue !== undefined) {\n scrollIntoViewSafe(ctx.getOptionRef(optionValue));\n }\n },\n [ctx],\n );\n\n const selectHighlighted = React.useCallback(() => {\n if (ctx.highlightedValue !== undefined) {\n ctx.onValueChange(ctx.highlightedValue);\n ctx.onOpenChange(false);\n }\n }, [ctx]);\n\n const moveHighlight = React.useCallback(\n (direction: \"next\" | \"prev\" | \"first\" | \"last\") => {\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n const currentIndex =\n ctx.highlightedValue !== undefined\n ? options.indexOf(ctx.highlightedValue)\n : -1;\n\n const keyMap = {\n next: \"ArrowDown\",\n prev: \"ArrowUp\",\n first: \"Home\",\n last: \"End\",\n } as const;\n const nextIndex = getRovingIndex(\n keyMap[direction],\n currentIndex,\n options.length,\n \"vertical\",\n );\n if (nextIndex === undefined) return;\n\n const nextValue = options[nextIndex];\n if (nextValue !== undefined) {\n highlightOption(nextValue);\n }\n },\n [ctx.highlightedValue, getEnabledOptions, highlightOption],\n );\n\n const openAndHighlight = React.useCallback(\n (direction: \"first\" | \"last\" | \"current\") => {\n ctx.onOpenChange(true);\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n if (direction === \"current\" && ctx.value !== undefined) {\n const valueIndex = options.indexOf(ctx.value);\n if (valueIndex !== -1) {\n highlightOption(options[valueIndex]);\n return;\n }\n }\n\n if (direction === \"last\") {\n highlightOption(options[options.length - 1]);\n } else {\n highlightOption(options[0]);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleTypeahead = React.useCallback(\n (char: string) => {\n if (typeaheadTimerRef.current !== undefined) {\n clearTimeout(typeaheadTimerRef.current);\n }\n\n typeaheadBufferRef.current += char.toLowerCase();\n\n typeaheadTimerRef.current = setTimeout(() => {\n typeaheadBufferRef.current = \"\";\n }, TYPEAHEAD_TIMEOUT);\n\n const options = getEnabledOptions();\n const match = options.find((v) => {\n const label = ctx.getOptionLabel(v);\n return label?.toLowerCase().startsWith(typeaheadBufferRef.current);\n });\n\n if (match !== undefined) {\n if (!ctx.open) {\n ctx.onOpenChange(true);\n }\n highlightOption(match);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n props.onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"first\");\n } else {\n moveHighlight(\"next\");\n }\n break;\n\n case \"ArrowUp\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"last\");\n } else {\n moveHighlight(\"prev\");\n }\n break;\n\n case \"Home\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"first\");\n }\n break;\n\n case \"End\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"last\");\n }\n break;\n\n case \"Enter\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \" \":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \"Escape\":\n if (ctx.open) {\n e.preventDefault();\n ctx.onOpenChange(false);\n }\n break;\n\n case \"Tab\":\n if (ctx.open) {\n ctx.onOpenChange(false);\n // Do not preventDefault: allow Tab to move focus naturally\n }\n break;\n\n default:\n if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) {\n handleTypeahead(e.key);\n }\n break;\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n props.onClick?.(e);\n if (e.defaultPrevented) return;\n ctx.onOpenChange(!ctx.open);\n if (!ctx.open) {\n // Opening: highlight current value or first option\n const options = getEnabledOptions();\n if (ctx.value !== undefined && options.includes(ctx.value)) {\n highlightOption(ctx.value);\n }\n }\n };\n\n // aria-activedescendant must be undefined (not empty string) when no highlight\n const ariaActiveDescendant =\n ctx.open && ctx.highlightedValue !== undefined\n ? `${ctx.listboxId}-option-${ctx.highlightedValue}`\n : undefined;\n\n return (\n <button\n {...props}\n ref={ref}\n type=\"button\"\n id={field.resolvedId}\n data-slot=\"trigger\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ariaActiveDescendant}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(selectTriggerVariants({ intent, size }), className)}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <ChevronIcon open={ctx.open} />\n </button>\n );\n}\n\nSelectTrigger.displayName = \"SelectTrigger\";\n\nexport { SelectTrigger, selectTriggerVariants };\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.js","names":[],"sources":["../../../src/components/Select/SelectTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport {\n TYPEAHEAD_TIMEOUT,\n ChevronIcon,\n} from \"@nuka/components/Select/SelectTrigger.utils\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport {\n selectTriggerVariants,\n type SelectTriggerVariantProps,\n} from \"@nuka/components/Select/SelectTrigger.variants\";\n\nexport interface SelectTriggerProps\n extends\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\">,\n SelectTriggerVariantProps {\n ref?: React.Ref<HTMLButtonElement> | undefined;\n placeholder?: string;\n}\n\nfunction SelectTrigger({\n ref,\n className,\n placeholder,\n intent,\n size,\n disabled: disabledProp,\n ...props\n}: SelectTriggerProps) {\n const ctx = useSelect();\n const formCtx = useFormField();\n\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const typeaheadBufferRef = React.useRef(\"\");\n const typeaheadTimerRef = React.useRef<\n ReturnType<typeof setTimeout> | undefined\n >(undefined);\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n // Fallback aria-label when no aria-labelledby provides a name.\n // role=\"combobox\" has nameFrom:author, so text content alone won't work.\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const getEnabledOptions = React.useCallback((): string[] => {\n return ctx.getOptions().filter((v) => !ctx.isOptionDisabled(v));\n }, [ctx]);\n\n const highlightOption = React.useCallback(\n (optionValue: string | undefined) => {\n ctx.onHighlightChange(optionValue);\n if (optionValue !== undefined) {\n scrollIntoViewSafe(ctx.getOptionRef(optionValue));\n }\n },\n [ctx],\n );\n\n const selectHighlighted = React.useCallback(() => {\n if (ctx.highlightedValue !== undefined) {\n ctx.onValueChange(ctx.highlightedValue);\n ctx.onOpenChange(false);\n }\n }, [ctx]);\n\n const moveHighlight = React.useCallback(\n (direction: \"next\" | \"prev\" | \"first\" | \"last\") => {\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n const currentIndex =\n ctx.highlightedValue !== undefined\n ? options.indexOf(ctx.highlightedValue)\n : -1;\n\n const keyMap = {\n next: \"ArrowDown\",\n prev: \"ArrowUp\",\n first: \"Home\",\n last: \"End\",\n } as const;\n const nextIndex = getRovingIndex(\n keyMap[direction],\n currentIndex,\n options.length,\n \"vertical\",\n );\n if (nextIndex === undefined) return;\n\n const nextValue = options[nextIndex];\n if (nextValue !== undefined) {\n highlightOption(nextValue);\n }\n },\n [ctx.highlightedValue, getEnabledOptions, highlightOption],\n );\n\n const openAndHighlight = React.useCallback(\n (direction: \"first\" | \"last\" | \"current\") => {\n ctx.onOpenChange(true);\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n if (direction === \"current\" && ctx.value !== undefined) {\n const valueIndex = options.indexOf(ctx.value);\n if (valueIndex !== -1) {\n highlightOption(options[valueIndex]);\n return;\n }\n }\n\n if (direction === \"last\") {\n highlightOption(options[options.length - 1]);\n } else {\n highlightOption(options[0]);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleTypeahead = React.useCallback(\n (char: string) => {\n if (typeaheadTimerRef.current !== undefined) {\n clearTimeout(typeaheadTimerRef.current);\n }\n\n typeaheadBufferRef.current += char.toLowerCase();\n\n typeaheadTimerRef.current = setTimeout(() => {\n typeaheadBufferRef.current = \"\";\n }, TYPEAHEAD_TIMEOUT);\n\n const options = getEnabledOptions();\n const match = options.find((v) => {\n const label = ctx.getOptionLabel(v);\n return label?.toLowerCase().startsWith(typeaheadBufferRef.current);\n });\n\n if (match !== undefined) {\n if (!ctx.open) {\n ctx.onOpenChange(true);\n }\n highlightOption(match);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n props.onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"first\");\n } else {\n moveHighlight(\"next\");\n }\n break;\n\n case \"ArrowUp\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"last\");\n } else {\n moveHighlight(\"prev\");\n }\n break;\n\n case \"Home\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"first\");\n }\n break;\n\n case \"End\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"last\");\n }\n break;\n\n case \"Enter\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \" \":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \"Escape\":\n if (ctx.open) {\n e.preventDefault();\n ctx.onOpenChange(false);\n }\n break;\n\n case \"Tab\":\n if (ctx.open) {\n ctx.onOpenChange(false);\n // Do not preventDefault: allow Tab to move focus naturally\n }\n break;\n\n default:\n if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) {\n handleTypeahead(e.key);\n }\n break;\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n props.onClick?.(e);\n if (e.defaultPrevented) return;\n ctx.onOpenChange(!ctx.open);\n if (!ctx.open) {\n // Opening: highlight current value or first option\n const options = getEnabledOptions();\n if (ctx.value !== undefined && options.includes(ctx.value)) {\n highlightOption(ctx.value);\n }\n }\n };\n\n // aria-activedescendant must be undefined (not empty string) when no highlight\n const ariaActiveDescendant =\n ctx.open && ctx.highlightedValue !== undefined\n ? `${ctx.listboxId}-option-${ctx.highlightedValue}`\n : undefined;\n\n return (\n <button\n {...props}\n ref={ref}\n type=\"button\"\n id={field.resolvedId}\n data-slot=\"trigger\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ariaActiveDescendant}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(selectTriggerVariants({ intent, size }), className)}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <ChevronIcon open={ctx.open} />\n </button>\n );\n}\n\nSelectTrigger.displayName = \"SelectTrigger\";\n\nexport { SelectTrigger, selectTriggerVariants };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectTrigger.js","names":[],"sources":["../../../src/components/Select/SelectTrigger.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { getRovingIndex } from \"@nuka/utils/roving-index\";\nimport { scrollIntoViewSafe } from \"@nuka/utils/scroll-into-view-safe\";\nimport {\n TYPEAHEAD_TIMEOUT,\n ChevronIcon,\n} from \"@nuka/components/Select/SelectTrigger.utils\";\nimport { useSelect } from \"@nuka/components/Select/Select.context\";\nimport { useFormField } from \"@nuka/components/FormField\";\nimport { useFormFieldProps } from \"@nuka/hooks/use-form-field-props\";\nimport {\n selectTriggerVariants,\n type SelectTriggerVariantProps,\n} from \"@nuka/components/Select/SelectTrigger.variants\";\n\nexport interface SelectTriggerProps\n extends\n Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, \"children\">,\n SelectTriggerVariantProps {\n ref?: React.Ref<HTMLButtonElement> | undefined;\n placeholder?: string;\n}\n\nfunction SelectTrigger({\n ref,\n className,\n placeholder,\n intent,\n size,\n disabled: disabledProp,\n ...props\n}: SelectTriggerProps) {\n const ctx = useSelect();\n const formCtx = useFormField();\n\n const field = useFormFieldProps({\n id: props.id,\n \"aria-invalid\": props[\"aria-invalid\"],\n \"aria-describedby\": props[\"aria-describedby\"],\n \"aria-required\": props[\"aria-required\"],\n });\n\n const typeaheadBufferRef = React.useRef(\"\");\n const typeaheadTimerRef = React.useRef<\n ReturnType<typeof setTimeout> | undefined\n >(undefined);\n\n const resolvedDisabled = disabledProp ?? ctx.disabled;\n\n const ariaLabelledBy =\n props[\"aria-labelledby\"] ?? (formCtx.labelId || undefined);\n\n const displayLabel =\n ctx.value !== undefined ? ctx.getOptionLabel(ctx.value) : undefined;\n\n // Fallback aria-label when no aria-labelledby provides a name.\n // role=\"combobox\" has nameFrom:author, so text content alone won't work.\n const ariaLabel =\n props[\"aria-label\"] ??\n (ariaLabelledBy === undefined\n ? (displayLabel ?? placeholder ?? \"Select\")\n : undefined);\n\n const getEnabledOptions = React.useCallback((): string[] => {\n return ctx.getOptions().filter((v) => !ctx.isOptionDisabled(v));\n }, [ctx]);\n\n const highlightOption = React.useCallback(\n (optionValue: string | undefined) => {\n ctx.onHighlightChange(optionValue);\n if (optionValue !== undefined) {\n scrollIntoViewSafe(ctx.getOptionRef(optionValue));\n }\n },\n [ctx],\n );\n\n const selectHighlighted = React.useCallback(() => {\n if (ctx.highlightedValue !== undefined) {\n ctx.onValueChange(ctx.highlightedValue);\n ctx.onOpenChange(false);\n }\n }, [ctx]);\n\n const moveHighlight = React.useCallback(\n (direction: \"next\" | \"prev\" | \"first\" | \"last\") => {\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n const currentIndex =\n ctx.highlightedValue !== undefined\n ? options.indexOf(ctx.highlightedValue)\n : -1;\n\n const keyMap = {\n next: \"ArrowDown\",\n prev: \"ArrowUp\",\n first: \"Home\",\n last: \"End\",\n } as const;\n const nextIndex = getRovingIndex(\n keyMap[direction],\n currentIndex,\n options.length,\n \"vertical\",\n );\n if (nextIndex === undefined) return;\n\n const nextValue = options[nextIndex];\n if (nextValue !== undefined) {\n highlightOption(nextValue);\n }\n },\n [ctx.highlightedValue, getEnabledOptions, highlightOption],\n );\n\n const openAndHighlight = React.useCallback(\n (direction: \"first\" | \"last\" | \"current\") => {\n ctx.onOpenChange(true);\n const options = getEnabledOptions();\n if (options.length === 0) return;\n\n if (direction === \"current\" && ctx.value !== undefined) {\n const valueIndex = options.indexOf(ctx.value);\n if (valueIndex !== -1) {\n highlightOption(options[valueIndex]);\n return;\n }\n }\n\n if (direction === \"last\") {\n highlightOption(options[options.length - 1]);\n } else {\n highlightOption(options[0]);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleTypeahead = React.useCallback(\n (char: string) => {\n if (typeaheadTimerRef.current !== undefined) {\n clearTimeout(typeaheadTimerRef.current);\n }\n\n typeaheadBufferRef.current += char.toLowerCase();\n\n typeaheadTimerRef.current = setTimeout(() => {\n typeaheadBufferRef.current = \"\";\n }, TYPEAHEAD_TIMEOUT);\n\n const options = getEnabledOptions();\n const match = options.find((v) => {\n const label = ctx.getOptionLabel(v);\n return label?.toLowerCase().startsWith(typeaheadBufferRef.current);\n });\n\n if (match !== undefined) {\n if (!ctx.open) {\n ctx.onOpenChange(true);\n }\n highlightOption(match);\n }\n },\n [ctx, getEnabledOptions, highlightOption],\n );\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLButtonElement>) => {\n props.onKeyDown?.(e);\n if (e.defaultPrevented) return;\n\n switch (e.key) {\n case \"ArrowDown\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"first\");\n } else {\n moveHighlight(\"next\");\n }\n break;\n\n case \"ArrowUp\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"last\");\n } else {\n moveHighlight(\"prev\");\n }\n break;\n\n case \"Home\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"first\");\n }\n break;\n\n case \"End\":\n if (ctx.open) {\n e.preventDefault();\n moveHighlight(\"last\");\n }\n break;\n\n case \"Enter\":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \" \":\n e.preventDefault();\n if (!ctx.open) {\n openAndHighlight(\"current\");\n } else {\n selectHighlighted();\n }\n break;\n\n case \"Escape\":\n if (ctx.open) {\n e.preventDefault();\n ctx.onOpenChange(false);\n }\n break;\n\n case \"Tab\":\n if (ctx.open) {\n ctx.onOpenChange(false);\n // Do not preventDefault: allow Tab to move focus naturally\n }\n break;\n\n default:\n if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) {\n handleTypeahead(e.key);\n }\n break;\n }\n };\n\n const handleClick = (e: React.MouseEvent<HTMLButtonElement>) => {\n props.onClick?.(e);\n if (e.defaultPrevented) return;\n ctx.onOpenChange(!ctx.open);\n if (!ctx.open) {\n // Opening: highlight current value or first option\n const options = getEnabledOptions();\n if (ctx.value !== undefined && options.includes(ctx.value)) {\n highlightOption(ctx.value);\n }\n }\n };\n\n // aria-activedescendant must be undefined (not empty string) when no highlight\n const ariaActiveDescendant =\n ctx.open && ctx.highlightedValue !== undefined\n ? `${ctx.listboxId}-option-${ctx.highlightedValue}`\n : undefined;\n\n return (\n <button\n {...props}\n ref={ref}\n type=\"button\"\n id={field.resolvedId}\n data-slot=\"trigger\"\n role=\"combobox\"\n aria-haspopup=\"listbox\"\n aria-expanded={ctx.open}\n aria-controls={ctx.listboxId}\n aria-activedescendant={ariaActiveDescendant}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n aria-invalid={field.ariaInvalid}\n aria-describedby={field.ariaDescribedBy}\n aria-required={field.ariaRequired}\n disabled={resolvedDisabled}\n className={cn(selectTriggerVariants({ intent, size }), className)}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n >\n <span\n className={cn(\n \"truncate\",\n displayLabel === undefined && \"text-(--nuka-text-muted)\",\n )}\n >\n {displayLabel ?? placeholder}\n </span>\n <ChevronIcon open={ctx.open} />\n </button>\n );\n}\n\nSelectTrigger.displayName = \"SelectTrigger\";\n\nexport { SelectTrigger, selectTriggerVariants };\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
const e=require("../../utils/cn.cjs"),t=require("../Icon/Icon.cjs");let n=require("react/jsx-runtime");function r({open:r}){return(0,n.jsx)(t.Icon,{size:`sm`,color:`muted`,className:e.cn(`transition-transform duration-150`,r&&`rotate-180`),children:(0,n.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,n.jsx)(`path`,{d:`m6 9 6 6 6-6`})})})}exports.ChevronIcon=r;
|
|
2
2
|
//# sourceMappingURL=SelectTrigger.utils.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.utils.cjs","names":[],"sources":["../../../src/components/Select/SelectTrigger.utils.tsx"],"sourcesContent":["import { Icon } from \"@nuka/components/Icon\";\nimport { cn } from \"@nuka/utils/cn\";\n\nconst TYPEAHEAD_TIMEOUT = 300;\n\nfunction ChevronIcon({ open }: { open: boolean }) {\n return (\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\"transition-transform duration-150\", open && \"rotate-180\")}\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 );\n}\n\nexport { TYPEAHEAD_TIMEOUT, ChevronIcon };\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SelectTrigger.utils.cjs","names":[],"sources":["../../../src/components/Select/SelectTrigger.utils.tsx"],"sourcesContent":["import { Icon } from \"@nuka/components/Icon\";\nimport { cn } from \"@nuka/utils/cn\";\n\nconst TYPEAHEAD_TIMEOUT = 300;\n\nfunction ChevronIcon({ open }: { open: boolean }) {\n return (\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\"transition-transform duration-150\", open && \"rotate-180\")}\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 );\n}\n\nexport { TYPEAHEAD_TIMEOUT, ChevronIcon };\n"],"mappings":"uGAKA,SAAS,EAAY,CAAE,QAA2B,CAChD,OACE,EAAA,EAAA,KAAC,EAAA,KAAD,CACE,KAAK,KACL,MAAM,QACN,UAAW,EAAA,GAAG,oCAAqC,GAAQ,YAAY,YAEvE,EAAA,EAAA,KAAC,MAAD,CACE,MAAM,6BACN,QAAQ,YACR,KAAK,OACL,OAAO,eACP,YAAY,IACZ,cAAc,QACd,eAAe,kBAEf,EAAA,EAAA,KAAC,OAAD,CAAM,EAAE,cAAgB,CAAA,CACrB,CAAA,CACD,CAAA,CAEV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.utils.js","names":[],"sources":["../../../src/components/Select/SelectTrigger.utils.tsx"],"sourcesContent":["import { Icon } from \"@nuka/components/Icon\";\nimport { cn } from \"@nuka/utils/cn\";\n\nconst TYPEAHEAD_TIMEOUT = 300;\n\nfunction ChevronIcon({ open }: { open: boolean }) {\n return (\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\"transition-transform duration-150\", open && \"rotate-180\")}\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 );\n}\n\nexport { TYPEAHEAD_TIMEOUT, ChevronIcon };\n"],"mappings":";;;;AAKA,SAAS,EAAY,EAAE,WAA2B;
|
|
1
|
+
{"version":3,"file":"SelectTrigger.utils.js","names":[],"sources":["../../../src/components/Select/SelectTrigger.utils.tsx"],"sourcesContent":["import { Icon } from \"@nuka/components/Icon\";\nimport { cn } from \"@nuka/utils/cn\";\n\nconst TYPEAHEAD_TIMEOUT = 300;\n\nfunction ChevronIcon({ open }: { open: boolean }) {\n return (\n <Icon\n size=\"sm\"\n color=\"muted\"\n className={cn(\"transition-transform duration-150\", open && \"rotate-180\")}\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 );\n}\n\nexport { TYPEAHEAD_TIMEOUT, ChevronIcon };\n"],"mappings":";;;;AAKA,SAAS,EAAY,EAAE,WAA2B;CAChD,OACE,kBAAC,GAAD;EACE,MAAK;EACL,OAAM;EACN,WAAW,EAAG,qCAAqC,KAAQ,YAAY;YAEvE,kBAAC,OAAD;GACE,OAAM;GACN,SAAQ;GACR,MAAK;GACL,QAAO;GACP,aAAY;GACZ,eAAc;GACd,gBAAe;aAEf,kBAAC,QAAD,EAAM,GAAE,eAAgB,CAAA;EACrB,CAAA;CACD,CAAA;AAEV"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e=require(
|
|
1
|
+
var e=require("../../node_modules/class-variance-authority/dist/index.cjs").cva([`w-full`,`inline-flex items-center justify-between`,`rounded-(--radius-md)`,`border`,`bg-(--nuka-input-bg)`,`text-(--nuka-text-base)`,`text-left`,`focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)`,`disabled:cursor-not-allowed disabled:opacity-50`,`transition-colors duration-150`],{variants:{intent:{default:`border-(--nuka-input-border) hover:border-(--nuka-input-border-hover)`,danger:`border-(--nuka-danger-border)`,success:`border-(--nuka-success-border)`,warning:`border-(--nuka-warning-border)`},size:{sm:`px-(--space-3) py-(--space-2) text-xs`,md:`px-(--space-4) py-(--space-3) text-sm`,lg:`px-(--space-6) py-(--space-4) text-base`}},defaultVariants:{intent:`default`,size:`md`}});exports.selectTriggerVariants=e;
|
|
2
2
|
//# sourceMappingURL=SelectTrigger.variants.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.variants.cjs","names":[],"sources":["../../../src/components/Select/SelectTrigger.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from \"@nuka/utils/variants\";\n\nexport const selectTriggerVariants = cva(\n [\n \"w-full\",\n \"inline-flex items-center justify-between\",\n \"rounded-(--radius-md)\",\n \"border\",\n \"bg-(--nuka-input-bg)\",\n \"text-(--nuka-text-base)\",\n \"text-left\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"transition-colors duration-150\",\n ],\n {\n variants: {\n intent: {\n default:\n \"border-(--nuka-input-border) hover:border-(--nuka-input-border-hover)\",\n danger: \"border-(--nuka-danger-border)\",\n success: \"border-(--nuka-success-border)\",\n warning: \"border-(--nuka-warning-border)\",\n },\n size: {\n sm: \"px-(--space-3) py-(--space-2) text-xs\",\n md: \"px-(--space-4) py-(--space-3) text-sm\",\n lg: \"px-(--space-6) py-(--space-4) text-base\",\n },\n },\n defaultVariants: {\n intent: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport type SelectTriggerVariantProps = VariantProps<\n typeof selectTriggerVariants\n>;\n"],"mappings":"AAEA,IAAa,
|
|
1
|
+
{"version":3,"file":"SelectTrigger.variants.cjs","names":[],"sources":["../../../src/components/Select/SelectTrigger.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from \"@nuka/utils/variants\";\n\nexport const selectTriggerVariants = cva(\n [\n \"w-full\",\n \"inline-flex items-center justify-between\",\n \"rounded-(--radius-md)\",\n \"border\",\n \"bg-(--nuka-input-bg)\",\n \"text-(--nuka-text-base)\",\n \"text-left\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"transition-colors duration-150\",\n ],\n {\n variants: {\n intent: {\n default:\n \"border-(--nuka-input-border) hover:border-(--nuka-input-border-hover)\",\n danger: \"border-(--nuka-danger-border)\",\n success: \"border-(--nuka-success-border)\",\n warning: \"border-(--nuka-warning-border)\",\n },\n size: {\n sm: \"px-(--space-3) py-(--space-2) text-xs\",\n md: \"px-(--space-4) py-(--space-3) text-sm\",\n lg: \"px-(--space-6) py-(--space-4) text-base\",\n },\n },\n defaultVariants: {\n intent: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport type SelectTriggerVariantProps = VariantProps<\n typeof selectTriggerVariants\n>;\n"],"mappings":"AAEA,IAAa,sEAAwB,EAAA,IACnC,CACE,SACA,2CACA,wBACA,SACA,uBACA,0BACA,YACA,qGACA,kDACA,gCACF,EACA,CACE,SAAU,CACR,OAAQ,CACN,QACE,wEACF,OAAQ,gCACR,QAAS,iCACT,QAAS,gCACX,EACA,KAAM,CACJ,GAAI,wCACJ,GAAI,wCACJ,GAAI,yCACN,CACF,EACA,gBAAiB,CACf,OAAQ,UACR,KAAM,IACR,CACF,CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectTrigger.variants.js","names":[],"sources":["../../../src/components/Select/SelectTrigger.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from \"@nuka/utils/variants\";\n\nexport const selectTriggerVariants = cva(\n [\n \"w-full\",\n \"inline-flex items-center justify-between\",\n \"rounded-(--radius-md)\",\n \"border\",\n \"bg-(--nuka-input-bg)\",\n \"text-(--nuka-text-base)\",\n \"text-left\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"transition-colors duration-150\",\n ],\n {\n variants: {\n intent: {\n default:\n \"border-(--nuka-input-border) hover:border-(--nuka-input-border-hover)\",\n danger: \"border-(--nuka-danger-border)\",\n success: \"border-(--nuka-success-border)\",\n warning: \"border-(--nuka-warning-border)\",\n },\n size: {\n sm: \"px-(--space-3) py-(--space-2) text-xs\",\n md: \"px-(--space-4) py-(--space-3) text-sm\",\n lg: \"px-(--space-6) py-(--space-4) text-base\",\n },\n },\n defaultVariants: {\n intent: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport type SelectTriggerVariantProps = VariantProps<\n typeof selectTriggerVariants\n>;\n"],"mappings":";;AAEA,IAAa,IAAwB,EACnC;CACE;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;
|
|
1
|
+
{"version":3,"file":"SelectTrigger.variants.js","names":[],"sources":["../../../src/components/Select/SelectTrigger.variants.ts"],"sourcesContent":["import { cva, type VariantProps } from \"@nuka/utils/variants\";\n\nexport const selectTriggerVariants = cva(\n [\n \"w-full\",\n \"inline-flex items-center justify-between\",\n \"rounded-(--radius-md)\",\n \"border\",\n \"bg-(--nuka-input-bg)\",\n \"text-(--nuka-text-base)\",\n \"text-left\",\n \"focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-(--nuka-border-focus)\",\n \"disabled:cursor-not-allowed disabled:opacity-50\",\n \"transition-colors duration-150\",\n ],\n {\n variants: {\n intent: {\n default:\n \"border-(--nuka-input-border) hover:border-(--nuka-input-border-hover)\",\n danger: \"border-(--nuka-danger-border)\",\n success: \"border-(--nuka-success-border)\",\n warning: \"border-(--nuka-warning-border)\",\n },\n size: {\n sm: \"px-(--space-3) py-(--space-2) text-xs\",\n md: \"px-(--space-4) py-(--space-3) text-sm\",\n lg: \"px-(--space-6) py-(--space-4) text-base\",\n },\n },\n defaultVariants: {\n intent: \"default\",\n size: \"md\",\n },\n },\n);\n\nexport type SelectTriggerVariantProps = VariantProps<\n typeof selectTriggerVariants\n>;\n"],"mappings":";;AAEA,IAAa,IAAwB,EACnC;CACE;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF,GACA;CACE,UAAU;EACR,QAAQ;GACN,SACE;GACF,QAAQ;GACR,SAAS;GACT,SAAS;EACX;EACA,MAAM;GACJ,IAAI;GACJ,IAAI;GACJ,IAAI;EACN;CACF;CACA,iBAAiB;EACf,QAAQ;EACR,MAAM;CACR;AACF,CACF"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../utils/cn.cjs"),n=require("../../utils/slot.cjs"),r=require("../../utils/dismiss-button.cjs"),i=require("../../utils/portal.cjs"),a=require("../../hooks/use-scroll-lock.cjs"),o=require("../../hooks/use-escape-key.cjs"),s=require("../../hooks/use-focus-trap.cjs"),c=require("../../utils/modal-primitive.cjs"),l=require("../../hooks/use-modal-title-warning.cjs"),u=require("./Sheet.context.cjs");let d=require("react");d=e.__toESM(d,1);let f=require("react/jsx-runtime");var{Root:p,Trigger:m,Title:h,Description:g,Close:_}=c.createModalPrimitive({displayNamePrefix:`Sheet`,closeLabel:`Close sheet`,Context:u.SheetContext,useContext:u.useSheetContext}),v={right:`inset-y-0 right-0 h-full w-3/4 max-w-sm translate-x-full data-[state=open]:translate-x-0 border-l`,left:`inset-y-0 left-0 h-full w-3/4 max-w-sm -translate-x-full data-[state=open]:translate-x-0 border-r`,top:`inset-x-0 top-0 w-full -translate-y-full data-[state=open]:translate-y-0 border-b`,bottom:`inset-x-0 bottom-0 w-full translate-y-full data-[state=open]:translate-y-0 border-t`};function y({ref:e,side:c=`right`,className:p,children:m,...h}){let g=u.useSheetContext(),_=d.useRef(null),y=n.composeRefs(e,_);return s.useFocusTrap(_,g.open),a.useScrollLock(g.open),l.useModalTitleWarning(`Sheet`,g.titleId,g.open),o.useEscapeKey(()=>g.onOpenChange(!1),g.open),g.open?(0,f.jsxs)(i.Portal,{children:[(0,f.jsx)(`div`,{className:t.cn(`fixed inset-0 z-(--nuka-z-modal)`,`bg-(--nuka-bg-overlay)`,`data-[state=open]:animate-[nuka-dialog-overlay-enter_150ms_ease-out]`),"data-slot":`overlay`,"data-state":`open`,onClick:()=>g.onOpenChange(!1),"aria-hidden":`true`}),(0,f.jsxs)(`div`,{ref:y,role:`dialog`,"aria-modal":`true`,"aria-labelledby":g.titleId,"aria-describedby":g.hasDescription?g.descriptionId:void 0,tabIndex:-1,"data-slot":`content`,"data-state":`open`,"data-side":c,className:t.cn(`fixed z-(--nuka-z-modal)`,`bg-(--nuka-bg-base) border-(--nuka-border-base) shadow-md`,`p-(--space-6)`,`transition-transform duration-300 ease-in-out`,`motion-reduce:transition-none`,`focus-visible:outline-none`,v[c],p),...h,children:[(0,f.jsx)(r.DismissButton,{onClick:()=>g.onOpenChange(!1),label:`Close sheet`,className:`absolute top-(--space-4) right-(--space-4) text-(--nuka-text-muted)`}),m]})]}):null}y.displayName=`SheetContent`,exports.Sheet=p,exports.SheetClose=_,exports.SheetContent=y,exports.SheetDescription=g,exports.SheetTitle=h,exports.SheetTrigger=m;
|
|
2
2
|
//# sourceMappingURL=Sheet.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sheet.cjs","names":[],"sources":["../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { DismissButton } from \"@nuka/utils/dismiss-button\";\nimport { useFocusTrap } from \"@nuka/hooks/use-focus-trap\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport {\n createModalPrimitive,\n useEscapeKey,\n} from \"@nuka/utils/modal-primitive\";\nimport { useModalTitleWarning } from \"@nuka/hooks/use-modal-title-warning\";\nimport type {\n ModalRootProps,\n ModalTriggerProps,\n ModalTitleProps,\n ModalDescriptionProps,\n ModalCloseProps,\n} from \"@nuka/utils/modal-primitive\";\nimport {\n SheetContext,\n useSheetContext,\n} from \"@nuka/components/Sheet/Sheet.context\";\n\nexport type SheetSide = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nconst {\n Root: Sheet,\n Trigger: SheetTrigger,\n Title: SheetTitle,\n Description: SheetDescription,\n Close: SheetClose,\n} = createModalPrimitive({\n displayNamePrefix: \"Sheet\",\n closeLabel: \"Close sheet\",\n Context: SheetContext,\n useContext: useSheetContext,\n});\n\nexport type SheetProps = ModalRootProps;\nexport type SheetTriggerProps = ModalTriggerProps;\nexport type SheetTitleProps = ModalTitleProps;\nexport type SheetDescriptionProps = ModalDescriptionProps;\nexport type SheetCloseProps = ModalCloseProps;\n\nconst sideClasses: Record<SheetSide, string> = {\n right:\n \"inset-y-0 right-0 h-full w-3/4 max-w-sm translate-x-full data-[state=open]:translate-x-0 border-l\",\n left: \"inset-y-0 left-0 h-full w-3/4 max-w-sm -translate-x-full data-[state=open]:translate-x-0 border-r\",\n top: \"inset-x-0 top-0 w-full -translate-y-full data-[state=open]:translate-y-0 border-b\",\n bottom:\n \"inset-x-0 bottom-0 w-full translate-y-full data-[state=open]:translate-y-0 border-t\",\n};\n\nexport interface SheetContentProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n side?: SheetSide;\n}\n\nfunction SheetContent({\n ref,\n side = \"right\",\n className,\n children,\n ...props\n}: SheetContentProps) {\n const ctx = useSheetContext();\n const panelRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, panelRef);\n\n useFocusTrap(panelRef, ctx.open);\n useScrollLock(ctx.open);\n useModalTitleWarning(\"Sheet\", ctx.titleId, ctx.open);\n useEscapeKey(() => ctx.onOpenChange(false), ctx.open);\n\n if (!ctx.open) return null;\n\n return (\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n \"data-[state=open]:animate-[nuka-dialog-overlay-enter_150ms_ease-out]\",\n )}\n data-slot=\"overlay\"\n data-state=\"open\"\n onClick={() => ctx.onOpenChange(false)}\n aria-hidden=\"true\"\n />\n <div\n ref={composedRef}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={ctx.titleId}\n aria-describedby={ctx.hasDescription ? ctx.descriptionId : undefined}\n tabIndex={-1}\n data-slot=\"content\"\n data-state=\"open\"\n data-side={side}\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-base) border-(--nuka-border-base) shadow-md\",\n \"p-(--space-6)\",\n \"transition-transform duration-300 ease-in-out\",\n \"motion-reduce:transition-none\",\n // Programmatic focus via useFocusTrap; :focus-visible does not activate, so this is inert\n \"focus-visible:outline-none\",\n sideClasses[side],\n className,\n )}\n {...props}\n >\n <DismissButton\n onClick={() => ctx.onOpenChange(false)}\n label=\"Close sheet\"\n className=\"absolute top-(--space-4) right-(--space-4) text-(--nuka-text-muted)\"\n />\n {children}\n </div>\n </Portal>\n );\n}\n\nSheetContent.displayName = \"SheetContent\";\n\nexport {\n Sheet,\n SheetTrigger,\n SheetContent,\n SheetTitle,\n SheetDescription,\n SheetClose,\n};\n"],"mappings":"0iBA2BA,GAAM,CACJ,KAAM,EACN,QAAS,EACT,MAAO,EACP,YAAa,EACb,MAAO,GACL,EAAA,qBAAqB,CACvB,kBAAmB,QACnB,WAAY,cACZ,QAAS,EAAA,aACT,WAAY,EAAA,
|
|
1
|
+
{"version":3,"file":"Sheet.cjs","names":[],"sources":["../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { DismissButton } from \"@nuka/utils/dismiss-button\";\nimport { useFocusTrap } from \"@nuka/hooks/use-focus-trap\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport {\n createModalPrimitive,\n useEscapeKey,\n} from \"@nuka/utils/modal-primitive\";\nimport { useModalTitleWarning } from \"@nuka/hooks/use-modal-title-warning\";\nimport type {\n ModalRootProps,\n ModalTriggerProps,\n ModalTitleProps,\n ModalDescriptionProps,\n ModalCloseProps,\n} from \"@nuka/utils/modal-primitive\";\nimport {\n SheetContext,\n useSheetContext,\n} from \"@nuka/components/Sheet/Sheet.context\";\n\nexport type SheetSide = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nconst {\n Root: Sheet,\n Trigger: SheetTrigger,\n Title: SheetTitle,\n Description: SheetDescription,\n Close: SheetClose,\n} = createModalPrimitive({\n displayNamePrefix: \"Sheet\",\n closeLabel: \"Close sheet\",\n Context: SheetContext,\n useContext: useSheetContext,\n});\n\nexport type SheetProps = ModalRootProps;\nexport type SheetTriggerProps = ModalTriggerProps;\nexport type SheetTitleProps = ModalTitleProps;\nexport type SheetDescriptionProps = ModalDescriptionProps;\nexport type SheetCloseProps = ModalCloseProps;\n\nconst sideClasses: Record<SheetSide, string> = {\n right:\n \"inset-y-0 right-0 h-full w-3/4 max-w-sm translate-x-full data-[state=open]:translate-x-0 border-l\",\n left: \"inset-y-0 left-0 h-full w-3/4 max-w-sm -translate-x-full data-[state=open]:translate-x-0 border-r\",\n top: \"inset-x-0 top-0 w-full -translate-y-full data-[state=open]:translate-y-0 border-b\",\n bottom:\n \"inset-x-0 bottom-0 w-full translate-y-full data-[state=open]:translate-y-0 border-t\",\n};\n\nexport interface SheetContentProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n side?: SheetSide;\n}\n\nfunction SheetContent({\n ref,\n side = \"right\",\n className,\n children,\n ...props\n}: SheetContentProps) {\n const ctx = useSheetContext();\n const panelRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, panelRef);\n\n useFocusTrap(panelRef, ctx.open);\n useScrollLock(ctx.open);\n useModalTitleWarning(\"Sheet\", ctx.titleId, ctx.open);\n useEscapeKey(() => ctx.onOpenChange(false), ctx.open);\n\n if (!ctx.open) return null;\n\n return (\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n \"data-[state=open]:animate-[nuka-dialog-overlay-enter_150ms_ease-out]\",\n )}\n data-slot=\"overlay\"\n data-state=\"open\"\n onClick={() => ctx.onOpenChange(false)}\n aria-hidden=\"true\"\n />\n <div\n ref={composedRef}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={ctx.titleId}\n aria-describedby={ctx.hasDescription ? ctx.descriptionId : undefined}\n tabIndex={-1}\n data-slot=\"content\"\n data-state=\"open\"\n data-side={side}\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-base) border-(--nuka-border-base) shadow-md\",\n \"p-(--space-6)\",\n \"transition-transform duration-300 ease-in-out\",\n \"motion-reduce:transition-none\",\n // Programmatic focus via useFocusTrap; :focus-visible does not activate, so this is inert\n \"focus-visible:outline-none\",\n sideClasses[side],\n className,\n )}\n {...props}\n >\n <DismissButton\n onClick={() => ctx.onOpenChange(false)}\n label=\"Close sheet\"\n className=\"absolute top-(--space-4) right-(--space-4) text-(--nuka-text-muted)\"\n />\n {children}\n </div>\n </Portal>\n );\n}\n\nSheetContent.displayName = \"SheetContent\";\n\nexport {\n Sheet,\n SheetTrigger,\n SheetContent,\n SheetTitle,\n SheetDescription,\n SheetClose,\n};\n"],"mappings":"0iBA2BA,GAAM,CACJ,KAAM,EACN,QAAS,EACT,MAAO,EACP,YAAa,EACb,MAAO,GACL,EAAA,qBAAqB,CACvB,kBAAmB,QACnB,WAAY,cACZ,QAAS,EAAA,aACT,WAAY,EAAA,eACd,CAAC,EAQK,EAAyC,CAC7C,MACE,oGACF,KAAM,oGACN,IAAK,oFACL,OACE,qFACJ,EAOA,SAAS,EAAa,CACpB,MACA,OAAO,QACP,YACA,WACA,GAAG,GACiB,CACpB,IAAM,EAAM,EAAA,gBAAgB,EACtB,EAAW,EAAM,OAAuB,IAAI,EAC5C,EAAc,EAAA,YAAY,EAAK,CAAQ,EAS7C,OAPA,EAAA,aAAa,EAAU,EAAI,IAAI,EAC/B,EAAA,cAAc,EAAI,IAAI,EACtB,EAAA,qBAAqB,QAAS,EAAI,QAAS,EAAI,IAAI,EACnD,EAAA,iBAAmB,EAAI,aAAa,EAAK,EAAG,EAAI,IAAI,EAE/C,EAAI,MAGP,EAAA,EAAA,MAAC,EAAA,OAAD,CAAA,SAAA,EACE,EAAA,EAAA,KAAC,MAAD,CACE,UAAW,EAAA,GACT,mCACA,yBACA,sEACF,EACA,YAAU,UACV,aAAW,OACX,YAAe,EAAI,aAAa,EAAK,EACrC,cAAY,MACb,CAAA,GACD,EAAA,EAAA,MAAC,MAAD,CACE,IAAK,EACL,KAAK,SACL,aAAW,OACX,kBAAiB,EAAI,QACrB,mBAAkB,EAAI,eAAiB,EAAI,cAAgB,IAAA,GAC3D,SAAU,GACV,YAAU,UACV,aAAW,OACX,YAAW,EACX,UAAW,EAAA,GACT,2BACA,4DACA,gBACA,gDACA,gCAEA,6BACA,EAAY,GACZ,CACF,EACA,GAAI,WArBN,EAuBE,EAAA,EAAA,KAAC,EAAA,cAAD,CACE,YAAe,EAAI,aAAa,EAAK,EACrC,MAAM,cACN,UAAU,qEACX,CAAA,EACA,CACE,GACC,CAAA,CAAA,EA7CY,IA+CxB,CAEA,EAAa,YAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";
|
|
1
|
+
"use client";let e=require("react");var t=(0,e.createContext)(null);function n(){let n=(0,e.use)(t);if(n===null)throw Error(`Sheet compound components must be used within <Sheet>`);return n}exports.SheetContext=t,exports.useSheetContext=n;
|
|
2
2
|
//# sourceMappingURL=Sheet.context.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sheet.context.cjs","names":[],"sources":["../../../src/components/Sheet/Sheet.context.tsx"],"sourcesContent":["\"use client\";\nimport { createContext,
|
|
1
|
+
{"version":3,"file":"Sheet.context.cjs","names":[],"sources":["../../../src/components/Sheet/Sheet.context.tsx"],"sourcesContent":["\"use client\";\nimport { createContext, use } from \"react\";\n\nexport interface SheetContextValue {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n titleId: string;\n descriptionId: string;\n hasDescription: boolean;\n setHasDescription: (value: boolean) => void;\n}\n\nconst SheetContext = createContext<SheetContextValue | null>(null);\n\nfunction useSheetContext(): SheetContextValue {\n const context = use(SheetContext);\n if (context === null) {\n throw new Error(\"Sheet compound components must be used within <Sheet>\");\n }\n return context;\n}\n\nexport { SheetContext, useSheetContext };\n"],"mappings":"oCAYA,IAAM,GAAA,EAAA,EAAA,eAAuD,IAAI,EAEjE,SAAS,GAAqC,CAC5C,IAAM,GAAA,EAAA,EAAA,KAAc,CAAY,EAChC,GAAI,IAAY,KACd,MAAU,MAAM,uDAAuD,EAEzE,OAAO,CACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sheet.context.js","names":[],"sources":["../../../src/components/Sheet/Sheet.context.tsx"],"sourcesContent":["\"use client\";\nimport { createContext,
|
|
1
|
+
{"version":3,"file":"Sheet.context.js","names":[],"sources":["../../../src/components/Sheet/Sheet.context.tsx"],"sourcesContent":["\"use client\";\nimport { createContext, use } from \"react\";\n\nexport interface SheetContextValue {\n open: boolean;\n onOpenChange: (open: boolean) => void;\n titleId: string;\n descriptionId: string;\n hasDescription: boolean;\n setHasDescription: (value: boolean) => void;\n}\n\nconst SheetContext = createContext<SheetContextValue | null>(null);\n\nfunction useSheetContext(): SheetContextValue {\n const context = use(SheetContext);\n if (context === null) {\n throw new Error(\"Sheet compound components must be used within <Sheet>\");\n }\n return context;\n}\n\nexport { SheetContext, useSheetContext };\n"],"mappings":";;;AAYA,IAAM,IAAe,EAAwC,IAAI;AAEjE,SAAS,IAAqC;CAC5C,IAAM,IAAU,EAAI,CAAY;CAChC,IAAI,MAAY,MACd,MAAU,MAAM,uDAAuD;CAEzE,OAAO;AACT"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sheet.js","names":[],"sources":["../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { DismissButton } from \"@nuka/utils/dismiss-button\";\nimport { useFocusTrap } from \"@nuka/hooks/use-focus-trap\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport {\n createModalPrimitive,\n useEscapeKey,\n} from \"@nuka/utils/modal-primitive\";\nimport { useModalTitleWarning } from \"@nuka/hooks/use-modal-title-warning\";\nimport type {\n ModalRootProps,\n ModalTriggerProps,\n ModalTitleProps,\n ModalDescriptionProps,\n ModalCloseProps,\n} from \"@nuka/utils/modal-primitive\";\nimport {\n SheetContext,\n useSheetContext,\n} from \"@nuka/components/Sheet/Sheet.context\";\n\nexport type SheetSide = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nconst {\n Root: Sheet,\n Trigger: SheetTrigger,\n Title: SheetTitle,\n Description: SheetDescription,\n Close: SheetClose,\n} = createModalPrimitive({\n displayNamePrefix: \"Sheet\",\n closeLabel: \"Close sheet\",\n Context: SheetContext,\n useContext: useSheetContext,\n});\n\nexport type SheetProps = ModalRootProps;\nexport type SheetTriggerProps = ModalTriggerProps;\nexport type SheetTitleProps = ModalTitleProps;\nexport type SheetDescriptionProps = ModalDescriptionProps;\nexport type SheetCloseProps = ModalCloseProps;\n\nconst sideClasses: Record<SheetSide, string> = {\n right:\n \"inset-y-0 right-0 h-full w-3/4 max-w-sm translate-x-full data-[state=open]:translate-x-0 border-l\",\n left: \"inset-y-0 left-0 h-full w-3/4 max-w-sm -translate-x-full data-[state=open]:translate-x-0 border-r\",\n top: \"inset-x-0 top-0 w-full -translate-y-full data-[state=open]:translate-y-0 border-b\",\n bottom:\n \"inset-x-0 bottom-0 w-full translate-y-full data-[state=open]:translate-y-0 border-t\",\n};\n\nexport interface SheetContentProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n side?: SheetSide;\n}\n\nfunction SheetContent({\n ref,\n side = \"right\",\n className,\n children,\n ...props\n}: SheetContentProps) {\n const ctx = useSheetContext();\n const panelRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, panelRef);\n\n useFocusTrap(panelRef, ctx.open);\n useScrollLock(ctx.open);\n useModalTitleWarning(\"Sheet\", ctx.titleId, ctx.open);\n useEscapeKey(() => ctx.onOpenChange(false), ctx.open);\n\n if (!ctx.open) return null;\n\n return (\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n \"data-[state=open]:animate-[nuka-dialog-overlay-enter_150ms_ease-out]\",\n )}\n data-slot=\"overlay\"\n data-state=\"open\"\n onClick={() => ctx.onOpenChange(false)}\n aria-hidden=\"true\"\n />\n <div\n ref={composedRef}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={ctx.titleId}\n aria-describedby={ctx.hasDescription ? ctx.descriptionId : undefined}\n tabIndex={-1}\n data-slot=\"content\"\n data-state=\"open\"\n data-side={side}\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-base) border-(--nuka-border-base) shadow-md\",\n \"p-(--space-6)\",\n \"transition-transform duration-300 ease-in-out\",\n \"motion-reduce:transition-none\",\n // Programmatic focus via useFocusTrap; :focus-visible does not activate, so this is inert\n \"focus-visible:outline-none\",\n sideClasses[side],\n className,\n )}\n {...props}\n >\n <DismissButton\n onClick={() => ctx.onOpenChange(false)}\n label=\"Close sheet\"\n className=\"absolute top-(--space-4) right-(--space-4) text-(--nuka-text-muted)\"\n />\n {children}\n </div>\n </Portal>\n );\n}\n\nSheetContent.displayName = \"SheetContent\";\n\nexport {\n Sheet,\n SheetTrigger,\n SheetContent,\n SheetTitle,\n SheetDescription,\n SheetClose,\n};\n"],"mappings":";;;;;;;;;;;;;;AA2BA,IAAM,EACJ,MAAM,GACN,SAAS,GACT,OAAO,GACP,aAAa,GACb,OAAO,MACL,EAAqB;CACvB,mBAAmB;CACnB,YAAY;CACZ,SAAS;CACT,YAAY;
|
|
1
|
+
{"version":3,"file":"Sheet.js","names":[],"sources":["../../../src/components/Sheet/Sheet.tsx"],"sourcesContent":["\"use client\";\nimport * as React from \"react\";\nimport { cn } from \"@nuka/utils/cn\";\nimport { composeRefs } from \"@nuka/utils/slot\";\nimport { Portal } from \"@nuka/utils/portal\";\nimport { DismissButton } from \"@nuka/utils/dismiss-button\";\nimport { useFocusTrap } from \"@nuka/hooks/use-focus-trap\";\nimport { useScrollLock } from \"@nuka/hooks/use-scroll-lock\";\nimport {\n createModalPrimitive,\n useEscapeKey,\n} from \"@nuka/utils/modal-primitive\";\nimport { useModalTitleWarning } from \"@nuka/hooks/use-modal-title-warning\";\nimport type {\n ModalRootProps,\n ModalTriggerProps,\n ModalTitleProps,\n ModalDescriptionProps,\n ModalCloseProps,\n} from \"@nuka/utils/modal-primitive\";\nimport {\n SheetContext,\n useSheetContext,\n} from \"@nuka/components/Sheet/Sheet.context\";\n\nexport type SheetSide = \"top\" | \"right\" | \"bottom\" | \"left\";\n\nconst {\n Root: Sheet,\n Trigger: SheetTrigger,\n Title: SheetTitle,\n Description: SheetDescription,\n Close: SheetClose,\n} = createModalPrimitive({\n displayNamePrefix: \"Sheet\",\n closeLabel: \"Close sheet\",\n Context: SheetContext,\n useContext: useSheetContext,\n});\n\nexport type SheetProps = ModalRootProps;\nexport type SheetTriggerProps = ModalTriggerProps;\nexport type SheetTitleProps = ModalTitleProps;\nexport type SheetDescriptionProps = ModalDescriptionProps;\nexport type SheetCloseProps = ModalCloseProps;\n\nconst sideClasses: Record<SheetSide, string> = {\n right:\n \"inset-y-0 right-0 h-full w-3/4 max-w-sm translate-x-full data-[state=open]:translate-x-0 border-l\",\n left: \"inset-y-0 left-0 h-full w-3/4 max-w-sm -translate-x-full data-[state=open]:translate-x-0 border-r\",\n top: \"inset-x-0 top-0 w-full -translate-y-full data-[state=open]:translate-y-0 border-b\",\n bottom:\n \"inset-x-0 bottom-0 w-full translate-y-full data-[state=open]:translate-y-0 border-t\",\n};\n\nexport interface SheetContentProps extends React.HTMLAttributes<HTMLDivElement> {\n ref?: React.Ref<HTMLDivElement> | undefined;\n side?: SheetSide;\n}\n\nfunction SheetContent({\n ref,\n side = \"right\",\n className,\n children,\n ...props\n}: SheetContentProps) {\n const ctx = useSheetContext();\n const panelRef = React.useRef<HTMLDivElement>(null);\n const composedRef = composeRefs(ref, panelRef);\n\n useFocusTrap(panelRef, ctx.open);\n useScrollLock(ctx.open);\n useModalTitleWarning(\"Sheet\", ctx.titleId, ctx.open);\n useEscapeKey(() => ctx.onOpenChange(false), ctx.open);\n\n if (!ctx.open) return null;\n\n return (\n <Portal>\n <div\n className={cn(\n \"fixed inset-0 z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-overlay)\",\n \"data-[state=open]:animate-[nuka-dialog-overlay-enter_150ms_ease-out]\",\n )}\n data-slot=\"overlay\"\n data-state=\"open\"\n onClick={() => ctx.onOpenChange(false)}\n aria-hidden=\"true\"\n />\n <div\n ref={composedRef}\n role=\"dialog\"\n aria-modal=\"true\"\n aria-labelledby={ctx.titleId}\n aria-describedby={ctx.hasDescription ? ctx.descriptionId : undefined}\n tabIndex={-1}\n data-slot=\"content\"\n data-state=\"open\"\n data-side={side}\n className={cn(\n \"fixed z-(--nuka-z-modal)\",\n \"bg-(--nuka-bg-base) border-(--nuka-border-base) shadow-md\",\n \"p-(--space-6)\",\n \"transition-transform duration-300 ease-in-out\",\n \"motion-reduce:transition-none\",\n // Programmatic focus via useFocusTrap; :focus-visible does not activate, so this is inert\n \"focus-visible:outline-none\",\n sideClasses[side],\n className,\n )}\n {...props}\n >\n <DismissButton\n onClick={() => ctx.onOpenChange(false)}\n label=\"Close sheet\"\n className=\"absolute top-(--space-4) right-(--space-4) text-(--nuka-text-muted)\"\n />\n {children}\n </div>\n </Portal>\n );\n}\n\nSheetContent.displayName = \"SheetContent\";\n\nexport {\n Sheet,\n SheetTrigger,\n SheetContent,\n SheetTitle,\n SheetDescription,\n SheetClose,\n};\n"],"mappings":";;;;;;;;;;;;;;AA2BA,IAAM,EACJ,MAAM,GACN,SAAS,GACT,OAAO,GACP,aAAa,GACb,OAAO,MACL,EAAqB;CACvB,mBAAmB;CACnB,YAAY;CACZ,SAAS;CACT,YAAY;AACd,CAAC,GAQK,IAAyC;CAC7C,OACE;CACF,MAAM;CACN,KAAK;CACL,QACE;AACJ;AAOA,SAAS,EAAa,EACpB,QACA,UAAO,SACP,cACA,aACA,GAAG,KACiB;CACpB,IAAM,IAAM,EAAgB,GACtB,IAAW,EAAM,OAAuB,IAAI,GAC5C,IAAc,EAAY,GAAK,CAAQ;CAS7C,OAPA,EAAa,GAAU,EAAI,IAAI,GAC/B,EAAc,EAAI,IAAI,GACtB,EAAqB,SAAS,EAAI,SAAS,EAAI,IAAI,GACnD,QAAmB,EAAI,aAAa,EAAK,GAAG,EAAI,IAAI,GAE/C,EAAI,OAGP,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,OAAD;EACE,WAAW,EACT,oCACA,0BACA,sEACF;EACA,aAAU;EACV,cAAW;EACX,eAAe,EAAI,aAAa,EAAK;EACrC,eAAY;CACb,CAAA,GACD,kBAAC,OAAD;EACE,KAAK;EACL,MAAK;EACL,cAAW;EACX,mBAAiB,EAAI;EACrB,oBAAkB,EAAI,iBAAiB,EAAI,gBAAgB,KAAA;EAC3D,UAAU;EACV,aAAU;EACV,cAAW;EACX,aAAW;EACX,WAAW,EACT,4BACA,6DACA,iBACA,iDACA,iCAEA,8BACA,EAAY,IACZ,CACF;EACA,GAAI;YArBN,CAuBE,kBAAC,GAAD;GACE,eAAe,EAAI,aAAa,EAAK;GACrC,OAAM;GACN,WAAU;EACX,CAAA,GACA,CACE;GACC,EAAA,CAAA,IA7CY;AA+CxB;AAEA,EAAa,cAAc"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use client";const e=require(
|
|
1
|
+
"use client";const e=require("../../_virtual/_rolldown/runtime.cjs"),t=require("../../utils/cn.cjs"),n=require("../Sheet/Sheet.cjs"),r=require("./Sidebar.context.cjs");let i=require("react");i=e.__toESM(i,1);let a=require("react/jsx-runtime");function o({ref:e,className:i,children:o,...s}){let{expanded:c,isMobile:l,mobileOpen:u,setMobileOpen:d}=r.useSidebarContext();return l?(0,a.jsx)(n.Sheet,{open:u,onOpenChange:d,children:(0,a.jsxs)(n.SheetContent,{side:`left`,className:`w-72 p-0`,children:[(0,a.jsx)(n.SheetTitle,{className:`sr-only`,children:`Navigation`}),(0,a.jsx)(n.SheetDescription,{className:`sr-only`,children:`Main navigation menu`}),(0,a.jsx)(`div`,{className:`flex h-full flex-col`,"data-slot":`root`,...s,children:o})]})}):(0,a.jsx)(`aside`,{ref:e,"data-slot":`root`,"data-expanded":c?``:void 0,"data-collapsed":c?void 0:``,className:t.cn(`flex h-full flex-col`,`border-r border-(--nuka-border-base)`,`bg-(--nuka-bg-base)`,`transition-[width] duration-200 ease-in-out`,`motion-reduce:transition-none`,`overflow-hidden shrink-0`,c?`w-64`:`w-14`,i),...s,children:o})}o.displayName=`Sidebar`,exports.Sidebar=o;
|
|
2
2
|
//# sourceMappingURL=Sidebar.cjs.map
|