@primitiv-ui/react 0.1.38 → 0.1.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -2
- package/dist/AccessibleIcon/AccessibleIcon.d.ts +51 -0
- package/dist/AccessibleIcon/AccessibleIcon.js +55 -0
- package/dist/AccessibleIcon/index.d.ts +2 -0
- package/dist/AccessibleIcon/index.js +2 -0
- package/dist/AccessibleIcon/types.d.ts +24 -0
- package/dist/AccessibleIcon/types.js +1 -0
- package/dist/Accordion/Accordion.d.ts +287 -0
- package/dist/Accordion/Accordion.js +330 -0
- package/dist/Accordion/AccordionContext.d.ts +3 -0
- package/dist/Accordion/AccordionContext.js +4 -0
- package/dist/Accordion/hooks/index.d.ts +6 -0
- package/dist/Accordion/hooks/index.js +6 -0
- package/dist/Accordion/hooks/useAccordionContext.d.ts +1 -0
- package/dist/Accordion/hooks/useAccordionContext.js +1 -0
- package/dist/Accordion/hooks/useAccordionHeaderContext.d.ts +1 -0
- package/dist/Accordion/hooks/useAccordionHeaderContext.js +10 -0
- package/dist/Accordion/hooks/useAccordionItem.d.ts +8 -0
- package/dist/Accordion/hooks/useAccordionItem.js +15 -0
- package/dist/Accordion/hooks/useAccordionItemContext.d.ts +1 -0
- package/dist/Accordion/hooks/useAccordionItemContext.js +1 -0
- package/dist/Accordion/hooks/useAccordionRoot.d.ts +16 -0
- package/dist/Accordion/hooks/useAccordionRoot.js +133 -0
- package/dist/Accordion/hooks/useAccordionTrigger.d.ts +298 -0
- package/dist/Accordion/hooks/useAccordionTrigger.js +73 -0
- package/dist/Accordion/index.d.ts +2 -0
- package/dist/Accordion/index.js +2 -0
- package/dist/Accordion/types.d.ts +152 -0
- package/dist/Accordion/types.js +1 -0
- package/dist/Alert/Alert.d.ts +64 -0
- package/dist/Alert/Alert.js +70 -0
- package/dist/Alert/index.d.ts +2 -0
- package/dist/Alert/index.js +2 -0
- package/dist/Alert/types.d.ts +21 -0
- package/dist/Alert/types.js +1 -0
- package/dist/Avatar/Avatar.d.ts +144 -0
- package/dist/Avatar/Avatar.js +187 -0
- package/dist/Avatar/AvatarContext.d.ts +16 -0
- package/dist/Avatar/AvatarContext.js +7 -0
- package/dist/Avatar/hooks/index.d.ts +2 -0
- package/dist/Avatar/hooks/index.js +2 -0
- package/dist/Avatar/hooks/useAvatarContext.d.ts +1 -0
- package/dist/Avatar/hooks/useAvatarContext.js +1 -0
- package/dist/Avatar/hooks/useAvatarImage.d.ts +21 -0
- package/dist/Avatar/hooks/useAvatarImage.js +47 -0
- package/dist/Avatar/index.d.ts +3 -0
- package/dist/Avatar/index.js +3 -0
- package/dist/Avatar/types.d.ts +52 -0
- package/dist/Avatar/types.js +1 -0
- package/dist/Breadcrumb/Breadcrumb.d.ts +280 -0
- package/dist/Breadcrumb/Breadcrumb.js +299 -0
- package/dist/Breadcrumb/index.d.ts +2 -0
- package/dist/Breadcrumb/index.js +2 -0
- package/dist/Breadcrumb/types.d.ts +81 -0
- package/dist/Breadcrumb/types.js +1 -0
- package/dist/Button/Button.d.ts +73 -0
- package/dist/Button/Button.js +84 -0
- package/dist/Button/index.d.ts +2 -0
- package/dist/Button/index.js +2 -0
- package/dist/Button/types.d.ts +32 -0
- package/dist/Button/types.js +1 -0
- package/dist/Carousel/Carousel.d.ts +498 -0
- package/dist/Carousel/Carousel.js +660 -0
- package/dist/Carousel/CarouselContext.d.ts +7 -0
- package/dist/Carousel/CarouselContext.js +8 -0
- package/dist/Carousel/hooks/index.d.ts +5 -0
- package/dist/Carousel/hooks/index.js +5 -0
- package/dist/Carousel/hooks/useCarouselContext.d.ts +1 -0
- package/dist/Carousel/hooks/useCarouselContext.js +10 -0
- package/dist/Carousel/hooks/useCarouselLoop.d.ts +39 -0
- package/dist/Carousel/hooks/useCarouselLoop.js +735 -0
- package/dist/Carousel/hooks/useCarouselRoot.d.ts +97 -0
- package/dist/Carousel/hooks/useCarouselRoot.js +545 -0
- package/dist/Carousel/hooks/useCarouselSlide.d.ts +24 -0
- package/dist/Carousel/hooks/useCarouselSlide.js +62 -0
- package/dist/Carousel/hooks/useCarouselViewport.d.ts +46 -0
- package/dist/Carousel/hooks/useCarouselViewport.js +786 -0
- package/dist/Carousel/index.d.ts +3 -0
- package/dist/Carousel/index.js +3 -0
- package/dist/Carousel/loopEngine.d.ts +26 -0
- package/dist/Carousel/loopEngine.js +48 -0
- package/dist/Carousel/types.d.ts +783 -0
- package/dist/Carousel/types.js +1 -0
- package/dist/Checkbox/Checkbox.d.ts +120 -0
- package/dist/Checkbox/Checkbox.js +155 -0
- package/dist/Checkbox/CheckboxContext.d.ts +13 -0
- package/dist/Checkbox/CheckboxContext.js +3 -0
- package/dist/Checkbox/hooks/index.d.ts +3 -0
- package/dist/Checkbox/hooks/index.js +3 -0
- package/dist/Checkbox/hooks/useCheckboxContext.d.ts +1 -0
- package/dist/Checkbox/hooks/useCheckboxContext.js +1 -0
- package/dist/Checkbox/hooks/useCheckboxInput.d.ts +33 -0
- package/dist/Checkbox/hooks/useCheckboxInput.js +37 -0
- package/dist/Checkbox/hooks/useCheckboxRoot.d.ts +11 -0
- package/dist/Checkbox/hooks/useCheckboxRoot.js +14 -0
- package/dist/Checkbox/index.d.ts +2 -0
- package/dist/Checkbox/index.js +2 -0
- package/dist/Checkbox/types.d.ts +74 -0
- package/dist/Checkbox/types.js +1 -0
- package/dist/CheckboxCard/CheckboxCard.d.ts +132 -0
- package/dist/CheckboxCard/CheckboxCard.js +175 -0
- package/dist/CheckboxCard/CheckboxCardContext.d.ts +15 -0
- package/dist/CheckboxCard/CheckboxCardContext.js +10 -0
- package/dist/CheckboxCard/hooks/index.d.ts +2 -0
- package/dist/CheckboxCard/hooks/index.js +2 -0
- package/dist/CheckboxCard/hooks/useCheckboxCardContext.d.ts +1 -0
- package/dist/CheckboxCard/hooks/useCheckboxCardContext.js +1 -0
- package/dist/CheckboxCard/hooks/useCheckboxCardRoot.d.ts +11 -0
- package/dist/CheckboxCard/hooks/useCheckboxCardRoot.js +12 -0
- package/dist/CheckboxCard/index.d.ts +3 -0
- package/dist/CheckboxCard/index.js +3 -0
- package/dist/CheckboxCard/types.d.ts +87 -0
- package/dist/CheckboxCard/types.js +1 -0
- package/dist/Collapsible/Collapsible.d.ts +243 -0
- package/dist/Collapsible/Collapsible.js +275 -0
- package/dist/Collapsible/CollapsibleContext.d.ts +2 -0
- package/dist/Collapsible/CollapsibleContext.js +3 -0
- package/dist/Collapsible/hooks/index.d.ts +2 -0
- package/dist/Collapsible/hooks/index.js +2 -0
- package/dist/Collapsible/hooks/useCollapsibleRoot.d.ts +9 -0
- package/dist/Collapsible/hooks/useCollapsibleRoot.js +18 -0
- package/dist/Collapsible/hooks/useCollapsibleTrigger.d.ts +299 -0
- package/dist/Collapsible/hooks/useCollapsibleTrigger.js +39 -0
- package/dist/Collapsible/index.d.ts +2 -0
- package/dist/Collapsible/index.js +2 -0
- package/dist/Collapsible/types.d.ts +134 -0
- package/dist/Collapsible/types.js +1 -0
- package/dist/Combobox/Combobox.d.ts +149 -0
- package/dist/Combobox/Combobox.js +355 -0
- package/dist/Combobox/ComboboxContext.d.ts +10 -0
- package/dist/Combobox/ComboboxContext.js +13 -0
- package/dist/Combobox/hooks/index.d.ts +1 -0
- package/dist/Combobox/hooks/index.js +1 -0
- package/dist/Combobox/hooks/useComboboxRoot.d.ts +1 -0
- package/dist/Combobox/hooks/useComboboxRoot.js +1 -0
- package/dist/Combobox/index.d.ts +3 -0
- package/dist/Combobox/index.js +3 -0
- package/dist/Combobox/types.d.ts +126 -0
- package/dist/Combobox/types.js +1 -0
- package/dist/ContextMenu/ContextMenu.d.ts +508 -0
- package/dist/ContextMenu/ContextMenu.js +1005 -0
- package/dist/ContextMenu/ContextMenuContentContext.d.ts +12 -0
- package/dist/ContextMenu/ContextMenuContentContext.js +3 -0
- package/dist/ContextMenu/ContextMenuContext.d.ts +16 -0
- package/dist/ContextMenu/ContextMenuContext.js +3 -0
- package/dist/ContextMenu/ContextMenuGroupContext.d.ts +4 -0
- package/dist/ContextMenu/ContextMenuGroupContext.js +3 -0
- package/dist/ContextMenu/ContextMenuItemIndicatorContext.d.ts +4 -0
- package/dist/ContextMenu/ContextMenuItemIndicatorContext.js +3 -0
- package/dist/ContextMenu/ContextMenuRadioGroupContext.d.ts +5 -0
- package/dist/ContextMenu/ContextMenuRadioGroupContext.js +3 -0
- package/dist/ContextMenu/ContextMenuSubContext.d.ts +8 -0
- package/dist/ContextMenu/ContextMenuSubContext.js +3 -0
- package/dist/ContextMenu/constants.d.ts +2 -0
- package/dist/ContextMenu/constants.js +3 -0
- package/dist/ContextMenu/index.d.ts +2 -0
- package/dist/ContextMenu/index.js +2 -0
- package/dist/ContextMenu/types.d.ts +424 -0
- package/dist/ContextMenu/types.js +1 -0
- package/dist/DirectionProvider/DirectionContext.d.ts +15 -0
- package/dist/DirectionProvider/DirectionContext.js +18 -0
- package/dist/DirectionProvider/DirectionProvider.d.ts +57 -0
- package/dist/DirectionProvider/DirectionProvider.js +59 -0
- package/dist/DirectionProvider/index.d.ts +3 -0
- package/dist/DirectionProvider/index.js +2 -0
- package/dist/DirectionProvider/types.d.ts +34 -0
- package/dist/DirectionProvider/types.js +1 -0
- package/dist/Divider/Divider.d.ts +59 -0
- package/dist/Divider/Divider.js +60 -0
- package/dist/Divider/index.d.ts +2 -0
- package/dist/Divider/index.js +2 -0
- package/dist/Divider/types.d.ts +16 -0
- package/dist/Divider/types.js +1 -0
- package/dist/Drawer/Drawer.d.ts +268 -0
- package/dist/Drawer/Drawer.js +271 -0
- package/dist/Drawer/index.d.ts +2 -0
- package/dist/Drawer/index.js +2 -0
- package/dist/Drawer/types.d.ts +45 -0
- package/dist/Drawer/types.js +1 -0
- package/dist/Dropdown/Dropdown.d.ts +476 -0
- package/dist/Dropdown/Dropdown.js +745 -0
- package/dist/Dropdown/DropdownContentContext.d.ts +12 -0
- package/dist/Dropdown/DropdownContentContext.js +3 -0
- package/dist/Dropdown/DropdownContext.d.ts +10 -0
- package/dist/Dropdown/DropdownContext.js +3 -0
- package/dist/Dropdown/DropdownGroupContext.d.ts +4 -0
- package/dist/Dropdown/DropdownGroupContext.js +3 -0
- package/dist/Dropdown/DropdownItemIndicatorContext.d.ts +9 -0
- package/dist/Dropdown/DropdownItemIndicatorContext.js +3 -0
- package/dist/Dropdown/DropdownRadioGroupContext.d.ts +5 -0
- package/dist/Dropdown/DropdownRadioGroupContext.js +3 -0
- package/dist/Dropdown/DropdownSubContext.d.ts +8 -0
- package/dist/Dropdown/DropdownSubContext.js +3 -0
- package/dist/Dropdown/constants.d.ts +2 -0
- package/dist/Dropdown/constants.js +3 -0
- package/dist/Dropdown/hooks/index.d.ts +9 -0
- package/dist/Dropdown/hooks/index.js +9 -0
- package/dist/Dropdown/hooks/useCloseSiblingSub.d.ts +7 -0
- package/dist/Dropdown/hooks/useCloseSiblingSub.js +13 -0
- package/dist/Dropdown/hooks/useDropdownContent.d.ts +296 -0
- package/dist/Dropdown/hooks/useDropdownContent.js +149 -0
- package/dist/Dropdown/hooks/useDropdownContext.d.ts +1 -0
- package/dist/Dropdown/hooks/useDropdownContext.js +1 -0
- package/dist/Dropdown/hooks/useDropdownGroup.d.ts +294 -0
- package/dist/Dropdown/hooks/useDropdownGroup.js +12 -0
- package/dist/Dropdown/hooks/useDropdownItem.d.ts +13 -0
- package/dist/Dropdown/hooks/useDropdownItem.js +34 -0
- package/dist/Dropdown/hooks/useDropdownLabel.d.ts +292 -0
- package/dist/Dropdown/hooks/useDropdownLabel.js +8 -0
- package/dist/Dropdown/hooks/useDropdownRoot.d.ts +19 -0
- package/dist/Dropdown/hooks/useDropdownRoot.js +25 -0
- package/dist/Dropdown/hooks/useDropdownSubContext.d.ts +1 -0
- package/dist/Dropdown/hooks/useDropdownSubContext.js +1 -0
- package/dist/Dropdown/hooks/useDropdownTrigger.d.ts +302 -0
- package/dist/Dropdown/hooks/useDropdownTrigger.js +18 -0
- package/dist/Dropdown/index.d.ts +2 -0
- package/dist/Dropdown/index.js +2 -0
- package/dist/Dropdown/types.d.ts +496 -0
- package/dist/Dropdown/types.js +1 -0
- package/dist/EmptyState/EmptyState.d.ts +246 -0
- package/dist/EmptyState/EmptyState.js +268 -0
- package/dist/EmptyState/index.d.ts +2 -0
- package/dist/EmptyState/index.js +2 -0
- package/dist/EmptyState/types.d.ts +59 -0
- package/dist/EmptyState/types.js +1 -0
- package/dist/Field/Field.d.ts +178 -0
- package/dist/Field/Field.js +211 -0
- package/dist/Field/FieldContext.d.ts +15 -0
- package/dist/Field/FieldContext.js +3 -0
- package/dist/Field/hooks/index.d.ts +2 -0
- package/dist/Field/hooks/index.js +2 -0
- package/dist/Field/hooks/useFieldContext.d.ts +1 -0
- package/dist/Field/hooks/useFieldContext.js +1 -0
- package/dist/Field/hooks/useFieldProps.d.ts +25 -0
- package/dist/Field/hooks/useFieldProps.js +39 -0
- package/dist/Field/index.d.ts +2 -0
- package/dist/Field/index.js +2 -0
- package/dist/Field/types.d.ts +81 -0
- package/dist/Field/types.js +1 -0
- package/dist/Fieldset/Fieldset.d.ts +124 -0
- package/dist/Fieldset/Fieldset.js +124 -0
- package/dist/Fieldset/index.d.ts +2 -0
- package/dist/Fieldset/index.js +2 -0
- package/dist/Fieldset/types.d.ts +23 -0
- package/dist/Fieldset/types.js +1 -0
- package/dist/Input/Input.d.ts +104 -0
- package/dist/Input/Input.js +116 -0
- package/dist/Input/index.d.ts +2 -0
- package/dist/Input/index.js +2 -0
- package/dist/Input/types.d.ts +27 -0
- package/dist/Input/types.js +1 -0
- package/dist/InputGroup/InputGroup.d.ts +176 -0
- package/dist/InputGroup/InputGroup.js +205 -0
- package/dist/InputGroup/index.d.ts +2 -0
- package/dist/InputGroup/index.js +2 -0
- package/dist/InputGroup/types.d.ts +41 -0
- package/dist/InputGroup/types.js +1 -0
- package/dist/Listbox/Listbox.d.ts +231 -0
- package/dist/Listbox/Listbox.js +339 -0
- package/dist/Listbox/ListboxContext.d.ts +19 -0
- package/dist/Listbox/ListboxContext.js +25 -0
- package/dist/Listbox/constants.d.ts +2 -0
- package/dist/Listbox/constants.js +3 -0
- package/dist/Listbox/hooks/index.d.ts +1 -0
- package/dist/Listbox/hooks/index.js +1 -0
- package/dist/Listbox/hooks/useListboxRoot.d.ts +39 -0
- package/dist/Listbox/hooks/useListboxRoot.js +299 -0
- package/dist/Listbox/index.d.ts +3 -0
- package/dist/Listbox/index.js +3 -0
- package/dist/Listbox/types.d.ts +214 -0
- package/dist/Listbox/types.js +1 -0
- package/dist/MillerColumns/MillerColumns.d.ts +309 -0
- package/dist/MillerColumns/MillerColumns.js +332 -0
- package/dist/MillerColumns/MillerColumnsContext.d.ts +4 -0
- package/dist/MillerColumns/MillerColumnsContext.js +5 -0
- package/dist/MillerColumns/constants.d.ts +2 -0
- package/dist/MillerColumns/constants.js +3 -0
- package/dist/MillerColumns/hooks/index.d.ts +7 -0
- package/dist/MillerColumns/hooks/index.js +7 -0
- package/dist/MillerColumns/hooks/useMillerColumnsColumn.d.ts +8 -0
- package/dist/MillerColumns/hooks/useMillerColumnsColumn.js +16 -0
- package/dist/MillerColumns/hooks/useMillerColumnsColumnContext.d.ts +1 -0
- package/dist/MillerColumns/hooks/useMillerColumnsColumnContext.js +1 -0
- package/dist/MillerColumns/hooks/useMillerColumnsContext.d.ts +1 -0
- package/dist/MillerColumns/hooks/useMillerColumnsContext.js +1 -0
- package/dist/MillerColumns/hooks/useMillerColumnsItem.d.ts +295 -0
- package/dist/MillerColumns/hooks/useMillerColumnsItem.js +122 -0
- package/dist/MillerColumns/hooks/useMillerColumnsItemContext.d.ts +1 -0
- package/dist/MillerColumns/hooks/useMillerColumnsItemContext.js +1 -0
- package/dist/MillerColumns/hooks/useMillerColumnsResizeHandle.d.ts +290 -0
- package/dist/MillerColumns/hooks/useMillerColumnsResizeHandle.js +105 -0
- package/dist/MillerColumns/hooks/useMillerColumnsRoot.d.ts +9 -0
- package/dist/MillerColumns/hooks/useMillerColumnsRoot.js +0 -0
- package/dist/MillerColumns/index.d.ts +4 -0
- package/dist/MillerColumns/index.js +4 -0
- package/dist/MillerColumns/types.d.ts +224 -0
- package/dist/MillerColumns/types.js +1 -0
- package/dist/MillerColumns/useMillerColumnsSelection.d.ts +21 -0
- package/dist/MillerColumns/useMillerColumnsSelection.js +28 -0
- package/dist/MillerColumns/utils.d.ts +62 -0
- package/dist/MillerColumns/utils.js +102 -0
- package/dist/Modal/Modal.d.ts +331 -0
- package/dist/Modal/Modal.js +386 -0
- package/dist/Modal/ModalContext.d.ts +9 -0
- package/dist/Modal/ModalContext.js +10 -0
- package/dist/Modal/hooks/index.d.ts +4 -0
- package/dist/Modal/hooks/index.js +4 -0
- package/dist/Modal/hooks/useModalContent.d.ts +5 -0
- package/dist/Modal/hooks/useModalContent.js +94 -0
- package/dist/Modal/hooks/useModalContext.d.ts +1 -0
- package/dist/Modal/hooks/useModalContext.js +1 -0
- package/dist/Modal/hooks/useModalRoot.d.ts +11 -0
- package/dist/Modal/hooks/useModalRoot.js +39 -0
- package/dist/Modal/hooks/useModalTrigger.d.ts +297 -0
- package/dist/Modal/hooks/useModalTrigger.js +18 -0
- package/dist/Modal/index.d.ts +3 -0
- package/dist/Modal/index.js +3 -0
- package/dist/Modal/types.d.ts +186 -0
- package/dist/Modal/types.js +1 -0
- package/dist/NavigationMenu/NavigationMenu.d.ts +495 -0
- package/dist/NavigationMenu/NavigationMenu.js +645 -0
- package/dist/NavigationMenu/NavigationMenuContext.d.ts +31 -0
- package/dist/NavigationMenu/NavigationMenuContext.js +34 -0
- package/dist/NavigationMenu/constants.d.ts +4 -0
- package/dist/NavigationMenu/constants.js +5 -0
- package/dist/NavigationMenu/hooks/index.d.ts +7 -0
- package/dist/NavigationMenu/hooks/index.js +7 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuEntry.d.ts +13 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuEntry.js +21 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuIndicator.d.ts +16 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuIndicator.js +53 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuLink.d.ts +8 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuLink.js +37 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuRoot.d.ts +26 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuRoot.js +202 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuTopLevelEntry.d.ts +21 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuTopLevelEntry.js +54 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuTrigger.d.ts +16 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuTrigger.js +100 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuViewport.d.ts +21 -0
- package/dist/NavigationMenu/hooks/useNavigationMenuViewport.js +85 -0
- package/dist/NavigationMenu/index.d.ts +3 -0
- package/dist/NavigationMenu/index.js +3 -0
- package/dist/NavigationMenu/types.d.ts +236 -0
- package/dist/NavigationMenu/types.js +1 -0
- package/dist/NavigationMenu/utils.d.ts +37 -0
- package/dist/NavigationMenu/utils.js +64 -0
- package/dist/Popover/Popover.d.ts +239 -0
- package/dist/Popover/Popover.js +293 -0
- package/dist/Popover/PopoverContext.d.ts +4 -0
- package/dist/Popover/PopoverContext.js +5 -0
- package/dist/Popover/hooks/index.d.ts +3 -0
- package/dist/Popover/hooks/index.js +3 -0
- package/dist/Popover/hooks/usePopoverContent.d.ts +19 -0
- package/dist/Popover/hooks/usePopoverContent.js +83 -0
- package/dist/Popover/hooks/usePopoverRoot.d.ts +10 -0
- package/dist/Popover/hooks/usePopoverRoot.js +49 -0
- package/dist/Popover/hooks/usePopoverTrigger.d.ts +297 -0
- package/dist/Popover/hooks/usePopoverTrigger.js +19 -0
- package/dist/Popover/index.d.ts +2 -0
- package/dist/Popover/index.js +2 -0
- package/dist/Popover/types.d.ts +183 -0
- package/dist/Popover/types.js +1 -0
- package/dist/Portal/Portal.d.ts +70 -0
- package/dist/Portal/Portal.js +92 -0
- package/dist/Portal/index.d.ts +2 -0
- package/dist/Portal/index.js +2 -0
- package/dist/Portal/types.d.ts +14 -0
- package/dist/Portal/types.js +1 -0
- package/dist/Progress/Progress.d.ts +126 -0
- package/dist/Progress/Progress.js +172 -0
- package/dist/Progress/ProgressContext.d.ts +16 -0
- package/dist/Progress/ProgressContext.js +7 -0
- package/dist/Progress/hooks/index.d.ts +2 -0
- package/dist/Progress/hooks/index.js +2 -0
- package/dist/Progress/hooks/useProgressContext.d.ts +1 -0
- package/dist/Progress/hooks/useProgressContext.js +1 -0
- package/dist/Progress/hooks/useProgressRoot.d.ts +17 -0
- package/dist/Progress/hooks/useProgressRoot.js +22 -0
- package/dist/Progress/index.d.ts +3 -0
- package/dist/Progress/index.js +3 -0
- package/dist/Progress/types.d.ts +53 -0
- package/dist/Progress/types.js +1 -0
- package/dist/Radio/Radio.d.ts +128 -0
- package/dist/Radio/Radio.js +153 -0
- package/dist/Radio/RadioContext.d.ts +13 -0
- package/dist/Radio/RadioContext.js +3 -0
- package/dist/Radio/hooks/index.d.ts +2 -0
- package/dist/Radio/hooks/index.js +2 -0
- package/dist/Radio/hooks/useRadioContext.d.ts +1 -0
- package/dist/Radio/hooks/useRadioContext.js +1 -0
- package/dist/Radio/hooks/useRadioRoot.d.ts +32 -0
- package/dist/Radio/hooks/useRadioRoot.js +35 -0
- package/dist/Radio/index.d.ts +2 -0
- package/dist/Radio/index.js +2 -0
- package/dist/Radio/types.d.ts +79 -0
- package/dist/Radio/types.js +1 -0
- package/dist/RadioCard/RadioCard.d.ts +176 -0
- package/dist/RadioCard/RadioCard.js +264 -0
- package/dist/RadioCard/RadioCardContext.d.ts +21 -0
- package/dist/RadioCard/RadioCardContext.js +9 -0
- package/dist/RadioCard/RadioCardItemContext.d.ts +14 -0
- package/dist/RadioCard/RadioCardItemContext.js +10 -0
- package/dist/RadioCard/hooks/index.d.ts +3 -0
- package/dist/RadioCard/hooks/index.js +3 -0
- package/dist/RadioCard/hooks/useRadioCardContext.d.ts +1 -0
- package/dist/RadioCard/hooks/useRadioCardContext.js +1 -0
- package/dist/RadioCard/hooks/useRadioCardItemContext.d.ts +1 -0
- package/dist/RadioCard/hooks/useRadioCardItemContext.js +1 -0
- package/dist/RadioCard/hooks/useRadioCardRoot.d.ts +14 -0
- package/dist/RadioCard/hooks/useRadioCardRoot.js +42 -0
- package/dist/RadioCard/index.d.ts +4 -0
- package/dist/RadioCard/index.js +4 -0
- package/dist/RadioCard/types.d.ts +129 -0
- package/dist/RadioCard/types.js +1 -0
- package/dist/RadioGroup/RadioGroup.d.ts +192 -0
- package/dist/RadioGroup/RadioGroup.js +281 -0
- package/dist/RadioGroup/RadioGroupContext.d.ts +12 -0
- package/dist/RadioGroup/RadioGroupContext.js +3 -0
- package/dist/RadioGroup/RadioGroupItemContext.d.ts +4 -0
- package/dist/RadioGroup/RadioGroupItemContext.js +3 -0
- package/dist/RadioGroup/hooks/index.d.ts +3 -0
- package/dist/RadioGroup/hooks/index.js +3 -0
- package/dist/RadioGroup/hooks/useRadioGroupContext.d.ts +1 -0
- package/dist/RadioGroup/hooks/useRadioGroupContext.js +1 -0
- package/dist/RadioGroup/hooks/useRadioGroupItemContext.d.ts +1 -0
- package/dist/RadioGroup/hooks/useRadioGroupItemContext.js +1 -0
- package/dist/RadioGroup/hooks/useRadioGroupRoot.d.ts +14 -0
- package/dist/RadioGroup/hooks/useRadioGroupRoot.js +53 -0
- package/dist/RadioGroup/index.d.ts +2 -0
- package/dist/RadioGroup/index.js +2 -0
- package/dist/RadioGroup/types.d.ts +130 -0
- package/dist/RadioGroup/types.js +1 -0
- package/dist/SegmentedControl/SegmentedControl.d.ts +145 -0
- package/dist/SegmentedControl/SegmentedControl.js +229 -0
- package/dist/SegmentedControl/SegmentedControlContext.d.ts +14 -0
- package/dist/SegmentedControl/SegmentedControlContext.js +3 -0
- package/dist/SegmentedControl/hooks/index.d.ts +2 -0
- package/dist/SegmentedControl/hooks/index.js +2 -0
- package/dist/SegmentedControl/hooks/useSegmentedControlContext.d.ts +1 -0
- package/dist/SegmentedControl/hooks/useSegmentedControlContext.js +1 -0
- package/dist/SegmentedControl/hooks/useSegmentedControlRoot.d.ts +14 -0
- package/dist/SegmentedControl/hooks/useSegmentedControlRoot.js +45 -0
- package/dist/SegmentedControl/index.d.ts +2 -0
- package/dist/SegmentedControl/index.js +2 -0
- package/dist/SegmentedControl/types.d.ts +121 -0
- package/dist/SegmentedControl/types.js +1 -0
- package/dist/Select/Select.d.ts +390 -0
- package/dist/Select/Select.js +561 -0
- package/dist/Select/SelectContext.d.ts +31 -0
- package/dist/Select/SelectContext.js +3 -0
- package/dist/Select/SelectItemIndicatorContext.d.ts +23 -0
- package/dist/Select/SelectItemIndicatorContext.js +3 -0
- package/dist/Select/constants.d.ts +6 -0
- package/dist/Select/constants.js +7 -0
- package/dist/Select/hooks/index.d.ts +2 -0
- package/dist/Select/hooks/index.js +2 -0
- package/dist/Select/hooks/useSelectContent.d.ts +301 -0
- package/dist/Select/hooks/useSelectContent.js +134 -0
- package/dist/Select/hooks/useSelectRoot.d.ts +23 -0
- package/dist/Select/hooks/useSelectRoot.js +90 -0
- package/dist/Select/index.d.ts +2 -0
- package/dist/Select/index.js +2 -0
- package/dist/Select/types.d.ts +246 -0
- package/dist/Select/types.js +1 -0
- package/dist/SkipNav/SkipNav.d.ts +137 -0
- package/dist/SkipNav/SkipNav.js +138 -0
- package/dist/SkipNav/index.d.ts +1 -0
- package/dist/SkipNav/index.js +1 -0
- package/dist/SkipNav/types.d.ts +32 -0
- package/dist/SkipNav/types.js +1 -0
- package/dist/Slider/Slider.d.ts +189 -0
- package/dist/Slider/Slider.js +253 -0
- package/dist/Slider/SliderContext.d.ts +48 -0
- package/dist/Slider/SliderContext.js +7 -0
- package/dist/Slider/hooks/index.d.ts +3 -0
- package/dist/Slider/hooks/index.js +3 -0
- package/dist/Slider/hooks/useSliderContext.d.ts +1 -0
- package/dist/Slider/hooks/useSliderContext.js +1 -0
- package/dist/Slider/hooks/useSliderRoot.d.ts +23 -0
- package/dist/Slider/hooks/useSliderRoot.js +123 -0
- package/dist/Slider/hooks/useSliderThumb.d.ts +11 -0
- package/dist/Slider/hooks/useSliderThumb.js +57 -0
- package/dist/Slider/index.d.ts +3 -0
- package/dist/Slider/index.js +3 -0
- package/dist/Slider/types.d.ts +194 -0
- package/dist/Slider/types.js +1 -0
- package/dist/Slider/utils.d.ts +48 -0
- package/dist/Slider/utils.js +105 -0
- package/dist/Slot/Slot.d.ts +126 -0
- package/dist/Slot/Slot.js +210 -0
- package/dist/Slot/composeEventHandlers.d.ts +50 -0
- package/dist/Slot/composeEventHandlers.js +57 -0
- package/dist/Slot/index.d.ts +3 -0
- package/dist/Slot/index.js +3 -0
- package/dist/Slot/types.d.ts +20 -0
- package/dist/Slot/types.js +1 -0
- package/dist/SplitButton/SplitButton.d.ts +286 -0
- package/dist/SplitButton/SplitButton.js +343 -0
- package/dist/SplitButton/SplitButtonContext.d.ts +11 -0
- package/dist/SplitButton/SplitButtonContext.js +12 -0
- package/dist/SplitButton/index.d.ts +2 -0
- package/dist/SplitButton/index.js +1 -0
- package/dist/SplitButton/types.d.ts +161 -0
- package/dist/SplitButton/types.js +1 -0
- package/dist/Status/Status.d.ts +57 -0
- package/dist/Status/Status.js +63 -0
- package/dist/Status/index.d.ts +2 -0
- package/dist/Status/index.js +2 -0
- package/dist/Status/types.d.ts +19 -0
- package/dist/Status/types.js +1 -0
- package/dist/Switch/Switch.d.ts +122 -0
- package/dist/Switch/Switch.js +143 -0
- package/dist/Switch/SwitchContext.d.ts +12 -0
- package/dist/Switch/SwitchContext.js +7 -0
- package/dist/Switch/hooks/index.d.ts +2 -0
- package/dist/Switch/hooks/index.js +2 -0
- package/dist/Switch/hooks/useSwitchContext.d.ts +1 -0
- package/dist/Switch/hooks/useSwitchContext.js +1 -0
- package/dist/Switch/hooks/useSwitchRoot.d.ts +30 -0
- package/dist/Switch/hooks/useSwitchRoot.js +33 -0
- package/dist/Switch/index.d.ts +3 -0
- package/dist/Switch/index.js +3 -0
- package/dist/Switch/types.d.ts +83 -0
- package/dist/Switch/types.js +1 -0
- package/dist/Table/Table.d.ts +443 -0
- package/dist/Table/Table.js +494 -0
- package/dist/Table/TableExpandableContext.d.ts +2 -0
- package/dist/Table/TableExpandableContext.js +3 -0
- package/dist/Table/index.d.ts +2 -0
- package/dist/Table/index.js +2 -0
- package/dist/Table/types.d.ts +214 -0
- package/dist/Table/types.js +1 -0
- package/dist/Tabs/Tabs.d.ts +270 -0
- package/dist/Tabs/Tabs.js +324 -0
- package/dist/Tabs/TabsContext.d.ts +11 -0
- package/dist/Tabs/TabsContext.js +12 -0
- package/dist/Tabs/hooks/index.d.ts +4 -0
- package/dist/Tabs/hooks/index.js +4 -0
- package/dist/Tabs/hooks/useTabsContent.d.ts +10 -0
- package/dist/Tabs/hooks/useTabsContent.js +27 -0
- package/dist/Tabs/hooks/useTabsContext.d.ts +1 -0
- package/dist/Tabs/hooks/useTabsContext.js +1 -0
- package/dist/Tabs/hooks/useTabsRoot.d.ts +21 -0
- package/dist/Tabs/hooks/useTabsRoot.js +97 -0
- package/dist/Tabs/hooks/useTabsTrigger.d.ts +13 -0
- package/dist/Tabs/hooks/useTabsTrigger.js +83 -0
- package/dist/Tabs/index.d.ts +3 -0
- package/dist/Tabs/index.js +3 -0
- package/dist/Tabs/types.d.ts +139 -0
- package/dist/Tabs/types.js +1 -0
- package/dist/Tabs/utils.d.ts +4 -0
- package/dist/Tabs/utils.js +8 -0
- package/dist/Textarea/Textarea.d.ts +81 -0
- package/dist/Textarea/Textarea.js +93 -0
- package/dist/Textarea/index.d.ts +2 -0
- package/dist/Textarea/index.js +2 -0
- package/dist/Textarea/types.d.ts +27 -0
- package/dist/Textarea/types.js +1 -0
- package/dist/Toggle/Toggle.d.ts +82 -0
- package/dist/Toggle/Toggle.js +102 -0
- package/dist/Toggle/index.d.ts +2 -0
- package/dist/Toggle/index.js +2 -0
- package/dist/Toggle/types.d.ts +72 -0
- package/dist/Toggle/types.js +1 -0
- package/dist/ToggleGroup/ToggleGroup.d.ts +144 -0
- package/dist/ToggleGroup/ToggleGroup.js +227 -0
- package/dist/ToggleGroup/ToggleGroupContext.d.ts +2 -0
- package/dist/ToggleGroup/ToggleGroupContext.js +3 -0
- package/dist/ToggleGroup/hooks/index.d.ts +2 -0
- package/dist/ToggleGroup/hooks/index.js +2 -0
- package/dist/ToggleGroup/hooks/useToggleGroupContext.d.ts +1 -0
- package/dist/ToggleGroup/hooks/useToggleGroupContext.js +1 -0
- package/dist/ToggleGroup/hooks/useToggleGroupRoot.d.ts +21 -0
- package/dist/ToggleGroup/hooks/useToggleGroupRoot.js +79 -0
- package/dist/ToggleGroup/index.d.ts +2 -0
- package/dist/ToggleGroup/index.js +2 -0
- package/dist/ToggleGroup/types.d.ts +141 -0
- package/dist/ToggleGroup/types.js +1 -0
- package/dist/Tooltip/Tooltip.d.ts +231 -0
- package/dist/Tooltip/Tooltip.js +279 -0
- package/dist/Tooltip/TooltipContext.d.ts +6 -0
- package/dist/Tooltip/TooltipContext.js +7 -0
- package/dist/Tooltip/hooks/index.d.ts +4 -0
- package/dist/Tooltip/hooks/index.js +4 -0
- package/dist/Tooltip/hooks/useTooltipContent.d.ts +289 -0
- package/dist/Tooltip/hooks/useTooltipContent.js +50 -0
- package/dist/Tooltip/hooks/useTooltipProvider.d.ts +9 -0
- package/dist/Tooltip/hooks/useTooltipProvider.js +60 -0
- package/dist/Tooltip/hooks/useTooltipRoot.d.ts +6 -0
- package/dist/Tooltip/hooks/useTooltipRoot.js +100 -0
- package/dist/Tooltip/hooks/useTooltipTrigger.d.ts +299 -0
- package/dist/Tooltip/hooks/useTooltipTrigger.js +22 -0
- package/dist/Tooltip/index.d.ts +2 -0
- package/dist/Tooltip/index.js +2 -0
- package/dist/Tooltip/types.d.ts +183 -0
- package/dist/Tooltip/types.js +1 -0
- package/dist/Tree/Tree.d.ts +398 -0
- package/dist/Tree/Tree.js +536 -0
- package/dist/Tree/TreeContext.d.ts +4 -0
- package/dist/Tree/TreeContext.js +5 -0
- package/dist/Tree/hooks/index.d.ts +3 -0
- package/dist/Tree/hooks/index.js +3 -0
- package/dist/Tree/hooks/useTreeItemKeyboard.d.ts +16 -0
- package/dist/Tree/hooks/useTreeItemKeyboard.js +71 -0
- package/dist/Tree/hooks/useTreePath.d.ts +88 -0
- package/dist/Tree/hooks/useTreePath.js +96 -0
- package/dist/Tree/hooks/useTreeRoot.d.ts +19 -0
- package/dist/Tree/hooks/useTreeRoot.js +185 -0
- package/dist/Tree/index.d.ts +4 -0
- package/dist/Tree/index.js +4 -0
- package/dist/Tree/types.d.ts +269 -0
- package/dist/Tree/types.js +1 -0
- package/dist/Tree/utils.d.ts +45 -0
- package/dist/Tree/utils.js +79 -0
- package/dist/VisuallyHidden/VisuallyHidden.d.ts +62 -0
- package/dist/VisuallyHidden/VisuallyHidden.js +83 -0
- package/dist/VisuallyHidden/index.d.ts +2 -0
- package/dist/VisuallyHidden/index.js +2 -0
- package/dist/VisuallyHidden/types.d.ts +18 -0
- package/dist/VisuallyHidden/types.js +1 -0
- package/dist/hooks/index.d.ts +4 -0
- package/dist/hooks/index.js +4 -0
- package/dist/hooks/useCollection.d.ts +50 -0
- package/dist/hooks/useCollection.js +47 -0
- package/dist/hooks/useControllableState.d.ts +50 -0
- package/dist/hooks/useControllableState.js +14 -0
- package/dist/hooks/useRovingTabindex.d.ts +106 -0
- package/dist/hooks/useRovingTabindex.js +110 -0
- package/dist/hooks/useTypeahead.d.ts +31 -0
- package/dist/hooks/useTypeahead.js +65 -0
- package/dist/index.d.ts +52 -0
- package/dist/index.js +50 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.js +1 -0
- package/dist/useLocalStorage/index.d.ts +1 -0
- package/dist/useLocalStorage/index.js +1 -0
- package/dist/useLocalStorage/useLocalStorage.d.ts +46 -0
- package/dist/useLocalStorage/useLocalStorage.js +125 -0
- package/dist/useMediaQuery/index.d.ts +1 -0
- package/dist/useMediaQuery/index.js +1 -0
- package/dist/useMediaQuery/useMediaQuery.d.ts +30 -0
- package/dist/useMediaQuery/useMediaQuery.js +43 -0
- package/dist/usePagination/index.d.ts +1 -0
- package/dist/usePagination/index.js +1 -0
- package/dist/usePagination/usePagination.d.ts +163 -0
- package/dist/usePagination/usePagination.js +130 -0
- package/dist/utils/createStrictContext.d.ts +33 -0
- package/dist/utils/createStrictContext.js +47 -0
- package/dist/utils/deriveId.d.ts +25 -0
- package/dist/utils/deriveId.js +28 -0
- package/dist/utils/focusable.d.ts +8 -0
- package/dist/utils/focusable.js +16 -0
- package/dist/utils/getKeyToActionMap.d.ts +64 -0
- package/dist/utils/getKeyToActionMap.js +49 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.js +4 -0
- package/package.json +7 -6
- package/src/AccessibleIcon/AccessibleIcon.tsx +0 -67
- package/src/AccessibleIcon/README.md +0 -42
- package/src/AccessibleIcon/__tests__/AccessibleIcon.test.tsx +0 -52
- package/src/AccessibleIcon/index.ts +0 -2
- package/src/AccessibleIcon/types.ts +0 -25
- package/src/Accordion/Accordion.tsx +0 -455
- package/src/Accordion/AccordionContext.ts +0 -12
- package/src/Accordion/README.md +0 -202
- package/src/Accordion/__tests__/Accordion.asChild.test.tsx +0 -283
- package/src/Accordion/__tests__/Accordion.basic-rendering.test.tsx +0 -348
- package/src/Accordion/__tests__/Accordion.controlled-state.test.tsx +0 -175
- package/src/Accordion/__tests__/Accordion.data-attributes.test.tsx +0 -272
- package/src/Accordion/__tests__/Accordion.disabled-items.test.tsx +0 -353
- package/src/Accordion/__tests__/Accordion.error-handling.test.tsx +0 -152
- package/src/Accordion/__tests__/Accordion.forceMount.test.tsx +0 -119
- package/src/Accordion/__tests__/Accordion.keyboard-interaction.test.tsx +0 -736
- package/src/Accordion/__tests__/Accordion.mouse-interaction.test.tsx +0 -212
- package/src/Accordion/__tests__/Accordion.multiple-mode.test.tsx +0 -90
- package/src/Accordion/__tests__/Accordion.reading-direction.test.tsx +0 -139
- package/src/Accordion/__tests__/Accordion.uncontrolled-state.test.tsx +0 -154
- package/src/Accordion/hooks/index.ts +0 -6
- package/src/Accordion/hooks/useAccordionContext.ts +0 -1
- package/src/Accordion/hooks/useAccordionHeaderContext.ts +0 -10
- package/src/Accordion/hooks/useAccordionItem.ts +0 -22
- package/src/Accordion/hooks/useAccordionItemContext.ts +0 -1
- package/src/Accordion/hooks/useAccordionRoot.ts +0 -188
- package/src/Accordion/hooks/useAccordionTrigger.ts +0 -98
- package/src/Accordion/index.ts +0 -2
- package/src/Accordion/types.ts +0 -174
- package/src/Alert/Alert.tsx +0 -79
- package/src/Alert/README.md +0 -54
- package/src/Alert/__tests__/Alert.test.tsx +0 -33
- package/src/Alert/index.ts +0 -2
- package/src/Alert/types.ts +0 -22
- package/src/Avatar/Avatar.tsx +0 -246
- package/src/Avatar/AvatarContext.ts +0 -26
- package/src/Avatar/README.md +0 -116
- package/src/Avatar/__tests__/Avatar.asChild.test.tsx +0 -53
- package/src/Avatar/__tests__/Avatar.basic-rendering.test.tsx +0 -24
- package/src/Avatar/__tests__/Avatar.error-handling.test.tsx +0 -30
- package/src/Avatar/__tests__/Avatar.fallback.test.tsx +0 -105
- package/src/Avatar/__tests__/Avatar.image-loading.test.tsx +0 -116
- package/src/Avatar/hooks/index.ts +0 -2
- package/src/Avatar/hooks/useAvatarContext.ts +0 -1
- package/src/Avatar/hooks/useAvatarImage.ts +0 -56
- package/src/Avatar/index.ts +0 -3
- package/src/Avatar/types.ts +0 -56
- package/src/Breadcrumb/Breadcrumb.tsx +0 -374
- package/src/Breadcrumb/README.md +0 -158
- package/src/Breadcrumb/__tests__/Breadcrumb.asChild.test.tsx +0 -33
- package/src/Breadcrumb/__tests__/Breadcrumb.basic-rendering.test.tsx +0 -143
- package/src/Breadcrumb/__tests__/Breadcrumb.ellipsis.test.tsx +0 -110
- package/src/Breadcrumb/index.ts +0 -2
- package/src/Breadcrumb/types.ts +0 -88
- package/src/Button/Button.tsx +0 -100
- package/src/Button/README.md +0 -112
- package/src/Button/__tests__/Button.asChild.test.tsx +0 -91
- package/src/Button/__tests__/Button.basic-rendering.test.tsx +0 -132
- package/src/Button/__tests__/Button.contract.test.tsx +0 -72
- package/src/Button/__tests__/Button.disabled.test.tsx +0 -52
- package/src/Button/__tests__/Button.icon-usage.test.tsx +0 -57
- package/src/Button/__tests__/Button.keyboard-interaction.test.tsx +0 -70
- package/src/Button/index.ts +0 -2
- package/src/Button/types.ts +0 -33
- package/src/Carousel/Carousel.tsx +0 -972
- package/src/Carousel/CarouselContext.ts +0 -15
- package/src/Carousel/README.md +0 -1447
- package/src/Carousel/__tests__/Carousel.asChild.test.tsx +0 -178
- package/src/Carousel/__tests__/Carousel.auto-play.test.tsx +0 -617
- package/src/Carousel/__tests__/Carousel.autoplay-status.test.tsx +0 -239
- package/src/Carousel/__tests__/Carousel.basic-rendering.test.tsx +0 -569
- package/src/Carousel/__tests__/Carousel.controlled-state.test.tsx +0 -137
- package/src/Carousel/__tests__/Carousel.drag-status.test.tsx +0 -292
- package/src/Carousel/__tests__/Carousel.dynamic-slides.test.tsx +0 -38
- package/src/Carousel/__tests__/Carousel.error-handling.test.tsx +0 -81
- package/src/Carousel/__tests__/Carousel.ids.test.tsx +0 -111
- package/src/Carousel/__tests__/Carousel.imperative-api.test.tsx +0 -213
- package/src/Carousel/__tests__/Carousel.indicators.test.tsx +0 -661
- package/src/Carousel/__tests__/Carousel.infinite.test.tsx +0 -1453
- package/src/Carousel/__tests__/Carousel.instant-scroll.test.tsx +0 -124
- package/src/Carousel/__tests__/Carousel.intersection-observer.test.tsx +0 -364
- package/src/Carousel/__tests__/Carousel.keyboard-navigation.test.tsx +0 -158
- package/src/Carousel/__tests__/Carousel.loop.test.tsx +0 -163
- package/src/Carousel/__tests__/Carousel.loopEngine.test.ts +0 -77
- package/src/Carousel/__tests__/Carousel.mouse-drag.test.tsx +0 -504
- package/src/Carousel/__tests__/Carousel.multi-slide-bounds.test.tsx +0 -91
- package/src/Carousel/__tests__/Carousel.orientation.test.tsx +0 -207
- package/src/Carousel/__tests__/Carousel.overscroll.test.tsx +0 -532
- package/src/Carousel/__tests__/Carousel.page-snap-points.test.tsx +0 -50
- package/src/Carousel/__tests__/Carousel.play-pause.test.tsx +0 -232
- package/src/Carousel/__tests__/Carousel.prev-next.test.tsx +0 -68
- package/src/Carousel/__tests__/Carousel.progress-text.test.tsx +0 -76
- package/src/Carousel/__tests__/Carousel.reduced-motion.test.tsx +0 -46
- package/src/Carousel/__tests__/Carousel.refresh-progress.test.tsx +0 -84
- package/src/Carousel/__tests__/Carousel.scroll-margin.test.tsx +0 -167
- package/src/Carousel/__tests__/Carousel.scroll-progress.test.tsx +0 -518
- package/src/Carousel/__tests__/Carousel.scroll-snap-change.test.tsx +0 -200
- package/src/Carousel/__tests__/Carousel.scroll-sync.test.tsx +0 -322
- package/src/Carousel/__tests__/Carousel.scroll-to-index.test.tsx +0 -115
- package/src/Carousel/__tests__/Carousel.slide-snap.test.tsx +0 -172
- package/src/Carousel/__tests__/Carousel.slides-per-move.test.tsx +0 -329
- package/src/Carousel/__tests__/Carousel.slides-per-page.test.tsx +0 -267
- package/src/Carousel/__tests__/Carousel.snap-type.test.tsx +0 -35
- package/src/Carousel/__tests__/Carousel.ssr.test.tsx +0 -28
- package/src/Carousel/__tests__/Carousel.touch-interaction.test.tsx +0 -96
- package/src/Carousel/__tests__/Carousel.transition-modes.test.tsx +0 -95
- package/src/Carousel/__tests__/Carousel.translations.test.tsx +0 -180
- package/src/Carousel/__tests__/Carousel.uncontrolled-state.test.tsx +0 -146
- package/src/Carousel/__tests__/Carousel.wheel.test.tsx +0 -160
- package/src/Carousel/hooks/index.ts +0 -5
- package/src/Carousel/hooks/useCarouselContext.ts +0 -13
- package/src/Carousel/hooks/useCarouselLoop.ts +0 -869
- package/src/Carousel/hooks/useCarouselRoot.ts +0 -746
- package/src/Carousel/hooks/useCarouselSlide.ts +0 -80
- package/src/Carousel/hooks/useCarouselViewport.ts +0 -898
- package/src/Carousel/index.ts +0 -3
- package/src/Carousel/loopEngine.ts +0 -54
- package/src/Carousel/types.ts +0 -830
- package/src/Checkbox/Checkbox.tsx +0 -217
- package/src/Checkbox/CheckboxContext.ts +0 -20
- package/src/Checkbox/README.md +0 -137
- package/src/Checkbox/__tests__/Checkbox.basic-rendering.test.tsx +0 -93
- package/src/Checkbox/__tests__/Checkbox.contract.test.tsx +0 -106
- package/src/Checkbox/__tests__/Checkbox.controlled-state.test.tsx +0 -74
- package/src/Checkbox/__tests__/Checkbox.disabled.test.tsx +0 -45
- package/src/Checkbox/__tests__/Checkbox.form.test.tsx +0 -53
- package/src/Checkbox/__tests__/Checkbox.indeterminate.test.tsx +0 -76
- package/src/Checkbox/__tests__/Checkbox.indicator.test.tsx +0 -92
- package/src/Checkbox/__tests__/Checkbox.uncontrolled-state.test.tsx +0 -105
- package/src/Checkbox/hooks/index.ts +0 -3
- package/src/Checkbox/hooks/useCheckboxContext.ts +0 -1
- package/src/Checkbox/hooks/useCheckboxInput.ts +0 -53
- package/src/Checkbox/hooks/useCheckboxRoot.ts +0 -32
- package/src/Checkbox/index.ts +0 -2
- package/src/Checkbox/types.ts +0 -86
- package/src/CheckboxCard/CheckboxCard.tsx +0 -219
- package/src/CheckboxCard/CheckboxCardContext.ts +0 -25
- package/src/CheckboxCard/README.md +0 -114
- package/src/CheckboxCard/__tests__/CheckboxCard.asChild.test.tsx +0 -54
- package/src/CheckboxCard/__tests__/CheckboxCard.basic-rendering.test.tsx +0 -65
- package/src/CheckboxCard/__tests__/CheckboxCard.controlled-state.test.tsx +0 -77
- package/src/CheckboxCard/__tests__/CheckboxCard.disabled.test.tsx +0 -55
- package/src/CheckboxCard/__tests__/CheckboxCard.error-handling.test.tsx +0 -20
- package/src/CheckboxCard/__tests__/CheckboxCard.indeterminate.test.tsx +0 -60
- package/src/CheckboxCard/__tests__/CheckboxCard.indicator.test.tsx +0 -136
- package/src/CheckboxCard/__tests__/CheckboxCard.uncontrolled-state.test.tsx +0 -73
- package/src/CheckboxCard/hooks/index.ts +0 -2
- package/src/CheckboxCard/hooks/useCheckboxCardContext.ts +0 -1
- package/src/CheckboxCard/hooks/useCheckboxCardRoot.ts +0 -30
- package/src/CheckboxCard/index.ts +0 -3
- package/src/CheckboxCard/types.ts +0 -97
- package/src/Collapsible/Collapsible.tsx +0 -378
- package/src/Collapsible/CollapsibleContext.ts +0 -7
- package/src/Collapsible/README.md +0 -214
- package/src/Collapsible/__tests__/Collapsible.asChild.test.tsx +0 -329
- package/src/Collapsible/__tests__/Collapsible.basic-rendering.test.tsx +0 -145
- package/src/Collapsible/__tests__/Collapsible.collapsedHeight.test.tsx +0 -140
- package/src/Collapsible/__tests__/Collapsible.controlled-state.test.tsx +0 -134
- package/src/Collapsible/__tests__/Collapsible.disabled.test.tsx +0 -132
- package/src/Collapsible/__tests__/Collapsible.error-handling.test.tsx +0 -40
- package/src/Collapsible/__tests__/Collapsible.forceMount.test.tsx +0 -111
- package/src/Collapsible/__tests__/Collapsible.triggerIcon.test.tsx +0 -93
- package/src/Collapsible/__tests__/Collapsible.uncontrolled-state.test.tsx +0 -125
- package/src/Collapsible/hooks/index.ts +0 -2
- package/src/Collapsible/hooks/useCollapsibleRoot.ts +0 -34
- package/src/Collapsible/hooks/useCollapsibleTrigger.ts +0 -51
- package/src/Collapsible/index.ts +0 -2
- package/src/Collapsible/types.ts +0 -148
- package/src/Combobox/Combobox.tsx +0 -508
- package/src/Combobox/ComboboxContext.ts +0 -23
- package/src/Combobox/README.md +0 -170
- package/src/Combobox/__tests__/Combobox.asChild.test.tsx +0 -62
- package/src/Combobox/__tests__/Combobox.basic-rendering.test.tsx +0 -16
- package/src/Combobox/__tests__/Combobox.content.test.tsx +0 -36
- package/src/Combobox/__tests__/Combobox.controlled-state.test.tsx +0 -88
- package/src/Combobox/__tests__/Combobox.empty.test.tsx +0 -42
- package/src/Combobox/__tests__/Combobox.ids.test.tsx +0 -66
- package/src/Combobox/__tests__/Combobox.item.test.tsx +0 -76
- package/src/Combobox/__tests__/Combobox.keyboard-interaction.test.tsx +0 -196
- package/src/Combobox/__tests__/Combobox.light-dismiss.test.tsx +0 -101
- package/src/Combobox/__tests__/Combobox.query.test.tsx +0 -105
- package/src/Combobox/hooks/index.ts +0 -1
- package/src/Combobox/hooks/useComboboxRoot.ts +0 -2
- package/src/Combobox/index.ts +0 -3
- package/src/Combobox/types.ts +0 -133
- package/src/ContextMenu/ContextMenu.tsx +0 -1296
- package/src/ContextMenu/ContextMenuContentContext.ts +0 -15
- package/src/ContextMenu/ContextMenuContext.ts +0 -21
- package/src/ContextMenu/ContextMenuGroupContext.ts +0 -8
- package/src/ContextMenu/ContextMenuItemIndicatorContext.ts +0 -8
- package/src/ContextMenu/ContextMenuRadioGroupContext.ts +0 -9
- package/src/ContextMenu/ContextMenuSubContext.ts +0 -15
- package/src/ContextMenu/README.md +0 -275
- package/src/ContextMenu/__tests__/ContextMenu.asChild.test.tsx +0 -186
- package/src/ContextMenu/__tests__/ContextMenu.basic-rendering.test.tsx +0 -39
- package/src/ContextMenu/__tests__/ContextMenu.checkbox-item.test.tsx +0 -168
- package/src/ContextMenu/__tests__/ContextMenu.error-handling.test.tsx +0 -113
- package/src/ContextMenu/__tests__/ContextMenu.group-label.test.tsx +0 -48
- package/src/ContextMenu/__tests__/ContextMenu.item-indicator.test.tsx +0 -88
- package/src/ContextMenu/__tests__/ContextMenu.item.test.tsx +0 -106
- package/src/ContextMenu/__tests__/ContextMenu.keyboard-interaction.test.tsx +0 -227
- package/src/ContextMenu/__tests__/ContextMenu.mouse-interaction.test.tsx +0 -268
- package/src/ContextMenu/__tests__/ContextMenu.radio-item.test.tsx +0 -152
- package/src/ContextMenu/__tests__/ContextMenu.reading-direction.test.tsx +0 -152
- package/src/ContextMenu/__tests__/ContextMenu.separator.test.tsx +0 -47
- package/src/ContextMenu/__tests__/ContextMenu.state-modes.test.tsx +0 -119
- package/src/ContextMenu/__tests__/ContextMenu.sub.test.tsx +0 -407
- package/src/ContextMenu/__tests__/ContextMenu.typeahead.test.tsx +0 -134
- package/src/ContextMenu/constants.ts +0 -4
- package/src/ContextMenu/index.ts +0 -2
- package/src/ContextMenu/types.ts +0 -484
- package/src/DirectionProvider/DirectionContext.ts +0 -21
- package/src/DirectionProvider/DirectionProvider.tsx +0 -69
- package/src/DirectionProvider/README.md +0 -62
- package/src/DirectionProvider/__tests__/DirectionProvider.test.tsx +0 -34
- package/src/DirectionProvider/index.ts +0 -3
- package/src/DirectionProvider/types.ts +0 -36
- package/src/Divider/Divider.tsx +0 -74
- package/src/Divider/README.md +0 -57
- package/src/Divider/__tests__/Divider.contract.test.tsx +0 -66
- package/src/Divider/__tests__/Divider.test.tsx +0 -46
- package/src/Divider/index.ts +0 -2
- package/src/Divider/types.ts +0 -17
- package/src/Drawer/Drawer.tsx +0 -315
- package/src/Drawer/README.md +0 -124
- package/src/Drawer/__tests__/Drawer.behavior.test.tsx +0 -100
- package/src/Drawer/__tests__/Drawer.focus-trap.test.tsx +0 -55
- package/src/Drawer/__tests__/Drawer.rendering.test.tsx +0 -111
- package/src/Drawer/__tests__/Drawer.side.test.tsx +0 -69
- package/src/Drawer/__tests__/dialog-polyfill.ts +0 -39
- package/src/Drawer/index.ts +0 -2
- package/src/Drawer/types.ts +0 -66
- package/src/Dropdown/Dropdown.tsx +0 -985
- package/src/Dropdown/DropdownContentContext.ts +0 -15
- package/src/Dropdown/DropdownContext.ts +0 -17
- package/src/Dropdown/DropdownGroupContext.ts +0 -8
- package/src/Dropdown/DropdownItemIndicatorContext.ts +0 -13
- package/src/Dropdown/DropdownRadioGroupContext.ts +0 -9
- package/src/Dropdown/DropdownSubContext.ts +0 -15
- package/src/Dropdown/README.md +0 -286
- package/src/Dropdown/__tests__/Dropdown.asChild.test.tsx +0 -286
- package/src/Dropdown/__tests__/Dropdown.basic-rendering.test.tsx +0 -43
- package/src/Dropdown/__tests__/Dropdown.checkbox-item.test.tsx +0 -121
- package/src/Dropdown/__tests__/Dropdown.disabled.test.tsx +0 -143
- package/src/Dropdown/__tests__/Dropdown.error-handling.test.tsx +0 -85
- package/src/Dropdown/__tests__/Dropdown.group-label.test.tsx +0 -68
- package/src/Dropdown/__tests__/Dropdown.item-indicator.test.tsx +0 -260
- package/src/Dropdown/__tests__/Dropdown.item.test.tsx +0 -72
- package/src/Dropdown/__tests__/Dropdown.keyboard-edge-cases.test.tsx +0 -77
- package/src/Dropdown/__tests__/Dropdown.keyboard-interaction.test.tsx +0 -310
- package/src/Dropdown/__tests__/Dropdown.mouse-interaction.test.tsx +0 -347
- package/src/Dropdown/__tests__/Dropdown.radio-item.test.tsx +0 -134
- package/src/Dropdown/__tests__/Dropdown.reading-direction.test.tsx +0 -153
- package/src/Dropdown/__tests__/Dropdown.separator.test.tsx +0 -46
- package/src/Dropdown/__tests__/Dropdown.state-modes.test.tsx +0 -100
- package/src/Dropdown/__tests__/Dropdown.sub.test.tsx +0 -185
- package/src/Dropdown/__tests__/Dropdown.trigger.test.tsx +0 -110
- package/src/Dropdown/__tests__/Dropdown.typeahead.test.tsx +0 -133
- package/src/Dropdown/constants.ts +0 -4
- package/src/Dropdown/hooks/index.ts +0 -9
- package/src/Dropdown/hooks/useCloseSiblingSub.ts +0 -13
- package/src/Dropdown/hooks/useDropdownContent.ts +0 -162
- package/src/Dropdown/hooks/useDropdownContext.ts +0 -1
- package/src/Dropdown/hooks/useDropdownGroup.ts +0 -18
- package/src/Dropdown/hooks/useDropdownItem.ts +0 -49
- package/src/Dropdown/hooks/useDropdownLabel.ts +0 -15
- package/src/Dropdown/hooks/useDropdownRoot.ts +0 -57
- package/src/Dropdown/hooks/useDropdownSubContext.ts +0 -1
- package/src/Dropdown/hooks/useDropdownTrigger.ts +0 -31
- package/src/Dropdown/index.ts +0 -2
- package/src/Dropdown/types.ts +0 -558
- package/src/EmptyState/EmptyState.tsx +0 -329
- package/src/EmptyState/README.md +0 -129
- package/src/EmptyState/__tests__/EmptyState.Actions.test.tsx +0 -37
- package/src/EmptyState/__tests__/EmptyState.Description.test.tsx +0 -32
- package/src/EmptyState/__tests__/EmptyState.Media.test.tsx +0 -34
- package/src/EmptyState/__tests__/EmptyState.Root.test.tsx +0 -38
- package/src/EmptyState/__tests__/EmptyState.Title.test.tsx +0 -28
- package/src/EmptyState/index.ts +0 -2
- package/src/EmptyState/types.ts +0 -65
- package/src/Field/Field.tsx +0 -276
- package/src/Field/FieldContext.ts +0 -22
- package/src/Field/README.md +0 -167
- package/src/Field/__tests__/Field.asChild.test.tsx +0 -83
- package/src/Field/__tests__/Field.basic-rendering.test.tsx +0 -115
- package/src/Field/__tests__/Field.contract.test.tsx +0 -91
- package/src/Field/__tests__/Field.error-handling.test.tsx +0 -23
- package/src/Field/__tests__/Field.state-cascade.test.tsx +0 -96
- package/src/Field/hooks/__tests__/useFieldProps.test.tsx +0 -142
- package/src/Field/hooks/index.ts +0 -2
- package/src/Field/hooks/useFieldContext.ts +0 -1
- package/src/Field/hooks/useFieldProps.ts +0 -57
- package/src/Field/index.ts +0 -2
- package/src/Field/types.ts +0 -85
- package/src/Fieldset/Fieldset.tsx +0 -156
- package/src/Fieldset/README.md +0 -74
- package/src/Fieldset/__tests__/Fieldset.basic-rendering.test.tsx +0 -90
- package/src/Fieldset/__tests__/Fieldset.disabled.test.tsx +0 -41
- package/src/Fieldset/index.ts +0 -2
- package/src/Fieldset/types.ts +0 -25
- package/src/Input/Input.tsx +0 -128
- package/src/Input/README.md +0 -180
- package/src/Input/__tests__/Input.asChild.test.tsx +0 -85
- package/src/Input/__tests__/Input.basic-rendering.test.tsx +0 -123
- package/src/Input/__tests__/Input.contract.test.tsx +0 -77
- package/src/Input/__tests__/Input.disabled.test.tsx +0 -49
- package/src/Input/__tests__/Input.field-integration.test.tsx +0 -148
- package/src/Input/index.ts +0 -2
- package/src/Input/types.ts +0 -28
- package/src/InputGroup/InputGroup.tsx +0 -243
- package/src/InputGroup/README.md +0 -178
- package/src/InputGroup/__tests__/InputGroup.asChild.test.tsx +0 -110
- package/src/InputGroup/__tests__/InputGroup.basic-rendering.test.tsx +0 -120
- package/src/InputGroup/__tests__/InputGroup.contract.test.tsx +0 -60
- package/src/InputGroup/index.ts +0 -2
- package/src/InputGroup/types.ts +0 -43
- package/src/Listbox/Listbox.tsx +0 -475
- package/src/Listbox/ListboxContext.ts +0 -48
- package/src/Listbox/README.md +0 -248
- package/src/Listbox/__tests__/Listbox.active-descendant.test.tsx +0 -128
- package/src/Listbox/__tests__/Listbox.asChild.test.tsx +0 -91
- package/src/Listbox/__tests__/Listbox.basic-rendering.test.tsx +0 -16
- package/src/Listbox/__tests__/Listbox.controlled-state.test.tsx +0 -114
- package/src/Listbox/__tests__/Listbox.disabled.test.tsx +0 -90
- package/src/Listbox/__tests__/Listbox.fixtures.ts +0 -27
- package/src/Listbox/__tests__/Listbox.group-label.test.tsx +0 -97
- package/src/Listbox/__tests__/Listbox.group.test.tsx +0 -45
- package/src/Listbox/__tests__/Listbox.keyboard-edge-cases.test.tsx +0 -144
- package/src/Listbox/__tests__/Listbox.keyboard-interaction.test.tsx +0 -112
- package/src/Listbox/__tests__/Listbox.modifier-keys.test.tsx +0 -86
- package/src/Listbox/__tests__/Listbox.multi-select-keyboard.test.tsx +0 -368
- package/src/Listbox/__tests__/Listbox.multiple-mode.test.tsx +0 -91
- package/src/Listbox/__tests__/Listbox.mutation-hardening.test.tsx +0 -480
- package/src/Listbox/__tests__/Listbox.orientation.test.tsx +0 -59
- package/src/Listbox/__tests__/Listbox.reading-direction.test.tsx +0 -65
- package/src/Listbox/__tests__/Listbox.reorder.test.tsx +0 -78
- package/src/Listbox/__tests__/Listbox.selection-follows-focus.test.tsx +0 -64
- package/src/Listbox/__tests__/Listbox.strict-context.test.tsx +0 -21
- package/src/Listbox/__tests__/Listbox.typeahead.test.tsx +0 -123
- package/src/Listbox/__tests__/Listbox.uncontrolled-state.test.tsx +0 -48
- package/src/Listbox/constants.ts +0 -2
- package/src/Listbox/hooks/index.ts +0 -1
- package/src/Listbox/hooks/useListboxRoot.ts +0 -407
- package/src/Listbox/index.ts +0 -3
- package/src/Listbox/types.ts +0 -238
- package/src/MillerColumns/MillerColumns.tsx +0 -490
- package/src/MillerColumns/MillerColumnsContext.ts +0 -25
- package/src/MillerColumns/README.md +0 -348
- package/src/MillerColumns/__tests__/MillerColumns.aria.test.tsx +0 -127
- package/src/MillerColumns/__tests__/MillerColumns.asChild.test.tsx +0 -106
- package/src/MillerColumns/__tests__/MillerColumns.auto-scroll.test.tsx +0 -70
- package/src/MillerColumns/__tests__/MillerColumns.basic-rendering.test.tsx +0 -67
- package/src/MillerColumns/__tests__/MillerColumns.column-projection.test.tsx +0 -161
- package/src/MillerColumns/__tests__/MillerColumns.controlled-state.test.tsx +0 -90
- package/src/MillerColumns/__tests__/MillerColumns.data-attributes.test.tsx +0 -125
- package/src/MillerColumns/__tests__/MillerColumns.disabled-items.test.tsx +0 -65
- package/src/MillerColumns/__tests__/MillerColumns.error-handling.test.tsx +0 -57
- package/src/MillerColumns/__tests__/MillerColumns.fixtures.ts +0 -15
- package/src/MillerColumns/__tests__/MillerColumns.item-indicator.test.tsx +0 -57
- package/src/MillerColumns/__tests__/MillerColumns.keyboard-interaction.test.tsx +0 -214
- package/src/MillerColumns/__tests__/MillerColumns.keyboard-selection-state.test.tsx +0 -96
- package/src/MillerColumns/__tests__/MillerColumns.preview-panel.test.tsx +0 -72
- package/src/MillerColumns/__tests__/MillerColumns.preview-visibility.test.tsx +0 -79
- package/src/MillerColumns/__tests__/MillerColumns.resize.test.tsx +0 -326
- package/src/MillerColumns/__tests__/MillerColumns.roving-tabindex.test.tsx +0 -91
- package/src/MillerColumns/__tests__/MillerColumns.selection.test.tsx +0 -54
- package/src/MillerColumns/__tests__/MillerColumns.styled-parts.test.tsx +0 -143
- package/src/MillerColumns/__tests__/MillerColumns.typeahead.test.tsx +0 -104
- package/src/MillerColumns/__tests__/MillerColumns.uncontrolled-state.test.tsx +0 -70
- package/src/MillerColumns/constants.ts +0 -2
- package/src/MillerColumns/hooks/index.ts +0 -7
- package/src/MillerColumns/hooks/useMillerColumnsColumn.ts +0 -26
- package/src/MillerColumns/hooks/useMillerColumnsColumnContext.ts +0 -1
- package/src/MillerColumns/hooks/useMillerColumnsContext.ts +0 -1
- package/src/MillerColumns/hooks/useMillerColumnsItem.ts +0 -179
- package/src/MillerColumns/hooks/useMillerColumnsItemContext.ts +0 -1
- package/src/MillerColumns/hooks/useMillerColumnsResizeHandle.ts +0 -146
- package/src/MillerColumns/hooks/useMillerColumnsRoot.ts +0 -0
- package/src/MillerColumns/index.ts +0 -7
- package/src/MillerColumns/types.ts +0 -252
- package/src/MillerColumns/useMillerColumnsSelection.ts +0 -31
- package/src/MillerColumns/utils.ts +0 -141
- package/src/Modal/Modal.tsx +0 -515
- package/src/Modal/ModalContext.ts +0 -20
- package/src/Modal/README.md +0 -222
- package/src/Modal/__tests__/Modal.accessibility.test.tsx +0 -167
- package/src/Modal/__tests__/Modal.asChild.test.tsx +0 -162
- package/src/Modal/__tests__/Modal.click-outside.test.tsx +0 -115
- package/src/Modal/__tests__/Modal.content.test.tsx +0 -193
- package/src/Modal/__tests__/Modal.controlled-state.test.tsx +0 -120
- package/src/Modal/__tests__/Modal.error-handling.test.tsx +0 -30
- package/src/Modal/__tests__/Modal.escape-hatches.test.tsx +0 -99
- package/src/Modal/__tests__/Modal.focus-trap.test.tsx +0 -162
- package/src/Modal/__tests__/Modal.imperative-api.test.tsx +0 -119
- package/src/Modal/__tests__/Modal.nested.test.tsx +0 -106
- package/src/Modal/__tests__/Modal.overlay.test.tsx +0 -99
- package/src/Modal/__tests__/Modal.portal.test.tsx +0 -90
- package/src/Modal/__tests__/Modal.presence.test.tsx +0 -111
- package/src/Modal/__tests__/Modal.trigger.test.tsx +0 -70
- package/src/Modal/__tests__/Modal.uncontrolled-state.test.tsx +0 -72
- package/src/Modal/__tests__/dialog-polyfill.ts +0 -40
- package/src/Modal/hooks/index.ts +0 -4
- package/src/Modal/hooks/useModalContent.ts +0 -94
- package/src/Modal/hooks/useModalContext.ts +0 -1
- package/src/Modal/hooks/useModalRoot.ts +0 -81
- package/src/Modal/hooks/useModalTrigger.ts +0 -25
- package/src/Modal/index.ts +0 -3
- package/src/Modal/types.ts +0 -206
- package/src/NavigationMenu/NavigationMenu.tsx +0 -890
- package/src/NavigationMenu/NavigationMenuContext.ts +0 -67
- package/src/NavigationMenu/README.md +0 -355
- package/src/NavigationMenu/__tests__/NavigationMenu.anchor-positioning.test.tsx +0 -132
- package/src/NavigationMenu/__tests__/NavigationMenu.asChild.test.tsx +0 -73
- package/src/NavigationMenu/__tests__/NavigationMenu.basic-rendering.test.tsx +0 -92
- package/src/NavigationMenu/__tests__/NavigationMenu.contract.test.tsx +0 -45
- package/src/NavigationMenu/__tests__/NavigationMenu.controlled-state.test.tsx +0 -134
- package/src/NavigationMenu/__tests__/NavigationMenu.error-handling.test.tsx +0 -62
- package/src/NavigationMenu/__tests__/NavigationMenu.fixtures.tsx +0 -79
- package/src/NavigationMenu/__tests__/NavigationMenu.forceMount.test.tsx +0 -52
- package/src/NavigationMenu/__tests__/NavigationMenu.hover-interaction.test.tsx +0 -254
- package/src/NavigationMenu/__tests__/NavigationMenu.indicator.test.tsx +0 -252
- package/src/NavigationMenu/__tests__/NavigationMenu.keyboard-interaction.test.tsx +0 -294
- package/src/NavigationMenu/__tests__/NavigationMenu.keyboard-navigation.test.tsx +0 -126
- package/src/NavigationMenu/__tests__/NavigationMenu.link.test.tsx +0 -139
- package/src/NavigationMenu/__tests__/NavigationMenu.motion.test.tsx +0 -568
- package/src/NavigationMenu/__tests__/NavigationMenu.mouse-interaction.test.tsx +0 -76
- package/src/NavigationMenu/__tests__/NavigationMenu.uncontrolled-state.test.tsx +0 -30
- package/src/NavigationMenu/__tests__/NavigationMenu.viewport.test.tsx +0 -113
- package/src/NavigationMenu/constants.ts +0 -5
- package/src/NavigationMenu/hooks/index.ts +0 -7
- package/src/NavigationMenu/hooks/useNavigationMenuEntry.ts +0 -33
- package/src/NavigationMenu/hooks/useNavigationMenuIndicator.ts +0 -70
- package/src/NavigationMenu/hooks/useNavigationMenuLink.ts +0 -72
- package/src/NavigationMenu/hooks/useNavigationMenuRoot.ts +0 -301
- package/src/NavigationMenu/hooks/useNavigationMenuTopLevelEntry.ts +0 -65
- package/src/NavigationMenu/hooks/useNavigationMenuTrigger.ts +0 -158
- package/src/NavigationMenu/hooks/useNavigationMenuViewport.ts +0 -101
- package/src/NavigationMenu/index.ts +0 -3
- package/src/NavigationMenu/types.ts +0 -259
- package/src/NavigationMenu/utils.ts +0 -89
- package/src/Popover/Popover.tsx +0 -427
- package/src/Popover/PopoverContext.ts +0 -13
- package/src/Popover/README.md +0 -106
- package/src/Popover/__tests__/Popover.anchor.test.tsx +0 -38
- package/src/Popover/__tests__/Popover.asChild.test.tsx +0 -160
- package/src/Popover/__tests__/Popover.basic-rendering.test.tsx +0 -106
- package/src/Popover/__tests__/Popover.click-outside.test.tsx +0 -149
- package/src/Popover/__tests__/Popover.close.test.tsx +0 -70
- package/src/Popover/__tests__/Popover.content.test.tsx +0 -58
- package/src/Popover/__tests__/Popover.controlled-state.test.tsx +0 -45
- package/src/Popover/__tests__/Popover.error-handling.test.tsx +0 -51
- package/src/Popover/__tests__/Popover.focus.test.tsx +0 -43
- package/src/Popover/__tests__/Popover.keyboard-interaction.test.tsx +0 -71
- package/src/Popover/__tests__/Popover.mouse-interaction.test.tsx +0 -69
- package/src/Popover/__tests__/Popover.uncontrolled-state.test.tsx +0 -44
- package/src/Popover/hooks/index.ts +0 -3
- package/src/Popover/hooks/usePopoverContent.ts +0 -98
- package/src/Popover/hooks/usePopoverRoot.ts +0 -84
- package/src/Popover/hooks/usePopoverTrigger.ts +0 -33
- package/src/Popover/index.ts +0 -2
- package/src/Popover/types.ts +0 -197
- package/src/Portal/Portal.tsx +0 -70
- package/src/Portal/README.md +0 -70
- package/src/Portal/__tests__/Portal.basic-rendering.test.tsx +0 -22
- package/src/Portal/index.ts +0 -2
- package/src/Portal/types.ts +0 -15
- package/src/Progress/Progress.tsx +0 -215
- package/src/Progress/ProgressContext.ts +0 -27
- package/src/Progress/README.md +0 -112
- package/src/Progress/__tests__/Progress.asChild.test.tsx +0 -37
- package/src/Progress/__tests__/Progress.basic-rendering.test.tsx +0 -75
- package/src/Progress/__tests__/Progress.error-handling.test.tsx +0 -40
- package/src/Progress/__tests__/Progress.fixtures.ts +0 -7
- package/src/Progress/__tests__/Progress.value.test.tsx +0 -104
- package/src/Progress/hooks/index.ts +0 -2
- package/src/Progress/hooks/useProgressContext.ts +0 -1
- package/src/Progress/hooks/useProgressRoot.ts +0 -45
- package/src/Progress/index.ts +0 -3
- package/src/Progress/types.ts +0 -59
- package/src/Radio/README.md +0 -160
- package/src/Radio/Radio.tsx +0 -210
- package/src/Radio/RadioContext.ts +0 -19
- package/src/Radio/__tests__/Radio.basic-rendering.test.tsx +0 -80
- package/src/Radio/__tests__/Radio.contract.test.tsx +0 -106
- package/src/Radio/__tests__/Radio.controlled-state.test.tsx +0 -79
- package/src/Radio/__tests__/Radio.disabled.test.tsx +0 -48
- package/src/Radio/__tests__/Radio.native-grouping.test.tsx +0 -77
- package/src/Radio/__tests__/Radio.parts.test.tsx +0 -76
- package/src/Radio/__tests__/Radio.uncontrolled-state.test.tsx +0 -96
- package/src/Radio/hooks/index.ts +0 -2
- package/src/Radio/hooks/useRadioContext.ts +0 -1
- package/src/Radio/hooks/useRadioRoot.ts +0 -51
- package/src/Radio/index.ts +0 -2
- package/src/Radio/types.ts +0 -90
- package/src/RadioCard/README.md +0 -134
- package/src/RadioCard/RadioCard.tsx +0 -354
- package/src/RadioCard/RadioCardContext.ts +0 -35
- package/src/RadioCard/RadioCardItemContext.ts +0 -23
- package/src/RadioCard/__tests__/RadioCard.asChild.test.tsx +0 -76
- package/src/RadioCard/__tests__/RadioCard.basic-rendering.test.tsx +0 -95
- package/src/RadioCard/__tests__/RadioCard.controlled-state.test.tsx +0 -107
- package/src/RadioCard/__tests__/RadioCard.disabled-items.test.tsx +0 -111
- package/src/RadioCard/__tests__/RadioCard.error-handling.test.tsx +0 -35
- package/src/RadioCard/__tests__/RadioCard.indicator.test.tsx +0 -119
- package/src/RadioCard/__tests__/RadioCard.keyboard-interaction.test.tsx +0 -211
- package/src/RadioCard/__tests__/RadioCard.orientation.test.tsx +0 -90
- package/src/RadioCard/__tests__/RadioCard.reading-direction.test.tsx +0 -65
- package/src/RadioCard/__tests__/RadioCard.ref-forwarding.test.tsx +0 -54
- package/src/RadioCard/__tests__/RadioCard.uncontrolled-state.test.tsx +0 -129
- package/src/RadioCard/hooks/index.ts +0 -3
- package/src/RadioCard/hooks/useRadioCardContext.ts +0 -1
- package/src/RadioCard/hooks/useRadioCardItemContext.ts +0 -1
- package/src/RadioCard/hooks/useRadioCardRoot.ts +0 -88
- package/src/RadioCard/index.ts +0 -4
- package/src/RadioCard/types.ts +0 -145
- package/src/RadioGroup/README.md +0 -185
- package/src/RadioGroup/RadioGroup.tsx +0 -370
- package/src/RadioGroup/RadioGroupContext.ts +0 -23
- package/src/RadioGroup/RadioGroupItemContext.ts +0 -10
- package/src/RadioGroup/__tests__/RadioGroup.asChild.test.tsx +0 -105
- package/src/RadioGroup/__tests__/RadioGroup.basic-rendering.test.tsx +0 -80
- package/src/RadioGroup/__tests__/RadioGroup.controlled-state.test.tsx +0 -109
- package/src/RadioGroup/__tests__/RadioGroup.disabled-keydown-guards.test.tsx +0 -68
- package/src/RadioGroup/__tests__/RadioGroup.disabled.test.tsx +0 -106
- package/src/RadioGroup/__tests__/RadioGroup.error-handling.test.tsx +0 -33
- package/src/RadioGroup/__tests__/RadioGroup.indicator.test.tsx +0 -85
- package/src/RadioGroup/__tests__/RadioGroup.keyboard-interaction.test.tsx +0 -135
- package/src/RadioGroup/__tests__/RadioGroup.orientation.test.tsx +0 -90
- package/src/RadioGroup/__tests__/RadioGroup.reading-direction.test.tsx +0 -65
- package/src/RadioGroup/__tests__/RadioGroup.ref-forwarding.test.tsx +0 -74
- package/src/RadioGroup/__tests__/RadioGroup.roving-tabindex.test.tsx +0 -136
- package/src/RadioGroup/__tests__/RadioGroup.uncontrolled-state.test.tsx +0 -96
- package/src/RadioGroup/hooks/index.ts +0 -3
- package/src/RadioGroup/hooks/useRadioGroupContext.ts +0 -1
- package/src/RadioGroup/hooks/useRadioGroupItemContext.ts +0 -1
- package/src/RadioGroup/hooks/useRadioGroupRoot.ts +0 -98
- package/src/RadioGroup/index.ts +0 -2
- package/src/RadioGroup/types.ts +0 -146
- package/src/SegmentedControl/README.md +0 -154
- package/src/SegmentedControl/SegmentedControl.tsx +0 -309
- package/src/SegmentedControl/SegmentedControlContext.ts +0 -28
- package/src/SegmentedControl/__tests__/SegmentedControl.asChild.test.tsx +0 -50
- package/src/SegmentedControl/__tests__/SegmentedControl.basic-rendering.test.tsx +0 -100
- package/src/SegmentedControl/__tests__/SegmentedControl.controlled-state.test.tsx +0 -107
- package/src/SegmentedControl/__tests__/SegmentedControl.disabled-keydown-guards.test.tsx +0 -62
- package/src/SegmentedControl/__tests__/SegmentedControl.disabled.test.tsx +0 -151
- package/src/SegmentedControl/__tests__/SegmentedControl.error-handling.test.tsx +0 -17
- package/src/SegmentedControl/__tests__/SegmentedControl.keyboard-interaction.test.tsx +0 -117
- package/src/SegmentedControl/__tests__/SegmentedControl.orientation.test.tsx +0 -54
- package/src/SegmentedControl/__tests__/SegmentedControl.reading-direction.test.tsx +0 -56
- package/src/SegmentedControl/__tests__/SegmentedControl.ref-forwarding.test.tsx +0 -45
- package/src/SegmentedControl/__tests__/SegmentedControl.roving-tabindex.test.tsx +0 -104
- package/src/SegmentedControl/__tests__/SegmentedControl.uncontrolled-state.test.tsx +0 -94
- package/src/SegmentedControl/hooks/index.ts +0 -2
- package/src/SegmentedControl/hooks/useSegmentedControlContext.ts +0 -1
- package/src/SegmentedControl/hooks/useSegmentedControlRoot.ts +0 -87
- package/src/SegmentedControl/index.ts +0 -2
- package/src/SegmentedControl/types.ts +0 -138
- package/src/Select/README.md +0 -168
- package/src/Select/Select.tsx +0 -746
- package/src/Select/SelectContext.ts +0 -38
- package/src/Select/SelectItemIndicatorContext.ts +0 -29
- package/src/Select/__tests__/Select.asChild.test.tsx +0 -36
- package/src/Select/__tests__/Select.basic-rendering.test.tsx +0 -36
- package/src/Select/__tests__/Select.controlled-state.test.tsx +0 -69
- package/src/Select/__tests__/Select.data-attributes.test.tsx +0 -29
- package/src/Select/__tests__/Select.field-integration.test.tsx +0 -150
- package/src/Select/__tests__/Select.form.test.tsx +0 -38
- package/src/Select/__tests__/Select.group.test.tsx +0 -42
- package/src/Select/__tests__/Select.keyboard-edge.test.tsx +0 -95
- package/src/Select/__tests__/Select.keyboard.test.tsx +0 -124
- package/src/Select/__tests__/Select.mutation-hardening.test.tsx +0 -317
- package/src/Select/__tests__/Select.native-item.test.tsx +0 -30
- package/src/Select/__tests__/Select.open-close.test.tsx +0 -57
- package/src/Select/__tests__/Select.placeholder.test.tsx +0 -50
- package/src/Select/__tests__/Select.rich-asChild.test.tsx +0 -60
- package/src/Select/__tests__/Select.rich-mode.test.tsx +0 -16
- package/src/Select/__tests__/Select.selection.test.tsx +0 -104
- package/src/Select/__tests__/Select.separator.test.tsx +0 -71
- package/src/Select/__tests__/Select.strict-context.test.tsx +0 -36
- package/src/Select/__tests__/Select.typeahead.test.tsx +0 -156
- package/src/Select/__tests__/Select.value-mirror.test.tsx +0 -240
- package/src/Select/constants.ts +0 -8
- package/src/Select/hooks/index.ts +0 -2
- package/src/Select/hooks/useSelectContent.ts +0 -149
- package/src/Select/hooks/useSelectRoot.ts +0 -149
- package/src/Select/index.ts +0 -2
- package/src/Select/types.ts +0 -272
- package/src/SkipNav/README.md +0 -87
- package/src/SkipNav/SkipNav.tsx +0 -161
- package/src/SkipNav/__tests__/SkipNav.basic-rendering.test.tsx +0 -29
- package/src/SkipNav/__tests__/SkipNav.ids.test.tsx +0 -19
- package/src/SkipNav/index.ts +0 -1
- package/src/SkipNav/types.ts +0 -34
- package/src/Slider/README.md +0 -245
- package/src/Slider/Slider.tsx +0 -361
- package/src/Slider/SliderContext.ts +0 -58
- package/src/Slider/__tests__/Slider.asChild.test.tsx +0 -119
- package/src/Slider/__tests__/Slider.basic-rendering.test.tsx +0 -157
- package/src/Slider/__tests__/Slider.controlled-state.test.tsx +0 -78
- package/src/Slider/__tests__/Slider.disabled.test.tsx +0 -82
- package/src/Slider/__tests__/Slider.error-handling.test.tsx +0 -45
- package/src/Slider/__tests__/Slider.fixtures.ts +0 -53
- package/src/Slider/__tests__/Slider.form.test.tsx +0 -67
- package/src/Slider/__tests__/Slider.inverted.test.tsx +0 -112
- package/src/Slider/__tests__/Slider.keyboard-interaction.test.tsx +0 -118
- package/src/Slider/__tests__/Slider.multiple-thumbs.test.tsx +0 -84
- package/src/Slider/__tests__/Slider.orientation.test.tsx +0 -101
- package/src/Slider/__tests__/Slider.pointer-interaction.test.tsx +0 -205
- package/src/Slider/__tests__/Slider.reading-direction.test.tsx +0 -99
- package/src/Slider/__tests__/Slider.uncontrolled-state.test.tsx +0 -69
- package/src/Slider/__tests__/Slider.value-commit.test.tsx +0 -103
- package/src/Slider/hooks/index.ts +0 -3
- package/src/Slider/hooks/useSliderContext.ts +0 -1
- package/src/Slider/hooks/useSliderRoot.ts +0 -197
- package/src/Slider/hooks/useSliderThumb.ts +0 -77
- package/src/Slider/index.ts +0 -3
- package/src/Slider/types.ts +0 -205
- package/src/Slider/utils.ts +0 -155
- package/src/Slot/Slot.tsx +0 -238
- package/src/Slot/__tests__/Slot.test.tsx +0 -273
- package/src/Slot/__tests__/composeEventHandlers.test.ts +0 -74
- package/src/Slot/composeEventHandlers.ts +0 -62
- package/src/Slot/index.ts +0 -3
- package/src/Slot/types.ts +0 -21
- package/src/SplitButton/README.md +0 -225
- package/src/SplitButton/SplitButton.tsx +0 -457
- package/src/SplitButton/SplitButtonContext.ts +0 -26
- package/src/SplitButton/__tests__/SplitButton.accessibility.test.tsx +0 -55
- package/src/SplitButton/__tests__/SplitButton.asChild.test.tsx +0 -51
- package/src/SplitButton/__tests__/SplitButton.basic-rendering.test.tsx +0 -57
- package/src/SplitButton/__tests__/SplitButton.data-attributes.test.tsx +0 -28
- package/src/SplitButton/__tests__/SplitButton.disabled.test.tsx +0 -79
- package/src/SplitButton/__tests__/SplitButton.error-handling.test.tsx +0 -29
- package/src/SplitButton/__tests__/SplitButton.keyboard-interaction.test.tsx +0 -56
- package/src/SplitButton/__tests__/SplitButton.state-modes.test.tsx +0 -68
- package/src/SplitButton/index.ts +0 -2
- package/src/SplitButton/types.ts +0 -186
- package/src/Status/README.md +0 -50
- package/src/Status/Status.tsx +0 -72
- package/src/Status/__tests__/Status.test.tsx +0 -33
- package/src/Status/index.ts +0 -2
- package/src/Status/types.ts +0 -20
- package/src/Switch/README.md +0 -126
- package/src/Switch/Switch.tsx +0 -203
- package/src/Switch/SwitchContext.ts +0 -20
- package/src/Switch/__tests__/Switch.asChild.test.tsx +0 -38
- package/src/Switch/__tests__/Switch.basic-rendering.test.tsx +0 -102
- package/src/Switch/__tests__/Switch.contract.test.tsx +0 -114
- package/src/Switch/__tests__/Switch.controlled-state.test.tsx +0 -77
- package/src/Switch/__tests__/Switch.disabled.test.tsx +0 -55
- package/src/Switch/__tests__/Switch.error-handling.test.tsx +0 -20
- package/src/Switch/__tests__/Switch.form.test.tsx +0 -55
- package/src/Switch/__tests__/Switch.keyboard-interaction.test.tsx +0 -56
- package/src/Switch/__tests__/Switch.recipe.test.ts +0 -19
- package/src/Switch/__tests__/Switch.thumb.test.tsx +0 -84
- package/src/Switch/__tests__/Switch.uncontrolled-state.test.tsx +0 -118
- package/src/Switch/hooks/index.ts +0 -2
- package/src/Switch/hooks/useSwitchContext.ts +0 -1
- package/src/Switch/hooks/useSwitchRoot.ts +0 -49
- package/src/Switch/index.ts +0 -3
- package/src/Switch/types.ts +0 -95
- package/src/Table/README.md +0 -307
- package/src/Table/Table.tsx +0 -636
- package/src/Table/TableExpandableContext.ts +0 -7
- package/src/Table/__tests__/Table.Body.test.tsx +0 -61
- package/src/Table/__tests__/Table.Caption.test.tsx +0 -70
- package/src/Table/__tests__/Table.Cell.test.tsx +0 -73
- package/src/Table/__tests__/Table.DetailRow.test.tsx +0 -83
- package/src/Table/__tests__/Table.ExpandTrigger.test.tsx +0 -102
- package/src/Table/__tests__/Table.Expandable.test.tsx +0 -121
- package/src/Table/__tests__/Table.Footer.test.tsx +0 -61
- package/src/Table/__tests__/Table.Head.test.tsx +0 -61
- package/src/Table/__tests__/Table.Header.test.tsx +0 -73
- package/src/Table/__tests__/Table.Root.test.tsx +0 -49
- package/src/Table/__tests__/Table.Row.test.tsx +0 -67
- package/src/Table/__tests__/Table.ScrollArea.test.tsx +0 -83
- package/src/Table/__tests__/Table.contract.test.tsx +0 -80
- package/src/Table/index.ts +0 -2
- package/src/Table/types.ts +0 -237
- package/src/Tabs/README.md +0 -111
- package/src/Tabs/Tabs.tsx +0 -465
- package/src/Tabs/TabsContext.ts +0 -21
- package/src/Tabs/__tests__/Tabs.activation-mode.test.tsx +0 -172
- package/src/Tabs/__tests__/Tabs.asChild.test.tsx +0 -91
- package/src/Tabs/__tests__/Tabs.basic-rendering.test.tsx +0 -498
- package/src/Tabs/__tests__/Tabs.change-event-callbacks.test.tsx +0 -157
- package/src/Tabs/__tests__/Tabs.contract.test.tsx +0 -153
- package/src/Tabs/__tests__/Tabs.controlled-state.test.tsx +0 -152
- package/src/Tabs/__tests__/Tabs.disabled-tabs.test.tsx +0 -239
- package/src/Tabs/__tests__/Tabs.error-handling.test.tsx +0 -82
- package/src/Tabs/__tests__/Tabs.fixtures.ts +0 -171
- package/src/Tabs/__tests__/Tabs.imperative-api.test.tsx +0 -118
- package/src/Tabs/__tests__/Tabs.keyboard-interaction.test.tsx +0 -192
- package/src/Tabs/__tests__/Tabs.lazy-mount.test.tsx +0 -78
- package/src/Tabs/__tests__/Tabs.mouse-interaction.test.tsx +0 -216
- package/src/Tabs/__tests__/Tabs.reading-direction.test.tsx +0 -58
- package/src/Tabs/__tests__/Tabs.uncontrolled-state.test.tsx +0 -197
- package/src/Tabs/hooks/index.ts +0 -4
- package/src/Tabs/hooks/useTabsContent.ts +0 -32
- package/src/Tabs/hooks/useTabsContext.ts +0 -1
- package/src/Tabs/hooks/useTabsRoot.ts +0 -172
- package/src/Tabs/hooks/useTabsTrigger.ts +0 -116
- package/src/Tabs/index.ts +0 -3
- package/src/Tabs/types.ts +0 -166
- package/src/Tabs/utils.ts +0 -8
- package/src/Textarea/README.md +0 -98
- package/src/Textarea/Textarea.tsx +0 -104
- package/src/Textarea/__tests__/Textarea.asChild.test.tsx +0 -85
- package/src/Textarea/__tests__/Textarea.basic-rendering.test.tsx +0 -112
- package/src/Textarea/__tests__/Textarea.disabled.test.tsx +0 -49
- package/src/Textarea/__tests__/Textarea.field-integration.test.tsx +0 -134
- package/src/Textarea/index.ts +0 -2
- package/src/Textarea/types.ts +0 -28
- package/src/Toggle/README.md +0 -97
- package/src/Toggle/Toggle.tsx +0 -126
- package/src/Toggle/__tests__/Toggle.asChild.test.tsx +0 -42
- package/src/Toggle/__tests__/Toggle.basic-rendering.test.tsx +0 -33
- package/src/Toggle/__tests__/Toggle.controlled-state.test.tsx +0 -60
- package/src/Toggle/__tests__/Toggle.disabled.test.tsx +0 -34
- package/src/Toggle/__tests__/Toggle.keyboard-interaction.test.tsx +0 -42
- package/src/Toggle/__tests__/Toggle.uncontrolled-state.test.tsx +0 -40
- package/src/Toggle/index.ts +0 -2
- package/src/Toggle/types.ts +0 -77
- package/src/ToggleGroup/README.md +0 -137
- package/src/ToggleGroup/ToggleGroup.tsx +0 -321
- package/src/ToggleGroup/ToggleGroupContext.ts +0 -9
- package/src/ToggleGroup/__tests__/ToggleGroup.asChild.test.tsx +0 -85
- package/src/ToggleGroup/__tests__/ToggleGroup.basic-rendering.test.tsx +0 -59
- package/src/ToggleGroup/__tests__/ToggleGroup.disabled.test.tsx +0 -54
- package/src/ToggleGroup/__tests__/ToggleGroup.dynamic-items.test.tsx +0 -70
- package/src/ToggleGroup/__tests__/ToggleGroup.error-handling.test.tsx +0 -23
- package/src/ToggleGroup/__tests__/ToggleGroup.keyboard-interaction.test.tsx +0 -173
- package/src/ToggleGroup/__tests__/ToggleGroup.multiple-mode.test.tsx +0 -144
- package/src/ToggleGroup/__tests__/ToggleGroup.reading-direction.test.tsx +0 -28
- package/src/ToggleGroup/__tests__/ToggleGroup.ref-forwarding.test.tsx +0 -58
- package/src/ToggleGroup/__tests__/ToggleGroup.single-mode.test.tsx +0 -139
- package/src/ToggleGroup/hooks/index.ts +0 -2
- package/src/ToggleGroup/hooks/useToggleGroupContext.ts +0 -1
- package/src/ToggleGroup/hooks/useToggleGroupRoot.ts +0 -130
- package/src/ToggleGroup/index.ts +0 -2
- package/src/ToggleGroup/types.ts +0 -165
- package/src/Tooltip/README.md +0 -214
- package/src/Tooltip/Tooltip.tsx +0 -369
- package/src/Tooltip/TooltipContext.ts +0 -20
- package/src/Tooltip/__tests__/Tooltip.asChild.test.tsx +0 -77
- package/src/Tooltip/__tests__/Tooltip.basic-rendering.test.tsx +0 -230
- package/src/Tooltip/__tests__/Tooltip.controlled-state.test.tsx +0 -128
- package/src/Tooltip/__tests__/Tooltip.error-handling.test.tsx +0 -37
- package/src/Tooltip/__tests__/Tooltip.escape-hatches.test.tsx +0 -146
- package/src/Tooltip/__tests__/Tooltip.focus-interaction.test.tsx +0 -88
- package/src/Tooltip/__tests__/Tooltip.hover-interaction.test.tsx +0 -179
- package/src/Tooltip/__tests__/Tooltip.keyboard-interaction.test.tsx +0 -219
- package/src/Tooltip/__tests__/Tooltip.skip-delay.test.tsx +0 -232
- package/src/Tooltip/__tests__/Tooltip.timer-coordination.test.tsx +0 -223
- package/src/Tooltip/__tests__/Tooltip.uncontrolled-state.test.tsx +0 -67
- package/src/Tooltip/hooks/__tests__/useTooltipProvider.test.tsx +0 -40
- package/src/Tooltip/hooks/index.ts +0 -4
- package/src/Tooltip/hooks/useTooltipContent.ts +0 -56
- package/src/Tooltip/hooks/useTooltipProvider.ts +0 -79
- package/src/Tooltip/hooks/useTooltipRoot.ts +0 -130
- package/src/Tooltip/hooks/useTooltipTrigger.ts +0 -44
- package/src/Tooltip/index.ts +0 -2
- package/src/Tooltip/types.ts +0 -193
- package/src/Tree/README.md +0 -403
- package/src/Tree/Tree.tsx +0 -771
- package/src/Tree/TreeContext.ts +0 -24
- package/src/Tree/__tests__/Tree.aria.test.tsx +0 -53
- package/src/Tree/__tests__/Tree.asChild.test.tsx +0 -134
- package/src/Tree/__tests__/Tree.basic-rendering.test.tsx +0 -111
- package/src/Tree/__tests__/Tree.branch-behaviour.test.tsx +0 -87
- package/src/Tree/__tests__/Tree.controlled-expansion.test.tsx +0 -92
- package/src/Tree/__tests__/Tree.data-attributes.test.tsx +0 -88
- package/src/Tree/__tests__/Tree.disabled-items.test.tsx +0 -196
- package/src/Tree/__tests__/Tree.error-handling.test.tsx +0 -71
- package/src/Tree/__tests__/Tree.forceMount.test.tsx +0 -72
- package/src/Tree/__tests__/Tree.keyboard-interaction.test.tsx +0 -150
- package/src/Tree/__tests__/Tree.multiple-selection.test.tsx +0 -151
- package/src/Tree/__tests__/Tree.range-selection.test.tsx +0 -200
- package/src/Tree/__tests__/Tree.recursion-depth.test.tsx +0 -73
- package/src/Tree/__tests__/Tree.roving-tabindex.test.tsx +0 -117
- package/src/Tree/__tests__/Tree.selection-path.test.tsx +0 -404
- package/src/Tree/__tests__/Tree.single-selection.test.tsx +0 -108
- package/src/Tree/__tests__/Tree.styled-wrapper.test.tsx +0 -159
- package/src/Tree/__tests__/Tree.uncontrolled-expansion.test.tsx +0 -69
- package/src/Tree/hooks/index.ts +0 -3
- package/src/Tree/hooks/useTreeItemKeyboard.ts +0 -86
- package/src/Tree/hooks/useTreePath.ts +0 -100
- package/src/Tree/hooks/useTreeRoot.ts +0 -279
- package/src/Tree/index.ts +0 -8
- package/src/Tree/types.ts +0 -298
- package/src/Tree/utils.ts +0 -101
- package/src/VisuallyHidden/README.md +0 -58
- package/src/VisuallyHidden/VisuallyHidden.tsx +0 -94
- package/src/VisuallyHidden/__tests__/VisuallyHidden.test.tsx +0 -73
- package/src/VisuallyHidden/index.ts +0 -2
- package/src/VisuallyHidden/types.ts +0 -19
- package/src/hooks/index.ts +0 -4
- package/src/hooks/useCollection.ts +0 -74
- package/src/hooks/useControllableState.ts +0 -81
- package/src/hooks/useRovingTabindex.ts +0 -178
- package/src/hooks/useTypeahead.ts +0 -95
- package/src/index.ts +0 -52
- package/src/test/intersectionObserverPolyfill.ts +0 -90
- package/src/test/popoverPolyfill.ts +0 -86
- package/src/test/resizeObserverPolyfill.ts +0 -80
- package/src/test/scrollPolyfill.ts +0 -23
- package/src/types.ts +0 -14
- package/src/useLocalStorage/__tests__/useLocalStorage.reading.test.tsx +0 -31
- package/src/useLocalStorage/__tests__/useLocalStorage.resilience.test.tsx +0 -97
- package/src/useLocalStorage/__tests__/useLocalStorage.ssr.test.tsx +0 -20
- package/src/useLocalStorage/__tests__/useLocalStorage.writing.test.tsx +0 -72
- package/src/useLocalStorage/index.ts +0 -1
- package/src/useLocalStorage/useLocalStorage.ts +0 -140
- package/src/useMediaQuery/README.md +0 -66
- package/src/useMediaQuery/__tests__/useMediaQuery.matching.test.tsx +0 -42
- package/src/useMediaQuery/__tests__/useMediaQuery.ssr.test.tsx +0 -19
- package/src/useMediaQuery/__tests__/useMediaQuery.subscription.test.tsx +0 -89
- package/src/useMediaQuery/index.ts +0 -1
- package/src/useMediaQuery/useMediaQuery.ts +0 -49
- package/src/usePagination/README.md +0 -170
- package/src/usePagination/__tests__/usePagination.navigation.test.tsx +0 -109
- package/src/usePagination/__tests__/usePagination.page-count.test.tsx +0 -56
- package/src/usePagination/__tests__/usePagination.page-state.test.tsx +0 -87
- package/src/usePagination/__tests__/usePagination.range.test.tsx +0 -82
- package/src/usePagination/__tests__/usePagination.slice.test.tsx +0 -59
- package/src/usePagination/__tests__/usePagination.windowing.test.tsx +0 -68
- package/src/usePagination/index.ts +0 -1
- package/src/usePagination/usePagination.ts +0 -292
- package/src/utils/__tests__/createStrictContext.test.tsx +0 -69
- package/src/utils/__tests__/deriveId.test.ts +0 -28
- package/src/utils/__tests__/getKeyToActionMap.test.ts +0 -106
- package/src/utils/createStrictContext.ts +0 -53
- package/src/utils/deriveId.ts +0 -31
- package/src/utils/focusable.ts +0 -15
- package/src/utils/getKeyToActionMap.ts +0 -95
- package/src/utils/index.ts +0 -4
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
import type { ReactElement, ReactPortal } from "react";
|
|
2
|
+
import type { MillerColumnsRootProps, MillerColumnsColumnProps, MillerColumnsItemProps, MillerColumnsItemIndicatorProps, MillerColumnsResizeHandleProps, MillerColumnsPreviewPanelProps } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* The root of a Miller Columns widget — a horizontal strip of vertical
|
|
5
|
+
* lists where selecting a node reveals its children in the next column.
|
|
6
|
+
*
|
|
7
|
+
* Renders **two** elements: an outer strip container
|
|
8
|
+
* (`data-miller-columns-strip`, `data-orientation="horizontal"`) that the
|
|
9
|
+
* consumer lays out and scrolls, and an inner `role="tree"` widget
|
|
10
|
+
* (`data-miller-columns-tree`) holding only the columns. The split exists
|
|
11
|
+
* because a tree may own nothing but `treeitem` and `group` — keeping the
|
|
12
|
+
* {@link MillerColumnsPreviewPanel | `PreviewPanel`} outside it means the
|
|
13
|
+
* panel is not an illegal child of the tree.
|
|
14
|
+
*
|
|
15
|
+
* Consequently **`aria-*` props land on the tree widget** (an `aria-label`
|
|
16
|
+
* must name the tree, not its scroll container) while every other prop —
|
|
17
|
+
* `className`, `id`, `style`, `data-*` — lands on the strip container.
|
|
18
|
+
*
|
|
19
|
+
* Every {@link MillerColumnsColumn | `MillerColumns.Column`}
|
|
20
|
+
* projects itself into the tree via a portal. Authoring the tree is **recursive** and
|
|
21
|
+
* data-less: there is no `items` prop — an {@link MillerColumnsItem | `Item`}
|
|
22
|
+
* declares its child column as a *nested* `<MillerColumns.Column>`, and the
|
|
23
|
+
* strip flattens those nested columns into a single left-to-right row by
|
|
24
|
+
* rendering one `display: contents` slot per visible depth and portalling
|
|
25
|
+
* each column into its slot. This fixes left-to-right DOM order by slot
|
|
26
|
+
* order rather than by portal commit order.
|
|
27
|
+
*
|
|
28
|
+
* **Controlled vs uncontrolled.** State is the *selection path* — an array
|
|
29
|
+
* of item ids, root column first (`["docs", "guides"]`). The two modes are
|
|
30
|
+
* statically discriminated at the type level:
|
|
31
|
+
*
|
|
32
|
+
* - **Uncontrolled** — pass {@link MillerColumnsRootUncontrolledProps.defaultValue | `defaultValue`}
|
|
33
|
+
* (or omit it to start empty). The component owns the path.
|
|
34
|
+
* - **Controlled** — pass {@link MillerColumnsRootControlledProps.value | `value`}
|
|
35
|
+
* and {@link MillerColumnsRootControlledProps.onValueChange | `onValueChange`}
|
|
36
|
+
* together; every selection defers back through the callback.
|
|
37
|
+
*
|
|
38
|
+
* **Roving tabindex.** The whole tree has exactly **one** Tab stop
|
|
39
|
+
* (`tabIndex={0}`), not one per column. It follows the last-focused item;
|
|
40
|
+
* before any focus it defaults to the deepest selected item, falling back
|
|
41
|
+
* to the first enabled root item. Within a column, Up/Down/Home/End move
|
|
42
|
+
* focus; ArrowRight opens (and steps into) a branch item's child column,
|
|
43
|
+
* ArrowLeft returns to the parent item. Under
|
|
44
|
+
* {@link MillerColumnsRootBaseProps.dir | `dir="rtl"`} that horizontal pair
|
|
45
|
+
* is mirrored, so the step-in key always points at the child column.
|
|
46
|
+
*
|
|
47
|
+
* **Typeahead.** Printable characters move focus to the first item whose
|
|
48
|
+
* label starts with the accumulated query, wrapping, and cycling through
|
|
49
|
+
* matches when the same character repeats. The query is owned by `Root` —
|
|
50
|
+
* so it survives the focus move a match causes — but resolves against the
|
|
51
|
+
* **focused item's own column**, each column being an independent list.
|
|
52
|
+
*
|
|
53
|
+
* **Context.** Root establishes {@link MillerColumnsContext} (selection
|
|
54
|
+
* path, portal slots, item registry, column widths, and focus commands);
|
|
55
|
+
* each Column provides {@link MillerColumnsColumnContext} (its depth) and
|
|
56
|
+
* each Item {@link MillerColumnsItemContext} (`selected` / `hasChildren`).
|
|
57
|
+
* Read the current selection from consumer content with
|
|
58
|
+
* {@link useMillerColumnsSelection}.
|
|
59
|
+
*
|
|
60
|
+
* @extends HTMLDivElement
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* ```tsx
|
|
64
|
+
* <MillerColumns.Root>
|
|
65
|
+
* <MillerColumns.Column>
|
|
66
|
+
* <MillerColumns.Item value="docs">Docs</MillerColumns.Item>
|
|
67
|
+
* </MillerColumns.Column>
|
|
68
|
+
* </MillerColumns.Root>
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
export declare function MillerColumnsRoot({ children, defaultValue, value, onValueChange, dir, ...rest }: MillerColumnsRootProps): ReactElement;
|
|
72
|
+
export declare namespace MillerColumnsRoot {
|
|
73
|
+
var displayName: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* A single vertical list of items within the strip. Renders a
|
|
77
|
+
* `<div role="group">` (carrying `data-depth`) that is **portal-projected**
|
|
78
|
+
* into the {@link MillerColumnsRoot | `Root`} strip's depth slot, so a
|
|
79
|
+
* `Column` nested inside an `Item` still appears side-by-side with its
|
|
80
|
+
* ancestors rather than in document flow. Until its slot has mounted the
|
|
81
|
+
* component renders `null`.
|
|
82
|
+
*
|
|
83
|
+
* A column holding no registered items carries **`data-empty`** — selecting
|
|
84
|
+
* a childless branch legitimately opens an empty column, and the styling
|
|
85
|
+
* layer needs to be able to say so rather than show a void.
|
|
86
|
+
*
|
|
87
|
+
* It reads its depth from {@link MillerColumnsContext} and re-provides it to
|
|
88
|
+
* descendant {@link MillerColumnsItem | Items} via
|
|
89
|
+
* {@link MillerColumnsColumnContext}. A width set by a
|
|
90
|
+
* {@link MillerColumnsResizeHandle | `ResizeHandle`} in this column is
|
|
91
|
+
* applied here as an inline `width` style (consumer `style` still wins for
|
|
92
|
+
* every other property).
|
|
93
|
+
*
|
|
94
|
+
* @extends HTMLDivElement
|
|
95
|
+
*
|
|
96
|
+
* @example
|
|
97
|
+
* ```tsx
|
|
98
|
+
* <MillerColumns.Column>
|
|
99
|
+
* <MillerColumns.Item value="a">A</MillerColumns.Item>
|
|
100
|
+
* </MillerColumns.Column>
|
|
101
|
+
* ```
|
|
102
|
+
*/
|
|
103
|
+
export declare function MillerColumnsColumn({ children, style, ...rest }: MillerColumnsColumnProps): ReactPortal | null;
|
|
104
|
+
export declare namespace MillerColumnsColumn {
|
|
105
|
+
var displayName: string;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* A single selectable node within a {@link MillerColumnsColumn | `Column`}.
|
|
109
|
+
* Renders a `<div role="treeitem">` for its cell content, with
|
|
110
|
+
* `aria-selected`, `aria-level` (1-based depth), and `data-state` /
|
|
111
|
+
* `data-depth` styling hooks.
|
|
112
|
+
*
|
|
113
|
+
* **Terminal vs ancestor.** Every item on the active path is
|
|
114
|
+
* `data-state="selected"`, including the ancestors the path merely passes
|
|
115
|
+
* through. The deepest one — the item the user actually landed on — also
|
|
116
|
+
* carries **`data-terminal`**. Style the two differently or the strip loses
|
|
117
|
+
* its depth cue: with a uniform selected state there is no way to tell
|
|
118
|
+
* which of four highlighted rows was clicked.
|
|
119
|
+
*
|
|
120
|
+
* The {@link MillerColumnsItemProps.value | `value`} prop is the stable
|
|
121
|
+
* identifier used to match this item against the active selection path.
|
|
122
|
+
*
|
|
123
|
+
* **Branch vs leaf.** An `Item` becomes a *branch* by nesting a
|
|
124
|
+
* `<MillerColumns.Column>` among its children — `partitionItemChildren`
|
|
125
|
+
* splits the children into the cell content and that single optional
|
|
126
|
+
* nested column (matched however deeply it is wrapped in fragments; a
|
|
127
|
+
* second nested column throws). A branch carries `aria-expanded` and
|
|
128
|
+
* mounts its child column (projecting it into the strip) only while the
|
|
129
|
+
* item is selected; an item with no nested column is a *leaf*.
|
|
130
|
+
*
|
|
131
|
+
* **Keyboard & selection.** Clicking or activating (Enter/Space) selects
|
|
132
|
+
* the item, truncating the path to this depth. ArrowRight on a branch opens
|
|
133
|
+
* and steps into the child column; ArrowLeft returns focus to the parent
|
|
134
|
+
* item. The item participates in the tree-wide single roving Tab stop.
|
|
135
|
+
*
|
|
136
|
+
* **Disabled.** Pass `disabled` to render `aria-disabled="true"` /
|
|
137
|
+
* `data-disabled`; the item is skipped by roving navigation and cannot be
|
|
138
|
+
* selected, focused, or activated.
|
|
139
|
+
*
|
|
140
|
+
* **`asChild` prop.** Pass `asChild` to render the cell as a
|
|
141
|
+
* consumer-supplied element (e.g. an `<a>`) instead of the default
|
|
142
|
+
* `<div>`. All treeitem ARIA attributes, event handlers, and the internal
|
|
143
|
+
* ref are merged onto that child via the {@link Slot} pattern. A nested
|
|
144
|
+
* `<MillerColumns.Column>` is still declared as a sibling of the cell
|
|
145
|
+
* element.
|
|
146
|
+
*
|
|
147
|
+
* **Ref forwarding.** A `ref` prop (React 19 ref-as-prop style) is
|
|
148
|
+
* forwarded to the rendered element and composed with the library's
|
|
149
|
+
* internal ref.
|
|
150
|
+
*
|
|
151
|
+
* @extends HTMLDivElement
|
|
152
|
+
*
|
|
153
|
+
* @example Leaf
|
|
154
|
+
* ```tsx
|
|
155
|
+
* <MillerColumns.Item value="guides">Guides</MillerColumns.Item>
|
|
156
|
+
* ```
|
|
157
|
+
*
|
|
158
|
+
* @example Branch
|
|
159
|
+
* ```tsx
|
|
160
|
+
* <MillerColumns.Item value="docs">
|
|
161
|
+
* Docs
|
|
162
|
+
* <MillerColumns.Column>
|
|
163
|
+
* <MillerColumns.Item value="guides">Guides</MillerColumns.Item>
|
|
164
|
+
* </MillerColumns.Column>
|
|
165
|
+
* </MillerColumns.Item>
|
|
166
|
+
* ```
|
|
167
|
+
*/
|
|
168
|
+
export declare function MillerColumnsItem<T extends HTMLElement = HTMLDivElement>({ children, ref, asChild, ...props }: MillerColumnsItemProps<T>): ReactElement;
|
|
169
|
+
export declare namespace MillerColumnsItem {
|
|
170
|
+
var displayName: string;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* An optional, decorative affordance for a branch item — typically a
|
|
174
|
+
* chevron or arrow signalling "this item reveals a child column".
|
|
175
|
+
*
|
|
176
|
+
* Renders a `<span aria-hidden="true">` (so the glyph is ignored by
|
|
177
|
+
* assistive technology) **only for branch items**; for a leaf item it
|
|
178
|
+
* renders nothing. Place it among an `Item`'s cell content.
|
|
179
|
+
*
|
|
180
|
+
* **Styling hooks.**
|
|
181
|
+
* - `data-state="selected" | "unselected"` — mirrors the parent item.
|
|
182
|
+
* - `data-has-children` — always present (the indicator only renders
|
|
183
|
+
* for branch items).
|
|
184
|
+
*
|
|
185
|
+
* @extends HTMLSpanElement
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```tsx
|
|
189
|
+
* <MillerColumns.Item value="docs">
|
|
190
|
+
* Docs
|
|
191
|
+
* <MillerColumns.ItemIndicator>▸</MillerColumns.ItemIndicator>
|
|
192
|
+
* <MillerColumns.Column>...</MillerColumns.Column>
|
|
193
|
+
* </MillerColumns.Item>
|
|
194
|
+
* ```
|
|
195
|
+
*/
|
|
196
|
+
export declare function MillerColumnsItemIndicator({ children, ...rest }: MillerColumnsItemIndicatorProps): ReactElement | null;
|
|
197
|
+
export declare namespace MillerColumnsItemIndicator {
|
|
198
|
+
var displayName: string;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* A resize affordance for the column it is rendered in — the WAI-ARIA
|
|
202
|
+
* window-splitter pattern. Renders a focusable
|
|
203
|
+
* `<div role="separator" aria-orientation="vertical" tabIndex={0}>` that
|
|
204
|
+
* drives its column's width as state on the `Root`.
|
|
205
|
+
*
|
|
206
|
+
* **Pointer and keyboard.** Drag it, or focus it and use the arrow keys:
|
|
207
|
+
* the inline-end arrow widens by
|
|
208
|
+
* {@link MillerColumnsResizeHandleProps.step | `step`} and the inline-start
|
|
209
|
+
* arrow narrows (mirrored under `dir="rtl"`), with Home and End jumping to
|
|
210
|
+
* {@link MillerColumnsResizeHandleProps.minWidth | `minWidth`} /
|
|
211
|
+
* {@link MillerColumnsResizeHandleProps.maxWidth | `maxWidth`}. Both paths
|
|
212
|
+
* clamp to the same bounds. End is a no-op while `maxWidth` is unbounded.
|
|
213
|
+
*
|
|
214
|
+
* **Value semantics.** `aria-valuenow` tracks the column's real rendered
|
|
215
|
+
* width — measured with a `ResizeObserver`, so it is truthful before the
|
|
216
|
+
* first resize and follows CSS- or container-driven changes too.
|
|
217
|
+
* `aria-valuemin` always renders; `aria-valuemax` renders only when
|
|
218
|
+
* `maxWidth` is finite.
|
|
219
|
+
*
|
|
220
|
+
* **Give it an accessible name.** A splitter announces as an unnamed
|
|
221
|
+
* separator otherwise — pass `aria-label` (e.g. `"Resize column"`).
|
|
222
|
+
*
|
|
223
|
+
* Must be rendered among a {@link MillerColumnsColumn | `MillerColumns.Column`}'s
|
|
224
|
+
* children — it reads the column's depth from
|
|
225
|
+
* {@link MillerColumnsColumnContext}. Position it with CSS (typically
|
|
226
|
+
* absolutely, against the column's trailing edge).
|
|
227
|
+
*
|
|
228
|
+
* @extends HTMLDivElement
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```tsx
|
|
232
|
+
* <MillerColumns.Column>
|
|
233
|
+
* <MillerColumns.ResizeHandle
|
|
234
|
+
* aria-label="Resize column"
|
|
235
|
+
* minWidth={120}
|
|
236
|
+
* maxWidth={400}
|
|
237
|
+
* />
|
|
238
|
+
* <MillerColumns.Item value="a">A</MillerColumns.Item>
|
|
239
|
+
* </MillerColumns.Column>
|
|
240
|
+
* ```
|
|
241
|
+
*/
|
|
242
|
+
export declare function MillerColumnsResizeHandle(props: MillerColumnsResizeHandleProps): ReactElement;
|
|
243
|
+
export declare namespace MillerColumnsResizeHandle {
|
|
244
|
+
var displayName: string;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* A trailing panel for previewing the current selection — the
|
|
248
|
+
* macOS-Finder-style preview pane.
|
|
249
|
+
*
|
|
250
|
+
* Renders a plain `<div data-miller-columns-preview>` as the last child
|
|
251
|
+
* of the strip — *outside* the inner `role="tree"` widget, since a tree may
|
|
252
|
+
* own only `treeitem` and `group`. The component is deliberately
|
|
253
|
+
* content-agnostic: it does not know how to preview an item, so the
|
|
254
|
+
* consumer supplies whatever the panel should show.
|
|
255
|
+
*
|
|
256
|
+
* While nothing is selected the panel carries **`data-empty`**, so the
|
|
257
|
+
* styling layer can render a resting state without the consumer having to
|
|
258
|
+
* re-derive the selection.
|
|
259
|
+
*
|
|
260
|
+
* Pair it with {@link useMillerColumnsSelection} to render content for
|
|
261
|
+
* the current selection. Author it as the **last child** of `Root`, a
|
|
262
|
+
* sibling of the root `Column`. It subscribes to
|
|
263
|
+
* {@link MillerColumnsContext} (so it must live inside a `Root`) but does
|
|
264
|
+
* not portal — it stays in document flow after the projected columns.
|
|
265
|
+
*
|
|
266
|
+
* @extends HTMLDivElement
|
|
267
|
+
*
|
|
268
|
+
* @example
|
|
269
|
+
* ```tsx
|
|
270
|
+
* function FilePreview() {
|
|
271
|
+
* const { selectedValue } = useMillerColumnsSelection();
|
|
272
|
+
* return selectedValue ? <Preview id={selectedValue} /> : null;
|
|
273
|
+
* }
|
|
274
|
+
*
|
|
275
|
+
* <MillerColumns.Root>
|
|
276
|
+
* <MillerColumns.Column>{items}</MillerColumns.Column>
|
|
277
|
+
* <MillerColumns.PreviewPanel>
|
|
278
|
+
* <FilePreview />
|
|
279
|
+
* </MillerColumns.PreviewPanel>
|
|
280
|
+
* </MillerColumns.Root>;
|
|
281
|
+
* ```
|
|
282
|
+
*/
|
|
283
|
+
export declare function MillerColumnsPreviewPanel({ children, forceMount, ...rest }: MillerColumnsPreviewPanelProps): ReactElement | null;
|
|
284
|
+
export declare namespace MillerColumnsPreviewPanel {
|
|
285
|
+
var displayName: string;
|
|
286
|
+
}
|
|
287
|
+
/** Type of the {@link MillerColumns} compound — the Root callable plus its sub-components. */
|
|
288
|
+
type MillerColumnsCompound = typeof MillerColumnsRoot & {
|
|
289
|
+
/** The root strip, owning selection state and portal slots. */
|
|
290
|
+
Root: typeof MillerColumnsRoot;
|
|
291
|
+
/** A single vertical list within the strip. */
|
|
292
|
+
Column: typeof MillerColumnsColumn;
|
|
293
|
+
/** A selectable node within a column. */
|
|
294
|
+
Item: typeof MillerColumnsItem;
|
|
295
|
+
/** The branch-item chevron affordance. */
|
|
296
|
+
ItemIndicator: typeof MillerColumnsItemIndicator;
|
|
297
|
+
/** The drag-to-resize separator. */
|
|
298
|
+
ResizeHandle: typeof MillerColumnsResizeHandle;
|
|
299
|
+
/** The trailing preview pane. */
|
|
300
|
+
PreviewPanel: typeof MillerColumnsPreviewPanel;
|
|
301
|
+
};
|
|
302
|
+
/**
|
|
303
|
+
* MillerColumns — a horizontal strip of vertical lists where selecting a
|
|
304
|
+
* node reveals its children in the next column. Use as a namespace
|
|
305
|
+
* (`MillerColumns.Root`, `MillerColumns.Column`, `MillerColumns.Item`, ...);
|
|
306
|
+
* the default export is also callable as the Root.
|
|
307
|
+
*/
|
|
308
|
+
declare const MillerColumnsCompound: MillerColumnsCompound;
|
|
309
|
+
export { MillerColumnsCompound as MillerColumns };
|
|
@@ -0,0 +1,332 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { createPortal } from "react-dom";
|
|
4
|
+
import { Slot } from "../Slot/index.js";
|
|
5
|
+
import { MillerColumnsContext, MillerColumnsColumnContext, MillerColumnsItemContext, } from "./MillerColumnsContext.js";
|
|
6
|
+
import { useMillerColumnsColumn, useMillerColumnsContext, useMillerColumnsItem, useMillerColumnsItemContext, useMillerColumnsResizeHandle, useMillerColumnsRoot, } from "./hooks/index.js";
|
|
7
|
+
import { partitionAriaProps, partitionItemChildren } from "./utils.js";
|
|
8
|
+
/**
|
|
9
|
+
* The root of a Miller Columns widget — a horizontal strip of vertical
|
|
10
|
+
* lists where selecting a node reveals its children in the next column.
|
|
11
|
+
*
|
|
12
|
+
* Renders **two** elements: an outer strip container
|
|
13
|
+
* (`data-miller-columns-strip`, `data-orientation="horizontal"`) that the
|
|
14
|
+
* consumer lays out and scrolls, and an inner `role="tree"` widget
|
|
15
|
+
* (`data-miller-columns-tree`) holding only the columns. The split exists
|
|
16
|
+
* because a tree may own nothing but `treeitem` and `group` — keeping the
|
|
17
|
+
* {@link MillerColumnsPreviewPanel | `PreviewPanel`} outside it means the
|
|
18
|
+
* panel is not an illegal child of the tree.
|
|
19
|
+
*
|
|
20
|
+
* Consequently **`aria-*` props land on the tree widget** (an `aria-label`
|
|
21
|
+
* must name the tree, not its scroll container) while every other prop —
|
|
22
|
+
* `className`, `id`, `style`, `data-*` — lands on the strip container.
|
|
23
|
+
*
|
|
24
|
+
* Every {@link MillerColumnsColumn | `MillerColumns.Column`}
|
|
25
|
+
* projects itself into the tree via a portal. Authoring the tree is **recursive** and
|
|
26
|
+
* data-less: there is no `items` prop — an {@link MillerColumnsItem | `Item`}
|
|
27
|
+
* declares its child column as a *nested* `<MillerColumns.Column>`, and the
|
|
28
|
+
* strip flattens those nested columns into a single left-to-right row by
|
|
29
|
+
* rendering one `display: contents` slot per visible depth and portalling
|
|
30
|
+
* each column into its slot. This fixes left-to-right DOM order by slot
|
|
31
|
+
* order rather than by portal commit order.
|
|
32
|
+
*
|
|
33
|
+
* **Controlled vs uncontrolled.** State is the *selection path* — an array
|
|
34
|
+
* of item ids, root column first (`["docs", "guides"]`). The two modes are
|
|
35
|
+
* statically discriminated at the type level:
|
|
36
|
+
*
|
|
37
|
+
* - **Uncontrolled** — pass {@link MillerColumnsRootUncontrolledProps.defaultValue | `defaultValue`}
|
|
38
|
+
* (or omit it to start empty). The component owns the path.
|
|
39
|
+
* - **Controlled** — pass {@link MillerColumnsRootControlledProps.value | `value`}
|
|
40
|
+
* and {@link MillerColumnsRootControlledProps.onValueChange | `onValueChange`}
|
|
41
|
+
* together; every selection defers back through the callback.
|
|
42
|
+
*
|
|
43
|
+
* **Roving tabindex.** The whole tree has exactly **one** Tab stop
|
|
44
|
+
* (`tabIndex={0}`), not one per column. It follows the last-focused item;
|
|
45
|
+
* before any focus it defaults to the deepest selected item, falling back
|
|
46
|
+
* to the first enabled root item. Within a column, Up/Down/Home/End move
|
|
47
|
+
* focus; ArrowRight opens (and steps into) a branch item's child column,
|
|
48
|
+
* ArrowLeft returns to the parent item. Under
|
|
49
|
+
* {@link MillerColumnsRootBaseProps.dir | `dir="rtl"`} that horizontal pair
|
|
50
|
+
* is mirrored, so the step-in key always points at the child column.
|
|
51
|
+
*
|
|
52
|
+
* **Typeahead.** Printable characters move focus to the first item whose
|
|
53
|
+
* label starts with the accumulated query, wrapping, and cycling through
|
|
54
|
+
* matches when the same character repeats. The query is owned by `Root` —
|
|
55
|
+
* so it survives the focus move a match causes — but resolves against the
|
|
56
|
+
* **focused item's own column**, each column being an independent list.
|
|
57
|
+
*
|
|
58
|
+
* **Context.** Root establishes {@link MillerColumnsContext} (selection
|
|
59
|
+
* path, portal slots, item registry, column widths, and focus commands);
|
|
60
|
+
* each Column provides {@link MillerColumnsColumnContext} (its depth) and
|
|
61
|
+
* each Item {@link MillerColumnsItemContext} (`selected` / `hasChildren`).
|
|
62
|
+
* Read the current selection from consumer content with
|
|
63
|
+
* {@link useMillerColumnsSelection}.
|
|
64
|
+
*
|
|
65
|
+
* @extends HTMLDivElement
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```tsx
|
|
69
|
+
* <MillerColumns.Root>
|
|
70
|
+
* <MillerColumns.Column>
|
|
71
|
+
* <MillerColumns.Item value="docs">Docs</MillerColumns.Item>
|
|
72
|
+
* </MillerColumns.Column>
|
|
73
|
+
* </MillerColumns.Root>
|
|
74
|
+
* ```
|
|
75
|
+
*/
|
|
76
|
+
export function MillerColumnsRoot({ children, defaultValue, value, onValueChange, dir, ...rest }) {
|
|
77
|
+
const { contextValue, columnCount, registerSlotRef, stripRef, resolvedDir } = useMillerColumnsRoot(value, defaultValue, onValueChange, dir);
|
|
78
|
+
const { aria, rest: containerProps } = partitionAriaProps(rest);
|
|
79
|
+
return (_jsx(MillerColumnsContext.Provider, { value: contextValue, children: _jsxs("div", { ref: stripRef, dir: resolvedDir, "data-miller-columns-strip": "", "data-orientation": "horizontal", ...containerProps, children: [_jsx("div", { role: "tree", "data-miller-columns-tree": "", ...aria, children: Array.from({ length: columnCount }, (_, depth) => (_jsx("div", { "data-miller-columns-slot": "", style: { display: "contents" }, ref: registerSlotRef(depth) }, depth))) }), children] }) }));
|
|
80
|
+
}
|
|
81
|
+
/** @internal */
|
|
82
|
+
MillerColumnsRoot.displayName = "MillerColumnsRoot";
|
|
83
|
+
/**
|
|
84
|
+
* A single vertical list of items within the strip. Renders a
|
|
85
|
+
* `<div role="group">` (carrying `data-depth`) that is **portal-projected**
|
|
86
|
+
* into the {@link MillerColumnsRoot | `Root`} strip's depth slot, so a
|
|
87
|
+
* `Column` nested inside an `Item` still appears side-by-side with its
|
|
88
|
+
* ancestors rather than in document flow. Until its slot has mounted the
|
|
89
|
+
* component renders `null`.
|
|
90
|
+
*
|
|
91
|
+
* A column holding no registered items carries **`data-empty`** — selecting
|
|
92
|
+
* a childless branch legitimately opens an empty column, and the styling
|
|
93
|
+
* layer needs to be able to say so rather than show a void.
|
|
94
|
+
*
|
|
95
|
+
* It reads its depth from {@link MillerColumnsContext} and re-provides it to
|
|
96
|
+
* descendant {@link MillerColumnsItem | Items} via
|
|
97
|
+
* {@link MillerColumnsColumnContext}. A width set by a
|
|
98
|
+
* {@link MillerColumnsResizeHandle | `ResizeHandle`} in this column is
|
|
99
|
+
* applied here as an inline `width` style (consumer `style` still wins for
|
|
100
|
+
* every other property).
|
|
101
|
+
*
|
|
102
|
+
* @extends HTMLDivElement
|
|
103
|
+
*
|
|
104
|
+
* @example
|
|
105
|
+
* ```tsx
|
|
106
|
+
* <MillerColumns.Column>
|
|
107
|
+
* <MillerColumns.Item value="a">A</MillerColumns.Item>
|
|
108
|
+
* </MillerColumns.Column>
|
|
109
|
+
* ```
|
|
110
|
+
*/
|
|
111
|
+
export function MillerColumnsColumn({ children, style, ...rest }) {
|
|
112
|
+
const { slot, depth, width, empty, columnContextValue } = useMillerColumnsColumn();
|
|
113
|
+
if (!slot) {
|
|
114
|
+
return null;
|
|
115
|
+
}
|
|
116
|
+
return createPortal(_jsx(MillerColumnsColumnContext.Provider, { value: columnContextValue, children: _jsx("div", { role: "group", "data-miller-columns-column": "", "data-depth": depth, ...(empty ? { "data-empty": "" } : {}), style: { ...style, ...(width !== undefined ? { width } : {}) }, ...rest, children: children }) }), slot);
|
|
117
|
+
}
|
|
118
|
+
/** @internal */
|
|
119
|
+
MillerColumnsColumn.displayName = "MillerColumnsColumn";
|
|
120
|
+
/**
|
|
121
|
+
* A single selectable node within a {@link MillerColumnsColumn | `Column`}.
|
|
122
|
+
* Renders a `<div role="treeitem">` for its cell content, with
|
|
123
|
+
* `aria-selected`, `aria-level` (1-based depth), and `data-state` /
|
|
124
|
+
* `data-depth` styling hooks.
|
|
125
|
+
*
|
|
126
|
+
* **Terminal vs ancestor.** Every item on the active path is
|
|
127
|
+
* `data-state="selected"`, including the ancestors the path merely passes
|
|
128
|
+
* through. The deepest one — the item the user actually landed on — also
|
|
129
|
+
* carries **`data-terminal`**. Style the two differently or the strip loses
|
|
130
|
+
* its depth cue: with a uniform selected state there is no way to tell
|
|
131
|
+
* which of four highlighted rows was clicked.
|
|
132
|
+
*
|
|
133
|
+
* The {@link MillerColumnsItemProps.value | `value`} prop is the stable
|
|
134
|
+
* identifier used to match this item against the active selection path.
|
|
135
|
+
*
|
|
136
|
+
* **Branch vs leaf.** An `Item` becomes a *branch* by nesting a
|
|
137
|
+
* `<MillerColumns.Column>` among its children — `partitionItemChildren`
|
|
138
|
+
* splits the children into the cell content and that single optional
|
|
139
|
+
* nested column (matched however deeply it is wrapped in fragments; a
|
|
140
|
+
* second nested column throws). A branch carries `aria-expanded` and
|
|
141
|
+
* mounts its child column (projecting it into the strip) only while the
|
|
142
|
+
* item is selected; an item with no nested column is a *leaf*.
|
|
143
|
+
*
|
|
144
|
+
* **Keyboard & selection.** Clicking or activating (Enter/Space) selects
|
|
145
|
+
* the item, truncating the path to this depth. ArrowRight on a branch opens
|
|
146
|
+
* and steps into the child column; ArrowLeft returns focus to the parent
|
|
147
|
+
* item. The item participates in the tree-wide single roving Tab stop.
|
|
148
|
+
*
|
|
149
|
+
* **Disabled.** Pass `disabled` to render `aria-disabled="true"` /
|
|
150
|
+
* `data-disabled`; the item is skipped by roving navigation and cannot be
|
|
151
|
+
* selected, focused, or activated.
|
|
152
|
+
*
|
|
153
|
+
* **`asChild` prop.** Pass `asChild` to render the cell as a
|
|
154
|
+
* consumer-supplied element (e.g. an `<a>`) instead of the default
|
|
155
|
+
* `<div>`. All treeitem ARIA attributes, event handlers, and the internal
|
|
156
|
+
* ref are merged onto that child via the {@link Slot} pattern. A nested
|
|
157
|
+
* `<MillerColumns.Column>` is still declared as a sibling of the cell
|
|
158
|
+
* element.
|
|
159
|
+
*
|
|
160
|
+
* **Ref forwarding.** A `ref` prop (React 19 ref-as-prop style) is
|
|
161
|
+
* forwarded to the rendered element and composed with the library's
|
|
162
|
+
* internal ref.
|
|
163
|
+
*
|
|
164
|
+
* @extends HTMLDivElement
|
|
165
|
+
*
|
|
166
|
+
* @example Leaf
|
|
167
|
+
* ```tsx
|
|
168
|
+
* <MillerColumns.Item value="guides">Guides</MillerColumns.Item>
|
|
169
|
+
* ```
|
|
170
|
+
*
|
|
171
|
+
* @example Branch
|
|
172
|
+
* ```tsx
|
|
173
|
+
* <MillerColumns.Item value="docs">
|
|
174
|
+
* Docs
|
|
175
|
+
* <MillerColumns.Column>
|
|
176
|
+
* <MillerColumns.Item value="guides">Guides</MillerColumns.Item>
|
|
177
|
+
* </MillerColumns.Column>
|
|
178
|
+
* </MillerColumns.Item>
|
|
179
|
+
* ```
|
|
180
|
+
*/
|
|
181
|
+
export function MillerColumnsItem({ children, ref, asChild = false, ...props }) {
|
|
182
|
+
const { cell, column } = partitionItemChildren(children);
|
|
183
|
+
const { itemProps, selected, itemContextValue } = useMillerColumnsItem({ ref: ref, ...props }, column !== null);
|
|
184
|
+
return (_jsxs(MillerColumnsItemContext.Provider, { value: itemContextValue, children: [asChild ? (_jsx(Slot, { ...itemProps, children: cell[0] })) : (_jsx("div", { ...itemProps, children: cell })), selected ? column : null] }));
|
|
185
|
+
}
|
|
186
|
+
/** @internal */
|
|
187
|
+
MillerColumnsItem.displayName = "MillerColumnsItem";
|
|
188
|
+
/**
|
|
189
|
+
* An optional, decorative affordance for a branch item — typically a
|
|
190
|
+
* chevron or arrow signalling "this item reveals a child column".
|
|
191
|
+
*
|
|
192
|
+
* Renders a `<span aria-hidden="true">` (so the glyph is ignored by
|
|
193
|
+
* assistive technology) **only for branch items**; for a leaf item it
|
|
194
|
+
* renders nothing. Place it among an `Item`'s cell content.
|
|
195
|
+
*
|
|
196
|
+
* **Styling hooks.**
|
|
197
|
+
* - `data-state="selected" | "unselected"` — mirrors the parent item.
|
|
198
|
+
* - `data-has-children` — always present (the indicator only renders
|
|
199
|
+
* for branch items).
|
|
200
|
+
*
|
|
201
|
+
* @extends HTMLSpanElement
|
|
202
|
+
*
|
|
203
|
+
* @example
|
|
204
|
+
* ```tsx
|
|
205
|
+
* <MillerColumns.Item value="docs">
|
|
206
|
+
* Docs
|
|
207
|
+
* <MillerColumns.ItemIndicator>▸</MillerColumns.ItemIndicator>
|
|
208
|
+
* <MillerColumns.Column>...</MillerColumns.Column>
|
|
209
|
+
* </MillerColumns.Item>
|
|
210
|
+
* ```
|
|
211
|
+
*/
|
|
212
|
+
export function MillerColumnsItemIndicator({ children, ...rest }) {
|
|
213
|
+
const { selected, hasChildren } = useMillerColumnsItemContext();
|
|
214
|
+
if (!hasChildren) {
|
|
215
|
+
return null;
|
|
216
|
+
}
|
|
217
|
+
return (_jsx("span", { "aria-hidden": "true", "data-state": selected ? "selected" : "unselected", "data-has-children": "", ...rest, children: children }));
|
|
218
|
+
}
|
|
219
|
+
/** @internal */
|
|
220
|
+
MillerColumnsItemIndicator.displayName = "MillerColumnsItemIndicator";
|
|
221
|
+
/**
|
|
222
|
+
* A resize affordance for the column it is rendered in — the WAI-ARIA
|
|
223
|
+
* window-splitter pattern. Renders a focusable
|
|
224
|
+
* `<div role="separator" aria-orientation="vertical" tabIndex={0}>` that
|
|
225
|
+
* drives its column's width as state on the `Root`.
|
|
226
|
+
*
|
|
227
|
+
* **Pointer and keyboard.** Drag it, or focus it and use the arrow keys:
|
|
228
|
+
* the inline-end arrow widens by
|
|
229
|
+
* {@link MillerColumnsResizeHandleProps.step | `step`} and the inline-start
|
|
230
|
+
* arrow narrows (mirrored under `dir="rtl"`), with Home and End jumping to
|
|
231
|
+
* {@link MillerColumnsResizeHandleProps.minWidth | `minWidth`} /
|
|
232
|
+
* {@link MillerColumnsResizeHandleProps.maxWidth | `maxWidth`}. Both paths
|
|
233
|
+
* clamp to the same bounds. End is a no-op while `maxWidth` is unbounded.
|
|
234
|
+
*
|
|
235
|
+
* **Value semantics.** `aria-valuenow` tracks the column's real rendered
|
|
236
|
+
* width — measured with a `ResizeObserver`, so it is truthful before the
|
|
237
|
+
* first resize and follows CSS- or container-driven changes too.
|
|
238
|
+
* `aria-valuemin` always renders; `aria-valuemax` renders only when
|
|
239
|
+
* `maxWidth` is finite.
|
|
240
|
+
*
|
|
241
|
+
* **Give it an accessible name.** A splitter announces as an unnamed
|
|
242
|
+
* separator otherwise — pass `aria-label` (e.g. `"Resize column"`).
|
|
243
|
+
*
|
|
244
|
+
* Must be rendered among a {@link MillerColumnsColumn | `MillerColumns.Column`}'s
|
|
245
|
+
* children — it reads the column's depth from
|
|
246
|
+
* {@link MillerColumnsColumnContext}. Position it with CSS (typically
|
|
247
|
+
* absolutely, against the column's trailing edge).
|
|
248
|
+
*
|
|
249
|
+
* @extends HTMLDivElement
|
|
250
|
+
*
|
|
251
|
+
* @example
|
|
252
|
+
* ```tsx
|
|
253
|
+
* <MillerColumns.Column>
|
|
254
|
+
* <MillerColumns.ResizeHandle
|
|
255
|
+
* aria-label="Resize column"
|
|
256
|
+
* minWidth={120}
|
|
257
|
+
* maxWidth={400}
|
|
258
|
+
* />
|
|
259
|
+
* <MillerColumns.Item value="a">A</MillerColumns.Item>
|
|
260
|
+
* </MillerColumns.Column>
|
|
261
|
+
* ```
|
|
262
|
+
*/
|
|
263
|
+
export function MillerColumnsResizeHandle(props) {
|
|
264
|
+
const { handleProps } = useMillerColumnsResizeHandle(props);
|
|
265
|
+
return _jsx("div", { ...handleProps });
|
|
266
|
+
}
|
|
267
|
+
/** @internal */
|
|
268
|
+
MillerColumnsResizeHandle.displayName = "MillerColumnsResizeHandle";
|
|
269
|
+
/**
|
|
270
|
+
* A trailing panel for previewing the current selection — the
|
|
271
|
+
* macOS-Finder-style preview pane.
|
|
272
|
+
*
|
|
273
|
+
* Renders a plain `<div data-miller-columns-preview>` as the last child
|
|
274
|
+
* of the strip — *outside* the inner `role="tree"` widget, since a tree may
|
|
275
|
+
* own only `treeitem` and `group`. The component is deliberately
|
|
276
|
+
* content-agnostic: it does not know how to preview an item, so the
|
|
277
|
+
* consumer supplies whatever the panel should show.
|
|
278
|
+
*
|
|
279
|
+
* While nothing is selected the panel carries **`data-empty`**, so the
|
|
280
|
+
* styling layer can render a resting state without the consumer having to
|
|
281
|
+
* re-derive the selection.
|
|
282
|
+
*
|
|
283
|
+
* Pair it with {@link useMillerColumnsSelection} to render content for
|
|
284
|
+
* the current selection. Author it as the **last child** of `Root`, a
|
|
285
|
+
* sibling of the root `Column`. It subscribes to
|
|
286
|
+
* {@link MillerColumnsContext} (so it must live inside a `Root`) but does
|
|
287
|
+
* not portal — it stays in document flow after the projected columns.
|
|
288
|
+
*
|
|
289
|
+
* @extends HTMLDivElement
|
|
290
|
+
*
|
|
291
|
+
* @example
|
|
292
|
+
* ```tsx
|
|
293
|
+
* function FilePreview() {
|
|
294
|
+
* const { selectedValue } = useMillerColumnsSelection();
|
|
295
|
+
* return selectedValue ? <Preview id={selectedValue} /> : null;
|
|
296
|
+
* }
|
|
297
|
+
*
|
|
298
|
+
* <MillerColumns.Root>
|
|
299
|
+
* <MillerColumns.Column>{items}</MillerColumns.Column>
|
|
300
|
+
* <MillerColumns.PreviewPanel>
|
|
301
|
+
* <FilePreview />
|
|
302
|
+
* </MillerColumns.PreviewPanel>
|
|
303
|
+
* </MillerColumns.Root>;
|
|
304
|
+
* ```
|
|
305
|
+
*/
|
|
306
|
+
export function MillerColumnsPreviewPanel({ children, forceMount = false, ...rest }) {
|
|
307
|
+
const { activePath, terminalIsLeaf } = useMillerColumnsContext();
|
|
308
|
+
// Finder's rule: the preview occupies the slot *after* the selected item, so
|
|
309
|
+
// it exists only where that item has no children to open there instead.
|
|
310
|
+
if (!forceMount && !terminalIsLeaf) {
|
|
311
|
+
return null;
|
|
312
|
+
}
|
|
313
|
+
return (_jsx("div", { "data-miller-columns-preview": "", ...(activePath.length === 0 ? { "data-empty": "" } : {}), ...rest, children: children }));
|
|
314
|
+
}
|
|
315
|
+
/** @internal */
|
|
316
|
+
MillerColumnsPreviewPanel.displayName = "MillerColumnsPreviewPanel";
|
|
317
|
+
/**
|
|
318
|
+
* MillerColumns — a horizontal strip of vertical lists where selecting a
|
|
319
|
+
* node reveals its children in the next column. Use as a namespace
|
|
320
|
+
* (`MillerColumns.Root`, `MillerColumns.Column`, `MillerColumns.Item`, ...);
|
|
321
|
+
* the default export is also callable as the Root.
|
|
322
|
+
*/
|
|
323
|
+
const MillerColumnsCompound = Object.assign(MillerColumnsRoot, {
|
|
324
|
+
Root: MillerColumnsRoot,
|
|
325
|
+
Column: MillerColumnsColumn,
|
|
326
|
+
Item: MillerColumnsItem,
|
|
327
|
+
ItemIndicator: MillerColumnsItemIndicator,
|
|
328
|
+
ResizeHandle: MillerColumnsResizeHandle,
|
|
329
|
+
PreviewPanel: MillerColumnsPreviewPanel,
|
|
330
|
+
});
|
|
331
|
+
MillerColumnsCompound.displayName = "MillerColumns";
|
|
332
|
+
export { MillerColumnsCompound as MillerColumns };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { MillerColumnsContextValue, MillerColumnsColumnContextValue, MillerColumnsItemContextValue } from "./types.js";
|
|
2
|
+
export declare const MillerColumnsContext: import("react").Context<MillerColumnsContextValue | null>, useMillerColumnsContext: () => MillerColumnsContextValue;
|
|
3
|
+
export declare const MillerColumnsColumnContext: import("react").Context<MillerColumnsColumnContextValue | null>, useMillerColumnsColumnContext: () => MillerColumnsColumnContextValue;
|
|
4
|
+
export declare const MillerColumnsItemContext: import("react").Context<MillerColumnsItemContextValue | null>, useMillerColumnsItemContext: () => MillerColumnsItemContextValue;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { createStrictContext } from "../utils/index.js";
|
|
3
|
+
export const [MillerColumnsContext, useMillerColumnsContext] = createStrictContext("MillerColumns sub-components must be rendered inside <MillerColumns.Root>.", "MillerColumnsContext");
|
|
4
|
+
export const [MillerColumnsColumnContext, useMillerColumnsColumnContext] = createStrictContext("MillerColumns.Item must be rendered inside <MillerColumns.Column>.", "MillerColumnsColumnContext");
|
|
5
|
+
export const [MillerColumnsItemContext, useMillerColumnsItemContext] = createStrictContext("MillerColumns.ItemIndicator must be rendered inside <MillerColumns.Item>.", "MillerColumnsItemContext");
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { useMillerColumnsContext } from "./useMillerColumnsContext.js";
|
|
2
|
+
export { useMillerColumnsColumnContext } from "./useMillerColumnsColumnContext.js";
|
|
3
|
+
export { useMillerColumnsItemContext } from "./useMillerColumnsItemContext.js";
|
|
4
|
+
export { useMillerColumnsRoot } from "./useMillerColumnsRoot.js";
|
|
5
|
+
export { useMillerColumnsColumn } from "./useMillerColumnsColumn.js";
|
|
6
|
+
export { useMillerColumnsItem } from "./useMillerColumnsItem.js";
|
|
7
|
+
export { useMillerColumnsResizeHandle } from "./useMillerColumnsResizeHandle.js";
|