@base-ui/react 1.6.0 → 1.8.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 +372 -0
- package/accordion/header/AccordionHeaderDataAttributes.d.mts +13 -15
- package/accordion/header/AccordionHeaderDataAttributes.d.ts +13 -15
- package/accordion/header/AccordionHeaderDataAttributes.js +14 -17
- package/accordion/header/AccordionHeaderDataAttributes.mjs +13 -16
- package/accordion/item/AccordionItem.js +6 -13
- package/accordion/item/AccordionItem.mjs +6 -13
- package/accordion/item/AccordionItemContext.d.mts +2 -1
- package/accordion/item/AccordionItemContext.d.ts +2 -1
- package/accordion/item/AccordionItemDataAttributes.d.mts +13 -15
- package/accordion/item/AccordionItemDataAttributes.d.ts +13 -15
- package/accordion/item/AccordionItemDataAttributes.js +14 -17
- package/accordion/item/AccordionItemDataAttributes.mjs +13 -16
- package/accordion/item/stateAttributesMapping.js +5 -6
- package/accordion/item/stateAttributesMapping.mjs +4 -6
- package/accordion/panel/AccordionPanel.js +15 -14
- package/accordion/panel/AccordionPanel.mjs +13 -12
- package/accordion/panel/AccordionPanelCssVars.d.mts +10 -12
- package/accordion/panel/AccordionPanelCssVars.d.ts +10 -12
- package/accordion/panel/AccordionPanelCssVars.js +11 -14
- package/accordion/panel/AccordionPanelCssVars.mjs +10 -13
- package/accordion/panel/AccordionPanelDataAttributes.d.mts +25 -27
- package/accordion/panel/AccordionPanelDataAttributes.d.ts +25 -27
- package/accordion/panel/AccordionPanelDataAttributes.js +26 -29
- package/accordion/panel/AccordionPanelDataAttributes.mjs +26 -28
- package/accordion/root/AccordionRoot.d.mts +1 -0
- package/accordion/root/AccordionRoot.d.ts +1 -0
- package/accordion/root/AccordionRoot.js +6 -16
- package/accordion/root/AccordionRoot.mjs +6 -16
- package/accordion/root/AccordionRootDataAttributes.d.mts +8 -10
- package/accordion/root/AccordionRootDataAttributes.d.ts +8 -10
- package/accordion/root/AccordionRootDataAttributes.js +9 -12
- package/accordion/root/AccordionRootDataAttributes.mjs +8 -11
- package/accordion/trigger/AccordionTrigger.js +7 -7
- package/accordion/trigger/AccordionTrigger.mjs +7 -7
- package/accordion/trigger/AccordionTriggerDataAttributes.d.mts +8 -10
- package/accordion/trigger/AccordionTriggerDataAttributes.d.ts +8 -10
- package/accordion/trigger/AccordionTriggerDataAttributes.js +9 -12
- package/accordion/trigger/AccordionTriggerDataAttributes.mjs +8 -11
- package/alert-dialog/handle.d.mts +6 -8
- package/alert-dialog/handle.d.ts +6 -8
- package/alert-dialog/handle.js +8 -19
- package/alert-dialog/handle.mjs +7 -17
- package/alert-dialog/root/AlertDialogRoot.d.mts +1 -1
- package/alert-dialog/root/AlertDialogRoot.d.ts +1 -1
- package/alert-dialog/root/AlertDialogRoot.js +1 -1
- package/alert-dialog/root/AlertDialogRoot.mjs +1 -1
- package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.d.mts +8 -10
- package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.d.ts +8 -10
- package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.js +9 -12
- package/alert-dialog/trigger/AlertDialogTriggerDataAttributes.mjs +9 -11
- package/autocomplete/clear/AutocompleteClearDataAttributes.d.mts +1 -1
- package/autocomplete/clear/AutocompleteClearDataAttributes.d.ts +1 -1
- package/autocomplete/clear/AutocompleteClearDataAttributes.js +11 -7
- package/autocomplete/clear/AutocompleteClearDataAttributes.mjs +1 -1
- package/autocomplete/index.d.mts +1 -0
- package/autocomplete/index.d.ts +1 -0
- package/autocomplete/index.parts.d.mts +1 -1
- package/autocomplete/index.parts.d.ts +1 -1
- package/autocomplete/index.parts.js +2 -2
- package/autocomplete/index.parts.mjs +1 -1
- package/autocomplete/input-group/AutocompleteInputGroup.d.mts +1 -1
- package/autocomplete/input-group/AutocompleteInputGroup.d.ts +1 -1
- package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.d.mts +49 -51
- package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.d.ts +49 -51
- package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.js +50 -53
- package/autocomplete/input-group/AutocompleteInputGroupDataAttributes.mjs +49 -52
- package/autocomplete/item/AutocompleteItemDataAttributes.d.mts +8 -10
- package/autocomplete/item/AutocompleteItemDataAttributes.d.ts +8 -10
- package/autocomplete/item/AutocompleteItemDataAttributes.js +11 -13
- package/autocomplete/item/AutocompleteItemDataAttributes.mjs +10 -12
- package/autocomplete/root/AutocompleteRoot.d.mts +29 -2
- package/autocomplete/root/AutocompleteRoot.d.ts +29 -2
- package/autocomplete/root/AutocompleteRoot.js +14 -33
- package/autocomplete/root/AutocompleteRoot.mjs +14 -33
- package/autocomplete/separator/AutocompleteSeparator.d.mts +26 -0
- package/autocomplete/separator/AutocompleteSeparator.d.ts +26 -0
- package/autocomplete/separator/AutocompleteSeparator.js +15 -0
- package/autocomplete/separator/AutocompleteSeparator.mjs +10 -0
- package/autocomplete/trigger/AutocompleteTrigger.d.mts +5 -1
- package/autocomplete/trigger/AutocompleteTrigger.d.ts +5 -1
- package/autocomplete/trigger/AutocompleteTriggerDataAttributes.d.mts +53 -55
- package/autocomplete/trigger/AutocompleteTriggerDataAttributes.d.ts +53 -55
- package/autocomplete/trigger/AutocompleteTriggerDataAttributes.js +54 -57
- package/autocomplete/trigger/AutocompleteTriggerDataAttributes.mjs +54 -56
- package/avatar/fallback/AvatarFallback.d.mts +2 -0
- package/avatar/fallback/AvatarFallback.d.ts +2 -0
- package/avatar/fallback/AvatarFallback.js +5 -5
- package/avatar/fallback/AvatarFallback.mjs +5 -5
- package/avatar/image/AvatarImage.d.mts +7 -1
- package/avatar/image/AvatarImage.d.ts +7 -1
- package/avatar/image/AvatarImage.js +75 -9
- package/avatar/image/AvatarImage.mjs +75 -9
- package/avatar/image/AvatarImageDataAttributes.d.mts +16 -10
- package/avatar/image/AvatarImageDataAttributes.d.ts +16 -10
- package/avatar/image/AvatarImageDataAttributes.js +17 -12
- package/avatar/image/AvatarImageDataAttributes.mjs +17 -11
- package/avatar/image/useImageLoadingStatus.d.mts +1 -1
- package/avatar/image/useImageLoadingStatus.d.ts +1 -1
- package/avatar/image/useImageLoadingStatus.js +8 -4
- package/avatar/image/useImageLoadingStatus.mjs +8 -4
- package/button/ButtonDataAttributes.d.mts +4 -6
- package/button/ButtonDataAttributes.d.ts +4 -6
- package/button/ButtonDataAttributes.js +5 -8
- package/button/ButtonDataAttributes.mjs +4 -7
- package/checkbox/indicator/CheckboxIndicator.js +5 -5
- package/checkbox/indicator/CheckboxIndicator.mjs +5 -5
- package/checkbox/indicator/CheckboxIndicatorDataAttributes.d.mts +56 -58
- package/checkbox/indicator/CheckboxIndicatorDataAttributes.d.ts +56 -58
- package/checkbox/indicator/CheckboxIndicatorDataAttributes.js +57 -60
- package/checkbox/indicator/CheckboxIndicatorDataAttributes.mjs +57 -59
- package/checkbox/root/CheckboxRoot.d.mts +2 -1
- package/checkbox/root/CheckboxRoot.d.ts +2 -1
- package/checkbox/root/CheckboxRoot.js +61 -65
- package/checkbox/root/CheckboxRoot.mjs +61 -65
- package/checkbox/root/CheckboxRootDataAttributes.d.mts +48 -50
- package/checkbox/root/CheckboxRootDataAttributes.d.ts +48 -50
- package/checkbox/root/CheckboxRootDataAttributes.js +49 -52
- package/checkbox/root/CheckboxRootDataAttributes.mjs +48 -51
- package/checkbox/utils/{useStateAttributesMapping.d.mts → getCheckboxStateAttributesMapping.d.mts} +1 -1
- package/checkbox/utils/{useStateAttributesMapping.d.ts → getCheckboxStateAttributesMapping.d.ts} +1 -1
- package/checkbox/utils/{useStateAttributesMapping.js → getCheckboxStateAttributesMapping.js} +7 -9
- package/checkbox/utils/{useStateAttributesMapping.mjs → getCheckboxStateAttributesMapping.mjs} +4 -7
- package/checkbox-group/CheckboxGroup.js +41 -23
- package/checkbox-group/CheckboxGroup.mjs +41 -23
- package/checkbox-group/CheckboxGroupContext.d.mts +8 -5
- package/checkbox-group/CheckboxGroupContext.d.ts +8 -5
- package/checkbox-group/CheckboxGroupContext.js +2 -8
- package/checkbox-group/CheckboxGroupContext.mjs +2 -7
- package/checkbox-group/CheckboxGroupDataAttributes.d.mts +4 -6
- package/checkbox-group/CheckboxGroupDataAttributes.d.ts +4 -6
- package/checkbox-group/CheckboxGroupDataAttributes.js +5 -8
- package/checkbox-group/CheckboxGroupDataAttributes.mjs +4 -7
- package/checkbox-group/useCheckboxGroupParent.d.mts +7 -7
- package/checkbox-group/useCheckboxGroupParent.d.ts +7 -7
- package/checkbox-group/useCheckboxGroupParent.js +41 -14
- package/checkbox-group/useCheckboxGroupParent.mjs +41 -14
- package/collapsible/panel/CollapsiblePanel.js +15 -14
- package/collapsible/panel/CollapsiblePanel.mjs +13 -12
- package/collapsible/panel/CollapsiblePanelCssVars.d.mts +10 -12
- package/collapsible/panel/CollapsiblePanelCssVars.d.ts +10 -12
- package/collapsible/panel/CollapsiblePanelCssVars.js +11 -14
- package/collapsible/panel/CollapsiblePanelCssVars.mjs +10 -13
- package/collapsible/panel/CollapsiblePanelDataAttributes.d.mts +16 -18
- package/collapsible/panel/CollapsiblePanelDataAttributes.d.ts +16 -18
- package/collapsible/panel/CollapsiblePanelDataAttributes.js +17 -20
- package/collapsible/panel/CollapsiblePanelDataAttributes.mjs +17 -19
- package/collapsible/panel/useCollapsiblePanel.js +31 -26
- package/collapsible/panel/useCollapsiblePanel.mjs +30 -25
- package/collapsible/root/CollapsibleRootDataAttributes.d.mts +16 -0
- package/collapsible/root/CollapsibleRootDataAttributes.d.ts +16 -0
- package/collapsible/root/CollapsibleRootDataAttributes.js +23 -0
- package/collapsible/root/CollapsibleRootDataAttributes.mjs +18 -0
- package/collapsible/root/useCollapsibleRoot.d.mts +2 -1
- package/collapsible/root/useCollapsibleRoot.d.ts +2 -1
- package/collapsible/root/useCollapsibleRoot.js +6 -4
- package/collapsible/root/useCollapsibleRoot.mjs +6 -4
- package/collapsible/trigger/CollapsibleTriggerDataAttributes.d.mts +4 -6
- package/collapsible/trigger/CollapsibleTriggerDataAttributes.d.ts +4 -6
- package/collapsible/trigger/CollapsibleTriggerDataAttributes.js +5 -8
- package/collapsible/trigger/CollapsibleTriggerDataAttributes.mjs +4 -7
- package/combobox/arrow/ComboboxArrow.d.mts +1 -1
- package/combobox/arrow/ComboboxArrow.d.ts +1 -1
- package/combobox/arrow/ComboboxArrow.js +1 -3
- package/combobox/arrow/ComboboxArrow.mjs +1 -3
- package/combobox/arrow/ComboboxArrowDataAttributes.d.mts +22 -24
- package/combobox/arrow/ComboboxArrowDataAttributes.d.ts +22 -24
- package/combobox/arrow/ComboboxArrowDataAttributes.js +23 -26
- package/combobox/arrow/ComboboxArrowDataAttributes.mjs +23 -25
- package/combobox/backdrop/ComboboxBackdrop.js +3 -5
- package/combobox/backdrop/ComboboxBackdrop.mjs +3 -5
- package/combobox/backdrop/ComboboxBackdropDataAttributes.d.mts +16 -18
- package/combobox/backdrop/ComboboxBackdropDataAttributes.d.ts +16 -18
- package/combobox/backdrop/ComboboxBackdropDataAttributes.js +17 -20
- package/combobox/backdrop/ComboboxBackdropDataAttributes.mjs +17 -19
- package/combobox/chip/ComboboxChip.js +11 -15
- package/combobox/chip/ComboboxChip.mjs +11 -15
- package/combobox/chip-remove/ComboboxChipRemove.js +9 -17
- package/combobox/chip-remove/ComboboxChipRemove.mjs +9 -17
- package/combobox/chips/ComboboxChips.js +4 -6
- package/combobox/chips/ComboboxChips.mjs +4 -6
- package/combobox/clear/ComboboxClear.js +18 -18
- package/combobox/clear/ComboboxClear.mjs +18 -18
- package/combobox/clear/ComboboxClearDataAttributes.d.mts +20 -22
- package/combobox/clear/ComboboxClearDataAttributes.d.ts +20 -22
- package/combobox/clear/ComboboxClearDataAttributes.js +21 -24
- package/combobox/clear/ComboboxClearDataAttributes.mjs +21 -23
- package/combobox/collection/ComboboxCollection.d.mts +1 -1
- package/combobox/collection/ComboboxCollection.d.ts +1 -1
- package/combobox/collection/ComboboxCollection.js +0 -3
- package/combobox/collection/ComboboxCollection.mjs +0 -3
- package/combobox/collection/GroupCollectionContext.d.mts +1 -1
- package/combobox/collection/GroupCollectionContext.d.ts +1 -1
- package/combobox/empty/ComboboxEmpty.js +1 -1
- package/combobox/empty/ComboboxEmpty.mjs +1 -1
- package/combobox/group/ComboboxGroup.js +6 -1
- package/combobox/group/ComboboxGroup.mjs +6 -1
- package/combobox/group-label/ComboboxGroupLabel.js +3 -2
- package/combobox/group-label/ComboboxGroupLabel.mjs +3 -2
- package/combobox/index.d.mts +4 -1
- package/combobox/index.d.ts +4 -1
- package/combobox/index.parts.d.mts +3 -2
- package/combobox/index.parts.d.ts +3 -2
- package/combobox/index.parts.js +10 -3
- package/combobox/index.parts.mjs +3 -2
- package/combobox/input/ComboboxInput.d.mts +1 -1
- package/combobox/input/ComboboxInput.d.ts +1 -1
- package/combobox/input/ComboboxInput.js +82 -123
- package/combobox/input/ComboboxInput.mjs +83 -124
- package/combobox/input/ComboboxInputDataAttributes.d.mts +53 -55
- package/combobox/input/ComboboxInputDataAttributes.d.ts +53 -55
- package/combobox/input/ComboboxInputDataAttributes.js +54 -57
- package/combobox/input/ComboboxInputDataAttributes.mjs +54 -56
- package/combobox/input-group/ComboboxInputGroup.d.mts +1 -1
- package/combobox/input-group/ComboboxInputGroup.d.ts +1 -1
- package/combobox/input-group/ComboboxInputGroup.js +10 -17
- package/combobox/input-group/ComboboxInputGroup.mjs +11 -18
- package/combobox/input-group/ComboboxInputGroupDataAttributes.d.mts +53 -55
- package/combobox/input-group/ComboboxInputGroupDataAttributes.d.ts +53 -55
- package/combobox/input-group/ComboboxInputGroupDataAttributes.js +54 -57
- package/combobox/input-group/ComboboxInputGroupDataAttributes.mjs +53 -56
- package/combobox/item/ComboboxItem.js +45 -45
- package/combobox/item/ComboboxItem.mjs +47 -47
- package/combobox/item/ComboboxItemDataAttributes.d.mts +12 -14
- package/combobox/item/ComboboxItemDataAttributes.d.ts +12 -14
- package/combobox/item/ComboboxItemDataAttributes.js +13 -16
- package/combobox/item/ComboboxItemDataAttributes.mjs +12 -15
- package/combobox/item-indicator/ComboboxItemIndicator.js +3 -2
- package/combobox/item-indicator/ComboboxItemIndicator.mjs +3 -2
- package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.mts +8 -10
- package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.d.ts +8 -10
- package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.js +9 -12
- package/combobox/item-indicator/ComboboxItemIndicatorDataAttributes.mjs +9 -11
- package/combobox/items/createItems.d.mts +53 -0
- package/combobox/items/createItems.d.ts +53 -0
- package/combobox/items/createItems.js +93 -0
- package/combobox/items/createItems.mjs +88 -0
- package/combobox/items/itemCollection.d.mts +39 -0
- package/combobox/items/itemCollection.d.ts +39 -0
- package/combobox/items/itemCollection.js +33 -0
- package/combobox/items/itemCollection.mjs +27 -0
- package/combobox/label/ComboboxLabel.js +6 -7
- package/combobox/label/ComboboxLabel.mjs +6 -7
- package/combobox/list/ComboboxList.js +17 -20
- package/combobox/list/ComboboxList.mjs +17 -20
- package/combobox/popup/ComboboxPopup.d.mts +1 -1
- package/combobox/popup/ComboboxPopup.d.ts +1 -1
- package/combobox/popup/ComboboxPopup.js +21 -25
- package/combobox/popup/ComboboxPopup.mjs +22 -26
- package/combobox/popup/ComboboxPopupDataAttributes.d.mts +34 -37
- package/combobox/popup/ComboboxPopupDataAttributes.d.ts +34 -37
- package/combobox/popup/ComboboxPopupDataAttributes.js +35 -39
- package/combobox/popup/ComboboxPopupDataAttributes.mjs +35 -38
- package/combobox/portal/ComboboxPortal.d.mts +6 -2
- package/combobox/portal/ComboboxPortal.d.ts +6 -2
- package/combobox/portal/ComboboxPortal.js +2 -4
- package/combobox/portal/ComboboxPortal.mjs +2 -4
- package/combobox/positioner/ComboboxPositioner.d.mts +1 -1
- package/combobox/positioner/ComboboxPositioner.d.ts +1 -1
- package/combobox/positioner/ComboboxPositioner.js +23 -25
- package/combobox/positioner/ComboboxPositioner.mjs +24 -26
- package/combobox/positioner/ComboboxPositionerContext.d.mts +1 -1
- package/combobox/positioner/ComboboxPositionerContext.d.ts +1 -1
- package/combobox/positioner/ComboboxPositionerCssVars.d.mts +25 -27
- package/combobox/positioner/ComboboxPositionerCssVars.d.ts +25 -27
- package/combobox/positioner/ComboboxPositionerCssVars.js +26 -29
- package/combobox/positioner/ComboboxPositionerCssVars.mjs +25 -28
- package/combobox/positioner/ComboboxPositionerDataAttributes.d.mts +26 -28
- package/combobox/positioner/ComboboxPositionerDataAttributes.d.ts +26 -28
- package/combobox/positioner/ComboboxPositionerDataAttributes.js +27 -30
- package/combobox/positioner/ComboboxPositionerDataAttributes.mjs +27 -29
- package/combobox/root/AriaCombobox.d.mts +37 -21
- package/combobox/root/AriaCombobox.d.ts +37 -21
- package/combobox/root/AriaCombobox.js +520 -317
- package/combobox/root/AriaCombobox.mjs +524 -322
- package/combobox/root/ComboboxRoot.d.mts +7 -3
- package/combobox/root/ComboboxRoot.d.ts +7 -3
- package/combobox/root/ComboboxRootContext.d.mts +5 -1
- package/combobox/root/ComboboxRootContext.d.ts +5 -1
- package/combobox/root/utils/index.d.mts +5 -2
- package/combobox/root/utils/index.d.ts +5 -2
- package/combobox/root/utils/index.js +4 -5
- package/combobox/root/utils/index.mjs +4 -5
- package/combobox/root/utils/useFilter.d.mts +2 -1
- package/combobox/root/utils/useFilter.d.ts +2 -1
- package/combobox/root/utils/useFilter.js +2 -3
- package/combobox/root/utils/useFilter.mjs +2 -3
- package/combobox/root/utils/useFilteredItems.d.mts +1 -0
- package/combobox/root/utils/useFilteredItems.d.ts +1 -0
- package/combobox/root/utils/useFilteredItems.js +1 -0
- package/combobox/root/utils/useFilteredItems.mjs +1 -0
- package/combobox/separator/ComboboxSeparator.d.mts +26 -0
- package/combobox/separator/ComboboxSeparator.d.ts +26 -0
- package/combobox/separator/ComboboxSeparator.js +15 -0
- package/combobox/separator/ComboboxSeparator.mjs +10 -0
- package/combobox/store.d.mts +58 -34
- package/combobox/store.d.ts +58 -34
- package/combobox/store.js +52 -48
- package/combobox/store.mjs +53 -48
- package/combobox/trigger/ComboboxTrigger.d.mts +5 -1
- package/combobox/trigger/ComboboxTrigger.d.ts +5 -1
- package/combobox/trigger/ComboboxTrigger.js +43 -63
- package/combobox/trigger/ComboboxTrigger.mjs +45 -64
- package/combobox/trigger/ComboboxTriggerDataAttributes.d.mts +57 -59
- package/combobox/trigger/ComboboxTriggerDataAttributes.d.ts +57 -59
- package/combobox/trigger/ComboboxTriggerDataAttributes.js +58 -61
- package/combobox/trigger/ComboboxTriggerDataAttributes.mjs +58 -60
- package/combobox/utils/ComboboxInternalDismissButton.d.mts +1 -5
- package/combobox/utils/ComboboxInternalDismissButton.d.ts +1 -5
- package/combobox/utils/ComboboxInternalDismissButton.js +1 -1
- package/combobox/utils/ComboboxInternalDismissButton.mjs +1 -1
- package/combobox/utils/handleInputPress.d.mts +1 -1
- package/combobox/utils/handleInputPress.d.ts +1 -1
- package/combobox/utils/handleInputPress.js +4 -4
- package/combobox/utils/handleInputPress.mjs +4 -4
- package/combobox/utils/parts.d.mts +24 -0
- package/combobox/utils/parts.d.ts +24 -0
- package/combobox/utils/parts.js +57 -0
- package/combobox/utils/parts.mjs +48 -0
- package/combobox/utils/stateAttributesMapping.d.mts +3 -3
- package/combobox/utils/stateAttributesMapping.d.ts +3 -3
- package/combobox/utils/stateAttributesMapping.js +4 -2
- package/combobox/utils/stateAttributesMapping.mjs +3 -2
- package/combobox/utils/useInitialLiveRegionTextMutation.js +1 -1
- package/combobox/utils/useInitialLiveRegionTextMutation.mjs +1 -1
- package/combobox/value/ComboboxValue.d.mts +5 -0
- package/combobox/value/ComboboxValue.d.ts +5 -0
- package/combobox/value/ComboboxValue.js +6 -8
- package/combobox/value/ComboboxValue.mjs +6 -8
- package/context-menu/index.d.mts +1 -1
- package/context-menu/index.d.ts +1 -1
- package/context-menu/index.parts.d.mts +1 -1
- package/context-menu/index.parts.d.ts +1 -1
- package/context-menu/index.parts.js +2 -2
- package/context-menu/index.parts.mjs +1 -1
- package/context-menu/positioner/ContextMenuPositioner.d.mts +95 -0
- package/context-menu/positioner/ContextMenuPositioner.d.ts +95 -0
- package/context-menu/positioner/ContextMenuPositioner.js +15 -0
- package/context-menu/positioner/ContextMenuPositioner.mjs +10 -0
- package/context-menu/positioner/ContextMenuPositionerCssVars.d.mts +1 -0
- package/context-menu/positioner/ContextMenuPositionerCssVars.d.ts +1 -0
- package/context-menu/positioner/ContextMenuPositionerCssVars.js +16 -0
- package/context-menu/positioner/ContextMenuPositionerCssVars.mjs +1 -0
- package/context-menu/positioner/ContextMenuPositionerDataAttributes.d.mts +1 -0
- package/context-menu/positioner/ContextMenuPositionerDataAttributes.d.ts +1 -0
- package/context-menu/positioner/ContextMenuPositionerDataAttributes.js +16 -0
- package/context-menu/positioner/ContextMenuPositionerDataAttributes.mjs +1 -0
- package/context-menu/root/ContextMenuRoot.d.mts +9 -2
- package/context-menu/root/ContextMenuRoot.d.ts +9 -2
- package/context-menu/trigger/ContextMenuTrigger.js +40 -22
- package/context-menu/trigger/ContextMenuTrigger.mjs +40 -22
- package/context-menu/trigger/ContextMenuTriggerDataAttributes.d.mts +8 -10
- package/context-menu/trigger/ContextMenuTriggerDataAttributes.d.ts +8 -10
- package/context-menu/trigger/ContextMenuTriggerDataAttributes.js +9 -12
- package/context-menu/trigger/ContextMenuTriggerDataAttributes.mjs +9 -11
- package/csp-provider/CSPProvider.d.mts +1 -1
- package/csp-provider/CSPProvider.d.ts +1 -1
- package/dialog/backdrop/DialogBackdrop.js +2 -10
- package/dialog/backdrop/DialogBackdrop.mjs +3 -10
- package/dialog/backdrop/DialogBackdropDataAttributes.d.mts +16 -18
- package/dialog/backdrop/DialogBackdropDataAttributes.d.ts +16 -18
- package/dialog/backdrop/DialogBackdropDataAttributes.js +17 -20
- package/dialog/backdrop/DialogBackdropDataAttributes.mjs +17 -19
- package/dialog/close/DialogClose.js +1 -3
- package/dialog/close/DialogClose.mjs +1 -3
- package/dialog/close/DialogCloseDataAttributes.d.mts +4 -6
- package/dialog/close/DialogCloseDataAttributes.d.ts +4 -6
- package/dialog/close/DialogCloseDataAttributes.js +5 -8
- package/dialog/close/DialogCloseDataAttributes.mjs +4 -7
- package/dialog/description/DialogDescription.js +1 -3
- package/dialog/description/DialogDescription.mjs +1 -3
- package/dialog/popup/DialogPopup.js +8 -23
- package/dialog/popup/DialogPopup.mjs +8 -22
- package/dialog/popup/DialogPopupCssVars.d.mts +5 -7
- package/dialog/popup/DialogPopupCssVars.d.ts +5 -7
- package/dialog/popup/DialogPopupCssVars.js +6 -9
- package/dialog/popup/DialogPopupCssVars.mjs +5 -8
- package/dialog/popup/DialogPopupDataAttributes.d.mts +24 -26
- package/dialog/popup/DialogPopupDataAttributes.d.ts +24 -26
- package/dialog/popup/DialogPopupDataAttributes.js +25 -28
- package/dialog/popup/DialogPopupDataAttributes.mjs +25 -27
- package/dialog/portal/DialogPortal.d.mts +3 -3
- package/dialog/portal/DialogPortal.d.ts +3 -3
- package/dialog/portal/DialogPortal.js +1 -3
- package/dialog/portal/DialogPortal.mjs +1 -3
- package/dialog/root/DialogRoot.d.mts +1 -1
- package/dialog/root/DialogRoot.d.ts +1 -1
- package/dialog/root/DialogRoot.js +6 -8
- package/dialog/root/DialogRoot.mjs +5 -6
- package/dialog/root/DialogRootContext.d.mts +3 -7
- package/dialog/root/DialogRootContext.d.ts +3 -7
- package/dialog/root/DialogRootContext.js +4 -6
- package/dialog/root/DialogRootContext.mjs +3 -5
- package/dialog/root/useDialogRoot.d.mts +0 -6
- package/dialog/root/useDialogRoot.d.ts +0 -6
- package/dialog/root/useDialogRoot.js +33 -46
- package/dialog/root/useDialogRoot.mjs +34 -46
- package/dialog/root/useRenderDialogRoot.d.mts +2 -1
- package/dialog/root/useRenderDialogRoot.d.ts +2 -1
- package/dialog/root/useRenderDialogRoot.js +34 -42
- package/dialog/root/useRenderDialogRoot.mjs +36 -44
- package/dialog/store/DialogHandle.d.mts +20 -16
- package/dialog/store/DialogHandle.d.ts +20 -16
- package/dialog/store/DialogHandle.js +32 -27
- package/dialog/store/DialogHandle.mjs +33 -28
- package/dialog/store/DialogStore.d.mts +14 -4
- package/dialog/store/DialogStore.d.ts +14 -4
- package/dialog/store/DialogStore.js +50 -40
- package/dialog/store/DialogStore.mjs +50 -41
- package/dialog/title/DialogTitle.js +1 -3
- package/dialog/title/DialogTitle.mjs +1 -3
- package/dialog/trigger/DialogTrigger.js +6 -6
- package/dialog/trigger/DialogTrigger.mjs +7 -7
- package/dialog/trigger/DialogTriggerDataAttributes.d.mts +8 -10
- package/dialog/trigger/DialogTriggerDataAttributes.d.ts +8 -10
- package/dialog/trigger/DialogTriggerDataAttributes.js +9 -12
- package/dialog/trigger/DialogTriggerDataAttributes.mjs +9 -11
- package/dialog/utils/stateAttributesMapping.d.mts +12 -0
- package/dialog/utils/stateAttributesMapping.d.ts +12 -0
- package/dialog/utils/stateAttributesMapping.js +23 -0
- package/dialog/utils/stateAttributesMapping.mjs +17 -0
- package/dialog/viewport/DialogViewport.js +3 -22
- package/dialog/viewport/DialogViewport.mjs +3 -21
- package/dialog/viewport/DialogViewportDataAttributes.d.mts +24 -26
- package/dialog/viewport/DialogViewportDataAttributes.d.ts +24 -26
- package/dialog/viewport/DialogViewportDataAttributes.js +25 -28
- package/dialog/viewport/DialogViewportDataAttributes.mjs +25 -27
- package/docs/index.md +3 -1
- package/docs/react/components/accordion.md +327 -6
- package/docs/react/components/alert-dialog.md +401 -37
- package/docs/react/components/autocomplete.md +204 -143
- package/docs/react/components/avatar.md +64 -11
- package/docs/react/components/button.md +7 -3
- package/docs/react/components/checkbox.md +21 -21
- package/docs/react/components/collapsible.md +28 -1
- package/docs/react/components/combobox.md +1041 -249
- package/docs/react/components/context-menu.md +517 -132
- package/docs/react/components/dialog.md +1031 -312
- package/docs/react/components/drawer.md +27 -23
- package/docs/react/components/field.md +25 -25
- package/docs/react/components/form.md +13 -11
- package/docs/react/components/menu.md +164 -143
- package/docs/react/components/menubar.md +41 -41
- package/docs/react/components/navigation-menu.md +61 -71
- package/docs/react/components/number-field.md +6 -6
- package/docs/react/components/otp-field.md +20 -18
- package/docs/react/components/popover.md +52 -36
- package/docs/react/components/preview-card.md +61 -51
- package/docs/react/components/progress.md +3 -3
- package/docs/react/components/radio.md +1 -1
- package/docs/react/components/select.md +64 -62
- package/docs/react/components/slider.md +436 -71
- package/docs/react/components/tabs.md +276 -5
- package/docs/react/components/toast.md +40 -30
- package/docs/react/components/toolbar.md +27 -23
- package/docs/react/components/tooltip.md +30 -17
- package/docs/react/handbook/animation.md +3 -3
- package/docs/react/handbook/forms.md +3 -3
- package/docs/react/handbook/styling.md +1 -1
- package/docs/react/overview/about.md +10 -7
- package/docs/react/overview/community.md +5 -7
- package/docs/react/overview/quick-start.md +3 -3
- package/docs/react/overview/releases/v1-7-0.md +236 -0
- package/docs/react/overview/releases/v1-8-0.md +148 -0
- package/docs/react/overview/releases.md +20 -2
- package/docs/react/utils/direction-provider.md +5 -2
- package/docs/react/utils/use-render.md +4 -362
- package/drawer/backdrop/DrawerBackdrop.js +6 -14
- package/drawer/backdrop/DrawerBackdrop.mjs +5 -12
- package/drawer/backdrop/DrawerBackdropCssVars.d.mts +5 -7
- package/drawer/backdrop/DrawerBackdropCssVars.d.ts +5 -7
- package/drawer/backdrop/DrawerBackdropCssVars.js +6 -9
- package/drawer/backdrop/DrawerBackdropCssVars.mjs +5 -8
- package/drawer/backdrop/DrawerBackdropDataAttributes.d.mts +16 -18
- package/drawer/backdrop/DrawerBackdropDataAttributes.d.ts +16 -18
- package/drawer/backdrop/DrawerBackdropDataAttributes.js +17 -20
- package/drawer/backdrop/DrawerBackdropDataAttributes.mjs +17 -19
- package/drawer/content/DrawerContent.js +2 -2
- package/drawer/content/DrawerContent.mjs +1 -1
- package/drawer/handle.d.mts +16 -0
- package/drawer/handle.d.ts +16 -0
- package/drawer/handle.js +25 -0
- package/drawer/handle.mjs +18 -0
- package/drawer/indent/DrawerIndent.js +10 -10
- package/drawer/indent/DrawerIndent.mjs +3 -3
- package/drawer/indent-background/DrawerIndentBackground.js +1 -1
- package/drawer/indent-background/DrawerIndentBackground.mjs +1 -1
- package/drawer/index.parts.d.mts +1 -1
- package/drawer/index.parts.d.ts +1 -1
- package/drawer/index.parts.js +3 -3
- package/drawer/index.parts.mjs +1 -1
- package/drawer/popup/DrawerPopup.js +31 -33
- package/drawer/popup/DrawerPopup.mjs +14 -16
- package/drawer/popup/DrawerPopupCssVars.d.mts +35 -37
- package/drawer/popup/DrawerPopupCssVars.d.ts +35 -37
- package/drawer/popup/DrawerPopupCssVars.js +36 -39
- package/drawer/popup/DrawerPopupCssVars.mjs +35 -38
- package/drawer/popup/DrawerPopupDataAttributes.d.mts +41 -43
- package/drawer/popup/DrawerPopupDataAttributes.d.ts +41 -43
- package/drawer/popup/DrawerPopupDataAttributes.js +42 -45
- package/drawer/popup/DrawerPopupDataAttributes.mjs +42 -44
- package/drawer/portal/DrawerPortal.d.mts +3 -3
- package/drawer/portal/DrawerPortal.d.ts +3 -3
- package/drawer/provider/DrawerProvider.d.mts +1 -1
- package/drawer/provider/DrawerProvider.d.ts +1 -1
- package/drawer/provider/DrawerProvider.js +13 -24
- package/drawer/provider/DrawerProvider.mjs +13 -24
- package/drawer/provider/DrawerProviderContext.d.mts +3 -4
- package/drawer/provider/DrawerProviderContext.d.ts +3 -4
- package/drawer/provider/DrawerProviderContext.js +2 -8
- package/drawer/provider/DrawerProviderContext.mjs +2 -7
- package/drawer/root/DrawerRoot.d.mts +3 -3
- package/drawer/root/DrawerRoot.d.ts +3 -3
- package/drawer/root/DrawerRoot.js +30 -34
- package/drawer/root/DrawerRoot.mjs +31 -35
- package/drawer/root/DrawerRootContext.d.mts +7 -2
- package/drawer/root/DrawerRootContext.d.ts +7 -2
- package/drawer/root/DrawerRootContext.js +1 -1
- package/drawer/root/DrawerRootContext.mjs +1 -1
- package/drawer/root/useDrawerSnapPoints.d.mts +6 -2
- package/drawer/root/useDrawerSnapPoints.d.ts +6 -2
- package/drawer/root/useDrawerSnapPoints.js +17 -25
- package/drawer/root/useDrawerSnapPoints.mjs +16 -25
- package/drawer/swipe-area/DrawerSwipeArea.js +116 -74
- package/drawer/swipe-area/DrawerSwipeArea.mjs +96 -54
- package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.mts +21 -23
- package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.d.ts +21 -23
- package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.js +22 -25
- package/drawer/swipe-area/DrawerSwipeAreaDataAttributes.mjs +22 -24
- package/drawer/trigger/DrawerTrigger.d.mts +1 -1
- package/drawer/trigger/DrawerTrigger.d.ts +1 -1
- package/drawer/viewport/DrawerViewport.js +234 -365
- package/drawer/viewport/DrawerViewport.mjs +228 -359
- package/drawer/viewport/DrawerViewportContext.d.mts +1 -2
- package/drawer/viewport/DrawerViewportContext.d.ts +1 -2
- package/drawer/viewport/DrawerViewportContext.js +2 -8
- package/drawer/viewport/DrawerViewportContext.mjs +2 -7
- package/drawer/viewport/DrawerViewportCssVars.d.mts +6 -8
- package/drawer/viewport/DrawerViewportCssVars.d.ts +6 -8
- package/drawer/viewport/DrawerViewportCssVars.js +7 -10
- package/drawer/viewport/DrawerViewportCssVars.mjs +6 -9
- package/drawer/viewport/DrawerViewportDataAttributes.d.mts +20 -22
- package/drawer/viewport/DrawerViewportDataAttributes.d.ts +20 -22
- package/drawer/viewport/DrawerViewportDataAttributes.js +21 -24
- package/drawer/viewport/DrawerViewportDataAttributes.mjs +21 -23
- package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.d.mts +1 -1
- package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.d.ts +1 -1
- package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.js +254 -64
- package/drawer/virtual-keyboard-provider/DrawerVirtualKeyboardProvider.mjs +252 -62
- package/field/control/FieldControl.js +69 -22
- package/field/control/FieldControl.mjs +69 -22
- package/field/control/FieldControlDataAttributes.d.mts +28 -30
- package/field/control/FieldControlDataAttributes.d.ts +28 -30
- package/field/control/FieldControlDataAttributes.js +29 -32
- package/field/control/FieldControlDataAttributes.mjs +28 -31
- package/field/description/FieldDescriptionDataAttributes.d.mts +28 -30
- package/field/description/FieldDescriptionDataAttributes.d.ts +28 -30
- package/field/description/FieldDescriptionDataAttributes.js +29 -32
- package/field/description/FieldDescriptionDataAttributes.mjs +28 -31
- package/field/error/FieldError.js +2 -2
- package/field/error/FieldError.mjs +2 -2
- package/field/error/FieldErrorDataAttributes.d.mts +36 -38
- package/field/error/FieldErrorDataAttributes.d.ts +36 -38
- package/field/error/FieldErrorDataAttributes.js +37 -40
- package/field/error/FieldErrorDataAttributes.mjs +37 -39
- package/field/item/FieldItem.js +0 -5
- package/field/item/FieldItem.mjs +0 -5
- package/field/item/FieldItemDataAttributes.d.mts +28 -30
- package/field/item/FieldItemDataAttributes.d.ts +28 -30
- package/field/item/FieldItemDataAttributes.js +29 -32
- package/field/item/FieldItemDataAttributes.mjs +28 -31
- package/field/label/FieldLabelDataAttributes.d.mts +28 -30
- package/field/label/FieldLabelDataAttributes.d.ts +28 -30
- package/field/label/FieldLabelDataAttributes.js +29 -32
- package/field/label/FieldLabelDataAttributes.mjs +28 -31
- package/field/root/FieldRoot.d.mts +3 -2
- package/field/root/FieldRoot.d.ts +3 -2
- package/field/root/FieldRoot.js +12 -17
- package/field/root/FieldRoot.mjs +12 -17
- package/field/root/FieldRootDataAttributes.d.mts +28 -30
- package/field/root/FieldRootDataAttributes.d.ts +28 -30
- package/field/root/FieldRootDataAttributes.js +29 -32
- package/field/root/FieldRootDataAttributes.mjs +28 -31
- package/field/root/useFieldValidation.d.mts +20 -4
- package/field/root/useFieldValidation.d.ts +20 -4
- package/field/root/useFieldValidation.js +159 -128
- package/field/root/useFieldValidation.mjs +158 -128
- package/field/validity/FieldValidity.js +4 -0
- package/field/validity/FieldValidity.mjs +4 -0
- package/fieldset/legend/FieldsetLegend.js +3 -10
- package/fieldset/legend/FieldsetLegend.mjs +4 -10
- package/fieldset/root/FieldsetRootContext.d.mts +1 -1
- package/fieldset/root/FieldsetRootContext.d.ts +1 -1
- package/floating-ui-react/components/FloatingDelayGroup.d.mts +2 -41
- package/floating-ui-react/components/FloatingDelayGroup.d.ts +2 -41
- package/floating-ui-react/components/FloatingDelayGroup.js +2 -10
- package/floating-ui-react/components/FloatingDelayGroup.mjs +2 -10
- package/floating-ui-react/components/FloatingFocusManager.d.mts +1 -7
- package/floating-ui-react/components/FloatingFocusManager.d.ts +1 -7
- package/floating-ui-react/components/FloatingFocusManager.js +41 -27
- package/floating-ui-react/components/FloatingFocusManager.mjs +41 -27
- package/floating-ui-react/components/FloatingPortal.d.mts +12 -14
- package/floating-ui-react/components/FloatingPortal.d.ts +12 -14
- package/floating-ui-react/components/FloatingPortal.js +13 -13
- package/floating-ui-react/components/FloatingPortal.mjs +13 -13
- package/floating-ui-react/components/FloatingRootStore.js +6 -6
- package/floating-ui-react/components/FloatingRootStore.mjs +7 -7
- package/floating-ui-react/components/FloatingTree.d.mts +1 -19
- package/floating-ui-react/components/FloatingTree.d.ts +1 -19
- package/floating-ui-react/hooks/useClick.js +5 -1
- package/floating-ui-react/hooks/useClick.mjs +6 -2
- package/floating-ui-react/hooks/useDismiss.d.mts +1 -1
- package/floating-ui-react/hooks/useDismiss.d.ts +1 -1
- package/floating-ui-react/hooks/useDismiss.js +67 -12
- package/floating-ui-react/hooks/useDismiss.mjs +68 -13
- package/floating-ui-react/hooks/useFloating.d.mts +9 -1
- package/floating-ui-react/hooks/useFloating.d.ts +9 -1
- package/floating-ui-react/hooks/useFloating.js +14 -2
- package/floating-ui-react/hooks/useFloating.mjs +13 -2
- package/floating-ui-react/hooks/useFloatingRootContext.js +0 -2
- package/floating-ui-react/hooks/useFloatingRootContext.mjs +0 -2
- package/floating-ui-react/hooks/useFocus.js +1 -0
- package/floating-ui-react/hooks/useFocus.mjs +1 -0
- package/floating-ui-react/hooks/useHoverReferenceInteraction.d.mts +12 -0
- package/floating-ui-react/hooks/useHoverReferenceInteraction.d.ts +12 -0
- package/floating-ui-react/hooks/useHoverReferenceInteraction.js +17 -5
- package/floating-ui-react/hooks/useHoverReferenceInteraction.mjs +17 -5
- package/floating-ui-react/hooks/useListNavigation.js +16 -3
- package/floating-ui-react/hooks/useListNavigation.mjs +16 -3
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.d.mts +9 -4
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.d.ts +9 -4
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.js +5 -0
- package/floating-ui-react/hooks/useSyncedFloatingRootContext.mjs +6 -0
- package/floating-ui-react/hooks/useTypeahead.d.mts +5 -5
- package/floating-ui-react/hooks/useTypeahead.d.ts +5 -5
- package/floating-ui-react/hooks/useTypeahead.js +9 -14
- package/floating-ui-react/hooks/useTypeahead.mjs +9 -14
- package/floating-ui-react/index.d.mts +0 -4
- package/floating-ui-react/index.d.ts +0 -4
- package/floating-ui-react/index.mjs +12 -0
- package/floating-ui-react/middleware/arrow.js +11 -4
- package/floating-ui-react/middleware/arrow.mjs +11 -4
- package/floating-ui-react/utils/composite.js +7 -0
- package/floating-ui-react/utils/composite.mjs +7 -0
- package/floating-ui-react/utils/element.d.mts +1 -1
- package/floating-ui-react/utils/element.d.ts +1 -1
- package/floating-ui-react/utils/element.js +5 -3
- package/floating-ui-react/utils/element.mjs +4 -3
- package/form/Form.d.mts +1 -1
- package/form/Form.d.ts +1 -1
- package/form/Form.js +74 -53
- package/form/Form.mjs +74 -53
- package/index.js +1 -1
- package/index.mjs +1 -1
- package/input/InputDataAttributes.d.mts +28 -30
- package/input/InputDataAttributes.d.ts +28 -30
- package/input/InputDataAttributes.js +29 -32
- package/input/InputDataAttributes.mjs +28 -31
- package/internals/PrehydrationScript.d.mts +37 -0
- package/internals/PrehydrationScript.d.ts +37 -0
- package/internals/PrehydrationScript.js +59 -0
- package/internals/PrehydrationScript.mjs +54 -0
- package/internals/TransitionStatusDataAttributes.d.mts +8 -0
- package/internals/TransitionStatusDataAttributes.d.ts +8 -0
- package/internals/TransitionStatusDataAttributes.js +15 -0
- package/internals/TransitionStatusDataAttributes.mjs +9 -0
- package/internals/composite/composite.d.mts +2 -10
- package/internals/composite/composite.d.ts +2 -10
- package/internals/composite/composite.js +4 -12
- package/internals/composite/composite.mjs +3 -11
- package/internals/composite/index.d.mts +2 -1
- package/internals/composite/index.d.ts +2 -1
- package/internals/composite/index.js +11 -4
- package/internals/composite/index.mjs +1 -1
- package/internals/composite/item/CompositeItem.d.mts +0 -3
- package/internals/composite/item/CompositeItem.d.ts +0 -3
- package/internals/composite/item/CompositeItem.js +2 -4
- package/internals/composite/item/CompositeItem.mjs +2 -4
- package/internals/composite/item/useCompositeItem.d.mts +1 -1
- package/internals/composite/item/useCompositeItem.d.ts +1 -1
- package/internals/composite/list/CompositeList.d.mts +4 -4
- package/internals/composite/list/CompositeList.d.ts +4 -4
- package/internals/composite/list/CompositeList.js +173 -86
- package/internals/composite/list/CompositeList.mjs +173 -86
- package/internals/composite/list/CompositeListContext.d.mts +8 -4
- package/internals/composite/list/CompositeListContext.d.ts +8 -4
- package/internals/composite/list/CompositeListContext.js +1 -6
- package/internals/composite/list/CompositeListContext.mjs +1 -6
- package/internals/composite/list/useCompositeListItem.d.mts +11 -8
- package/internals/composite/list/useCompositeListItem.d.ts +11 -8
- package/internals/composite/list/useCompositeListItem.js +25 -32
- package/internals/composite/list/useCompositeListItem.mjs +25 -32
- package/internals/composite/root/CompositeRoot.d.mts +2 -5
- package/internals/composite/root/CompositeRoot.d.ts +2 -5
- package/internals/composite/root/CompositeRoot.js +0 -3
- package/internals/composite/root/CompositeRoot.mjs +0 -3
- package/internals/composite/root/useCompositeRoot.d.mts +0 -1
- package/internals/composite/root/useCompositeRoot.d.ts +0 -1
- package/internals/composite/root/useCompositeRoot.js +64 -42
- package/internals/composite/root/useCompositeRoot.mjs +64 -42
- package/internals/createBaseUIEventDetails.d.mts +1 -1
- package/internals/createBaseUIEventDetails.d.ts +1 -1
- package/internals/csp-context/CSPContext.d.mts +0 -6
- package/internals/csp-context/CSPContext.d.ts +0 -6
- package/internals/csp-context/CSPContext.js +0 -7
- package/internals/csp-context/CSPContext.mjs +0 -7
- package/internals/direction-context/DirectionContext.d.mts +0 -3
- package/internals/direction-context/DirectionContext.d.ts +0 -3
- package/internals/direction-context/DirectionContext.js +0 -3
- package/internals/direction-context/DirectionContext.mjs +0 -3
- package/internals/field-constants/constants.js +4 -3
- package/internals/field-constants/constants.mjs +1 -1
- package/internals/field-register-control/useFieldControlRegistration.d.mts +2 -1
- package/internals/field-register-control/useFieldControlRegistration.d.ts +2 -1
- package/internals/field-register-control/useFieldControlRegistration.js +29 -16
- package/internals/field-register-control/useFieldControlRegistration.mjs +29 -16
- package/internals/field-register-control/useRegisterFieldControl.js +13 -9
- package/internals/field-register-control/useRegisterFieldControl.mjs +13 -8
- package/internals/field-root-context/FieldRootContext.d.mts +0 -7
- package/internals/field-root-context/FieldRootContext.d.ts +0 -7
- package/internals/field-root-context/FieldRootContext.js +2 -9
- package/internals/field-root-context/FieldRootContext.mjs +3 -10
- package/internals/filter.js +1 -1
- package/internals/filter.mjs +1 -1
- package/internals/form-context/FormContext.d.mts +2 -1
- package/internals/form-context/FormContext.d.ts +2 -1
- package/internals/form-context/FormContext.js +5 -2
- package/internals/form-context/FormContext.mjs +5 -2
- package/{utils → internals}/getDisabledMountTransitionStyles.d.mts +1 -1
- package/{utils → internals}/getDisabledMountTransitionStyles.d.ts +1 -1
- package/{utils → internals}/getDisabledMountTransitionStyles.js +1 -1
- package/{utils → internals}/getDisabledMountTransitionStyles.mjs +1 -1
- package/internals/itemEquality.d.mts +4 -0
- package/internals/itemEquality.d.ts +4 -0
- package/internals/itemEquality.js +44 -2
- package/internals/itemEquality.mjs +41 -2
- package/internals/labelable-provider/LabelableContext.d.mts +3 -1
- package/internals/labelable-provider/LabelableContext.d.ts +3 -1
- package/internals/labelable-provider/LabelableContext.js +1 -0
- package/internals/labelable-provider/LabelableContext.mjs +1 -0
- package/internals/labelable-provider/LabelableProvider.d.mts +0 -5
- package/internals/labelable-provider/LabelableProvider.d.ts +0 -5
- package/internals/labelable-provider/LabelableProvider.js +21 -15
- package/internals/labelable-provider/LabelableProvider.mjs +21 -16
- package/internals/labelable-provider/useAriaLabelledBy.d.mts +0 -3
- package/internals/labelable-provider/useAriaLabelledBy.d.ts +0 -3
- package/internals/labelable-provider/useAriaLabelledBy.js +0 -3
- package/internals/labelable-provider/useAriaLabelledBy.mjs +0 -4
- package/internals/labelable-provider/useLabel.d.mts +3 -3
- package/internals/labelable-provider/useLabel.d.ts +3 -3
- package/internals/labelable-provider/useLabel.js +1 -1
- package/internals/labelable-provider/useLabel.mjs +1 -1
- package/internals/labelable-provider/useLabelableId.d.mts +6 -7
- package/internals/labelable-provider/useLabelableId.d.ts +6 -7
- package/internals/labelable-provider/useLabelableId.js +28 -21
- package/internals/labelable-provider/useLabelableId.mjs +28 -21
- package/internals/prehydrationScript.stub.d.mts +1 -0
- package/internals/prehydrationScript.stub.d.ts +1 -0
- package/internals/prehydrationScript.stub.js +12 -0
- package/internals/prehydrationScript.stub.mjs +6 -0
- package/internals/resolveValueLabel.d.mts +1 -0
- package/internals/resolveValueLabel.d.ts +1 -0
- package/internals/resolveValueLabel.js +13 -3
- package/internals/resolveValueLabel.mjs +12 -3
- package/internals/stateAttributesMapping.d.mts +2 -10
- package/internals/stateAttributesMapping.d.ts +2 -10
- package/internals/stateAttributesMapping.js +3 -11
- package/internals/stateAttributesMapping.mjs +2 -11
- package/internals/temporal-adapter-luxon/TemporalAdapterLuxon.d.mts +1 -1
- package/internals/temporal-adapter-luxon/TemporalAdapterLuxon.d.ts +1 -1
- package/internals/use-button/useButton.js +30 -14
- package/internals/use-button/useButton.mjs +30 -14
- package/{utils → internals}/useAnchorPositioning.d.mts +11 -4
- package/{utils → internals}/useAnchorPositioning.d.ts +11 -4
- package/{utils → internals}/useAnchorPositioning.js +129 -91
- package/{utils → internals}/useAnchorPositioning.mjs +128 -91
- package/internals/useAnimationsFinished.d.mts +5 -3
- package/internals/useAnimationsFinished.d.ts +5 -3
- package/internals/useAnimationsFinished.js +51 -14
- package/internals/useAnimationsFinished.mjs +49 -13
- package/internals/useOpenChangeComplete.d.mts +6 -0
- package/internals/useOpenChangeComplete.d.ts +6 -0
- package/internals/useOpenChangeComplete.js +2 -1
- package/internals/useOpenChangeComplete.mjs +2 -1
- package/internals/usePressAndHold.d.mts +0 -1
- package/internals/usePressAndHold.d.ts +0 -1
- package/internals/usePressAndHold.js +12 -8
- package/internals/usePressAndHold.mjs +12 -8
- package/internals/useRenderElement.js +31 -19
- package/internals/useRenderElement.mjs +31 -19
- package/internals/useTransitionStatus.d.mts +5 -1
- package/internals/useTransitionStatus.d.ts +5 -1
- package/internals/useTransitionStatus.js +9 -2
- package/internals/useTransitionStatus.mjs +9 -2
- package/internals/useValueChanged.js +3 -6
- package/internals/useValueChanged.mjs +3 -6
- package/menu/arrow/MenuArrow.d.mts +1 -1
- package/menu/arrow/MenuArrow.d.ts +1 -1
- package/menu/arrow/MenuArrowDataAttributes.d.mts +22 -24
- package/menu/arrow/MenuArrowDataAttributes.d.ts +22 -24
- package/menu/arrow/MenuArrowDataAttributes.js +23 -26
- package/menu/arrow/MenuArrowDataAttributes.mjs +23 -25
- package/menu/backdrop/MenuBackdrop.js +1 -7
- package/menu/backdrop/MenuBackdrop.mjs +2 -7
- package/menu/backdrop/MenuBackdropDataAttributes.d.mts +16 -18
- package/menu/backdrop/MenuBackdropDataAttributes.d.ts +16 -18
- package/menu/backdrop/MenuBackdropDataAttributes.js +17 -20
- package/menu/backdrop/MenuBackdropDataAttributes.mjs +17 -19
- package/menu/checkbox-item/MenuCheckboxItem.js +6 -2
- package/menu/checkbox-item/MenuCheckboxItem.mjs +6 -2
- package/menu/checkbox-item/MenuCheckboxItemDataAttributes.d.mts +16 -18
- package/menu/checkbox-item/MenuCheckboxItemDataAttributes.d.ts +16 -18
- package/menu/checkbox-item/MenuCheckboxItemDataAttributes.js +17 -20
- package/menu/checkbox-item/MenuCheckboxItemDataAttributes.mjs +16 -19
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.js +4 -1
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicator.mjs +4 -1
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.d.mts +20 -22
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.d.ts +20 -22
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.js +21 -24
- package/menu/checkbox-item-indicator/MenuCheckboxItemIndicatorDataAttributes.mjs +21 -23
- package/menu/group/MenuGroupContext.d.mts +1 -1
- package/menu/group/MenuGroupContext.d.ts +1 -1
- package/menu/group-label/MenuGroupLabel.js +2 -2
- package/menu/group-label/MenuGroupLabel.mjs +2 -2
- package/menu/item/MenuItem.js +4 -1
- package/menu/item/MenuItem.mjs +4 -1
- package/menu/item/MenuItemDataAttributes.d.mts +8 -10
- package/menu/item/MenuItemDataAttributes.d.ts +8 -10
- package/menu/item/MenuItemDataAttributes.js +9 -12
- package/menu/item/MenuItemDataAttributes.mjs +8 -11
- package/menu/item/useMenuItem.js +1 -3
- package/menu/item/useMenuItem.mjs +1 -3
- package/menu/item/useMenuItemCommonProps.d.mts +2 -3
- package/menu/item/useMenuItemCommonProps.d.ts +2 -3
- package/menu/item/useMenuItemCommonProps.js +7 -2
- package/menu/item/useMenuItemCommonProps.mjs +7 -2
- package/menu/link-item/MenuLinkItem.d.mts +1 -1
- package/menu/link-item/MenuLinkItem.d.ts +1 -1
- package/menu/link-item/MenuLinkItem.js +4 -1
- package/menu/link-item/MenuLinkItem.mjs +4 -1
- package/menu/link-item/MenuLinkItemDataAttributes.d.mts +4 -6
- package/menu/link-item/MenuLinkItemDataAttributes.d.ts +4 -6
- package/menu/link-item/MenuLinkItemDataAttributes.js +5 -8
- package/menu/link-item/MenuLinkItemDataAttributes.mjs +4 -7
- package/menu/popup/MenuPopup.d.mts +1 -1
- package/menu/popup/MenuPopup.d.ts +1 -1
- package/menu/popup/MenuPopup.js +5 -14
- package/menu/popup/MenuPopup.mjs +7 -15
- package/menu/popup/MenuPopupDataAttributes.d.mts +31 -33
- package/menu/popup/MenuPopupDataAttributes.d.ts +31 -33
- package/menu/popup/MenuPopupDataAttributes.js +32 -35
- package/menu/popup/MenuPopupDataAttributes.mjs +32 -34
- package/menu/portal/MenuPortal.d.mts +6 -2
- package/menu/portal/MenuPortal.d.ts +6 -2
- package/menu/portal/MenuPortal.js +9 -2
- package/menu/portal/MenuPortal.mjs +9 -2
- package/menu/positioner/MenuPositioner.d.mts +18 -2
- package/menu/positioner/MenuPositioner.d.ts +18 -2
- package/menu/positioner/MenuPositioner.js +8 -6
- package/menu/positioner/MenuPositioner.mjs +8 -6
- package/menu/positioner/MenuPositionerContext.d.mts +1 -1
- package/menu/positioner/MenuPositionerContext.d.ts +1 -1
- package/menu/positioner/MenuPositionerCssVars.d.mts +37 -27
- package/menu/positioner/MenuPositionerCssVars.d.ts +37 -27
- package/menu/positioner/MenuPositionerCssVars.js +38 -29
- package/menu/positioner/MenuPositionerCssVars.mjs +37 -28
- package/menu/positioner/MenuPositionerDataAttributes.d.mts +22 -24
- package/menu/positioner/MenuPositionerDataAttributes.d.ts +22 -24
- package/menu/positioner/MenuPositionerDataAttributes.js +23 -26
- package/menu/positioner/MenuPositionerDataAttributes.mjs +23 -25
- package/menu/radio-item/MenuRadioItem.js +5 -2
- package/menu/radio-item/MenuRadioItem.mjs +5 -2
- package/menu/radio-item/MenuRadioItemDataAttributes.d.mts +16 -18
- package/menu/radio-item/MenuRadioItemDataAttributes.d.ts +16 -18
- package/menu/radio-item/MenuRadioItemDataAttributes.js +17 -20
- package/menu/radio-item/MenuRadioItemDataAttributes.mjs +16 -19
- package/menu/radio-item-indicator/MenuRadioItemIndicator.js +4 -1
- package/menu/radio-item-indicator/MenuRadioItemIndicator.mjs +4 -1
- package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.d.mts +20 -22
- package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.d.ts +20 -22
- package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.js +21 -24
- package/menu/radio-item-indicator/MenuRadioItemIndicatorDataAttributes.mjs +21 -23
- package/menu/root/MenuRoot.d.mts +12 -8
- package/menu/root/MenuRoot.d.ts +12 -8
- package/menu/root/MenuRoot.js +132 -30
- package/menu/root/MenuRoot.mjs +134 -32
- package/menu/store/MenuHandle.d.mts +18 -10
- package/menu/store/MenuHandle.d.ts +18 -10
- package/menu/store/MenuHandle.js +21 -20
- package/menu/store/MenuHandle.mjs +22 -19
- package/menu/store/MenuStore.d.mts +24 -9
- package/menu/store/MenuStore.d.ts +24 -9
- package/menu/store/MenuStore.js +78 -59
- package/menu/store/MenuStore.mjs +79 -61
- package/menu/submenu-root/MenuSubmenuRoot.d.mts +1 -1
- package/menu/submenu-root/MenuSubmenuRoot.d.ts +1 -1
- package/menu/submenu-trigger/MenuSubmenuTrigger.d.mts +1 -0
- package/menu/submenu-trigger/MenuSubmenuTrigger.d.ts +1 -0
- package/menu/submenu-trigger/MenuSubmenuTrigger.js +45 -13
- package/menu/submenu-trigger/MenuSubmenuTrigger.mjs +44 -13
- package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.d.mts +12 -14
- package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.d.ts +12 -14
- package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.js +13 -16
- package/menu/submenu-trigger/MenuSubmenuTriggerDataAttributes.mjs +13 -15
- package/menu/trigger/MenuTrigger.js +7 -22
- package/menu/trigger/MenuTrigger.mjs +10 -24
- package/menu/trigger/MenuTriggerDataAttributes.d.mts +12 -10
- package/menu/trigger/MenuTriggerDataAttributes.d.ts +12 -10
- package/menu/trigger/MenuTriggerDataAttributes.js +13 -12
- package/menu/trigger/MenuTriggerDataAttributes.mjs +13 -11
- package/menu/utils/findRootOwnerId.js +1 -1
- package/menu/utils/findRootOwnerId.mjs +1 -1
- package/menu/utils/stateAttributesMapping.js +4 -3
- package/menu/utils/stateAttributesMapping.mjs +1 -1
- package/menu/viewport/MenuViewport.js +1 -9
- package/menu/viewport/MenuViewport.mjs +2 -9
- package/menu/viewport/MenuViewportCssVars.d.mts +12 -14
- package/menu/viewport/MenuViewportCssVars.d.ts +12 -14
- package/menu/viewport/MenuViewportCssVars.js +13 -16
- package/menu/viewport/MenuViewportCssVars.mjs +12 -15
- package/menu/viewport/MenuViewportDataAttributes.d.mts +24 -26
- package/menu/viewport/MenuViewportDataAttributes.d.ts +24 -26
- package/menu/viewport/MenuViewportDataAttributes.js +25 -28
- package/menu/viewport/MenuViewportDataAttributes.mjs +24 -27
- package/menubar/Menubar.js +4 -3
- package/menubar/Menubar.mjs +3 -2
- package/menubar/MenubarDataAttributes.d.mts +13 -15
- package/menubar/MenubarDataAttributes.d.ts +13 -15
- package/menubar/MenubarDataAttributes.js +14 -17
- package/menubar/MenubarDataAttributes.mjs +13 -16
- package/meter/root/MeterRoot.js +6 -8
- package/meter/root/MeterRoot.mjs +6 -8
- package/meter/root/MeterRootContext.d.mts +0 -2
- package/meter/root/MeterRootContext.d.ts +0 -2
- package/navigation-menu/arrow/NavigationMenuArrow.d.mts +1 -1
- package/navigation-menu/arrow/NavigationMenuArrow.d.ts +1 -1
- package/navigation-menu/arrow/NavigationMenuArrow.js +1 -1
- package/navigation-menu/arrow/NavigationMenuArrow.mjs +1 -1
- package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.d.mts +22 -24
- package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.d.ts +22 -24
- package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.js +23 -26
- package/navigation-menu/arrow/NavigationMenuArrowDataAttributes.mjs +23 -25
- package/navigation-menu/backdrop/NavigationMenuBackdrop.js +1 -7
- package/navigation-menu/backdrop/NavigationMenuBackdrop.mjs +2 -7
- package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.d.mts +16 -18
- package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.d.ts +16 -18
- package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.js +17 -20
- package/navigation-menu/backdrop/NavigationMenuBackdropDataAttributes.mjs +17 -19
- package/navigation-menu/content/NavigationMenuContent.js +2 -1
- package/navigation-menu/content/NavigationMenuContent.mjs +2 -1
- package/navigation-menu/content/NavigationMenuContentDataAttributes.d.mts +21 -23
- package/navigation-menu/content/NavigationMenuContentDataAttributes.d.ts +21 -23
- package/navigation-menu/content/NavigationMenuContentDataAttributes.js +22 -25
- package/navigation-menu/content/NavigationMenuContentDataAttributes.mjs +22 -24
- package/navigation-menu/icon/NavigationMenuIconDataAttributes.d.mts +4 -6
- package/navigation-menu/icon/NavigationMenuIconDataAttributes.d.ts +4 -6
- package/navigation-menu/icon/NavigationMenuIconDataAttributes.js +5 -8
- package/navigation-menu/icon/NavigationMenuIconDataAttributes.mjs +5 -7
- package/navigation-menu/link/NavigationMenuLink.d.mts +1 -1
- package/navigation-menu/link/NavigationMenuLink.d.ts +1 -1
- package/navigation-menu/link/NavigationMenuLinkDataAttributes.d.mts +4 -6
- package/navigation-menu/link/NavigationMenuLinkDataAttributes.d.ts +4 -6
- package/navigation-menu/link/NavigationMenuLinkDataAttributes.js +5 -8
- package/navigation-menu/link/NavigationMenuLinkDataAttributes.mjs +4 -7
- package/navigation-menu/popup/NavigationMenuPopup.d.mts +1 -1
- package/navigation-menu/popup/NavigationMenuPopup.d.ts +1 -1
- package/navigation-menu/popup/NavigationMenuPopup.js +2 -8
- package/navigation-menu/popup/NavigationMenuPopup.mjs +3 -8
- package/navigation-menu/popup/NavigationMenuPopupCssVars.d.mts +10 -12
- package/navigation-menu/popup/NavigationMenuPopupCssVars.d.ts +10 -12
- package/navigation-menu/popup/NavigationMenuPopupCssVars.js +11 -14
- package/navigation-menu/popup/NavigationMenuPopupCssVars.mjs +10 -13
- package/navigation-menu/popup/NavigationMenuPopupDataAttributes.d.mts +30 -32
- package/navigation-menu/popup/NavigationMenuPopupDataAttributes.d.ts +30 -32
- package/navigation-menu/popup/NavigationMenuPopupDataAttributes.js +31 -34
- package/navigation-menu/popup/NavigationMenuPopupDataAttributes.mjs +31 -33
- package/navigation-menu/portal/NavigationMenuPortal.d.mts +3 -3
- package/navigation-menu/portal/NavigationMenuPortal.d.ts +3 -3
- package/navigation-menu/positioner/NavigationMenuPositioner.d.mts +1 -1
- package/navigation-menu/positioner/NavigationMenuPositioner.d.ts +1 -1
- package/navigation-menu/positioner/NavigationMenuPositioner.js +7 -6
- package/navigation-menu/positioner/NavigationMenuPositioner.mjs +7 -6
- package/navigation-menu/positioner/NavigationMenuPositionerContext.d.mts +2 -2
- package/navigation-menu/positioner/NavigationMenuPositionerContext.d.ts +2 -2
- package/navigation-menu/positioner/NavigationMenuPositionerCssVars.d.mts +35 -37
- package/navigation-menu/positioner/NavigationMenuPositionerCssVars.d.ts +35 -37
- package/navigation-menu/positioner/NavigationMenuPositionerCssVars.js +36 -39
- package/navigation-menu/positioner/NavigationMenuPositionerCssVars.mjs +35 -38
- package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.d.mts +26 -28
- package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.d.ts +26 -28
- package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.js +27 -30
- package/navigation-menu/positioner/NavigationMenuPositionerDataAttributes.mjs +27 -29
- package/navigation-menu/root/NavigationMenuRoot.js +3 -3
- package/navigation-menu/root/NavigationMenuRoot.mjs +1 -1
- package/navigation-menu/trigger/NavigationMenuTrigger.d.mts +11 -1
- package/navigation-menu/trigger/NavigationMenuTrigger.d.ts +11 -1
- package/navigation-menu/trigger/NavigationMenuTrigger.js +72 -122
- package/navigation-menu/trigger/NavigationMenuTrigger.mjs +72 -122
- package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.d.mts +12 -10
- package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.d.ts +12 -10
- package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.js +13 -12
- package/navigation-menu/trigger/NavigationMenuTriggerDataAttributes.mjs +13 -11
- package/navigation-menu/utils/isOutsideMenuEvent.js +2 -5
- package/navigation-menu/utils/isOutsideMenuEvent.mjs +2 -5
- package/navigation-menu/utils/setSharedFixedSize.js +7 -6
- package/navigation-menu/utils/setSharedFixedSize.mjs +2 -2
- package/navigation-menu/utils/useNavigationMenuAnchorPositioning.d.mts +6 -0
- package/navigation-menu/utils/useNavigationMenuAnchorPositioning.d.ts +6 -0
- package/navigation-menu/utils/useNavigationMenuAnchorPositioning.js +16 -0
- package/navigation-menu/utils/useNavigationMenuAnchorPositioning.mjs +12 -0
- package/number-field/decrement/NumberFieldDecrementDataAttributes.d.mts +40 -42
- package/number-field/decrement/NumberFieldDecrementDataAttributes.d.ts +40 -42
- package/number-field/decrement/NumberFieldDecrementDataAttributes.js +41 -44
- package/number-field/decrement/NumberFieldDecrementDataAttributes.mjs +40 -43
- package/number-field/group/NumberFieldGroupDataAttributes.d.mts +40 -42
- package/number-field/group/NumberFieldGroupDataAttributes.d.ts +40 -42
- package/number-field/group/NumberFieldGroupDataAttributes.js +41 -44
- package/number-field/group/NumberFieldGroupDataAttributes.mjs +40 -43
- package/number-field/increment/NumberFieldIncrementDataAttributes.d.mts +40 -42
- package/number-field/increment/NumberFieldIncrementDataAttributes.d.ts +40 -42
- package/number-field/increment/NumberFieldIncrementDataAttributes.js +41 -44
- package/number-field/increment/NumberFieldIncrementDataAttributes.mjs +40 -43
- package/number-field/input/NumberFieldInput.d.mts +1 -1
- package/number-field/input/NumberFieldInput.d.ts +1 -1
- package/number-field/input/NumberFieldInput.js +41 -37
- package/number-field/input/NumberFieldInput.mjs +42 -38
- package/number-field/input/NumberFieldInputDataAttributes.d.mts +40 -42
- package/number-field/input/NumberFieldInputDataAttributes.d.ts +40 -42
- package/number-field/input/NumberFieldInputDataAttributes.js +41 -44
- package/number-field/input/NumberFieldInputDataAttributes.mjs +40 -43
- package/number-field/root/NumberFieldRoot.js +69 -61
- package/number-field/root/NumberFieldRoot.mjs +70 -62
- package/number-field/root/NumberFieldRootContext.d.mts +1 -7
- package/number-field/root/NumberFieldRootContext.d.ts +1 -7
- package/number-field/root/NumberFieldRootDataAttributes.d.mts +40 -42
- package/number-field/root/NumberFieldRootDataAttributes.d.ts +40 -42
- package/number-field/root/NumberFieldRootDataAttributes.js +41 -44
- package/number-field/root/NumberFieldRootDataAttributes.mjs +40 -43
- package/number-field/root/useNumberFieldStepperButton.js +109 -21
- package/number-field/root/useNumberFieldStepperButton.mjs +109 -21
- package/number-field/scrub-area/NumberFieldScrubArea.js +30 -33
- package/number-field/scrub-area/NumberFieldScrubArea.mjs +30 -33
- package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.d.mts +40 -42
- package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.d.ts +40 -42
- package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.js +41 -44
- package/number-field/scrub-area/NumberFieldScrubAreaDataAttributes.mjs +40 -43
- package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.d.mts +40 -42
- package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.d.ts +40 -42
- package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.js +41 -44
- package/number-field/scrub-area-cursor/NumberFieldScrubAreaCursorDataAttributes.mjs +40 -43
- package/number-field/utils/constants.d.mts +1 -2
- package/number-field/utils/constants.d.ts +1 -2
- package/number-field/utils/constants.js +2 -3
- package/number-field/utils/constants.mjs +1 -2
- package/number-field/utils/parse.d.mts +27 -15
- package/number-field/utils/parse.d.ts +27 -15
- package/number-field/utils/parse.js +75 -136
- package/number-field/utils/parse.mjs +74 -135
- package/number-field/utils/types.d.mts +2 -1
- package/number-field/utils/types.d.ts +2 -1
- package/number-field/utils/validate.d.mts +1 -19
- package/number-field/utils/validate.d.ts +1 -19
- package/number-field/utils/validate.js +8 -16
- package/number-field/utils/validate.mjs +8 -16
- package/otp-field/input/OTPFieldInput.d.mts +1 -1
- package/otp-field/input/OTPFieldInput.d.ts +1 -1
- package/otp-field/input/OTPFieldInput.js +4 -1
- package/otp-field/input/OTPFieldInput.mjs +5 -2
- package/otp-field/input/OTPFieldInputDataAttributes.d.mts +40 -42
- package/otp-field/input/OTPFieldInputDataAttributes.d.ts +40 -42
- package/otp-field/input/OTPFieldInputDataAttributes.js +41 -44
- package/otp-field/input/OTPFieldInputDataAttributes.mjs +40 -43
- package/otp-field/root/OTPFieldRoot.js +14 -15
- package/otp-field/root/OTPFieldRoot.mjs +14 -15
- package/otp-field/root/OTPFieldRootDataAttributes.d.mts +40 -42
- package/otp-field/root/OTPFieldRootDataAttributes.d.ts +40 -42
- package/otp-field/root/OTPFieldRootDataAttributes.js +41 -44
- package/otp-field/root/OTPFieldRootDataAttributes.mjs +40 -43
- package/package.json +94 -48
- package/popover/arrow/PopoverArrow.d.mts +1 -1
- package/popover/arrow/PopoverArrow.d.ts +1 -1
- package/popover/arrow/PopoverArrow.js +1 -3
- package/popover/arrow/PopoverArrow.mjs +1 -3
- package/popover/arrow/PopoverArrowDataAttributes.d.mts +22 -24
- package/popover/arrow/PopoverArrowDataAttributes.d.ts +22 -24
- package/popover/arrow/PopoverArrowDataAttributes.js +23 -26
- package/popover/arrow/PopoverArrowDataAttributes.mjs +23 -25
- package/popover/backdrop/PopoverBackdrop.js +3 -11
- package/popover/backdrop/PopoverBackdrop.mjs +4 -11
- package/popover/backdrop/PopoverBackdropDataAttributes.d.mts +16 -18
- package/popover/backdrop/PopoverBackdropDataAttributes.d.ts +16 -18
- package/popover/backdrop/PopoverBackdropDataAttributes.js +17 -20
- package/popover/backdrop/PopoverBackdropDataAttributes.mjs +17 -19
- package/popover/close/PopoverClose.js +1 -3
- package/popover/close/PopoverClose.mjs +1 -3
- package/popover/description/PopoverDescription.js +1 -3
- package/popover/description/PopoverDescription.mjs +1 -3
- package/popover/popup/PopoverPopup.d.mts +1 -1
- package/popover/popup/PopoverPopup.d.ts +1 -1
- package/popover/popup/PopoverPopup.js +6 -17
- package/popover/popup/PopoverPopup.mjs +9 -19
- package/popover/popup/PopoverPopupCssVars.d.mts +8 -10
- package/popover/popup/PopoverPopupCssVars.d.ts +8 -10
- package/popover/popup/PopoverPopupCssVars.js +9 -12
- package/popover/popup/PopoverPopupCssVars.mjs +8 -11
- package/popover/popup/PopoverPopupDataAttributes.d.mts +31 -33
- package/popover/popup/PopoverPopupDataAttributes.d.ts +31 -33
- package/popover/popup/PopoverPopupDataAttributes.js +32 -35
- package/popover/popup/PopoverPopupDataAttributes.mjs +32 -34
- package/popover/portal/PopoverPortal.d.mts +6 -2
- package/popover/portal/PopoverPortal.d.ts +6 -2
- package/popover/portal/PopoverPortal.js +1 -3
- package/popover/portal/PopoverPortal.mjs +1 -3
- package/popover/positioner/PopoverPositioner.d.mts +1 -1
- package/popover/positioner/PopoverPositioner.d.ts +1 -1
- package/popover/positioner/PopoverPositioner.js +19 -22
- package/popover/positioner/PopoverPositioner.mjs +19 -22
- package/popover/positioner/PopoverPositionerContext.d.mts +1 -1
- package/popover/positioner/PopoverPositionerContext.d.ts +1 -1
- package/popover/positioner/PopoverPositionerCssVars.d.mts +37 -37
- package/popover/positioner/PopoverPositionerCssVars.d.ts +37 -37
- package/popover/positioner/PopoverPositionerCssVars.js +38 -39
- package/popover/positioner/PopoverPositionerCssVars.mjs +37 -38
- package/popover/positioner/PopoverPositionerDataAttributes.d.mts +22 -24
- package/popover/positioner/PopoverPositionerDataAttributes.d.ts +22 -24
- package/popover/positioner/PopoverPositionerDataAttributes.js +23 -26
- package/popover/positioner/PopoverPositionerDataAttributes.mjs +23 -25
- package/popover/root/PopoverRoot.d.mts +3 -1
- package/popover/root/PopoverRoot.d.ts +3 -1
- package/popover/root/PopoverRoot.js +33 -24
- package/popover/root/PopoverRoot.mjs +35 -26
- package/popover/root/PopoverRootContext.d.mts +1 -3
- package/popover/root/PopoverRootContext.d.ts +1 -3
- package/popover/store/PopoverHandle.d.mts +18 -10
- package/popover/store/PopoverHandle.d.ts +18 -10
- package/popover/store/PopoverHandle.js +21 -21
- package/popover/store/PopoverHandle.mjs +22 -20
- package/popover/store/PopoverStore.d.mts +22 -10
- package/popover/store/PopoverStore.d.ts +22 -10
- package/popover/store/PopoverStore.js +84 -73
- package/popover/store/PopoverStore.mjs +83 -73
- package/popover/title/PopoverTitle.js +1 -3
- package/popover/title/PopoverTitle.mjs +1 -3
- package/popover/trigger/PopoverTrigger.js +11 -12
- package/popover/trigger/PopoverTrigger.mjs +12 -13
- package/popover/trigger/PopoverTriggerDataAttributes.d.mts +12 -10
- package/popover/trigger/PopoverTriggerDataAttributes.d.ts +12 -10
- package/popover/trigger/PopoverTriggerDataAttributes.js +13 -12
- package/popover/trigger/PopoverTriggerDataAttributes.mjs +13 -11
- package/popover/viewport/PopoverViewport.js +2 -12
- package/popover/viewport/PopoverViewport.mjs +3 -12
- package/popover/viewport/PopoverViewportCssVars.d.mts +12 -14
- package/popover/viewport/PopoverViewportCssVars.d.ts +12 -14
- package/popover/viewport/PopoverViewportCssVars.js +13 -16
- package/popover/viewport/PopoverViewportCssVars.mjs +12 -15
- package/popover/viewport/PopoverViewportDataAttributes.d.mts +24 -26
- package/popover/viewport/PopoverViewportDataAttributes.d.ts +24 -26
- package/popover/viewport/PopoverViewportDataAttributes.js +25 -28
- package/popover/viewport/PopoverViewportDataAttributes.mjs +24 -27
- package/preview-card/arrow/PreviewCardArrow.d.mts +1 -1
- package/preview-card/arrow/PreviewCardArrow.d.ts +1 -1
- package/preview-card/arrow/PreviewCardArrowDataAttributes.d.mts +22 -24
- package/preview-card/arrow/PreviewCardArrowDataAttributes.d.ts +22 -24
- package/preview-card/arrow/PreviewCardArrowDataAttributes.js +23 -26
- package/preview-card/arrow/PreviewCardArrowDataAttributes.mjs +23 -25
- package/preview-card/backdrop/PreviewCardBackdrop.d.mts +1 -1
- package/preview-card/backdrop/PreviewCardBackdrop.d.ts +1 -1
- package/preview-card/backdrop/PreviewCardBackdrop.js +2 -8
- package/preview-card/backdrop/PreviewCardBackdrop.mjs +3 -8
- package/preview-card/backdrop/PreviewCardBackdropDataAttributes.d.mts +16 -18
- package/preview-card/backdrop/PreviewCardBackdropDataAttributes.d.ts +16 -18
- package/preview-card/backdrop/PreviewCardBackdropDataAttributes.js +17 -20
- package/preview-card/backdrop/PreviewCardBackdropDataAttributes.mjs +17 -19
- package/preview-card/popup/PreviewCardPopup.d.mts +1 -1
- package/preview-card/popup/PreviewCardPopup.d.ts +1 -1
- package/preview-card/popup/PreviewCardPopup.js +6 -12
- package/preview-card/popup/PreviewCardPopup.mjs +7 -12
- package/preview-card/popup/PreviewCardPopupDataAttributes.d.mts +26 -28
- package/preview-card/popup/PreviewCardPopupDataAttributes.d.ts +26 -28
- package/preview-card/popup/PreviewCardPopupDataAttributes.js +27 -30
- package/preview-card/popup/PreviewCardPopupDataAttributes.mjs +27 -29
- package/preview-card/portal/PreviewCardPortal.d.mts +6 -2
- package/preview-card/portal/PreviewCardPortal.d.ts +6 -2
- package/preview-card/portal/PreviewCardPortal.mjs +1 -2
- package/preview-card/positioner/PreviewCardPositioner.d.mts +1 -1
- package/preview-card/positioner/PreviewCardPositioner.d.ts +1 -1
- package/preview-card/positioner/PreviewCardPositioner.js +3 -4
- package/preview-card/positioner/PreviewCardPositioner.mjs +3 -4
- package/preview-card/positioner/PreviewCardPositionerContext.d.mts +1 -1
- package/preview-card/positioner/PreviewCardPositionerContext.d.ts +1 -1
- package/preview-card/positioner/PreviewCardPositionerContext.js +1 -1
- package/preview-card/positioner/PreviewCardPositionerContext.mjs +1 -1
- package/preview-card/positioner/PreviewCardPositionerCssVars.d.mts +37 -27
- package/preview-card/positioner/PreviewCardPositionerCssVars.d.ts +37 -27
- package/preview-card/positioner/PreviewCardPositionerCssVars.js +38 -29
- package/preview-card/positioner/PreviewCardPositionerCssVars.mjs +37 -28
- package/preview-card/positioner/PreviewCardPositionerDataAttributes.d.mts +22 -24
- package/preview-card/positioner/PreviewCardPositionerDataAttributes.d.ts +22 -24
- package/preview-card/positioner/PreviewCardPositionerDataAttributes.js +23 -26
- package/preview-card/positioner/PreviewCardPositionerDataAttributes.mjs +23 -25
- package/preview-card/root/PreviewCardRoot.d.mts +1 -1
- package/preview-card/root/PreviewCardRoot.d.ts +1 -1
- package/preview-card/root/PreviewCardRoot.js +14 -17
- package/preview-card/root/PreviewCardRoot.mjs +15 -18
- package/preview-card/store/PreviewCardHandle.d.mts +15 -12
- package/preview-card/store/PreviewCardHandle.d.ts +15 -12
- package/preview-card/store/PreviewCardHandle.js +18 -23
- package/preview-card/store/PreviewCardHandle.mjs +19 -23
- package/preview-card/store/PreviewCardStore.d.mts +22 -7
- package/preview-card/store/PreviewCardStore.d.ts +22 -7
- package/preview-card/store/PreviewCardStore.js +43 -31
- package/preview-card/store/PreviewCardStore.mjs +43 -32
- package/preview-card/trigger/PreviewCardTrigger.d.mts +1 -1
- package/preview-card/trigger/PreviewCardTrigger.d.ts +1 -1
- package/preview-card/trigger/PreviewCardTrigger.js +4 -8
- package/preview-card/trigger/PreviewCardTrigger.mjs +5 -9
- package/preview-card/trigger/PreviewCardTriggerDataAttributes.d.mts +4 -6
- package/preview-card/trigger/PreviewCardTriggerDataAttributes.d.ts +4 -6
- package/preview-card/trigger/PreviewCardTriggerDataAttributes.js +5 -8
- package/preview-card/trigger/PreviewCardTriggerDataAttributes.mjs +5 -7
- package/preview-card/viewport/PreviewCardViewport.js +1 -9
- package/preview-card/viewport/PreviewCardViewport.mjs +2 -9
- package/preview-card/viewport/PreviewCardViewportCssVars.d.mts +12 -14
- package/preview-card/viewport/PreviewCardViewportCssVars.d.ts +12 -14
- package/preview-card/viewport/PreviewCardViewportCssVars.js +13 -16
- package/preview-card/viewport/PreviewCardViewportCssVars.mjs +12 -15
- package/preview-card/viewport/PreviewCardViewportDataAttributes.d.mts +24 -26
- package/preview-card/viewport/PreviewCardViewportDataAttributes.d.ts +24 -26
- package/preview-card/viewport/PreviewCardViewportDataAttributes.js +25 -28
- package/preview-card/viewport/PreviewCardViewportDataAttributes.mjs +24 -27
- package/progress/indicator/ProgressIndicator.js +1 -5
- package/progress/indicator/ProgressIndicator.mjs +1 -5
- package/progress/indicator/ProgressIndicatorDataAttributes.d.mts +12 -14
- package/progress/indicator/ProgressIndicatorDataAttributes.d.ts +12 -14
- package/progress/indicator/ProgressIndicatorDataAttributes.js +13 -16
- package/progress/indicator/ProgressIndicatorDataAttributes.mjs +12 -15
- package/progress/label/ProgressLabelDataAttributes.d.mts +12 -14
- package/progress/label/ProgressLabelDataAttributes.d.ts +12 -14
- package/progress/label/ProgressLabelDataAttributes.js +13 -16
- package/progress/label/ProgressLabelDataAttributes.mjs +12 -15
- package/progress/root/ProgressRoot.d.mts +1 -2
- package/progress/root/ProgressRoot.d.ts +1 -2
- package/progress/root/ProgressRoot.js +29 -20
- package/progress/root/ProgressRoot.mjs +29 -20
- package/progress/root/ProgressRootContext.d.mts +4 -12
- package/progress/root/ProgressRootContext.d.ts +4 -12
- package/progress/root/ProgressRootDataAttributes.d.mts +12 -14
- package/progress/root/ProgressRootDataAttributes.d.ts +12 -14
- package/progress/root/ProgressRootDataAttributes.js +13 -16
- package/progress/root/ProgressRootDataAttributes.mjs +12 -15
- package/progress/root/stateAttributesMapping.js +5 -4
- package/progress/root/stateAttributesMapping.mjs +1 -1
- package/progress/track/ProgressTrackDataAttributes.d.mts +12 -14
- package/progress/track/ProgressTrackDataAttributes.d.ts +12 -14
- package/progress/track/ProgressTrackDataAttributes.js +13 -16
- package/progress/track/ProgressTrackDataAttributes.mjs +12 -15
- package/progress/value/ProgressValue.d.mts +1 -1
- package/progress/value/ProgressValue.d.ts +1 -1
- package/progress/value/ProgressValue.js +7 -3
- package/progress/value/ProgressValue.mjs +7 -3
- package/progress/value/ProgressValueDataAttributes.d.mts +12 -14
- package/progress/value/ProgressValueDataAttributes.d.ts +12 -14
- package/progress/value/ProgressValueDataAttributes.js +13 -16
- package/progress/value/ProgressValueDataAttributes.mjs +12 -15
- package/radio/indicator/RadioIndicator.js +2 -0
- package/radio/indicator/RadioIndicator.mjs +2 -0
- package/radio/indicator/RadioIndicatorDataAttributes.d.mts +52 -54
- package/radio/indicator/RadioIndicatorDataAttributes.d.ts +52 -54
- package/radio/indicator/RadioIndicatorDataAttributes.js +53 -56
- package/radio/indicator/RadioIndicatorDataAttributes.mjs +53 -55
- package/radio/root/RadioRoot.js +23 -32
- package/radio/root/RadioRoot.mjs +23 -32
- package/radio/root/RadioRootDataAttributes.d.mts +44 -46
- package/radio/root/RadioRootDataAttributes.d.ts +44 -46
- package/radio/root/RadioRootDataAttributes.js +45 -48
- package/radio/root/RadioRootDataAttributes.mjs +44 -47
- package/radio/utils/stateAttributesMapping.js +4 -3
- package/radio/utils/stateAttributesMapping.mjs +1 -1
- package/radio-group/RadioGroup.js +47 -32
- package/radio-group/RadioGroup.mjs +47 -32
- package/radio-group/RadioGroupContext.d.mts +0 -1
- package/radio-group/RadioGroupContext.d.ts +0 -1
- package/radio-group/RadioGroupDataAttributes.d.mts +4 -6
- package/radio-group/RadioGroupDataAttributes.d.ts +4 -6
- package/radio-group/RadioGroupDataAttributes.js +5 -8
- package/radio-group/RadioGroupDataAttributes.mjs +4 -7
- package/scroll-area/content/ScrollAreaContentDataAttributes.d.mts +28 -30
- package/scroll-area/content/ScrollAreaContentDataAttributes.d.ts +28 -30
- package/scroll-area/content/ScrollAreaContentDataAttributes.js +29 -32
- package/scroll-area/content/ScrollAreaContentDataAttributes.mjs +28 -31
- package/scroll-area/corner/ScrollAreaCorner.js +1 -0
- package/scroll-area/corner/ScrollAreaCorner.mjs +1 -0
- package/scroll-area/root/ScrollAreaRoot.js +121 -83
- package/scroll-area/root/ScrollAreaRoot.mjs +118 -80
- package/scroll-area/root/ScrollAreaRootContext.d.mts +1 -3
- package/scroll-area/root/ScrollAreaRootContext.d.ts +1 -3
- package/scroll-area/root/ScrollAreaRootCssVars.d.mts +10 -12
- package/scroll-area/root/ScrollAreaRootCssVars.d.ts +10 -12
- package/scroll-area/root/ScrollAreaRootCssVars.js +11 -14
- package/scroll-area/root/ScrollAreaRootCssVars.mjs +10 -13
- package/scroll-area/root/ScrollAreaRootDataAttributes.d.mts +28 -30
- package/scroll-area/root/ScrollAreaRootDataAttributes.d.ts +28 -30
- package/scroll-area/root/ScrollAreaRootDataAttributes.js +29 -32
- package/scroll-area/root/ScrollAreaRootDataAttributes.mjs +28 -31
- package/scroll-area/root/stateAttributes.js +11 -19
- package/scroll-area/root/stateAttributes.mjs +10 -19
- package/scroll-area/scrollbar/ScrollAreaScrollbar.js +66 -74
- package/scroll-area/scrollbar/ScrollAreaScrollbar.mjs +64 -71
- package/scroll-area/scrollbar/ScrollAreaScrollbarContext.d.mts +1 -3
- package/scroll-area/scrollbar/ScrollAreaScrollbarContext.d.ts +1 -3
- package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.d.mts +10 -12
- package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.d.ts +10 -12
- package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.js +11 -14
- package/scroll-area/scrollbar/ScrollAreaScrollbarCssVars.mjs +10 -13
- package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.d.mts +37 -39
- package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.d.ts +37 -39
- package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.js +38 -41
- package/scroll-area/scrollbar/ScrollAreaScrollbarDataAttributes.mjs +37 -40
- package/scroll-area/thumb/ScrollAreaThumb.js +10 -24
- package/scroll-area/thumb/ScrollAreaThumb.mjs +10 -24
- package/scroll-area/thumb/ScrollAreaThumbDataAttributes.d.mts +9 -11
- package/scroll-area/thumb/ScrollAreaThumbDataAttributes.d.ts +9 -11
- package/scroll-area/thumb/ScrollAreaThumbDataAttributes.js +10 -13
- package/scroll-area/thumb/ScrollAreaThumbDataAttributes.mjs +9 -12
- package/scroll-area/utils/getOffset.js +4 -3
- package/scroll-area/utils/getOffset.mjs +4 -3
- package/scroll-area/viewport/ScrollAreaViewport.js +78 -80
- package/scroll-area/viewport/ScrollAreaViewport.mjs +78 -81
- package/scroll-area/viewport/ScrollAreaViewportCssVars.d.mts +20 -22
- package/scroll-area/viewport/ScrollAreaViewportCssVars.d.ts +20 -22
- package/scroll-area/viewport/ScrollAreaViewportCssVars.js +21 -24
- package/scroll-area/viewport/ScrollAreaViewportCssVars.mjs +20 -23
- package/scroll-area/viewport/ScrollAreaViewportDataAttributes.d.mts +28 -30
- package/scroll-area/viewport/ScrollAreaViewportDataAttributes.d.ts +28 -30
- package/scroll-area/viewport/ScrollAreaViewportDataAttributes.js +29 -32
- package/scroll-area/viewport/ScrollAreaViewportDataAttributes.mjs +28 -31
- package/select/arrow/SelectArrow.d.mts +1 -1
- package/select/arrow/SelectArrow.d.ts +1 -1
- package/select/arrow/SelectArrow.js +3 -13
- package/select/arrow/SelectArrow.mjs +4 -13
- package/select/arrow/SelectArrowDataAttributes.d.mts +22 -24
- package/select/arrow/SelectArrowDataAttributes.d.ts +22 -24
- package/select/arrow/SelectArrowDataAttributes.js +23 -26
- package/select/arrow/SelectArrowDataAttributes.mjs +23 -25
- package/select/backdrop/SelectBackdrop.js +4 -8
- package/select/backdrop/SelectBackdrop.mjs +4 -8
- package/select/backdrop/SelectBackdropDataAttributes.d.mts +16 -18
- package/select/backdrop/SelectBackdropDataAttributes.d.ts +16 -18
- package/select/backdrop/SelectBackdropDataAttributes.js +17 -20
- package/select/backdrop/SelectBackdropDataAttributes.mjs +17 -19
- package/select/group-label/SelectGroupLabel.js +5 -1
- package/select/group-label/SelectGroupLabel.mjs +5 -1
- package/select/icon/SelectIcon.js +2 -6
- package/select/icon/SelectIcon.mjs +2 -6
- package/select/icon/SelectIconDataAttributes.d.mts +4 -6
- package/select/icon/SelectIconDataAttributes.d.ts +4 -6
- package/select/icon/SelectIconDataAttributes.js +5 -8
- package/select/icon/SelectIconDataAttributes.mjs +5 -7
- package/select/index.d.mts +2 -1
- package/select/index.d.ts +2 -1
- package/select/index.parts.d.mts +1 -1
- package/select/index.parts.d.ts +1 -1
- package/select/index.parts.js +2 -2
- package/select/index.parts.mjs +1 -1
- package/select/item/SelectItem.js +48 -60
- package/select/item/SelectItem.mjs +51 -63
- package/select/item/SelectItemContext.d.mts +0 -1
- package/select/item/SelectItemContext.d.ts +0 -1
- package/select/item/SelectItemDataAttributes.d.mts +12 -14
- package/select/item/SelectItemDataAttributes.d.ts +12 -14
- package/select/item/SelectItemDataAttributes.js +13 -16
- package/select/item/SelectItemDataAttributes.mjs +12 -15
- package/select/item-indicator/SelectItemIndicator.js +3 -2
- package/select/item-indicator/SelectItemIndicator.mjs +3 -2
- package/select/item-indicator/SelectItemIndicatorDataAttributes.d.mts +8 -10
- package/select/item-indicator/SelectItemIndicatorDataAttributes.d.ts +8 -10
- package/select/item-indicator/SelectItemIndicatorDataAttributes.js +9 -12
- package/select/item-indicator/SelectItemIndicatorDataAttributes.mjs +9 -11
- package/select/item-text/SelectItemText.js +7 -11
- package/select/item-text/SelectItemText.mjs +7 -11
- package/select/label/SelectLabel.js +5 -8
- package/select/label/SelectLabel.mjs +5 -8
- package/select/list/SelectList.js +10 -14
- package/select/list/SelectList.mjs +11 -15
- package/select/popup/SelectPopup.d.mts +1 -1
- package/select/popup/SelectPopup.d.ts +1 -1
- package/select/popup/SelectPopup.js +66 -95
- package/select/popup/SelectPopup.mjs +67 -96
- package/select/popup/SelectPopupDataAttributes.d.mts +26 -28
- package/select/popup/SelectPopupDataAttributes.d.ts +26 -28
- package/select/popup/SelectPopupDataAttributes.js +27 -30
- package/select/popup/SelectPopupDataAttributes.mjs +27 -29
- package/select/portal/SelectPortal.d.mts +7 -2
- package/select/portal/SelectPortal.d.ts +7 -2
- package/select/portal/SelectPortal.js +6 -14
- package/select/portal/SelectPortal.mjs +6 -14
- package/select/positioner/SelectPositioner.d.mts +1 -1
- package/select/positioner/SelectPositioner.d.ts +1 -1
- package/select/positioner/SelectPositioner.js +35 -64
- package/select/positioner/SelectPositioner.mjs +37 -66
- package/select/positioner/SelectPositionerContext.d.mts +1 -1
- package/select/positioner/SelectPositionerContext.d.ts +1 -1
- package/select/positioner/SelectPositionerCssVars.d.mts +25 -27
- package/select/positioner/SelectPositionerCssVars.d.ts +25 -27
- package/select/positioner/SelectPositionerCssVars.js +26 -29
- package/select/positioner/SelectPositionerCssVars.mjs +25 -28
- package/select/positioner/SelectPositionerDataAttributes.d.mts +22 -24
- package/select/positioner/SelectPositionerDataAttributes.d.ts +22 -24
- package/select/positioner/SelectPositionerDataAttributes.js +23 -26
- package/select/positioner/SelectPositionerDataAttributes.mjs +23 -25
- package/select/root/SelectRoot.d.mts +2 -0
- package/select/root/SelectRoot.d.ts +2 -0
- package/select/root/SelectRoot.js +143 -167
- package/select/root/SelectRoot.mjs +146 -170
- package/select/root/SelectRootContext.d.mts +10 -30
- package/select/root/SelectRootContext.d.ts +10 -30
- package/select/root/SelectRootContext.js +21 -6
- package/select/root/SelectRootContext.mjs +20 -5
- package/select/scroll-arrow/SelectScrollArrow.d.mts +1 -6
- package/select/scroll-arrow/SelectScrollArrow.d.ts +1 -6
- package/select/scroll-arrow/SelectScrollArrow.js +13 -28
- package/select/scroll-arrow/SelectScrollArrow.mjs +13 -28
- package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.d.mts +22 -24
- package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.d.ts +22 -24
- package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.js +23 -26
- package/select/scroll-down-arrow/SelectScrollDownArrowDataAttributes.mjs +23 -25
- package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.d.mts +22 -24
- package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.d.ts +22 -24
- package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.js +23 -26
- package/select/scroll-up-arrow/SelectScrollUpArrowDataAttributes.mjs +23 -25
- package/select/separator/SelectSeparator.d.mts +26 -0
- package/select/separator/SelectSeparator.d.ts +26 -0
- package/select/separator/SelectSeparator.js +15 -0
- package/select/separator/SelectSeparator.mjs +10 -0
- package/select/store.d.mts +32 -6
- package/select/store.d.ts +32 -6
- package/select/store.js +37 -35
- package/select/store.mjs +38 -35
- package/select/trigger/SelectTrigger.d.mts +1 -1
- package/select/trigger/SelectTrigger.d.ts +1 -1
- package/select/trigger/SelectTrigger.js +26 -35
- package/select/trigger/SelectTrigger.mjs +28 -37
- package/select/trigger/SelectTriggerDataAttributes.d.mts +53 -55
- package/select/trigger/SelectTriggerDataAttributes.d.ts +53 -55
- package/select/trigger/SelectTriggerDataAttributes.js +54 -57
- package/select/trigger/SelectTriggerDataAttributes.mjs +54 -56
- package/select/value/SelectValue.d.mts +2 -0
- package/select/value/SelectValue.d.ts +2 -0
- package/select/value/SelectValue.js +8 -13
- package/select/value/SelectValue.mjs +8 -13
- package/select/value/SelectValueDataAttributes.d.mts +4 -6
- package/select/value/SelectValueDataAttributes.d.ts +4 -6
- package/select/value/SelectValueDataAttributes.js +5 -8
- package/select/value/SelectValueDataAttributes.mjs +4 -7
- package/separator/SeparatorDataAttributes.d.mts +5 -7
- package/separator/SeparatorDataAttributes.d.ts +5 -7
- package/separator/SeparatorDataAttributes.js +6 -9
- package/separator/SeparatorDataAttributes.mjs +5 -8
- package/slider/control/SliderControl.js +62 -79
- package/slider/control/SliderControl.mjs +62 -79
- package/slider/control/SliderControlDataAttributes.d.mts +33 -35
- package/slider/control/SliderControlDataAttributes.d.ts +33 -35
- package/slider/control/SliderControlDataAttributes.js +34 -37
- package/slider/control/SliderControlDataAttributes.mjs +33 -36
- package/slider/indicator/SliderIndicator.js +15 -34
- package/slider/indicator/SliderIndicator.mjs +15 -34
- package/slider/indicator/SliderIndicatorDataAttributes.d.mts +33 -35
- package/slider/indicator/SliderIndicatorDataAttributes.d.ts +33 -35
- package/slider/indicator/SliderIndicatorDataAttributes.js +34 -37
- package/slider/indicator/SliderIndicatorDataAttributes.mjs +33 -36
- package/slider/root/SliderRoot.d.mts +5 -3
- package/slider/root/SliderRoot.d.ts +5 -3
- package/slider/root/SliderRoot.js +38 -49
- package/slider/root/SliderRoot.mjs +38 -49
- package/slider/root/SliderRootContext.d.mts +6 -4
- package/slider/root/SliderRootContext.d.ts +6 -4
- package/slider/root/SliderRootDataAttributes.d.mts +33 -35
- package/slider/root/SliderRootDataAttributes.d.ts +33 -35
- package/slider/root/SliderRootDataAttributes.js +34 -37
- package/slider/root/SliderRootDataAttributes.mjs +33 -36
- package/slider/root/stateAttributesMapping.js +7 -6
- package/slider/root/stateAttributesMapping.mjs +7 -6
- package/slider/thumb/SliderThumb.d.mts +1 -2
- package/slider/thumb/SliderThumb.d.ts +1 -2
- package/slider/thumb/SliderThumb.js +67 -71
- package/slider/thumb/SliderThumb.mjs +66 -70
- package/slider/thumb/SliderThumbDataAttributes.d.mts +37 -39
- package/slider/thumb/SliderThumbDataAttributes.d.ts +37 -39
- package/slider/thumb/SliderThumbDataAttributes.js +38 -41
- package/slider/thumb/SliderThumbDataAttributes.mjs +37 -40
- package/slider/track/SliderTrackDataAttributes.d.mts +33 -35
- package/slider/track/SliderTrackDataAttributes.d.ts +33 -35
- package/slider/track/SliderTrackDataAttributes.js +34 -37
- package/slider/track/SliderTrackDataAttributes.mjs +33 -36
- package/slider/utils/getMidpoint.d.mts +1 -2
- package/slider/utils/getMidpoint.d.ts +1 -2
- package/slider/utils/getMidpoint.js +2 -5
- package/slider/utils/getMidpoint.mjs +2 -5
- package/slider/utils/getPushedThumbValues.d.mts +4 -21
- package/slider/utils/getPushedThumbValues.d.ts +4 -21
- package/slider/utils/getPushedThumbValues.js +7 -16
- package/slider/utils/getPushedThumbValues.mjs +8 -16
- package/slider/utils/getSliderValue.js +9 -9
- package/slider/utils/getSliderValue.mjs +9 -9
- package/slider/utils/resolveThumbCollision.d.mts +5 -24
- package/slider/utils/resolveThumbCollision.d.ts +5 -24
- package/slider/utils/resolveThumbCollision.js +34 -65
- package/slider/utils/resolveThumbCollision.mjs +34 -65
- package/slider/utils/test-utils.d.mts +1 -11
- package/slider/utils/test-utils.d.ts +1 -11
- package/slider/utils/test-utils.js +1 -11
- package/slider/utils/test-utils.mjs +1 -11
- package/slider/utils/validateMinimumDistance.js +6 -7
- package/slider/utils/validateMinimumDistance.mjs +6 -7
- package/slider/value/SliderValue.js +7 -17
- package/slider/value/SliderValue.mjs +7 -17
- package/slider/value/SliderValueDataAttributes.d.mts +33 -35
- package/slider/value/SliderValueDataAttributes.d.ts +33 -35
- package/slider/value/SliderValueDataAttributes.js +34 -37
- package/slider/value/SliderValueDataAttributes.mjs +33 -36
- package/switch/root/SwitchRoot.js +20 -26
- package/switch/root/SwitchRoot.mjs +20 -26
- package/switch/root/SwitchRootDataAttributes.d.mts +44 -46
- package/switch/root/SwitchRootDataAttributes.d.ts +44 -46
- package/switch/root/SwitchRootDataAttributes.js +45 -48
- package/switch/root/SwitchRootDataAttributes.mjs +44 -47
- package/switch/stateAttributesMapping.js +4 -3
- package/switch/stateAttributesMapping.mjs +1 -1
- package/switch/thumb/SwitchThumbDataAttributes.d.mts +44 -46
- package/switch/thumb/SwitchThumbDataAttributes.d.ts +44 -46
- package/switch/thumb/SwitchThumbDataAttributes.js +45 -48
- package/switch/thumb/SwitchThumbDataAttributes.mjs +44 -47
- package/tabs/indicator/TabsIndicator.js +138 -33
- package/tabs/indicator/TabsIndicator.mjs +132 -27
- package/tabs/indicator/TabsIndicatorCssVars.d.mts +30 -32
- package/tabs/indicator/TabsIndicatorCssVars.d.ts +30 -32
- package/tabs/indicator/TabsIndicatorCssVars.js +31 -34
- package/tabs/indicator/TabsIndicatorCssVars.mjs +30 -33
- package/tabs/indicator/TabsIndicatorDataAttributes.d.mts +10 -12
- package/tabs/indicator/TabsIndicatorDataAttributes.d.ts +10 -12
- package/tabs/indicator/TabsIndicatorDataAttributes.js +11 -14
- package/tabs/indicator/TabsIndicatorDataAttributes.mjs +10 -13
- package/tabs/indicator/prehydrationScript.min.d.mts +1 -1
- package/tabs/indicator/prehydrationScript.min.d.ts +1 -1
- package/tabs/indicator/prehydrationScript.min.js +1 -1
- package/tabs/indicator/prehydrationScript.min.mjs +1 -1
- package/tabs/list/TabsList.js +1 -11
- package/tabs/list/TabsList.mjs +1 -11
- package/tabs/list/TabsListContext.d.mts +0 -5
- package/tabs/list/TabsListContext.d.ts +0 -5
- package/tabs/list/TabsListDataAttributes.d.mts +10 -12
- package/tabs/list/TabsListDataAttributes.d.ts +10 -12
- package/tabs/list/TabsListDataAttributes.js +11 -14
- package/tabs/list/TabsListDataAttributes.mjs +10 -13
- package/tabs/panel/TabsPanel.js +11 -20
- package/tabs/panel/TabsPanel.mjs +10 -19
- package/tabs/panel/TabsPanelDataAttributes.d.mts +26 -28
- package/tabs/panel/TabsPanelDataAttributes.d.ts +26 -28
- package/tabs/panel/TabsPanelDataAttributes.js +27 -30
- package/tabs/panel/TabsPanelDataAttributes.mjs +27 -29
- package/tabs/root/TabsRoot.js +40 -75
- package/tabs/root/TabsRoot.mjs +40 -75
- package/tabs/root/TabsRootContext.d.mts +4 -11
- package/tabs/root/TabsRootContext.d.ts +4 -11
- package/tabs/root/TabsRootDataAttributes.d.mts +10 -12
- package/tabs/root/TabsRootDataAttributes.d.ts +10 -12
- package/tabs/root/TabsRootDataAttributes.js +11 -14
- package/tabs/root/TabsRootDataAttributes.mjs +10 -13
- package/tabs/root/stateAttributesMapping.js +3 -2
- package/tabs/root/stateAttributesMapping.mjs +1 -1
- package/tabs/tab/TabsTab.js +42 -39
- package/tabs/tab/TabsTab.mjs +42 -39
- package/tabs/tab/TabsTabDataAttributes.d.mts +18 -20
- package/tabs/tab/TabsTabDataAttributes.d.ts +18 -20
- package/tabs/tab/TabsTabDataAttributes.js +19 -22
- package/tabs/tab/TabsTabDataAttributes.mjs +18 -21
- package/toast/action/ToastAction.js +2 -5
- package/toast/action/ToastAction.mjs +2 -5
- package/toast/action/ToastActionDataAttributes.d.mts +5 -7
- package/toast/action/ToastActionDataAttributes.d.ts +5 -7
- package/toast/action/ToastActionDataAttributes.js +6 -9
- package/toast/action/ToastActionDataAttributes.mjs +5 -8
- package/toast/arrow/ToastArrow.d.mts +1 -1
- package/toast/arrow/ToastArrow.d.ts +1 -1
- package/toast/arrow/ToastArrow.js +1 -2
- package/toast/arrow/ToastArrow.mjs +1 -2
- package/toast/arrow/ToastArrowDataAttributes.d.mts +14 -16
- package/toast/arrow/ToastArrowDataAttributes.d.ts +14 -16
- package/toast/arrow/ToastArrowDataAttributes.js +15 -18
- package/toast/arrow/ToastArrowDataAttributes.mjs +15 -17
- package/toast/close/ToastClose.js +3 -4
- package/toast/close/ToastClose.mjs +3 -4
- package/toast/close/ToastCloseDataAttributes.d.mts +5 -7
- package/toast/close/ToastCloseDataAttributes.d.ts +5 -7
- package/toast/close/ToastCloseDataAttributes.js +6 -9
- package/toast/close/ToastCloseDataAttributes.mjs +5 -8
- package/toast/content/ToastContent.js +3 -7
- package/toast/content/ToastContent.mjs +3 -7
- package/toast/content/ToastContentDataAttributes.d.mts +10 -12
- package/toast/content/ToastContentDataAttributes.d.ts +10 -12
- package/toast/content/ToastContentDataAttributes.js +11 -14
- package/toast/content/ToastContentDataAttributes.mjs +10 -13
- package/toast/createToastManager.d.mts +2 -2
- package/toast/createToastManager.d.ts +2 -2
- package/toast/createToastManager.js +2 -2
- package/toast/createToastManager.mjs +2 -2
- package/toast/description/ToastDescription.js +8 -23
- package/toast/description/ToastDescription.mjs +8 -23
- package/toast/description/ToastDescriptionDataAttributes.d.mts +5 -7
- package/toast/description/ToastDescriptionDataAttributes.d.ts +5 -7
- package/toast/description/ToastDescriptionDataAttributes.js +6 -9
- package/toast/description/ToastDescriptionDataAttributes.mjs +5 -8
- package/toast/portal/ToastPortal.d.mts +9 -3
- package/toast/portal/ToastPortal.d.ts +9 -3
- package/toast/portal/ToastPortal.js +10 -1
- package/toast/portal/ToastPortal.mjs +9 -2
- package/toast/positioner/ToastPositioner.d.mts +1 -1
- package/toast/positioner/ToastPositioner.d.ts +1 -1
- package/toast/positioner/ToastPositioner.js +5 -5
- package/toast/positioner/ToastPositioner.mjs +4 -4
- package/toast/positioner/ToastPositionerContext.d.mts +1 -1
- package/toast/positioner/ToastPositionerContext.d.ts +1 -1
- package/toast/positioner/ToastPositionerCssVars.d.mts +25 -27
- package/toast/positioner/ToastPositionerCssVars.d.ts +25 -27
- package/toast/positioner/ToastPositionerCssVars.js +26 -29
- package/toast/positioner/ToastPositionerCssVars.mjs +25 -28
- package/toast/positioner/ToastPositionerDataAttributes.d.mts +14 -16
- package/toast/positioner/ToastPositionerDataAttributes.d.ts +14 -16
- package/toast/positioner/ToastPositionerDataAttributes.js +15 -18
- package/toast/positioner/ToastPositionerDataAttributes.mjs +15 -17
- package/toast/provider/ToastProvider.js +20 -11
- package/toast/provider/ToastProvider.mjs +21 -12
- package/toast/root/ToastRoot.d.mts +2 -0
- package/toast/root/ToastRoot.d.ts +2 -0
- package/toast/root/ToastRoot.js +97 -141
- package/toast/root/ToastRoot.mjs +92 -136
- package/toast/root/ToastRootContext.d.mts +0 -6
- package/toast/root/ToastRootContext.d.ts +0 -6
- package/toast/root/ToastRootCssVars.d.mts +25 -27
- package/toast/root/ToastRootCssVars.d.ts +25 -27
- package/toast/root/ToastRootCssVars.js +26 -29
- package/toast/root/ToastRootCssVars.mjs +25 -28
- package/toast/root/ToastRootDataAttributes.d.mts +33 -35
- package/toast/root/ToastRootDataAttributes.d.ts +33 -35
- package/toast/root/ToastRootDataAttributes.js +34 -37
- package/toast/root/ToastRootDataAttributes.mjs +34 -36
- package/toast/store.d.mts +18 -23
- package/toast/store.d.ts +18 -23
- package/toast/store.js +59 -85
- package/toast/store.mjs +61 -86
- package/toast/title/ToastTitle.js +8 -23
- package/toast/title/ToastTitle.mjs +8 -23
- package/toast/title/ToastTitleDataAttributes.d.mts +5 -7
- package/toast/title/ToastTitleDataAttributes.d.ts +5 -7
- package/toast/title/ToastTitleDataAttributes.js +6 -9
- package/toast/title/ToastTitleDataAttributes.mjs +5 -8
- package/toast/useToastManager.d.mts +1 -1
- package/toast/useToastManager.d.ts +1 -1
- package/toast/useToastManager.js +1 -6
- package/toast/useToastManager.mjs +2 -6
- package/toast/utils/isRenderableNode.d.mts +3 -0
- package/toast/utils/isRenderableNode.d.ts +3 -0
- package/toast/utils/isRenderableNode.js +21 -0
- package/toast/utils/isRenderableNode.mjs +13 -0
- package/toast/utils/test-utils.d.mts +1 -8
- package/toast/utils/test-utils.d.ts +1 -8
- package/toast/utils/useToastLabelPart.d.mts +18 -0
- package/toast/utils/useToastLabelPart.d.ts +18 -0
- package/toast/utils/useToastLabelPart.js +52 -0
- package/toast/utils/useToastLabelPart.mjs +47 -0
- package/toast/viewport/ToastViewport.js +43 -78
- package/toast/viewport/ToastViewport.mjs +43 -78
- package/toast/viewport/ToastViewportCssVars.d.mts +5 -7
- package/toast/viewport/ToastViewportCssVars.d.ts +5 -7
- package/toast/viewport/ToastViewportCssVars.js +6 -9
- package/toast/viewport/ToastViewportCssVars.mjs +5 -8
- package/toast/viewport/ToastViewportDataAttributes.d.mts +5 -7
- package/toast/viewport/ToastViewportDataAttributes.d.ts +5 -7
- package/toast/viewport/ToastViewportDataAttributes.js +6 -9
- package/toast/viewport/ToastViewportDataAttributes.mjs +5 -8
- package/toggle/Toggle.js +2 -4
- package/toggle/Toggle.mjs +2 -4
- package/toggle/ToggleDataAttributes.d.mts +8 -10
- package/toggle/ToggleDataAttributes.d.ts +8 -10
- package/toggle/ToggleDataAttributes.js +9 -12
- package/toggle/ToggleDataAttributes.mjs +8 -11
- package/toggle-group/ToggleGroup.js +7 -20
- package/toggle-group/ToggleGroup.mjs +7 -20
- package/toggle-group/ToggleGroupContext.d.mts +1 -3
- package/toggle-group/ToggleGroupContext.d.ts +1 -3
- package/toggle-group/ToggleGroupContext.js +2 -8
- package/toggle-group/ToggleGroupContext.mjs +2 -7
- package/toggle-group/ToggleGroupDataAttributes.d.mts +13 -15
- package/toggle-group/ToggleGroupDataAttributes.d.ts +13 -15
- package/toggle-group/ToggleGroupDataAttributes.js +14 -17
- package/toggle-group/ToggleGroupDataAttributes.mjs +13 -16
- package/toolbar/button/ToolbarButton.js +2 -2
- package/toolbar/button/ToolbarButton.mjs +2 -2
- package/toolbar/button/ToolbarButtonDataAttributes.d.mts +13 -15
- package/toolbar/button/ToolbarButtonDataAttributes.d.ts +13 -15
- package/toolbar/button/ToolbarButtonDataAttributes.js +14 -17
- package/toolbar/button/ToolbarButtonDataAttributes.mjs +13 -16
- package/toolbar/group/ToolbarGroupContext.d.mts +1 -2
- package/toolbar/group/ToolbarGroupContext.d.ts +1 -2
- package/toolbar/group/ToolbarGroupContext.js +2 -8
- package/toolbar/group/ToolbarGroupContext.mjs +2 -7
- package/toolbar/group/ToolbarGroupDataAttributes.d.mts +9 -11
- package/toolbar/group/ToolbarGroupDataAttributes.d.ts +9 -11
- package/toolbar/group/ToolbarGroupDataAttributes.js +10 -13
- package/toolbar/group/ToolbarGroupDataAttributes.mjs +9 -12
- package/toolbar/input/ToolbarInput.js +8 -11
- package/toolbar/input/ToolbarInput.mjs +8 -11
- package/toolbar/input/ToolbarInputDataAttributes.d.mts +13 -15
- package/toolbar/input/ToolbarInputDataAttributes.d.ts +13 -15
- package/toolbar/input/ToolbarInputDataAttributes.js +14 -17
- package/toolbar/input/ToolbarInputDataAttributes.mjs +13 -16
- package/toolbar/link/ToolbarLink.d.mts +1 -1
- package/toolbar/link/ToolbarLink.d.ts +1 -1
- package/toolbar/link/ToolbarLinkDataAttributes.d.mts +5 -7
- package/toolbar/link/ToolbarLinkDataAttributes.d.ts +5 -7
- package/toolbar/link/ToolbarLinkDataAttributes.js +6 -9
- package/toolbar/link/ToolbarLinkDataAttributes.mjs +5 -8
- package/toolbar/root/ToolbarRoot.js +4 -5
- package/toolbar/root/ToolbarRoot.mjs +4 -5
- package/toolbar/root/ToolbarRootContext.d.mts +0 -3
- package/toolbar/root/ToolbarRootContext.d.ts +0 -3
- package/toolbar/root/ToolbarRootDataAttributes.d.mts +9 -11
- package/toolbar/root/ToolbarRootDataAttributes.d.ts +9 -11
- package/toolbar/root/ToolbarRootDataAttributes.js +10 -13
- package/toolbar/root/ToolbarRootDataAttributes.mjs +9 -12
- package/toolbar/separator/ToolbarSeparator.d.mts +2 -2
- package/toolbar/separator/ToolbarSeparator.d.ts +2 -2
- package/toolbar/separator/ToolbarSeparator.js +1 -4
- package/toolbar/separator/ToolbarSeparator.mjs +3 -5
- package/toolbar/separator/ToolbarSeparatorDataAttributes.d.mts +5 -7
- package/toolbar/separator/ToolbarSeparatorDataAttributes.d.ts +5 -7
- package/toolbar/separator/ToolbarSeparatorDataAttributes.js +6 -9
- package/toolbar/separator/ToolbarSeparatorDataAttributes.mjs +5 -8
- package/tooltip/arrow/TooltipArrow.d.mts +1 -1
- package/tooltip/arrow/TooltipArrow.d.ts +1 -1
- package/tooltip/arrow/TooltipArrowDataAttributes.d.mts +27 -29
- package/tooltip/arrow/TooltipArrowDataAttributes.d.ts +27 -29
- package/tooltip/arrow/TooltipArrowDataAttributes.js +28 -31
- package/tooltip/arrow/TooltipArrowDataAttributes.mjs +28 -30
- package/tooltip/popup/TooltipPopup.d.mts +1 -1
- package/tooltip/popup/TooltipPopup.d.ts +1 -1
- package/tooltip/popup/TooltipPopup.js +4 -9
- package/tooltip/popup/TooltipPopup.mjs +5 -9
- package/tooltip/popup/TooltipPopupDataAttributes.d.mts +31 -33
- package/tooltip/popup/TooltipPopupDataAttributes.d.ts +31 -33
- package/tooltip/popup/TooltipPopupDataAttributes.js +32 -35
- package/tooltip/popup/TooltipPopupDataAttributes.mjs +32 -34
- package/tooltip/portal/TooltipPortal.d.mts +6 -2
- package/tooltip/portal/TooltipPortal.d.ts +6 -2
- package/tooltip/portal/TooltipPortal.mjs +1 -2
- package/tooltip/positioner/TooltipPositioner.d.mts +1 -1
- package/tooltip/positioner/TooltipPositioner.d.ts +1 -1
- package/tooltip/positioner/TooltipPositioner.js +3 -4
- package/tooltip/positioner/TooltipPositioner.mjs +3 -4
- package/tooltip/positioner/TooltipPositionerContext.d.mts +1 -1
- package/tooltip/positioner/TooltipPositionerContext.d.ts +1 -1
- package/tooltip/positioner/TooltipPositionerCssVars.d.mts +37 -27
- package/tooltip/positioner/TooltipPositionerCssVars.d.ts +37 -27
- package/tooltip/positioner/TooltipPositionerCssVars.js +38 -29
- package/tooltip/positioner/TooltipPositionerCssVars.mjs +37 -28
- package/tooltip/positioner/TooltipPositionerDataAttributes.d.mts +22 -24
- package/tooltip/positioner/TooltipPositionerDataAttributes.d.ts +22 -24
- package/tooltip/positioner/TooltipPositionerDataAttributes.js +23 -26
- package/tooltip/positioner/TooltipPositionerDataAttributes.mjs +23 -25
- package/tooltip/provider/TooltipProvider.d.mts +1 -1
- package/tooltip/provider/TooltipProvider.d.ts +1 -1
- package/tooltip/provider/TooltipProvider.js +1 -5
- package/tooltip/provider/TooltipProvider.mjs +1 -5
- package/tooltip/provider/TooltipProviderContext.d.mts +5 -6
- package/tooltip/provider/TooltipProviderContext.d.ts +5 -6
- package/tooltip/provider/TooltipProviderContext.js +3 -0
- package/tooltip/provider/TooltipProviderContext.mjs +4 -0
- package/tooltip/root/TooltipRoot.d.mts +1 -1
- package/tooltip/root/TooltipRoot.d.ts +1 -1
- package/tooltip/root/TooltipRoot.js +18 -17
- package/tooltip/root/TooltipRoot.mjs +19 -18
- package/tooltip/store/TooltipHandle.d.mts +15 -12
- package/tooltip/store/TooltipHandle.d.ts +15 -12
- package/tooltip/store/TooltipHandle.js +18 -23
- package/tooltip/store/TooltipHandle.mjs +19 -23
- package/tooltip/store/TooltipStore.d.mts +24 -6
- package/tooltip/store/TooltipStore.d.ts +24 -6
- package/tooltip/store/TooltipStore.js +54 -32
- package/tooltip/store/TooltipStore.mjs +54 -33
- package/tooltip/trigger/TooltipTrigger.d.mts +1 -1
- package/tooltip/trigger/TooltipTrigger.d.ts +1 -1
- package/tooltip/trigger/TooltipTrigger.js +18 -26
- package/tooltip/trigger/TooltipTrigger.mjs +18 -26
- package/tooltip/trigger/TooltipTriggerDataAttributes.d.mts +8 -10
- package/tooltip/trigger/TooltipTriggerDataAttributes.d.ts +8 -10
- package/tooltip/trigger/TooltipTriggerDataAttributes.js +9 -12
- package/tooltip/trigger/TooltipTriggerDataAttributes.mjs +9 -11
- package/tooltip/viewport/TooltipViewport.js +1 -9
- package/tooltip/viewport/TooltipViewport.mjs +2 -9
- package/tooltip/viewport/TooltipViewportCssVars.d.mts +12 -14
- package/tooltip/viewport/TooltipViewportCssVars.d.ts +12 -14
- package/tooltip/viewport/TooltipViewportCssVars.js +13 -16
- package/tooltip/viewport/TooltipViewportCssVars.mjs +12 -15
- package/tooltip/viewport/TooltipViewportDataAttributes.d.mts +24 -26
- package/tooltip/viewport/TooltipViewportDataAttributes.d.ts +24 -26
- package/tooltip/viewport/TooltipViewportDataAttributes.js +25 -28
- package/tooltip/viewport/TooltipViewportDataAttributes.mjs +24 -27
- package/utils/CommonPopupCssVars.d.mts +12 -0
- package/utils/CommonPopupCssVars.d.ts +12 -0
- package/utils/CommonPopupCssVars.js +18 -0
- package/utils/CommonPopupCssVars.mjs +12 -0
- package/utils/CommonPopupDataAttributes.d.mts +30 -0
- package/utils/CommonPopupDataAttributes.d.ts +30 -0
- package/utils/CommonPopupDataAttributes.js +44 -0
- package/utils/CommonPopupDataAttributes.mjs +38 -0
- package/utils/CommonPositionerCssVars.d.mts +37 -0
- package/utils/CommonPositionerCssVars.d.ts +37 -0
- package/utils/CommonPositionerCssVars.js +43 -0
- package/utils/CommonPositionerCssVars.mjs +37 -0
- package/utils/CommonTriggerDataAttributes.d.mts +8 -0
- package/utils/CommonTriggerDataAttributes.d.ts +8 -0
- package/utils/CommonTriggerDataAttributes.js +15 -0
- package/utils/CommonTriggerDataAttributes.mjs +9 -0
- package/utils/CommonViewportDataAttributes.d.mts +7 -0
- package/utils/CommonViewportDataAttributes.d.ts +7 -0
- package/utils/CommonViewportDataAttributes.js +13 -0
- package/utils/CommonViewportDataAttributes.mjs +7 -0
- package/utils/FloatingPortalLite.d.mts +7 -9
- package/utils/FloatingPortalLite.d.ts +7 -9
- package/utils/FloatingPortalLite.js +4 -4
- package/utils/FloatingPortalLite.mjs +4 -5
- package/utils/FocusGuard.d.mts +1 -5
- package/utils/FocusGuard.d.ts +1 -5
- package/utils/InternalBackdrop.d.mts +0 -4
- package/utils/InternalBackdrop.d.ts +0 -4
- package/utils/NullStore.d.mts +15 -0
- package/utils/NullStore.d.ts +15 -0
- package/utils/NullStore.js +23 -0
- package/utils/NullStore.mjs +16 -0
- package/utils/adaptiveOriginConstants.d.mts +8 -0
- package/utils/adaptiveOriginConstants.d.ts +8 -0
- package/utils/adaptiveOriginConstants.js +14 -0
- package/utils/adaptiveOriginConstants.mjs +8 -0
- package/utils/adaptiveOriginMiddleware.d.mts +0 -4
- package/utils/adaptiveOriginMiddleware.d.ts +0 -4
- package/utils/adaptiveOriginMiddleware.js +5 -8
- package/utils/adaptiveOriginMiddleware.mjs +1 -4
- package/utils/closePart.d.mts +1 -4
- package/utils/closePart.d.ts +1 -4
- package/utils/closePart.js +2 -13
- package/utils/closePart.mjs +1 -12
- package/utils/collapsibleOpenStateMapping.js +6 -5
- package/utils/collapsibleOpenStateMapping.mjs +2 -2
- package/utils/dispatchClickWithModifiers.d.mts +21 -0
- package/utils/dispatchClickWithModifiers.d.ts +21 -0
- package/utils/dispatchClickWithModifiers.js +30 -0
- package/utils/dispatchClickWithModifiers.mjs +24 -0
- package/utils/getElementAtPoint.d.mts +3 -1
- package/utils/getElementAtPoint.d.ts +3 -1
- package/utils/getElementAtPoint.js +5 -2
- package/utils/getElementAtPoint.mjs +5 -2
- package/utils/getElementTransform.d.mts +12 -0
- package/utils/getElementTransform.d.ts +12 -0
- package/utils/getElementTransform.js +40 -0
- package/utils/getElementTransform.mjs +35 -0
- package/utils/getPseudoElementBounds.d.mts +5 -0
- package/utils/getPseudoElementBounds.d.ts +5 -0
- package/utils/getPseudoElementBounds.js +14 -0
- package/utils/getPseudoElementBounds.mjs +13 -0
- package/utils/hideMiddleware.js +7 -4
- package/utils/hideMiddleware.mjs +7 -4
- package/utils/listbox-separator/ListboxSeparator.d.mts +18 -0
- package/utils/listbox-separator/ListboxSeparator.d.ts +18 -0
- package/utils/listbox-separator/ListboxSeparator.js +36 -0
- package/utils/listbox-separator/ListboxSeparator.mjs +31 -0
- package/utils/popupStateMapping.d.mts +15 -42
- package/utils/popupStateMapping.d.ts +15 -42
- package/utils/popupStateMapping.js +10 -45
- package/utils/popupStateMapping.mjs +8 -45
- package/utils/popups/index.d.mts +3 -1
- package/utils/popups/index.d.ts +3 -1
- package/utils/popups/index.js +22 -0
- package/utils/popups/index.mjs +3 -1
- package/utils/popups/popupHandle.d.mts +113 -0
- package/utils/popups/popupHandle.d.ts +113 -0
- package/utils/popups/popupHandle.js +229 -0
- package/utils/popups/popupHandle.mjs +222 -0
- package/utils/popups/popupStoreUtils.d.mts +73 -21
- package/utils/popups/popupStoreUtils.d.ts +73 -21
- package/utils/popups/popupStoreUtils.js +184 -92
- package/utils/popups/popupStoreUtils.mjs +181 -89
- package/utils/popups/popupTriggerMap.d.mts +3 -2
- package/utils/popups/popupTriggerMap.d.ts +3 -2
- package/utils/popups/popupTriggerMap.js +48 -21
- package/utils/popups/popupTriggerMap.mjs +48 -21
- package/utils/popups/store.d.mts +21 -5
- package/utils/popups/store.d.ts +21 -5
- package/utils/popups/store.js +46 -39
- package/utils/popups/store.mjs +46 -38
- package/utils/popups/usePopupHandleStore.d.mts +12 -0
- package/utils/popups/usePopupHandleStore.d.ts +12 -0
- package/utils/popups/usePopupHandleStore.js +33 -0
- package/utils/popups/usePopupHandleStore.mjs +27 -0
- package/utils/scrollEdges.js +1 -1
- package/utils/scrollEdges.mjs +1 -1
- package/utils/scrollable.d.mts +2 -0
- package/utils/scrollable.d.ts +2 -0
- package/utils/scrollable.js +20 -12
- package/utils/scrollable.mjs +18 -12
- package/utils/styles.d.mts +1 -1
- package/utils/styles.d.ts +1 -1
- package/utils/usePopupAutoResize.d.mts +1 -1
- package/utils/usePopupAutoResize.d.ts +1 -1
- package/utils/usePopupAutoResize.js +25 -26
- package/utils/usePopupAutoResize.mjs +26 -26
- package/utils/usePopupViewport.d.mts +5 -15
- package/utils/usePopupViewport.d.ts +5 -15
- package/utils/usePopupViewport.js +50 -17
- package/utils/usePopupViewport.mjs +49 -17
- package/utils/usePositioner.js +1 -1
- package/utils/usePositioner.mjs +1 -1
- package/utils/useRegisteredLabelId.d.mts +2 -1
- package/utils/useRegisteredLabelId.d.ts +2 -1
- package/utils/useRegisteredLabelId.js +1 -1
- package/utils/useRegisteredLabelId.mjs +1 -1
- package/utils/useSwipeDismiss.d.mts +0 -5
- package/utils/useSwipeDismiss.d.ts +0 -5
- package/utils/useSwipeDismiss.js +86 -146
- package/utils/useSwipeDismiss.mjs +86 -145
- package/internals/areArraysEqual.d.mts +0 -3
- package/internals/areArraysEqual.d.ts +0 -3
- package/internals/areArraysEqual.js +0 -9
- package/internals/areArraysEqual.mjs +0 -3
- package/internals/clamp.d.mts +0 -1
- package/internals/clamp.d.ts +0 -1
- package/internals/clamp.js +0 -9
- package/internals/clamp.mjs +0 -3
- package/internals/shadowDom.d.mts +0 -3
- package/internals/shadowDom.d.ts +0 -3
- package/internals/shadowDom.js +0 -48
- package/internals/shadowDom.mjs +0 -40
- package/number-field/root/useNumberFieldButton.d.mts +0 -21
- package/number-field/root/useNumberFieldButton.d.ts +0 -21
- package/number-field/root/useNumberFieldButton.js +0 -135
- package/number-field/root/useNumberFieldButton.mjs +0 -130
- package/number-field/utils/subscribeToVisualViewportResize.d.mts +0 -1
- package/number-field/utils/subscribeToVisualViewportResize.d.ts +0 -1
- package/number-field/utils/subscribeToVisualViewportResize.js +0 -23
- package/number-field/utils/subscribeToVisualViewportResize.mjs +0 -18
- package/select/portal/SelectPortalContext.d.mts +0 -3
- package/select/portal/SelectPortalContext.d.ts +0 -3
- package/select/portal/SelectPortalContext.js +0 -21
- package/select/portal/SelectPortalContext.mjs +0 -13
- package/slider/utils/replaceArrayItemAtIndex.d.mts +0 -1
- package/slider/utils/replaceArrayItemAtIndex.d.ts +0 -1
- package/slider/utils/replaceArrayItemAtIndex.js +0 -12
- package/slider/utils/replaceArrayItemAtIndex.mjs +0 -6
- package/slider/utils/valueArrayToPercentages.d.mts +0 -1
- package/slider/utils/valueArrayToPercentages.d.ts +0 -1
- package/slider/utils/valueArrayToPercentages.js +0 -15
- package/slider/utils/valueArrayToPercentages.mjs +0 -9
- package/utils/formatNumber.d.mts +0 -4
- package/utils/formatNumber.d.ts +0 -4
- package/utils/formatNumber.js +0 -41
- package/utils/formatNumber.mjs +0 -32
- package/utils/stringifyLocale.d.mts +0 -1
- package/utils/stringifyLocale.d.ts +0 -1
- package/utils/stringifyLocale.js +0 -15
- package/utils/stringifyLocale.mjs +0 -9
- /package/drawer/content/{DrawerContentDataAttributes.d.mts → drawerContentAttribute.d.mts} +0 -0
- /package/drawer/content/{DrawerContentDataAttributes.d.ts → drawerContentAttribute.d.ts} +0 -0
- /package/drawer/content/{DrawerContentDataAttributes.js → drawerContentAttribute.js} +0 -0
- /package/drawer/content/{DrawerContentDataAttributes.mjs → drawerContentAttribute.mjs} +0 -0
|
@@ -6,19 +6,21 @@ import { isElement } from '@floating-ui/utils/dom';
|
|
|
6
6
|
import { addEventListener } from '@base-ui/utils/addEventListener';
|
|
7
7
|
import { ownerDocument, ownerWindow } from '@base-ui/utils/owner';
|
|
8
8
|
import { useAnimationFrame } from '@base-ui/utils/useAnimationFrame';
|
|
9
|
+
import { useIsoLayoutEffect } from '@base-ui/utils/useIsoLayoutEffect';
|
|
9
10
|
import { useStableCallback } from '@base-ui/utils/useStableCallback';
|
|
11
|
+
import { clamp } from '@base-ui/utils/clamp';
|
|
10
12
|
import { useDialogRootContext } from "../../dialog/root/DialogRootContext.mjs";
|
|
11
13
|
import { DialogViewport } from "../../dialog/viewport/DialogViewport.mjs";
|
|
14
|
+
import * as DialogViewportDataAttributes from "../../dialog/viewport/DialogViewportDataAttributes.mjs";
|
|
12
15
|
import { mergeProps } from "../../merge-props/index.mjs";
|
|
13
16
|
import { useDrawerRootContext } from "../root/DrawerRootContext.mjs";
|
|
14
|
-
import { getSnapPointSwipeMovement, useDrawerSnapPoints } from "../root/useDrawerSnapPoints.mjs";
|
|
17
|
+
import { closestSnapPointIndex, getSnapPointSwipeMovement, useDrawerSnapPoints } from "../root/useDrawerSnapPoints.mjs";
|
|
15
18
|
import { useDrawerProviderContext } from "../provider/DrawerProviderContext.mjs";
|
|
16
|
-
import {
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import {
|
|
21
|
-
import { DRAWER_CONTENT_ATTRIBUTE } from "../content/DrawerContentDataAttributes.mjs";
|
|
19
|
+
import { getDisplacement, useSwipeDismiss } from "../../utils/useSwipeDismiss.mjs";
|
|
20
|
+
import * as DrawerPopupCssVars from "../popup/DrawerPopupCssVars.mjs";
|
|
21
|
+
import * as DrawerPopupDataAttributes from "../popup/DrawerPopupDataAttributes.mjs";
|
|
22
|
+
import * as DrawerBackdropCssVars from "../backdrop/DrawerBackdropCssVars.mjs";
|
|
23
|
+
import { DRAWER_CONTENT_ATTRIBUTE } from "../content/drawerContentAttribute.mjs";
|
|
22
24
|
import { REASONS } from "../../internals/reasons.mjs";
|
|
23
25
|
import { createChangeEventDetails } from "../../internals/createBaseUIEventDetails.mjs";
|
|
24
26
|
import { activeElement, contains, getTarget } from "../../floating-ui-react/utils.mjs";
|
|
@@ -40,6 +42,8 @@ const MIN_SWIPE_RELEASE_DURATION_MS = 80;
|
|
|
40
42
|
const MAX_SWIPE_RELEASE_DURATION_MS = 360;
|
|
41
43
|
const MIN_SWIPE_RELEASE_SCALAR = 0.1;
|
|
42
44
|
const MAX_SWIPE_RELEASE_SCALAR = 1;
|
|
45
|
+
const AXIS_LOCK_SLOP = 6;
|
|
46
|
+
const AXIS_LOCK_BIAS = 2;
|
|
43
47
|
const DRAWER_CONTENT_SELECTOR = `[${DRAWER_CONTENT_ATTRIBUTE}]`;
|
|
44
48
|
/**
|
|
45
49
|
* A positioning container for the drawer popup that can be made scrollable.
|
|
@@ -55,9 +59,7 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
55
59
|
children,
|
|
56
60
|
...elementProps
|
|
57
61
|
} = props;
|
|
58
|
-
const
|
|
59
|
-
store
|
|
60
|
-
} = useDialogRootContext();
|
|
62
|
+
const store = useDialogRootContext();
|
|
61
63
|
const popupRef = store.context.popupRef;
|
|
62
64
|
const backdropRef = store.context.backdropRef;
|
|
63
65
|
const {
|
|
@@ -65,9 +67,10 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
65
67
|
notifyParentSwipingChange,
|
|
66
68
|
notifyParentSwipeProgressChange,
|
|
67
69
|
frontmostHeight,
|
|
68
|
-
snapToSequentialPoints
|
|
70
|
+
snapToSequentialPoints,
|
|
71
|
+
swipeAreaActiveRef
|
|
69
72
|
} = useDrawerRootContext();
|
|
70
|
-
const providerContext = useDrawerProviderContext(
|
|
73
|
+
const providerContext = useDrawerProviderContext();
|
|
71
74
|
const {
|
|
72
75
|
snapPoints,
|
|
73
76
|
resolvedSnapPoints,
|
|
@@ -99,30 +102,13 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
99
102
|
const touchScrollStateRef = React.useRef(null);
|
|
100
103
|
const virtualKeyboard = useDrawerVirtualKeyboardContext();
|
|
101
104
|
const snapPointRange = React.useMemo(() => {
|
|
102
|
-
if (!snapPoints || snapPoints.length < 2) {
|
|
103
|
-
return null;
|
|
104
|
-
}
|
|
105
|
-
if (swipeDirection !== 'down' && swipeDirection !== 'up') {
|
|
106
|
-
return null;
|
|
107
|
-
}
|
|
108
|
-
if (resolvedSnapPoints.length < 2) {
|
|
109
|
-
return null;
|
|
110
|
-
}
|
|
111
|
-
const offsets = resolvedSnapPoints.map(point => point.offset).filter(offset => Number.isFinite(offset)).sort((a, b) => a - b);
|
|
112
|
-
if (offsets.length < 2) {
|
|
105
|
+
if (!snapPoints || snapPoints.length < 2 || resolvedSnapPoints.length < 2 || swipeDirection !== 'down' && swipeDirection !== 'up') {
|
|
113
106
|
return null;
|
|
114
107
|
}
|
|
108
|
+
const offsets = resolvedSnapPoints.map(point => point.offset).sort((a, b) => a - b);
|
|
115
109
|
const minOffset = offsets[0];
|
|
116
110
|
const nextOffset = offsets[1];
|
|
117
|
-
const
|
|
118
|
-
let range = nextOffset - minOffset;
|
|
119
|
-
if (!Number.isFinite(range) || range <= 0) {
|
|
120
|
-
const fallbackRange = maxOffset - minOffset;
|
|
121
|
-
if (!Number.isFinite(fallbackRange) || fallbackRange <= 0) {
|
|
122
|
-
return null;
|
|
123
|
-
}
|
|
124
|
-
range = fallbackRange;
|
|
125
|
-
}
|
|
111
|
+
const range = nextOffset - minOffset;
|
|
126
112
|
return {
|
|
127
113
|
minOffset,
|
|
128
114
|
range
|
|
@@ -141,7 +127,8 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
141
127
|
return [swipeDirection];
|
|
142
128
|
}, [snapPoints, swipeDirection]);
|
|
143
129
|
const setSwipeDismissed = useStableCallback(dismissed => {
|
|
144
|
-
|
|
130
|
+
popupRef.current?.toggleAttribute(DrawerPopupDataAttributes.swipeDismiss, dismissed);
|
|
131
|
+
backdropRef.current?.toggleAttribute(DrawerPopupDataAttributes.swipeDismiss, dismissed);
|
|
145
132
|
});
|
|
146
133
|
const clearSwipeRelease = useStableCallback(() => {
|
|
147
134
|
setSwipeDismissed(false);
|
|
@@ -155,11 +142,7 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
155
142
|
nestedSwipeActiveRef.current = false;
|
|
156
143
|
notifyParentSwipingChange?.(false);
|
|
157
144
|
});
|
|
158
|
-
const applySwipeProgress = useStableCallback(({
|
|
159
|
-
resolvedProgress,
|
|
160
|
-
shouldTrackProgress,
|
|
161
|
-
notifyParent
|
|
162
|
-
}) => {
|
|
145
|
+
const applySwipeProgress = useStableCallback((resolvedProgress, shouldTrackProgress, notifyParent) => {
|
|
163
146
|
const isActive = open && !nested && shouldTrackProgress;
|
|
164
147
|
const swipeProgress = isActive ? resolvedProgress : 0;
|
|
165
148
|
const nestedSwipeProgress = open && shouldTrackProgress ? resolvedProgress : 0;
|
|
@@ -177,78 +160,48 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
177
160
|
if (!backdropElement) {
|
|
178
161
|
return;
|
|
179
162
|
}
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
backdropElement.style.setProperty(DrawerBackdropCssVars.swipeProgress, `${swipeProgress}`);
|
|
186
|
-
if (frontmostHeight > 0) {
|
|
163
|
+
const showProgress = isActive && swipeProgress > 0;
|
|
164
|
+
backdropElement.style.setProperty(DrawerBackdropCssVars.swipeProgress, showProgress ? `${swipeProgress}` : '0');
|
|
165
|
+
if (showProgress && frontmostHeight > 0) {
|
|
187
166
|
backdropElement.style.setProperty(DrawerPopupCssVars.height, `${frontmostHeight}px`);
|
|
188
167
|
} else {
|
|
189
168
|
backdropElement.style.removeProperty(DrawerPopupCssVars.height);
|
|
190
169
|
}
|
|
191
170
|
});
|
|
192
|
-
function resolveSwipeRelease({
|
|
193
|
-
direction
|
|
194
|
-
|
|
195
|
-
deltaY,
|
|
196
|
-
velocityX,
|
|
197
|
-
velocityY,
|
|
198
|
-
releaseVelocityX,
|
|
199
|
-
releaseVelocityY
|
|
200
|
-
}) {
|
|
201
|
-
if (!direction) {
|
|
202
|
-
return null;
|
|
203
|
-
}
|
|
204
|
-
const popupElement = store.context.popupRef.current;
|
|
205
|
-
if (!popupElement) {
|
|
206
|
-
return null;
|
|
207
|
-
}
|
|
208
|
-
const size = direction === 'left' || direction === 'right' ? popupElement.offsetWidth : popupElement.offsetHeight;
|
|
209
|
-
if (!Number.isFinite(size) || size <= 0) {
|
|
171
|
+
function resolveSwipeRelease(popupElement, direction, deltaX, deltaY, velocityX, velocityY, releaseVelocityX, releaseVelocityY) {
|
|
172
|
+
const size = getBaseSwipeSize(popupElement, direction);
|
|
173
|
+
if (size <= 0) {
|
|
210
174
|
return null;
|
|
211
175
|
}
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
} else if (direction === 'up') {
|
|
218
|
-
baseOffset = -snapPointBaseOffset;
|
|
219
|
-
}
|
|
220
|
-
const translation = baseOffset + axisDelta;
|
|
221
|
-
const translationAlongDirection = direction === 'left' || direction === 'up' ? -translation : translation;
|
|
176
|
+
|
|
177
|
+
// The snap point base offset shifts the popup along the dismiss direction for both
|
|
178
|
+
// `down` (+offset) and `up` (-offset), so it always adds to the directional translation.
|
|
179
|
+
const snapPointBaseOffset = (direction === 'down' || direction === 'up') && snapPoints && snapPoints.length > 0 ? activeSnapPointOffset ?? 0 : 0;
|
|
180
|
+
const translationAlongDirection = snapPointBaseOffset + getDisplacement(direction, deltaX, deltaY);
|
|
222
181
|
const remainingDistance = Math.max(0, size - translationAlongDirection);
|
|
223
|
-
if (
|
|
182
|
+
if (remainingDistance <= 0) {
|
|
224
183
|
return null;
|
|
225
184
|
}
|
|
226
|
-
const
|
|
227
|
-
const
|
|
228
|
-
|
|
229
|
-
const directionalVelocity = direction === 'left' || direction === 'up' ? -resolvedVelocity : resolvedVelocity;
|
|
230
|
-
if (!Number.isFinite(directionalVelocity) || directionalVelocity <= MIN_SWIPE_RELEASE_VELOCITY) {
|
|
185
|
+
const releaseVelocity = getDisplacement(direction, releaseVelocityX, releaseVelocityY);
|
|
186
|
+
const directionalVelocity = Math.abs(releaseVelocity) > 0 ? releaseVelocity : getDisplacement(direction, velocityX, velocityY);
|
|
187
|
+
if (directionalVelocity <= MIN_SWIPE_RELEASE_VELOCITY) {
|
|
231
188
|
return null;
|
|
232
189
|
}
|
|
233
190
|
const clampedVelocity = clamp(directionalVelocity, MIN_SWIPE_RELEASE_VELOCITY, MAX_SWIPE_RELEASE_VELOCITY);
|
|
191
|
+
// The gesture hook supplies finite deltas and velocities. The guards above keep the remaining
|
|
192
|
+
// distance and divisor positive, so the duration stays within [MIN, MAX] and the resulting
|
|
193
|
+
// scalar within (0, 1].
|
|
234
194
|
const durationMs = clamp(remainingDistance / clampedVelocity, MIN_SWIPE_RELEASE_DURATION_MS, MAX_SWIPE_RELEASE_DURATION_MS);
|
|
235
|
-
if (!Number.isFinite(durationMs)) {
|
|
236
|
-
return null;
|
|
237
|
-
}
|
|
238
195
|
const normalizedDuration = (durationMs - MIN_SWIPE_RELEASE_DURATION_MS) / (MAX_SWIPE_RELEASE_DURATION_MS - MIN_SWIPE_RELEASE_DURATION_MS);
|
|
239
|
-
|
|
240
|
-
if (!Number.isFinite(durationScalar) || durationScalar <= 0) {
|
|
241
|
-
return null;
|
|
242
|
-
}
|
|
243
|
-
return durationScalar;
|
|
196
|
+
return MIN_SWIPE_RELEASE_SCALAR + normalizedDuration * (MAX_SWIPE_RELEASE_SCALAR - MIN_SWIPE_RELEASE_SCALAR);
|
|
244
197
|
}
|
|
245
198
|
function updateNestedSwipeActive(details) {
|
|
246
199
|
if (nestedSwipeActiveRef.current || !details) {
|
|
247
200
|
return;
|
|
248
201
|
}
|
|
249
202
|
const direction = details.direction ?? swipeDirection;
|
|
250
|
-
const delta = direction
|
|
251
|
-
if (
|
|
203
|
+
const delta = getDisplacement(direction, details.deltaX, details.deltaY);
|
|
204
|
+
if (Math.abs(delta) < MIN_SWIPE_THRESHOLD) {
|
|
252
205
|
return;
|
|
253
206
|
}
|
|
254
207
|
nestedSwipeActiveRef.current = true;
|
|
@@ -265,13 +218,10 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
265
218
|
y: DrawerPopupCssVars.swipeMovementY
|
|
266
219
|
},
|
|
267
220
|
onSwipeStart(event) {
|
|
268
|
-
if ('touches' in event ||
|
|
221
|
+
if ('touches' in event || event.pointerType === 'touch') {
|
|
269
222
|
return;
|
|
270
223
|
}
|
|
271
224
|
const popupElement = popupRef.current;
|
|
272
|
-
if (!popupElement) {
|
|
273
|
-
return;
|
|
274
|
-
}
|
|
275
225
|
const doc = ownerDocument(popupElement);
|
|
276
226
|
const selection = doc.getSelection?.();
|
|
277
227
|
if (!selection || selection.isCollapsed) {
|
|
@@ -303,54 +253,51 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
303
253
|
return false;
|
|
304
254
|
}
|
|
305
255
|
const doc = popupElement.ownerDocument;
|
|
306
|
-
const elementAtPoint = getElementAtPoint(
|
|
256
|
+
const elementAtPoint = getElementAtPoint(popupElement.getRootNode(), position.x, position.y);
|
|
307
257
|
if (!elementAtPoint || !contains(popupElement, elementAtPoint)) {
|
|
308
258
|
return false;
|
|
309
259
|
}
|
|
310
260
|
const nativeEvent = details.nativeEvent;
|
|
311
|
-
const touchLike = 'touches' in nativeEvent ||
|
|
261
|
+
const touchLike = 'touches' in nativeEvent || nativeEvent.pointerType === 'touch';
|
|
312
262
|
if (touchLike && shouldIgnoreSwipeForTextSelection(doc, popupElement)) {
|
|
313
263
|
return false;
|
|
314
264
|
}
|
|
315
|
-
if (nativeEvent.type === 'touchstart' && isSwipeIgnoredTarget(elementAtPoint)) {
|
|
316
|
-
return false;
|
|
317
|
-
}
|
|
318
265
|
return true;
|
|
319
266
|
},
|
|
320
267
|
onProgress(progress, details) {
|
|
321
|
-
|
|
268
|
+
const swiping = swipingRef.current;
|
|
269
|
+
if (swiping) {
|
|
270
|
+
updateNestedSwipeActive(details);
|
|
271
|
+
}
|
|
322
272
|
const hasSnapPoints = Boolean(snapPoints && snapPoints.length > 0);
|
|
323
|
-
if (
|
|
273
|
+
if (swiping && swipeDirection === 'down' && hasSnapPoints && details) {
|
|
324
274
|
const popupElement = store.context.popupRef.current;
|
|
325
275
|
if (popupElement) {
|
|
326
276
|
popupElement.style.removeProperty('transform');
|
|
327
277
|
popupElement.style.setProperty(DrawerPopupCssVars.swipeMovementY, `${getSnapPointSwipeMovement(activeSnapPointOffset ?? 0, details.deltaY)}px`);
|
|
328
278
|
}
|
|
329
279
|
}
|
|
330
|
-
const currentDirection = details?.direction ?? swipe.swipeDirection;
|
|
331
|
-
const isDismissSwipe = currentDirection === undefined || currentDirection === swipeDirection;
|
|
332
|
-
const isVerticalSwipe = swipeDirection === 'down' || swipeDirection === 'up';
|
|
333
|
-
const shouldTrackProgress = hasSnapPoints && isVerticalSwipe || !hasSnapPoints || swipeDirection === 'left' || swipeDirection === 'right' || isDismissSwipe;
|
|
334
280
|
let resolvedProgress = progress;
|
|
335
281
|
if (snapPointRange && popupHeight > 0) {
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
282
|
+
const baseOffset = activeSnapPointOffset ?? snapPointRange.minOffset;
|
|
283
|
+
const offsetToProgress = nextOffset => clamp((nextOffset - snapPointRange.minOffset) / snapPointRange.range, 0, 1);
|
|
284
|
+
|
|
285
|
+
// Outside a drag the hook still reports the last drag deltas, both after a release and
|
|
286
|
+
// on a gesture that never started (e.g. a press inside `Drawer.Content`). Recomputing
|
|
287
|
+
// from them would re-apply drag progress to a drawer that rests on its snap point.
|
|
288
|
+
if (swiping && details && Number.isFinite(details.deltaY)) {
|
|
289
|
+
resolvedProgress = offsetToProgress(clamp(baseOffset + details.deltaY, 0, popupHeight));
|
|
340
290
|
} else if (snapPointProgress !== null) {
|
|
341
291
|
resolvedProgress = snapPointProgress;
|
|
342
|
-
} else if (currentDirection === 'down' || currentDirection === 'up') {
|
|
343
|
-
const displacement = progress * popupHeight;
|
|
344
|
-
const baseOffset = activeSnapPointOffset ?? snapPointRange.minOffset;
|
|
345
|
-
const nextOffset = currentDirection === 'down' ? baseOffset + displacement : baseOffset - displacement;
|
|
346
|
-
resolvedProgress = clamp((nextOffset - snapPointRange.minOffset) / snapPointRange.range, 0, 1);
|
|
347
292
|
}
|
|
348
293
|
}
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
294
|
+
|
|
295
|
+
// A parent drawer follows an active drag only, so drop it back to zero once the drag ends.
|
|
296
|
+
if (!swiping) {
|
|
297
|
+
notifyParentSwipeProgressChange?.(0);
|
|
298
|
+
finishNestedSwipe();
|
|
299
|
+
}
|
|
300
|
+
applySwipeProgress(resolvedProgress, true, swiping);
|
|
354
301
|
},
|
|
355
302
|
onRelease({
|
|
356
303
|
event,
|
|
@@ -362,30 +309,21 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
362
309
|
releaseVelocityX,
|
|
363
310
|
releaseVelocityY
|
|
364
311
|
}) {
|
|
365
|
-
const
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
releaseVelocityY
|
|
372
|
-
};
|
|
312
|
+
const popupElement = store.context.popupRef.current;
|
|
313
|
+
if (!popupElement) {
|
|
314
|
+
clearSwipeRelease();
|
|
315
|
+
return undefined;
|
|
316
|
+
}
|
|
317
|
+
const releasePopupElement = popupElement;
|
|
373
318
|
function startSwipeRelease(resolvedDirection) {
|
|
374
319
|
// Start ending transition styles earlier and synchronously to prevent a period where
|
|
375
320
|
// the popup appears stuck on release before the actual closing animation starts.
|
|
376
|
-
const popupElement = store.context.popupRef.current;
|
|
377
|
-
if (!popupElement) {
|
|
378
|
-
return;
|
|
379
|
-
}
|
|
380
321
|
finishNestedSwipe();
|
|
381
322
|
setSwipeDismissed(true);
|
|
382
|
-
|
|
383
|
-
|
|
323
|
+
releasePopupElement.style.removeProperty('transition');
|
|
324
|
+
releasePopupElement.setAttribute(TransitionStatusDataAttributes.endingStyle, '');
|
|
384
325
|
ReactDOM.flushSync(() => {
|
|
385
|
-
setSwipeRelease(resolveSwipeRelease(
|
|
386
|
-
direction: resolvedDirection,
|
|
387
|
-
...swipeReleasePayload
|
|
388
|
-
}));
|
|
326
|
+
setSwipeRelease(resolveSwipeRelease(releasePopupElement, resolvedDirection, deltaX, deltaY, velocityX, velocityY, releaseVelocityX, releaseVelocityY));
|
|
389
327
|
});
|
|
390
328
|
}
|
|
391
329
|
if (!snapPoints || snapPoints.length === 0) {
|
|
@@ -393,29 +331,16 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
393
331
|
clearSwipeRelease();
|
|
394
332
|
return undefined;
|
|
395
333
|
}
|
|
396
|
-
const
|
|
397
|
-
if (!element) {
|
|
398
|
-
clearSwipeRelease();
|
|
399
|
-
return undefined;
|
|
400
|
-
}
|
|
401
|
-
const baseThreshold = getBaseSwipeThreshold(element, direction);
|
|
402
|
-
const delta = direction === 'left' || direction === 'right' ? deltaX : deltaY;
|
|
403
|
-
if (!Number.isFinite(delta)) {
|
|
404
|
-
clearSwipeRelease();
|
|
405
|
-
return undefined;
|
|
406
|
-
}
|
|
407
|
-
const directionalDelta = direction === 'left' || direction === 'up' ? -delta : delta;
|
|
334
|
+
const directionalDelta = getDisplacement(direction, deltaX, deltaY);
|
|
408
335
|
if (directionalDelta <= 0) {
|
|
409
336
|
clearSwipeRelease();
|
|
410
337
|
return false;
|
|
411
338
|
}
|
|
412
|
-
|
|
413
|
-
const directionalVelocity = direction === 'left' || direction === 'up' ? -velocity : velocity;
|
|
414
|
-
if (directionalVelocity >= FAST_SWIPE_VELOCITY && directionalDelta > 0) {
|
|
339
|
+
if (getDisplacement(direction, velocityX, velocityY) >= FAST_SWIPE_VELOCITY) {
|
|
415
340
|
startSwipeRelease(direction);
|
|
416
341
|
return true;
|
|
417
342
|
}
|
|
418
|
-
const shouldClose = directionalDelta >
|
|
343
|
+
const shouldClose = directionalDelta > getBaseSwipeThreshold(releasePopupElement, direction);
|
|
419
344
|
if (shouldClose) {
|
|
420
345
|
startSwipeRelease(direction);
|
|
421
346
|
} else {
|
|
@@ -427,20 +352,20 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
427
352
|
clearSwipeRelease();
|
|
428
353
|
return undefined;
|
|
429
354
|
}
|
|
430
|
-
if (!popupHeight
|
|
355
|
+
if (!popupHeight) {
|
|
431
356
|
clearSwipeRelease();
|
|
432
|
-
return
|
|
357
|
+
return false;
|
|
433
358
|
}
|
|
434
|
-
|
|
435
|
-
if (!Number.isFinite(dragDelta)) {
|
|
359
|
+
if (resolvedSnapPoints.length === 0) {
|
|
436
360
|
clearSwipeRelease();
|
|
437
361
|
return undefined;
|
|
438
362
|
}
|
|
363
|
+
const dragDelta = swipeDirection === 'down' ? deltaY : -deltaY;
|
|
439
364
|
const dragDirection = Math.sign(dragDelta);
|
|
440
365
|
const releaseDirectionalVelocity = swipeDirection === 'down' ? releaseVelocityY : -releaseVelocityY;
|
|
441
366
|
const fallbackDirectionalVelocity = swipeDirection === 'down' ? velocityY : -velocityY;
|
|
442
|
-
let resolvedDirectionalVelocity =
|
|
443
|
-
if (dragDirection !== 0 && Math.abs(dragDelta) >= MIN_SWIPE_THRESHOLD
|
|
367
|
+
let resolvedDirectionalVelocity = releaseDirectionalVelocity;
|
|
368
|
+
if (dragDirection !== 0 && Math.abs(dragDelta) >= MIN_SWIPE_THRESHOLD) {
|
|
444
369
|
const velocityDirection = Math.sign(resolvedDirectionalVelocity);
|
|
445
370
|
if (velocityDirection !== 0 && velocityDirection !== dragDirection) {
|
|
446
371
|
// Ignore touch reversals that would otherwise flip the snap decision.
|
|
@@ -449,39 +374,41 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
449
374
|
}
|
|
450
375
|
const currentOffset = activeSnapPointOffset ?? 0;
|
|
451
376
|
const dragTargetOffset = clamp(currentOffset + dragDelta, 0, popupHeight);
|
|
452
|
-
const velocityOffset =
|
|
377
|
+
const velocityOffset = Math.abs(resolvedDirectionalVelocity) >= SNAP_VELOCITY_THRESHOLD ? clamp(resolvedDirectionalVelocity, -MAX_SNAP_VELOCITY, MAX_SNAP_VELOCITY) * SNAP_VELOCITY_MULTIPLIER : 0;
|
|
453
378
|
const targetOffset = snapToSequentialPoints ? dragTargetOffset : clamp(dragTargetOffset + velocityOffset, 0, popupHeight);
|
|
454
379
|
const snapPointEventDetails = createChangeEventDetails(REASONS.swipe, event);
|
|
455
|
-
const
|
|
380
|
+
const settleInPlace = () => {
|
|
381
|
+
// Reset nested swipe state now: the hook's trailing progress update is deduped
|
|
382
|
+
// when the drag never produced dismissal progress, so it may not fire.
|
|
383
|
+
applySwipeProgress(0, true, true);
|
|
384
|
+
clearSwipeRelease();
|
|
385
|
+
return false;
|
|
386
|
+
};
|
|
387
|
+
const settleOnSnapPoint = snapPoint => {
|
|
388
|
+
setActiveSnapPoint(snapPoint.value, snapPointEventDetails);
|
|
389
|
+
return settleInPlace();
|
|
390
|
+
};
|
|
391
|
+
const closeFromSnapPoints = fallbackSnapPoint => {
|
|
392
|
+
// An unattributed gesture (e.g. a mostly horizontal flick) may settle on a snap
|
|
393
|
+
// point but must not dismiss: `useSwipeDismiss` drops a directionless dismissal,
|
|
394
|
+
// stranding the popup visually closed while `open` stays `true`.
|
|
395
|
+
if (!direction) {
|
|
396
|
+
return settleOnSnapPoint(fallbackSnapPoint);
|
|
397
|
+
}
|
|
398
|
+
setActiveSnapPoint(null, snapPointEventDetails);
|
|
399
|
+
if (snapPointEventDetails.isCanceled) {
|
|
400
|
+
// A canceled null snap point rejects dismissal before exit styles start.
|
|
401
|
+
return settleInPlace();
|
|
402
|
+
}
|
|
456
403
|
pendingSwipeCloseSnapPointRef.current = activeSnapPoint;
|
|
457
|
-
setActiveSnapPoint?.(null, snapPointEventDetails);
|
|
458
404
|
startSwipeRelease(swipeDirection);
|
|
459
405
|
return true;
|
|
460
406
|
};
|
|
461
407
|
if (snapToSequentialPoints) {
|
|
462
408
|
const orderedSnapPoints = [...resolvedSnapPoints].sort((first, second) => first.offset - second.offset);
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
}
|
|
467
|
-
let currentIndex = 0;
|
|
468
|
-
let closestDistance = Math.abs(currentOffset - orderedSnapPoints[0].offset);
|
|
469
|
-
for (let index = 1; index < orderedSnapPoints.length; index += 1) {
|
|
470
|
-
const distance = Math.abs(currentOffset - orderedSnapPoints[index].offset);
|
|
471
|
-
if (distance < closestDistance) {
|
|
472
|
-
closestDistance = distance;
|
|
473
|
-
currentIndex = index;
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
let targetSnapPoint = orderedSnapPoints[0];
|
|
477
|
-
closestDistance = Math.abs(targetOffset - targetSnapPoint.offset);
|
|
478
|
-
for (const snapPoint of orderedSnapPoints) {
|
|
479
|
-
const distance = Math.abs(targetOffset - snapPoint.offset);
|
|
480
|
-
if (distance < closestDistance) {
|
|
481
|
-
closestDistance = distance;
|
|
482
|
-
targetSnapPoint = snapPoint;
|
|
483
|
-
}
|
|
484
|
-
}
|
|
409
|
+
const orderedOffsets = orderedSnapPoints.map(point => point.offset);
|
|
410
|
+
const currentIndex = closestSnapPointIndex(orderedOffsets, currentOffset);
|
|
411
|
+
let targetSnapPoint = orderedSnapPoints[closestSnapPointIndex(orderedOffsets, targetOffset)];
|
|
485
412
|
const velocityDirection = Math.sign(resolvedDirectionalVelocity);
|
|
486
413
|
const shouldAdvance = dragDirection !== 0 && velocityDirection !== 0 && velocityDirection === dragDirection && Math.abs(resolvedDirectionalVelocity) >= SNAP_VELOCITY_THRESHOLD;
|
|
487
414
|
let effectiveTargetOffset = targetOffset;
|
|
@@ -495,39 +422,25 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
495
422
|
effectiveTargetOffset = adjacentPoint.offset;
|
|
496
423
|
}
|
|
497
424
|
} else if (dragDirection > 0) {
|
|
498
|
-
return closeFromSnapPoints();
|
|
425
|
+
return closeFromSnapPoints(targetSnapPoint);
|
|
499
426
|
}
|
|
500
427
|
}
|
|
501
|
-
const
|
|
502
|
-
const closeDistance = Math.abs(effectiveTargetOffset - closeOffset);
|
|
428
|
+
const closeDistance = Math.abs(effectiveTargetOffset - popupHeight);
|
|
503
429
|
const snapDistance = Math.abs(effectiveTargetOffset - targetSnapPoint.offset);
|
|
504
430
|
if (closeDistance < snapDistance) {
|
|
505
|
-
return closeFromSnapPoints();
|
|
431
|
+
return closeFromSnapPoints(targetSnapPoint);
|
|
506
432
|
}
|
|
507
|
-
|
|
508
|
-
clearSwipeRelease();
|
|
509
|
-
return false;
|
|
433
|
+
return settleOnSnapPoint(targetSnapPoint);
|
|
510
434
|
}
|
|
435
|
+
const closestSnapPoint = resolvedSnapPoints[closestSnapPointIndex(resolvedSnapPoints.map(point => point.offset), targetOffset)];
|
|
511
436
|
if (resolvedDirectionalVelocity >= FAST_SWIPE_VELOCITY && dragDelta > 0) {
|
|
512
|
-
return closeFromSnapPoints();
|
|
513
|
-
}
|
|
514
|
-
let closestSnapPoint = resolvedSnapPoints[0];
|
|
515
|
-
let closestDistance = Math.abs(targetOffset - closestSnapPoint.offset);
|
|
516
|
-
for (const snapPoint of resolvedSnapPoints) {
|
|
517
|
-
const distance = Math.abs(targetOffset - snapPoint.offset);
|
|
518
|
-
if (distance < closestDistance) {
|
|
519
|
-
closestDistance = distance;
|
|
520
|
-
closestSnapPoint = snapPoint;
|
|
521
|
-
}
|
|
437
|
+
return closeFromSnapPoints(closestSnapPoint);
|
|
522
438
|
}
|
|
523
|
-
const
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
return closeFromSnapPoints();
|
|
439
|
+
const closeDistance = Math.abs(targetOffset - popupHeight);
|
|
440
|
+
if (closeDistance < Math.abs(targetOffset - closestSnapPoint.offset)) {
|
|
441
|
+
return closeFromSnapPoints(closestSnapPoint);
|
|
527
442
|
}
|
|
528
|
-
|
|
529
|
-
clearSwipeRelease();
|
|
530
|
-
return false;
|
|
443
|
+
return settleOnSnapPoint(closestSnapPoint);
|
|
531
444
|
},
|
|
532
445
|
onDismiss(event) {
|
|
533
446
|
visualStateStore?.set({
|
|
@@ -544,7 +457,7 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
544
457
|
if (dismissEventDetails.isCanceled) {
|
|
545
458
|
const pendingSnapPoint = pendingSwipeCloseSnapPointRef.current;
|
|
546
459
|
if (pendingSnapPoint !== undefined) {
|
|
547
|
-
setActiveSnapPoint
|
|
460
|
+
setActiveSnapPoint(pendingSnapPoint, createChangeEventDetails(REASONS.swipe, event));
|
|
548
461
|
}
|
|
549
462
|
pendingSwipeCloseSnapPointRef.current = undefined;
|
|
550
463
|
resetSwipeRef.current?.();
|
|
@@ -566,7 +479,7 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
566
479
|
// Parent rejected: revert animation and restore snap point.
|
|
567
480
|
const pendingSnapPoint = pendingSwipeCloseSnapPointRef.current;
|
|
568
481
|
if (pendingSnapPoint !== undefined) {
|
|
569
|
-
setActiveSnapPoint
|
|
482
|
+
setActiveSnapPoint(pendingSnapPoint, createChangeEventDetails(REASONS.swipe, savedEvent));
|
|
570
483
|
}
|
|
571
484
|
pendingSwipeCloseSnapPointRef.current = undefined;
|
|
572
485
|
clearSwipeRelease();
|
|
@@ -596,42 +509,18 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
596
509
|
}
|
|
597
510
|
const resolvedRootElement = rootElement;
|
|
598
511
|
const doc = ownerDocument(resolvedRootElement);
|
|
599
|
-
|
|
600
|
-
function handleNativeTouchMove(event) {
|
|
601
|
-
// The virtual keyboard provider observes the move to tell a tap apart from a drag.
|
|
602
|
-
// It must run even when the swipe gesture below claims the event with
|
|
603
|
-
// `stopPropagation()`, which would otherwise prevent React's delegated handlers
|
|
604
|
-
// (and the provider) from ever seeing the move.
|
|
605
|
-
virtualKeyboard?.onTouchMove(event);
|
|
606
|
-
if (ignoreTouchSwipeRef.current) {
|
|
607
|
-
return;
|
|
608
|
-
}
|
|
609
|
-
const touchState = touchScrollStateRef.current;
|
|
610
|
-
const touch = event.touches[0];
|
|
611
|
-
if (!touch || !touchState) {
|
|
612
|
-
return;
|
|
613
|
-
}
|
|
512
|
+
function processTouchMove(event, touchState, touch) {
|
|
614
513
|
const drawerAxisDelta = isVerticalScrollAxis ? touch.clientY - touchState.lastY : touch.clientX - touchState.lastX;
|
|
615
514
|
|
|
616
|
-
// Preserve native range interaction by never locking touchmove for range inputs.
|
|
617
|
-
if (isEventOnRangeInput(event, win)) {
|
|
618
|
-
touchState.allowSwipe = false;
|
|
619
|
-
updateTouchScrollPosition(touchState, touch);
|
|
620
|
-
return;
|
|
621
|
-
}
|
|
622
|
-
|
|
623
515
|
// Avoid blocking pinch zoom or text selection adjustments on iOS Safari.
|
|
624
516
|
if (event.touches.length === 2) {
|
|
625
|
-
updateTouchScrollPosition(touchState, touch);
|
|
626
517
|
return;
|
|
627
518
|
}
|
|
628
519
|
const allowTouchMove = shouldIgnoreSwipeForTextSelection(doc, resolvedRootElement);
|
|
629
520
|
if (allowTouchMove || !open || !mounted || nestedDrawerOpen) {
|
|
630
|
-
updateTouchScrollPosition(touchState, touch);
|
|
631
521
|
return;
|
|
632
522
|
}
|
|
633
|
-
if (
|
|
634
|
-
updateTouchScrollPosition(touchState, touch);
|
|
523
|
+
if (shouldYieldTouchMove(touchState, event, touch, isVerticalScrollAxis)) {
|
|
635
524
|
return;
|
|
636
525
|
}
|
|
637
526
|
const scrollTarget = touchState.scrollTarget;
|
|
@@ -643,27 +532,21 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
643
532
|
// move through React re-rasterizes the popup content on every frame.
|
|
644
533
|
event.stopPropagation();
|
|
645
534
|
moveSwipeNative(event, resolvedRootElement);
|
|
646
|
-
updateTouchScrollPosition(touchState, touch);
|
|
647
535
|
return;
|
|
648
536
|
}
|
|
649
|
-
|
|
650
|
-
if (!hasScrollableContent) {
|
|
537
|
+
if (!hasScrollableContentOnAxis(scrollTarget, scrollAxis)) {
|
|
651
538
|
// If the scroll container doesn't overflow on the drawer axis, prevent the window from
|
|
652
539
|
// scrolling instead.
|
|
653
540
|
if (event.cancelable) {
|
|
654
541
|
event.preventDefault();
|
|
655
542
|
}
|
|
656
543
|
event.stopPropagation();
|
|
657
|
-
updateTouchScrollPosition(touchState, touch);
|
|
658
544
|
return;
|
|
659
545
|
}
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
const canSwipeFromScrollEdge = canSwipeFromScrollEdgeOnMove(scrollTarget, scrollAxis, swipeDirection, delta);
|
|
546
|
+
if (drawerAxisDelta !== 0) {
|
|
547
|
+
const canSwipeFromScrollEdge = canSwipeFromScrollEdgeOnMove(scrollTarget, scrollAxis, swipeDirection, drawerAxisDelta);
|
|
663
548
|
if (!touchState.allowSwipe) {
|
|
664
|
-
if (
|
|
665
|
-
touchState.allowSwipe = false;
|
|
666
|
-
} else if (canSwipeFromScrollEdge) {
|
|
549
|
+
if (event.cancelable && canSwipeFromScrollEdge) {
|
|
667
550
|
touchState.allowSwipe = true;
|
|
668
551
|
event.preventDefault();
|
|
669
552
|
} else {
|
|
@@ -677,6 +560,22 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
677
560
|
event.stopPropagation();
|
|
678
561
|
moveSwipeNative(event, resolvedRootElement);
|
|
679
562
|
}
|
|
563
|
+
}
|
|
564
|
+
function handleNativeTouchMove(event) {
|
|
565
|
+
// The virtual keyboard provider observes the move to tell a tap apart from a drag.
|
|
566
|
+
// It must run even when the swipe gesture below claims the event with
|
|
567
|
+
// `stopPropagation()`, which would otherwise prevent React's delegated handlers
|
|
568
|
+
// (and the provider) from ever seeing the move.
|
|
569
|
+
virtualKeyboard?.onTouchMove(event);
|
|
570
|
+
if (ignoreTouchSwipeRef.current) {
|
|
571
|
+
return;
|
|
572
|
+
}
|
|
573
|
+
const touchState = touchScrollStateRef.current;
|
|
574
|
+
const touch = event.touches[0];
|
|
575
|
+
if (!touch || !touchState) {
|
|
576
|
+
return;
|
|
577
|
+
}
|
|
578
|
+
processTouchMove(event, touchState, touch);
|
|
680
579
|
updateTouchScrollPosition(touchState, touch);
|
|
681
580
|
}
|
|
682
581
|
return addEventListener(doc, 'touchmove', handleNativeTouchMove, {
|
|
@@ -684,18 +583,13 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
684
583
|
capture: true
|
|
685
584
|
});
|
|
686
585
|
}, [mounted, nestedDrawerOpen, open, popupElementState, isVerticalScrollAxis, scrollAxis, swipeDirection, moveSwipeNative, viewportElement, virtualKeyboard]);
|
|
687
|
-
|
|
586
|
+
useIsoLayoutEffect(() => {
|
|
688
587
|
if (!snapPointRange || swipe.swiping) {
|
|
689
588
|
return;
|
|
690
589
|
}
|
|
691
|
-
|
|
692
|
-
applySwipeProgress({
|
|
693
|
-
resolvedProgress,
|
|
694
|
-
shouldTrackProgress: true,
|
|
695
|
-
notifyParent: false
|
|
696
|
-
});
|
|
590
|
+
applySwipeProgress(!open || nested ? 0 : snapPointProgress ?? 0, true, false);
|
|
697
591
|
}, [applySwipeProgress, frontmostHeight, nested, notifyParentSwipeProgressChange, open, snapPointProgress, snapPointRange, swipe.swiping, store, visualStateStore]);
|
|
698
|
-
|
|
592
|
+
useIsoLayoutEffect(() => {
|
|
699
593
|
if (!notifyParentSwipeProgressChange) {
|
|
700
594
|
return undefined;
|
|
701
595
|
}
|
|
@@ -706,13 +600,19 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
706
600
|
notifyParentSwipeProgressChange(0);
|
|
707
601
|
};
|
|
708
602
|
}, [notifyParentSwipeProgressChange, open]);
|
|
709
|
-
|
|
603
|
+
useIsoLayoutEffect(() => {
|
|
710
604
|
if (open) {
|
|
711
|
-
resetSwipe
|
|
605
|
+
// Skip `resetSwipe` while `Drawer.SwipeArea` is driving the open: it zeroes the popup's
|
|
606
|
+
// `--swipe-movement-*` (via `syncDragStyles(false)`), flashing it fully open for a frame.
|
|
607
|
+
// `clearSwipeRelease` doesn't touch those vars, so always run it to clear any leftover
|
|
608
|
+
// release state from a prior dismiss (e.g. when the popup is kept mounted).
|
|
609
|
+
if (!swipeAreaActiveRef.current) {
|
|
610
|
+
resetSwipe();
|
|
611
|
+
}
|
|
712
612
|
clearSwipeRelease();
|
|
713
613
|
}
|
|
714
|
-
}, [clearSwipeRelease, open, resetSwipe]);
|
|
715
|
-
|
|
614
|
+
}, [clearSwipeRelease, open, resetSwipe, swipeAreaActiveRef]);
|
|
615
|
+
useIsoLayoutEffect(() => {
|
|
716
616
|
const backdropElement = backdropRef.current;
|
|
717
617
|
return () => {
|
|
718
618
|
visualStateStore?.set({
|
|
@@ -737,12 +637,19 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
737
637
|
swipeStrength: swipeRelease ?? null,
|
|
738
638
|
setSwipeDismissed
|
|
739
639
|
}), [setSwipeDismissed, swipe.getDragStyles, swipe.swiping, swipeRelease]);
|
|
740
|
-
function
|
|
741
|
-
ignoreTouchSwipeRef.current =
|
|
640
|
+
function resetTouchSwipeState(ignoreSwipe) {
|
|
641
|
+
ignoreTouchSwipeRef.current = ignoreSwipe;
|
|
742
642
|
touchScrollStateRef.current = null;
|
|
643
|
+
}
|
|
644
|
+
function resetTouchTrackingState() {
|
|
645
|
+
resetTouchSwipeState(false);
|
|
743
646
|
lastPointerTypeRef.current = '';
|
|
744
647
|
ignoreNextTouchStartFromPenRef.current = false;
|
|
745
648
|
}
|
|
649
|
+
function handlePointerEnd(event) {
|
|
650
|
+
lastPointerTypeRef.current = '';
|
|
651
|
+
return event.pointerType !== 'touch';
|
|
652
|
+
}
|
|
746
653
|
return /*#__PURE__*/_jsx(DialogViewport, {
|
|
747
654
|
ref: forwardedRef,
|
|
748
655
|
className: className,
|
|
@@ -755,8 +662,7 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
755
662
|
if (!open || !mounted || nestedDrawerOpen) {
|
|
756
663
|
return;
|
|
757
664
|
}
|
|
758
|
-
const
|
|
759
|
-
const elementAtPoint = getElementAtPoint(doc, event.clientX, event.clientY);
|
|
665
|
+
const elementAtPoint = getElementAtPoint(event.currentTarget.getRootNode(), event.clientX, event.clientY);
|
|
760
666
|
if (isSwipeIgnoredTarget(elementAtPoint) || isDrawerContentTarget(elementAtPoint)) {
|
|
761
667
|
return;
|
|
762
668
|
}
|
|
@@ -772,34 +678,24 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
772
678
|
swipePointerProps.onPointerMove?.(event);
|
|
773
679
|
},
|
|
774
680
|
onPointerUp(event) {
|
|
775
|
-
if (
|
|
776
|
-
|
|
681
|
+
if (handlePointerEnd(event)) {
|
|
682
|
+
swipePointerProps.onPointerUp?.(event);
|
|
777
683
|
}
|
|
778
|
-
if (event.pointerType === 'touch') {
|
|
779
|
-
return;
|
|
780
|
-
}
|
|
781
|
-
swipePointerProps.onPointerUp?.(event);
|
|
782
684
|
},
|
|
783
685
|
onPointerCancel(event) {
|
|
784
|
-
if (
|
|
785
|
-
|
|
786
|
-
}
|
|
787
|
-
if (event.pointerType === 'touch') {
|
|
788
|
-
return;
|
|
686
|
+
if (handlePointerEnd(event)) {
|
|
687
|
+
swipePointerProps.onPointerCancel?.(event);
|
|
789
688
|
}
|
|
790
|
-
swipePointerProps.onPointerCancel?.(event);
|
|
791
689
|
},
|
|
792
690
|
onTouchStart(event) {
|
|
793
691
|
const startedFromPenPointerDown = lastPointerTypeRef.current === 'pen' && ignoreNextTouchStartFromPenRef.current;
|
|
794
692
|
if (startedFromPenPointerDown) {
|
|
795
693
|
ignoreNextTouchStartFromPenRef.current = false;
|
|
796
|
-
|
|
797
|
-
touchScrollStateRef.current = null;
|
|
694
|
+
resetTouchSwipeState(false);
|
|
798
695
|
return;
|
|
799
696
|
}
|
|
800
697
|
if (!open || !mounted || nestedDrawerOpen) {
|
|
801
|
-
|
|
802
|
-
touchScrollStateRef.current = null;
|
|
698
|
+
resetTouchSwipeState(false);
|
|
803
699
|
return;
|
|
804
700
|
}
|
|
805
701
|
const touch = event.touches[0];
|
|
@@ -807,32 +703,25 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
807
703
|
return;
|
|
808
704
|
}
|
|
809
705
|
if (isReactTouchEventOnRangeInput(event)) {
|
|
810
|
-
|
|
811
|
-
touchScrollStateRef.current = null;
|
|
706
|
+
resetTouchSwipeState(false);
|
|
812
707
|
return;
|
|
813
708
|
}
|
|
814
|
-
const
|
|
815
|
-
const elementAtPoint = getElementAtPoint(
|
|
816
|
-
const rootElement = viewportElement ?? popupElementState;
|
|
709
|
+
const rootElement = event.currentTarget;
|
|
710
|
+
const elementAtPoint = getElementAtPoint(rootElement.getRootNode(), touch.clientX, touch.clientY);
|
|
817
711
|
const eventTarget = getTarget(event.nativeEvent);
|
|
818
|
-
const target = isElement(eventTarget) ? eventTarget :
|
|
819
|
-
if (
|
|
820
|
-
|
|
821
|
-
touchScrollStateRef.current = null;
|
|
712
|
+
const target = isElement(eventTarget) ? eventTarget : rootElement;
|
|
713
|
+
if (!contains(rootElement, target)) {
|
|
714
|
+
resetTouchSwipeState(true);
|
|
822
715
|
return;
|
|
823
716
|
}
|
|
824
717
|
virtualKeyboard?.onTouchStart(event);
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
touchScrollStateRef.current = null;
|
|
718
|
+
if (isSwipeIgnoredTarget(elementAtPoint)) {
|
|
719
|
+
resetTouchSwipeState(true);
|
|
828
720
|
return;
|
|
829
721
|
}
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
scrollTarget = findScrollableTouchTarget(target, rootElement, scrollAxis);
|
|
834
|
-
hasCrossAxisScrollableContent = findScrollableTouchTarget(target, rootElement, crossScrollAxis) != null;
|
|
835
|
-
}
|
|
722
|
+
ignoreTouchSwipeRef.current = false;
|
|
723
|
+
const scrollTarget = findScrollableTouchTarget(target, rootElement, scrollAxis);
|
|
724
|
+
const hasCrossAxisScrollableContent = findScrollableTouchTarget(target, rootElement, crossScrollAxis) != null;
|
|
836
725
|
let allowSwipe = null;
|
|
837
726
|
if (scrollTarget) {
|
|
838
727
|
const canSwipeFromEdge = isAtSwipeStartEdge(scrollTarget, scrollAxis, swipeDirection);
|
|
@@ -846,7 +735,8 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
846
735
|
scrollTarget,
|
|
847
736
|
hasCrossAxisScrollableContent,
|
|
848
737
|
allowSwipe,
|
|
849
|
-
preserveNativeCrossAxisScroll: false
|
|
738
|
+
preserveNativeCrossAxisScroll: false,
|
|
739
|
+
drawerAxisAttributed: false
|
|
850
740
|
};
|
|
851
741
|
swipeTouchProps.onTouchStart?.(event);
|
|
852
742
|
},
|
|
@@ -862,7 +752,7 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
862
752
|
},
|
|
863
753
|
// Drawer popups use drawer-specific nested state attributes.
|
|
864
754
|
// Suppress DialogViewport's generic nested dialog attribute.
|
|
865
|
-
[
|
|
755
|
+
[DialogViewportDataAttributes.nestedDialogOpen]: undefined
|
|
866
756
|
}),
|
|
867
757
|
children: /*#__PURE__*/_jsx(DrawerViewportContext.Provider, {
|
|
868
758
|
value: swipeProviderValue,
|
|
@@ -871,24 +761,8 @@ export const DrawerViewport = /*#__PURE__*/React.forwardRef(function DrawerViewp
|
|
|
871
761
|
});
|
|
872
762
|
});
|
|
873
763
|
if (process.env.NODE_ENV !== "production") DrawerViewport.displayName = "DrawerViewport";
|
|
874
|
-
function setSwipeDismissedElements(popupElement, backdropElement, dismissed) {
|
|
875
|
-
if (dismissed) {
|
|
876
|
-
popupElement?.setAttribute(DrawerPopupDataAttributes.swipeDismiss, '');
|
|
877
|
-
backdropElement?.setAttribute(DrawerPopupDataAttributes.swipeDismiss, '');
|
|
878
|
-
return;
|
|
879
|
-
}
|
|
880
|
-
popupElement?.removeAttribute(DrawerPopupDataAttributes.swipeDismiss);
|
|
881
|
-
backdropElement?.removeAttribute(DrawerPopupDataAttributes.swipeDismiss);
|
|
882
|
-
}
|
|
883
764
|
function setBackdropSwipingAttribute(backdropElement, swiping) {
|
|
884
|
-
|
|
885
|
-
return;
|
|
886
|
-
}
|
|
887
|
-
if (swiping) {
|
|
888
|
-
backdropElement.setAttribute(DrawerPopupDataAttributes.swiping, '');
|
|
889
|
-
return;
|
|
890
|
-
}
|
|
891
|
-
backdropElement.removeAttribute(DrawerPopupDataAttributes.swiping);
|
|
765
|
+
backdropElement?.toggleAttribute(DrawerPopupDataAttributes.swiping, swiping);
|
|
892
766
|
}
|
|
893
767
|
function isSwipeIgnoredTarget(target) {
|
|
894
768
|
return Boolean(target?.closest(BASE_UI_SWIPE_IGNORE_SELECTOR));
|
|
@@ -896,17 +770,16 @@ function isSwipeIgnoredTarget(target) {
|
|
|
896
770
|
function isDrawerContentTarget(target) {
|
|
897
771
|
return Boolean(target?.closest(DRAWER_CONTENT_SELECTOR));
|
|
898
772
|
}
|
|
773
|
+
function getBaseSwipeSize(element, direction) {
|
|
774
|
+
return direction === 'left' || direction === 'right' ? element.offsetWidth : element.offsetHeight;
|
|
775
|
+
}
|
|
899
776
|
function getBaseSwipeThreshold(element, direction) {
|
|
900
|
-
|
|
901
|
-
return Math.max(size * 0.5, MIN_SWIPE_THRESHOLD);
|
|
777
|
+
return Math.max(getBaseSwipeSize(element, direction) * 0.5, MIN_SWIPE_THRESHOLD);
|
|
902
778
|
}
|
|
903
779
|
function isRangeInput(target, win) {
|
|
904
780
|
return target instanceof win.HTMLInputElement && target.type === 'range';
|
|
905
781
|
}
|
|
906
782
|
function isTextSelectionControl(target) {
|
|
907
|
-
if (!isElement(target)) {
|
|
908
|
-
return false;
|
|
909
|
-
}
|
|
910
783
|
return target.tagName === 'INPUT' || target.tagName === 'TEXTAREA';
|
|
911
784
|
}
|
|
912
785
|
function hasExpandedSelectionWithinTarget(selection, target) {
|
|
@@ -916,8 +789,7 @@ function hasExpandedSelectionWithinTarget(selection, target) {
|
|
|
916
789
|
}
|
|
917
790
|
function shouldIgnoreSwipeForTextSelection(doc, rootElement) {
|
|
918
791
|
const activeEl = activeElement(doc);
|
|
919
|
-
|
|
920
|
-
if (activeElementWithinRoot && isTextSelectionControl(activeEl)) {
|
|
792
|
+
if (activeEl && contains(rootElement, activeEl) && isTextSelectionControl(activeEl)) {
|
|
921
793
|
const {
|
|
922
794
|
selectionStart,
|
|
923
795
|
selectionEnd
|
|
@@ -933,11 +805,7 @@ function shouldIgnoreSwipeForTextSelection(doc, rootElement) {
|
|
|
933
805
|
return hasExpandedSelectionWithinTarget(selection, rootElement);
|
|
934
806
|
}
|
|
935
807
|
function isEventOnRangeInput(event, win) {
|
|
936
|
-
|
|
937
|
-
if (composedPath) {
|
|
938
|
-
return composedPath.some(pathTarget => isRangeInput(pathTarget, win));
|
|
939
|
-
}
|
|
940
|
-
return isRangeInput(getTarget(event), win);
|
|
808
|
+
return event.composedPath().some(pathTarget => isRangeInput(pathTarget, win));
|
|
941
809
|
}
|
|
942
810
|
function isReactTouchEventOnRangeInput(event) {
|
|
943
811
|
return isEventOnRangeInput(event.nativeEvent, ownerWindow(event.currentTarget));
|
|
@@ -946,25 +814,51 @@ function updateTouchScrollPosition(touchState, touch) {
|
|
|
946
814
|
touchState.lastX = touch.clientX;
|
|
947
815
|
touchState.lastY = touch.clientY;
|
|
948
816
|
}
|
|
949
|
-
|
|
817
|
+
|
|
818
|
+
/**
|
|
819
|
+
* Arbitrates a touchmove between the drawer swipe and a native cross-axis scroll.
|
|
820
|
+
* Returns `true` when the move must be left alone — either because the cross axis already won the
|
|
821
|
+
* gesture, or because neither axis has passed the slop yet and the gesture cannot be attributed.
|
|
822
|
+
*/
|
|
823
|
+
function shouldYieldTouchMove(touchState, event, touch, isVerticalScrollAxis) {
|
|
950
824
|
if (touchState.preserveNativeCrossAxisScroll) {
|
|
951
825
|
return true;
|
|
952
826
|
}
|
|
953
|
-
|
|
827
|
+
|
|
828
|
+
// Attribution happens once per gesture. Re-arbitrating after the drawer axis has won would let
|
|
829
|
+
// the pre-attribution branches below fire mid-drag (the slop is measured from the touch origin,
|
|
830
|
+
// which is never re-baselined), freezing the popup and dropping `preventDefault()`.
|
|
831
|
+
if (touchState.drawerAxisAttributed || touchState.allowSwipe === true || !touchState.hasCrossAxisScrollableContent) {
|
|
954
832
|
return false;
|
|
955
833
|
}
|
|
834
|
+
|
|
835
|
+
// A non-cancelable touchmove means the browser has already committed the gesture to a native
|
|
836
|
+
// scroll; claiming it for the swipe would drag the popup alongside the scrolling content.
|
|
837
|
+
if (!event.cancelable) {
|
|
838
|
+
touchState.preserveNativeCrossAxisScroll = true;
|
|
839
|
+
return true;
|
|
840
|
+
}
|
|
956
841
|
const drawerAxisGestureDelta = isVerticalScrollAxis ? touch.clientY - touchState.startY : touch.clientX - touchState.startX;
|
|
957
842
|
const crossAxisGestureDelta = isVerticalScrollAxis ? touch.clientX - touchState.startX : touch.clientY - touchState.startY;
|
|
958
843
|
const absDrawerAxisGestureDelta = Math.abs(drawerAxisGestureDelta);
|
|
959
844
|
const absCrossAxisGestureDelta = Math.abs(crossAxisGestureDelta);
|
|
960
|
-
if (absCrossAxisGestureDelta
|
|
845
|
+
if (absCrossAxisGestureDelta >= AXIS_LOCK_SLOP && absCrossAxisGestureDelta > absDrawerAxisGestureDelta + AXIS_LOCK_BIAS) {
|
|
846
|
+
touchState.preserveNativeCrossAxisScroll = true;
|
|
847
|
+
return true;
|
|
848
|
+
}
|
|
849
|
+
if (absDrawerAxisGestureDelta >= AXIS_LOCK_SLOP) {
|
|
850
|
+
touchState.drawerAxisAttributed = true;
|
|
961
851
|
return false;
|
|
962
852
|
}
|
|
963
|
-
|
|
853
|
+
|
|
854
|
+
// Neither axis has traveled past the slop yet, so the gesture cannot be attributed. Leave the
|
|
855
|
+
// event alone: on iOS, `preventDefault()` on the first cancelable touchmove cancels native
|
|
856
|
+
// scrolling for the entire gesture, which would lock a cross-axis scroll that only passes the
|
|
857
|
+
// slop on a later move.
|
|
964
858
|
return true;
|
|
965
859
|
}
|
|
966
860
|
function hasScrollableContentOnAxis(scrollTarget, axis) {
|
|
967
|
-
return
|
|
861
|
+
return getScrollMetrics(scrollTarget, axis).max > 0;
|
|
968
862
|
}
|
|
969
863
|
function getScrollMetrics(scrollTarget, axis) {
|
|
970
864
|
if (axis === 'vertical') {
|
|
@@ -981,46 +875,21 @@ function getScrollMetrics(scrollTarget, axis) {
|
|
|
981
875
|
};
|
|
982
876
|
}
|
|
983
877
|
function isAtSwipeStartEdge(scrollTarget, axis, direction) {
|
|
878
|
+
const dismissFromStartEdge = shouldDismissFromStartEdge(direction, axis);
|
|
984
879
|
const {
|
|
985
880
|
offset,
|
|
986
881
|
max
|
|
987
882
|
} = getScrollMetrics(scrollTarget, axis);
|
|
988
|
-
const dismissFromStartEdge = shouldDismissFromStartEdge(direction, axis);
|
|
989
|
-
if (dismissFromStartEdge === null) {
|
|
990
|
-
return false;
|
|
991
|
-
}
|
|
992
883
|
return dismissFromStartEdge ? offset <= 0 : offset >= max;
|
|
993
884
|
}
|
|
994
885
|
function canSwipeFromScrollEdgeOnMove(scrollTarget, axis, direction, delta) {
|
|
995
|
-
const {
|
|
996
|
-
offset,
|
|
997
|
-
max
|
|
998
|
-
} = getScrollMetrics(scrollTarget, axis);
|
|
999
886
|
const dismissFromStartEdge = shouldDismissFromStartEdge(direction, axis);
|
|
1000
|
-
if (dismissFromStartEdge === null) {
|
|
1001
|
-
return false;
|
|
1002
|
-
}
|
|
1003
887
|
const movingTowardDismiss = dismissFromStartEdge ? delta > 0 : delta < 0;
|
|
1004
888
|
if (!movingTowardDismiss) {
|
|
1005
889
|
return false;
|
|
1006
890
|
}
|
|
1007
|
-
return
|
|
891
|
+
return isAtSwipeStartEdge(scrollTarget, axis, direction);
|
|
1008
892
|
}
|
|
1009
893
|
function shouldDismissFromStartEdge(direction, axis) {
|
|
1010
|
-
|
|
1011
|
-
if (direction === 'down') {
|
|
1012
|
-
return true;
|
|
1013
|
-
}
|
|
1014
|
-
if (direction === 'up') {
|
|
1015
|
-
return false;
|
|
1016
|
-
}
|
|
1017
|
-
return null;
|
|
1018
|
-
}
|
|
1019
|
-
if (direction === 'right') {
|
|
1020
|
-
return true;
|
|
1021
|
-
}
|
|
1022
|
-
if (direction === 'left') {
|
|
1023
|
-
return false;
|
|
1024
|
-
}
|
|
1025
|
-
return null;
|
|
894
|
+
return axis === 'vertical' ? direction === 'down' : direction === 'right';
|
|
1026
895
|
}
|