@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
package/src/Carousel/types.ts
DELETED
|
@@ -1,830 +0,0 @@
|
|
|
1
|
-
import { ComponentProps, ReactNode, RefObject } from "react";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Discriminated label shape for `Carousel.Root` — exactly one of
|
|
5
|
-
* `ariaLabel` or `ariaLabelledBy` must be supplied so every carousel
|
|
6
|
-
* has an accessible name (per the WAI-ARIA Carousel pattern). TypeScript
|
|
7
|
-
* rejects shapes that supply both or neither.
|
|
8
|
-
*/
|
|
9
|
-
export type CarouselRootLabelProps =
|
|
10
|
-
| {
|
|
11
|
-
/** Accessible name for the carousel region, announced as
|
|
12
|
-
* `aria-label`. Prefer a short, human-readable description (e.g.
|
|
13
|
-
* `"Featured products"`). Mutually exclusive with `ariaLabelledBy`. */
|
|
14
|
-
ariaLabel: string;
|
|
15
|
-
ariaLabelledBy?: never;
|
|
16
|
-
}
|
|
17
|
-
| {
|
|
18
|
-
ariaLabel?: never;
|
|
19
|
-
/** Id of an existing element to name the carousel region, set as
|
|
20
|
-
* `aria-labelledby`. Use when a visible heading already labels the
|
|
21
|
-
* carousel. Mutually exclusive with `ariaLabel`. */
|
|
22
|
-
ariaLabelledBy: string;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* Uncontrolled page state — the Root owns the active page internally,
|
|
27
|
-
* optionally seeded by `defaultPage`. The discriminated union below
|
|
28
|
-
* rejects passing `page` or `onPageChange` alongside it.
|
|
29
|
-
*/
|
|
30
|
-
export type UncontrolledCarouselPageProps = {
|
|
31
|
-
/** Uncontrolled active page index. Defaults to `0`. */
|
|
32
|
-
defaultPage?: number;
|
|
33
|
-
page?: never;
|
|
34
|
-
onPageChange?: never;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Controlled page state — the parent owns the active page; the Root
|
|
39
|
-
* defers every state change back through `onPageChange`. Both props
|
|
40
|
-
* must be supplied together.
|
|
41
|
-
*/
|
|
42
|
-
export type ControlledCarouselPageProps = {
|
|
43
|
-
/** Controlled active page index. */
|
|
44
|
-
page: number;
|
|
45
|
-
/** Callback invoked when the active page should change (e.g. when the
|
|
46
|
-
* user clicks `Carousel.NextTrigger` or `Carousel.PreviousTrigger`).
|
|
47
|
-
* The callback is responsible for re-rendering with the new `page`. */
|
|
48
|
-
onPageChange: (page: number) => void;
|
|
49
|
-
defaultPage?: never;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Discriminated state union — TypeScript rejects mixed shapes (e.g.
|
|
54
|
-
* `defaultPage` + `page`, or `page` without `onPageChange`).
|
|
55
|
-
*/
|
|
56
|
-
export type CarouselRootPageStateProps =
|
|
57
|
-
| UncontrolledCarouselPageProps
|
|
58
|
-
| ControlledCarouselPageProps;
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Uncontrolled playing state — the Root owns the "playing" flag
|
|
62
|
-
* internally, optionally seeded by `defaultPlaying`.
|
|
63
|
-
*/
|
|
64
|
-
export type UncontrolledCarouselPlayingProps = {
|
|
65
|
-
/** Uncontrolled initial playing flag. Defaults to `false`. */
|
|
66
|
-
defaultPlaying?: boolean;
|
|
67
|
-
playing?: never;
|
|
68
|
-
onPlayingChange?: never;
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Controlled playing state — the parent owns the "playing" flag; the
|
|
73
|
-
* Root defers every change back through `onPlayingChange`. Both props
|
|
74
|
-
* must be supplied together.
|
|
75
|
-
*/
|
|
76
|
-
export type ControlledCarouselPlayingProps = {
|
|
77
|
-
/** Controlled playing flag. */
|
|
78
|
-
playing: boolean;
|
|
79
|
-
/** Callback invoked when the playing flag should toggle. The callback
|
|
80
|
-
* is responsible for re-rendering with the new `playing` value. */
|
|
81
|
-
onPlayingChange: (playing: boolean) => void;
|
|
82
|
-
defaultPlaying?: never;
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Discriminated playing-state union — mirrors the page-state pattern.
|
|
87
|
-
*/
|
|
88
|
-
export type CarouselRootPlayingStateProps =
|
|
89
|
-
| UncontrolledCarouselPlayingProps
|
|
90
|
-
| ControlledCarouselPlayingProps;
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Autoplay configuration. Pass `true` for the default 4000ms cadence,
|
|
94
|
-
* `false` (default) to disable autoplay entirely, or `{ delay: N }` to
|
|
95
|
-
* tune the interval. The active page advances on each tick while
|
|
96
|
-
* `playing` is `true`; the timer stops once the active page reaches the
|
|
97
|
-
* last slide.
|
|
98
|
-
*/
|
|
99
|
-
export type CarouselAutoplay = boolean | { delay: number };
|
|
100
|
-
|
|
101
|
-
/**
|
|
102
|
-
* Visual transition mode for the viewport. The resolved value is
|
|
103
|
-
* published on the Root as `data-transition` so consumer CSS can switch
|
|
104
|
-
* the visual off a single hook.
|
|
105
|
-
*
|
|
106
|
-
* - `"slide"` (default) — relies on native CSS scroll-snap; the
|
|
107
|
-
* Viewport scrolls programmatically when the page changes and
|
|
108
|
-
* listens for `scrollsnapchange` to update React state when the
|
|
109
|
-
* user swipes.
|
|
110
|
-
* - `"fade"` — installs no scroll wiring (like `"none"`), but names the
|
|
111
|
-
* intent so a styled surface can ship a crossfade by default: stack
|
|
112
|
-
* the slides and cross-fade opacity off the per-slide `data-state`
|
|
113
|
-
* hook. Native swipe/drag and peek don't apply (there's no scroll);
|
|
114
|
-
* controls, indicators, and keyboard paging still work.
|
|
115
|
-
* - `"none"` — the Viewport installs no scroll wiring at all, and the
|
|
116
|
-
* styled surface ships no default visual: consumer CSS owns the
|
|
117
|
-
* transition entirely via the `data-state` hook on each slide, which
|
|
118
|
-
* still flips with the active page.
|
|
119
|
-
*/
|
|
120
|
-
export type CarouselTransition = "slide" | "fade" | "none";
|
|
121
|
-
|
|
122
|
-
/**
|
|
123
|
-
* Resolved wrap-around navigation mode — the value published as the
|
|
124
|
-
* `data-loop` styling hook on the Root. The consumer-facing `loop` prop
|
|
125
|
-
* accepts `boolean | "wrap" | "infinite"` and resolves to this:
|
|
126
|
-
*
|
|
127
|
-
* - `"none"` — navigation clamps at the ends (`loop` omitted / `false`).
|
|
128
|
-
* - `"wrap"` — *semantic* wrapping (`loop` / `loop={true}` / `loop="wrap"`):
|
|
129
|
-
* Next/Previous and autoplay wrap past the ends, the triggers never
|
|
130
|
-
* disable, but wrapping last→first smooth-scrolls the whole track back
|
|
131
|
-
* (a visible rewind, the same path `Home`/`End` take).
|
|
132
|
-
* - `"infinite"` — continuous infinite (`loop="infinite"`): the same wrap
|
|
133
|
-
* page model, plus a cloned edge buffer and a native-scroll recentre so
|
|
134
|
-
* the wrap is a continuous glide with no visible rewind.
|
|
135
|
-
*
|
|
136
|
-
* Both `"wrap"` and `"infinite"` share the page model (the wrap
|
|
137
|
-
* arithmetic in `next`/`previous` and the never-disable boundaries);
|
|
138
|
-
* `"infinite"` layers the clone/scroll behaviour on top, keyed off the
|
|
139
|
-
* `data-loop="infinite"` hook.
|
|
140
|
-
*/
|
|
141
|
-
export type CarouselLoopMode = "none" | "wrap" | "infinite";
|
|
142
|
-
|
|
143
|
-
/**
|
|
144
|
-
* Scroll-snap alignment that the Viewport should target when
|
|
145
|
-
* programmatically scrolling to a page.
|
|
146
|
-
*
|
|
147
|
-
* - `"start"` (default) — scrolls so the first slide of the target
|
|
148
|
-
* page aligns with the **start** (left) edge of the Viewport.
|
|
149
|
-
* Matches `scroll-snap-align: start` in consumer CSS.
|
|
150
|
-
* - `"center"` — scrolls so the first slide of the target page is
|
|
151
|
-
* **centred** in the Viewport. The target is offset inward by
|
|
152
|
-
* `(viewportWidth − slideWidth) / 2`. Use this with
|
|
153
|
-
* `scroll-snap-align: center` in consumer CSS (e.g. a peek
|
|
154
|
-
* layout where slides are narrower than the Viewport).
|
|
155
|
-
* - `"end"` — scrolls so the first slide of the target page's
|
|
156
|
-
* **trailing** edge aligns with the Viewport's trailing edge. The
|
|
157
|
-
* target is offset inward by the full `viewportWidth − slideWidth`.
|
|
158
|
-
* Use with `scroll-snap-align: end`.
|
|
159
|
-
*
|
|
160
|
-
* Settable on `Carousel.Root` (the default for every slide) and
|
|
161
|
-
* overridden per-slide via {@link CarouselSlideProps.snapAlign} — e.g. a
|
|
162
|
-
* variable-width layout where only some slides should centre. Matches
|
|
163
|
-
* Ark UI's per-`Item` `snapAlign`.
|
|
164
|
-
*/
|
|
165
|
-
export type CarouselSnapAlign = "start" | "center" | "end";
|
|
166
|
-
|
|
167
|
-
/**
|
|
168
|
-
* `scroll-snap-type` strictness the Viewport scrolls with.
|
|
169
|
-
*
|
|
170
|
-
* - `"mandatory"` (default) — the browser always rests on a snap point;
|
|
171
|
-
* scrolling can't stop mid-way between slides.
|
|
172
|
-
* - `"proximity"` — the browser only nudges toward a snap point when the
|
|
173
|
-
* scroll ends *near* one, otherwise leaving the scroll wherever it
|
|
174
|
-
* stopped — for a looser, free-scrolling feel (e.g. a gallery where
|
|
175
|
-
* forcing a rest on every slide feels too rigid).
|
|
176
|
-
*
|
|
177
|
-
* The resolved value is published on the Viewport as `data-snap-type` so
|
|
178
|
-
* consumer CSS can switch `scroll-snap-type`'s strictness off a single hook.
|
|
179
|
-
* Matches Ark UI's `snapType`.
|
|
180
|
-
*/
|
|
181
|
-
export type CarouselSnapType = "mandatory" | "proximity";
|
|
182
|
-
|
|
183
|
-
/**
|
|
184
|
-
* Payload passed to `Carousel.Root`'s `onDragStatusChange` on every
|
|
185
|
-
* mouse-drag status transition (only reachable when `allowMouseDrag` is
|
|
186
|
-
* `true`):
|
|
187
|
-
*
|
|
188
|
-
* - `"dragging.start"` — the pointer just crossed the click-vs-drag
|
|
189
|
-
* movement threshold; a drag has begun.
|
|
190
|
-
* - `"dragging"` — a subsequent pointer move while already dragging.
|
|
191
|
-
* - `"dragging.end"` — the drag ended (`pointerup` or `pointercancel`).
|
|
192
|
-
*
|
|
193
|
-
* `page` is the live active page at the moment of the event; `isDragging`
|
|
194
|
-
* mirrors the imperative `isDragging()` snapshot at that moment (`true`
|
|
195
|
-
* for `"dragging.start"`/`"dragging"`, `false` for `"dragging.end"`).
|
|
196
|
-
* Matches Ark UI's `onDragStatusChange` shape.
|
|
197
|
-
*/
|
|
198
|
-
export type CarouselDragStatus = {
|
|
199
|
-
type: "dragging.start" | "dragging" | "dragging.end";
|
|
200
|
-
page: number;
|
|
201
|
-
isDragging: boolean;
|
|
202
|
-
};
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Payload passed to `Carousel.Root`'s `onOverscrollStatusChange` whenever
|
|
206
|
-
* the user pushes against a boundary that has nowhere further to go —
|
|
207
|
-
* detected off the same `canGoNext` / `canGoPrevious` page-boundary truth
|
|
208
|
-
* the rest of the primitive already uses, from three input sources the
|
|
209
|
-
* carousel directly owns the physics for:
|
|
210
|
-
*
|
|
211
|
-
* - `"keyboard"` — the forward/backward arrow key pressed while already
|
|
212
|
-
* at that boundary (`Home`/`End` are absolute jumps, not directional
|
|
213
|
-
* pushes, so they never fire this).
|
|
214
|
-
* - `"wheel"` — the existing horizontal-desktop wheel-to-scroll
|
|
215
|
-
* translation, blocked at a boundary.
|
|
216
|
-
* - `"drag"` — a mouse drag (`allowMouseDrag`) pushing past a boundary.
|
|
217
|
-
*
|
|
218
|
-
* `"keyboard"` and `"wheel"` are instantaneous taps with no meaningful
|
|
219
|
-
* distance — they always fire a single bare `"overscroll"` with
|
|
220
|
-
* `amount: 0`. `"drag"` is the one continuous, physically real case —
|
|
221
|
-
* it fires `"overscroll.start"` the moment the drag starts pushing past
|
|
222
|
-
* the boundary, `"overscroll"` on every subsequent move while still
|
|
223
|
-
* pushing (with the live `amount`, the drag delta past the boundary),
|
|
224
|
-
* and `"overscroll.end"` when the drag stops pushing past it (a reversal
|
|
225
|
-
* back within bounds, or the drag ending) — mirroring
|
|
226
|
-
* `CarouselDragStatus`'s shape. `page` is the active page at the moment
|
|
227
|
-
* of the event.
|
|
228
|
-
*
|
|
229
|
-
* Native touch/swipe overscroll (OS-level rubber-banding) is
|
|
230
|
-
* deliberately out of scope — that's browser-owned scroll physics with
|
|
231
|
-
* no JS hook to observe it from, consistent with the primitive's
|
|
232
|
-
* "native scroll is the source of truth" approach elsewhere.
|
|
233
|
-
*/
|
|
234
|
-
export type CarouselOverscrollStatus = {
|
|
235
|
-
type: "overscroll.start" | "overscroll" | "overscroll.end";
|
|
236
|
-
edge: "start" | "end";
|
|
237
|
-
source: "keyboard" | "wheel" | "drag";
|
|
238
|
-
amount: number;
|
|
239
|
-
page: number;
|
|
240
|
-
};
|
|
241
|
-
|
|
242
|
-
/**
|
|
243
|
-
* Payload passed to `Carousel.Root`'s `onAutoplayStatusChange` on every
|
|
244
|
-
* autoplay status transition (only reachable when `autoplay` is enabled):
|
|
245
|
-
*
|
|
246
|
-
* - `"autoplay.start"` — the timer just became active: autoplay is
|
|
247
|
-
* enabled, `playing` is `true`, another page remains, and the timer
|
|
248
|
-
* isn't suspended by hover/focus/touch.
|
|
249
|
-
* - `"autoplay"` — a scheduled tick fired and is about to advance the
|
|
250
|
-
* page, while the timer stays active.
|
|
251
|
-
* - `"autoplay.stop"` — the timer stopped running, whether because
|
|
252
|
-
* `playing` flipped `false`, the last page was reached, or
|
|
253
|
-
* hover/focus/touch suspended it.
|
|
254
|
-
*
|
|
255
|
-
* Fires on every tick, not just play/pause toggles. `page` is the active
|
|
256
|
-
* page at the moment of the event; `isPlaying` mirrors whether the timer
|
|
257
|
-
* is running right after the event (`true` for `"autoplay.start"`/
|
|
258
|
-
* `"autoplay"`, `false` for `"autoplay.stop"`). Matches Ark UI's
|
|
259
|
-
* `onAutoplayStatusChange` shape.
|
|
260
|
-
*/
|
|
261
|
-
export type CarouselAutoplayStatus = {
|
|
262
|
-
type: "autoplay.start" | "autoplay" | "autoplay.stop";
|
|
263
|
-
page: number;
|
|
264
|
-
isPlaying: boolean;
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
/**
|
|
268
|
-
* Axis the carousel scrolls and paginates along.
|
|
269
|
-
*
|
|
270
|
-
* - `"horizontal"` (default) — slides lay out inline; the viewport
|
|
271
|
-
* scroll-snaps on the inline (x) axis. `Carousel.NextTrigger` /
|
|
272
|
-
* `Carousel.PreviousTrigger` and the viewport `ArrowRight` /
|
|
273
|
-
* `ArrowLeft` keys advance / retreat.
|
|
274
|
-
* - `"vertical"` — slides lay out in the block direction; the viewport
|
|
275
|
-
* scroll-snaps on the block (y) axis. The viewport `ArrowDown` /
|
|
276
|
-
* `ArrowUp` keys advance / retreat instead (the horizontal arrows are
|
|
277
|
-
* inert), and programmatic paging scrolls on the block axis.
|
|
278
|
-
*
|
|
279
|
-
* The resolved value is published on the Root as `data-orientation` so
|
|
280
|
-
* consumer CSS can switch layout (e.g. a column viewport with a
|
|
281
|
-
* `scroll-snap-type: y mandatory`) off a single hook.
|
|
282
|
-
*/
|
|
283
|
-
export type CarouselOrientation = "horizontal" | "vertical";
|
|
284
|
-
|
|
285
|
-
/**
|
|
286
|
-
* Pin DOM `id`s on the rendered sub-components for SSR / hydration
|
|
287
|
-
* stability or for external `aria-controls` references. Any keys you
|
|
288
|
-
* omit leave the corresponding element unidentified (or with whatever
|
|
289
|
-
* the consumer attaches to that sub-component directly via its own
|
|
290
|
-
* `id` prop, which always wins).
|
|
291
|
-
*/
|
|
292
|
-
export type CarouselIds = {
|
|
293
|
-
root?: string;
|
|
294
|
-
viewport?: string;
|
|
295
|
-
previousTrigger?: string;
|
|
296
|
-
nextTrigger?: string;
|
|
297
|
-
playPauseTrigger?: string;
|
|
298
|
-
indicatorGroup?: string;
|
|
299
|
-
};
|
|
300
|
-
|
|
301
|
-
/**
|
|
302
|
-
* Override the default user-visible strings the component owns —
|
|
303
|
-
* intended for internationalisation. Any keys you omit fall back to
|
|
304
|
-
* the English defaults.
|
|
305
|
-
*/
|
|
306
|
-
export type CarouselTranslations = {
|
|
307
|
-
/** Format used for the auto-generated slide aria-label. Receives
|
|
308
|
-
* 1-indexed `index` and the live `total`. Default:
|
|
309
|
-
* `({ index, total }) => "${index} of ${total}"`. */
|
|
310
|
-
slideLabel?: (params: { index: number; total: number }) => string;
|
|
311
|
-
/** Format used for the auto-generated indicator aria-label. Receives
|
|
312
|
-
* the 1-indexed page position. Default:
|
|
313
|
-
* `({ index }) => "Slide ${index}"`. */
|
|
314
|
-
indicatorLabel?: (params: { index: number }) => string;
|
|
315
|
-
/** Accessible name for `Carousel.PlayPauseTrigger` while paused.
|
|
316
|
-
* Default: `"Start automatic slide show"`. */
|
|
317
|
-
startSlideshow?: string;
|
|
318
|
-
/** Accessible name for `Carousel.PlayPauseTrigger` while playing.
|
|
319
|
-
* Default: `"Stop automatic slide show"`. */
|
|
320
|
-
stopSlideshow?: string;
|
|
321
|
-
/** Format used for `Carousel.ProgressText`'s default rendered content.
|
|
322
|
-
* Receives the 0-indexed active `page` and the live `totalPages`.
|
|
323
|
-
* Default: `({ page, totalPages }) => "${page + 1} of ${totalPages}"`. */
|
|
324
|
-
progressText?: (params: { page: number; totalPages: number }) => string;
|
|
325
|
-
};
|
|
326
|
-
|
|
327
|
-
/** Props for `Carousel.Root` — the labelled `<section>` wrapping the whole widget; combines label, page-state, and playing-state shapes with autoplay, transition, and layout options. */
|
|
328
|
-
export type CarouselRootProps = Omit<
|
|
329
|
-
ComponentProps<"section">,
|
|
330
|
-
"aria-label" | "aria-labelledby"
|
|
331
|
-
> &
|
|
332
|
-
CarouselRootLabelProps &
|
|
333
|
-
CarouselRootPageStateProps &
|
|
334
|
-
CarouselRootPlayingStateProps & {
|
|
335
|
-
/** Autoplay configuration — see {@link CarouselAutoplay}. */
|
|
336
|
-
autoplay?: CarouselAutoplay;
|
|
337
|
-
/** Visual transition mode — see {@link CarouselTransition}.
|
|
338
|
-
* Defaults to `"slide"`. */
|
|
339
|
-
transition?: CarouselTransition;
|
|
340
|
-
/** Number of slides visible per page. Defaults to `1`. With values
|
|
341
|
-
* greater than `1`, slides are grouped into pages of that size for
|
|
342
|
-
* navigation purposes: indicators auto-render per page, boundary
|
|
343
|
-
* clamp moves to the last page, and `Carousel.NextTrigger` /
|
|
344
|
-
* `Carousel.PreviousTrigger` advance one page at a time. The **last
|
|
345
|
-
* page always end-aligns** (its window is full, flush with the track
|
|
346
|
-
* end) rather than leaving a partial page — a partial page's leading
|
|
347
|
-
* slide can't align to the viewport start, which desyncs the active
|
|
348
|
-
* page against the scroll. So 7 slides at `slidesPerPage={3}` are 3
|
|
349
|
-
* pages — `[0,1,2] [3,4,5] [4,5,6]` — the last shifted back by one to
|
|
350
|
-
* stay full. Coerced to an integer ≥ 1 — `0`, negative, fractional,
|
|
351
|
-
* and non-finite values are clamped (e.g. `2.5 → 2`, `0 → 1`) so the
|
|
352
|
-
* page maths never divides by zero. */
|
|
353
|
-
slidesPerPage?: number;
|
|
354
|
-
/** Number of slides advanced by `Carousel.NextTrigger` /
|
|
355
|
-
* `Carousel.PreviousTrigger`. `"auto"` (default) advances one full page
|
|
356
|
-
* at a time (= `slidesPerPage`); a number advances exactly that many
|
|
357
|
-
* slides per click and pages are windowed so the visible window always
|
|
358
|
-
* stays full. A numeric move is coerced to an integer in
|
|
359
|
-
* `[1, slidesPerPage]` — it can neither drop below one nor skip past a
|
|
360
|
-
* page (which would orphan the slides in the gap) — and the **last page
|
|
361
|
-
* is end-aligned to the track end**, so every slide stays reachable even
|
|
362
|
-
* when the move doesn't divide the slide count evenly (e.g. 6 slides,
|
|
363
|
-
* `slidesPerPage={3}`, `slidesPerMove={2}` yields pages
|
|
364
|
-
* `[0,1,2] [2,3,4] [3,4,5]`). */
|
|
365
|
-
slidesPerMove?: number | "auto";
|
|
366
|
-
/** Override the default user-visible strings the component owns —
|
|
367
|
-
* see {@link CarouselTranslations}. Useful for i18n. */
|
|
368
|
-
translations?: CarouselTranslations;
|
|
369
|
-
/** Pin DOM `id`s on the rendered sub-components — see
|
|
370
|
-
* {@link CarouselIds}. Useful for SSR hydration stability and
|
|
371
|
-
* external `aria-controls` linkage. */
|
|
372
|
-
ids?: CarouselIds;
|
|
373
|
-
/** Scroll-snap alignment the Viewport targets when programmatically
|
|
374
|
-
* scrolling to a page — see {@link CarouselSnapAlign}.
|
|
375
|
-
* Defaults to `"start"`. Set to `"center"` when consumer CSS uses
|
|
376
|
-
* `scroll-snap-align: center` on slides (e.g. a peek layout
|
|
377
|
-
* where slides are narrower than the Viewport). */
|
|
378
|
-
snapAlign?: CarouselSnapAlign;
|
|
379
|
-
/** Axis the carousel scrolls and paginates along — see
|
|
380
|
-
* {@link CarouselOrientation}. Defaults to `"horizontal"`. Switches
|
|
381
|
-
* the viewport scroll axis, the arrow-key bindings, and the
|
|
382
|
-
* `data-orientation` styling hook on the Root. */
|
|
383
|
-
orientation?: CarouselOrientation;
|
|
384
|
-
/** Wrap-around navigation mode — see {@link CarouselLoopMode}.
|
|
385
|
-
* Defaults to `false` (`"none"`). Accepts a boolean for ergonomics or a
|
|
386
|
-
* named mode:
|
|
387
|
-
*
|
|
388
|
-
* - `false` / omitted → `"none"` (clamp at the ends).
|
|
389
|
-
* - `true` / `"wrap"` → `"wrap"` (semantic wrap: Next/Previous and
|
|
390
|
-
* autoplay wrap past the ends and the triggers never disable, but the
|
|
391
|
-
* wrap last→first smooth-scrolls the track back — a visible rewind).
|
|
392
|
-
* - `"infinite"` → continuous infinite: the same wrap page model plus a
|
|
393
|
-
* cloned edge buffer and native-scroll recentre so the wrap is a
|
|
394
|
-
* continuous glide with no rewind.
|
|
395
|
-
*
|
|
396
|
-
* All wrapping requires more than one page — a single-page carousel has
|
|
397
|
-
* no wrap target, so the triggers stay disabled regardless. The resolved
|
|
398
|
-
* mode is published as `data-loop="none" | "wrap" | "infinite"` on the
|
|
399
|
-
* Root. */
|
|
400
|
-
loop?: boolean | "wrap" | "infinite";
|
|
401
|
-
/** Whether the Viewport supports mouse click-and-drag scrolling —
|
|
402
|
-
* the pointer tracks 1:1 into `scrollLeft`/`scrollTop` (no momentum)
|
|
403
|
-
* once past a small movement threshold, release lets the existing
|
|
404
|
-
* `scroll-snap-type` settle. Defaults to `false`: an unconditionally-on
|
|
405
|
-
* drag can conflict with a consumer's own drag-sensitive slide content
|
|
406
|
-
* (a nested carousel, a draggable card, a canvas), so it's opt-in.
|
|
407
|
-
* Touch/pen scrolling is unaffected either way — that's native,
|
|
408
|
-
* independent of this prop. */
|
|
409
|
-
allowMouseDrag?: boolean;
|
|
410
|
-
/** Fires on every mouse-drag status transition — see
|
|
411
|
-
* {@link CarouselDragStatus}. Matches Ark UI's `onDragStatusChange`.
|
|
412
|
-
* No-op unless `allowMouseDrag` is `true` (a drag can't start
|
|
413
|
-
* otherwise). */
|
|
414
|
-
onDragStatusChange?: (status: CarouselDragStatus) => void;
|
|
415
|
-
/** Fires whenever the user pushes against a boundary with nowhere
|
|
416
|
-
* further to go, from the keyboard, wheel, or a mouse drag — see
|
|
417
|
-
* {@link CarouselOverscrollStatus}. */
|
|
418
|
-
onOverscrollStatusChange?: (status: CarouselOverscrollStatus) => void;
|
|
419
|
-
/** Fires on every autoplay status transition — see
|
|
420
|
-
* {@link CarouselAutoplayStatus}. Matches Ark UI's
|
|
421
|
-
* `onAutoplayStatusChange`. Fires on every tick, not just play/pause
|
|
422
|
-
* toggles — useful for analytics. No-op unless `autoplay` is enabled. */
|
|
423
|
-
onAutoplayStatusChange?: (status: CarouselAutoplayStatus) => void;
|
|
424
|
-
/** Visibility threshold(s) the `isInView` fallback's
|
|
425
|
-
* `IntersectionObserver` uses — both as the observer's own `threshold`
|
|
426
|
-
* option and (for an array, the highest value) the cutoff a slide's
|
|
427
|
-
* `intersectionRatio` must clear to count as "in view". Matches Ark
|
|
428
|
-
* UI's `inViewThreshold` shape. Defaults to `0.6`. */
|
|
429
|
-
inViewThreshold?: number | number[];
|
|
430
|
-
/** `scroll-snap-type` strictness — see {@link CarouselSnapType}.
|
|
431
|
-
* Defaults to `"mandatory"`. */
|
|
432
|
-
snapType?: CarouselSnapType;
|
|
433
|
-
};
|
|
434
|
-
|
|
435
|
-
/**
|
|
436
|
-
* Shape of the context published by `Carousel.Root` to descendants.
|
|
437
|
-
* Fields are added as future cycles introduce shared state (active
|
|
438
|
-
* page, autoplay, etc.).
|
|
439
|
-
*/
|
|
440
|
-
export type CarouselContextValue = {
|
|
441
|
-
/** Self-registers a slide. Called as a callback ref by `Carousel.Slide`
|
|
442
|
-
* with the rendered DOM node on mount and `null` on unmount. */
|
|
443
|
-
registerSlide: (key: string, element: HTMLDivElement | null) => void;
|
|
444
|
-
/** Live map from slide key to rendered DOM node. Used by the
|
|
445
|
-
* Viewport to read `getBoundingClientRect` on the first slide of
|
|
446
|
-
* the target page when programmatically scrolling. */
|
|
447
|
-
slidesRef: RefObject<Map<string, HTMLDivElement>>;
|
|
448
|
-
/** Ordered list of currently-mounted slide keys. The slide's index is
|
|
449
|
-
* its position in this array; the array's length is the total. */
|
|
450
|
-
slideKeys: string[];
|
|
451
|
-
/** Number of slides visible per page — the consumer's `slidesPerPage`
|
|
452
|
-
* coerced to an integer ≥ 1 (0 / negative / non-finite → 1). */
|
|
453
|
-
slidesPerPage: number;
|
|
454
|
-
/** Resolved slides advanced per Prev/Next click — equal to
|
|
455
|
-
* `slidesPerPage` when the consumer left `slidesPerMove="auto"`, else
|
|
456
|
-
* the numeric value coerced to an integer in `[1, slidesPerPage]` (a
|
|
457
|
-
* move can neither drop below one nor skip past a page). */
|
|
458
|
-
effectiveSlidesPerMove: number;
|
|
459
|
-
/** Start slide index of the *last* page's window — `max(0, total -
|
|
460
|
-
* slidesPerPage)`. Every page's own offset is `min(page *
|
|
461
|
-
* effectiveSlidesPerMove, maxOffset)`; used to derive any page's window
|
|
462
|
-
* (not just the current one), e.g. the multi-slide `scroll-margin`
|
|
463
|
-
* extension that keeps native scroll-snap alignment consistent with the
|
|
464
|
-
* programmatic scroll for `slidesPerPage > 1`. */
|
|
465
|
-
maxOffset: number;
|
|
466
|
-
/** Start slide index of the currently-active window. In `"auto"`
|
|
467
|
-
* (paged) mode this is `currentPage * slidesPerPage` (the last page may
|
|
468
|
-
* be partial); in numeric (windowed) mode the last page is end-aligned
|
|
469
|
-
* — clamped to `total − slidesPerPage` — so every slide stays reachable
|
|
470
|
-
* even when the move doesn't divide the track evenly. Drives the slide
|
|
471
|
-
* `data-state` window and the viewport scroll target. */
|
|
472
|
-
currentPageOffset: number;
|
|
473
|
-
/** Map a leading slide index (e.g. a user swipe's snap target) back to
|
|
474
|
-
* its page index, clamped into `[0, totalPages − 1]`. Paged mode groups
|
|
475
|
-
* by `slidesPerPage`; windowed mode inverts the move offset to the
|
|
476
|
-
* nearest window start. */
|
|
477
|
-
pageForSlideIndex: (slideIndex: number) => number;
|
|
478
|
-
/** Live total page count — `ceil(total / slidesPerPage)` in `"auto"`
|
|
479
|
-
* mode (partial last page allowed), else
|
|
480
|
-
* `floor((total - slidesPerPage) / effectiveSlidesPerMove) + 1`
|
|
481
|
-
* (always full-windowed). Drives indicator count and boundary
|
|
482
|
-
* clamp. */
|
|
483
|
-
totalPages: number;
|
|
484
|
-
/** Zero-based index of the currently-active page. */
|
|
485
|
-
currentPage: number;
|
|
486
|
-
/** `true` when there is a forward navigation target (a page ahead of
|
|
487
|
-
* the active one). Drives the `disabled` attribute on
|
|
488
|
-
* `Carousel.NextTrigger` and short-circuits `next()` when there's
|
|
489
|
-
* nowhere to go. */
|
|
490
|
-
canGoNext: boolean;
|
|
491
|
-
/** `true` when there is a backward navigation target. Drives the
|
|
492
|
-
* `disabled` attribute on `Carousel.PreviousTrigger`. */
|
|
493
|
-
canGoPrevious: boolean;
|
|
494
|
-
/** Advance the active page by one step. No-op when `!canGoNext`. Pass
|
|
495
|
-
* `instant` to bypass the resolved smooth/reduced-motion scroll for
|
|
496
|
-
* just this one call — see {@link CarouselImperativeApi.next}. */
|
|
497
|
-
next: (instant?: boolean) => void;
|
|
498
|
-
/** Retreat the active page by one step. No-op when `!canGoPrevious`.
|
|
499
|
-
* See {@link CarouselContextValue.next} for the `instant` override. */
|
|
500
|
-
previous: (instant?: boolean) => void;
|
|
501
|
-
/** Jump directly to `target` (zero-based page index). Used by
|
|
502
|
-
* `Carousel.Indicator` to dispatch click-to-jump. See
|
|
503
|
-
* {@link CarouselContextValue.next} for the `instant` override. */
|
|
504
|
-
goTo: (target: number, instant?: boolean) => void;
|
|
505
|
-
/** Whether autoplay is currently in the "playing" state. */
|
|
506
|
-
playing: boolean;
|
|
507
|
-
/** Toggles `playing`. Used by `Carousel.PlayPauseTrigger`. */
|
|
508
|
-
togglePlaying: () => void;
|
|
509
|
-
/** `true` when the consumer enabled autoplay (regardless of the
|
|
510
|
-
* `playing` flag). Used by `Carousel.PlayPauseTrigger` to validate
|
|
511
|
-
* its own configuration. */
|
|
512
|
-
autoplayEnabled: boolean;
|
|
513
|
-
/** `true` when autoplay is enabled AND `playing` is `true` — i.e. the
|
|
514
|
-
* timer could fire any moment. Drives the Viewport's `aria-live`
|
|
515
|
-
* flip ("off" while auto-rotating, "polite" otherwise) so screen
|
|
516
|
-
* readers don't get spammed by every tick. */
|
|
517
|
-
isAutoRotating: boolean;
|
|
518
|
-
/** Translations merged with English defaults — every field is
|
|
519
|
-
* present, even if the consumer passed only a subset. */
|
|
520
|
-
translations: Required<CarouselTranslations>;
|
|
521
|
-
/** Custom DOM ids — every field optional. Sub-components apply
|
|
522
|
-
* their respective entry via spread, so consumer-supplied `id`
|
|
523
|
-
* props on the sub-component still win. */
|
|
524
|
-
ids: CarouselIds;
|
|
525
|
-
/** Resolved visual transition mode (defaults to `"slide"`). */
|
|
526
|
-
transition: CarouselTransition;
|
|
527
|
-
/** Resolved scroll-snap alignment (defaults to `"center"`). */
|
|
528
|
-
snapAlign: CarouselSnapAlign;
|
|
529
|
-
/** Resolved scroll/pagination axis (defaults to `"horizontal"`).
|
|
530
|
-
* Drives the viewport scroll axis, the arrow-key bindings, and the
|
|
531
|
-
* `data-orientation` hook on the Root. */
|
|
532
|
-
orientation: CarouselOrientation;
|
|
533
|
-
/** Resolved wrap-around navigation mode (defaults to `"none"`) — see
|
|
534
|
-
* {@link CarouselLoopMode}. `"wrap"` and `"infinite"` both drive the
|
|
535
|
-
* boundary flags (`canGoNext`/`canGoPrevious` stay true past the ends
|
|
536
|
-
* when there is more than one page) and the wrap arithmetic in
|
|
537
|
-
* `next`/`previous`; `"infinite"` additionally signals the clone/scroll
|
|
538
|
-
* layer via the `data-loop` hook on the Root. */
|
|
539
|
-
loop: CarouselLoopMode;
|
|
540
|
-
/** Resolved mouse click-and-drag scrolling opt-in (defaults to
|
|
541
|
-
* `false`). */
|
|
542
|
-
allowMouseDrag: boolean;
|
|
543
|
-
/** Resolved `isInView` IntersectionObserver threshold(s) (defaults to
|
|
544
|
-
* `0.6`). */
|
|
545
|
-
inViewThreshold: number | number[];
|
|
546
|
-
/** Resolved `scroll-snap-type` strictness (defaults to `"mandatory"`). */
|
|
547
|
-
snapType: CarouselSnapType;
|
|
548
|
-
/** Bumped by `refresh()` to force the viewport's scroll-align
|
|
549
|
-
* effect to re-run without a page change. */
|
|
550
|
-
refreshTick: number;
|
|
551
|
-
/** Live set of slide indices currently visible per IntersectionObserver
|
|
552
|
-
* (≥ 60% intersection). Mutated by the Viewport hook and read by
|
|
553
|
-
* the imperative `isInView`. */
|
|
554
|
-
visibleSlideIndicesRef: RefObject<Set<number>>;
|
|
555
|
-
/** Used by the Viewport hook to record visibility transitions. */
|
|
556
|
-
setSlideInView: (slideIndex: number, inView: boolean) => void;
|
|
557
|
-
/** Used by the Viewport hook to report the live continuous scroll
|
|
558
|
-
* position, read on demand by the imperative `getScrollProgress()`. */
|
|
559
|
-
setScrollProgress: (value: number) => void;
|
|
560
|
-
/** Used by the Viewport hook to report a slide's live continuous
|
|
561
|
-
* center-distance, read on demand by the imperative
|
|
562
|
-
* `getSlideProgress()`. */
|
|
563
|
-
setSlideProgress: (slideIndex: number, value: number) => void;
|
|
564
|
-
/** Set to `true` by `next()` and `previous()` the moment programmatic
|
|
565
|
-
* navigation begins, and cleared by the Viewport hook once the scroll
|
|
566
|
-
* animation settles (`scrollend` or a timeout fallback). The
|
|
567
|
-
* IntersectionObserver callback checks this flag before calling `goTo`
|
|
568
|
-
* so that IO entries firing mid-animation cannot undo the navigation. */
|
|
569
|
-
isProgrammaticScrollRef: RefObject<boolean>;
|
|
570
|
-
/** One-shot override of the resolved smooth/reduced-motion
|
|
571
|
-
* `scrollBehavior`, set by `next()` / `previous()` / `goTo()` on every
|
|
572
|
-
* call (`true` when their optional `instant` argument was passed,
|
|
573
|
-
* `false` otherwise) and consumed — then reset to `false` — by the
|
|
574
|
-
* Viewport hook's scroll effect on its very next run, so an instant
|
|
575
|
-
* jump never outlives the single call that requested it. */
|
|
576
|
-
instantScrollRef: RefObject<boolean>;
|
|
577
|
-
/** One-shot hint for the infinite-loop engine, set to `true` by `goTo()` /
|
|
578
|
-
* `scrollToIndex()` (an absolute jump to a specific page — most visibly an
|
|
579
|
-
* indicator/thumbnail click) and to `false` by `next()` / `previous()` (a
|
|
580
|
-
* relative step, which should always take the loop's wrap shortcut).
|
|
581
|
-
* Consumed and reset by the engine's positioning effect on its very next
|
|
582
|
-
* run, so it never outlives the single navigation that requested it. */
|
|
583
|
-
directJumpRef: RefObject<boolean>;
|
|
584
|
-
/** Live mouse-drag state (only ever `true` when `allowMouseDrag` is
|
|
585
|
-
* `true`). Mutated by the Viewport hook and read by the imperative
|
|
586
|
-
* `isDragging()`. */
|
|
587
|
-
isDraggingRef: RefObject<boolean>;
|
|
588
|
-
/** Used by the Viewport hook to record drag start/end transitions. */
|
|
589
|
-
setDragging: (value: boolean) => void;
|
|
590
|
-
/** The consumer's `onDragStatusChange`, if provided — called by the
|
|
591
|
-
* Viewport hook on every drag status transition. */
|
|
592
|
-
onDragStatusChange?: (status: CarouselDragStatus) => void;
|
|
593
|
-
/** Live mouse-drag overscroll state (only ever `true` mid-drag, when
|
|
594
|
-
* `allowMouseDrag` is `true` and the drag is currently pushing past a
|
|
595
|
-
* boundary). Mutated by the Viewport hook and read by the imperative
|
|
596
|
-
* `isOverscrolling()`. Keyboard/wheel overscroll taps never set this —
|
|
597
|
-
* they're instantaneous, not a sustained state. */
|
|
598
|
-
isOverscrollingRef: RefObject<boolean>;
|
|
599
|
-
/** Used by the Viewport hook to record drag-overscroll start/end
|
|
600
|
-
* transitions. */
|
|
601
|
-
setOverscrolling: (value: boolean) => void;
|
|
602
|
-
/** The consumer's `onOverscrollStatusChange`, if provided — called by
|
|
603
|
-
* the Viewport hook whenever the keyboard, wheel, or a mouse drag
|
|
604
|
-
* pushes against a boundary with nowhere further to go. */
|
|
605
|
-
onOverscrollStatusChange?: (status: CarouselOverscrollStatus) => void;
|
|
606
|
-
};
|
|
607
|
-
|
|
608
|
-
/** Props for `Carousel.Viewport` — the scroll-snap slide container; accepts all native `<div>` props. */
|
|
609
|
-
export type CarouselViewportProps = ComponentProps<"div">;
|
|
610
|
-
|
|
611
|
-
/** Props for `Carousel.Slide` — an individual slide that self-registers with the Root; native `<div>` props plus an optional accessible-label override. */
|
|
612
|
-
export type CarouselSlideProps = Omit<ComponentProps<"div">, "aria-label"> & {
|
|
613
|
-
/** Override the auto-generated `"N of M"` `aria-label`. Use this when
|
|
614
|
-
* the slide has a more meaningful description than its position
|
|
615
|
-
* (e.g. `"Hand-picked for you"`). When omitted, slides are labelled
|
|
616
|
-
* with their live index and total in registration order. */
|
|
617
|
-
ariaLabel?: string;
|
|
618
|
-
/** Override the root's {@link CarouselRootProps.snapAlign | `snapAlign`}
|
|
619
|
-
* for this slide only — e.g. a variable-width layout where only some
|
|
620
|
-
* slides should centre or end-align. Only takes effect on a slide
|
|
621
|
-
* that's a valid scroll-snap resting position (a page's leading
|
|
622
|
-
* slide); an interior slide of a multi-slide page never snaps,
|
|
623
|
-
* regardless of this prop. Matches Ark UI's per-`Item` `snapAlign`. */
|
|
624
|
-
snapAlign?: CarouselSnapAlign;
|
|
625
|
-
};
|
|
626
|
-
|
|
627
|
-
/** Props for `Carousel.NextTrigger` — the button that advances one page; native `<button>` props plus `asChild`. */
|
|
628
|
-
export type CarouselNextTriggerProps = ComponentProps<"button"> & {
|
|
629
|
-
/** Render the child element instead of the default `<button>`. All
|
|
630
|
-
* trigger props (onClick, disabled, ids.nextTrigger, ...) are merged
|
|
631
|
-
* onto the child via `Slot`. The child must accept a `ref`. */
|
|
632
|
-
asChild?: boolean;
|
|
633
|
-
};
|
|
634
|
-
|
|
635
|
-
/** Props for `Carousel.PreviousTrigger` — the button that retreats one page; native `<button>` props plus `asChild`. */
|
|
636
|
-
export type CarouselPreviousTriggerProps = ComponentProps<"button"> & {
|
|
637
|
-
/** See `CarouselNextTriggerProps.asChild`. */
|
|
638
|
-
asChild?: boolean;
|
|
639
|
-
};
|
|
640
|
-
|
|
641
|
-
/**
|
|
642
|
-
* Discriminated label shape for `Carousel.IndicatorGroup` — exactly one
|
|
643
|
-
* of `label` (becomes `aria-label`) or `ariaLabelledBy` (points at an
|
|
644
|
-
* external label element) must be supplied. TypeScript rejects
|
|
645
|
-
* both-or-neither at compile time.
|
|
646
|
-
*/
|
|
647
|
-
export type CarouselIndicatorGroupProps = Omit<
|
|
648
|
-
ComponentProps<"div">,
|
|
649
|
-
"label" | "aria-labelledby"
|
|
650
|
-
> &
|
|
651
|
-
(
|
|
652
|
-
| {
|
|
653
|
-
/** Accessible name for the indicator group, announced as
|
|
654
|
-
* `aria-label` (e.g. `"Choose slide"`). Mutually exclusive with
|
|
655
|
-
* `ariaLabelledBy`. */
|
|
656
|
-
label: string;
|
|
657
|
-
ariaLabelledBy?: never;
|
|
658
|
-
}
|
|
659
|
-
| {
|
|
660
|
-
label?: never;
|
|
661
|
-
/** Id of an existing element to name the indicator group, set as
|
|
662
|
-
* `aria-labelledby`. Mutually exclusive with `label`. */
|
|
663
|
-
ariaLabelledBy: string;
|
|
664
|
-
}
|
|
665
|
-
);
|
|
666
|
-
|
|
667
|
-
/** Props for `Carousel.Indicator` — a button that jumps to its target page; native `<button>` props plus the target `index` and `asChild`. */
|
|
668
|
-
export type CarouselIndicatorProps = ComponentProps<"button"> & {
|
|
669
|
-
/** Zero-based page this indicator targets. Clicking jumps to it. */
|
|
670
|
-
index: number;
|
|
671
|
-
/** Renders a presentational-only `<span>` instead of a `<button>`:
|
|
672
|
-
* `aria-hidden="true"`, and clicking no longer calls `goTo`. Use for a
|
|
673
|
-
* progress display when navigation happens some other way (e.g. a
|
|
674
|
-
* carousel driven solely by `allowMouseDrag`). The consumer's own
|
|
675
|
-
* `onClick`, if passed, still fires. Default `false`. */
|
|
676
|
-
readOnly?: boolean;
|
|
677
|
-
/** Render the child element instead of the default `<button>`.
|
|
678
|
-
* Trigger props (onClick, aria-label, aria-disabled, data-state)
|
|
679
|
-
* are merged onto the child via `Slot`. The child must accept a
|
|
680
|
-
* `ref`. */
|
|
681
|
-
asChild?: boolean;
|
|
682
|
-
};
|
|
683
|
-
|
|
684
|
-
/**
|
|
685
|
-
* Imperative handle exposed via `ref` on `Carousel.Root`. Routes
|
|
686
|
-
* through the same internal state machine the trigger components
|
|
687
|
-
* use, so controlled-mode `onPageChange` / `onPlayingChange` still
|
|
688
|
-
* fire as if the user had clicked.
|
|
689
|
-
*/
|
|
690
|
-
export type CarouselImperativeApi = {
|
|
691
|
-
/** Advance the active page by one. No-op on the last page. Pass
|
|
692
|
-
* `instant` (default `false`) to bypass the resolved smooth/
|
|
693
|
-
* reduced-motion scroll for just this one call — e.g. an instant
|
|
694
|
-
* jump on initial deep-link vs. smooth for user-initiated
|
|
695
|
-
* navigation. Matches Ark UI's `scrollNext(instant?)`. */
|
|
696
|
-
next: (instant?: boolean) => void;
|
|
697
|
-
/** Retreat the active page by one. No-op on the first page. See
|
|
698
|
-
* `next`'s `instant` parameter. Matches Ark UI's
|
|
699
|
-
* `scrollPrev(instant?)`. */
|
|
700
|
-
previous: (instant?: boolean) => void;
|
|
701
|
-
/** Jump directly to `target` (zero-based page index). See `next`'s
|
|
702
|
-
* `instant` parameter. Matches Ark UI's `scrollTo(page, instant?)`. */
|
|
703
|
-
goTo: (target: number, instant?: boolean) => void;
|
|
704
|
-
/** Jump to the page containing the given zero-based **slide** index —
|
|
705
|
-
* slide granularity, distinct from `goTo`'s page granularity. In a
|
|
706
|
-
* multi-slide (`slidesPerPage > 1`) layout an interior slide isn't its
|
|
707
|
-
* own scroll-snap position, so this lands on that slide's *containing*
|
|
708
|
-
* page (the same mapping `Carousel.Indicator` uses internally). See
|
|
709
|
-
* `next`'s `instant` parameter. Matches Ark UI's
|
|
710
|
-
* `scrollToIndex(index, instant?)`. */
|
|
711
|
-
scrollToIndex: (slideIndex: number, instant?: boolean) => void;
|
|
712
|
-
/** Set `playing` to `true`. Dismisses the hover/focus pause for the
|
|
713
|
-
* lifetime of the resulting playing session. */
|
|
714
|
-
play: () => void;
|
|
715
|
-
/** Set `playing` to `false`. */
|
|
716
|
-
pause: () => void;
|
|
717
|
-
/** Re-issue the viewport's scrollTo for the current page. Call when
|
|
718
|
-
* external layout changes (window resize, container reflow) leave
|
|
719
|
-
* the scroll position misaligned with React state. */
|
|
720
|
-
refresh: () => void;
|
|
721
|
-
/** Live progress snapshot: the active page, the total page count,
|
|
722
|
-
* and a normalised `value` in `[0, 1]` (0 when there's at most one
|
|
723
|
-
* page). */
|
|
724
|
-
getProgress: () => { page: number; totalPages: number; value: number };
|
|
725
|
-
/** Reports whether the slide at the zero-based index is currently
|
|
726
|
-
* visible in the viewport (per IntersectionObserver, ≥ 60%
|
|
727
|
-
* intersection). Useful for lazy-loading slide content. */
|
|
728
|
-
isInView: (slideIndex: number) => boolean;
|
|
729
|
-
/** The leading slide index each page snaps to, one entry per page
|
|
730
|
-
* (length `totalPages`). The last entry is the end-aligned offset
|
|
731
|
-
* (see the multi-slide page model), not necessarily a clean multiple
|
|
732
|
-
* of `slidesPerMove`. Useful for a custom progress bar or indicator
|
|
733
|
-
* that needs the raw offsets rather than just the page count. */
|
|
734
|
-
getPageSnapPoints: () => number[];
|
|
735
|
-
/** Live snapshot of whether a mouse drag is currently in progress
|
|
736
|
-
* (`allowMouseDrag`-gated — always `false` when it's off). Mirrors
|
|
737
|
-
* Ark UI's `api.isDragging`; see also `onDragStatusChange`. */
|
|
738
|
-
isDragging: () => boolean;
|
|
739
|
-
/** Live snapshot of whether a mouse drag is currently pushing past a
|
|
740
|
-
* boundary (`allowMouseDrag`-gated — always `false` when it's off, and
|
|
741
|
-
* never `true` for a keyboard/wheel overscroll tap, which is
|
|
742
|
-
* instantaneous rather than a sustained state). See
|
|
743
|
-
* `onOverscrollStatusChange`. */
|
|
744
|
-
isOverscrolling: () => boolean;
|
|
745
|
-
/** Continuous `[0, 1]` scroll position along the main axis — `0` at
|
|
746
|
-
* the start, `1` at the end, `0` when there's no overflow to scroll.
|
|
747
|
-
* Unlike `getProgress()`'s page-granular step function, this changes
|
|
748
|
-
* on every scroll tick (mirrored live onto the Viewport's
|
|
749
|
-
* `--carousel-progress` CSS custom property, rAF-batched, so a
|
|
750
|
-
* consumer can drive a progress bar from CSS alone without reading
|
|
751
|
-
* this at all). Robust under RTL without any `dir` check — RTL's
|
|
752
|
-
* standardized negative-`scrollLeft` convention is handled via
|
|
753
|
-
* `Math.abs`. */
|
|
754
|
-
getScrollProgress: () => number;
|
|
755
|
-
/** Continuous `[-1, 1]` signal for how far the slide at the zero-based
|
|
756
|
-
* index sits from the viewport's center along the main axis — `0` =
|
|
757
|
-
* centered, `±1` = the slide's center has reached the viewport edge
|
|
758
|
-
* (clamped beyond that). `0` for a never-registered/out-of-range
|
|
759
|
-
* index. Normalised by the *viewport's* half-extent, not the slide's
|
|
760
|
-
* own, so at `slidesPerPage > 1` a fully on-screen outer page member
|
|
761
|
-
* can already read a large magnitude — this is not equivalent to
|
|
762
|
-
* `isInView` flipping to `false`. Mirrored live onto that slide's
|
|
763
|
-
* `--slide-progress` CSS custom property, rAF-batched. */
|
|
764
|
-
getSlideProgress: (slideIndex: number) => number;
|
|
765
|
-
};
|
|
766
|
-
|
|
767
|
-
/** Live progress snapshot reported by the carousel: the active page, the total page count, and a normalised `value` in `[0, 1]`. */
|
|
768
|
-
export type CarouselProgress = {
|
|
769
|
-
page: number;
|
|
770
|
-
totalPages: number;
|
|
771
|
-
value: number;
|
|
772
|
-
};
|
|
773
|
-
|
|
774
|
-
/**
|
|
775
|
-
* Convenience wrapper that auto-renders one `Carousel.Indicator` per
|
|
776
|
-
* registered slide. Reuses the same discriminated label shape as
|
|
777
|
-
* `Carousel.IndicatorGroup`. `children` is reserved (the auto-mapped
|
|
778
|
-
* indicators take that slot) — drop down to `Carousel.IndicatorGroup`
|
|
779
|
-
* + `Carousel.Indicator` if you need custom indicator content.
|
|
780
|
-
*/
|
|
781
|
-
export type CarouselIndicatorsProps = Omit<
|
|
782
|
-
ComponentProps<"div">,
|
|
783
|
-
"label" | "aria-labelledby" | "children"
|
|
784
|
-
> &
|
|
785
|
-
(
|
|
786
|
-
| {
|
|
787
|
-
/** Accessible name for the indicator group, announced as
|
|
788
|
-
* `aria-label` (e.g. `"Choose slide"`). Mutually exclusive with
|
|
789
|
-
* `ariaLabelledBy`. */
|
|
790
|
-
label: string;
|
|
791
|
-
ariaLabelledBy?: never;
|
|
792
|
-
}
|
|
793
|
-
| {
|
|
794
|
-
label?: never;
|
|
795
|
-
/** Id of an existing element to name the indicator group, set as
|
|
796
|
-
* `aria-labelledby`. Mutually exclusive with `label`. */
|
|
797
|
-
ariaLabelledBy: string;
|
|
798
|
-
}
|
|
799
|
-
) & {
|
|
800
|
-
/** Forwarded to every generated `Carousel.Indicator`. See
|
|
801
|
-
* `CarouselIndicatorProps.readOnly`. Default `false`. */
|
|
802
|
-
readOnly?: boolean;
|
|
803
|
-
};
|
|
804
|
-
|
|
805
|
-
/**
|
|
806
|
-
* Render-prop or static children supported by
|
|
807
|
-
* `Carousel.PlayPauseTrigger`. The function form receives the live
|
|
808
|
-
* `playing` flag so consumers can swap icons / labels per state.
|
|
809
|
-
*/
|
|
810
|
-
export type CarouselPlayPauseTriggerChildren =
|
|
811
|
-
| ReactNode
|
|
812
|
-
| ((state: { playing: boolean }) => ReactNode);
|
|
813
|
-
|
|
814
|
-
/** Props for `Carousel.PlayPauseTrigger` — toggles autoplay; native `<button>` props with a state-aware render-prop `children` and `asChild`. */
|
|
815
|
-
export type CarouselPlayPauseTriggerProps = Omit<
|
|
816
|
-
ComponentProps<"button">,
|
|
817
|
-
"children"
|
|
818
|
-
> & {
|
|
819
|
-
children?: CarouselPlayPauseTriggerChildren;
|
|
820
|
-
/** Render the child element instead of the default `<button>`.
|
|
821
|
-
* The child must accept a `ref`. The render-prop form of `children`
|
|
822
|
-
* is not supported under `asChild`; pass a single element instead. */
|
|
823
|
-
asChild?: boolean;
|
|
824
|
-
};
|
|
825
|
-
|
|
826
|
-
/**
|
|
827
|
-
* Props for `Carousel.ProgressText` — renders the live active-page
|
|
828
|
-
* progress as text; native `<span>` props. `children`, if provided,
|
|
829
|
-
* overrides the default `translations.progressText` content. */
|
|
830
|
-
export type CarouselProgressTextProps = ComponentProps<"span">;
|