@base-ui/react 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +321 -1
- package/accordion/header/AccordionHeader.d.ts +4 -2
- package/accordion/item/AccordionItem.d.ts +11 -5
- package/accordion/item/AccordionItemContext.d.ts +3 -3
- package/accordion/item/stateAttributesMapping.d.ts +2 -2
- package/accordion/panel/AccordionPanel.d.ts +6 -3
- package/accordion/root/AccordionRoot.d.ts +25 -16
- package/accordion/root/AccordionRootContext.d.ts +7 -7
- package/accordion/trigger/AccordionTrigger.d.ts +4 -2
- package/accordion/trigger/AccordionTrigger.js +3 -1
- package/alert-dialog/root/AlertDialogRoot.d.ts +5 -3
- package/alert-dialog/root/AlertDialogRoot.js +6 -4
- package/autocomplete/index.d.ts +1 -0
- package/autocomplete/index.parts.d.ts +3 -1
- package/autocomplete/index.parts.js +15 -1
- package/autocomplete/root/AutocompleteRoot.d.ts +21 -16
- package/autocomplete/root/AutocompleteRoot.js +8 -7
- package/avatar/fallback/AvatarFallback.d.ts +5 -3
- package/avatar/fallback/AvatarFallback.js +2 -2
- package/avatar/image/AvatarImage.d.ts +11 -3
- package/avatar/image/AvatarImage.js +34 -6
- package/avatar/image/AvatarImageDataAttributes.d.ts +10 -0
- package/avatar/image/AvatarImageDataAttributes.js +18 -0
- package/avatar/image/useImageLoadingStatus.d.ts +2 -2
- package/avatar/root/AvatarRoot.d.ts +4 -1
- package/avatar/root/AvatarRoot.js +2 -2
- package/button/Button.d.ts +1 -1
- package/button/Button.js +2 -2
- package/checkbox/indicator/CheckboxIndicator.d.ts +7 -4
- package/checkbox/indicator/CheckboxIndicator.js +4 -4
- package/checkbox/root/CheckboxRoot.d.ts +16 -16
- package/checkbox/root/CheckboxRoot.js +35 -9
- package/checkbox/root/CheckboxRootContext.d.ts +4 -4
- package/checkbox/utils/useStateAttributesMapping.d.ts +2 -2
- package/checkbox-group/CheckboxGroup.d.ts +8 -8
- package/checkbox-group/CheckboxGroup.js +2 -2
- package/checkbox-group/CheckboxGroupContext.d.ts +2 -2
- package/checkbox-group/useCheckboxGroupParent.d.ts +5 -8
- package/collapsible/panel/CollapsiblePanel.d.ts +8 -5
- package/collapsible/panel/useCollapsiblePanel.d.ts +2 -5
- package/collapsible/root/CollapsibleRoot.d.ts +7 -7
- package/collapsible/root/CollapsibleRootContext.d.ts +4 -4
- package/collapsible/root/stateAttributesMapping.d.ts +2 -2
- package/collapsible/root/useCollapsibleRoot.d.ts +4 -7
- package/collapsible/trigger/CollapsibleTrigger.d.ts +4 -2
- package/combobox/arrow/ComboboxArrow.d.ts +10 -1
- package/combobox/arrow/ComboboxArrow.js +2 -2
- package/combobox/arrow/ComboboxArrowDataAttributes.js +2 -2
- package/combobox/backdrop/ComboboxBackdrop.d.ts +4 -1
- package/combobox/backdrop/ComboboxBackdrop.js +2 -2
- package/combobox/chip/ComboboxChip.d.ts +1 -1
- package/combobox/chip/ComboboxChip.js +6 -3
- package/combobox/chip/ComboboxChipContext.js +1 -0
- package/combobox/chip-remove/ComboboxChipRemove.d.ts +1 -1
- package/combobox/chip-remove/ComboboxChipRemove.js +28 -33
- package/combobox/chips/ComboboxChips.d.ts +1 -1
- package/combobox/chips/ComboboxChipsContext.js +1 -0
- package/combobox/clear/ComboboxClear.d.ts +6 -3
- package/combobox/clear/ComboboxClear.js +2 -3
- package/combobox/collection/ComboboxCollection.d.ts +2 -0
- package/combobox/empty/ComboboxEmpty.d.ts +1 -1
- package/combobox/group/ComboboxGroup.d.ts +2 -2
- package/combobox/group/ComboboxGroupContext.d.ts +1 -1
- package/combobox/group/ComboboxGroupContext.js +1 -0
- package/combobox/group-label/ComboboxGroupLabel.d.ts +1 -1
- package/combobox/icon/ComboboxIcon.d.ts +2 -2
- package/combobox/index.d.ts +2 -0
- package/combobox/index.parts.d.ts +4 -1
- package/combobox/index.parts.js +22 -1
- package/combobox/input/ComboboxInput.d.ts +4 -4
- package/combobox/input/ComboboxInput.js +60 -13
- package/combobox/input-group/ComboboxInputGroup.d.ts +40 -0
- package/combobox/input-group/ComboboxInputGroup.js +68 -0
- package/combobox/input-group/ComboboxInputGroupDataAttributes.d.ts +55 -0
- package/combobox/input-group/ComboboxInputGroupDataAttributes.js +62 -0
- package/combobox/item/ComboboxItem.d.ts +4 -4
- package/combobox/item/ComboboxItem.js +17 -16
- package/combobox/item/ComboboxItemContext.js +1 -0
- package/combobox/item-indicator/ComboboxItemIndicator.d.ts +8 -2
- package/combobox/item-indicator/ComboboxItemIndicator.js +2 -2
- package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.ts +10 -0
- package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.js +18 -0
- package/combobox/label/ComboboxLabel.d.ts +16 -0
- package/combobox/label/ComboboxLabel.js +68 -0
- package/combobox/list/ComboboxList.d.ts +1 -1
- package/combobox/list/ComboboxList.js +2 -2
- package/combobox/popup/ComboboxPopup.d.ts +21 -3
- package/combobox/popup/ComboboxPopup.js +11 -4
- package/combobox/popup/ComboboxPopupDataAttributes.js +2 -2
- package/combobox/portal/ComboboxPortal.d.ts +4 -5
- package/combobox/portal/ComboboxPortalContext.js +1 -0
- package/combobox/positioner/ComboboxPositioner.d.ts +14 -2
- package/combobox/positioner/ComboboxPositioner.js +8 -5
- package/combobox/positioner/ComboboxPositionerDataAttributes.js +2 -2
- package/combobox/root/AriaCombobox.d.ts +52 -46
- package/combobox/root/AriaCombobox.js +58 -68
- package/combobox/root/ComboboxRoot.d.ts +21 -16
- package/combobox/root/ComboboxRoot.js +3 -1
- package/combobox/root/ComboboxRootContext.d.ts +1 -0
- package/combobox/root/ComboboxRootContext.js +1 -0
- package/combobox/root/utils/useFilter.d.ts +2 -2
- package/combobox/root/utils/useFilteredItems.d.ts +4 -0
- package/combobox/root/utils/useFilteredItems.js +14 -0
- package/combobox/row/ComboboxRow.d.ts +1 -1
- package/combobox/row/ComboboxRowContext.js +1 -0
- package/combobox/status/ComboboxStatus.d.ts +1 -1
- package/combobox/store.d.ts +18 -12
- package/combobox/store.js +5 -3
- package/combobox/trigger/ComboboxTrigger.d.ts +4 -4
- package/combobox/trigger/ComboboxTrigger.js +8 -6
- package/combobox/utils/ComboboxInternalDismissButton.d.ts +5 -0
- package/combobox/utils/ComboboxInternalDismissButton.js +44 -0
- package/composite/item/CompositeItem.d.ts +9 -7
- package/composite/list/CompositeList.d.ts +5 -3
- package/composite/list/CompositeListContext.d.ts +1 -1
- package/composite/list/useCompositeListItem.d.ts +5 -5
- package/composite/root/CompositeRoot.d.ts +22 -20
- package/composite/root/useCompositeRoot.d.ts +12 -12
- package/context-menu/index.d.ts +1 -0
- package/context-menu/index.parts.d.ts +1 -0
- package/context-menu/index.parts.js +7 -0
- package/context-menu/root/ContextMenuRoot.d.ts +1 -1
- package/context-menu/root/ContextMenuRootContext.js +1 -0
- package/context-menu/trigger/ContextMenuTrigger.d.ts +3 -3
- package/context-menu/trigger/ContextMenuTrigger.js +13 -3
- package/csp-provider/CSPContext.d.ts +2 -2
- package/csp-provider/CSPProvider.d.ts +2 -2
- package/dialog/backdrop/DialogBackdrop.d.ts +5 -2
- package/dialog/backdrop/DialogBackdrop.js +2 -2
- package/dialog/close/DialogClose.d.ts +1 -1
- package/dialog/close/DialogClose.js +2 -2
- package/dialog/description/DialogDescription.d.ts +1 -1
- package/dialog/popup/DialogPopup.d.ts +6 -3
- package/dialog/popup/DialogPopup.js +2 -2
- package/dialog/portal/DialogPortal.d.ts +5 -6
- package/dialog/portal/DialogPortalContext.js +1 -0
- package/dialog/root/DialogRoot.d.ts +15 -10
- package/dialog/root/DialogRoot.js +17 -4
- package/dialog/root/useDialogRoot.d.ts +5 -9
- package/dialog/root/useDialogRoot.js +6 -5
- package/dialog/store/DialogStore.d.ts +258 -17
- package/dialog/store/DialogStore.js +3 -0
- package/dialog/title/DialogTitle.d.ts +1 -1
- package/dialog/trigger/DialogTrigger.d.ts +4 -4
- package/dialog/trigger/DialogTrigger.js +3 -3
- package/dialog/viewport/DialogViewport.d.ts +3 -0
- package/dialog/viewport/DialogViewport.js +5 -2
- package/direction-provider/DirectionProvider.d.ts +3 -1
- package/drawer/backdrop/DrawerBackdrop.d.ts +31 -0
- package/drawer/backdrop/DrawerBackdrop.js +63 -0
- package/drawer/backdrop/DrawerBackdropCssVars.d.ts +7 -0
- package/drawer/backdrop/DrawerBackdropCssVars.js +14 -0
- package/drawer/backdrop/DrawerBackdropDataAttributes.d.ts +18 -0
- package/drawer/backdrop/DrawerBackdropDataAttributes.js +26 -0
- package/drawer/close/DrawerClose.d.ts +23 -0
- package/drawer/close/DrawerClose.js +15 -0
- package/drawer/content/DrawerContent.d.ts +15 -0
- package/drawer/content/DrawerContent.js +33 -0
- package/drawer/content/DrawerContentDataAttributes.d.ts +1 -0
- package/drawer/content/DrawerContentDataAttributes.js +7 -0
- package/drawer/description/DrawerDescription.d.ts +18 -0
- package/drawer/description/DrawerDescription.js +15 -0
- package/drawer/indent/DrawerIndent.d.ts +21 -0
- package/drawer/indent/DrawerIndent.js +88 -0
- package/drawer/indent-background/DrawerIndentBackground.d.ts +20 -0
- package/drawer/indent-background/DrawerIndentBackground.js +49 -0
- package/drawer/index.d.ts +15 -0
- package/drawer/index.js +9 -0
- package/drawer/index.parts.d.ts +15 -0
- package/drawer/index.parts.js +116 -0
- package/drawer/popup/DrawerPopup.d.ts +72 -0
- package/drawer/popup/DrawerPopup.js +348 -0
- package/drawer/popup/DrawerPopupCssVars.d.ts +37 -0
- package/drawer/popup/DrawerPopupCssVars.js +44 -0
- package/drawer/popup/DrawerPopupDataAttributes.d.ts +43 -0
- package/drawer/popup/DrawerPopupDataAttributes.js +51 -0
- package/drawer/portal/DrawerPortal.d.ts +29 -0
- package/drawer/portal/DrawerPortal.js +16 -0
- package/drawer/provider/DrawerProvider.d.ts +16 -0
- package/drawer/provider/DrawerProvider.js +100 -0
- package/drawer/provider/DrawerProviderContext.d.ts +19 -0
- package/drawer/provider/DrawerProviderContext.js +21 -0
- package/drawer/root/DrawerRoot.d.ts +126 -0
- package/drawer/root/DrawerRoot.js +239 -0
- package/drawer/root/DrawerRootContext.d.ts +89 -0
- package/drawer/root/DrawerRootContext.js +21 -0
- package/drawer/root/useDrawerSnapPoints.d.ts +15 -0
- package/drawer/root/useDrawerSnapPoints.js +155 -0
- package/drawer/swipe-area/DrawerSwipeArea.d.ts +45 -0
- package/drawer/swipe-area/DrawerSwipeArea.js +387 -0
- package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +23 -0
- package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.js +31 -0
- package/drawer/title/DrawerTitle.d.ts +18 -0
- package/drawer/title/DrawerTitle.js +15 -0
- package/drawer/trigger/DrawerTrigger.d.ts +43 -0
- package/drawer/trigger/DrawerTrigger.js +15 -0
- package/drawer/viewport/DrawerViewport.d.ts +33 -0
- package/drawer/viewport/DrawerViewport.js +995 -0
- package/drawer/viewport/DrawerViewportContext.d.ts +11 -0
- package/drawer/viewport/DrawerViewportContext.js +21 -0
- package/drawer/viewport/DrawerViewportDataAttributes.d.ts +22 -0
- package/drawer/viewport/DrawerViewportDataAttributes.js +30 -0
- package/esm/accordion/header/AccordionHeader.d.ts +4 -2
- package/esm/accordion/item/AccordionItem.d.ts +11 -5
- package/esm/accordion/item/AccordionItemContext.d.ts +3 -3
- package/esm/accordion/item/stateAttributesMapping.d.ts +2 -2
- package/esm/accordion/panel/AccordionPanel.d.ts +6 -3
- package/esm/accordion/root/AccordionRoot.d.ts +25 -16
- package/esm/accordion/root/AccordionRootContext.d.ts +7 -7
- package/esm/accordion/trigger/AccordionTrigger.d.ts +4 -2
- package/esm/accordion/trigger/AccordionTrigger.js +3 -1
- package/esm/alert-dialog/root/AlertDialogRoot.d.ts +5 -3
- package/esm/alert-dialog/root/AlertDialogRoot.js +6 -4
- package/esm/autocomplete/index.d.ts +1 -0
- package/esm/autocomplete/index.parts.d.ts +3 -1
- package/esm/autocomplete/index.parts.js +3 -1
- package/esm/autocomplete/root/AutocompleteRoot.d.ts +21 -16
- package/esm/autocomplete/root/AutocompleteRoot.js +8 -7
- package/esm/avatar/fallback/AvatarFallback.d.ts +5 -3
- package/esm/avatar/fallback/AvatarFallback.js +2 -2
- package/esm/avatar/image/AvatarImage.d.ts +11 -3
- package/esm/avatar/image/AvatarImage.js +33 -6
- package/esm/avatar/image/AvatarImageDataAttributes.d.ts +10 -0
- package/esm/avatar/image/AvatarImageDataAttributes.js +12 -0
- package/esm/avatar/image/useImageLoadingStatus.d.ts +2 -2
- package/esm/avatar/root/AvatarRoot.d.ts +4 -1
- package/esm/avatar/root/AvatarRoot.js +2 -2
- package/esm/button/Button.d.ts +1 -1
- package/esm/button/Button.js +2 -2
- package/esm/checkbox/indicator/CheckboxIndicator.d.ts +7 -4
- package/esm/checkbox/indicator/CheckboxIndicator.js +4 -4
- package/esm/checkbox/root/CheckboxRoot.d.ts +16 -16
- package/esm/checkbox/root/CheckboxRoot.js +35 -9
- package/esm/checkbox/root/CheckboxRootContext.d.ts +4 -4
- package/esm/checkbox/utils/useStateAttributesMapping.d.ts +2 -2
- package/esm/checkbox-group/CheckboxGroup.d.ts +8 -8
- package/esm/checkbox-group/CheckboxGroup.js +2 -2
- package/esm/checkbox-group/CheckboxGroupContext.d.ts +2 -2
- package/esm/checkbox-group/useCheckboxGroupParent.d.ts +5 -8
- package/esm/collapsible/panel/CollapsiblePanel.d.ts +8 -5
- package/esm/collapsible/panel/useCollapsiblePanel.d.ts +2 -5
- package/esm/collapsible/root/CollapsibleRoot.d.ts +7 -7
- package/esm/collapsible/root/CollapsibleRootContext.d.ts +4 -4
- package/esm/collapsible/root/stateAttributesMapping.d.ts +2 -2
- package/esm/collapsible/root/useCollapsibleRoot.d.ts +4 -7
- package/esm/collapsible/trigger/CollapsibleTrigger.d.ts +4 -2
- package/esm/combobox/arrow/ComboboxArrow.d.ts +10 -1
- package/esm/combobox/arrow/ComboboxArrow.js +2 -2
- package/esm/combobox/arrow/ComboboxArrowDataAttributes.js +2 -2
- package/esm/combobox/backdrop/ComboboxBackdrop.d.ts +4 -1
- package/esm/combobox/backdrop/ComboboxBackdrop.js +2 -2
- package/esm/combobox/chip/ComboboxChip.d.ts +1 -1
- package/esm/combobox/chip/ComboboxChip.js +6 -3
- package/esm/combobox/chip/ComboboxChipContext.js +2 -0
- package/esm/combobox/chip-remove/ComboboxChipRemove.d.ts +1 -1
- package/esm/combobox/chip-remove/ComboboxChipRemove.js +28 -33
- package/esm/combobox/chips/ComboboxChips.d.ts +1 -1
- package/esm/combobox/chips/ComboboxChipsContext.js +2 -0
- package/esm/combobox/clear/ComboboxClear.d.ts +6 -3
- package/esm/combobox/clear/ComboboxClear.js +2 -3
- package/esm/combobox/collection/ComboboxCollection.d.ts +2 -0
- package/esm/combobox/empty/ComboboxEmpty.d.ts +1 -1
- package/esm/combobox/group/ComboboxGroup.d.ts +2 -2
- package/esm/combobox/group/ComboboxGroupContext.d.ts +1 -1
- package/esm/combobox/group/ComboboxGroupContext.js +2 -0
- package/esm/combobox/group-label/ComboboxGroupLabel.d.ts +1 -1
- package/esm/combobox/icon/ComboboxIcon.d.ts +2 -2
- package/esm/combobox/index.d.ts +2 -0
- package/esm/combobox/index.parts.d.ts +4 -1
- package/esm/combobox/index.parts.js +4 -1
- package/esm/combobox/input/ComboboxInput.d.ts +4 -4
- package/esm/combobox/input/ComboboxInput.js +60 -13
- package/esm/combobox/input-group/ComboboxInputGroup.d.ts +40 -0
- package/esm/combobox/input-group/ComboboxInputGroup.js +63 -0
- package/esm/combobox/input-group/ComboboxInputGroupDataAttributes.d.ts +55 -0
- package/esm/combobox/input-group/ComboboxInputGroupDataAttributes.js +56 -0
- package/esm/combobox/item/ComboboxItem.d.ts +4 -4
- package/esm/combobox/item/ComboboxItem.js +17 -16
- package/esm/combobox/item/ComboboxItemContext.js +2 -0
- package/esm/combobox/item-indicator/ComboboxItemIndicator.d.ts +8 -2
- package/esm/combobox/item-indicator/ComboboxItemIndicator.js +2 -2
- package/esm/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.ts +10 -0
- package/esm/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.js +12 -0
- package/esm/combobox/label/ComboboxLabel.d.ts +16 -0
- package/esm/combobox/label/ComboboxLabel.js +63 -0
- package/esm/combobox/list/ComboboxList.d.ts +1 -1
- package/esm/combobox/list/ComboboxList.js +2 -2
- package/esm/combobox/popup/ComboboxPopup.d.ts +21 -3
- package/esm/combobox/popup/ComboboxPopup.js +12 -5
- package/esm/combobox/popup/ComboboxPopupDataAttributes.js +2 -2
- package/esm/combobox/portal/ComboboxPortal.d.ts +4 -5
- package/esm/combobox/portal/ComboboxPortalContext.js +2 -0
- package/esm/combobox/positioner/ComboboxPositioner.d.ts +14 -2
- package/esm/combobox/positioner/ComboboxPositioner.js +8 -5
- package/esm/combobox/positioner/ComboboxPositionerDataAttributes.js +2 -2
- package/esm/combobox/root/AriaCombobox.d.ts +52 -46
- package/esm/combobox/root/AriaCombobox.js +59 -69
- package/esm/combobox/root/ComboboxRoot.d.ts +21 -16
- package/esm/combobox/root/ComboboxRoot.js +3 -1
- package/esm/combobox/root/ComboboxRootContext.d.ts +1 -0
- package/esm/combobox/root/ComboboxRootContext.js +2 -0
- package/esm/combobox/root/utils/useFilter.d.ts +2 -2
- package/esm/combobox/root/utils/useFilteredItems.d.ts +4 -0
- package/esm/combobox/root/utils/useFilteredItems.js +9 -0
- package/esm/combobox/row/ComboboxRow.d.ts +1 -1
- package/esm/combobox/row/ComboboxRowContext.js +2 -0
- package/esm/combobox/status/ComboboxStatus.d.ts +1 -1
- package/esm/combobox/store.d.ts +18 -12
- package/esm/combobox/store.js +5 -3
- package/esm/combobox/trigger/ComboboxTrigger.d.ts +4 -4
- package/esm/combobox/trigger/ComboboxTrigger.js +8 -6
- package/esm/combobox/utils/ComboboxInternalDismissButton.d.ts +5 -0
- package/esm/combobox/utils/ComboboxInternalDismissButton.js +38 -0
- package/esm/composite/item/CompositeItem.d.ts +9 -7
- package/esm/composite/list/CompositeList.d.ts +5 -3
- package/esm/composite/list/CompositeListContext.d.ts +1 -1
- package/esm/composite/list/useCompositeListItem.d.ts +5 -5
- package/esm/composite/root/CompositeRoot.d.ts +22 -20
- package/esm/composite/root/useCompositeRoot.d.ts +12 -12
- package/esm/context-menu/index.d.ts +1 -0
- package/esm/context-menu/index.parts.d.ts +1 -0
- package/esm/context-menu/index.parts.js +1 -0
- package/esm/context-menu/root/ContextMenuRoot.d.ts +1 -1
- package/esm/context-menu/root/ContextMenuRootContext.js +2 -0
- package/esm/context-menu/trigger/ContextMenuTrigger.d.ts +3 -3
- package/esm/context-menu/trigger/ContextMenuTrigger.js +13 -3
- package/esm/csp-provider/CSPContext.d.ts +2 -2
- package/esm/csp-provider/CSPProvider.d.ts +2 -2
- package/esm/dialog/backdrop/DialogBackdrop.d.ts +5 -2
- package/esm/dialog/backdrop/DialogBackdrop.js +2 -2
- package/esm/dialog/close/DialogClose.d.ts +1 -1
- package/esm/dialog/close/DialogClose.js +2 -2
- package/esm/dialog/description/DialogDescription.d.ts +1 -1
- package/esm/dialog/popup/DialogPopup.d.ts +6 -3
- package/esm/dialog/popup/DialogPopup.js +2 -2
- package/esm/dialog/portal/DialogPortal.d.ts +5 -6
- package/esm/dialog/portal/DialogPortalContext.js +2 -0
- package/esm/dialog/root/DialogRoot.d.ts +15 -10
- package/esm/dialog/root/DialogRoot.js +17 -4
- package/esm/dialog/root/useDialogRoot.d.ts +5 -9
- package/esm/dialog/root/useDialogRoot.js +6 -5
- package/esm/dialog/store/DialogStore.d.ts +258 -17
- package/esm/dialog/store/DialogStore.js +3 -0
- package/esm/dialog/title/DialogTitle.d.ts +1 -1
- package/esm/dialog/trigger/DialogTrigger.d.ts +4 -4
- package/esm/dialog/trigger/DialogTrigger.js +2 -2
- package/esm/dialog/viewport/DialogViewport.d.ts +3 -0
- package/esm/dialog/viewport/DialogViewport.js +5 -2
- package/esm/direction-provider/DirectionProvider.d.ts +3 -1
- package/esm/drawer/backdrop/DrawerBackdrop.d.ts +31 -0
- package/esm/drawer/backdrop/DrawerBackdrop.js +57 -0
- package/esm/drawer/backdrop/DrawerBackdropCssVars.d.ts +7 -0
- package/esm/drawer/backdrop/DrawerBackdropCssVars.js +8 -0
- package/esm/drawer/backdrop/DrawerBackdropDataAttributes.d.ts +18 -0
- package/esm/drawer/backdrop/DrawerBackdropDataAttributes.js +20 -0
- package/esm/drawer/close/DrawerClose.d.ts +23 -0
- package/esm/drawer/close/DrawerClose.js +10 -0
- package/esm/drawer/content/DrawerContent.d.ts +15 -0
- package/esm/drawer/content/DrawerContent.js +28 -0
- package/esm/drawer/content/DrawerContentDataAttributes.d.ts +1 -0
- package/esm/drawer/content/DrawerContentDataAttributes.js +1 -0
- package/esm/drawer/description/DrawerDescription.d.ts +18 -0
- package/esm/drawer/description/DrawerDescription.js +10 -0
- package/esm/drawer/indent/DrawerIndent.d.ts +21 -0
- package/esm/drawer/indent/DrawerIndent.js +82 -0
- package/esm/drawer/indent-background/DrawerIndentBackground.d.ts +20 -0
- package/esm/drawer/indent-background/DrawerIndentBackground.js +43 -0
- package/esm/drawer/index.d.ts +15 -0
- package/esm/drawer/index.js +1 -0
- package/esm/drawer/index.parts.d.ts +15 -0
- package/esm/drawer/index.parts.js +15 -0
- package/esm/drawer/popup/DrawerPopup.d.ts +72 -0
- package/esm/drawer/popup/DrawerPopup.js +342 -0
- package/esm/drawer/popup/DrawerPopupCssVars.d.ts +37 -0
- package/esm/drawer/popup/DrawerPopupCssVars.js +38 -0
- package/esm/drawer/popup/DrawerPopupDataAttributes.d.ts +43 -0
- package/esm/drawer/popup/DrawerPopupDataAttributes.js +45 -0
- package/esm/drawer/portal/DrawerPortal.d.ts +29 -0
- package/esm/drawer/portal/DrawerPortal.js +11 -0
- package/esm/drawer/provider/DrawerProvider.d.ts +16 -0
- package/esm/drawer/provider/DrawerProvider.js +95 -0
- package/esm/drawer/provider/DrawerProviderContext.d.ts +19 -0
- package/esm/drawer/provider/DrawerProviderContext.js +13 -0
- package/esm/drawer/root/DrawerRoot.d.ts +126 -0
- package/esm/drawer/root/DrawerRoot.js +233 -0
- package/esm/drawer/root/DrawerRootContext.d.ts +89 -0
- package/esm/drawer/root/DrawerRootContext.js +13 -0
- package/esm/drawer/root/useDrawerSnapPoints.d.ts +15 -0
- package/esm/drawer/root/useDrawerSnapPoints.js +149 -0
- package/esm/drawer/swipe-area/DrawerSwipeArea.d.ts +45 -0
- package/esm/drawer/swipe-area/DrawerSwipeArea.js +381 -0
- package/esm/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +23 -0
- package/esm/drawer/swipe-area/DrawerSwipeAreaDataAttributes.js +25 -0
- package/esm/drawer/title/DrawerTitle.d.ts +18 -0
- package/esm/drawer/title/DrawerTitle.js +10 -0
- package/esm/drawer/trigger/DrawerTrigger.d.ts +43 -0
- package/esm/drawer/trigger/DrawerTrigger.js +10 -0
- package/esm/drawer/viewport/DrawerViewport.d.ts +33 -0
- package/esm/drawer/viewport/DrawerViewport.js +989 -0
- package/esm/drawer/viewport/DrawerViewportContext.d.ts +11 -0
- package/esm/drawer/viewport/DrawerViewportContext.js +13 -0
- package/esm/drawer/viewport/DrawerViewportDataAttributes.d.ts +22 -0
- package/esm/drawer/viewport/DrawerViewportDataAttributes.js +24 -0
- package/esm/field/control/FieldControl.d.ts +6 -6
- package/esm/field/control/FieldControl.js +22 -20
- package/esm/field/description/FieldDescription.d.ts +3 -3
- package/esm/field/error/FieldError.d.ts +10 -4
- package/esm/field/error/FieldError.js +50 -7
- package/esm/field/error/FieldErrorDataAttributes.d.ts +8 -0
- package/esm/field/error/FieldErrorDataAttributes.js +10 -1
- package/esm/field/item/FieldItem.d.ts +5 -4
- package/esm/field/item/FieldItem.js +2 -2
- package/esm/field/item/FieldItemContext.js +2 -0
- package/esm/field/label/FieldLabel.d.ts +4 -4
- package/esm/field/label/FieldLabel.js +13 -53
- package/esm/field/root/FieldRoot.d.ts +28 -11
- package/esm/field/root/FieldRoot.js +2 -1
- package/esm/field/root/FieldRootContext.d.ts +3 -3
- package/esm/field/root/FieldRootContext.js +6 -13
- package/esm/field/root/useFieldValidation.js +5 -4
- package/esm/field/useField.d.ts +1 -1
- package/esm/field/useField.js +2 -0
- package/esm/field/utils/constants.d.ts +3 -0
- package/esm/field/utils/constants.js +11 -0
- package/esm/field/validity/FieldValidity.d.ts +9 -1
- package/esm/field/validity/FieldValidity.js +11 -4
- package/esm/fieldset/legend/FieldsetLegend.d.ts +1 -1
- package/esm/fieldset/legend/FieldsetLegend.js +2 -2
- package/esm/fieldset/root/FieldsetRoot.d.ts +2 -2
- package/esm/fieldset/root/FieldsetRoot.js +3 -3
- package/esm/floating-ui-react/components/FloatingDelayGroup.d.ts +2 -7
- package/esm/floating-ui-react/components/FloatingDelayGroup.js +3 -10
- package/esm/floating-ui-react/components/FloatingFocusManager.d.ts +17 -22
- package/esm/floating-ui-react/components/FloatingFocusManager.js +88 -97
- package/esm/floating-ui-react/components/FloatingPortal.d.ts +12 -11
- package/esm/floating-ui-react/components/FloatingPortal.js +1 -3
- package/esm/floating-ui-react/components/FloatingTree.d.ts +1 -1
- package/esm/floating-ui-react/hooks/useClick.d.ts +12 -6
- package/esm/floating-ui-react/hooks/useClick.js +6 -5
- package/esm/floating-ui-react/hooks/useClientPoint.d.ts +2 -12
- package/esm/floating-ui-react/hooks/useClientPoint.js +5 -16
- package/esm/floating-ui-react/hooks/useDismiss.d.ts +14 -18
- package/esm/floating-ui-react/hooks/useDismiss.js +325 -263
- package/esm/floating-ui-react/hooks/useFloating.js +2 -0
- package/esm/floating-ui-react/hooks/useFloatingRootContext.d.ts +4 -10
- package/esm/floating-ui-react/hooks/useFloatingRootContext.js +5 -3
- package/esm/floating-ui-react/hooks/useFocus.d.ts +2 -8
- package/esm/floating-ui-react/hooks/useFocus.js +11 -12
- package/esm/floating-ui-react/hooks/useHover.d.ts +7 -38
- package/esm/floating-ui-react/hooks/useHover.js +21 -63
- package/esm/floating-ui-react/hooks/useHoverFloatingInteraction.d.ts +3 -9
- package/esm/floating-ui-react/hooks/useHoverFloatingInteraction.js +70 -91
- package/esm/floating-ui-react/hooks/useHoverInteractionSharedState.d.ts +27 -15
- package/esm/floating-ui-react/hooks/useHoverInteractionSharedState.js +65 -32
- package/esm/floating-ui-react/hooks/useHoverReferenceInteraction.d.ts +14 -5
- package/esm/floating-ui-react/hooks/useHoverReferenceInteraction.js +96 -121
- package/esm/floating-ui-react/hooks/useHoverShared.d.ts +28 -0
- package/esm/floating-ui-react/hooks/useHoverShared.js +26 -0
- package/esm/floating-ui-react/hooks/useInteractions.d.ts +2 -2
- package/esm/floating-ui-react/hooks/useListNavigation.d.ts +19 -35
- package/esm/floating-ui-react/hooks/useListNavigation.js +20 -15
- package/esm/floating-ui-react/hooks/useRole.d.ts +1 -7
- package/esm/floating-ui-react/hooks/useRole.js +2 -3
- package/esm/floating-ui-react/hooks/useSyncedFloatingRootContext.d.ts +2 -2
- package/esm/floating-ui-react/hooks/useSyncedFloatingRootContext.js +2 -0
- package/esm/floating-ui-react/hooks/useTypeahead.d.ts +12 -16
- package/esm/floating-ui-react/hooks/useTypeahead.js +74 -26
- package/esm/floating-ui-react/middleware/arrow.d.ts +1 -1
- package/esm/floating-ui-react/safePolygon.d.ts +2 -6
- package/esm/floating-ui-react/safePolygon.js +149 -119
- package/esm/floating-ui-react/types.d.ts +16 -15
- package/esm/floating-ui-react/utils/composite.d.ts +6 -5
- package/esm/floating-ui-react/utils/composite.js +129 -131
- package/esm/floating-ui-react/utils/element.d.ts +2 -1
- package/esm/floating-ui-react/utils/element.js +16 -4
- package/esm/floating-ui-react/utils/enqueueFocus.d.ts +3 -3
- package/esm/floating-ui-react/utils/event.js +2 -4
- package/esm/floating-ui-react/utils/markOthers.d.ts +7 -1
- package/esm/floating-ui-react/utils/markOthers.js +121 -83
- package/esm/floating-ui-react/utils/tabbable.js +6 -5
- package/esm/form/Form.d.ts +6 -6
- package/esm/global.d.ts +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.js +2 -1
- package/esm/input/Input.d.ts +13 -6
- package/esm/labelable-provider/LabelableContext.d.ts +1 -1
- package/esm/labelable-provider/LabelableContext.js +1 -1
- package/esm/labelable-provider/LabelableProvider.d.ts +4 -1
- package/esm/labelable-provider/LabelableProvider.js +35 -4
- package/esm/labelable-provider/useAriaLabelledBy.d.ts +9 -0
- package/esm/labelable-provider/useAriaLabelledBy.js +56 -0
- package/esm/labelable-provider/useLabel.d.ts +25 -0
- package/esm/labelable-provider/useLabel.js +74 -0
- package/esm/labelable-provider/useLabelableId.d.ts +5 -7
- package/esm/labelable-provider/useLabelableId.js +38 -12
- package/esm/menu/arrow/MenuArrow.d.ts +10 -1
- package/esm/menu/arrow/MenuArrow.js +2 -2
- package/esm/menu/arrow/MenuArrowDataAttributes.js +2 -2
- package/esm/menu/backdrop/MenuBackdrop.d.ts +4 -1
- package/esm/menu/backdrop/MenuBackdrop.js +2 -2
- package/esm/menu/checkbox-item/MenuCheckboxItem.d.ts +11 -11
- package/esm/menu/checkbox-item/MenuCheckboxItemContext.js +2 -0
- package/esm/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +9 -3
- package/esm/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.js +3 -3
- package/esm/menu/group/MenuGroup.d.ts +1 -1
- package/esm/menu/group/MenuGroupContext.js +2 -0
- package/esm/menu/group-label/MenuGroupLabel.d.ts +1 -1
- package/esm/menu/index.d.ts +4 -2
- package/esm/menu/index.parts.d.ts +2 -0
- package/esm/menu/index.parts.js +2 -0
- package/esm/menu/item/MenuItem.d.ts +6 -6
- package/esm/menu/item/MenuItem.js +2 -2
- package/esm/menu/item/useMenuItem.d.ts +8 -7
- package/esm/menu/item/useMenuItem.js +16 -54
- package/esm/menu/item/useMenuItemCommonProps.d.ts +46 -0
- package/esm/menu/item/useMenuItemCommonProps.js +80 -0
- package/esm/menu/link-item/MenuLinkItem.d.ts +34 -0
- package/esm/menu/link-item/MenuLinkItem.js +69 -0
- package/esm/menu/link-item/MenuLinkItemDataAttributes.d.ts +6 -0
- package/esm/menu/link-item/MenuLinkItemDataAttributes.js +7 -0
- package/esm/menu/popup/MenuPopup.d.ts +21 -5
- package/esm/menu/popup/MenuPopup.js +6 -3
- package/esm/menu/popup/MenuPopupDataAttributes.d.ts +1 -1
- package/esm/menu/popup/MenuPopupDataAttributes.js +3 -3
- package/esm/menu/portal/MenuPortal.d.ts +4 -5
- package/esm/menu/portal/MenuPortalContext.js +2 -0
- package/esm/menu/positioner/MenuPositioner.d.ts +18 -2
- package/esm/menu/positioner/MenuPositioner.js +64 -17
- package/esm/menu/positioner/MenuPositionerDataAttributes.js +2 -2
- package/esm/menu/radio-group/MenuRadioGroup.d.ts +8 -5
- package/esm/menu/radio-group/MenuRadioGroup.js +2 -2
- package/esm/menu/radio-group/MenuRadioGroupContext.js +2 -0
- package/esm/menu/radio-item/MenuRadioItem.d.ts +8 -8
- package/esm/menu/radio-item/MenuRadioItemContext.js +2 -0
- package/esm/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +9 -3
- package/esm/menu/radio-item-indicator/MenuRadioItemIndicator.js +3 -3
- package/esm/menu/root/MenuRoot.d.ts +17 -15
- package/esm/menu/root/MenuRoot.js +40 -39
- package/esm/menu/store/MenuStore.d.ts +259 -17
- package/esm/menu/store/MenuStore.js +17 -12
- package/esm/menu/submenu-root/MenuSubmenuRoot.d.ts +2 -2
- package/esm/menu/submenu-root/MenuSubmenuRootContext.js +2 -0
- package/esm/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +22 -22
- package/esm/menu/submenu-trigger/MenuSubmenuTrigger.js +10 -7
- package/esm/menu/trigger/MenuTrigger.d.ts +13 -9
- package/esm/menu/trigger/MenuTrigger.js +4 -3
- package/esm/menu/viewport/MenuViewport.d.ts +30 -0
- package/esm/menu/viewport/MenuViewport.js +60 -0
- package/esm/menu/viewport/MenuViewportCssVars.d.ts +14 -0
- package/esm/menu/viewport/MenuViewportCssVars.js +15 -0
- package/esm/menu/viewport/MenuViewportDataAttributes.d.ts +26 -0
- package/esm/menu/viewport/MenuViewportDataAttributes.js +27 -0
- package/esm/menubar/Menubar.d.ts +5 -5
- package/esm/menubar/Menubar.js +3 -9
- package/esm/meter/indicator/MeterIndicator.d.ts +4 -2
- package/esm/meter/label/MeterLabel.d.ts +4 -2
- package/esm/meter/label/MeterLabel.js +4 -8
- package/esm/meter/root/MeterRoot.d.ts +7 -7
- package/esm/meter/root/MeterRoot.js +13 -12
- package/esm/meter/track/MeterTrack.d.ts +4 -2
- package/esm/meter/value/MeterValue.d.ts +5 -3
- package/esm/navigation-menu/arrow/NavigationMenuArrow.d.ts +10 -1
- package/esm/navigation-menu/arrow/NavigationMenuArrow.js +2 -2
- package/esm/navigation-menu/arrow/NavigationMenuArrowDataAttributes.js +2 -2
- package/esm/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +1 -1
- package/esm/navigation-menu/backdrop/NavigationMenuBackdrop.js +2 -2
- package/esm/navigation-menu/content/NavigationMenuContent.d.ts +8 -1
- package/esm/navigation-menu/content/NavigationMenuContent.js +37 -5
- package/esm/navigation-menu/icon/NavigationMenuIcon.d.ts +2 -2
- package/esm/navigation-menu/icon/NavigationMenuIcon.js +2 -2
- package/esm/navigation-menu/item/NavigationMenuItem.d.ts +2 -2
- package/esm/navigation-menu/item/NavigationMenuItemContext.js +2 -0
- package/esm/navigation-menu/link/NavigationMenuLink.d.ts +3 -3
- package/esm/navigation-menu/link/NavigationMenuLink.js +2 -2
- package/esm/navigation-menu/list/NavigationMenuDismissContext.js +2 -0
- package/esm/navigation-menu/list/NavigationMenuList.d.ts +2 -2
- package/esm/navigation-menu/list/NavigationMenuList.js +13 -4
- package/esm/navigation-menu/popup/NavigationMenuPopup.d.ts +14 -1
- package/esm/navigation-menu/popup/NavigationMenuPopup.js +2 -2
- package/esm/navigation-menu/popup/NavigationMenuPopupDataAttributes.js +2 -2
- package/esm/navigation-menu/portal/NavigationMenuPortal.d.ts +5 -6
- package/esm/navigation-menu/portal/NavigationMenuPortalContext.js +2 -0
- package/esm/navigation-menu/positioner/NavigationMenuPositioner.d.ts +11 -2
- package/esm/navigation-menu/positioner/NavigationMenuPositioner.js +2 -2
- package/esm/navigation-menu/positioner/NavigationPositionerDataAttributes.js +2 -2
- package/esm/navigation-menu/root/NavigationMenuRoot.d.ts +9 -9
- package/esm/navigation-menu/root/NavigationMenuRoot.js +29 -10
- package/esm/navigation-menu/root/NavigationMenuRootContext.js +2 -0
- package/esm/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -1
- package/esm/navigation-menu/trigger/NavigationMenuTrigger.js +272 -44
- package/esm/navigation-menu/utils/isOutsideMenuEvent.d.ts +1 -1
- package/esm/navigation-menu/viewport/NavigationMenuViewport.d.ts +1 -1
- package/esm/navigation-menu/viewport/NavigationMenuViewport.js +2 -1
- package/esm/number-field/decrement/NumberFieldDecrement.d.ts +3 -3
- package/esm/number-field/group/NumberFieldGroup.d.ts +3 -3
- package/esm/number-field/increment/NumberFieldIncrement.d.ts +3 -3
- package/esm/number-field/input/NumberFieldInput.d.ts +3 -3
- package/esm/number-field/input/NumberFieldInput.js +3 -11
- package/esm/number-field/root/NumberFieldRoot.d.ts +29 -22
- package/esm/number-field/root/NumberFieldRoot.js +23 -8
- package/esm/number-field/root/NumberFieldRootContext.d.ts +4 -4
- package/esm/number-field/root/useNumberFieldButton.d.ts +5 -8
- package/esm/number-field/root/useNumberFieldButton.js +12 -7
- package/esm/number-field/scrub-area/NumberFieldScrubArea.d.ts +5 -5
- package/esm/number-field/scrub-area/NumberFieldScrubArea.js +16 -0
- package/esm/number-field/scrub-area/NumberFieldScrubAreaContext.js +2 -0
- package/esm/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +3 -3
- package/esm/number-field/utils/stateAttributesMapping.d.ts +2 -2
- package/esm/number-field/utils/stateAttributesMapping.js +3 -1
- package/esm/number-field/utils/subscribeToVisualViewportResize.d.ts +1 -1
- package/esm/number-field/utils/types.d.ts +5 -5
- package/esm/number-field/utils/validate.d.ts +3 -1
- package/esm/number-field/utils/validate.js +3 -2
- package/esm/popover/arrow/PopoverArrow.d.ts +10 -1
- package/esm/popover/arrow/PopoverArrow.js +2 -2
- package/esm/popover/arrow/PopoverArrowDataAttributes.js +2 -2
- package/esm/popover/backdrop/PopoverBackdrop.d.ts +4 -1
- package/esm/popover/backdrop/PopoverBackdrop.js +2 -2
- package/esm/popover/close/PopoverClose.d.ts +1 -1
- package/esm/popover/close/PopoverClose.js +5 -3
- package/esm/popover/description/PopoverDescription.d.ts +1 -1
- package/esm/popover/popup/PopoverPopup.d.ts +16 -3
- package/esm/popover/popup/PopoverPopup.js +13 -4
- package/esm/popover/portal/PopoverPortal.d.ts +4 -5
- package/esm/popover/portal/PopoverPortal.js +1 -2
- package/esm/popover/portal/PopoverPortalContext.js +2 -0
- package/esm/popover/positioner/PopoverPositioner.d.ts +11 -2
- package/esm/popover/positioner/PopoverPositioner.js +3 -3
- package/esm/popover/positioner/PopoverPositionerDataAttributes.js +2 -2
- package/esm/popover/root/PopoverRoot.d.ts +16 -9
- package/esm/popover/root/PopoverRoot.js +19 -8
- package/esm/popover/store/PopoverStore.d.ts +255 -15
- package/esm/popover/title/PopoverTitle.d.ts +1 -1
- package/esm/popover/trigger/PopoverTrigger.d.ts +7 -7
- package/esm/popover/trigger/PopoverTrigger.js +2 -2
- package/esm/popover/viewport/PopoverViewport.d.ts +16 -4
- package/esm/popover/viewport/PopoverViewport.js +19 -196
- package/esm/popover/viewport/PopoverViewportDataAttributes.d.ts +5 -0
- package/esm/popover/viewport/PopoverViewportDataAttributes.js +5 -0
- package/esm/preview-card/arrow/PreviewCardArrow.d.ts +10 -1
- package/esm/preview-card/arrow/PreviewCardArrow.js +2 -2
- package/esm/preview-card/arrow/PreviewCardArrowDataAttributes.js +2 -2
- package/esm/preview-card/backdrop/PreviewCardBackdrop.d.ts +4 -1
- package/esm/preview-card/backdrop/PreviewCardBackdrop.js +2 -2
- package/esm/preview-card/popup/PreviewCardPopup.d.ts +13 -1
- package/esm/preview-card/popup/PreviewCardPopup.js +2 -2
- package/esm/preview-card/popup/PreviewCardPopupDataAttributes.js +2 -2
- package/esm/preview-card/portal/PreviewCardPortal.d.ts +4 -5
- package/esm/preview-card/portal/PreviewCardPortalContext.js +2 -0
- package/esm/preview-card/positioner/PreviewCardPositioner.d.ts +14 -2
- package/esm/preview-card/positioner/PreviewCardPositioner.js +9 -3
- package/esm/preview-card/positioner/PreviewCardPositionerContext.d.ts +1 -1
- package/esm/preview-card/positioner/PreviewCardPositionerDataAttributes.js +2 -2
- package/esm/preview-card/root/PreviewCardRoot.d.ts +9 -9
- package/esm/preview-card/root/PreviewCardRoot.js +39 -13
- package/esm/preview-card/store/PreviewCardStore.d.ts +255 -15
- package/esm/preview-card/trigger/PreviewCardTrigger.d.ts +5 -5
- package/esm/preview-card/trigger/PreviewCardTrigger.js +2 -2
- package/esm/preview-card/viewport/PreviewCardViewport.d.ts +16 -4
- package/esm/preview-card/viewport/PreviewCardViewport.js +14 -230
- package/esm/progress/indicator/ProgressIndicator.d.ts +4 -2
- package/esm/progress/label/ProgressLabel.d.ts +4 -2
- package/esm/progress/label/ProgressLabel.js +4 -8
- package/esm/progress/root/ProgressRoot.d.ts +10 -7
- package/esm/progress/root/ProgressRoot.js +13 -15
- package/esm/progress/root/ProgressRootContext.d.ts +2 -2
- package/esm/progress/root/stateAttributesMapping.d.ts +2 -2
- package/esm/progress/track/ProgressTrack.d.ts +4 -2
- package/esm/progress/value/ProgressValue.d.ts +5 -3
- package/esm/radio/indicator/RadioIndicator.d.ts +5 -2
- package/esm/radio/indicator/RadioIndicator.js +4 -4
- package/esm/radio/indicator/RadioIndicatorDataAttributes.d.ts +8 -0
- package/esm/radio/indicator/RadioIndicatorDataAttributes.js +10 -1
- package/esm/radio/root/RadioRoot.d.ts +39 -19
- package/esm/radio/root/RadioRoot.js +49 -12
- package/esm/radio-group/RadioGroup.d.ts +20 -14
- package/esm/radio-group/RadioGroup.js +69 -62
- package/esm/radio-group/RadioGroupContext.d.ts +9 -8
- package/esm/radio-group/RadioGroupContext.js +1 -13
- package/esm/scroll-area/content/ScrollAreaContent.d.ts +3 -3
- package/esm/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
- package/esm/scroll-area/root/ScrollAreaRoot.d.ts +27 -9
- package/esm/scroll-area/root/ScrollAreaRoot.js +9 -5
- package/esm/scroll-area/root/ScrollAreaRootContext.d.ts +4 -2
- package/esm/scroll-area/root/ScrollAreaRootContext.js +2 -0
- package/esm/scroll-area/root/ScrollAreaRootDataAttributes.d.ts +4 -0
- package/esm/scroll-area/root/ScrollAreaRootDataAttributes.js +4 -0
- package/esm/scroll-area/root/stateAttributes.d.ts +2 -2
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +14 -8
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbar.js +6 -3
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbarContext.js +2 -0
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.d.ts +1 -1
- package/esm/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.js +1 -1
- package/esm/scroll-area/thumb/ScrollAreaThumb.d.ts +5 -2
- package/esm/scroll-area/thumb/ScrollAreaThumb.js +5 -3
- package/esm/scroll-area/utils/scrollEdges.d.ts +2 -0
- package/esm/scroll-area/utils/scrollEdges.js +22 -0
- package/esm/scroll-area/viewport/ScrollAreaViewport.d.ts +3 -3
- package/esm/scroll-area/viewport/ScrollAreaViewport.js +64 -42
- package/esm/scroll-area/viewport/ScrollAreaViewportContext.js +2 -0
- package/esm/scroll-area/viewport/ScrollAreaViewportDataAttributes.d.ts +4 -0
- package/esm/scroll-area/viewport/ScrollAreaViewportDataAttributes.js +4 -0
- package/esm/select/arrow/SelectArrow.d.ts +10 -1
- package/esm/select/arrow/SelectArrow.js +2 -2
- package/esm/select/arrow/SelectArrowDataAttributes.js +2 -2
- package/esm/select/backdrop/SelectBackdrop.d.ts +7 -1
- package/esm/select/backdrop/SelectBackdrop.js +2 -2
- package/esm/select/group/SelectGroup.d.ts +1 -1
- package/esm/select/group/SelectGroupContext.js +2 -0
- package/esm/select/group-label/SelectGroupLabel.d.ts +1 -1
- package/esm/select/icon/SelectIcon.d.ts +1 -1
- package/esm/select/icon/SelectIcon.js +2 -2
- package/esm/select/index.d.ts +1 -0
- package/esm/select/index.parts.d.ts +1 -0
- package/esm/select/index.parts.js +1 -0
- package/esm/select/item/SelectItem.d.ts +3 -3
- package/esm/select/item/SelectItem.js +23 -17
- package/esm/select/item/SelectItemContext.js +2 -0
- package/esm/select/item-indicator/SelectItemIndicator.d.ts +11 -3
- package/esm/select/item-indicator/SelectItemIndicator.js +2 -2
- package/esm/select/item-indicator/SelectItemIndicatorDataAttributes.d.ts +10 -0
- package/esm/select/item-indicator/SelectItemIndicatorDataAttributes.js +12 -0
- package/esm/select/item-text/SelectItemText.d.ts +1 -1
- package/esm/select/label/SelectLabel.d.ts +16 -0
- package/esm/select/label/SelectLabel.js +49 -0
- package/esm/select/list/SelectList.d.ts +1 -1
- package/esm/select/popup/SelectPopup.d.ts +24 -1
- package/esm/select/popup/SelectPopup.js +87 -44
- package/esm/select/popup/SelectPopupDataAttributes.js +2 -2
- package/esm/select/portal/SelectPortal.d.ts +3 -4
- package/esm/select/portal/SelectPortalContext.js +2 -0
- package/esm/select/positioner/SelectPositioner.d.ts +15 -3
- package/esm/select/positioner/SelectPositioner.js +14 -11
- package/esm/select/positioner/SelectPositionerContext.d.ts +2 -2
- package/esm/select/positioner/SelectPositionerContext.js +2 -0
- package/esm/select/positioner/SelectPositionerDataAttributes.js +2 -2
- package/esm/select/root/SelectRoot.d.ts +27 -21
- package/esm/select/root/SelectRoot.js +7 -6
- package/esm/select/root/SelectRootContext.d.ts +14 -14
- package/esm/select/root/SelectRootContext.js +2 -0
- package/esm/select/scroll-arrow/SelectScrollArrow.d.ts +14 -2
- package/esm/select/scroll-arrow/SelectScrollArrow.js +2 -2
- package/esm/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +2 -2
- package/esm/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.js +1 -1
- package/esm/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +2 -2
- package/esm/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.js +1 -1
- package/esm/select/store.d.ts +8 -5
- package/esm/select/store.js +4 -3
- package/esm/select/trigger/SelectTrigger.d.ts +7 -5
- package/esm/select/trigger/SelectTrigger.js +7 -4
- package/esm/select/value/SelectValue.d.ts +5 -1
- package/esm/select/value/SelectValue.js +2 -2
- package/esm/separator/Separator.d.ts +2 -2
- package/esm/separator/Separator.js +2 -2
- package/esm/slider/control/SliderControl.d.ts +4 -3
- package/esm/slider/control/SliderControl.js +0 -2
- package/esm/slider/index.d.ts +1 -0
- package/esm/slider/index.parts.d.ts +1 -0
- package/esm/slider/index.parts.js +1 -0
- package/esm/slider/indicator/SliderIndicator.d.ts +4 -2
- package/esm/slider/label/SliderLabel.d.ts +16 -0
- package/esm/slider/label/SliderLabel.js +58 -0
- package/esm/slider/root/SliderRoot.d.ts +26 -20
- package/esm/slider/root/SliderRoot.js +11 -5
- package/esm/slider/root/SliderRootContext.d.ts +6 -4
- package/esm/slider/root/stateAttributesMapping.d.ts +2 -2
- package/esm/slider/root/stateAttributesMapping.js +3 -1
- package/esm/slider/thumb/SliderThumb.d.ts +10 -10
- package/esm/slider/thumb/SliderThumb.js +3 -2
- package/esm/slider/track/SliderTrack.d.ts +4 -2
- package/esm/slider/utils/getPushedThumbValues.d.ts +1 -1
- package/esm/slider/utils/resolveThumbCollision.d.ts +2 -2
- package/esm/slider/value/SliderValue.d.ts +5 -3
- package/esm/switch/root/SwitchRoot.d.ts +14 -14
- package/esm/switch/root/SwitchRoot.js +11 -2
- package/esm/switch/root/SwitchRootContext.d.ts +4 -4
- package/esm/switch/root/SwitchRootContext.js +2 -0
- package/esm/switch/stateAttributesMapping.d.ts +2 -2
- package/esm/switch/thumb/SwitchThumb.d.ts +3 -3
- package/esm/tabs/indicator/TabsIndicator.d.ts +13 -4
- package/esm/tabs/indicator/TabsIndicator.js +7 -16
- package/esm/tabs/indicator/TabsIndicatorCssVars.d.ts +1 -1
- package/esm/tabs/indicator/TabsIndicatorCssVars.js +1 -1
- package/esm/tabs/list/TabsList.d.ts +5 -5
- package/esm/tabs/list/TabsList.js +50 -5
- package/esm/tabs/list/TabsListContext.d.ts +2 -0
- package/esm/tabs/panel/TabsPanel.d.ts +13 -5
- package/esm/tabs/panel/TabsPanel.js +35 -9
- package/esm/tabs/panel/TabsPanelDataAttributes.d.ts +8 -0
- package/esm/tabs/panel/TabsPanelDataAttributes.js +10 -1
- package/esm/tabs/root/TabsRoot.d.ts +11 -5
- package/esm/tabs/root/TabsRootContext.d.ts +1 -1
- package/esm/tabs/root/stateAttributesMapping.d.ts +2 -2
- package/esm/tabs/tab/TabsTab.d.ts +8 -2
- package/esm/tabs/tab/TabsTab.js +12 -3
- package/esm/toast/action/ToastAction.d.ts +1 -1
- package/esm/toast/action/ToastAction.js +2 -2
- package/esm/toast/arrow/ToastArrow.d.ts +10 -1
- package/esm/toast/arrow/ToastArrow.js +2 -2
- package/esm/toast/arrow/ToastArrowDataAttributes.js +4 -3
- package/esm/toast/close/ToastClose.d.ts +1 -1
- package/esm/toast/close/ToastClose.js +6 -8
- package/esm/toast/content/ToastContent.d.ts +1 -1
- package/esm/toast/content/ToastContent.js +2 -2
- package/esm/toast/createToastManager.d.ts +6 -6
- package/esm/toast/createToastManager.js +3 -6
- package/esm/toast/description/ToastDescription.d.ts +1 -1
- package/esm/toast/description/ToastDescription.js +4 -6
- package/esm/toast/portal/ToastPortal.d.ts +3 -4
- package/esm/toast/positioner/ToastPositioner.d.ts +13 -4
- package/esm/toast/positioner/ToastPositioner.js +6 -7
- package/esm/toast/positioner/ToastPositionerDataAttributes.js +2 -2
- package/esm/toast/provider/ToastProvider.d.ts +5 -3
- package/esm/toast/provider/ToastProvider.js +27 -286
- package/esm/toast/provider/ToastProviderContext.d.ts +4 -25
- package/esm/toast/provider/ToastProviderContext.js +3 -1
- package/esm/toast/root/ToastRoot.d.ts +20 -7
- package/esm/toast/root/ToastRoot.js +22 -28
- package/esm/toast/root/ToastRootContext.js +2 -0
- package/esm/toast/store.d.ts +51 -0
- package/esm/toast/store.js +384 -0
- package/esm/toast/title/ToastTitle.d.ts +1 -1
- package/esm/toast/title/ToastTitle.js +4 -6
- package/esm/toast/useToastManager.d.ts +21 -22
- package/esm/toast/useToastManager.js +8 -14
- package/esm/toast/viewport/ToastViewport.d.ts +1 -1
- package/esm/toast/viewport/ToastViewport.js +66 -92
- package/esm/toggle/Toggle.d.ts +10 -8
- package/esm/toggle/Toggle.js +13 -3
- package/esm/toggle-group/ToggleGroup.d.ts +22 -10
- package/esm/toggle-group/ToggleGroup.js +8 -5
- package/esm/toggle-group/ToggleGroupContext.d.ts +10 -5
- package/esm/toolbar/button/ToolbarButton.d.ts +11 -5
- package/esm/toolbar/button/ToolbarButton.js +2 -2
- package/esm/toolbar/group/ToolbarGroup.d.ts +5 -3
- package/esm/toolbar/group/ToolbarGroup.js +2 -2
- package/esm/toolbar/group/ToolbarGroupContext.js +2 -0
- package/esm/toolbar/input/ToolbarInput.d.ts +12 -6
- package/esm/toolbar/input/ToolbarInput.js +2 -2
- package/esm/toolbar/link/ToolbarLink.d.ts +4 -1
- package/esm/toolbar/link/ToolbarLink.js +2 -2
- package/esm/toolbar/root/ToolbarRoot.d.ts +10 -4
- package/esm/toolbar/root/ToolbarRoot.js +2 -2
- package/esm/toolbar/separator/ToolbarSeparator.d.ts +4 -2
- package/esm/tooltip/arrow/TooltipArrow.d.ts +14 -1
- package/esm/tooltip/arrow/TooltipArrow.js +2 -2
- package/esm/tooltip/arrow/TooltipArrowDataAttributes.js +2 -2
- package/esm/tooltip/popup/TooltipPopup.d.ts +13 -1
- package/esm/tooltip/popup/TooltipPopup.js +2 -2
- package/esm/tooltip/popup/TooltipPopupDataAttributes.js +2 -2
- package/esm/tooltip/portal/TooltipPortal.d.ts +4 -5
- package/esm/tooltip/portal/TooltipPortalContext.js +2 -0
- package/esm/tooltip/positioner/TooltipPositioner.d.ts +12 -3
- package/esm/tooltip/positioner/TooltipPositionerContext.d.ts +1 -1
- package/esm/tooltip/positioner/TooltipPositionerDataAttributes.js +2 -2
- package/esm/tooltip/provider/TooltipProvider.d.ts +5 -3
- package/esm/tooltip/provider/TooltipProviderContext.js +2 -0
- package/esm/tooltip/root/TooltipRoot.d.ts +12 -12
- package/esm/tooltip/root/TooltipRoot.js +24 -12
- package/esm/tooltip/store/TooltipStore.d.ts +258 -16
- package/esm/tooltip/store/TooltipStore.js +2 -0
- package/esm/tooltip/trigger/TooltipTrigger.d.ts +17 -5
- package/esm/tooltip/trigger/TooltipTrigger.js +17 -6
- package/esm/tooltip/trigger/TooltipTriggerDataAttributes.d.ts +4 -0
- package/esm/tooltip/trigger/TooltipTriggerDataAttributes.js +4 -0
- package/esm/tooltip/viewport/TooltipViewport.d.ts +16 -4
- package/esm/tooltip/viewport/TooltipViewport.js +14 -195
- package/esm/types/index.d.ts +16 -1
- package/esm/unstable-use-media-query/index.d.ts +7 -5
- package/esm/use-button/useButton.d.ts +12 -9
- package/esm/use-button/useButton.js +56 -22
- package/esm/use-render/useRender.d.ts +14 -12
- package/esm/utils/FloatingPortalLite.d.ts +4 -2
- package/esm/utils/InternalBackdrop.d.ts +3 -1
- package/esm/utils/closePart.d.ts +16 -0
- package/esm/utils/closePart.js +40 -0
- package/esm/utils/constants.d.ts +4 -0
- package/esm/utils/constants.js +4 -0
- package/esm/utils/createBaseUIEventDetails.d.ts +4 -1
- package/esm/utils/formatNumber.d.ts +2 -1
- package/esm/utils/formatNumber.js +11 -0
- package/esm/utils/getDisabledMountTransitionStyles.d.ts +1 -1
- package/esm/utils/getElementAtPoint.d.ts +1 -0
- package/esm/utils/getElementAtPoint.js +3 -0
- package/esm/utils/getPseudoElementBounds.js +1 -1
- package/esm/utils/itemEquality.d.ts +5 -5
- package/esm/utils/itemEquality.js +17 -17
- package/esm/utils/popupStateMapping.d.ts +10 -0
- package/esm/utils/popupStateMapping.js +10 -0
- package/esm/utils/popups/popupStoreUtils.js +2 -0
- package/esm/utils/popups/popupTriggerMap.d.ts +14 -1
- package/esm/utils/popups/popupTriggerMap.js +27 -9
- package/esm/utils/popups/store.d.ts +28 -18
- package/esm/utils/popups/store.js +8 -5
- package/esm/utils/reason-parts.d.ts +3 -0
- package/esm/utils/reason-parts.js +3 -0
- package/esm/utils/resolveAriaLabelledBy.d.ts +2 -0
- package/esm/utils/resolveAriaLabelledBy.js +8 -0
- package/esm/utils/resolveValueLabel.d.ts +4 -4
- package/esm/utils/resolveValueLabel.js +7 -5
- package/esm/utils/scrollable.d.ts +4 -0
- package/esm/utils/scrollable.js +32 -0
- package/esm/utils/types.d.ts +9 -22
- package/esm/utils/useAnchorPositioning.d.ts +68 -33
- package/esm/utils/useAnchorPositioning.js +32 -20
- package/esm/utils/useFocusableWhenDisabled.d.ts +6 -9
- package/esm/utils/useMixedToggleClickHandler.d.ts +3 -5
- package/esm/utils/useMixedToggleClickHandler.js +2 -0
- package/esm/utils/useOpenChangeComplete.d.ts +4 -6
- package/esm/utils/useOpenInteractionType.d.ts +0 -1
- package/esm/utils/useOpenInteractionType.js +7 -5
- package/esm/utils/usePopupAutoResize.d.ts +3 -3
- package/esm/utils/usePopupAutoResize.js +4 -3
- package/esm/utils/usePopupViewport.d.ts +58 -0
- package/esm/utils/usePopupViewport.js +250 -0
- package/esm/utils/useRegisteredLabelId.d.ts +1 -0
- package/esm/utils/useRegisteredLabelId.js +14 -0
- package/esm/utils/useRenderElement.d.ts +11 -14
- package/esm/utils/useRenderElement.js +43 -1
- package/esm/utils/useSwipeDismiss.d.ts +107 -0
- package/esm/utils/useSwipeDismiss.js +945 -0
- package/esm/utils/useValueChanged.js +2 -0
- package/field/control/FieldControl.d.ts +6 -6
- package/field/control/FieldControl.js +21 -20
- package/field/description/FieldDescription.d.ts +3 -3
- package/field/error/FieldError.d.ts +10 -4
- package/field/error/FieldError.js +51 -7
- package/field/error/FieldErrorDataAttributes.d.ts +8 -0
- package/field/error/FieldErrorDataAttributes.js +10 -1
- package/field/item/FieldItem.d.ts +5 -4
- package/field/item/FieldItem.js +2 -2
- package/field/item/FieldItemContext.js +1 -0
- package/field/label/FieldLabel.d.ts +4 -4
- package/field/label/FieldLabel.js +13 -53
- package/field/root/FieldRoot.d.ts +28 -11
- package/field/root/FieldRoot.js +2 -1
- package/field/root/FieldRootContext.d.ts +3 -3
- package/field/root/FieldRootContext.js +5 -12
- package/field/root/useFieldValidation.js +5 -4
- package/field/useField.d.ts +1 -1
- package/field/useField.js +1 -0
- package/field/utils/constants.d.ts +3 -0
- package/field/utils/constants.js +12 -1
- package/field/validity/FieldValidity.d.ts +9 -1
- package/field/validity/FieldValidity.js +9 -3
- package/fieldset/legend/FieldsetLegend.d.ts +1 -1
- package/fieldset/legend/FieldsetLegend.js +2 -2
- package/fieldset/root/FieldsetRoot.d.ts +2 -2
- package/fieldset/root/FieldsetRoot.js +3 -3
- package/floating-ui-react/components/FloatingDelayGroup.d.ts +2 -7
- package/floating-ui-react/components/FloatingDelayGroup.js +4 -11
- package/floating-ui-react/components/FloatingFocusManager.d.ts +17 -22
- package/floating-ui-react/components/FloatingFocusManager.js +85 -94
- package/floating-ui-react/components/FloatingPortal.d.ts +12 -11
- package/floating-ui-react/components/FloatingPortal.js +1 -3
- package/floating-ui-react/components/FloatingTree.d.ts +1 -1
- package/floating-ui-react/hooks/useClick.d.ts +12 -6
- package/floating-ui-react/hooks/useClick.js +6 -5
- package/floating-ui-react/hooks/useClientPoint.d.ts +2 -12
- package/floating-ui-react/hooks/useClientPoint.js +4 -16
- package/floating-ui-react/hooks/useDismiss.d.ts +14 -18
- package/floating-ui-react/hooks/useDismiss.js +322 -261
- package/floating-ui-react/hooks/useFloating.js +1 -0
- package/floating-ui-react/hooks/useFloatingRootContext.d.ts +4 -10
- package/floating-ui-react/hooks/useFloatingRootContext.js +4 -3
- package/floating-ui-react/hooks/useFocus.d.ts +2 -8
- package/floating-ui-react/hooks/useFocus.js +9 -11
- package/floating-ui-react/hooks/useHover.d.ts +7 -38
- package/floating-ui-react/hooks/useHover.js +23 -67
- package/floating-ui-react/hooks/useHoverFloatingInteraction.d.ts +3 -9
- package/floating-ui-react/hooks/useHoverFloatingInteraction.js +67 -90
- package/floating-ui-react/hooks/useHoverInteractionSharedState.d.ts +27 -15
- package/floating-ui-react/hooks/useHoverInteractionSharedState.js +67 -33
- package/floating-ui-react/hooks/useHoverReferenceInteraction.d.ts +14 -5
- package/floating-ui-react/hooks/useHoverReferenceInteraction.js +93 -119
- package/floating-ui-react/hooks/useHoverShared.d.ts +28 -0
- package/floating-ui-react/hooks/useHoverShared.js +34 -0
- package/floating-ui-react/hooks/useInteractions.d.ts +2 -2
- package/floating-ui-react/hooks/useListNavigation.d.ts +19 -35
- package/floating-ui-react/hooks/useListNavigation.js +18 -14
- package/floating-ui-react/hooks/useRole.d.ts +1 -7
- package/floating-ui-react/hooks/useRole.js +2 -3
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.d.ts +2 -2
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.js +1 -0
- package/floating-ui-react/hooks/useTypeahead.d.ts +12 -16
- package/floating-ui-react/hooks/useTypeahead.js +72 -25
- package/floating-ui-react/middleware/arrow.d.ts +1 -1
- package/floating-ui-react/safePolygon.d.ts +2 -6
- package/floating-ui-react/safePolygon.js +149 -119
- package/floating-ui-react/types.d.ts +16 -15
- package/floating-ui-react/utils/composite.d.ts +6 -5
- package/floating-ui-react/utils/composite.js +130 -132
- package/floating-ui-react/utils/element.d.ts +2 -1
- package/floating-ui-react/utils/element.js +16 -4
- package/floating-ui-react/utils/enqueueFocus.d.ts +3 -3
- package/floating-ui-react/utils/event.js +2 -4
- package/floating-ui-react/utils/markOthers.d.ts +7 -1
- package/floating-ui-react/utils/markOthers.js +120 -82
- package/floating-ui-react/utils/tabbable.js +5 -4
- package/form/Form.d.ts +6 -6
- package/global.d.ts +1 -1
- package/index.d.ts +1 -0
- package/index.js +12 -1
- package/input/Input.d.ts +13 -6
- package/labelable-provider/LabelableContext.d.ts +1 -1
- package/labelable-provider/LabelableContext.js +1 -1
- package/labelable-provider/LabelableProvider.d.ts +4 -1
- package/labelable-provider/LabelableProvider.js +35 -4
- package/labelable-provider/useAriaLabelledBy.d.ts +9 -0
- package/labelable-provider/useAriaLabelledBy.js +61 -0
- package/labelable-provider/useLabel.d.ts +25 -0
- package/labelable-provider/useLabel.js +80 -0
- package/labelable-provider/useLabelableId.d.ts +5 -7
- package/labelable-provider/useLabelableId.js +39 -12
- package/menu/arrow/MenuArrow.d.ts +10 -1
- package/menu/arrow/MenuArrow.js +2 -2
- package/menu/arrow/MenuArrowDataAttributes.js +2 -2
- package/menu/backdrop/MenuBackdrop.d.ts +4 -1
- package/menu/backdrop/MenuBackdrop.js +2 -2
- package/menu/checkbox-item/MenuCheckboxItem.d.ts +11 -11
- package/menu/checkbox-item/MenuCheckboxItemContext.js +1 -0
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.d.ts +9 -3
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.js +3 -3
- package/menu/group/MenuGroup.d.ts +1 -1
- package/menu/group/MenuGroupContext.js +1 -0
- package/menu/group-label/MenuGroupLabel.d.ts +1 -1
- package/menu/index.d.ts +4 -2
- package/menu/index.parts.d.ts +2 -0
- package/menu/index.parts.js +14 -0
- package/menu/item/MenuItem.d.ts +6 -6
- package/menu/item/MenuItem.js +2 -2
- package/menu/item/useMenuItem.d.ts +8 -7
- package/menu/item/useMenuItem.js +16 -54
- package/menu/item/useMenuItemCommonProps.d.ts +46 -0
- package/menu/item/useMenuItemCommonProps.js +86 -0
- package/menu/link-item/MenuLinkItem.d.ts +34 -0
- package/menu/link-item/MenuLinkItem.js +74 -0
- package/menu/link-item/MenuLinkItemDataAttributes.d.ts +6 -0
- package/menu/link-item/MenuLinkItemDataAttributes.js +13 -0
- package/menu/popup/MenuPopup.d.ts +21 -5
- package/menu/popup/MenuPopup.js +6 -3
- package/menu/popup/MenuPopupDataAttributes.d.ts +1 -1
- package/menu/popup/MenuPopupDataAttributes.js +3 -3
- package/menu/portal/MenuPortal.d.ts +4 -5
- package/menu/portal/MenuPortalContext.js +1 -0
- package/menu/positioner/MenuPositioner.d.ts +18 -2
- package/menu/positioner/MenuPositioner.js +62 -16
- package/menu/positioner/MenuPositionerDataAttributes.js +2 -2
- package/menu/radio-group/MenuRadioGroup.d.ts +8 -5
- package/menu/radio-group/MenuRadioGroup.js +2 -2
- package/menu/radio-group/MenuRadioGroupContext.js +1 -0
- package/menu/radio-item/MenuRadioItem.d.ts +8 -8
- package/menu/radio-item/MenuRadioItemContext.js +1 -0
- package/menu/radio-item-indicator/MenuRadioItemIndicator.d.ts +9 -3
- package/menu/radio-item-indicator/MenuRadioItemIndicator.js +3 -3
- package/menu/root/MenuRoot.d.ts +17 -15
- package/menu/root/MenuRoot.js +41 -40
- package/menu/store/MenuStore.d.ts +259 -17
- package/menu/store/MenuStore.js +17 -12
- package/menu/submenu-root/MenuSubmenuRoot.d.ts +2 -2
- package/menu/submenu-root/MenuSubmenuRootContext.js +1 -0
- package/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +22 -22
- package/menu/submenu-trigger/MenuSubmenuTrigger.js +11 -8
- package/menu/trigger/MenuTrigger.d.ts +13 -9
- package/menu/trigger/MenuTrigger.js +5 -4
- package/menu/viewport/MenuViewport.d.ts +30 -0
- package/menu/viewport/MenuViewport.js +66 -0
- package/menu/viewport/MenuViewportCssVars.d.ts +14 -0
- package/menu/viewport/MenuViewportCssVars.js +21 -0
- package/menu/viewport/MenuViewportDataAttributes.d.ts +26 -0
- package/menu/viewport/MenuViewportDataAttributes.js +33 -0
- package/menubar/Menubar.d.ts +5 -5
- package/menubar/Menubar.js +3 -9
- package/meter/indicator/MeterIndicator.d.ts +4 -2
- package/meter/label/MeterLabel.d.ts +4 -2
- package/meter/label/MeterLabel.js +4 -8
- package/meter/root/MeterRoot.d.ts +7 -7
- package/meter/root/MeterRoot.js +11 -11
- package/meter/track/MeterTrack.d.ts +4 -2
- package/meter/value/MeterValue.d.ts +5 -3
- package/navigation-menu/arrow/NavigationMenuArrow.d.ts +10 -1
- package/navigation-menu/arrow/NavigationMenuArrow.js +2 -2
- package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.js +2 -2
- package/navigation-menu/backdrop/NavigationMenuBackdrop.d.ts +1 -1
- package/navigation-menu/backdrop/NavigationMenuBackdrop.js +2 -2
- package/navigation-menu/content/NavigationMenuContent.d.ts +8 -1
- package/navigation-menu/content/NavigationMenuContent.js +37 -5
- package/navigation-menu/icon/NavigationMenuIcon.d.ts +2 -2
- package/navigation-menu/icon/NavigationMenuIcon.js +2 -2
- package/navigation-menu/item/NavigationMenuItem.d.ts +2 -2
- package/navigation-menu/item/NavigationMenuItemContext.js +1 -0
- package/navigation-menu/link/NavigationMenuLink.d.ts +3 -3
- package/navigation-menu/link/NavigationMenuLink.js +2 -2
- package/navigation-menu/list/NavigationMenuDismissContext.js +1 -0
- package/navigation-menu/list/NavigationMenuList.d.ts +2 -2
- package/navigation-menu/list/NavigationMenuList.js +12 -3
- package/navigation-menu/popup/NavigationMenuPopup.d.ts +14 -1
- package/navigation-menu/popup/NavigationMenuPopup.js +2 -2
- package/navigation-menu/popup/NavigationMenuPopupDataAttributes.js +2 -2
- package/navigation-menu/portal/NavigationMenuPortal.d.ts +5 -6
- package/navigation-menu/portal/NavigationMenuPortalContext.js +1 -0
- package/navigation-menu/positioner/NavigationMenuPositioner.d.ts +11 -2
- package/navigation-menu/positioner/NavigationMenuPositioner.js +2 -2
- package/navigation-menu/positioner/NavigationPositionerDataAttributes.js +2 -2
- package/navigation-menu/root/NavigationMenuRoot.d.ts +9 -9
- package/navigation-menu/root/NavigationMenuRoot.js +28 -9
- package/navigation-menu/root/NavigationMenuRootContext.js +1 -0
- package/navigation-menu/trigger/NavigationMenuTrigger.d.ts +1 -1
- package/navigation-menu/trigger/NavigationMenuTrigger.js +270 -42
- package/navigation-menu/utils/isOutsideMenuEvent.d.ts +1 -1
- package/navigation-menu/viewport/NavigationMenuViewport.d.ts +1 -1
- package/navigation-menu/viewport/NavigationMenuViewport.js +2 -1
- package/number-field/decrement/NumberFieldDecrement.d.ts +3 -3
- package/number-field/group/NumberFieldGroup.d.ts +3 -3
- package/number-field/increment/NumberFieldIncrement.d.ts +3 -3
- package/number-field/input/NumberFieldInput.d.ts +3 -3
- package/number-field/input/NumberFieldInput.js +3 -11
- package/number-field/root/NumberFieldRoot.d.ts +29 -22
- package/number-field/root/NumberFieldRoot.js +23 -8
- package/number-field/root/NumberFieldRootContext.d.ts +4 -4
- package/number-field/root/useNumberFieldButton.d.ts +5 -8
- package/number-field/root/useNumberFieldButton.js +12 -7
- package/number-field/scrub-area/NumberFieldScrubArea.d.ts +5 -5
- package/number-field/scrub-area/NumberFieldScrubArea.js +16 -0
- package/number-field/scrub-area/NumberFieldScrubAreaContext.js +1 -0
- package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursor.d.ts +3 -3
- package/number-field/utils/stateAttributesMapping.d.ts +2 -2
- package/number-field/utils/stateAttributesMapping.js +3 -1
- package/number-field/utils/subscribeToVisualViewportResize.d.ts +1 -1
- package/number-field/utils/types.d.ts +5 -5
- package/number-field/utils/validate.d.ts +3 -1
- package/number-field/utils/validate.js +3 -2
- package/package.json +194 -9
- package/popover/arrow/PopoverArrow.d.ts +10 -1
- package/popover/arrow/PopoverArrow.js +2 -2
- package/popover/arrow/PopoverArrowDataAttributes.js +2 -2
- package/popover/backdrop/PopoverBackdrop.d.ts +4 -1
- package/popover/backdrop/PopoverBackdrop.js +2 -2
- package/popover/close/PopoverClose.d.ts +1 -1
- package/popover/close/PopoverClose.js +5 -3
- package/popover/description/PopoverDescription.d.ts +1 -1
- package/popover/popup/PopoverPopup.d.ts +16 -3
- package/popover/popup/PopoverPopup.js +13 -4
- package/popover/portal/PopoverPortal.d.ts +4 -5
- package/popover/portal/PopoverPortal.js +1 -2
- package/popover/portal/PopoverPortalContext.js +1 -0
- package/popover/positioner/PopoverPositioner.d.ts +11 -2
- package/popover/positioner/PopoverPositioner.js +3 -3
- package/popover/positioner/PopoverPositionerDataAttributes.js +2 -2
- package/popover/root/PopoverRoot.d.ts +16 -9
- package/popover/root/PopoverRoot.js +19 -8
- package/popover/store/PopoverStore.d.ts +255 -15
- package/popover/title/PopoverTitle.d.ts +1 -1
- package/popover/trigger/PopoverTrigger.d.ts +7 -7
- package/popover/trigger/PopoverTrigger.js +3 -3
- package/popover/viewport/PopoverViewport.d.ts +16 -4
- package/popover/viewport/PopoverViewport.js +19 -196
- package/popover/viewport/PopoverViewportDataAttributes.d.ts +5 -0
- package/popover/viewport/PopoverViewportDataAttributes.js +5 -0
- package/preview-card/arrow/PreviewCardArrow.d.ts +10 -1
- package/preview-card/arrow/PreviewCardArrow.js +2 -2
- package/preview-card/arrow/PreviewCardArrowDataAttributes.js +2 -2
- package/preview-card/backdrop/PreviewCardBackdrop.d.ts +4 -1
- package/preview-card/backdrop/PreviewCardBackdrop.js +2 -2
- package/preview-card/popup/PreviewCardPopup.d.ts +13 -1
- package/preview-card/popup/PreviewCardPopup.js +2 -2
- package/preview-card/popup/PreviewCardPopupDataAttributes.js +2 -2
- package/preview-card/portal/PreviewCardPortal.d.ts +4 -5
- package/preview-card/portal/PreviewCardPortalContext.js +1 -0
- package/preview-card/positioner/PreviewCardPositioner.d.ts +14 -2
- package/preview-card/positioner/PreviewCardPositioner.js +9 -3
- package/preview-card/positioner/PreviewCardPositionerContext.d.ts +1 -1
- package/preview-card/positioner/PreviewCardPositionerDataAttributes.js +2 -2
- package/preview-card/root/PreviewCardRoot.d.ts +9 -9
- package/preview-card/root/PreviewCardRoot.js +37 -11
- package/preview-card/store/PreviewCardStore.d.ts +255 -15
- package/preview-card/trigger/PreviewCardTrigger.d.ts +5 -5
- package/preview-card/trigger/PreviewCardTrigger.js +3 -3
- package/preview-card/viewport/PreviewCardViewport.d.ts +16 -4
- package/preview-card/viewport/PreviewCardViewport.js +14 -230
- package/progress/indicator/ProgressIndicator.d.ts +4 -2
- package/progress/label/ProgressLabel.d.ts +4 -2
- package/progress/label/ProgressLabel.js +4 -8
- package/progress/root/ProgressRoot.d.ts +10 -7
- package/progress/root/ProgressRoot.js +11 -13
- package/progress/root/ProgressRootContext.d.ts +2 -2
- package/progress/root/stateAttributesMapping.d.ts +2 -2
- package/progress/track/ProgressTrack.d.ts +4 -2
- package/progress/value/ProgressValue.d.ts +5 -3
- package/radio/indicator/RadioIndicator.d.ts +5 -2
- package/radio/indicator/RadioIndicator.js +4 -4
- package/radio/indicator/RadioIndicatorDataAttributes.d.ts +8 -0
- package/radio/indicator/RadioIndicatorDataAttributes.js +10 -1
- package/radio/root/RadioRoot.d.ts +39 -19
- package/radio/root/RadioRoot.js +49 -12
- package/radio-group/RadioGroup.d.ts +20 -14
- package/radio-group/RadioGroup.js +68 -61
- package/radio-group/RadioGroupContext.d.ts +9 -8
- package/radio-group/RadioGroupContext.js +1 -13
- package/scroll-area/content/ScrollAreaContent.d.ts +3 -3
- package/scroll-area/corner/ScrollAreaCorner.d.ts +1 -1
- package/scroll-area/root/ScrollAreaRoot.d.ts +27 -9
- package/scroll-area/root/ScrollAreaRoot.js +9 -5
- package/scroll-area/root/ScrollAreaRootContext.d.ts +4 -2
- package/scroll-area/root/ScrollAreaRootContext.js +1 -0
- package/scroll-area/root/ScrollAreaRootDataAttributes.d.ts +4 -0
- package/scroll-area/root/ScrollAreaRootDataAttributes.js +4 -0
- package/scroll-area/root/stateAttributes.d.ts +2 -2
- package/scroll-area/scrollbar/ScrollAreaScrollbar.d.ts +14 -8
- package/scroll-area/scrollbar/ScrollAreaScrollbar.js +6 -3
- package/scroll-area/scrollbar/ScrollAreaScrollbarContext.js +1 -0
- package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.d.ts +1 -1
- package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.js +1 -1
- package/scroll-area/thumb/ScrollAreaThumb.d.ts +5 -2
- package/scroll-area/thumb/ScrollAreaThumb.js +5 -3
- package/scroll-area/utils/scrollEdges.d.ts +2 -0
- package/scroll-area/utils/scrollEdges.js +29 -0
- package/scroll-area/viewport/ScrollAreaViewport.d.ts +3 -3
- package/scroll-area/viewport/ScrollAreaViewport.js +64 -42
- package/scroll-area/viewport/ScrollAreaViewportContext.js +1 -0
- package/scroll-area/viewport/ScrollAreaViewportDataAttributes.d.ts +4 -0
- package/scroll-area/viewport/ScrollAreaViewportDataAttributes.js +4 -0
- package/select/arrow/SelectArrow.d.ts +10 -1
- package/select/arrow/SelectArrow.js +2 -2
- package/select/arrow/SelectArrowDataAttributes.js +2 -2
- package/select/backdrop/SelectBackdrop.d.ts +7 -1
- package/select/backdrop/SelectBackdrop.js +2 -2
- package/select/group/SelectGroup.d.ts +1 -1
- package/select/group/SelectGroupContext.js +1 -0
- package/select/group-label/SelectGroupLabel.d.ts +1 -1
- package/select/icon/SelectIcon.d.ts +1 -1
- package/select/icon/SelectIcon.js +2 -2
- package/select/index.d.ts +1 -0
- package/select/index.parts.d.ts +1 -0
- package/select/index.parts.js +7 -0
- package/select/item/SelectItem.d.ts +3 -3
- package/select/item/SelectItem.js +23 -17
- package/select/item/SelectItemContext.js +1 -0
- package/select/item-indicator/SelectItemIndicator.d.ts +11 -3
- package/select/item-indicator/SelectItemIndicator.js +2 -2
- package/select/item-indicator/SelectItemIndicatorDataAttributes.d.ts +10 -0
- package/select/item-indicator/SelectItemIndicatorDataAttributes.js +18 -0
- package/select/item-text/SelectItemText.d.ts +1 -1
- package/select/label/SelectLabel.d.ts +16 -0
- package/select/label/SelectLabel.js +54 -0
- package/select/list/SelectList.d.ts +1 -1
- package/select/popup/SelectPopup.d.ts +24 -1
- package/select/popup/SelectPopup.js +90 -47
- package/select/popup/SelectPopupDataAttributes.js +2 -2
- package/select/portal/SelectPortal.d.ts +3 -4
- package/select/portal/SelectPortalContext.js +1 -0
- package/select/positioner/SelectPositioner.d.ts +15 -3
- package/select/positioner/SelectPositioner.js +13 -10
- package/select/positioner/SelectPositionerContext.d.ts +2 -2
- package/select/positioner/SelectPositionerContext.js +1 -0
- package/select/positioner/SelectPositionerDataAttributes.js +2 -2
- package/select/root/SelectRoot.d.ts +27 -21
- package/select/root/SelectRoot.js +7 -6
- package/select/root/SelectRootContext.d.ts +14 -14
- package/select/root/SelectRootContext.js +1 -0
- package/select/scroll-arrow/SelectScrollArrow.d.ts +14 -2
- package/select/scroll-arrow/SelectScrollArrow.js +2 -2
- package/select/scroll-down-arrow/SelectScrollDownArrow.d.ts +2 -2
- package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.js +1 -1
- package/select/scroll-up-arrow/SelectScrollUpArrow.d.ts +2 -2
- package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.js +1 -1
- package/select/store.d.ts +8 -5
- package/select/store.js +4 -3
- package/select/trigger/SelectTrigger.d.ts +7 -5
- package/select/trigger/SelectTrigger.js +7 -4
- package/select/value/SelectValue.d.ts +5 -1
- package/select/value/SelectValue.js +2 -2
- package/separator/Separator.d.ts +2 -2
- package/separator/Separator.js +2 -2
- package/slider/control/SliderControl.d.ts +4 -3
- package/slider/control/SliderControl.js +0 -2
- package/slider/index.d.ts +1 -0
- package/slider/index.parts.d.ts +1 -0
- package/slider/index.parts.js +7 -0
- package/slider/indicator/SliderIndicator.d.ts +4 -2
- package/slider/label/SliderLabel.d.ts +16 -0
- package/slider/label/SliderLabel.js +63 -0
- package/slider/root/SliderRoot.d.ts +26 -20
- package/slider/root/SliderRoot.js +11 -5
- package/slider/root/SliderRootContext.d.ts +6 -4
- package/slider/root/stateAttributesMapping.d.ts +2 -2
- package/slider/root/stateAttributesMapping.js +3 -1
- package/slider/thumb/SliderThumb.d.ts +10 -10
- package/slider/thumb/SliderThumb.js +3 -2
- package/slider/track/SliderTrack.d.ts +4 -2
- package/slider/utils/getPushedThumbValues.d.ts +1 -1
- package/slider/utils/resolveThumbCollision.d.ts +2 -2
- package/slider/value/SliderValue.d.ts +5 -3
- package/switch/root/SwitchRoot.d.ts +14 -14
- package/switch/root/SwitchRoot.js +11 -2
- package/switch/root/SwitchRootContext.d.ts +4 -4
- package/switch/root/SwitchRootContext.js +1 -0
- package/switch/stateAttributesMapping.d.ts +2 -2
- package/switch/thumb/SwitchThumb.d.ts +3 -3
- package/tabs/indicator/TabsIndicator.d.ts +13 -4
- package/tabs/indicator/TabsIndicator.js +7 -16
- package/tabs/indicator/TabsIndicatorCssVars.d.ts +1 -1
- package/tabs/indicator/TabsIndicatorCssVars.js +1 -1
- package/tabs/list/TabsList.d.ts +5 -5
- package/tabs/list/TabsList.js +50 -5
- package/tabs/list/TabsListContext.d.ts +2 -0
- package/tabs/panel/TabsPanel.d.ts +13 -5
- package/tabs/panel/TabsPanel.js +37 -10
- package/tabs/panel/TabsPanelDataAttributes.d.ts +8 -0
- package/tabs/panel/TabsPanelDataAttributes.js +10 -1
- package/tabs/root/TabsRoot.d.ts +11 -5
- package/tabs/root/TabsRootContext.d.ts +1 -1
- package/tabs/root/stateAttributesMapping.d.ts +2 -2
- package/tabs/tab/TabsTab.d.ts +8 -2
- package/tabs/tab/TabsTab.js +12 -3
- package/toast/action/ToastAction.d.ts +1 -1
- package/toast/action/ToastAction.js +2 -2
- package/toast/arrow/ToastArrow.d.ts +10 -1
- package/toast/arrow/ToastArrow.js +2 -2
- package/toast/arrow/ToastArrowDataAttributes.js +4 -3
- package/toast/close/ToastClose.d.ts +1 -1
- package/toast/close/ToastClose.js +5 -7
- package/toast/content/ToastContent.d.ts +1 -1
- package/toast/content/ToastContent.js +2 -2
- package/toast/createToastManager.d.ts +6 -6
- package/toast/createToastManager.js +3 -6
- package/toast/description/ToastDescription.d.ts +1 -1
- package/toast/description/ToastDescription.js +4 -6
- package/toast/portal/ToastPortal.d.ts +3 -4
- package/toast/positioner/ToastPositioner.d.ts +13 -4
- package/toast/positioner/ToastPositioner.js +5 -6
- package/toast/positioner/ToastPositionerDataAttributes.js +2 -2
- package/toast/provider/ToastProvider.d.ts +5 -3
- package/toast/provider/ToastProvider.js +25 -285
- package/toast/provider/ToastProviderContext.d.ts +4 -25
- package/toast/provider/ToastProviderContext.js +3 -2
- package/toast/root/ToastRoot.d.ts +20 -7
- package/toast/root/ToastRoot.js +21 -27
- package/toast/root/ToastRootContext.js +1 -0
- package/toast/store.d.ts +51 -0
- package/toast/store.js +391 -0
- package/toast/title/ToastTitle.d.ts +1 -1
- package/toast/title/ToastTitle.js +4 -6
- package/toast/useToastManager.d.ts +21 -22
- package/toast/useToastManager.js +8 -14
- package/toast/viewport/ToastViewport.d.ts +1 -1
- package/toast/viewport/ToastViewport.js +65 -91
- package/toggle/Toggle.d.ts +10 -8
- package/toggle/Toggle.js +13 -3
- package/toggle-group/ToggleGroup.d.ts +22 -10
- package/toggle-group/ToggleGroup.js +8 -5
- package/toggle-group/ToggleGroupContext.d.ts +10 -5
- package/toolbar/button/ToolbarButton.d.ts +11 -5
- package/toolbar/button/ToolbarButton.js +2 -2
- package/toolbar/group/ToolbarGroup.d.ts +5 -3
- package/toolbar/group/ToolbarGroup.js +2 -2
- package/toolbar/group/ToolbarGroupContext.js +1 -0
- package/toolbar/input/ToolbarInput.d.ts +12 -6
- package/toolbar/input/ToolbarInput.js +2 -2
- package/toolbar/link/ToolbarLink.d.ts +4 -1
- package/toolbar/link/ToolbarLink.js +2 -2
- package/toolbar/root/ToolbarRoot.d.ts +10 -4
- package/toolbar/root/ToolbarRoot.js +2 -2
- package/toolbar/separator/ToolbarSeparator.d.ts +4 -2
- package/tooltip/arrow/TooltipArrow.d.ts +14 -1
- package/tooltip/arrow/TooltipArrow.js +2 -2
- package/tooltip/arrow/TooltipArrowDataAttributes.js +2 -2
- package/tooltip/popup/TooltipPopup.d.ts +13 -1
- package/tooltip/popup/TooltipPopup.js +2 -2
- package/tooltip/popup/TooltipPopupDataAttributes.js +2 -2
- package/tooltip/portal/TooltipPortal.d.ts +4 -5
- package/tooltip/portal/TooltipPortalContext.js +1 -0
- package/tooltip/positioner/TooltipPositioner.d.ts +12 -3
- package/tooltip/positioner/TooltipPositionerContext.d.ts +1 -1
- package/tooltip/positioner/TooltipPositionerDataAttributes.js +2 -2
- package/tooltip/provider/TooltipProvider.d.ts +5 -3
- package/tooltip/provider/TooltipProviderContext.js +1 -0
- package/tooltip/root/TooltipRoot.d.ts +12 -12
- package/tooltip/root/TooltipRoot.js +24 -12
- package/tooltip/store/TooltipStore.d.ts +258 -16
- package/tooltip/store/TooltipStore.js +2 -0
- package/tooltip/trigger/TooltipTrigger.d.ts +17 -5
- package/tooltip/trigger/TooltipTrigger.js +17 -6
- package/tooltip/trigger/TooltipTriggerDataAttributes.d.ts +4 -0
- package/tooltip/trigger/TooltipTriggerDataAttributes.js +4 -0
- package/tooltip/viewport/TooltipViewport.d.ts +16 -4
- package/tooltip/viewport/TooltipViewport.js +14 -195
- package/types/index.d.ts +16 -1
- package/unstable-use-media-query/index.d.ts +7 -5
- package/use-button/useButton.d.ts +12 -9
- package/use-button/useButton.js +56 -22
- package/use-render/useRender.d.ts +14 -12
- package/utils/FloatingPortalLite.d.ts +4 -2
- package/utils/InternalBackdrop.d.ts +3 -1
- package/utils/closePart.d.ts +16 -0
- package/utils/closePart.js +48 -0
- package/utils/constants.d.ts +4 -0
- package/utils/constants.js +6 -2
- package/utils/createBaseUIEventDetails.d.ts +4 -1
- package/utils/formatNumber.d.ts +2 -1
- package/utils/formatNumber.js +12 -0
- package/utils/getDisabledMountTransitionStyles.d.ts +1 -1
- package/utils/getElementAtPoint.d.ts +1 -0
- package/utils/getElementAtPoint.js +9 -0
- package/utils/getPseudoElementBounds.js +1 -1
- package/utils/itemEquality.d.ts +5 -5
- package/utils/itemEquality.js +18 -18
- package/utils/popupStateMapping.d.ts +10 -0
- package/utils/popupStateMapping.js +10 -0
- package/utils/popups/popupStoreUtils.js +1 -0
- package/utils/popups/popupTriggerMap.d.ts +14 -1
- package/utils/popups/popupTriggerMap.js +27 -10
- package/utils/popups/store.d.ts +28 -18
- package/utils/popups/store.js +8 -5
- package/utils/reason-parts.d.ts +3 -0
- package/utils/reason-parts.js +4 -1
- package/utils/resolveAriaLabelledBy.d.ts +2 -0
- package/utils/resolveAriaLabelledBy.js +14 -0
- package/utils/resolveValueLabel.d.ts +4 -4
- package/utils/resolveValueLabel.js +7 -5
- package/utils/scrollable.d.ts +4 -0
- package/utils/scrollable.js +40 -0
- package/utils/types.d.ts +9 -22
- package/utils/useAnchorPositioning.d.ts +68 -33
- package/utils/useAnchorPositioning.js +32 -20
- package/utils/useFocusableWhenDisabled.d.ts +6 -9
- package/utils/useMixedToggleClickHandler.d.ts +3 -5
- package/utils/useMixedToggleClickHandler.js +1 -0
- package/utils/useOpenChangeComplete.d.ts +4 -6
- package/utils/useOpenInteractionType.d.ts +0 -1
- package/utils/useOpenInteractionType.js +7 -5
- package/utils/usePopupAutoResize.d.ts +3 -3
- package/utils/usePopupAutoResize.js +3 -3
- package/utils/usePopupViewport.d.ts +58 -0
- package/utils/usePopupViewport.js +256 -0
- package/utils/useRegisteredLabelId.d.ts +1 -0
- package/utils/useRegisteredLabelId.js +19 -0
- package/utils/useRenderElement.d.ts +11 -14
- package/utils/useRenderElement.js +43 -1
- package/utils/useSwipeDismiss.d.ts +107 -0
- package/utils/useSwipeDismiss.js +953 -0
- package/utils/useValueChanged.js +1 -0
- package/esm/navigation-menu/utils/setFixedSize.d.ts +0 -1
- package/esm/navigation-menu/utils/setFixedSize.js +0 -11
- package/esm/toast/viewport/ToastViewportContext.d.ts +0 -6
- package/esm/toast/viewport/ToastViewportContext.js +0 -11
- package/navigation-menu/utils/setFixedSize.d.ts +0 -1
- package/navigation-menu/utils/setFixedSize.js +0 -17
- package/toast/viewport/ToastViewportContext.d.ts +0 -6
- package/toast/viewport/ToastViewportContext.js +0 -20
|
@@ -18,6 +18,7 @@ var _useAnchorPositioning = require("../../utils/useAnchorPositioning");
|
|
|
18
18
|
var _popupStateMapping = require("../../utils/popupStateMapping");
|
|
19
19
|
var _ComboboxPortalContext = require("../portal/ComboboxPortalContext");
|
|
20
20
|
var _constants = require("../../utils/constants");
|
|
21
|
+
var _getDisabledMountTransitionStyles = require("../../utils/getDisabledMountTransitionStyles");
|
|
21
22
|
var _useRenderElement = require("../../utils/useRenderElement");
|
|
22
23
|
var _store2 = require("../store");
|
|
23
24
|
var _InternalBackdrop = require("../../utils/InternalBackdrop");
|
|
@@ -56,9 +57,11 @@ const ComboboxPositioner = exports.ComboboxPositioner = /*#__PURE__*/React.forwa
|
|
|
56
57
|
const openMethod = (0, _store.useStore)(store, _store2.selectors.openMethod);
|
|
57
58
|
const triggerElement = (0, _store.useStore)(store, _store2.selectors.triggerElement);
|
|
58
59
|
const inputElement = (0, _store.useStore)(store, _store2.selectors.inputElement);
|
|
60
|
+
const inputGroupElement = (0, _store.useStore)(store, _store2.selectors.inputGroupElement);
|
|
59
61
|
const inputInsidePopup = (0, _store.useStore)(store, _store2.selectors.inputInsidePopup);
|
|
62
|
+
const transitionStatus = (0, _store.useStore)(store, _store2.selectors.transitionStatus);
|
|
60
63
|
const empty = filteredItems.length === 0;
|
|
61
|
-
const resolvedAnchor = anchor ?? (inputInsidePopup ? triggerElement : inputElement);
|
|
64
|
+
const resolvedAnchor = anchor ?? (inputInsidePopup ? triggerElement : inputGroupElement ?? inputElement);
|
|
62
65
|
const positioning = (0, _useAnchorPositioning.useAnchorPositioning)({
|
|
63
66
|
anchor: resolvedAnchor,
|
|
64
67
|
floatingRootContext,
|
|
@@ -91,13 +94,13 @@ const ComboboxPositioner = exports.ComboboxPositioner = /*#__PURE__*/React.forwa
|
|
|
91
94
|
style
|
|
92
95
|
};
|
|
93
96
|
}, [open, mounted, positioning.positionerStyles]);
|
|
94
|
-
const state =
|
|
97
|
+
const state = {
|
|
95
98
|
open,
|
|
96
99
|
side: positioning.side,
|
|
97
100
|
align: positioning.align,
|
|
98
101
|
anchorHidden: positioning.anchorHidden,
|
|
99
102
|
empty
|
|
100
|
-
}
|
|
103
|
+
};
|
|
101
104
|
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
102
105
|
store.set('popupSide', positioning.side);
|
|
103
106
|
}, [store, positioning.side]);
|
|
@@ -116,14 +119,14 @@ const ComboboxPositioner = exports.ComboboxPositioner = /*#__PURE__*/React.forwa
|
|
|
116
119
|
const element = (0, _useRenderElement.useRenderElement)('div', componentProps, {
|
|
117
120
|
state,
|
|
118
121
|
ref: [forwardedRef, setPositionerElement],
|
|
119
|
-
props: [defaultProps, elementProps],
|
|
122
|
+
props: [defaultProps, (0, _getDisabledMountTransitionStyles.getDisabledMountTransitionStyles)(transitionStatus), elementProps],
|
|
120
123
|
stateAttributesMapping: _popupStateMapping.popupStateMapping
|
|
121
124
|
});
|
|
122
125
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_ComboboxPositionerContext.ComboboxPositionerContext.Provider, {
|
|
123
126
|
value: contextValue,
|
|
124
127
|
children: [mounted && modal && /*#__PURE__*/(0, _jsxRuntime.jsx)(_InternalBackdrop.InternalBackdrop, {
|
|
125
128
|
inert: (0, _inertValue.inertValue)(!open),
|
|
126
|
-
cutout: inputElement ?? triggerElement
|
|
129
|
+
cutout: inputGroupElement ?? inputElement ?? triggerElement
|
|
127
130
|
}), element]
|
|
128
131
|
});
|
|
129
132
|
});
|
|
@@ -22,12 +22,12 @@ let ComboboxPositionerDataAttributes = exports.ComboboxPositionerDataAttributes
|
|
|
22
22
|
* Indicates which side the popup is positioned relative to the trigger.
|
|
23
23
|
* @type {'top' | 'bottom' | 'left' | 'right' | 'inline-end' | 'inline-start'}
|
|
24
24
|
*/
|
|
25
|
-
ComboboxPositionerDataAttributes["side"] = "
|
|
25
|
+
ComboboxPositionerDataAttributes[ComboboxPositionerDataAttributes["side"] = _popupStateMapping.CommonPopupDataAttributes.side] = "side";
|
|
26
26
|
/**
|
|
27
27
|
* Indicates how the popup is aligned relative to specified side.
|
|
28
28
|
* @type {'start' | 'center' | 'end'}
|
|
29
29
|
*/
|
|
30
|
-
ComboboxPositionerDataAttributes["align"] = "
|
|
30
|
+
ComboboxPositionerDataAttributes[ComboboxPositionerDataAttributes["align"] = _popupStateMapping.CommonPopupDataAttributes.align] = "align";
|
|
31
31
|
/**
|
|
32
32
|
* Present when the items list is empty.
|
|
33
33
|
*/
|
|
@@ -5,11 +5,11 @@ import { Group } from "../../utils/resolveValueLabel.js";
|
|
|
5
5
|
/**
|
|
6
6
|
* @internal
|
|
7
7
|
*/
|
|
8
|
-
export declare function AriaCombobox<Value, Mode extends SelectionMode = 'none'>(props: Omit<
|
|
8
|
+
export declare function AriaCombobox<Value, Mode extends SelectionMode = 'none'>(props: Omit<AriaComboboxProps<Value, Mode>, 'items'> & {
|
|
9
9
|
items: readonly Group<any>[];
|
|
10
10
|
}): React.JSX.Element;
|
|
11
|
-
export declare function AriaCombobox<Value, Mode extends SelectionMode = 'none'>(props: Omit<
|
|
12
|
-
items?: readonly any[];
|
|
11
|
+
export declare function AriaCombobox<Value, Mode extends SelectionMode = 'none'>(props: Omit<AriaComboboxProps<Value, Mode>, 'items'> & {
|
|
12
|
+
items?: readonly any[] | undefined;
|
|
13
13
|
}): React.JSX.Element;
|
|
14
14
|
type SelectionMode = 'single' | 'multiple' | 'none';
|
|
15
15
|
type ComboboxItemValueType<ItemValue, Mode extends SelectionMode> = Mode extends 'multiple' ? ItemValue[] : ItemValue;
|
|
@@ -18,50 +18,50 @@ interface ComboboxRootProps<ItemValue> {
|
|
|
18
18
|
/**
|
|
19
19
|
* Identifies the field when a form is submitted.
|
|
20
20
|
*/
|
|
21
|
-
name?: string;
|
|
21
|
+
name?: string | undefined;
|
|
22
22
|
/**
|
|
23
23
|
* The id of the component.
|
|
24
24
|
*/
|
|
25
|
-
id?: string;
|
|
25
|
+
id?: string | undefined;
|
|
26
26
|
/**
|
|
27
27
|
* Whether the user must choose a value before submitting a form.
|
|
28
28
|
* @default false
|
|
29
29
|
*/
|
|
30
|
-
required?: boolean;
|
|
30
|
+
required?: boolean | undefined;
|
|
31
31
|
/**
|
|
32
32
|
* Whether the user should be unable to choose a different option from the popup.
|
|
33
33
|
* @default false
|
|
34
34
|
*/
|
|
35
|
-
readOnly?: boolean;
|
|
35
|
+
readOnly?: boolean | undefined;
|
|
36
36
|
/**
|
|
37
37
|
* Whether the component should ignore user interaction.
|
|
38
38
|
* @default false
|
|
39
39
|
*/
|
|
40
|
-
disabled?: boolean;
|
|
40
|
+
disabled?: boolean | undefined;
|
|
41
41
|
/**
|
|
42
42
|
* Whether the popup is initially open.
|
|
43
43
|
*
|
|
44
44
|
* To render a controlled popup, use the `open` prop instead.
|
|
45
45
|
* @default false
|
|
46
46
|
*/
|
|
47
|
-
defaultOpen?: boolean;
|
|
47
|
+
defaultOpen?: boolean | undefined;
|
|
48
48
|
/**
|
|
49
49
|
* Whether the popup is currently open. Use when controlled.
|
|
50
50
|
*/
|
|
51
|
-
open?: boolean;
|
|
51
|
+
open?: boolean | undefined;
|
|
52
52
|
/**
|
|
53
53
|
* Event handler called when the popup is opened or closed.
|
|
54
54
|
*/
|
|
55
|
-
onOpenChange?: (open: boolean, eventDetails: AriaCombobox.ChangeEventDetails) => void;
|
|
55
|
+
onOpenChange?: ((open: boolean, eventDetails: AriaCombobox.ChangeEventDetails) => void) | undefined;
|
|
56
56
|
/**
|
|
57
57
|
* Event handler called after any animations complete when the popup is opened or closed.
|
|
58
58
|
*/
|
|
59
|
-
onOpenChangeComplete?: (open: boolean) => void;
|
|
59
|
+
onOpenChangeComplete?: ((open: boolean) => void) | undefined;
|
|
60
60
|
/**
|
|
61
61
|
* Whether the popup opens when clicking the input.
|
|
62
62
|
* @default true
|
|
63
63
|
*/
|
|
64
|
-
openOnInputClick?: boolean;
|
|
64
|
+
openOnInputClick?: boolean | undefined;
|
|
65
65
|
/**
|
|
66
66
|
* Whether the first matching item is highlighted automatically.
|
|
67
67
|
* - `false`: do not highlight automatically.
|
|
@@ -69,46 +69,46 @@ interface ComboboxRootProps<ItemValue> {
|
|
|
69
69
|
* - `'always'`: highlight the first item as soon as the list opens.
|
|
70
70
|
* @default false
|
|
71
71
|
*/
|
|
72
|
-
autoHighlight?: boolean | 'always';
|
|
72
|
+
autoHighlight?: boolean | 'always' | undefined;
|
|
73
73
|
/**
|
|
74
74
|
* Whether the highlighted item should be preserved when the pointer leaves the list.
|
|
75
75
|
* @default false
|
|
76
76
|
*/
|
|
77
|
-
keepHighlight?: boolean;
|
|
77
|
+
keepHighlight?: boolean | undefined;
|
|
78
78
|
/**
|
|
79
79
|
* Whether moving the pointer over items should highlight them.
|
|
80
80
|
* Disabling this prop allows CSS `:hover` to be differentiated from the `:focus` (`data-highlighted`) state.
|
|
81
81
|
* @default true
|
|
82
82
|
*/
|
|
83
|
-
highlightItemOnHover?: boolean;
|
|
83
|
+
highlightItemOnHover?: boolean | undefined;
|
|
84
84
|
/**
|
|
85
85
|
* Whether to loop keyboard focus back to the input when the end of the list is reached while using the arrow keys. The first item can then be reached by pressing <kbd>ArrowDown</kbd> again from the input, or the last item can be reached by pressing <kbd>ArrowUp</kbd> from the input.
|
|
86
86
|
* The input is always included in the focus loop per [ARIA Authoring Practices](https://www.w3.org/WAI/ARIA/apg/patterns/combobox/).
|
|
87
87
|
* When disabled, focus does not move when on the last element and the user presses <kbd>ArrowDown</kbd>, or when on the first element and the user presses <kbd>ArrowUp</kbd>.
|
|
88
88
|
* @default true
|
|
89
89
|
*/
|
|
90
|
-
loopFocus?: boolean;
|
|
90
|
+
loopFocus?: boolean | undefined;
|
|
91
91
|
/**
|
|
92
92
|
* The input value of the combobox. Use when controlled.
|
|
93
93
|
*/
|
|
94
|
-
inputValue?: React.ComponentProps<'input'>['value'];
|
|
94
|
+
inputValue?: React.ComponentProps<'input'>['value'] | undefined;
|
|
95
95
|
/**
|
|
96
96
|
* Callback fired when the input value of the combobox changes.
|
|
97
97
|
*/
|
|
98
|
-
onInputValueChange?: (value: string, eventDetails: AriaCombobox.ChangeEventDetails) => void;
|
|
98
|
+
onInputValueChange?: ((value: string, eventDetails: AriaCombobox.ChangeEventDetails) => void) | undefined;
|
|
99
99
|
/**
|
|
100
100
|
* The uncontrolled input value when initially rendered.
|
|
101
101
|
*
|
|
102
102
|
* To render a controlled input, use the `inputValue` prop instead.
|
|
103
103
|
*/
|
|
104
|
-
defaultInputValue?: React.ComponentProps<'input'>['defaultValue'];
|
|
104
|
+
defaultInputValue?: React.ComponentProps<'input'>['defaultValue'] | undefined;
|
|
105
105
|
/**
|
|
106
106
|
* A ref to imperative actions.
|
|
107
107
|
* - `unmount`: When specified, the combobox will not be unmounted when closed.
|
|
108
108
|
* Instead, the `unmount` function must be called to unmount the combobox manually.
|
|
109
109
|
* Useful when the combobox's animation is controlled by an external library.
|
|
110
110
|
*/
|
|
111
|
-
actionsRef?: React.RefObject<AriaCombobox.Actions | null
|
|
111
|
+
actionsRef?: React.RefObject<AriaCombobox.Actions | null> | undefined;
|
|
112
112
|
/**
|
|
113
113
|
* Callback fired when an item is highlighted or unhighlighted.
|
|
114
114
|
* Receives the highlighted item value (or `undefined` if no item is highlighted) and event details with a `reason` property describing why the highlight changed.
|
|
@@ -117,69 +117,69 @@ interface ComboboxRootProps<ItemValue> {
|
|
|
117
117
|
* - `'pointer'`: the highlight changed due to pointer hovering.
|
|
118
118
|
* - `'none'`: the highlight changed programmatically.
|
|
119
119
|
*/
|
|
120
|
-
onItemHighlighted?: (itemValue: ItemValue | undefined, eventDetails: AriaCombobox.HighlightEventDetails) => void;
|
|
120
|
+
onItemHighlighted?: ((itemValue: ItemValue | undefined, eventDetails: AriaCombobox.HighlightEventDetails) => void) | undefined;
|
|
121
121
|
/**
|
|
122
122
|
* A ref to the hidden input element.
|
|
123
123
|
*/
|
|
124
|
-
inputRef?: React.Ref<HTMLInputElement
|
|
124
|
+
inputRef?: React.Ref<HTMLInputElement> | undefined;
|
|
125
125
|
/**
|
|
126
126
|
* Whether list items are presented in a grid layout.
|
|
127
127
|
* When enabled, arrow keys navigate across rows and columns inferred from DOM rows.
|
|
128
128
|
* @default false
|
|
129
129
|
*/
|
|
130
|
-
grid?: boolean;
|
|
130
|
+
grid?: boolean | undefined;
|
|
131
131
|
/**
|
|
132
132
|
* The items to be displayed in the list.
|
|
133
133
|
* Can be either a flat array of items or an array of groups with items.
|
|
134
134
|
*/
|
|
135
|
-
items?: readonly any[] | readonly Group<any>[];
|
|
135
|
+
items?: readonly any[] | readonly Group<any>[] | undefined;
|
|
136
136
|
/**
|
|
137
137
|
* Filtered items to display in the list.
|
|
138
138
|
* When provided, the list will use these items instead of filtering the `items` prop internally.
|
|
139
139
|
* Use when you want to control filtering logic externally with the `useFilter()` hook.
|
|
140
140
|
*/
|
|
141
|
-
filteredItems?: readonly any[] | readonly Group<any>[];
|
|
141
|
+
filteredItems?: readonly any[] | readonly Group<any>[] | undefined;
|
|
142
142
|
/**
|
|
143
143
|
* Filter function used to match items vs input query.
|
|
144
144
|
*/
|
|
145
|
-
filter?: null | ((itemValue: ItemValue, query: string, itemToString?: (itemValue: ItemValue) => string) => boolean);
|
|
145
|
+
filter?: null | ((itemValue: ItemValue, query: string, itemToString?: (itemValue: ItemValue) => string) => boolean) | undefined;
|
|
146
146
|
/**
|
|
147
147
|
* When the item values are objects (`<Combobox.Item value={object}>`), this function converts the object value to a string representation for display in the input.
|
|
148
148
|
* If the shape of the object is `{ value, label }`, the label will be used automatically without needing to specify this prop.
|
|
149
149
|
*/
|
|
150
|
-
itemToStringLabel?: (itemValue: ItemValue) => string;
|
|
150
|
+
itemToStringLabel?: ((itemValue: ItemValue) => string) | undefined;
|
|
151
151
|
/**
|
|
152
152
|
* When the item values are objects (`<Combobox.Item value={object}>`), this function converts the object value to a string representation for form submission.
|
|
153
153
|
* If the shape of the object is `{ value, label }`, the value will be used automatically without needing to specify this prop.
|
|
154
154
|
*/
|
|
155
|
-
itemToStringValue?: (itemValue: ItemValue) => string;
|
|
155
|
+
itemToStringValue?: ((itemValue: ItemValue) => string) | undefined;
|
|
156
156
|
/**
|
|
157
157
|
* Custom comparison logic used to determine if a combobox item value matches the current selected value. Useful when item values are objects without matching referentially.
|
|
158
158
|
* Defaults to `Object.is` comparison.
|
|
159
159
|
*/
|
|
160
|
-
isItemEqualToValue?: (itemValue: ItemValue,
|
|
160
|
+
isItemEqualToValue?: ((itemValue: ItemValue, value: ItemValue) => boolean) | undefined;
|
|
161
161
|
/**
|
|
162
162
|
* Whether the items are being externally virtualized.
|
|
163
163
|
* @default false
|
|
164
164
|
*/
|
|
165
|
-
virtualized?: boolean;
|
|
165
|
+
virtualized?: boolean | undefined;
|
|
166
166
|
/**
|
|
167
167
|
* Whether the list is rendered inline without using the popup.
|
|
168
168
|
* @default false
|
|
169
169
|
*/
|
|
170
|
-
inline?: boolean;
|
|
170
|
+
inline?: boolean | undefined;
|
|
171
171
|
/**
|
|
172
172
|
* Determines if the popup enters a modal state when open.
|
|
173
173
|
* - `true`: user interaction is limited to the popup: document page scroll is locked and pointer interactions on outside elements are disabled.
|
|
174
174
|
* - `false`: user interaction with the rest of the document is allowed.
|
|
175
175
|
* @default false
|
|
176
176
|
*/
|
|
177
|
-
modal?: boolean;
|
|
177
|
+
modal?: boolean | undefined;
|
|
178
178
|
/**
|
|
179
179
|
* The maximum number of items to display in the list.
|
|
180
180
|
* @default -1
|
|
181
181
|
*/
|
|
182
|
-
limit?: number;
|
|
182
|
+
limit?: number | undefined;
|
|
183
183
|
/**
|
|
184
184
|
* Controls how the component behaves with respect to list filtering and inline autocompletion.
|
|
185
185
|
* - `list` (default): items are dynamically filtered based on the input value. The input value does not change based on the active item.
|
|
@@ -188,23 +188,29 @@ interface ComboboxRootProps<ItemValue> {
|
|
|
188
188
|
* - `none`: items are static (not filtered), and the input value will not change based on the active item.
|
|
189
189
|
* @default 'list'
|
|
190
190
|
*/
|
|
191
|
-
autoComplete?: 'list' | 'both' | 'inline' | 'none';
|
|
191
|
+
autoComplete?: 'list' | 'both' | 'inline' | 'none' | undefined;
|
|
192
|
+
/**
|
|
193
|
+
* Provides a hint to the browser for autofill on the hidden input element.
|
|
194
|
+
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/autocomplete
|
|
195
|
+
*/
|
|
196
|
+
formAutoComplete?: string | undefined;
|
|
192
197
|
/**
|
|
193
198
|
* The locale to use for string comparison.
|
|
194
199
|
* Defaults to the user's runtime locale.
|
|
195
200
|
*/
|
|
196
|
-
locale?: Intl.LocalesArgument;
|
|
201
|
+
locale?: Intl.LocalesArgument | undefined;
|
|
197
202
|
/**
|
|
198
203
|
* Whether clicking an item should submit the owning form.
|
|
199
204
|
* @default false
|
|
200
205
|
*/
|
|
201
|
-
submitOnItemClick?: boolean;
|
|
206
|
+
submitOnItemClick?: boolean | undefined;
|
|
202
207
|
/**
|
|
203
208
|
* INTERNAL: When `selectionMode` is `none`, controls whether selecting an item fills the input.
|
|
204
209
|
*/
|
|
205
|
-
fillInputOnItemPress?: boolean;
|
|
210
|
+
fillInputOnItemPress?: boolean | undefined;
|
|
206
211
|
}
|
|
207
|
-
export
|
|
212
|
+
export interface AriaComboboxState {}
|
|
213
|
+
export type AriaComboboxProps<Value, Mode extends SelectionMode = 'none'> = ComboboxRootProps<Value> & {
|
|
208
214
|
/**
|
|
209
215
|
* How the combobox should remember the selected value.
|
|
210
216
|
* - `single`: Remembers the last selected value.
|
|
@@ -212,25 +218,25 @@ export type ComboboxRootConditionalProps<Value, Mode extends SelectionMode = 'no
|
|
|
212
218
|
* - `none`: Do not remember the selected value.
|
|
213
219
|
* @default 'none'
|
|
214
220
|
*/
|
|
215
|
-
selectionMode?: Mode;
|
|
221
|
+
selectionMode?: Mode | undefined;
|
|
216
222
|
/**
|
|
217
223
|
* The selected value of the combobox. Use when controlled.
|
|
218
224
|
*/
|
|
219
|
-
selectedValue?: ComboboxItemValueType<Value, Mode
|
|
225
|
+
selectedValue?: ComboboxItemValueType<Value, Mode> | undefined;
|
|
220
226
|
/**
|
|
221
227
|
* The uncontrolled selected value of the combobox when it's initially rendered.
|
|
222
228
|
*
|
|
223
229
|
* To render a controlled combobox, use the `selectedValue` prop instead.
|
|
224
230
|
*/
|
|
225
|
-
defaultSelectedValue?: ComboboxItemValueType<Value, Mode> | null;
|
|
231
|
+
defaultSelectedValue?: ComboboxItemValueType<Value, Mode> | null | undefined;
|
|
226
232
|
/**
|
|
227
233
|
* Callback fired when the selected value of the combobox changes.
|
|
228
234
|
*/
|
|
229
|
-
onSelectedValueChange?: (value: ComboboxItemValueType<Value, Mode>, eventDetails: AriaCombobox.ChangeEventDetails) => void;
|
|
235
|
+
onSelectedValueChange?: ((value: ComboboxItemValueType<Value, Mode>, eventDetails: AriaCombobox.ChangeEventDetails) => void) | undefined;
|
|
230
236
|
};
|
|
231
237
|
export declare namespace AriaCombobox {
|
|
232
|
-
type Props<Value, Mode extends SelectionMode = 'none'> =
|
|
233
|
-
|
|
238
|
+
type Props<Value, Mode extends SelectionMode = 'none'> = AriaComboboxProps<Value, Mode>;
|
|
239
|
+
type State = AriaComboboxState;
|
|
234
240
|
interface Actions {
|
|
235
241
|
unmount: () => void;
|
|
236
242
|
}
|
|
@@ -238,7 +244,7 @@ export declare namespace AriaCombobox {
|
|
|
238
244
|
type HighlightEventDetails = BaseUIGenericEventDetails<HighlightEventReason, {
|
|
239
245
|
index: number;
|
|
240
246
|
}>;
|
|
241
|
-
type ChangeEventReason = typeof REASONS.triggerPress | typeof REASONS.outsidePress | typeof REASONS.itemPress | typeof REASONS.escapeKey | typeof REASONS.listNavigation | typeof REASONS.focusOut | typeof REASONS.inputChange | typeof REASONS.inputClear | typeof REASONS.clearPress | typeof REASONS.chipRemovePress | typeof REASONS.none;
|
|
247
|
+
type ChangeEventReason = typeof REASONS.triggerPress | typeof REASONS.outsidePress | typeof REASONS.itemPress | typeof REASONS.closePress | typeof REASONS.escapeKey | typeof REASONS.listNavigation | typeof REASONS.focusOut | typeof REASONS.inputChange | typeof REASONS.inputClear | typeof REASONS.clearPress | typeof REASONS.chipRemovePress | typeof REASONS.none;
|
|
242
248
|
type ChangeEventDetails = BaseUIChangeEventDetails<ChangeEventReason>;
|
|
243
249
|
}
|
|
244
250
|
export {};
|
|
@@ -76,6 +76,7 @@ function AriaCombobox(props) {
|
|
|
76
76
|
modal = false,
|
|
77
77
|
limit = -1,
|
|
78
78
|
autoComplete = 'list',
|
|
79
|
+
formAutoComplete,
|
|
79
80
|
locale,
|
|
80
81
|
submitOnItemClick = false
|
|
81
82
|
} = props;
|
|
@@ -106,6 +107,8 @@ function AriaCombobox(props) {
|
|
|
106
107
|
const labelsRef = React.useRef([]);
|
|
107
108
|
const popupRef = React.useRef(null);
|
|
108
109
|
const inputRef = React.useRef(null);
|
|
110
|
+
const startDismissRef = React.useRef(null);
|
|
111
|
+
const endDismissRef = React.useRef(null);
|
|
109
112
|
const emptyRef = React.useRef(null);
|
|
110
113
|
const keyboardActiveRef = React.useRef(true);
|
|
111
114
|
const hadInputClearRef = React.useRef(false);
|
|
@@ -258,6 +261,7 @@ function AriaCombobox(props) {
|
|
|
258
261
|
}, [filteredItems, isGrouped]);
|
|
259
262
|
const store = (0, _useRefWithInit.useRefWithInit)(() => new _store.Store({
|
|
260
263
|
id,
|
|
264
|
+
labelId: undefined,
|
|
261
265
|
selectedValue,
|
|
262
266
|
open,
|
|
263
267
|
filter,
|
|
@@ -269,6 +273,8 @@ function AriaCombobox(props) {
|
|
|
269
273
|
popupRef,
|
|
270
274
|
emptyRef,
|
|
271
275
|
inputRef,
|
|
276
|
+
startDismissRef,
|
|
277
|
+
endDismissRef,
|
|
272
278
|
keyboardActiveRef,
|
|
273
279
|
chipsContainerRef,
|
|
274
280
|
clearRef,
|
|
@@ -302,6 +308,7 @@ function AriaCombobox(props) {
|
|
|
302
308
|
listElement: null,
|
|
303
309
|
triggerElement: null,
|
|
304
310
|
inputElement: null,
|
|
311
|
+
inputGroupElement: null,
|
|
305
312
|
popupSide: null,
|
|
306
313
|
openMethod: null,
|
|
307
314
|
inputInsidePopup: true,
|
|
@@ -335,6 +342,7 @@ function AriaCombobox(props) {
|
|
|
335
342
|
const listElement = (0, _store.useStore)(store, _store2.selectors.listElement);
|
|
336
343
|
const triggerElement = (0, _store.useStore)(store, _store2.selectors.triggerElement);
|
|
337
344
|
const inputElement = (0, _store.useStore)(store, _store2.selectors.inputElement);
|
|
345
|
+
const inputGroupElement = (0, _store.useStore)(store, _store2.selectors.inputGroupElement);
|
|
338
346
|
const inline = (0, _store.useStore)(store, _store2.selectors.inline);
|
|
339
347
|
const inputInsidePopup = (0, _store.useStore)(store, _store2.selectors.inputInsidePopup);
|
|
340
348
|
const triggerRef = (0, _useValueAsRef.useValueAsRef)(triggerElement);
|
|
@@ -345,8 +353,7 @@ function AriaCombobox(props) {
|
|
|
345
353
|
} = (0, _useTransitionStatus.useTransitionStatus)(open);
|
|
346
354
|
const {
|
|
347
355
|
openMethod,
|
|
348
|
-
triggerProps
|
|
349
|
-
reset: resetOpenInteractionType
|
|
356
|
+
triggerProps
|
|
350
357
|
} = (0, _useOpenInteractionType.useOpenInteractionType)(open);
|
|
351
358
|
(0, _useField.useField)({
|
|
352
359
|
id,
|
|
@@ -405,17 +412,24 @@ function AriaCombobox(props) {
|
|
|
405
412
|
// If user is typing, ensure we don't auto-highlight on open due to a race
|
|
406
413
|
// with the post-open effect that sets this flag.
|
|
407
414
|
if (eventDetails.reason === _reasons.REASONS.inputChange) {
|
|
408
|
-
const
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
hasQuery
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
415
|
+
const event = eventDetails.event;
|
|
416
|
+
const inputType = event.inputType;
|
|
417
|
+
// Treat composition commits as typed input; autofill may omit `inputType` or
|
|
418
|
+
// report `insertReplacementText`.
|
|
419
|
+
const isTypedInput = event.type === 'compositionend' || inputType != null && inputType !== '' && inputType !== 'insertReplacementText';
|
|
420
|
+
if (isTypedInput) {
|
|
421
|
+
const hasQuery = next.trim() !== '';
|
|
422
|
+
if (hasQuery) {
|
|
423
|
+
setQueryChangedAfterOpen(true);
|
|
424
|
+
}
|
|
425
|
+
// Defer index updates until after the filtered items have been derived to ensure
|
|
426
|
+
// `onItemHighlighted` receives the latest item.
|
|
427
|
+
pendingQueryHighlightRef.current = {
|
|
428
|
+
hasQuery
|
|
429
|
+
};
|
|
430
|
+
if (hasQuery && autoHighlightMode && store.state.activeIndex == null) {
|
|
431
|
+
store.set('activeIndex', 0);
|
|
432
|
+
}
|
|
419
433
|
}
|
|
420
434
|
}
|
|
421
435
|
setInputValueUnwrapped(next);
|
|
@@ -437,7 +451,9 @@ function AriaCombobox(props) {
|
|
|
437
451
|
}
|
|
438
452
|
if (!nextOpen && queryChangedAfterOpen) {
|
|
439
453
|
if (single) {
|
|
440
|
-
|
|
454
|
+
if (!inline) {
|
|
455
|
+
setCloseQuery(query);
|
|
456
|
+
}
|
|
441
457
|
// Avoid a flicker when closing the popup with an empty query.
|
|
442
458
|
if (query === '') {
|
|
443
459
|
setQueryChangedAfterOpen(false);
|
|
@@ -478,17 +494,17 @@ function AriaCombobox(props) {
|
|
|
478
494
|
if (shouldFillInput) {
|
|
479
495
|
setInputValue((0, _resolveValueLabel.stringifyAsLabel)(nextValue, itemToStringLabel), (0, _createBaseUIEventDetails.createChangeEventDetails)(eventDetails.reason, eventDetails.event));
|
|
480
496
|
}
|
|
481
|
-
if (single && nextValue != null && eventDetails.reason !== _reasons.REASONS.inputChange && queryChangedAfterOpen) {
|
|
497
|
+
if (single && nextValue != null && eventDetails.reason !== _reasons.REASONS.inputChange && queryChangedAfterOpen && !inline) {
|
|
482
498
|
setCloseQuery(query);
|
|
483
499
|
}
|
|
484
500
|
});
|
|
485
501
|
const handleSelection = (0, _useStableCallback.useStableCallback)((event, passedValue) => {
|
|
486
|
-
let
|
|
487
|
-
if (
|
|
502
|
+
let itemValue = passedValue;
|
|
503
|
+
if (itemValue === undefined) {
|
|
488
504
|
if (activeIndex === null) {
|
|
489
505
|
return;
|
|
490
506
|
}
|
|
491
|
-
|
|
507
|
+
itemValue = valuesRef.current[activeIndex];
|
|
492
508
|
}
|
|
493
509
|
const targetEl = (0, _utils.getTarget)(event);
|
|
494
510
|
const overrideEvent = selectionEventRef.current ?? event;
|
|
@@ -505,8 +521,8 @@ function AriaCombobox(props) {
|
|
|
505
521
|
}
|
|
506
522
|
if (multiple) {
|
|
507
523
|
const currentSelectedValue = Array.isArray(selectedValue) ? selectedValue : [];
|
|
508
|
-
const isCurrentlySelected = (0, _itemEquality.
|
|
509
|
-
const nextValue = isCurrentlySelected ? (0, _itemEquality.removeItem)(currentSelectedValue,
|
|
524
|
+
const isCurrentlySelected = (0, _itemEquality.selectedValueIncludes)(currentSelectedValue, itemValue, store.state.isItemEqualToValue);
|
|
525
|
+
const nextValue = isCurrentlySelected ? (0, _itemEquality.removeItem)(currentSelectedValue, itemValue, store.state.isItemEqualToValue) : [...currentSelectedValue, itemValue];
|
|
510
526
|
setSelectedValue(nextValue, eventDetails);
|
|
511
527
|
const wasFiltering = inputRef.current ? inputRef.current.value.trim() !== '' : false;
|
|
512
528
|
if (!wasFiltering) {
|
|
@@ -518,7 +534,7 @@ function AriaCombobox(props) {
|
|
|
518
534
|
setOpen(false, eventDetails);
|
|
519
535
|
}
|
|
520
536
|
} else {
|
|
521
|
-
setSelectedValue(
|
|
537
|
+
setSelectedValue(itemValue, eventDetails);
|
|
522
538
|
setOpen(false, eventDetails);
|
|
523
539
|
}
|
|
524
540
|
});
|
|
@@ -535,7 +551,6 @@ function AriaCombobox(props) {
|
|
|
535
551
|
setMounted(false);
|
|
536
552
|
onOpenChangeComplete?.(false);
|
|
537
553
|
setQueryChangedAfterOpen(false);
|
|
538
|
-
resetOpenInteractionType();
|
|
539
554
|
setCloseQuery(null);
|
|
540
555
|
if (selectionMode === 'none') {
|
|
541
556
|
setIndices({
|
|
@@ -665,46 +680,19 @@ function AriaCombobox(props) {
|
|
|
665
680
|
store.set('activeIndex', null);
|
|
666
681
|
return;
|
|
667
682
|
}
|
|
668
|
-
const
|
|
669
|
-
const
|
|
670
|
-
const isSameItem =
|
|
683
|
+
const itemValue = candidateItems[storeActiveIndex];
|
|
684
|
+
const previouslyHighlightedItemValue = lastHighlightRef.current.value;
|
|
685
|
+
const isSameItem = previouslyHighlightedItemValue !== _constants2.NO_ACTIVE_VALUE && (0, _itemEquality.compareItemEquality)(itemValue, previouslyHighlightedItemValue, store.state.isItemEqualToValue);
|
|
671
686
|
if (lastHighlightRef.current.index !== storeActiveIndex || !isSameItem) {
|
|
672
687
|
lastHighlightRef.current = {
|
|
673
|
-
value:
|
|
688
|
+
value: itemValue,
|
|
674
689
|
index: storeActiveIndex
|
|
675
690
|
};
|
|
676
|
-
store.state.onItemHighlighted(
|
|
691
|
+
store.state.onItemHighlighted(itemValue, (0, _createBaseUIEventDetails.createGenericEventDetails)(_reasons.REASONS.none, undefined, {
|
|
677
692
|
index: storeActiveIndex
|
|
678
693
|
}));
|
|
679
694
|
}
|
|
680
695
|
}, [activeIndex, autoHighlightMode, hasFilteredItemsProp, hasItems, flatFilteredItems, inline, open, store]);
|
|
681
|
-
|
|
682
|
-
// When the available items change, ensure the selected value(s) remain valid.
|
|
683
|
-
// - Single: if current selection is removed, fall back to defaultSelectedValue if it exists in the list; else null.
|
|
684
|
-
// - Multiple: drop any removed selections.
|
|
685
|
-
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
686
|
-
if (!items || selectionMode === 'none') {
|
|
687
|
-
return;
|
|
688
|
-
}
|
|
689
|
-
const registry = flatItems;
|
|
690
|
-
if (multiple) {
|
|
691
|
-
const current = Array.isArray(selectedValue) ? selectedValue : _constants.EMPTY_ARRAY;
|
|
692
|
-
const next = current.filter(v => (0, _itemEquality.itemIncludes)(registry, v, store.state.isItemEqualToValue));
|
|
693
|
-
if (next.length !== current.length) {
|
|
694
|
-
setSelectedValue(next, (0, _createBaseUIEventDetails.createChangeEventDetails)(_reasons.REASONS.none));
|
|
695
|
-
}
|
|
696
|
-
return;
|
|
697
|
-
}
|
|
698
|
-
const isStillPresent = selectedValue == null || (0, _itemEquality.itemIncludes)(registry, selectedValue, store.state.isItemEqualToValue);
|
|
699
|
-
if (isStillPresent) {
|
|
700
|
-
return;
|
|
701
|
-
}
|
|
702
|
-
let fallback = null;
|
|
703
|
-
if (defaultSelectedValue != null && (0, _itemEquality.itemIncludes)(registry, defaultSelectedValue, store.state.isItemEqualToValue)) {
|
|
704
|
-
fallback = defaultSelectedValue;
|
|
705
|
-
}
|
|
706
|
-
setSelectedValue(fallback, (0, _createBaseUIEventDetails.createChangeEventDetails)(_reasons.REASONS.none));
|
|
707
|
-
}, [items, flatItems, multiple, selectionMode, selectedValue, defaultSelectedValue, store, setSelectedValue]);
|
|
708
696
|
(0, _useIsoLayoutEffect.useIsoLayoutEffect)(() => {
|
|
709
697
|
if (selectionMode === 'none') {
|
|
710
698
|
setFilled(String(inputValue) !== '');
|
|
@@ -739,12 +727,6 @@ function AriaCombobox(props) {
|
|
|
739
727
|
} else {
|
|
740
728
|
validation.commit(selectedValue, true);
|
|
741
729
|
}
|
|
742
|
-
if (multiple && store.state.selectedIndex !== null && (!Array.isArray(selectedValue) || selectedValue.length === 0)) {
|
|
743
|
-
setIndices({
|
|
744
|
-
activeIndex: null,
|
|
745
|
-
selectedIndex: null
|
|
746
|
-
});
|
|
747
|
-
}
|
|
748
730
|
if (single && !hasInputValue && !inputInsidePopup) {
|
|
749
731
|
const nextInputValue = (0, _resolveValueLabel.stringifyAsLabel)(selectedValue, itemToStringLabel);
|
|
750
732
|
if (inputValue !== nextInputValue) {
|
|
@@ -789,8 +771,11 @@ function AriaCombobox(props) {
|
|
|
789
771
|
}
|
|
790
772
|
const role = React.useMemo(() => {
|
|
791
773
|
const isPlainInput = inputElement?.tagName === 'INPUT';
|
|
792
|
-
|
|
793
|
-
|
|
774
|
+
// During SSR and initial hydration, the input ref is not available yet.
|
|
775
|
+
// Assume an input-like control so combobox ARIA attributes are present.
|
|
776
|
+
const shouldTreatAsInput = inputElement == null || isPlainInput;
|
|
777
|
+
const shouldApplyAria = shouldTreatAsInput || open;
|
|
778
|
+
const reference = shouldTreatAsInput ? {
|
|
794
779
|
autoComplete: 'off',
|
|
795
780
|
spellCheck: 'false',
|
|
796
781
|
autoCorrect: 'off',
|
|
@@ -816,7 +801,8 @@ function AriaCombobox(props) {
|
|
|
816
801
|
toggle: false,
|
|
817
802
|
// Apply a small delay for touch to let iOS viewport centering settle.
|
|
818
803
|
// This avoids top-bottom flip flickers if the preferred position is "top" when first tapping.
|
|
819
|
-
touchOpenDelay: inputInsidePopup ? 0 : 50
|
|
804
|
+
touchOpenDelay: inputInsidePopup ? 0 : 50,
|
|
805
|
+
reason: _reasons.REASONS.inputPress
|
|
820
806
|
});
|
|
821
807
|
const dismiss = (0, _floatingUiReact.useDismiss)(floatingRootContext, {
|
|
822
808
|
enabled: !readOnly && !disabled && !inline,
|
|
@@ -831,7 +817,7 @@ function AriaCombobox(props) {
|
|
|
831
817
|
bubbles: inline ? true : undefined,
|
|
832
818
|
outsidePress(event) {
|
|
833
819
|
const target = (0, _utils.getTarget)(event);
|
|
834
|
-
return !(0, _utils.contains)(triggerElement, target) && !(0, _utils.contains)(clearRef.current, target) && !(0, _utils.contains)(chipsContainerRef.current, target);
|
|
820
|
+
return !(0, _utils.contains)(triggerElement, target) && !(0, _utils.contains)(clearRef.current, target) && !(0, _utils.contains)(chipsContainerRef.current, target) && !(0, _utils.contains)(inputGroupElement, target);
|
|
835
821
|
}
|
|
836
822
|
});
|
|
837
823
|
const listNavigation = (0, _floatingUiReact.useListNavigation)(floatingRootContext, {
|
|
@@ -928,9 +914,10 @@ function AriaCombobox(props) {
|
|
|
928
914
|
const hiddenInputRef = (0, _useMergedRefs.useMergedRefs)(inputRefProp, validation.inputRef);
|
|
929
915
|
const itemsContextValue = React.useMemo(() => ({
|
|
930
916
|
query,
|
|
917
|
+
hasItems,
|
|
931
918
|
filteredItems,
|
|
932
919
|
flatFilteredItems
|
|
933
|
-
}), [query, filteredItems, flatFilteredItems]);
|
|
920
|
+
}), [query, hasItems, filteredItems, flatFilteredItems]);
|
|
934
921
|
const serializedValue = React.useMemo(() => {
|
|
935
922
|
if (Array.isArray(fieldRawValue)) {
|
|
936
923
|
return '';
|
|
@@ -938,6 +925,7 @@ function AriaCombobox(props) {
|
|
|
938
925
|
return (0, _resolveValueLabel.stringifyAsValue)(fieldRawValue, itemToStringValue);
|
|
939
926
|
}, [fieldRawValue, itemToStringValue]);
|
|
940
927
|
const hasMultipleSelection = multiple && Array.isArray(selectedValue) && selectedValue.length > 0;
|
|
928
|
+
const hiddenInputName = multiple || selectionMode === 'none' ? undefined : name;
|
|
941
929
|
const hiddenInputs = React.useMemo(() => {
|
|
942
930
|
if (!multiple || !Array.isArray(selectedValue) || !name) {
|
|
943
931
|
return null;
|
|
@@ -969,7 +957,7 @@ function AriaCombobox(props) {
|
|
|
969
957
|
return;
|
|
970
958
|
}
|
|
971
959
|
const nextValue = event.target.value;
|
|
972
|
-
const details = (0, _createBaseUIEventDetails.createChangeEventDetails)(_reasons.REASONS.
|
|
960
|
+
const details = (0, _createBaseUIEventDetails.createChangeEventDetails)(_reasons.REASONS.none, event.nativeEvent);
|
|
973
961
|
function handleChange() {
|
|
974
962
|
// Browser autofill only writes a single scalar value.
|
|
975
963
|
if (multiple) {
|
|
@@ -1006,13 +994,15 @@ function AriaCombobox(props) {
|
|
|
1006
994
|
}
|
|
1007
995
|
}
|
|
1008
996
|
}),
|
|
1009
|
-
|
|
997
|
+
id: id && hiddenInputName == null ? `${id}-hidden-input` : undefined,
|
|
998
|
+
name: hiddenInputName,
|
|
999
|
+
autoComplete: formAutoComplete,
|
|
1010
1000
|
disabled: disabled,
|
|
1011
1001
|
required: required && !hasMultipleSelection,
|
|
1012
1002
|
readOnly: readOnly,
|
|
1013
1003
|
value: serializedValue,
|
|
1014
1004
|
ref: hiddenInputRef,
|
|
1015
|
-
style:
|
|
1005
|
+
style: hiddenInputName ? _visuallyHidden.visuallyHiddenInput : _visuallyHidden.visuallyHidden,
|
|
1016
1006
|
tabIndex: -1,
|
|
1017
1007
|
"aria-hidden": true
|
|
1018
1008
|
}), hiddenInputs]
|