react-aria 3.50.0 → 3.51.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/dist/exports/index.cjs +15 -0
- package/dist/exports/index.cjs.map +1 -1
- package/dist/exports/index.js +9 -1
- package/dist/exports/index.js.map +1 -1
- package/dist/exports/index.mjs +9 -1
- package/dist/exports/index.mjs.map +1 -1
- package/dist/exports/private/utils/domHelpers.cjs +1 -0
- package/dist/exports/private/utils/domHelpers.cjs.map +1 -1
- package/dist/exports/private/utils/domHelpers.js +2 -2
- package/dist/exports/private/utils/domHelpers.js.map +1 -1
- package/dist/exports/private/utils/domHelpers.mjs +2 -2
- package/dist/exports/private/utils/domHelpers.mjs.map +1 -1
- package/dist/exports/private/utils/platform.cjs +1 -0
- package/dist/exports/private/utils/platform.cjs.map +1 -1
- package/dist/exports/private/utils/platform.js +2 -2
- package/dist/exports/private/utils/platform.js.map +1 -1
- package/dist/exports/private/utils/platform.mjs +2 -2
- package/dist/exports/private/utils/platform.mjs.map +1 -1
- package/dist/exports/private/utils/shadowdom/DOMFunctions.cjs +1 -0
- package/dist/exports/private/utils/shadowdom/DOMFunctions.cjs.map +1 -1
- package/dist/exports/private/utils/shadowdom/DOMFunctions.js +2 -2
- package/dist/exports/private/utils/shadowdom/DOMFunctions.js.map +1 -1
- package/dist/exports/private/utils/shadowdom/DOMFunctions.mjs +2 -2
- package/dist/exports/private/utils/shadowdom/DOMFunctions.mjs.map +1 -1
- package/dist/exports/useContextMenu.cjs +22 -0
- package/dist/exports/useContextMenu.cjs.map +1 -0
- package/dist/exports/useContextMenu.js +17 -0
- package/dist/exports/useContextMenu.js.map +1 -0
- package/dist/exports/useContextMenu.mjs +17 -0
- package/dist/exports/useContextMenu.mjs.map +1 -0
- package/dist/exports/usePreviewTrigger.cjs +22 -0
- package/dist/exports/usePreviewTrigger.cjs.map +1 -0
- package/dist/exports/usePreviewTrigger.js +17 -0
- package/dist/exports/usePreviewTrigger.js.map +1 -0
- package/dist/exports/usePreviewTrigger.mjs +17 -0
- package/dist/exports/usePreviewTrigger.mjs.map +1 -0
- package/dist/exports/useTokenField.cjs +27 -0
- package/dist/exports/useTokenField.cjs.map +1 -0
- package/dist/exports/useTokenField.js +19 -0
- package/dist/exports/useTokenField.js.map +1 -0
- package/dist/exports/useTokenField.mjs +19 -0
- package/dist/exports/useTokenField.mjs.map +1 -0
- package/dist/private/actiongroup/useActionGroup.cjs +24 -19
- package/dist/private/actiongroup/useActionGroup.cjs.map +1 -1
- package/dist/private/actiongroup/useActionGroup.js +24 -19
- package/dist/private/actiongroup/useActionGroup.js.map +1 -1
- package/dist/private/actiongroup/useActionGroup.mjs +24 -19
- package/dist/private/actiongroup/useActionGroup.mjs.map +1 -1
- package/dist/private/autocomplete/useAutocomplete.cjs +2 -1
- package/dist/private/autocomplete/useAutocomplete.cjs.map +1 -1
- package/dist/private/autocomplete/useAutocomplete.js +2 -1
- package/dist/private/autocomplete/useAutocomplete.js.map +1 -1
- package/dist/private/autocomplete/useAutocomplete.mjs +2 -1
- package/dist/private/autocomplete/useAutocomplete.mjs.map +1 -1
- package/dist/private/breadcrumbs/useBreadcrumbItem.cjs +2 -0
- package/dist/private/breadcrumbs/useBreadcrumbItem.cjs.map +1 -1
- package/dist/private/breadcrumbs/useBreadcrumbItem.js +2 -0
- package/dist/private/breadcrumbs/useBreadcrumbItem.js.map +1 -1
- package/dist/private/breadcrumbs/useBreadcrumbItem.mjs +2 -0
- package/dist/private/breadcrumbs/useBreadcrumbItem.mjs.map +1 -1
- package/dist/private/button/useButton.cjs +2 -1
- package/dist/private/button/useButton.cjs.map +1 -1
- package/dist/private/button/useButton.js +2 -1
- package/dist/private/button/useButton.js.map +1 -1
- package/dist/private/button/useButton.mjs +2 -1
- package/dist/private/button/useButton.mjs.map +1 -1
- package/dist/private/button/useToggleButtonGroup.cjs +3 -0
- package/dist/private/button/useToggleButtonGroup.cjs.map +1 -1
- package/dist/private/button/useToggleButtonGroup.js +3 -0
- package/dist/private/button/useToggleButtonGroup.js.map +1 -1
- package/dist/private/button/useToggleButtonGroup.mjs +3 -0
- package/dist/private/button/useToggleButtonGroup.mjs.map +1 -1
- package/dist/private/calendar/useCalendarCell.cjs +3 -0
- package/dist/private/calendar/useCalendarCell.cjs.map +1 -1
- package/dist/private/calendar/useCalendarCell.js +3 -0
- package/dist/private/calendar/useCalendarCell.js.map +1 -1
- package/dist/private/calendar/useCalendarCell.mjs +3 -0
- package/dist/private/calendar/useCalendarCell.mjs.map +1 -1
- package/dist/private/calendar/useCalendarGrid.cjs +47 -52
- package/dist/private/calendar/useCalendarGrid.cjs.map +1 -1
- package/dist/private/calendar/useCalendarGrid.js +47 -52
- package/dist/private/calendar/useCalendarGrid.js.map +1 -1
- package/dist/private/calendar/useCalendarGrid.mjs +47 -52
- package/dist/private/calendar/useCalendarGrid.mjs.map +1 -1
- package/dist/private/calendar/useRangeCalendar.cjs +1 -0
- package/dist/private/calendar/useRangeCalendar.cjs.map +1 -1
- package/dist/private/calendar/useRangeCalendar.js +1 -0
- package/dist/private/calendar/useRangeCalendar.js.map +1 -1
- package/dist/private/calendar/useRangeCalendar.mjs +1 -0
- package/dist/private/calendar/useRangeCalendar.mjs.map +1 -1
- package/dist/private/collections/CollectionBuilder.cjs +8 -3
- package/dist/private/collections/CollectionBuilder.cjs.map +1 -1
- package/dist/private/collections/CollectionBuilder.js +8 -3
- package/dist/private/collections/CollectionBuilder.js.map +1 -1
- package/dist/private/collections/CollectionBuilder.mjs +8 -3
- package/dist/private/collections/CollectionBuilder.mjs.map +1 -1
- package/dist/private/collections/Document.cjs +4 -0
- package/dist/private/collections/Document.cjs.map +1 -1
- package/dist/private/collections/Document.js +4 -0
- package/dist/private/collections/Document.js.map +1 -1
- package/dist/private/collections/Document.mjs +4 -0
- package/dist/private/collections/Document.mjs.map +1 -1
- package/dist/private/collections/Hidden.cjs +1 -0
- package/dist/private/collections/Hidden.cjs.map +1 -1
- package/dist/private/collections/Hidden.js +1 -0
- package/dist/private/collections/Hidden.js.map +1 -1
- package/dist/private/collections/Hidden.mjs +1 -0
- package/dist/private/collections/Hidden.mjs.map +1 -1
- package/dist/private/collections/useCachedChildren.cjs +1 -0
- package/dist/private/collections/useCachedChildren.cjs.map +1 -1
- package/dist/private/collections/useCachedChildren.js +1 -0
- package/dist/private/collections/useCachedChildren.js.map +1 -1
- package/dist/private/collections/useCachedChildren.mjs +1 -0
- package/dist/private/collections/useCachedChildren.mjs.map +1 -1
- package/dist/private/color/useColorArea.cjs +31 -34
- package/dist/private/color/useColorArea.cjs.map +1 -1
- package/dist/private/color/useColorArea.js +31 -34
- package/dist/private/color/useColorArea.js.map +1 -1
- package/dist/private/color/useColorArea.mjs +31 -34
- package/dist/private/color/useColorArea.mjs.map +1 -1
- package/dist/private/color/useColorSlider.cjs +4 -2
- package/dist/private/color/useColorSlider.cjs.map +1 -1
- package/dist/private/color/useColorSlider.js +4 -2
- package/dist/private/color/useColorSlider.js.map +1 -1
- package/dist/private/color/useColorSlider.mjs +4 -2
- package/dist/private/color/useColorSlider.mjs.map +1 -1
- package/dist/private/color/useColorWheel.cjs +16 -23
- package/dist/private/color/useColorWheel.cjs.map +1 -1
- package/dist/private/color/useColorWheel.js +16 -23
- package/dist/private/color/useColorWheel.js.map +1 -1
- package/dist/private/color/useColorWheel.mjs +16 -23
- package/dist/private/color/useColorWheel.mjs.map +1 -1
- package/dist/private/combobox/useComboBox.cjs +92 -29
- package/dist/private/combobox/useComboBox.cjs.map +1 -1
- package/dist/private/combobox/useComboBox.js +93 -29
- package/dist/private/combobox/useComboBox.js.map +1 -1
- package/dist/private/combobox/useComboBox.mjs +92 -29
- package/dist/private/combobox/useComboBox.mjs.map +1 -1
- package/dist/private/datepicker/useDateField.cjs +3 -6
- package/dist/private/datepicker/useDateField.cjs.map +1 -1
- package/dist/private/datepicker/useDateField.js +3 -6
- package/dist/private/datepicker/useDateField.js.map +1 -1
- package/dist/private/datepicker/useDateField.mjs +3 -6
- package/dist/private/datepicker/useDateField.mjs.map +1 -1
- package/dist/private/datepicker/useDatePickerGroup.cjs +48 -27
- package/dist/private/datepicker/useDatePickerGroup.cjs.map +1 -1
- package/dist/private/datepicker/useDatePickerGroup.js +49 -28
- package/dist/private/datepicker/useDatePickerGroup.js.map +1 -1
- package/dist/private/datepicker/useDatePickerGroup.mjs +49 -28
- package/dist/private/datepicker/useDatePickerGroup.mjs.map +1 -1
- package/dist/private/datepicker/useDateSegment.cjs +21 -16
- package/dist/private/datepicker/useDateSegment.cjs.map +1 -1
- package/dist/private/datepicker/useDateSegment.js +22 -17
- package/dist/private/datepicker/useDateSegment.js.map +1 -1
- package/dist/private/datepicker/useDateSegment.mjs +22 -17
- package/dist/private/datepicker/useDateSegment.mjs.map +1 -1
- package/dist/private/dialog/useDialog.cjs +8 -1
- package/dist/private/dialog/useDialog.cjs.map +1 -1
- package/dist/private/dialog/useDialog.js +10 -1
- package/dist/private/dialog/useDialog.js.map +1 -1
- package/dist/private/dialog/useDialog.mjs +8 -1
- package/dist/private/dialog/useDialog.mjs.map +1 -1
- package/dist/private/dnd/DragManager.cjs +3 -1
- package/dist/private/dnd/DragManager.cjs.map +1 -1
- package/dist/private/dnd/DragManager.js +3 -1
- package/dist/private/dnd/DragManager.js.map +1 -1
- package/dist/private/dnd/DragManager.mjs +3 -1
- package/dist/private/dnd/DragManager.mjs.map +1 -1
- package/dist/private/dnd/useAutoScroll.cjs +3 -1
- package/dist/private/dnd/useAutoScroll.cjs.map +1 -1
- package/dist/private/dnd/useAutoScroll.js +3 -1
- package/dist/private/dnd/useAutoScroll.js.map +1 -1
- package/dist/private/dnd/useAutoScroll.mjs +3 -1
- package/dist/private/dnd/useAutoScroll.mjs.map +1 -1
- package/dist/private/dnd/useDrag.cjs +4 -1
- package/dist/private/dnd/useDrag.cjs.map +1 -1
- package/dist/private/dnd/useDrag.js +4 -1
- package/dist/private/dnd/useDrag.js.map +1 -1
- package/dist/private/dnd/useDrag.mjs +4 -1
- package/dist/private/dnd/useDrag.mjs.map +1 -1
- package/dist/private/dnd/useDraggableItem.cjs +4 -0
- package/dist/private/dnd/useDraggableItem.cjs.map +1 -1
- package/dist/private/dnd/useDraggableItem.js +4 -0
- package/dist/private/dnd/useDraggableItem.js.map +1 -1
- package/dist/private/dnd/useDraggableItem.mjs +4 -0
- package/dist/private/dnd/useDraggableItem.mjs.map +1 -1
- package/dist/private/dnd/useDroppableCollection.cjs +4 -0
- package/dist/private/dnd/useDroppableCollection.cjs.map +1 -1
- package/dist/private/dnd/useDroppableCollection.js +4 -0
- package/dist/private/dnd/useDroppableCollection.js.map +1 -1
- package/dist/private/dnd/useDroppableCollection.mjs +4 -0
- package/dist/private/dnd/useDroppableCollection.mjs.map +1 -1
- package/dist/private/focus/FocusScope.cjs +5 -3
- package/dist/private/focus/FocusScope.cjs.map +1 -1
- package/dist/private/focus/FocusScope.js +5 -4
- package/dist/private/focus/FocusScope.js.map +1 -1
- package/dist/private/focus/FocusScope.mjs +5 -3
- package/dist/private/focus/FocusScope.mjs.map +1 -1
- package/dist/private/focus/useFocusRing.cjs +2 -1
- package/dist/private/focus/useFocusRing.cjs.map +1 -1
- package/dist/private/focus/useFocusRing.js +2 -1
- package/dist/private/focus/useFocusRing.js.map +1 -1
- package/dist/private/focus/useFocusRing.mjs +2 -1
- package/dist/private/focus/useFocusRing.mjs.map +1 -1
- package/dist/private/form/useFormValidation.cjs +6 -0
- package/dist/private/form/useFormValidation.cjs.map +1 -1
- package/dist/private/form/useFormValidation.js +6 -0
- package/dist/private/form/useFormValidation.js.map +1 -1
- package/dist/private/form/useFormValidation.mjs +6 -0
- package/dist/private/form/useFormValidation.mjs.map +1 -1
- package/dist/private/grid/useGrid.cjs +3 -2
- package/dist/private/grid/useGrid.cjs.map +1 -1
- package/dist/private/grid/useGrid.js +3 -2
- package/dist/private/grid/useGrid.js.map +1 -1
- package/dist/private/grid/useGrid.mjs +3 -2
- package/dist/private/grid/useGrid.mjs.map +1 -1
- package/dist/private/grid/useGridCell.cjs +44 -8
- package/dist/private/grid/useGridCell.cjs.map +1 -1
- package/dist/private/grid/useGridCell.js +44 -8
- package/dist/private/grid/useGridCell.js.map +1 -1
- package/dist/private/grid/useGridCell.mjs +44 -8
- package/dist/private/grid/useGridCell.mjs.map +1 -1
- package/dist/private/grid/utils.cjs.map +1 -1
- package/dist/private/grid/utils.js.map +1 -1
- package/dist/private/grid/utils.mjs.map +1 -1
- package/dist/private/gridlist/useGridListItem.cjs +38 -30
- package/dist/private/gridlist/useGridListItem.cjs.map +1 -1
- package/dist/private/gridlist/useGridListItem.js +38 -30
- package/dist/private/gridlist/useGridListItem.js.map +1 -1
- package/dist/private/gridlist/useGridListItem.mjs +38 -30
- package/dist/private/gridlist/useGridListItem.mjs.map +1 -1
- package/dist/private/interactions/PressResponder.cjs +1 -0
- package/dist/private/interactions/PressResponder.cjs.map +1 -1
- package/dist/private/interactions/PressResponder.js +1 -0
- package/dist/private/interactions/PressResponder.js.map +1 -1
- package/dist/private/interactions/PressResponder.mjs +1 -0
- package/dist/private/interactions/PressResponder.mjs.map +1 -1
- package/dist/private/interactions/Pressable.cjs +1 -0
- package/dist/private/interactions/Pressable.cjs.map +1 -1
- package/dist/private/interactions/Pressable.js +1 -0
- package/dist/private/interactions/Pressable.js.map +1 -1
- package/dist/private/interactions/Pressable.mjs +1 -0
- package/dist/private/interactions/Pressable.mjs.map +1 -1
- package/dist/private/interactions/createEventHandler.cjs +3 -2
- package/dist/private/interactions/createEventHandler.cjs.map +1 -1
- package/dist/private/interactions/createEventHandler.js +3 -2
- package/dist/private/interactions/createEventHandler.js.map +1 -1
- package/dist/private/interactions/createEventHandler.mjs +3 -2
- package/dist/private/interactions/createEventHandler.mjs.map +1 -1
- package/dist/private/interactions/createKeyboardShortcutHandler.cjs +130 -0
- package/dist/private/interactions/createKeyboardShortcutHandler.cjs.map +1 -0
- package/dist/private/interactions/createKeyboardShortcutHandler.js +125 -0
- package/dist/private/interactions/createKeyboardShortcutHandler.js.map +1 -0
- package/dist/private/interactions/createKeyboardShortcutHandler.mjs +125 -0
- package/dist/private/interactions/createKeyboardShortcutHandler.mjs.map +1 -0
- package/dist/private/interactions/textSelection.cjs +2 -2
- package/dist/private/interactions/textSelection.cjs.map +1 -1
- package/dist/private/interactions/textSelection.js +3 -3
- package/dist/private/interactions/textSelection.js.map +1 -1
- package/dist/private/interactions/textSelection.mjs +3 -3
- package/dist/private/interactions/textSelection.mjs.map +1 -1
- package/dist/private/interactions/useContextMenu.cjs +104 -0
- package/dist/private/interactions/useContextMenu.cjs.map +1 -0
- package/dist/private/interactions/useContextMenu.js +99 -0
- package/dist/private/interactions/useContextMenu.js.map +1 -0
- package/dist/private/interactions/useContextMenu.mjs +99 -0
- package/dist/private/interactions/useContextMenu.mjs.map +1 -0
- package/dist/private/interactions/useFocusVisible.cjs +2 -2
- package/dist/private/interactions/useFocusVisible.cjs.map +1 -1
- package/dist/private/interactions/useFocusVisible.js +2 -2
- package/dist/private/interactions/useFocusVisible.js.map +1 -1
- package/dist/private/interactions/useFocusVisible.mjs +2 -2
- package/dist/private/interactions/useFocusVisible.mjs.map +1 -1
- package/dist/private/interactions/useFocusable.cjs +1 -0
- package/dist/private/interactions/useFocusable.cjs.map +1 -1
- package/dist/private/interactions/useFocusable.js +1 -0
- package/dist/private/interactions/useFocusable.js.map +1 -1
- package/dist/private/interactions/useFocusable.mjs +1 -0
- package/dist/private/interactions/useFocusable.mjs.map +1 -1
- package/dist/private/interactions/useHover.cjs +2 -1
- package/dist/private/interactions/useHover.cjs.map +1 -1
- package/dist/private/interactions/useHover.js +2 -1
- package/dist/private/interactions/useHover.js.map +1 -1
- package/dist/private/interactions/useHover.mjs +2 -1
- package/dist/private/interactions/useHover.mjs.map +1 -1
- package/dist/private/interactions/useKeyboard.cjs +46 -2
- package/dist/private/interactions/useKeyboard.cjs.map +1 -1
- package/dist/private/interactions/useKeyboard.js +48 -2
- package/dist/private/interactions/useKeyboard.js.map +1 -1
- package/dist/private/interactions/useKeyboard.mjs +46 -2
- package/dist/private/interactions/useKeyboard.mjs.map +1 -1
- package/dist/private/interactions/useLongPress.cjs +22 -22
- package/dist/private/interactions/useLongPress.cjs.map +1 -1
- package/dist/private/interactions/useLongPress.js +22 -22
- package/dist/private/interactions/useLongPress.js.map +1 -1
- package/dist/private/interactions/useLongPress.mjs +22 -22
- package/dist/private/interactions/useLongPress.mjs.map +1 -1
- package/dist/private/interactions/useMove.cjs +1 -8
- package/dist/private/interactions/useMove.cjs.map +1 -1
- package/dist/private/interactions/useMove.js +1 -8
- package/dist/private/interactions/useMove.js.map +1 -1
- package/dist/private/interactions/useMove.mjs +1 -8
- package/dist/private/interactions/useMove.mjs.map +1 -1
- package/dist/private/interactions/usePress.cjs +18 -33
- package/dist/private/interactions/usePress.cjs.map +1 -1
- package/dist/private/interactions/usePress.js +18 -33
- package/dist/private/interactions/usePress.js.map +1 -1
- package/dist/private/interactions/usePress.mjs +18 -33
- package/dist/private/interactions/usePress.mjs.map +1 -1
- package/dist/private/interactions/utils.cjs +10 -10
- package/dist/private/interactions/utils.cjs.map +1 -1
- package/dist/private/interactions/utils.js +10 -10
- package/dist/private/interactions/utils.js.map +1 -1
- package/dist/private/interactions/utils.mjs +10 -10
- package/dist/private/interactions/utils.mjs.map +1 -1
- package/dist/private/intl/combobox/fi-FI.cjs +5 -5
- package/dist/private/intl/combobox/fi-FI.cjs.map +1 -1
- package/dist/private/intl/combobox/fi-FI.js +5 -5
- package/dist/private/intl/combobox/fi-FI.js.map +1 -1
- package/dist/private/intl/combobox/fi-FI.mjs +5 -5
- package/dist/private/intl/combobox/fi-FI.mjs.map +1 -1
- package/dist/private/intl/previewtrigger/ar-AE.cjs +6 -0
- package/dist/private/intl/previewtrigger/ar-AE.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/ar-AE.js +8 -0
- package/dist/private/intl/previewtrigger/ar-AE.js.map +1 -0
- package/dist/private/intl/previewtrigger/ar-AE.mjs +8 -0
- package/dist/private/intl/previewtrigger/ar-AE.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/bg-BG.cjs +6 -0
- package/dist/private/intl/previewtrigger/bg-BG.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/bg-BG.js +8 -0
- package/dist/private/intl/previewtrigger/bg-BG.js.map +1 -0
- package/dist/private/intl/previewtrigger/bg-BG.mjs +8 -0
- package/dist/private/intl/previewtrigger/bg-BG.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/cs-CZ.cjs +6 -0
- package/dist/private/intl/previewtrigger/cs-CZ.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/cs-CZ.js +8 -0
- package/dist/private/intl/previewtrigger/cs-CZ.js.map +1 -0
- package/dist/private/intl/previewtrigger/cs-CZ.mjs +8 -0
- package/dist/private/intl/previewtrigger/cs-CZ.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/da-DK.cjs +6 -0
- package/dist/private/intl/previewtrigger/da-DK.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/da-DK.js +8 -0
- package/dist/private/intl/previewtrigger/da-DK.js.map +1 -0
- package/dist/private/intl/previewtrigger/da-DK.mjs +8 -0
- package/dist/private/intl/previewtrigger/da-DK.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/de-DE.cjs +6 -0
- package/dist/private/intl/previewtrigger/de-DE.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/de-DE.js +8 -0
- package/dist/private/intl/previewtrigger/de-DE.js.map +1 -0
- package/dist/private/intl/previewtrigger/de-DE.mjs +8 -0
- package/dist/private/intl/previewtrigger/de-DE.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/el-GR.cjs +6 -0
- package/dist/private/intl/previewtrigger/el-GR.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/el-GR.js +8 -0
- package/dist/private/intl/previewtrigger/el-GR.js.map +1 -0
- package/dist/private/intl/previewtrigger/el-GR.mjs +8 -0
- package/dist/private/intl/previewtrigger/el-GR.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/en-US.cjs +6 -0
- package/dist/private/intl/previewtrigger/en-US.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/en-US.js +8 -0
- package/dist/private/intl/previewtrigger/en-US.js.map +1 -0
- package/dist/private/intl/previewtrigger/en-US.mjs +8 -0
- package/dist/private/intl/previewtrigger/en-US.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/es-ES.cjs +6 -0
- package/dist/private/intl/previewtrigger/es-ES.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/es-ES.js +8 -0
- package/dist/private/intl/previewtrigger/es-ES.js.map +1 -0
- package/dist/private/intl/previewtrigger/es-ES.mjs +8 -0
- package/dist/private/intl/previewtrigger/es-ES.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/et-EE.cjs +6 -0
- package/dist/private/intl/previewtrigger/et-EE.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/et-EE.js +8 -0
- package/dist/private/intl/previewtrigger/et-EE.js.map +1 -0
- package/dist/private/intl/previewtrigger/et-EE.mjs +8 -0
- package/dist/private/intl/previewtrigger/et-EE.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/fi-FI.cjs +6 -0
- package/dist/private/intl/previewtrigger/fi-FI.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/fi-FI.js +8 -0
- package/dist/private/intl/previewtrigger/fi-FI.js.map +1 -0
- package/dist/private/intl/previewtrigger/fi-FI.mjs +8 -0
- package/dist/private/intl/previewtrigger/fi-FI.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/fr-FR.cjs +6 -0
- package/dist/private/intl/previewtrigger/fr-FR.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/fr-FR.js +8 -0
- package/dist/private/intl/previewtrigger/fr-FR.js.map +1 -0
- package/dist/private/intl/previewtrigger/fr-FR.mjs +8 -0
- package/dist/private/intl/previewtrigger/fr-FR.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/he-IL.cjs +6 -0
- package/dist/private/intl/previewtrigger/he-IL.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/he-IL.js +8 -0
- package/dist/private/intl/previewtrigger/he-IL.js.map +1 -0
- package/dist/private/intl/previewtrigger/he-IL.mjs +8 -0
- package/dist/private/intl/previewtrigger/he-IL.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/hr-HR.cjs +6 -0
- package/dist/private/intl/previewtrigger/hr-HR.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/hr-HR.js +8 -0
- package/dist/private/intl/previewtrigger/hr-HR.js.map +1 -0
- package/dist/private/intl/previewtrigger/hr-HR.mjs +8 -0
- package/dist/private/intl/previewtrigger/hr-HR.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/hu-HU.cjs +6 -0
- package/dist/private/intl/previewtrigger/hu-HU.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/hu-HU.js +8 -0
- package/dist/private/intl/previewtrigger/hu-HU.js.map +1 -0
- package/dist/private/intl/previewtrigger/hu-HU.mjs +8 -0
- package/dist/private/intl/previewtrigger/hu-HU.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/it-IT.cjs +6 -0
- package/dist/private/intl/previewtrigger/it-IT.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/it-IT.js +8 -0
- package/dist/private/intl/previewtrigger/it-IT.js.map +1 -0
- package/dist/private/intl/previewtrigger/it-IT.mjs +8 -0
- package/dist/private/intl/previewtrigger/it-IT.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/ja-JP.cjs +6 -0
- package/dist/private/intl/previewtrigger/ja-JP.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/ja-JP.js +8 -0
- package/dist/private/intl/previewtrigger/ja-JP.js.map +1 -0
- package/dist/private/intl/previewtrigger/ja-JP.mjs +8 -0
- package/dist/private/intl/previewtrigger/ja-JP.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/ko-KR.cjs +6 -0
- package/dist/private/intl/previewtrigger/ko-KR.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/ko-KR.js +8 -0
- package/dist/private/intl/previewtrigger/ko-KR.js.map +1 -0
- package/dist/private/intl/previewtrigger/ko-KR.mjs +8 -0
- package/dist/private/intl/previewtrigger/ko-KR.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/lt-LT.cjs +6 -0
- package/dist/private/intl/previewtrigger/lt-LT.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/lt-LT.js +8 -0
- package/dist/private/intl/previewtrigger/lt-LT.js.map +1 -0
- package/dist/private/intl/previewtrigger/lt-LT.mjs +8 -0
- package/dist/private/intl/previewtrigger/lt-LT.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/lv-LV.cjs +6 -0
- package/dist/private/intl/previewtrigger/lv-LV.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/lv-LV.js +8 -0
- package/dist/private/intl/previewtrigger/lv-LV.js.map +1 -0
- package/dist/private/intl/previewtrigger/lv-LV.mjs +8 -0
- package/dist/private/intl/previewtrigger/lv-LV.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/nb-NO.cjs +6 -0
- package/dist/private/intl/previewtrigger/nb-NO.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/nb-NO.js +8 -0
- package/dist/private/intl/previewtrigger/nb-NO.js.map +1 -0
- package/dist/private/intl/previewtrigger/nb-NO.mjs +8 -0
- package/dist/private/intl/previewtrigger/nb-NO.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/nl-NL.cjs +6 -0
- package/dist/private/intl/previewtrigger/nl-NL.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/nl-NL.js +8 -0
- package/dist/private/intl/previewtrigger/nl-NL.js.map +1 -0
- package/dist/private/intl/previewtrigger/nl-NL.mjs +8 -0
- package/dist/private/intl/previewtrigger/nl-NL.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/pl-PL.cjs +6 -0
- package/dist/private/intl/previewtrigger/pl-PL.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/pl-PL.js +8 -0
- package/dist/private/intl/previewtrigger/pl-PL.js.map +1 -0
- package/dist/private/intl/previewtrigger/pl-PL.mjs +8 -0
- package/dist/private/intl/previewtrigger/pl-PL.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/pt-BR.cjs +6 -0
- package/dist/private/intl/previewtrigger/pt-BR.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/pt-BR.js +8 -0
- package/dist/private/intl/previewtrigger/pt-BR.js.map +1 -0
- package/dist/private/intl/previewtrigger/pt-BR.mjs +8 -0
- package/dist/private/intl/previewtrigger/pt-BR.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/pt-PT.cjs +6 -0
- package/dist/private/intl/previewtrigger/pt-PT.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/pt-PT.js +8 -0
- package/dist/private/intl/previewtrigger/pt-PT.js.map +1 -0
- package/dist/private/intl/previewtrigger/pt-PT.mjs +8 -0
- package/dist/private/intl/previewtrigger/pt-PT.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/ro-RO.cjs +6 -0
- package/dist/private/intl/previewtrigger/ro-RO.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/ro-RO.js +8 -0
- package/dist/private/intl/previewtrigger/ro-RO.js.map +1 -0
- package/dist/private/intl/previewtrigger/ro-RO.mjs +8 -0
- package/dist/private/intl/previewtrigger/ro-RO.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/ru-RU.cjs +6 -0
- package/dist/private/intl/previewtrigger/ru-RU.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/ru-RU.js +8 -0
- package/dist/private/intl/previewtrigger/ru-RU.js.map +1 -0
- package/dist/private/intl/previewtrigger/ru-RU.mjs +8 -0
- package/dist/private/intl/previewtrigger/ru-RU.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/sk-SK.cjs +6 -0
- package/dist/private/intl/previewtrigger/sk-SK.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/sk-SK.js +8 -0
- package/dist/private/intl/previewtrigger/sk-SK.js.map +1 -0
- package/dist/private/intl/previewtrigger/sk-SK.mjs +8 -0
- package/dist/private/intl/previewtrigger/sk-SK.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/sl-SI.cjs +6 -0
- package/dist/private/intl/previewtrigger/sl-SI.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/sl-SI.js +8 -0
- package/dist/private/intl/previewtrigger/sl-SI.js.map +1 -0
- package/dist/private/intl/previewtrigger/sl-SI.mjs +8 -0
- package/dist/private/intl/previewtrigger/sl-SI.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/sr-SP.cjs +6 -0
- package/dist/private/intl/previewtrigger/sr-SP.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/sr-SP.js +8 -0
- package/dist/private/intl/previewtrigger/sr-SP.js.map +1 -0
- package/dist/private/intl/previewtrigger/sr-SP.mjs +8 -0
- package/dist/private/intl/previewtrigger/sr-SP.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/sv-SE.cjs +6 -0
- package/dist/private/intl/previewtrigger/sv-SE.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/sv-SE.js +8 -0
- package/dist/private/intl/previewtrigger/sv-SE.js.map +1 -0
- package/dist/private/intl/previewtrigger/sv-SE.mjs +8 -0
- package/dist/private/intl/previewtrigger/sv-SE.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/tr-TR.cjs +6 -0
- package/dist/private/intl/previewtrigger/tr-TR.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/tr-TR.js +8 -0
- package/dist/private/intl/previewtrigger/tr-TR.js.map +1 -0
- package/dist/private/intl/previewtrigger/tr-TR.mjs +8 -0
- package/dist/private/intl/previewtrigger/tr-TR.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/uk-UA.cjs +6 -0
- package/dist/private/intl/previewtrigger/uk-UA.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/uk-UA.js +8 -0
- package/dist/private/intl/previewtrigger/uk-UA.js.map +1 -0
- package/dist/private/intl/previewtrigger/uk-UA.mjs +8 -0
- package/dist/private/intl/previewtrigger/uk-UA.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/zh-CN.cjs +6 -0
- package/dist/private/intl/previewtrigger/zh-CN.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/zh-CN.js +8 -0
- package/dist/private/intl/previewtrigger/zh-CN.js.map +1 -0
- package/dist/private/intl/previewtrigger/zh-CN.mjs +8 -0
- package/dist/private/intl/previewtrigger/zh-CN.mjs.map +1 -0
- package/dist/private/intl/previewtrigger/zh-TW.cjs +6 -0
- package/dist/private/intl/previewtrigger/zh-TW.cjs.map +1 -0
- package/dist/private/intl/previewtrigger/zh-TW.js +8 -0
- package/dist/private/intl/previewtrigger/zh-TW.js.map +1 -0
- package/dist/private/intl/previewtrigger/zh-TW.mjs +8 -0
- package/dist/private/intl/previewtrigger/zh-TW.mjs.map +1 -0
- package/dist/private/intl/table/ar-AE.cjs +3 -3
- package/dist/private/intl/table/ar-AE.cjs.map +1 -1
- package/dist/private/intl/table/ar-AE.js +3 -3
- package/dist/private/intl/table/ar-AE.js.map +1 -1
- package/dist/private/intl/table/ar-AE.mjs +3 -3
- package/dist/private/intl/table/ar-AE.mjs.map +1 -1
- package/dist/private/intl/table/bg-BG.cjs +3 -3
- package/dist/private/intl/table/bg-BG.cjs.map +1 -1
- package/dist/private/intl/table/bg-BG.js +3 -3
- package/dist/private/intl/table/bg-BG.js.map +1 -1
- package/dist/private/intl/table/bg-BG.mjs +3 -3
- package/dist/private/intl/table/bg-BG.mjs.map +1 -1
- package/dist/private/intl/table/cs-CZ.cjs +3 -3
- package/dist/private/intl/table/cs-CZ.cjs.map +1 -1
- package/dist/private/intl/table/cs-CZ.js +3 -3
- package/dist/private/intl/table/cs-CZ.js.map +1 -1
- package/dist/private/intl/table/cs-CZ.mjs +3 -3
- package/dist/private/intl/table/cs-CZ.mjs.map +1 -1
- package/dist/private/intl/table/da-DK.cjs +3 -3
- package/dist/private/intl/table/da-DK.cjs.map +1 -1
- package/dist/private/intl/table/da-DK.js +3 -3
- package/dist/private/intl/table/da-DK.js.map +1 -1
- package/dist/private/intl/table/da-DK.mjs +3 -3
- package/dist/private/intl/table/da-DK.mjs.map +1 -1
- package/dist/private/intl/table/de-DE.cjs +3 -3
- package/dist/private/intl/table/de-DE.cjs.map +1 -1
- package/dist/private/intl/table/de-DE.js +3 -3
- package/dist/private/intl/table/de-DE.js.map +1 -1
- package/dist/private/intl/table/de-DE.mjs +3 -3
- package/dist/private/intl/table/de-DE.mjs.map +1 -1
- package/dist/private/intl/table/el-GR.cjs +3 -3
- package/dist/private/intl/table/el-GR.cjs.map +1 -1
- package/dist/private/intl/table/el-GR.js +3 -3
- package/dist/private/intl/table/el-GR.js.map +1 -1
- package/dist/private/intl/table/el-GR.mjs +3 -3
- package/dist/private/intl/table/el-GR.mjs.map +1 -1
- package/dist/private/intl/table/es-ES.cjs +3 -3
- package/dist/private/intl/table/es-ES.cjs.map +1 -1
- package/dist/private/intl/table/es-ES.js +3 -3
- package/dist/private/intl/table/es-ES.js.map +1 -1
- package/dist/private/intl/table/es-ES.mjs +3 -3
- package/dist/private/intl/table/es-ES.mjs.map +1 -1
- package/dist/private/intl/table/et-EE.cjs +3 -3
- package/dist/private/intl/table/et-EE.cjs.map +1 -1
- package/dist/private/intl/table/et-EE.js +3 -3
- package/dist/private/intl/table/et-EE.js.map +1 -1
- package/dist/private/intl/table/et-EE.mjs +3 -3
- package/dist/private/intl/table/et-EE.mjs.map +1 -1
- package/dist/private/intl/table/fi-FI.cjs +3 -3
- package/dist/private/intl/table/fi-FI.cjs.map +1 -1
- package/dist/private/intl/table/fi-FI.js +3 -3
- package/dist/private/intl/table/fi-FI.js.map +1 -1
- package/dist/private/intl/table/fi-FI.mjs +3 -3
- package/dist/private/intl/table/fi-FI.mjs.map +1 -1
- package/dist/private/intl/table/fr-FR.cjs +3 -3
- package/dist/private/intl/table/fr-FR.cjs.map +1 -1
- package/dist/private/intl/table/fr-FR.js +3 -3
- package/dist/private/intl/table/fr-FR.js.map +1 -1
- package/dist/private/intl/table/fr-FR.mjs +3 -3
- package/dist/private/intl/table/fr-FR.mjs.map +1 -1
- package/dist/private/intl/table/he-IL.cjs +3 -3
- package/dist/private/intl/table/he-IL.cjs.map +1 -1
- package/dist/private/intl/table/he-IL.js +3 -3
- package/dist/private/intl/table/he-IL.js.map +1 -1
- package/dist/private/intl/table/he-IL.mjs +3 -3
- package/dist/private/intl/table/he-IL.mjs.map +1 -1
- package/dist/private/intl/table/hr-HR.cjs +3 -3
- package/dist/private/intl/table/hr-HR.cjs.map +1 -1
- package/dist/private/intl/table/hr-HR.js +3 -3
- package/dist/private/intl/table/hr-HR.js.map +1 -1
- package/dist/private/intl/table/hr-HR.mjs +3 -3
- package/dist/private/intl/table/hr-HR.mjs.map +1 -1
- package/dist/private/intl/table/hu-HU.cjs +3 -3
- package/dist/private/intl/table/hu-HU.cjs.map +1 -1
- package/dist/private/intl/table/hu-HU.js +3 -3
- package/dist/private/intl/table/hu-HU.js.map +1 -1
- package/dist/private/intl/table/hu-HU.mjs +3 -3
- package/dist/private/intl/table/hu-HU.mjs.map +1 -1
- package/dist/private/intl/table/it-IT.cjs +3 -3
- package/dist/private/intl/table/it-IT.cjs.map +1 -1
- package/dist/private/intl/table/it-IT.js +3 -3
- package/dist/private/intl/table/it-IT.js.map +1 -1
- package/dist/private/intl/table/it-IT.mjs +3 -3
- package/dist/private/intl/table/it-IT.mjs.map +1 -1
- package/dist/private/intl/table/ja-JP.cjs +3 -3
- package/dist/private/intl/table/ja-JP.cjs.map +1 -1
- package/dist/private/intl/table/ja-JP.js +3 -3
- package/dist/private/intl/table/ja-JP.js.map +1 -1
- package/dist/private/intl/table/ja-JP.mjs +3 -3
- package/dist/private/intl/table/ja-JP.mjs.map +1 -1
- package/dist/private/intl/table/ko-KR.cjs +3 -3
- package/dist/private/intl/table/ko-KR.cjs.map +1 -1
- package/dist/private/intl/table/ko-KR.js +3 -3
- package/dist/private/intl/table/ko-KR.js.map +1 -1
- package/dist/private/intl/table/ko-KR.mjs +3 -3
- package/dist/private/intl/table/ko-KR.mjs.map +1 -1
- package/dist/private/intl/table/lt-LT.cjs +3 -3
- package/dist/private/intl/table/lt-LT.cjs.map +1 -1
- package/dist/private/intl/table/lt-LT.js +3 -3
- package/dist/private/intl/table/lt-LT.js.map +1 -1
- package/dist/private/intl/table/lt-LT.mjs +3 -3
- package/dist/private/intl/table/lt-LT.mjs.map +1 -1
- package/dist/private/intl/table/lv-LV.cjs +3 -3
- package/dist/private/intl/table/lv-LV.cjs.map +1 -1
- package/dist/private/intl/table/lv-LV.js +3 -3
- package/dist/private/intl/table/lv-LV.js.map +1 -1
- package/dist/private/intl/table/lv-LV.mjs +3 -3
- package/dist/private/intl/table/lv-LV.mjs.map +1 -1
- package/dist/private/intl/table/nb-NO.cjs +3 -3
- package/dist/private/intl/table/nb-NO.cjs.map +1 -1
- package/dist/private/intl/table/nb-NO.js +3 -3
- package/dist/private/intl/table/nb-NO.js.map +1 -1
- package/dist/private/intl/table/nb-NO.mjs +3 -3
- package/dist/private/intl/table/nb-NO.mjs.map +1 -1
- package/dist/private/intl/table/nl-NL.cjs +3 -3
- package/dist/private/intl/table/nl-NL.cjs.map +1 -1
- package/dist/private/intl/table/nl-NL.js +3 -3
- package/dist/private/intl/table/nl-NL.js.map +1 -1
- package/dist/private/intl/table/nl-NL.mjs +3 -3
- package/dist/private/intl/table/nl-NL.mjs.map +1 -1
- package/dist/private/intl/table/pl-PL.cjs +3 -3
- package/dist/private/intl/table/pl-PL.cjs.map +1 -1
- package/dist/private/intl/table/pl-PL.js +3 -3
- package/dist/private/intl/table/pl-PL.js.map +1 -1
- package/dist/private/intl/table/pl-PL.mjs +3 -3
- package/dist/private/intl/table/pl-PL.mjs.map +1 -1
- package/dist/private/intl/table/pt-BR.cjs +3 -3
- package/dist/private/intl/table/pt-BR.cjs.map +1 -1
- package/dist/private/intl/table/pt-BR.js +3 -3
- package/dist/private/intl/table/pt-BR.js.map +1 -1
- package/dist/private/intl/table/pt-BR.mjs +3 -3
- package/dist/private/intl/table/pt-BR.mjs.map +1 -1
- package/dist/private/intl/table/pt-PT.cjs +3 -3
- package/dist/private/intl/table/pt-PT.cjs.map +1 -1
- package/dist/private/intl/table/pt-PT.js +3 -3
- package/dist/private/intl/table/pt-PT.js.map +1 -1
- package/dist/private/intl/table/pt-PT.mjs +3 -3
- package/dist/private/intl/table/pt-PT.mjs.map +1 -1
- package/dist/private/intl/table/ro-RO.cjs +3 -3
- package/dist/private/intl/table/ro-RO.cjs.map +1 -1
- package/dist/private/intl/table/ro-RO.js +3 -3
- package/dist/private/intl/table/ro-RO.js.map +1 -1
- package/dist/private/intl/table/ro-RO.mjs +3 -3
- package/dist/private/intl/table/ro-RO.mjs.map +1 -1
- package/dist/private/intl/table/ru-RU.cjs +3 -3
- package/dist/private/intl/table/ru-RU.cjs.map +1 -1
- package/dist/private/intl/table/ru-RU.js +3 -3
- package/dist/private/intl/table/ru-RU.js.map +1 -1
- package/dist/private/intl/table/ru-RU.mjs +3 -3
- package/dist/private/intl/table/ru-RU.mjs.map +1 -1
- package/dist/private/intl/table/sk-SK.cjs +3 -3
- package/dist/private/intl/table/sk-SK.cjs.map +1 -1
- package/dist/private/intl/table/sk-SK.js +3 -3
- package/dist/private/intl/table/sk-SK.js.map +1 -1
- package/dist/private/intl/table/sk-SK.mjs +3 -3
- package/dist/private/intl/table/sk-SK.mjs.map +1 -1
- package/dist/private/intl/table/sl-SI.cjs +3 -3
- package/dist/private/intl/table/sl-SI.cjs.map +1 -1
- package/dist/private/intl/table/sl-SI.js +3 -3
- package/dist/private/intl/table/sl-SI.js.map +1 -1
- package/dist/private/intl/table/sl-SI.mjs +3 -3
- package/dist/private/intl/table/sl-SI.mjs.map +1 -1
- package/dist/private/intl/table/sr-SP.cjs +3 -3
- package/dist/private/intl/table/sr-SP.cjs.map +1 -1
- package/dist/private/intl/table/sr-SP.js +3 -3
- package/dist/private/intl/table/sr-SP.js.map +1 -1
- package/dist/private/intl/table/sr-SP.mjs +3 -3
- package/dist/private/intl/table/sr-SP.mjs.map +1 -1
- package/dist/private/intl/table/sv-SE.cjs +3 -3
- package/dist/private/intl/table/sv-SE.cjs.map +1 -1
- package/dist/private/intl/table/sv-SE.js +3 -3
- package/dist/private/intl/table/sv-SE.js.map +1 -1
- package/dist/private/intl/table/sv-SE.mjs +3 -3
- package/dist/private/intl/table/sv-SE.mjs.map +1 -1
- package/dist/private/intl/table/tr-TR.cjs +3 -3
- package/dist/private/intl/table/tr-TR.cjs.map +1 -1
- package/dist/private/intl/table/tr-TR.js +3 -3
- package/dist/private/intl/table/tr-TR.js.map +1 -1
- package/dist/private/intl/table/tr-TR.mjs +3 -3
- package/dist/private/intl/table/tr-TR.mjs.map +1 -1
- package/dist/private/intl/table/uk-UA.cjs +3 -3
- package/dist/private/intl/table/uk-UA.cjs.map +1 -1
- package/dist/private/intl/table/uk-UA.js +3 -3
- package/dist/private/intl/table/uk-UA.js.map +1 -1
- package/dist/private/intl/table/uk-UA.mjs +3 -3
- package/dist/private/intl/table/uk-UA.mjs.map +1 -1
- package/dist/private/intl/table/zh-CN.cjs +4 -4
- package/dist/private/intl/table/zh-CN.cjs.map +1 -1
- package/dist/private/intl/table/zh-CN.js +4 -4
- package/dist/private/intl/table/zh-CN.js.map +1 -1
- package/dist/private/intl/table/zh-CN.mjs +4 -4
- package/dist/private/intl/table/zh-CN.mjs.map +1 -1
- package/dist/private/intl/table/zh-TW.cjs +3 -3
- package/dist/private/intl/table/zh-TW.cjs.map +1 -1
- package/dist/private/intl/table/zh-TW.js +3 -3
- package/dist/private/intl/table/zh-TW.js.map +1 -1
- package/dist/private/intl/table/zh-TW.mjs +3 -3
- package/dist/private/intl/table/zh-TW.mjs.map +1 -1
- package/dist/private/intl/tree/es-ES.cjs +1 -1
- package/dist/private/intl/tree/es-ES.cjs.map +1 -1
- package/dist/private/intl/tree/es-ES.js +1 -1
- package/dist/private/intl/tree/es-ES.js.map +1 -1
- package/dist/private/intl/tree/es-ES.mjs +1 -1
- package/dist/private/intl/tree/es-ES.mjs.map +1 -1
- package/dist/private/link/useLink.cjs +2 -1
- package/dist/private/link/useLink.cjs.map +1 -1
- package/dist/private/link/useLink.js +2 -1
- package/dist/private/link/useLink.js.map +1 -1
- package/dist/private/link/useLink.mjs +2 -1
- package/dist/private/link/useLink.mjs.map +1 -1
- package/dist/private/menu/useMenuItem.cjs +33 -33
- package/dist/private/menu/useMenuItem.cjs.map +1 -1
- package/dist/private/menu/useMenuItem.js +33 -33
- package/dist/private/menu/useMenuItem.js.map +1 -1
- package/dist/private/menu/useMenuItem.mjs +33 -33
- package/dist/private/menu/useMenuItem.mjs.map +1 -1
- package/dist/private/menu/useMenuTrigger.cjs +96 -30
- package/dist/private/menu/useMenuTrigger.cjs.map +1 -1
- package/dist/private/menu/useMenuTrigger.js +96 -30
- package/dist/private/menu/useMenuTrigger.js.map +1 -1
- package/dist/private/menu/useMenuTrigger.mjs +96 -30
- package/dist/private/menu/useMenuTrigger.mjs.map +1 -1
- package/dist/private/menu/useSubmenuTrigger.cjs +44 -36
- package/dist/private/menu/useSubmenuTrigger.cjs.map +1 -1
- package/dist/private/menu/useSubmenuTrigger.js +44 -36
- package/dist/private/menu/useSubmenuTrigger.js.map +1 -1
- package/dist/private/menu/useSubmenuTrigger.mjs +44 -36
- package/dist/private/menu/useSubmenuTrigger.mjs.map +1 -1
- package/dist/private/numberfield/useNumberField.cjs +24 -19
- package/dist/private/numberfield/useNumberField.cjs.map +1 -1
- package/dist/private/numberfield/useNumberField.js +24 -19
- package/dist/private/numberfield/useNumberField.js.map +1 -1
- package/dist/private/numberfield/useNumberField.mjs +24 -19
- package/dist/private/numberfield/useNumberField.mjs.map +1 -1
- package/dist/private/overlays/Overlay.cjs +5 -1
- package/dist/private/overlays/Overlay.cjs.map +1 -1
- package/dist/private/overlays/Overlay.js +5 -1
- package/dist/private/overlays/Overlay.js.map +1 -1
- package/dist/private/overlays/Overlay.mjs +5 -1
- package/dist/private/overlays/Overlay.mjs.map +1 -1
- package/dist/private/overlays/ariaHideOutside.cjs +12 -8
- package/dist/private/overlays/ariaHideOutside.cjs.map +1 -1
- package/dist/private/overlays/ariaHideOutside.js +13 -9
- package/dist/private/overlays/ariaHideOutside.js.map +1 -1
- package/dist/private/overlays/ariaHideOutside.mjs +13 -9
- package/dist/private/overlays/ariaHideOutside.mjs.map +1 -1
- package/dist/private/overlays/useCloseOnScroll.cjs +3 -4
- package/dist/private/overlays/useCloseOnScroll.cjs.map +1 -1
- package/dist/private/overlays/useCloseOnScroll.js +4 -5
- package/dist/private/overlays/useCloseOnScroll.js.map +1 -1
- package/dist/private/overlays/useCloseOnScroll.mjs +4 -5
- package/dist/private/overlays/useCloseOnScroll.mjs.map +1 -1
- package/dist/private/overlays/useOverlay.cjs +13 -7
- package/dist/private/overlays/useOverlay.cjs.map +1 -1
- package/dist/private/overlays/useOverlay.js +13 -7
- package/dist/private/overlays/useOverlay.js.map +1 -1
- package/dist/private/overlays/useOverlay.mjs +13 -7
- package/dist/private/overlays/useOverlay.mjs.map +1 -1
- package/dist/private/overlays/useOverlayPosition.cjs +6 -0
- package/dist/private/overlays/useOverlayPosition.cjs.map +1 -1
- package/dist/private/overlays/useOverlayPosition.js +6 -0
- package/dist/private/overlays/useOverlayPosition.js.map +1 -1
- package/dist/private/overlays/useOverlayPosition.mjs +6 -0
- package/dist/private/overlays/useOverlayPosition.mjs.map +1 -1
- package/dist/private/overlays/usePopover.cjs +6 -2
- package/dist/private/overlays/usePopover.cjs.map +1 -1
- package/dist/private/overlays/usePopover.js +7 -2
- package/dist/private/overlays/usePopover.js.map +1 -1
- package/dist/private/overlays/usePopover.mjs +6 -2
- package/dist/private/overlays/usePopover.mjs.map +1 -1
- package/dist/private/overlays/usePreventScroll.cjs +2 -5
- package/dist/private/overlays/usePreventScroll.cjs.map +1 -1
- package/dist/private/overlays/usePreventScroll.js +3 -6
- package/dist/private/overlays/usePreventScroll.js.map +1 -1
- package/dist/private/overlays/usePreventScroll.mjs +3 -6
- package/dist/private/overlays/usePreventScroll.mjs.map +1 -1
- package/dist/private/progress/useProgressBar.cjs +2 -1
- package/dist/private/progress/useProgressBar.cjs.map +1 -1
- package/dist/private/progress/useProgressBar.js +2 -1
- package/dist/private/progress/useProgressBar.js.map +1 -1
- package/dist/private/progress/useProgressBar.mjs +2 -1
- package/dist/private/progress/useProgressBar.mjs.map +1 -1
- package/dist/private/radio/useRadioGroup.cjs +26 -23
- package/dist/private/radio/useRadioGroup.cjs.map +1 -1
- package/dist/private/radio/useRadioGroup.js +26 -23
- package/dist/private/radio/useRadioGroup.js.map +1 -1
- package/dist/private/radio/useRadioGroup.mjs +26 -23
- package/dist/private/radio/useRadioGroup.mjs.map +1 -1
- package/dist/private/searchfield/useSearchField.cjs +28 -22
- package/dist/private/searchfield/useSearchField.cjs.map +1 -1
- package/dist/private/searchfield/useSearchField.js +28 -22
- package/dist/private/searchfield/useSearchField.js.map +1 -1
- package/dist/private/searchfield/useSearchField.mjs +28 -22
- package/dist/private/searchfield/useSearchField.mjs.map +1 -1
- package/dist/private/select/useSelect.cjs +21 -23
- package/dist/private/select/useSelect.cjs.map +1 -1
- package/dist/private/select/useSelect.js +23 -25
- package/dist/private/select/useSelect.js.map +1 -1
- package/dist/private/select/useSelect.mjs +21 -23
- package/dist/private/select/useSelect.mjs.map +1 -1
- package/dist/private/selection/useSelectableCollection.cjs +203 -146
- package/dist/private/selection/useSelectableCollection.cjs.map +1 -1
- package/dist/private/selection/useSelectableCollection.js +207 -150
- package/dist/private/selection/useSelectableCollection.js.map +1 -1
- package/dist/private/selection/useSelectableCollection.mjs +203 -146
- package/dist/private/selection/useSelectableCollection.mjs.map +1 -1
- package/dist/private/selection/useSelectableItem.cjs +58 -13
- package/dist/private/selection/useSelectableItem.cjs.map +1 -1
- package/dist/private/selection/useSelectableItem.js +58 -13
- package/dist/private/selection/useSelectableItem.js.map +1 -1
- package/dist/private/selection/useSelectableItem.mjs +58 -13
- package/dist/private/selection/useSelectableItem.mjs.map +1 -1
- package/dist/private/slider/useSlider.cjs.map +1 -1
- package/dist/private/slider/useSlider.js.map +1 -1
- package/dist/private/slider/useSlider.mjs.map +1 -1
- package/dist/private/slider/useSliderThumb.cjs +28 -26
- package/dist/private/slider/useSliderThumb.cjs.map +1 -1
- package/dist/private/slider/useSliderThumb.js +28 -26
- package/dist/private/slider/useSliderThumb.js.map +1 -1
- package/dist/private/slider/useSliderThumb.mjs +28 -26
- package/dist/private/slider/useSliderThumb.mjs.map +1 -1
- package/dist/private/spinbutton/useSpinButton.cjs +49 -34
- package/dist/private/spinbutton/useSpinButton.cjs.map +1 -1
- package/dist/private/spinbutton/useSpinButton.js +49 -34
- package/dist/private/spinbutton/useSpinButton.js.map +1 -1
- package/dist/private/spinbutton/useSpinButton.mjs +49 -34
- package/dist/private/spinbutton/useSpinButton.mjs.map +1 -1
- package/dist/private/ssr/SSRProvider.cjs +12 -3
- package/dist/private/ssr/SSRProvider.cjs.map +1 -1
- package/dist/private/ssr/SSRProvider.js +12 -3
- package/dist/private/ssr/SSRProvider.js.map +1 -1
- package/dist/private/ssr/SSRProvider.mjs +12 -3
- package/dist/private/ssr/SSRProvider.mjs.map +1 -1
- package/dist/private/steplist/useStepListItem.cjs +0 -9
- package/dist/private/steplist/useStepListItem.cjs.map +1 -1
- package/dist/private/steplist/useStepListItem.js +0 -10
- package/dist/private/steplist/useStepListItem.js.map +1 -1
- package/dist/private/steplist/useStepListItem.mjs +0 -9
- package/dist/private/steplist/useStepListItem.mjs.map +1 -1
- package/dist/private/table/useTable.cjs +4 -2
- package/dist/private/table/useTable.cjs.map +1 -1
- package/dist/private/table/useTable.js +4 -2
- package/dist/private/table/useTable.js.map +1 -1
- package/dist/private/table/useTable.mjs +4 -2
- package/dist/private/table/useTable.mjs.map +1 -1
- package/dist/private/table/useTableCell.cjs +2 -0
- package/dist/private/table/useTableCell.cjs.map +1 -1
- package/dist/private/table/useTableCell.js +2 -0
- package/dist/private/table/useTableCell.js.map +1 -1
- package/dist/private/table/useTableCell.mjs +2 -0
- package/dist/private/table/useTableCell.mjs.map +1 -1
- package/dist/private/table/useTableColumnHeader.cjs +2 -3
- package/dist/private/table/useTableColumnHeader.cjs.map +1 -1
- package/dist/private/table/useTableColumnHeader.js +2 -3
- package/dist/private/table/useTableColumnHeader.js.map +1 -1
- package/dist/private/table/useTableColumnHeader.mjs +2 -3
- package/dist/private/table/useTableColumnHeader.mjs.map +1 -1
- package/dist/private/table/useTableColumnResize.cjs +32 -14
- package/dist/private/table/useTableColumnResize.cjs.map +1 -1
- package/dist/private/table/useTableColumnResize.js +33 -15
- package/dist/private/table/useTableColumnResize.js.map +1 -1
- package/dist/private/table/useTableColumnResize.mjs +33 -15
- package/dist/private/table/useTableColumnResize.mjs.map +1 -1
- package/dist/private/table/useTableRow.cjs +4 -2
- package/dist/private/table/useTableRow.cjs.map +1 -1
- package/dist/private/table/useTableRow.js +4 -2
- package/dist/private/table/useTableRow.js.map +1 -1
- package/dist/private/table/useTableRow.mjs +4 -2
- package/dist/private/table/useTableRow.mjs.map +1 -1
- package/dist/private/tag/useTag.cjs +21 -11
- package/dist/private/tag/useTag.cjs.map +1 -1
- package/dist/private/tag/useTag.js +21 -11
- package/dist/private/tag/useTag.js.map +1 -1
- package/dist/private/tag/useTag.mjs +21 -11
- package/dist/private/tag/useTag.mjs.map +1 -1
- package/dist/private/textfield/useFormattedTextField.cjs +1 -0
- package/dist/private/textfield/useFormattedTextField.cjs.map +1 -1
- package/dist/private/textfield/useFormattedTextField.js +1 -0
- package/dist/private/textfield/useFormattedTextField.js.map +1 -1
- package/dist/private/textfield/useFormattedTextField.mjs +1 -0
- package/dist/private/textfield/useFormattedTextField.mjs.map +1 -1
- package/dist/private/toast/useToastRegion.cjs +5 -0
- package/dist/private/toast/useToastRegion.cjs.map +1 -1
- package/dist/private/toast/useToastRegion.js +5 -0
- package/dist/private/toast/useToastRegion.js.map +1 -1
- package/dist/private/toast/useToastRegion.mjs +5 -0
- package/dist/private/toast/useToastRegion.mjs.map +1 -1
- package/dist/private/toggle/useToggle.cjs +1 -0
- package/dist/private/toggle/useToggle.cjs.map +1 -1
- package/dist/private/toggle/useToggle.js +1 -0
- package/dist/private/toggle/useToggle.js.map +1 -1
- package/dist/private/toggle/useToggle.mjs +1 -0
- package/dist/private/toggle/useToggle.mjs.map +1 -1
- package/dist/private/tokenfield/useToken.cjs +46 -0
- package/dist/private/tokenfield/useToken.cjs.map +1 -0
- package/dist/private/tokenfield/useToken.js +41 -0
- package/dist/private/tokenfield/useToken.js.map +1 -0
- package/dist/private/tokenfield/useToken.mjs +41 -0
- package/dist/private/tokenfield/useToken.mjs.map +1 -0
- package/dist/private/tokenfield/useTokenField.cjs +587 -0
- package/dist/private/tokenfield/useTokenField.cjs.map +1 -0
- package/dist/private/tokenfield/useTokenField.js +590 -0
- package/dist/private/tokenfield/useTokenField.js.map +1 -0
- package/dist/private/tokenfield/useTokenField.mjs +579 -0
- package/dist/private/tokenfield/useTokenField.mjs.map +1 -0
- package/dist/private/toolbar/useToolbar.cjs +1 -0
- package/dist/private/toolbar/useToolbar.cjs.map +1 -1
- package/dist/private/toolbar/useToolbar.js +1 -0
- package/dist/private/toolbar/useToolbar.js.map +1 -1
- package/dist/private/toolbar/useToolbar.mjs +1 -0
- package/dist/private/toolbar/useToolbar.mjs.map +1 -1
- package/dist/private/tooltip/intlStrings.cjs +108 -0
- package/dist/private/tooltip/intlStrings.cjs.map +1 -0
- package/dist/private/tooltip/intlStrings.js +110 -0
- package/dist/private/tooltip/intlStrings.js.map +1 -0
- package/dist/private/tooltip/intlStrings.mjs +110 -0
- package/dist/private/tooltip/intlStrings.mjs.map +1 -0
- package/dist/private/tooltip/usePreviewTrigger.cjs +212 -0
- package/dist/private/tooltip/usePreviewTrigger.cjs.map +1 -0
- package/dist/private/tooltip/usePreviewTrigger.js +208 -0
- package/dist/private/tooltip/usePreviewTrigger.js.map +1 -0
- package/dist/private/tooltip/usePreviewTrigger.mjs +207 -0
- package/dist/private/tooltip/usePreviewTrigger.mjs.map +1 -0
- package/dist/private/tooltip/useSafeArea.cjs +134 -0
- package/dist/private/tooltip/useSafeArea.cjs.map +1 -0
- package/dist/private/tooltip/useSafeArea.js +130 -0
- package/dist/private/tooltip/useSafeArea.js.map +1 -0
- package/dist/private/tooltip/useSafeArea.mjs +129 -0
- package/dist/private/tooltip/useSafeArea.mjs.map +1 -0
- package/dist/private/tooltip/useTooltipTrigger.cjs +1 -0
- package/dist/private/tooltip/useTooltipTrigger.cjs.map +1 -1
- package/dist/private/tooltip/useTooltipTrigger.js +1 -0
- package/dist/private/tooltip/useTooltipTrigger.js.map +1 -1
- package/dist/private/tooltip/useTooltipTrigger.mjs +1 -0
- package/dist/private/tooltip/useTooltipTrigger.mjs.map +1 -1
- package/dist/private/tree/useTree.cjs +1 -0
- package/dist/private/tree/useTree.cjs.map +1 -1
- package/dist/private/tree/useTree.js +1 -0
- package/dist/private/tree/useTree.js.map +1 -1
- package/dist/private/tree/useTree.mjs +1 -0
- package/dist/private/tree/useTree.mjs.map +1 -1
- package/dist/private/utils/domHelpers.cjs +43 -12
- package/dist/private/utils/domHelpers.cjs.map +1 -1
- package/dist/private/utils/domHelpers.js +45 -14
- package/dist/private/utils/domHelpers.js.map +1 -1
- package/dist/private/utils/domHelpers.mjs +43 -13
- package/dist/private/utils/domHelpers.mjs.map +1 -1
- package/dist/private/utils/isVirtualEvent.cjs +1 -1
- package/dist/private/utils/isVirtualEvent.cjs.map +1 -1
- package/dist/private/utils/isVirtualEvent.js +1 -1
- package/dist/private/utils/isVirtualEvent.js.map +1 -1
- package/dist/private/utils/isVirtualEvent.mjs +1 -1
- package/dist/private/utils/isVirtualEvent.mjs.map +1 -1
- package/dist/private/utils/openLink.cjs +4 -2
- package/dist/private/utils/openLink.cjs.map +1 -1
- package/dist/private/utils/openLink.js +4 -2
- package/dist/private/utils/openLink.js.map +1 -1
- package/dist/private/utils/openLink.mjs +4 -2
- package/dist/private/utils/openLink.mjs.map +1 -1
- package/dist/private/utils/platform.cjs +8 -4
- package/dist/private/utils/platform.cjs.map +1 -1
- package/dist/private/utils/platform.js +7 -4
- package/dist/private/utils/platform.js.map +1 -1
- package/dist/private/utils/platform.mjs +7 -4
- package/dist/private/utils/platform.mjs.map +1 -1
- package/dist/private/utils/scrollIntoView.cjs +3 -3
- package/dist/private/utils/scrollIntoView.cjs.map +1 -1
- package/dist/private/utils/scrollIntoView.js +4 -4
- package/dist/private/utils/scrollIntoView.js.map +1 -1
- package/dist/private/utils/scrollIntoView.mjs +4 -4
- package/dist/private/utils/scrollIntoView.mjs.map +1 -1
- package/dist/private/utils/shadowdom/DOMFunctions.cjs +28 -1
- package/dist/private/utils/shadowdom/DOMFunctions.cjs.map +1 -1
- package/dist/private/utils/shadowdom/DOMFunctions.js +30 -2
- package/dist/private/utils/shadowdom/DOMFunctions.js.map +1 -1
- package/dist/private/utils/shadowdom/DOMFunctions.mjs +28 -2
- package/dist/private/utils/shadowdom/DOMFunctions.mjs.map +1 -1
- package/dist/private/utils/useDeepMemo.cjs +4 -1
- package/dist/private/utils/useDeepMemo.cjs.map +1 -1
- package/dist/private/utils/useDeepMemo.js +4 -1
- package/dist/private/utils/useDeepMemo.js.map +1 -1
- package/dist/private/utils/useDeepMemo.mjs +4 -1
- package/dist/private/utils/useDeepMemo.mjs.map +1 -1
- package/dist/private/utils/useDrag1D.cjs +2 -0
- package/dist/private/utils/useDrag1D.cjs.map +1 -1
- package/dist/private/utils/useDrag1D.js +2 -0
- package/dist/private/utils/useDrag1D.js.map +1 -1
- package/dist/private/utils/useDrag1D.mjs +2 -0
- package/dist/private/utils/useDrag1D.mjs.map +1 -1
- package/dist/private/utils/useFormReset.cjs +4 -0
- package/dist/private/utils/useFormReset.cjs.map +1 -1
- package/dist/private/utils/useFormReset.js +4 -0
- package/dist/private/utils/useFormReset.js.map +1 -1
- package/dist/private/utils/useFormReset.mjs +4 -0
- package/dist/private/utils/useFormReset.mjs.map +1 -1
- package/dist/private/utils/useId.cjs +23 -4
- package/dist/private/utils/useId.cjs.map +1 -1
- package/dist/private/utils/useId.js +23 -4
- package/dist/private/utils/useId.js.map +1 -1
- package/dist/private/utils/useId.mjs +23 -4
- package/dist/private/utils/useId.mjs.map +1 -1
- package/dist/private/utils/useLoadMoreSentinel.cjs +7 -3
- package/dist/private/utils/useLoadMoreSentinel.cjs.map +1 -1
- package/dist/private/utils/useLoadMoreSentinel.js +7 -3
- package/dist/private/utils/useLoadMoreSentinel.js.map +1 -1
- package/dist/private/utils/useLoadMoreSentinel.mjs +7 -3
- package/dist/private/utils/useLoadMoreSentinel.mjs.map +1 -1
- package/dist/private/utils/useObjectRef.cjs +3 -1
- package/dist/private/utils/useObjectRef.cjs.map +1 -1
- package/dist/private/utils/useObjectRef.js +3 -1
- package/dist/private/utils/useObjectRef.js.map +1 -1
- package/dist/private/utils/useObjectRef.mjs +3 -1
- package/dist/private/utils/useObjectRef.mjs.map +1 -1
- package/dist/private/utils/useSyncRef.cjs +2 -0
- package/dist/private/utils/useSyncRef.cjs.map +1 -1
- package/dist/private/utils/useSyncRef.js +2 -0
- package/dist/private/utils/useSyncRef.js.map +1 -1
- package/dist/private/utils/useSyncRef.mjs +2 -0
- package/dist/private/utils/useSyncRef.mjs.map +1 -1
- package/dist/private/utils/useViewportSize.cjs +3 -3
- package/dist/private/utils/useViewportSize.cjs.map +1 -1
- package/dist/private/utils/useViewportSize.js +4 -4
- package/dist/private/utils/useViewportSize.js.map +1 -1
- package/dist/private/utils/useViewportSize.mjs +4 -4
- package/dist/private/utils/useViewportSize.mjs.map +1 -1
- package/dist/private/virtualizer/ScrollView.cjs +7 -4
- package/dist/private/virtualizer/ScrollView.cjs.map +1 -1
- package/dist/private/virtualizer/ScrollView.js +8 -5
- package/dist/private/virtualizer/ScrollView.js.map +1 -1
- package/dist/private/virtualizer/ScrollView.mjs +8 -5
- package/dist/private/virtualizer/ScrollView.mjs.map +1 -1
- package/dist/private/virtualizer/VirtualizerItem.cjs +3 -2
- package/dist/private/virtualizer/VirtualizerItem.cjs.map +1 -1
- package/dist/private/virtualizer/VirtualizerItem.js +3 -2
- package/dist/private/virtualizer/VirtualizerItem.js.map +1 -1
- package/dist/private/virtualizer/VirtualizerItem.mjs +3 -2
- package/dist/private/virtualizer/VirtualizerItem.mjs.map +1 -1
- package/dist/private/virtualizer/useVirtualizerItem.cjs +35 -2
- package/dist/private/virtualizer/useVirtualizerItem.cjs.map +1 -1
- package/dist/private/virtualizer/useVirtualizerItem.js +36 -3
- package/dist/private/virtualizer/useVirtualizerItem.js.map +1 -1
- package/dist/private/virtualizer/useVirtualizerItem.mjs +36 -3
- package/dist/private/virtualizer/useVirtualizerItem.mjs.map +1 -1
- package/dist/private/visually-hidden/VisuallyHidden.cjs +2 -1
- package/dist/private/visually-hidden/VisuallyHidden.cjs.map +1 -1
- package/dist/private/visually-hidden/VisuallyHidden.js +2 -1
- package/dist/private/visually-hidden/VisuallyHidden.js.map +1 -1
- package/dist/private/visually-hidden/VisuallyHidden.mjs +2 -1
- package/dist/private/visually-hidden/VisuallyHidden.mjs.map +1 -1
- package/dist/types/exports/index.d.ts +9 -0
- package/dist/types/exports/private/utils/domHelpers.d.ts +1 -1
- package/dist/types/exports/private/utils/platform.d.ts +1 -1
- package/dist/types/exports/private/utils/shadowdom/DOMFunctions.d.ts +1 -1
- package/dist/types/exports/useContextMenu.d.ts +2 -0
- package/dist/types/exports/usePreviewTrigger.d.ts +2 -0
- package/dist/types/exports/useTokenField.d.ts +4 -0
- package/dist/types/src/button/useToggleButtonGroup.d.ts +8 -0
- package/dist/types/src/combobox/useComboBox.d.ts +7 -1
- package/dist/types/src/dialog/useDialog.d.ts +2 -0
- package/dist/types/src/grid/useGrid.d.ts +7 -0
- package/dist/types/src/grid/useGridCell.d.ts +8 -1
- package/dist/types/src/grid/utils.d.ts +1 -0
- package/dist/types/src/gridlist/useGridListItem.d.ts +13 -0
- package/dist/types/src/interactions/createKeyboardShortcutHandler.d.ts +56 -0
- package/dist/types/src/interactions/useContextMenu.d.ts +21 -0
- package/dist/types/src/interactions/useKeyboard.d.ts +7 -0
- package/dist/types/src/interactions/useLongPress.d.ts +2 -0
- package/dist/types/src/overlays/usePopover.d.ts +2 -1
- package/dist/types/src/table/useTableCell.d.ts +12 -0
- package/dist/types/src/table/useTableColumnHeader.d.ts +12 -0
- package/dist/types/src/table/useTableColumnResize.d.ts +5 -0
- package/dist/types/src/tokenfield/useToken.d.ts +14 -0
- package/dist/types/src/tokenfield/useTokenField.d.ts +57 -0
- package/dist/types/src/tooltip/usePreviewTrigger.d.ts +27 -0
- package/dist/types/src/tooltip/useSafeArea.d.ts +26 -0
- package/dist/types/src/utils/domHelpers.d.ts +20 -5
- package/dist/types/src/utils/platform.d.ts +1 -0
- package/dist/types/src/utils/shadowdom/DOMFunctions.d.ts +11 -0
- package/dist/types/src/utils/useLoadMoreSentinel.d.ts +7 -0
- package/dist/types/src/virtualizer/VirtualizerItem.d.ts +1 -0
- package/dist/types/src/virtualizer/useVirtualizerItem.d.ts +1 -0
- package/i18n/ar-AE.js +1 -1
- package/i18n/ar-AE.mjs +1 -1
- package/i18n/bg-BG.js +1 -1
- package/i18n/bg-BG.mjs +1 -1
- package/i18n/cs-CZ.js +1 -1
- package/i18n/cs-CZ.mjs +1 -1
- package/i18n/da-DK.js +1 -1
- package/i18n/da-DK.mjs +1 -1
- package/i18n/de-DE.js +1 -1
- package/i18n/de-DE.mjs +1 -1
- package/i18n/el-GR.js +1 -1
- package/i18n/el-GR.mjs +1 -1
- package/i18n/en-US.js +1 -1
- package/i18n/en-US.mjs +1 -1
- package/i18n/es-ES.js +1 -1
- package/i18n/es-ES.mjs +1 -1
- package/i18n/et-EE.js +1 -1
- package/i18n/et-EE.mjs +1 -1
- package/i18n/fi-FI.js +1 -1
- package/i18n/fi-FI.mjs +1 -1
- package/i18n/fr-FR.js +1 -1
- package/i18n/fr-FR.mjs +1 -1
- package/i18n/he-IL.js +1 -1
- package/i18n/he-IL.mjs +1 -1
- package/i18n/hr-HR.js +1 -1
- package/i18n/hr-HR.mjs +1 -1
- package/i18n/hu-HU.js +1 -1
- package/i18n/hu-HU.mjs +1 -1
- package/i18n/it-IT.js +1 -1
- package/i18n/it-IT.mjs +1 -1
- package/i18n/ja-JP.js +1 -1
- package/i18n/ja-JP.mjs +1 -1
- package/i18n/ko-KR.js +1 -1
- package/i18n/ko-KR.mjs +1 -1
- package/i18n/lt-LT.js +1 -1
- package/i18n/lt-LT.mjs +1 -1
- package/i18n/lv-LV.js +1 -1
- package/i18n/lv-LV.mjs +1 -1
- package/i18n/nb-NO.js +1 -1
- package/i18n/nb-NO.mjs +1 -1
- package/i18n/nl-NL.js +1 -1
- package/i18n/nl-NL.mjs +1 -1
- package/i18n/pl-PL.js +1 -1
- package/i18n/pl-PL.mjs +1 -1
- package/i18n/pt-BR.js +1 -1
- package/i18n/pt-BR.mjs +1 -1
- package/i18n/pt-PT.js +1 -1
- package/i18n/pt-PT.mjs +1 -1
- package/i18n/ro-RO.js +1 -1
- package/i18n/ro-RO.mjs +1 -1
- package/i18n/ru-RU.js +1 -1
- package/i18n/ru-RU.mjs +1 -1
- package/i18n/sk-SK.js +1 -1
- package/i18n/sk-SK.mjs +1 -1
- package/i18n/sl-SI.js +1 -1
- package/i18n/sl-SI.mjs +1 -1
- package/i18n/sr-SP.js +1 -1
- package/i18n/sr-SP.mjs +1 -1
- package/i18n/sv-SE.js +1 -1
- package/i18n/sv-SE.mjs +1 -1
- package/i18n/tr-TR.js +1 -1
- package/i18n/tr-TR.mjs +1 -1
- package/i18n/uk-UA.js +1 -1
- package/i18n/uk-UA.mjs +1 -1
- package/i18n/zh-CN.js +1 -1
- package/i18n/zh-CN.mjs +1 -1
- package/i18n/zh-TW.js +1 -1
- package/i18n/zh-TW.mjs +1 -1
- package/package.json +6 -6
- package/useContextMenu/package.json +5 -0
- package/usePreviewTrigger/package.json +5 -0
- package/useTokenField/package.json +5 -0
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import {focusWithoutScrolling as $1969ac565cfec8d0$export$de79e2c695e052f3} from "../utils/focusWithoutScrolling.mjs";
|
|
2
|
+
import {getActiveElement as $23f2114a1b82827e$export$cd4e5573fbe2b576, nodeContains as $23f2114a1b82827e$export$4282f70798064fe0} from "../utils/shadowdom/DOMFunctions.mjs";
|
|
3
|
+
import {getFocusableTreeWalker as $535772f9d2c1f38d$export$2d6ec8fc375ceafa} from "../focus/FocusScope.mjs";
|
|
4
|
+
import {getInteractionModality as $8f5a2122b0992be3$export$630ff653c5ada6a9, useFocusVisibleListener as $8f5a2122b0992be3$export$ec71b4b83ac08ec3, useInteractionModality as $8f5a2122b0992be3$export$98e20ec92f614cfe} from "../interactions/useFocusVisible.mjs";
|
|
5
|
+
import {getOwnerDocument as $d447af545b77c9f1$export$b204af158042fbac} from "../utils/domHelpers.mjs";
|
|
6
|
+
import $cuAD7$intlStringsmjs from "./intlStrings.mjs";
|
|
7
|
+
import {mergeProps as $bbaa08b3cd72f041$export$9d1611c77c2fe928} from "../utils/mergeProps.mjs";
|
|
8
|
+
import {useEffectEvent as $fe16bffc7a557bf0$export$7f54fc3180508a52} from "../utils/useEffectEvent.mjs";
|
|
9
|
+
import {useEvent as $600b3cf69ae46262$export$90fc3a17d93f704c} from "../utils/useEvent.mjs";
|
|
10
|
+
import {useHover as $e969f22b6713ca4a$export$ae780daf29e6d456} from "../interactions/useHover.mjs";
|
|
11
|
+
import {useId as $390e54f620492c70$export$f680877a34711e37} from "../utils/useId.mjs";
|
|
12
|
+
import {useLocalizedStringFormatter as $cf2482eff2eeeec2$export$f12b703ca79dfbb1} from "../i18n/useLocalizedStringFormatter.mjs";
|
|
13
|
+
import {useLongPress as $7b01448eaad0fe7c$export$c24ed0104d07eab9} from "../interactions/useLongPress.mjs";
|
|
14
|
+
import {useSafeArea as $80d0af5af0c3b3bd$export$c7bf694416f38471} from "./useSafeArea.mjs";
|
|
15
|
+
import {useRef as $cuAD7$useRef, useEffect as $cuAD7$useEffect} from "react";
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
function $parcel$interopDefault(a) {
|
|
19
|
+
return a && a.__esModule ? a.default : a;
|
|
20
|
+
}
|
|
21
|
+
/*
|
|
22
|
+
* Copyright 2026 Adobe. All rights reserved.
|
|
23
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
24
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
25
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
26
|
+
*
|
|
27
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
28
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
29
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
30
|
+
* governing permissions and limitations under the License.
|
|
31
|
+
*/
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
function $dab43360cbeb70e5$export$cfc4af0616336448(props, state) {
|
|
47
|
+
let { triggerRef: triggerRef, popoverRef: popoverRef, isDisabled: isDisabled } = props;
|
|
48
|
+
let stringFormatter = (0, $cf2482eff2eeeec2$export$f12b703ca79dfbb1)((0, ($parcel$interopDefault($cuAD7$intlStringsmjs))), '@react-aria/link-preview');
|
|
49
|
+
let popoverId = (0, $390e54f620492c70$export$f680877a34711e37)();
|
|
50
|
+
// Suppresses the next focus from reopening the preview (e.g. when restoring focus on Escape).
|
|
51
|
+
let ignoreFocus = (0, $cuAD7$useRef)(false);
|
|
52
|
+
// When opened via long press, move focus into the popover once it opens so touch screen readers
|
|
53
|
+
// (e.g. VoiceOver) move their virtual cursor into the preview.
|
|
54
|
+
let shouldFocusOnOpen = (0, $cuAD7$useRef)(false);
|
|
55
|
+
// Whether the pointer is currently within the safe area (the trigger, the popover, or the region
|
|
56
|
+
// between them). Tracked by useSafeArea below so the preview stays open while the pointer travels
|
|
57
|
+
// from the link to the popover, even with closeDelay of 0.
|
|
58
|
+
let pointerInSafeArea = (0, $cuAD7$useRef)(false);
|
|
59
|
+
let isFocusVisible = (0, $cuAD7$useRef)(false);
|
|
60
|
+
(0, $8f5a2122b0992be3$export$ec71b4b83ac08ec3)((visible)=>{
|
|
61
|
+
isFocusVisible.current = visible;
|
|
62
|
+
}, []);
|
|
63
|
+
// Cancel a pending close and keep the preview open.
|
|
64
|
+
let keepOpen = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)(()=>state.open(true));
|
|
65
|
+
// Close the preview unless something is still keeping it open: the pointer is within the safe
|
|
66
|
+
// area, or focus is within the trigger or popover. During focus transitions the active element
|
|
67
|
+
// may briefly be the body; the popover's focusin handler re-opens in that case (focus moving in).
|
|
68
|
+
let checkClose = (0, $fe16bffc7a557bf0$export$7f54fc3180508a52)(()=>{
|
|
69
|
+
if (pointerInSafeArea.current) return;
|
|
70
|
+
let active = triggerRef.current ? (0, $23f2114a1b82827e$export$cd4e5573fbe2b576)((0, $d447af545b77c9f1$export$b204af158042fbac)(triggerRef.current)) : null;
|
|
71
|
+
if (isFocusVisible.current && (triggerRef.current && (0, $23f2114a1b82827e$export$4282f70798064fe0)(triggerRef.current, active) || popoverRef.current && (0, $23f2114a1b82827e$export$4282f70798064fe0)(popoverRef.current, active))) return;
|
|
72
|
+
state.close();
|
|
73
|
+
});
|
|
74
|
+
(0, $cuAD7$useEffect)(()=>{
|
|
75
|
+
let popover = popoverRef.current;
|
|
76
|
+
if (!state.isOpen || !popover || !shouldFocusOnOpen.current) return;
|
|
77
|
+
// When opened via long press, move focus to the popover itself so touch screen readers move
|
|
78
|
+
// their virtual cursor into the preview.
|
|
79
|
+
shouldFocusOnOpen.current = false;
|
|
80
|
+
(0, $1969ac565cfec8d0$export$de79e2c695e052f3)(popover);
|
|
81
|
+
}, [
|
|
82
|
+
state.isOpen,
|
|
83
|
+
popoverRef
|
|
84
|
+
]);
|
|
85
|
+
let onHoverStart = ()=>{
|
|
86
|
+
// Match useTooltipTrigger: only treat as hovered when the modality is actually a pointer.
|
|
87
|
+
if ((0, $8f5a2122b0992be3$export$630ff653c5ada6a9)() === 'pointer') {
|
|
88
|
+
pointerInSafeArea.current = true;
|
|
89
|
+
state.open();
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
let onHoverEnd = ()=>{
|
|
93
|
+
// Before the preview opens, cancel a pending warmup if the pointer leaves the trigger. Once
|
|
94
|
+
// open, the safe-area polygon (useSafeArea) governs closing as the pointer moves to the popover.
|
|
95
|
+
if (!state.isOpen) {
|
|
96
|
+
pointerInSafeArea.current = false;
|
|
97
|
+
state.close();
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
let onTriggerFocus = (e)=>{
|
|
101
|
+
if (ignoreFocus.current) {
|
|
102
|
+
ignoreFocus.current = false;
|
|
103
|
+
return;
|
|
104
|
+
}
|
|
105
|
+
// Prevent browser focusing the link on long press when focus is already in the popover.
|
|
106
|
+
if (state.isOpen && e.relatedTarget === popoverRef.current) {
|
|
107
|
+
(0, $1969ac565cfec8d0$export$de79e2c695e052f3)(popoverRef.current);
|
|
108
|
+
return;
|
|
109
|
+
}
|
|
110
|
+
if (isFocusVisible.current) // Open after the warmup delay on keyboard focus, not immediately like a tooltip. This way
|
|
111
|
+
// tabbing quickly through the page doesn't open previews (and add their tab stops); the
|
|
112
|
+
// delay ensures the user is actually interested in the link's details.
|
|
113
|
+
state.open();
|
|
114
|
+
};
|
|
115
|
+
(0, $600b3cf69ae46262$export$90fc3a17d93f704c)(triggerRef, 'react-aria-focus-scope-restore', (e)=>{
|
|
116
|
+
e.preventDefault();
|
|
117
|
+
ignoreFocus.current = true;
|
|
118
|
+
triggerRef.current?.focus();
|
|
119
|
+
});
|
|
120
|
+
// Move focus from the link into the preview when the user presses Tab while it is open.
|
|
121
|
+
// Tabbing back out of the popover is handled by the popover's own FocusScope.
|
|
122
|
+
let onTriggerKeyDown = (e)=>{
|
|
123
|
+
if (e.key === 'Tab' && !e.shiftKey && state.isOpen && popoverRef.current) {
|
|
124
|
+
let walker = (0, $535772f9d2c1f38d$export$2d6ec8fc375ceafa)(popoverRef.current, {
|
|
125
|
+
tabbable: true
|
|
126
|
+
});
|
|
127
|
+
let first = walker.nextNode();
|
|
128
|
+
if (first) {
|
|
129
|
+
e.preventDefault();
|
|
130
|
+
first.focus();
|
|
131
|
+
}
|
|
132
|
+
} else if (e.key === 'Escape') {
|
|
133
|
+
e.preventDefault();
|
|
134
|
+
state.close(true);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
let { hoverProps: hoverProps } = (0, $e969f22b6713ca4a$export$ae780daf29e6d456)({
|
|
138
|
+
isDisabled: isDisabled,
|
|
139
|
+
onHoverStart: onHoverStart,
|
|
140
|
+
onHoverEnd: onHoverEnd
|
|
141
|
+
});
|
|
142
|
+
let focusableProps = {
|
|
143
|
+
onFocus: onTriggerFocus,
|
|
144
|
+
onBlur: checkClose,
|
|
145
|
+
onKeyDown: onTriggerKeyDown
|
|
146
|
+
};
|
|
147
|
+
// Only describe the long press interaction when the user is actually using touch, otherwise it
|
|
148
|
+
// is confusing (e.g. a screen reader announcing "long press" while navigating with a keyboard).
|
|
149
|
+
// null is the default before the user has interacted with anything.
|
|
150
|
+
let modality = (0, $8f5a2122b0992be3$export$98e20ec92f614cfe)();
|
|
151
|
+
let shouldLongPress = (modality === 'pointer' || modality === 'virtual' || modality == null) && typeof window !== 'undefined' && 'ontouchstart' in window;
|
|
152
|
+
// Open the preview on long press on touch devices, since there is no hover. Move focus into the
|
|
153
|
+
// popover once it opens so touch screen readers (e.g. VoiceOver) move their virtual cursor in.
|
|
154
|
+
let { longPressProps: longPressProps } = (0, $7b01448eaad0fe7c$export$c24ed0104d07eab9)({
|
|
155
|
+
isDisabled: isDisabled,
|
|
156
|
+
pointerType: 'touch',
|
|
157
|
+
accessibilityDescription: shouldLongPress ? stringFormatter.format('longPressMessage') : undefined,
|
|
158
|
+
onLongPress () {
|
|
159
|
+
shouldFocusOnOpen.current = true;
|
|
160
|
+
state.open(true);
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
// Keep the preview open while the pointer is anywhere within the safe area connecting the link
|
|
164
|
+
// and the popover, so moving the pointer between them (even diagonally) doesn't close it. This
|
|
165
|
+
// works for any popover placement and even when closeDelay is 0.
|
|
166
|
+
(0, $80d0af5af0c3b3bd$export$c7bf694416f38471)({
|
|
167
|
+
triggerRef: triggerRef,
|
|
168
|
+
overlayRef: popoverRef,
|
|
169
|
+
isOpen: state.isOpen,
|
|
170
|
+
isDisabled: isDisabled,
|
|
171
|
+
onSafeAreaChange: (isInSafeArea)=>{
|
|
172
|
+
if (isInSafeArea === pointerInSafeArea.current) return;
|
|
173
|
+
pointerInSafeArea.current = isInSafeArea;
|
|
174
|
+
if (isInSafeArea) keepOpen();
|
|
175
|
+
else checkClose();
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
// oxlint-disable-next-line react/react-compiler
|
|
179
|
+
let triggerProps = (0, $bbaa08b3cd72f041$export$9d1611c77c2fe928)(focusableProps, hoverProps, longPressProps);
|
|
180
|
+
let describedBy = [
|
|
181
|
+
triggerProps['aria-describedby'],
|
|
182
|
+
state.isOpen ? popoverId : null
|
|
183
|
+
].filter(Boolean).join(' ');
|
|
184
|
+
return {
|
|
185
|
+
triggerProps: {
|
|
186
|
+
...triggerProps,
|
|
187
|
+
'aria-haspopup': 'dialog',
|
|
188
|
+
'aria-expanded': state.isOpen,
|
|
189
|
+
'aria-controls': state.isOpen ? popoverId : undefined,
|
|
190
|
+
'aria-describedby': describedBy || undefined,
|
|
191
|
+
style: {
|
|
192
|
+
WebkitTouchCallout: 'none',
|
|
193
|
+
// @ts-ignore
|
|
194
|
+
WebkitUserDrag: 'none'
|
|
195
|
+
}
|
|
196
|
+
},
|
|
197
|
+
popoverProps: {
|
|
198
|
+
id: popoverId,
|
|
199
|
+
onFocusWithin: keepOpen,
|
|
200
|
+
onBlurWithin: checkClose
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
|
|
206
|
+
export {$dab43360cbeb70e5$export$cfc4af0616336448 as usePreviewTrigger};
|
|
207
|
+
//# sourceMappingURL=usePreviewTrigger.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/react-aria/src/tooltip/usePreviewTrigger.ts"],"sourcesContent":["/*\n * Copyright 2026 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {\n KeyboardEvent as AriaKeyboardEvent,\n DOMAttributes,\n FocusableElement,\n RefObject\n} from '@react-types/shared';\nimport {AriaPopoverProps} from '../overlays/usePopover';\nimport {focusWithoutScrolling} from '../utils/focusWithoutScrolling';\nimport {getActiveElement} from '../utils/shadowdom/DOMFunctions';\nimport {getFocusableTreeWalker} from '../focus/FocusScope';\nimport {\n getInteractionModality,\n useFocusVisibleListener,\n useInteractionModality\n} from '../interactions/useFocusVisible';\nimport {getOwnerDocument} from '../utils/domHelpers';\nimport intlMessages from '../../intl/previewtrigger/*.json';\nimport {mergeProps} from '../utils/mergeProps';\nimport {nodeContains} from '../utils/shadowdom/DOMFunctions';\nimport {TooltipTriggerProps, TooltipTriggerState} from 'react-stately/useTooltipTriggerState';\nimport {useEffect, useRef} from 'react';\nimport {useEffectEvent} from '../utils/useEffectEvent';\nimport {useEvent} from '../utils/useEvent';\nimport {useHover} from '../interactions/useHover';\nimport {useId} from '../utils/useId';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {useLongPress} from '../interactions/useLongPress';\nimport {useSafeArea} from './useSafeArea';\n\nexport interface AriaPreviewTriggerProps extends Omit<\n TooltipTriggerProps,\n 'trigger' | 'shouldCloseOnPress'\n> {}\n\nexport interface AriaPreviewTriggerOptions extends AriaPreviewTriggerProps {\n /** A ref to the trigger element (e.g. a Link). */\n triggerRef: RefObject<FocusableElement | null>;\n /** A ref to the popover element. */\n popoverRef: RefObject<Element | null>;\n}\n\nexport interface PreviewTriggerTriggerAria {\n /**\n * Props for the trigger element (e.g. a Link).\n */\n triggerProps: DOMAttributes;\n /**\n * Props for the popover overlay element.\n */\n popoverProps: Omit<AriaPopoverProps, 'triggerRef' | 'popoverRef'> & DOMAttributes;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a preview trigger.\n * A preview trigger displays a popover on hover, focus, or long press. Unlike a\n * tooltip, the popover may contain interactive content.\n */\nexport function usePreviewTrigger(\n props: AriaPreviewTriggerOptions,\n state: TooltipTriggerState\n): PreviewTriggerTriggerAria {\n let {triggerRef, popoverRef, isDisabled} = props;\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/link-preview');\n let popoverId = useId();\n\n // Suppresses the next focus from reopening the preview (e.g. when restoring focus on Escape).\n let ignoreFocus = useRef(false);\n // When opened via long press, move focus into the popover once it opens so touch screen readers\n // (e.g. VoiceOver) move their virtual cursor into the preview.\n let shouldFocusOnOpen = useRef(false);\n // Whether the pointer is currently within the safe area (the trigger, the popover, or the region\n // between them). Tracked by useSafeArea below so the preview stays open while the pointer travels\n // from the link to the popover, even with closeDelay of 0.\n let pointerInSafeArea = useRef(false);\n\n let isFocusVisible = useRef(false);\n useFocusVisibleListener(visible => {\n isFocusVisible.current = visible;\n }, []);\n\n // Cancel a pending close and keep the preview open.\n let keepOpen = useEffectEvent(() => state.open(true));\n\n // Close the preview unless something is still keeping it open: the pointer is within the safe\n // area, or focus is within the trigger or popover. During focus transitions the active element\n // may briefly be the body; the popover's focusin handler re-opens in that case (focus moving in).\n let checkClose = useEffectEvent(() => {\n if (pointerInSafeArea.current) {\n return;\n }\n let active = triggerRef.current ? getActiveElement(getOwnerDocument(triggerRef.current)) : null;\n if (\n isFocusVisible.current &&\n ((triggerRef.current && nodeContains(triggerRef.current, active)) ||\n (popoverRef.current && nodeContains(popoverRef.current, active)))\n ) {\n return;\n }\n state.close();\n });\n\n useEffect(() => {\n let popover = popoverRef.current;\n if (!state.isOpen || !popover || !shouldFocusOnOpen.current) {\n return;\n }\n\n // When opened via long press, move focus to the popover itself so touch screen readers move\n // their virtual cursor into the preview.\n shouldFocusOnOpen.current = false;\n focusWithoutScrolling(popover as FocusableElement);\n }, [state.isOpen, popoverRef]);\n\n let onHoverStart = () => {\n // Match useTooltipTrigger: only treat as hovered when the modality is actually a pointer.\n if (getInteractionModality() === 'pointer') {\n pointerInSafeArea.current = true;\n state.open();\n }\n };\n\n let onHoverEnd = () => {\n // Before the preview opens, cancel a pending warmup if the pointer leaves the trigger. Once\n // open, the safe-area polygon (useSafeArea) governs closing as the pointer moves to the popover.\n if (!state.isOpen) {\n pointerInSafeArea.current = false;\n state.close();\n }\n };\n\n let onTriggerFocus = e => {\n if (ignoreFocus.current) {\n ignoreFocus.current = false;\n return;\n }\n\n // Prevent browser focusing the link on long press when focus is already in the popover.\n if (state.isOpen && e.relatedTarget === popoverRef.current) {\n focusWithoutScrolling(popoverRef.current as FocusableElement);\n return;\n }\n\n if (isFocusVisible.current) {\n // Open after the warmup delay on keyboard focus, not immediately like a tooltip. This way\n // tabbing quickly through the page doesn't open previews (and add their tab stops); the\n // delay ensures the user is actually interested in the link's details.\n state.open();\n }\n };\n\n useEvent(triggerRef, 'react-aria-focus-scope-restore', e => {\n e.preventDefault();\n ignoreFocus.current = true;\n triggerRef.current?.focus();\n });\n\n // Move focus from the link into the preview when the user presses Tab while it is open.\n // Tabbing back out of the popover is handled by the popover's own FocusScope.\n let onTriggerKeyDown = (e: AriaKeyboardEvent) => {\n if (e.key === 'Tab' && !e.shiftKey && state.isOpen && popoverRef.current) {\n let walker = getFocusableTreeWalker(popoverRef.current, {tabbable: true});\n let first = walker.nextNode() as FocusableElement | null;\n if (first) {\n e.preventDefault();\n first.focus();\n }\n } else if (e.key === 'Escape') {\n e.preventDefault();\n state.close(true);\n }\n };\n\n let {hoverProps} = useHover({isDisabled, onHoverStart, onHoverEnd});\n let focusableProps = {\n onFocus: onTriggerFocus,\n onBlur: checkClose,\n onKeyDown: onTriggerKeyDown\n };\n\n // Only describe the long press interaction when the user is actually using touch, otherwise it\n // is confusing (e.g. a screen reader announcing \"long press\" while navigating with a keyboard).\n // null is the default before the user has interacted with anything.\n let modality = useInteractionModality();\n let shouldLongPress =\n (modality === 'pointer' || modality === 'virtual' || modality == null) &&\n typeof window !== 'undefined' &&\n 'ontouchstart' in window;\n\n // Open the preview on long press on touch devices, since there is no hover. Move focus into the\n // popover once it opens so touch screen readers (e.g. VoiceOver) move their virtual cursor in.\n let {longPressProps} = useLongPress({\n isDisabled,\n pointerType: 'touch',\n accessibilityDescription: shouldLongPress\n ? stringFormatter.format('longPressMessage')\n : undefined,\n onLongPress() {\n shouldFocusOnOpen.current = true;\n state.open(true);\n }\n });\n\n // Keep the preview open while the pointer is anywhere within the safe area connecting the link\n // and the popover, so moving the pointer between them (even diagonally) doesn't close it. This\n // works for any popover placement and even when closeDelay is 0.\n useSafeArea({\n triggerRef,\n overlayRef: popoverRef,\n isOpen: state.isOpen,\n isDisabled,\n onSafeAreaChange: isInSafeArea => {\n if (isInSafeArea === pointerInSafeArea.current) {\n return;\n }\n pointerInSafeArea.current = isInSafeArea;\n if (isInSafeArea) {\n keepOpen();\n } else {\n checkClose();\n }\n }\n });\n\n // oxlint-disable-next-line react/react-compiler\n let triggerProps = mergeProps(focusableProps, hoverProps, longPressProps);\n let describedBy = [triggerProps['aria-describedby'], state.isOpen ? popoverId : null]\n .filter(Boolean)\n .join(' ');\n\n return {\n triggerProps: {\n ...triggerProps,\n 'aria-haspopup': 'dialog',\n 'aria-expanded': state.isOpen,\n 'aria-controls': state.isOpen ? popoverId : undefined,\n 'aria-describedby': describedBy || undefined,\n style: {\n WebkitTouchCallout: 'none',\n // @ts-ignore\n WebkitUserDrag: 'none'\n }\n },\n popoverProps: {\n id: popoverId,\n onFocusWithin: keepOpen,\n onBlurWithin: checkClose\n }\n };\n}\n"],"names":[],"version":3,"file":"usePreviewTrigger.mjs.map"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
var $49582955cc364b1c$exports = require("../utils/domHelpers.cjs");
|
|
2
|
+
var $d6e22460ce4d6b26$exports = require("../utils/useEffectEvent.cjs");
|
|
3
|
+
var $ipEYR$react = require("react");
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
function $parcel$export(e, n, v, s) {
|
|
7
|
+
Object.defineProperty(e, n, {get: v, set: s, enumerable: true, configurable: true});
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
$parcel$export(module.exports, "useSafeArea", function () { return $410abcf732b250aa$export$c7bf694416f38471; });
|
|
11
|
+
/*
|
|
12
|
+
* Copyright 2026 Adobe. All rights reserved.
|
|
13
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
14
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
15
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
16
|
+
*
|
|
17
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
18
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
19
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
20
|
+
* governing permissions and limitations under the License.
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
// A small amount of padding (in pixels) added around the trigger and overlay so the safe area is
|
|
25
|
+
// slightly forgiving of sub-pixel jitter and the gap between the elements.
|
|
26
|
+
const $410abcf732b250aa$var$PADDING = 8;
|
|
27
|
+
function $410abcf732b250aa$export$c7bf694416f38471(options) {
|
|
28
|
+
let { triggerRef: triggerRef, overlayRef: overlayRef, isOpen: isOpen, isDisabled: isDisabled } = options;
|
|
29
|
+
let onSafeAreaChange = (0, $d6e22460ce4d6b26$exports.useEffectEvent)(options.onSafeAreaChange);
|
|
30
|
+
(0, $ipEYR$react.useEffect)(()=>{
|
|
31
|
+
let trigger = triggerRef.current;
|
|
32
|
+
if (isDisabled || !isOpen || !trigger) return;
|
|
33
|
+
let onPointerMove = (e)=>{
|
|
34
|
+
if (e.pointerType === 'touch') return;
|
|
35
|
+
let point = {
|
|
36
|
+
x: e.clientX,
|
|
37
|
+
y: e.clientY
|
|
38
|
+
};
|
|
39
|
+
let triggerRect = trigger.getBoundingClientRect();
|
|
40
|
+
let overlayRect = overlayRef.current?.getBoundingClientRect();
|
|
41
|
+
onSafeAreaChange($410abcf732b250aa$var$isPointInSafeArea(point, triggerRect, overlayRect));
|
|
42
|
+
};
|
|
43
|
+
// If the pointer leaves the document entirely, it is no longer in the safe area.
|
|
44
|
+
let onPointerLeave = ()=>onSafeAreaChange(false);
|
|
45
|
+
let win = (0, $49582955cc364b1c$exports.getOwnerWindow)(trigger);
|
|
46
|
+
let doc = (0, $49582955cc364b1c$exports.getOwnerDocument)(trigger);
|
|
47
|
+
win.addEventListener('pointermove', onPointerMove);
|
|
48
|
+
doc.documentElement.addEventListener('pointerleave', onPointerLeave);
|
|
49
|
+
return ()=>{
|
|
50
|
+
win.removeEventListener('pointermove', onPointerMove);
|
|
51
|
+
doc.documentElement.removeEventListener('pointerleave', onPointerLeave);
|
|
52
|
+
};
|
|
53
|
+
}, [
|
|
54
|
+
isDisabled,
|
|
55
|
+
isOpen,
|
|
56
|
+
triggerRef,
|
|
57
|
+
overlayRef
|
|
58
|
+
]);
|
|
59
|
+
}
|
|
60
|
+
function $410abcf732b250aa$var$isPointInSafeArea(point, triggerRect, overlayRect) {
|
|
61
|
+
if ($410abcf732b250aa$var$rectContains(triggerRect, point)) return true;
|
|
62
|
+
if (!overlayRect) return false;
|
|
63
|
+
if ($410abcf732b250aa$var$rectContains(overlayRect, point)) return true;
|
|
64
|
+
// Otherwise, check whether the point is within the convex hull connecting the two rects.
|
|
65
|
+
let hull = $410abcf732b250aa$var$convexHull([
|
|
66
|
+
...$410abcf732b250aa$var$rectCorners(triggerRect),
|
|
67
|
+
...$410abcf732b250aa$var$rectCorners(overlayRect)
|
|
68
|
+
]);
|
|
69
|
+
return hull.length >= 3 && $410abcf732b250aa$var$isPointInPolygon(point, hull);
|
|
70
|
+
}
|
|
71
|
+
function $410abcf732b250aa$var$rectContains(rect, point) {
|
|
72
|
+
return point.x >= rect.left - $410abcf732b250aa$var$PADDING && point.x <= rect.right + $410abcf732b250aa$var$PADDING && point.y >= rect.top - $410abcf732b250aa$var$PADDING && point.y <= rect.bottom + $410abcf732b250aa$var$PADDING;
|
|
73
|
+
}
|
|
74
|
+
function $410abcf732b250aa$var$rectCorners(rect) {
|
|
75
|
+
let left = rect.left - $410abcf732b250aa$var$PADDING;
|
|
76
|
+
let right = rect.right + $410abcf732b250aa$var$PADDING;
|
|
77
|
+
let top = rect.top - $410abcf732b250aa$var$PADDING;
|
|
78
|
+
let bottom = rect.bottom + $410abcf732b250aa$var$PADDING;
|
|
79
|
+
return [
|
|
80
|
+
{
|
|
81
|
+
x: left,
|
|
82
|
+
y: top
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
x: right,
|
|
86
|
+
y: top
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
x: right,
|
|
90
|
+
y: bottom
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
x: left,
|
|
94
|
+
y: bottom
|
|
95
|
+
}
|
|
96
|
+
];
|
|
97
|
+
}
|
|
98
|
+
// Computes the convex hull of a set of points using the monotone chain algorithm.
|
|
99
|
+
function $410abcf732b250aa$var$convexHull(points) {
|
|
100
|
+
let sorted = points.slice().sort((a, b)=>a.x - b.x || a.y - b.y);
|
|
101
|
+
if (sorted.length < 3) return sorted;
|
|
102
|
+
let cross = (o, a, b)=>(a.x - o.x) * (b.y - o.y) - (a.y - o.y) * (b.x - o.x);
|
|
103
|
+
let lower = [];
|
|
104
|
+
for (let p of sorted){
|
|
105
|
+
while(lower.length >= 2 && cross(lower[lower.length - 2], lower[lower.length - 1], p) <= 0)lower.pop();
|
|
106
|
+
lower.push(p);
|
|
107
|
+
}
|
|
108
|
+
let upper = [];
|
|
109
|
+
for(let i = sorted.length - 1; i >= 0; i--){
|
|
110
|
+
let p = sorted[i];
|
|
111
|
+
while(upper.length >= 2 && cross(upper[upper.length - 2], upper[upper.length - 1], p) <= 0)upper.pop();
|
|
112
|
+
upper.push(p);
|
|
113
|
+
}
|
|
114
|
+
lower.pop();
|
|
115
|
+
upper.pop();
|
|
116
|
+
return lower.concat(upper);
|
|
117
|
+
}
|
|
118
|
+
// Ray casting point-in-polygon test.
|
|
119
|
+
function $410abcf732b250aa$var$isPointInPolygon(point, polygon) {
|
|
120
|
+
let { x: x, y: y } = point;
|
|
121
|
+
let inside = false;
|
|
122
|
+
for(let i = 0, j = polygon.length - 1; i < polygon.length; j = i++){
|
|
123
|
+
let xi = polygon[i].x;
|
|
124
|
+
let yi = polygon[i].y;
|
|
125
|
+
let xj = polygon[j].x;
|
|
126
|
+
let yj = polygon[j].y;
|
|
127
|
+
let intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
|
|
128
|
+
if (intersect) inside = !inside;
|
|
129
|
+
}
|
|
130
|
+
return inside;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
//# sourceMappingURL=useSafeArea.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/react-aria/src/tooltip/useSafeArea.ts"],"sourcesContent":["/*\n * Copyright 2026 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {getOwnerDocument, getOwnerWindow} from '../utils/domHelpers';\nimport {RefObject} from '@react-types/shared';\nimport {useEffect} from 'react';\nimport {useEffectEvent} from '../utils/useEffectEvent';\n\ninterface Point {\n x: number;\n y: number;\n}\n\ninterface SafeAreaOptions {\n /** Ref for the trigger element. */\n triggerRef: RefObject<Element | null>;\n /** Ref for the overlay element. */\n overlayRef: RefObject<Element | null>;\n /** Whether the overlay is open. */\n isOpen: boolean;\n /** Whether this feature is disabled. */\n isDisabled?: boolean;\n /**\n * Called on pointer move (and when the pointer leaves the document) with whether the pointer is\n * currently within the \"safe area\" — the trigger, the overlay, or the region between them. This\n * lets an overlay stay open while the pointer travels from the trigger to the overlay, even\n * diagonally and regardless of placement.\n */\n onSafeAreaChange: (isInSafeArea: boolean) => void;\n}\n\n// A small amount of padding (in pixels) added around the trigger and overlay so the safe area is\n// slightly forgiving of sub-pixel jitter and the gap between the elements.\nconst PADDING = 8;\n\n/**\n * Tracks whether the pointer is within a \"safe area\" connecting a trigger and its overlay, so the\n * overlay can stay open while the pointer moves between them. The safe area is the union of the\n * trigger rect, the overlay rect, and the convex hull connecting the two (a polygon), which works\n * for any placement of the overlay relative to the trigger.\n */\nexport function useSafeArea(options: SafeAreaOptions): void {\n let {triggerRef, overlayRef, isOpen, isDisabled} = options;\n let onSafeAreaChange = useEffectEvent(options.onSafeAreaChange);\n\n useEffect(() => {\n let trigger = triggerRef.current;\n if (isDisabled || !isOpen || !trigger) {\n return;\n }\n\n let onPointerMove = (e: PointerEvent) => {\n if (e.pointerType === 'touch') {\n return;\n }\n let point = {x: e.clientX, y: e.clientY};\n let triggerRect = trigger!.getBoundingClientRect();\n let overlayRect = overlayRef.current?.getBoundingClientRect();\n onSafeAreaChange(isPointInSafeArea(point, triggerRect, overlayRect));\n };\n\n // If the pointer leaves the document entirely, it is no longer in the safe area.\n let onPointerLeave = () => onSafeAreaChange(false);\n\n let win = getOwnerWindow(trigger);\n let doc = getOwnerDocument(trigger);\n win.addEventListener('pointermove', onPointerMove);\n doc.documentElement.addEventListener('pointerleave', onPointerLeave);\n return () => {\n win.removeEventListener('pointermove', onPointerMove);\n doc.documentElement.removeEventListener('pointerleave', onPointerLeave);\n };\n }, [isDisabled, isOpen, triggerRef, overlayRef]);\n}\n\nfunction isPointInSafeArea(point: Point, triggerRect: DOMRect, overlayRect?: DOMRect): boolean {\n if (rectContains(triggerRect, point)) {\n return true;\n }\n if (!overlayRect) {\n return false;\n }\n if (rectContains(overlayRect, point)) {\n return true;\n }\n // Otherwise, check whether the point is within the convex hull connecting the two rects.\n let hull = convexHull([...rectCorners(triggerRect), ...rectCorners(overlayRect)]);\n return hull.length >= 3 && isPointInPolygon(point, hull);\n}\n\nfunction rectContains(rect: DOMRect, point: Point): boolean {\n return (\n point.x >= rect.left - PADDING &&\n point.x <= rect.right + PADDING &&\n point.y >= rect.top - PADDING &&\n point.y <= rect.bottom + PADDING\n );\n}\n\nfunction rectCorners(rect: DOMRect): Point[] {\n let left = rect.left - PADDING;\n let right = rect.right + PADDING;\n let top = rect.top - PADDING;\n let bottom = rect.bottom + PADDING;\n return [\n {x: left, y: top},\n {x: right, y: top},\n {x: right, y: bottom},\n {x: left, y: bottom}\n ];\n}\n\n// Computes the convex hull of a set of points using the monotone chain algorithm.\nfunction convexHull(points: Point[]): Point[] {\n let sorted = points.slice().sort((a, b) => a.x - b.x || a.y - b.y);\n if (sorted.length < 3) {\n return sorted;\n }\n\n let cross = (o: Point, a: Point, b: Point) =>\n (a.x - o.x) * (b.y - o.y) - (a.y - o.y) * (b.x - o.x);\n\n let lower: Point[] = [];\n for (let p of sorted) {\n while (lower.length >= 2 && cross(lower[lower.length - 2], lower[lower.length - 1], p) <= 0) {\n lower.pop();\n }\n lower.push(p);\n }\n\n let upper: Point[] = [];\n for (let i = sorted.length - 1; i >= 0; i--) {\n let p = sorted[i];\n while (upper.length >= 2 && cross(upper[upper.length - 2], upper[upper.length - 1], p) <= 0) {\n upper.pop();\n }\n upper.push(p);\n }\n\n lower.pop();\n upper.pop();\n return lower.concat(upper);\n}\n\n// Ray casting point-in-polygon test.\nfunction isPointInPolygon(point: Point, polygon: Point[]): boolean {\n let {x, y} = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n let xi = polygon[i].x;\n let yi = polygon[i].y;\n let xj = polygon[j].x;\n let yj = polygon[j].y;\n let intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi;\n if (intersect) {\n inside = !inside;\n }\n }\n return inside;\n}\n"],"names":[],"version":3,"file":"useSafeArea.cjs.map"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import {getOwnerDocument as $cc3c3666b64debad$export$b204af158042fbac, getOwnerWindow as $cc3c3666b64debad$export$f21a1ffae260145a} from "../utils/domHelpers.js";
|
|
2
|
+
import {useEffectEvent as $85567ef950781b7d$export$7f54fc3180508a52} from "../utils/useEffectEvent.js";
|
|
3
|
+
import {useEffect as $lMuEN$useEffect} from "react";
|
|
4
|
+
|
|
5
|
+
/*
|
|
6
|
+
* Copyright 2026 Adobe. All rights reserved.
|
|
7
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
9
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
12
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
13
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
14
|
+
* governing permissions and limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
// A small amount of padding (in pixels) added around the trigger and overlay so the safe area is
|
|
19
|
+
// slightly forgiving of sub-pixel jitter and the gap between the elements.
|
|
20
|
+
const $4ffb93780cd64f2c$var$PADDING = 8;
|
|
21
|
+
function $4ffb93780cd64f2c$export$c7bf694416f38471(options) {
|
|
22
|
+
let { triggerRef: triggerRef, overlayRef: overlayRef, isOpen: isOpen, isDisabled: isDisabled } = options;
|
|
23
|
+
let onSafeAreaChange = (0, $85567ef950781b7d$export$7f54fc3180508a52)(options.onSafeAreaChange);
|
|
24
|
+
(0, $lMuEN$useEffect)(()=>{
|
|
25
|
+
let trigger = triggerRef.current;
|
|
26
|
+
if (isDisabled || !isOpen || !trigger) return;
|
|
27
|
+
let onPointerMove = (e)=>{
|
|
28
|
+
var _overlayRef_current;
|
|
29
|
+
if (e.pointerType === 'touch') return;
|
|
30
|
+
let point = {
|
|
31
|
+
x: e.clientX,
|
|
32
|
+
y: e.clientY
|
|
33
|
+
};
|
|
34
|
+
let triggerRect = trigger.getBoundingClientRect();
|
|
35
|
+
let overlayRect = (_overlayRef_current = overlayRef.current) === null || _overlayRef_current === void 0 ? void 0 : _overlayRef_current.getBoundingClientRect();
|
|
36
|
+
onSafeAreaChange($4ffb93780cd64f2c$var$isPointInSafeArea(point, triggerRect, overlayRect));
|
|
37
|
+
};
|
|
38
|
+
// If the pointer leaves the document entirely, it is no longer in the safe area.
|
|
39
|
+
let onPointerLeave = ()=>onSafeAreaChange(false);
|
|
40
|
+
let win = (0, $cc3c3666b64debad$export$f21a1ffae260145a)(trigger);
|
|
41
|
+
let doc = (0, $cc3c3666b64debad$export$b204af158042fbac)(trigger);
|
|
42
|
+
win.addEventListener('pointermove', onPointerMove);
|
|
43
|
+
doc.documentElement.addEventListener('pointerleave', onPointerLeave);
|
|
44
|
+
return ()=>{
|
|
45
|
+
win.removeEventListener('pointermove', onPointerMove);
|
|
46
|
+
doc.documentElement.removeEventListener('pointerleave', onPointerLeave);
|
|
47
|
+
};
|
|
48
|
+
}, [
|
|
49
|
+
isDisabled,
|
|
50
|
+
isOpen,
|
|
51
|
+
triggerRef,
|
|
52
|
+
overlayRef
|
|
53
|
+
]);
|
|
54
|
+
}
|
|
55
|
+
function $4ffb93780cd64f2c$var$isPointInSafeArea(point, triggerRect, overlayRect) {
|
|
56
|
+
if ($4ffb93780cd64f2c$var$rectContains(triggerRect, point)) return true;
|
|
57
|
+
if (!overlayRect) return false;
|
|
58
|
+
if ($4ffb93780cd64f2c$var$rectContains(overlayRect, point)) return true;
|
|
59
|
+
// Otherwise, check whether the point is within the convex hull connecting the two rects.
|
|
60
|
+
let hull = $4ffb93780cd64f2c$var$convexHull([
|
|
61
|
+
...$4ffb93780cd64f2c$var$rectCorners(triggerRect),
|
|
62
|
+
...$4ffb93780cd64f2c$var$rectCorners(overlayRect)
|
|
63
|
+
]);
|
|
64
|
+
return hull.length >= 3 && $4ffb93780cd64f2c$var$isPointInPolygon(point, hull);
|
|
65
|
+
}
|
|
66
|
+
function $4ffb93780cd64f2c$var$rectContains(rect, point) {
|
|
67
|
+
return point.x >= rect.left - $4ffb93780cd64f2c$var$PADDING && point.x <= rect.right + $4ffb93780cd64f2c$var$PADDING && point.y >= rect.top - $4ffb93780cd64f2c$var$PADDING && point.y <= rect.bottom + $4ffb93780cd64f2c$var$PADDING;
|
|
68
|
+
}
|
|
69
|
+
function $4ffb93780cd64f2c$var$rectCorners(rect) {
|
|
70
|
+
let left = rect.left - $4ffb93780cd64f2c$var$PADDING;
|
|
71
|
+
let right = rect.right + $4ffb93780cd64f2c$var$PADDING;
|
|
72
|
+
let top = rect.top - $4ffb93780cd64f2c$var$PADDING;
|
|
73
|
+
let bottom = rect.bottom + $4ffb93780cd64f2c$var$PADDING;
|
|
74
|
+
return [
|
|
75
|
+
{
|
|
76
|
+
x: left,
|
|
77
|
+
y: top
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
x: right,
|
|
81
|
+
y: top
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
x: right,
|
|
85
|
+
y: bottom
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
x: left,
|
|
89
|
+
y: bottom
|
|
90
|
+
}
|
|
91
|
+
];
|
|
92
|
+
}
|
|
93
|
+
// Computes the convex hull of a set of points using the monotone chain algorithm.
|
|
94
|
+
function $4ffb93780cd64f2c$var$convexHull(points) {
|
|
95
|
+
let sorted = points.slice().sort((a, b)=>a.x - b.x || a.y - b.y);
|
|
96
|
+
if (sorted.length < 3) return sorted;
|
|
97
|
+
let cross = (o, a, b)=>(a.x - o.x) * (b.y - o.y) - (a.y - o.y) * (b.x - o.x);
|
|
98
|
+
let lower = [];
|
|
99
|
+
for (let p of sorted){
|
|
100
|
+
while(lower.length >= 2 && cross(lower[lower.length - 2], lower[lower.length - 1], p) <= 0)lower.pop();
|
|
101
|
+
lower.push(p);
|
|
102
|
+
}
|
|
103
|
+
let upper = [];
|
|
104
|
+
for(let i = sorted.length - 1; i >= 0; i--){
|
|
105
|
+
let p = sorted[i];
|
|
106
|
+
while(upper.length >= 2 && cross(upper[upper.length - 2], upper[upper.length - 1], p) <= 0)upper.pop();
|
|
107
|
+
upper.push(p);
|
|
108
|
+
}
|
|
109
|
+
lower.pop();
|
|
110
|
+
upper.pop();
|
|
111
|
+
return lower.concat(upper);
|
|
112
|
+
}
|
|
113
|
+
// Ray casting point-in-polygon test.
|
|
114
|
+
function $4ffb93780cd64f2c$var$isPointInPolygon(point, polygon) {
|
|
115
|
+
let { x: x, y: y } = point;
|
|
116
|
+
let inside = false;
|
|
117
|
+
for(let i = 0, j = polygon.length - 1; i < polygon.length; j = i++){
|
|
118
|
+
let xi = polygon[i].x;
|
|
119
|
+
let yi = polygon[i].y;
|
|
120
|
+
let xj = polygon[j].x;
|
|
121
|
+
let yj = polygon[j].y;
|
|
122
|
+
let intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
|
|
123
|
+
if (intersect) inside = !inside;
|
|
124
|
+
}
|
|
125
|
+
return inside;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
export {$4ffb93780cd64f2c$export$c7bf694416f38471 as useSafeArea};
|
|
130
|
+
//# sourceMappingURL=useSafeArea.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"mappings":"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","sources":["packages/react-aria/src/tooltip/useSafeArea.ts"],"sourcesContent":["/*\n * Copyright 2026 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport {getOwnerDocument, getOwnerWindow} from '../utils/domHelpers';\nimport {RefObject} from '@react-types/shared';\nimport {useEffect} from 'react';\nimport {useEffectEvent} from '../utils/useEffectEvent';\n\ninterface Point {\n x: number;\n y: number;\n}\n\ninterface SafeAreaOptions {\n /** Ref for the trigger element. */\n triggerRef: RefObject<Element | null>;\n /** Ref for the overlay element. */\n overlayRef: RefObject<Element | null>;\n /** Whether the overlay is open. */\n isOpen: boolean;\n /** Whether this feature is disabled. */\n isDisabled?: boolean;\n /**\n * Called on pointer move (and when the pointer leaves the document) with whether the pointer is\n * currently within the \"safe area\" — the trigger, the overlay, or the region between them. This\n * lets an overlay stay open while the pointer travels from the trigger to the overlay, even\n * diagonally and regardless of placement.\n */\n onSafeAreaChange: (isInSafeArea: boolean) => void;\n}\n\n// A small amount of padding (in pixels) added around the trigger and overlay so the safe area is\n// slightly forgiving of sub-pixel jitter and the gap between the elements.\nconst PADDING = 8;\n\n/**\n * Tracks whether the pointer is within a \"safe area\" connecting a trigger and its overlay, so the\n * overlay can stay open while the pointer moves between them. The safe area is the union of the\n * trigger rect, the overlay rect, and the convex hull connecting the two (a polygon), which works\n * for any placement of the overlay relative to the trigger.\n */\nexport function useSafeArea(options: SafeAreaOptions): void {\n let {triggerRef, overlayRef, isOpen, isDisabled} = options;\n let onSafeAreaChange = useEffectEvent(options.onSafeAreaChange);\n\n useEffect(() => {\n let trigger = triggerRef.current;\n if (isDisabled || !isOpen || !trigger) {\n return;\n }\n\n let onPointerMove = (e: PointerEvent) => {\n if (e.pointerType === 'touch') {\n return;\n }\n let point = {x: e.clientX, y: e.clientY};\n let triggerRect = trigger!.getBoundingClientRect();\n let overlayRect = overlayRef.current?.getBoundingClientRect();\n onSafeAreaChange(isPointInSafeArea(point, triggerRect, overlayRect));\n };\n\n // If the pointer leaves the document entirely, it is no longer in the safe area.\n let onPointerLeave = () => onSafeAreaChange(false);\n\n let win = getOwnerWindow(trigger);\n let doc = getOwnerDocument(trigger);\n win.addEventListener('pointermove', onPointerMove);\n doc.documentElement.addEventListener('pointerleave', onPointerLeave);\n return () => {\n win.removeEventListener('pointermove', onPointerMove);\n doc.documentElement.removeEventListener('pointerleave', onPointerLeave);\n };\n }, [isDisabled, isOpen, triggerRef, overlayRef]);\n}\n\nfunction isPointInSafeArea(point: Point, triggerRect: DOMRect, overlayRect?: DOMRect): boolean {\n if (rectContains(triggerRect, point)) {\n return true;\n }\n if (!overlayRect) {\n return false;\n }\n if (rectContains(overlayRect, point)) {\n return true;\n }\n // Otherwise, check whether the point is within the convex hull connecting the two rects.\n let hull = convexHull([...rectCorners(triggerRect), ...rectCorners(overlayRect)]);\n return hull.length >= 3 && isPointInPolygon(point, hull);\n}\n\nfunction rectContains(rect: DOMRect, point: Point): boolean {\n return (\n point.x >= rect.left - PADDING &&\n point.x <= rect.right + PADDING &&\n point.y >= rect.top - PADDING &&\n point.y <= rect.bottom + PADDING\n );\n}\n\nfunction rectCorners(rect: DOMRect): Point[] {\n let left = rect.left - PADDING;\n let right = rect.right + PADDING;\n let top = rect.top - PADDING;\n let bottom = rect.bottom + PADDING;\n return [\n {x: left, y: top},\n {x: right, y: top},\n {x: right, y: bottom},\n {x: left, y: bottom}\n ];\n}\n\n// Computes the convex hull of a set of points using the monotone chain algorithm.\nfunction convexHull(points: Point[]): Point[] {\n let sorted = points.slice().sort((a, b) => a.x - b.x || a.y - b.y);\n if (sorted.length < 3) {\n return sorted;\n }\n\n let cross = (o: Point, a: Point, b: Point) =>\n (a.x - o.x) * (b.y - o.y) - (a.y - o.y) * (b.x - o.x);\n\n let lower: Point[] = [];\n for (let p of sorted) {\n while (lower.length >= 2 && cross(lower[lower.length - 2], lower[lower.length - 1], p) <= 0) {\n lower.pop();\n }\n lower.push(p);\n }\n\n let upper: Point[] = [];\n for (let i = sorted.length - 1; i >= 0; i--) {\n let p = sorted[i];\n while (upper.length >= 2 && cross(upper[upper.length - 2], upper[upper.length - 1], p) <= 0) {\n upper.pop();\n }\n upper.push(p);\n }\n\n lower.pop();\n upper.pop();\n return lower.concat(upper);\n}\n\n// Ray casting point-in-polygon test.\nfunction isPointInPolygon(point: Point, polygon: Point[]): boolean {\n let {x, y} = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n let xi = polygon[i].x;\n let yi = polygon[i].y;\n let xj = polygon[j].x;\n let yj = polygon[j].y;\n let intersect = yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi;\n if (intersect) {\n inside = !inside;\n }\n }\n return inside;\n}\n"],"names":[],"version":3,"file":"useSafeArea.js.map"}
|