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
|
@@ -17,7 +17,9 @@ function $059e6e023d86289a$export$49571c903d73624c(props, state, ref) {
|
|
|
17
17
|
let { gridCellProps: gridCellProps, isPressed: isPressed } = (0, $a4d729ad50b8576a$export$c7e10bfc0c59f67c)(props, state, ref);
|
|
18
18
|
let columnKey = props.node.column?.key;
|
|
19
19
|
if (columnKey != null && state.collection.rowHeaderColumnKeys.has(columnKey)) {
|
|
20
|
+
// oxlint-disable-next-line react/react-compiler
|
|
20
21
|
gridCellProps.role = 'rowheader';
|
|
22
|
+
// oxlint-disable-next-line react/react-compiler
|
|
21
23
|
gridCellProps.id = (0, $cf56c58f505db99a$export$19baff3266315d44)(state, props.node.parentKey, columnKey);
|
|
22
24
|
}
|
|
23
25
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;AAAA;;;;;;;;;;CAUC;;
|
|
1
|
+
{"mappings":";;;AAAA;;;;;;;;;;CAUC;;AAqDM,SAAS,0CACd,KAAyB,EACzB,KAAoB,EACpB,GAAuC;IAEvC,IAAI,iBAAC,aAAa,aAAE,SAAS,EAAC,GAAG,CAAA,GAAA,yCAAU,EAAE,OAAO,OAAO;IAC3D,IAAI,YAAY,MAAM,IAAI,CAAC,MAAM,EAAE;IACnC,IAAI,aAAa,QAAQ,MAAM,UAAU,CAAC,mBAAmB,CAAC,GAAG,CAAC,YAAY;QAC5E,gDAAgD;QAChD,cAAc,IAAI,GAAG;QACrB,gDAAgD;QAChD,cAAc,EAAE,GAAG,CAAA,GAAA,yCAAQ,EAAE,OAAO,MAAM,IAAI,CAAC,SAAS,EAAG;IAC7D;IAEA,OAAO;uBACL;mBACA;IACF;AACF","sources":["packages/react-aria/src/table/useTableCell.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {DOMAttributes, FocusableElement, RefObject} from '@react-types/shared';\nimport {getCellId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport {TableState} from 'react-stately/useTableState';\nimport {useGridCell} from '../grid/useGridCell';\n\nexport interface AriaTableCellProps {\n /**\n * An object representing the table cell. Contains all the relevant information that makes up the\n * row header.\n */\n node: GridNode<unknown>;\n /** Whether the cell is contained in a virtual scroller. */\n isVirtualized?: boolean;\n /** Whether selection should occur on press up instead of press down. */\n shouldSelectOnPressUp?: boolean;\n /**\n * Handler that is called when a user performs an action on the cell.\n * Please use onCellAction at the collection level instead.\n *\n * @deprecated\n */\n onAction?: () => void;\n /**\n * Whether the cell or its first focusable child element should be focused when the cell is\n * focused. Defaults to 'child' in arrow keyboard navigation mode and 'cell' in\n * tab keyboard navigation mode.\n */\n focusMode?: 'child' | 'cell';\n /**\n * Whether the cell should support arrow key navigation even when the containing table uses\n * tab keyboard navigation.Allows users to navigate between rows and cells with arrow keys while\n * focus is on an interactive child element within the cell.\n */\n allowsArrowNavigation?: boolean;\n}\n\nexport interface TableCellAria {\n /** Props for the table cell element. */\n gridCellProps: DOMAttributes;\n /** Whether the cell is currently in a pressed state. */\n isPressed: boolean;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a cell in a table.\n *\n * @param props - Props for the cell.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the cell element.\n */\nexport function useTableCell<T>(\n props: AriaTableCellProps,\n state: TableState<T>,\n ref: RefObject<FocusableElement | null>\n): TableCellAria {\n let {gridCellProps, isPressed} = useGridCell(props, state, ref);\n let columnKey = props.node.column?.key;\n if (columnKey != null && state.collection.rowHeaderColumnKeys.has(columnKey)) {\n // oxlint-disable-next-line react/react-compiler\n gridCellProps.role = 'rowheader';\n // oxlint-disable-next-line react/react-compiler\n gridCellProps.id = getCellId(state, props.node.parentKey!, columnKey);\n }\n\n return {\n gridCellProps,\n isPressed\n };\n}\n"],"names":[],"version":3,"file":"useTableCell.mjs.map"}
|
|
@@ -42,10 +42,9 @@ $parcel$export(module.exports, "useTableColumnHeader", function () { return $b4d
|
|
|
42
42
|
function $b4d2163e258b7829$export$9514819a8c81e960(props, state, ref) {
|
|
43
43
|
let { node: node } = props;
|
|
44
44
|
let allowsSorting = node.props.allowsSorting;
|
|
45
|
-
// if there are no focusable children, the column header will focus the cell
|
|
46
45
|
let { gridCellProps: gridCellProps } = (0, $83fb058f79cd147c$exports.useGridCell)({
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
focusMode: 'child',
|
|
47
|
+
...props
|
|
49
48
|
}, state, ref);
|
|
50
49
|
let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';
|
|
51
50
|
let { pressProps: pressProps, isPressed: isPressed } = (0, $1d003dcb6308cd89$exports.usePress)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;
|
|
1
|
+
{"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;AAuDM,SAAS,0CACd,KAAoC,EACpC,KAAoB,EACpB,GAAuC;IAEvC,IAAI,QAAC,IAAI,EAAC,GAAG;IACb,IAAI,gBAAgB,KAAK,KAAK,CAAC,aAAa;IAC5C,IAAI,iBAAC,aAAa,EAAC,GAAG,CAAA,GAAA,qCAAU,EAAE;QAAC,WAAW;QAAS,GAAG,KAAK;IAAA,GAAG,OAAO;IAEzE,IAAI,0BACF,KAAK,KAAK,CAAC,eAAe,IAAI,MAAM,gBAAgB,CAAC,aAAa,KAAK;IAEzE,IAAI,cAAC,UAAU,aAAE,SAAS,EAAC,GAAG,CAAA,GAAA,kCAAO,EAAE;QACrC,YAAY,CAAC,iBAAiB;QAC9B;YACE,MAAM,IAAI,CAAC,KAAK,GAAG;QACrB;aACA;IACF;IAEA,qFAAqF;IACrF,IAAI,kBAAC,cAAc,EAAC,GAAG,CAAA,GAAA,sCAAW,EAAE,CAAC,GAAG;IAExC,IAAI,WAAmD;IACvD,IAAI,iBAAiB,MAAM,cAAc,EAAE,WAAW,KAAK,GAAG;IAC9D,IAAI,gBAAgB,MAAM,cAAc,EAAE;IAC1C,8CAA8C;IAC9C,IAAI,KAAK,KAAK,CAAC,aAAa,IAAI,CAAC,CAAA,GAAA,mCAAQ,KACvC,WAAW,iBAAiB,gBAAgB;IAG9C,IAAI,kBAAkB,CAAA,GAAA,qDAA0B,EAAE,CAAA,GAAA,mDAAW,GAAG;IAChE,IAAI;IACJ,IAAI,eAAe;QACjB,kBAAkB,GAAG,gBAAgB,MAAM,CAAC,aAAa;QACzD,wGAAwG;QACxG,IAAI,kBAAkB,iBAAiB,CAAA,GAAA,mCAAQ,KAC7C,kBAAkB,GAAG,gBAAgB,EAAE,EAAE,gBAAgB,MAAM,CAAC,gBAAgB;IAEpF;IAEA,IAAI,mBAAmB,CAAA,GAAA,wCAAa,EAAE;IAEtC,IAAI,qBAAqB,MAAM,UAAU,CAAC,IAAI,KAAK;IACnD,CAAA,GAAA,sBAAQ,EAAE;QACR,IAAI,sBAAsB,MAAM,gBAAgB,CAAC,UAAU,KAAK,KAAK,GAAG,EACtE,MAAM,gBAAgB,CAAC,aAAa,CAAC;IAEzC,GAAG;QAAC;QAAoB,MAAM,gBAAgB;QAAE,KAAK,GAAG;KAAC;IAEzD,OAAO;QACL,mBAAmB;YACjB,GAAG,CAAA,GAAA,oCAAS,EACV,gBACA,eACA,YACA,kBACA,4DAA4D;YAC5D,qBAAqB;gBAAC,UAAU;YAAE,IAAI,KACvC;YACD,MAAM;YACN,IAAI,CAAA,GAAA,2CAAgB,EAAE,OAAO,KAAK,GAAG;YACrC,gBAAgB,KAAK,OAAO,IAAI,KAAK,OAAO,GAAG,IAAI,KAAK,OAAO,GAAG;YAClE,aAAa;QACf;mBACA;IACF;AACF","sources":["packages/react-aria/src/table/useTableColumnHeader.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {DOMAttributes, FocusableElement, RefObject} from '@react-types/shared';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {isAndroid} from '../utils/platform';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffect} from 'react';\nimport {useFocusable} from '../interactions/useFocusable';\nimport {useGridCell} from '../grid/useGridCell';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {usePress} from '../interactions/usePress';\n\nexport interface AriaTableColumnHeaderProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n node: GridNode<T>;\n /**\n * Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a\n * virtual scroller.\n */\n isVirtualized?: boolean;\n /**\n * Whether the column header or its first focusable child element should be focused when the\n * column header is focused. Defaults to 'child' in arrow keyboard navigation mode and 'cell' in\n * tab keyboard navigation mode.\n */\n focusMode?: 'child' | 'cell';\n /**\n * Whether the column header should support arrow key navigation even when the containing table\n * uses tab keyboard navigation. Allows users to navigate between columns with arrow keys while\n * focus is on an interactive child element within the cell.\n */\n allowsArrowNavigation?: boolean;\n}\n\nexport interface TableColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: DOMAttributes;\n /** Whether the column is currently in a pressed state. */\n isPressed: boolean;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n *\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(\n props: AriaTableColumnHeaderProps<T>,\n state: TableState<T>,\n ref: RefObject<FocusableElement | null>\n): TableColumnHeaderAria {\n let {node} = props;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell({focusMode: 'child', ...props}, state, ref);\n\n let isSelectionCellDisabled =\n node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n\n let {pressProps, isPressed} = usePress({\n isDisabled: !allowsSorting || isSelectionCellDisabled,\n onPress() {\n state.sort(node.key);\n },\n ref\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: DOMAttributes['aria-sort'] | undefined = undefined;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${stringFormatter.format('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${stringFormatter.format(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n let shouldDisableFocus = state.collection.size === 0;\n useEffect(() => {\n if (shouldDisableFocus && state.selectionManager.focusedKey === node.key) {\n state.selectionManager.setFocusedKey(null);\n }\n }, [shouldDisableFocus, state.selectionManager, node.key]);\n\n return {\n columnHeaderProps: {\n ...mergeProps(\n focusableProps,\n gridCellProps,\n pressProps,\n descriptionProps,\n // If the table is empty, make all column headers untabbable\n shouldDisableFocus ? {tabIndex: -1} : null\n ),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colSpan && node.colSpan > 1 ? node.colSpan : undefined,\n 'aria-sort': ariaSort\n },\n isPressed\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnHeader.cjs.map"}
|
|
@@ -37,10 +37,9 @@ function $a7064ebacf1aff0b$export$9514819a8c81e960(props, state, ref) {
|
|
|
37
37
|
var _state_sortDescriptor, _state_sortDescriptor1;
|
|
38
38
|
let { node: node } = props;
|
|
39
39
|
let allowsSorting = node.props.allowsSorting;
|
|
40
|
-
// if there are no focusable children, the column header will focus the cell
|
|
41
40
|
let { gridCellProps: gridCellProps } = (0, $9b19f290bcf2fee1$export$c7e10bfc0c59f67c)({
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
focusMode: 'child',
|
|
42
|
+
...props
|
|
44
43
|
}, state, ref);
|
|
45
44
|
let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';
|
|
46
45
|
let { pressProps: pressProps, isPressed: isPressed } = (0, $a87f4c40785e693b$export$45712eceda6fad21)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;
|
|
1
|
+
{"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;AAuDM,SAAS,0CACd,KAAoC,EACpC,KAAoB,EACpB,GAAuC;QAqBlB,uBACD;IApBpB,IAAI,QAAC,IAAI,EAAC,GAAG;IACb,IAAI,gBAAgB,KAAK,KAAK,CAAC,aAAa;IAC5C,IAAI,iBAAC,aAAa,EAAC,GAAG,CAAA,GAAA,yCAAU,EAAE;QAAC,WAAW;QAAS,GAAG,KAAK;IAAA,GAAG,OAAO;IAEzE,IAAI,0BACF,KAAK,KAAK,CAAC,eAAe,IAAI,MAAM,gBAAgB,CAAC,aAAa,KAAK;IAEzE,IAAI,cAAC,UAAU,aAAE,SAAS,EAAC,GAAG,CAAA,GAAA,yCAAO,EAAE;QACrC,YAAY,CAAC,iBAAiB;QAC9B;YACE,MAAM,IAAI,CAAC,KAAK,GAAG;QACrB;aACA;IACF;IAEA,qFAAqF;IACrF,IAAI,kBAAC,cAAc,EAAC,GAAG,CAAA,GAAA,yCAAW,EAAE,CAAC,GAAG;IAExC,IAAI,WAAmD;IACvD,IAAI,iBAAiB,EAAA,wBAAA,MAAM,cAAc,cAApB,4CAAA,sBAAsB,MAAM,MAAK,KAAK,GAAG;IAC9D,IAAI,iBAAgB,yBAAA,MAAM,cAAc,cAApB,6CAAA,uBAAsB,SAAS;IACnD,8CAA8C;IAC9C,IAAI,KAAK,KAAK,CAAC,aAAa,IAAI,CAAC,CAAA,GAAA,yCAAQ,KACvC,WAAW,iBAAiB,gBAAgB;IAG9C,IAAI,kBAAkB,CAAA,GAAA,yCAA0B,EAAE,CAAA,GAAA,8CAAW,GAAG;IAChE,IAAI;IACJ,IAAI,eAAe;QACjB,kBAAkB,GAAG,gBAAgB,MAAM,CAAC,aAAa;QACzD,wGAAwG;QACxG,IAAI,kBAAkB,iBAAiB,CAAA,GAAA,yCAAQ,KAC7C,kBAAkB,GAAG,gBAAgB,EAAE,EAAE,gBAAgB,MAAM,CAAC,gBAAgB;IAEpF;IAEA,IAAI,mBAAmB,CAAA,GAAA,yCAAa,EAAE;IAEtC,IAAI,qBAAqB,MAAM,UAAU,CAAC,IAAI,KAAK;IACnD,CAAA,GAAA,gBAAQ,EAAE;QACR,IAAI,sBAAsB,MAAM,gBAAgB,CAAC,UAAU,KAAK,KAAK,GAAG,EACtE,MAAM,gBAAgB,CAAC,aAAa,CAAC;IAEzC,GAAG;QAAC;QAAoB,MAAM,gBAAgB;QAAE,KAAK,GAAG;KAAC;IAEzD,OAAO;QACL,mBAAmB;YACjB,GAAG,CAAA,GAAA,yCAAS,EACV,gBACA,eACA,YACA,kBACA,4DAA4D;YAC5D,qBAAqB;gBAAC,UAAU;YAAE,IAAI,KACvC;YACD,MAAM;YACN,IAAI,CAAA,GAAA,yCAAgB,EAAE,OAAO,KAAK,GAAG;YACrC,gBAAgB,KAAK,OAAO,IAAI,KAAK,OAAO,GAAG,IAAI,KAAK,OAAO,GAAG;YAClE,aAAa;QACf;mBACA;IACF;AACF","sources":["packages/react-aria/src/table/useTableColumnHeader.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {DOMAttributes, FocusableElement, RefObject} from '@react-types/shared';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {isAndroid} from '../utils/platform';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffect} from 'react';\nimport {useFocusable} from '../interactions/useFocusable';\nimport {useGridCell} from '../grid/useGridCell';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {usePress} from '../interactions/usePress';\n\nexport interface AriaTableColumnHeaderProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n node: GridNode<T>;\n /**\n * Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a\n * virtual scroller.\n */\n isVirtualized?: boolean;\n /**\n * Whether the column header or its first focusable child element should be focused when the\n * column header is focused. Defaults to 'child' in arrow keyboard navigation mode and 'cell' in\n * tab keyboard navigation mode.\n */\n focusMode?: 'child' | 'cell';\n /**\n * Whether the column header should support arrow key navigation even when the containing table\n * uses tab keyboard navigation. Allows users to navigate between columns with arrow keys while\n * focus is on an interactive child element within the cell.\n */\n allowsArrowNavigation?: boolean;\n}\n\nexport interface TableColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: DOMAttributes;\n /** Whether the column is currently in a pressed state. */\n isPressed: boolean;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n *\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(\n props: AriaTableColumnHeaderProps<T>,\n state: TableState<T>,\n ref: RefObject<FocusableElement | null>\n): TableColumnHeaderAria {\n let {node} = props;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell({focusMode: 'child', ...props}, state, ref);\n\n let isSelectionCellDisabled =\n node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n\n let {pressProps, isPressed} = usePress({\n isDisabled: !allowsSorting || isSelectionCellDisabled,\n onPress() {\n state.sort(node.key);\n },\n ref\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: DOMAttributes['aria-sort'] | undefined = undefined;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${stringFormatter.format('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${stringFormatter.format(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n let shouldDisableFocus = state.collection.size === 0;\n useEffect(() => {\n if (shouldDisableFocus && state.selectionManager.focusedKey === node.key) {\n state.selectionManager.setFocusedKey(null);\n }\n }, [shouldDisableFocus, state.selectionManager, node.key]);\n\n return {\n columnHeaderProps: {\n ...mergeProps(\n focusableProps,\n gridCellProps,\n pressProps,\n descriptionProps,\n // If the table is empty, make all column headers untabbable\n shouldDisableFocus ? {tabIndex: -1} : null\n ),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colSpan && node.colSpan > 1 ? node.colSpan : undefined,\n 'aria-sort': ariaSort\n },\n isPressed\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnHeader.js.map"}
|
|
@@ -36,10 +36,9 @@ function $parcel$interopDefault(a) {
|
|
|
36
36
|
function $7354db473d14c864$export$9514819a8c81e960(props, state, ref) {
|
|
37
37
|
let { node: node } = props;
|
|
38
38
|
let allowsSorting = node.props.allowsSorting;
|
|
39
|
-
// if there are no focusable children, the column header will focus the cell
|
|
40
39
|
let { gridCellProps: gridCellProps } = (0, $a4d729ad50b8576a$export$c7e10bfc0c59f67c)({
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
focusMode: 'child',
|
|
41
|
+
...props
|
|
43
42
|
}, state, ref);
|
|
44
43
|
let isSelectionCellDisabled = node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';
|
|
45
44
|
let { pressProps: pressProps, isPressed: isPressed } = (0, $d27d541f9569d26d$export$45712eceda6fad21)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;
|
|
1
|
+
{"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;AAuDM,SAAS,0CACd,KAAoC,EACpC,KAAoB,EACpB,GAAuC;IAEvC,IAAI,QAAC,IAAI,EAAC,GAAG;IACb,IAAI,gBAAgB,KAAK,KAAK,CAAC,aAAa;IAC5C,IAAI,iBAAC,aAAa,EAAC,GAAG,CAAA,GAAA,yCAAU,EAAE;QAAC,WAAW;QAAS,GAAG,KAAK;IAAA,GAAG,OAAO;IAEzE,IAAI,0BACF,KAAK,KAAK,CAAC,eAAe,IAAI,MAAM,gBAAgB,CAAC,aAAa,KAAK;IAEzE,IAAI,cAAC,UAAU,aAAE,SAAS,EAAC,GAAG,CAAA,GAAA,yCAAO,EAAE;QACrC,YAAY,CAAC,iBAAiB;QAC9B;YACE,MAAM,IAAI,CAAC,KAAK,GAAG;QACrB;aACA;IACF;IAEA,qFAAqF;IACrF,IAAI,kBAAC,cAAc,EAAC,GAAG,CAAA,GAAA,yCAAW,EAAE,CAAC,GAAG;IAExC,IAAI,WAAmD;IACvD,IAAI,iBAAiB,MAAM,cAAc,EAAE,WAAW,KAAK,GAAG;IAC9D,IAAI,gBAAgB,MAAM,cAAc,EAAE;IAC1C,8CAA8C;IAC9C,IAAI,KAAK,KAAK,CAAC,aAAa,IAAI,CAAC,CAAA,GAAA,yCAAQ,KACvC,WAAW,iBAAiB,gBAAgB;IAG9C,IAAI,kBAAkB,CAAA,GAAA,yCAA0B,EAAE,CAAA,GAAA,+CAAW,GAAG;IAChE,IAAI;IACJ,IAAI,eAAe;QACjB,kBAAkB,GAAG,gBAAgB,MAAM,CAAC,aAAa;QACzD,wGAAwG;QACxG,IAAI,kBAAkB,iBAAiB,CAAA,GAAA,yCAAQ,KAC7C,kBAAkB,GAAG,gBAAgB,EAAE,EAAE,gBAAgB,MAAM,CAAC,gBAAgB;IAEpF;IAEA,IAAI,mBAAmB,CAAA,GAAA,yCAAa,EAAE;IAEtC,IAAI,qBAAqB,MAAM,UAAU,CAAC,IAAI,KAAK;IACnD,CAAA,GAAA,gBAAQ,EAAE;QACR,IAAI,sBAAsB,MAAM,gBAAgB,CAAC,UAAU,KAAK,KAAK,GAAG,EACtE,MAAM,gBAAgB,CAAC,aAAa,CAAC;IAEzC,GAAG;QAAC;QAAoB,MAAM,gBAAgB;QAAE,KAAK,GAAG;KAAC;IAEzD,OAAO;QACL,mBAAmB;YACjB,GAAG,CAAA,GAAA,yCAAS,EACV,gBACA,eACA,YACA,kBACA,4DAA4D;YAC5D,qBAAqB;gBAAC,UAAU;YAAE,IAAI,KACvC;YACD,MAAM;YACN,IAAI,CAAA,GAAA,yCAAgB,EAAE,OAAO,KAAK,GAAG;YACrC,gBAAgB,KAAK,OAAO,IAAI,KAAK,OAAO,GAAG,IAAI,KAAK,OAAO,GAAG;YAClE,aAAa;QACf;mBACA;IACF;AACF","sources":["packages/react-aria/src/table/useTableColumnHeader.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {DOMAttributes, FocusableElement, RefObject} from '@react-types/shared';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {isAndroid} from '../utils/platform';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffect} from 'react';\nimport {useFocusable} from '../interactions/useFocusable';\nimport {useGridCell} from '../grid/useGridCell';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {usePress} from '../interactions/usePress';\n\nexport interface AriaTableColumnHeaderProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n node: GridNode<T>;\n /**\n * Whether the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) is contained in a\n * virtual scroller.\n */\n isVirtualized?: boolean;\n /**\n * Whether the column header or its first focusable child element should be focused when the\n * column header is focused. Defaults to 'child' in arrow keyboard navigation mode and 'cell' in\n * tab keyboard navigation mode.\n */\n focusMode?: 'child' | 'cell';\n /**\n * Whether the column header should support arrow key navigation even when the containing table\n * uses tab keyboard navigation. Allows users to navigate between columns with arrow keys while\n * focus is on an interactive child element within the cell.\n */\n allowsArrowNavigation?: boolean;\n}\n\nexport interface TableColumnHeaderAria {\n /** Props for the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader) element. */\n columnHeaderProps: DOMAttributes;\n /** Whether the column is currently in a pressed state. */\n isPressed: boolean;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a column header in a table.\n *\n * @param props - Props for the column header.\n * @param state - State of the table, as returned by `useTableState`.\n * @param ref - The ref attached to the column header element.\n */\nexport function useTableColumnHeader<T>(\n props: AriaTableColumnHeaderProps<T>,\n state: TableState<T>,\n ref: RefObject<FocusableElement | null>\n): TableColumnHeaderAria {\n let {node} = props;\n let allowsSorting = node.props.allowsSorting;\n let {gridCellProps} = useGridCell({focusMode: 'child', ...props}, state, ref);\n\n let isSelectionCellDisabled =\n node.props.isSelectionCell && state.selectionManager.selectionMode === 'single';\n\n let {pressProps, isPressed} = usePress({\n isDisabled: !allowsSorting || isSelectionCellDisabled,\n onPress() {\n state.sort(node.key);\n },\n ref\n });\n\n // Needed to pick up the focusable context, enabling things like Tooltips for example\n let {focusableProps} = useFocusable({}, ref);\n\n let ariaSort: DOMAttributes['aria-sort'] | undefined = undefined;\n let isSortedColumn = state.sortDescriptor?.column === node.key;\n let sortDirection = state.sortDescriptor?.direction;\n // aria-sort not supported in Android Talkback\n if (node.props.allowsSorting && !isAndroid()) {\n ariaSort = isSortedColumn ? sortDirection : 'none';\n }\n\n let stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let sortDescription;\n if (allowsSorting) {\n sortDescription = `${stringFormatter.format('sortable')}`;\n // Android Talkback doesn't support aria-sort so we add sort order details to the aria-described by here\n if (isSortedColumn && sortDirection && isAndroid()) {\n sortDescription = `${sortDescription}, ${stringFormatter.format(sortDirection)}`;\n }\n }\n\n let descriptionProps = useDescription(sortDescription);\n\n let shouldDisableFocus = state.collection.size === 0;\n useEffect(() => {\n if (shouldDisableFocus && state.selectionManager.focusedKey === node.key) {\n state.selectionManager.setFocusedKey(null);\n }\n }, [shouldDisableFocus, state.selectionManager, node.key]);\n\n return {\n columnHeaderProps: {\n ...mergeProps(\n focusableProps,\n gridCellProps,\n pressProps,\n descriptionProps,\n // If the table is empty, make all column headers untabbable\n shouldDisableFocus ? {tabIndex: -1} : null\n ),\n role: 'columnheader',\n id: getColumnHeaderId(state, node.key),\n 'aria-colspan': node.colSpan && node.colSpan > 1 ? node.colSpan : undefined,\n 'aria-sort': ariaSort\n },\n isPressed\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnHeader.mjs.map"}
|
|
@@ -60,6 +60,9 @@ function $0c8ce4d883832c66$export$52994e973806c219(props, state, ref) {
|
|
|
60
60
|
let lastSize = (0, $jPYmD$react.useRef)(null);
|
|
61
61
|
let wasFocusedOnResizeStart = (0, $jPYmD$react.useRef)(false);
|
|
62
62
|
let editModeEnabled = state.tableState.isKeyboardNavigationDisabled;
|
|
63
|
+
// Whether a mouse drag-resize is active. Set on the first move (not on press) so a cursor
|
|
64
|
+
// overlay only mounts during an actual drag.
|
|
65
|
+
let [isMouseResizing, setMouseResizing] = (0, $jPYmD$react.useState)(false);
|
|
63
66
|
let { direction: direction } = (0, $2522e612fa919664$exports.useLocale)();
|
|
64
67
|
let startResize = (0, $jPYmD$react.useCallback)((item)=>{
|
|
65
68
|
if (!isResizingRef.current) {
|
|
@@ -97,24 +100,35 @@ function $0c8ce4d883832c66$export$52994e973806c219(props, state, ref) {
|
|
|
97
100
|
triggerRef,
|
|
98
101
|
onResizeEnd
|
|
99
102
|
]);
|
|
103
|
+
let endResizeEvent = ()=>{
|
|
104
|
+
if (editModeEnabled) {
|
|
105
|
+
endResize(item);
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
return false;
|
|
109
|
+
};
|
|
100
110
|
let { keyboardProps: keyboardProps } = (0, $6d2f10bb8b359da5$exports.useKeyboard)({
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
+
shortcuts: {
|
|
112
|
+
Escape: ()=>{
|
|
113
|
+
return endResizeEvent();
|
|
114
|
+
},
|
|
115
|
+
Enter: ()=>{
|
|
116
|
+
if (editModeEnabled) endResize(item);
|
|
117
|
+
else startResize(item);
|
|
118
|
+
},
|
|
119
|
+
' ': ()=>{
|
|
120
|
+
return endResizeEvent();
|
|
121
|
+
},
|
|
122
|
+
Tab: ()=>{
|
|
123
|
+
return endResizeEvent();
|
|
111
124
|
}
|
|
112
125
|
}
|
|
113
126
|
});
|
|
114
127
|
const columnResizeWidthRef = (0, $jPYmD$react.useRef)(0);
|
|
115
128
|
const { moveProps: moveProps } = (0, $2304f84c457be372$exports.useMove)({
|
|
116
|
-
onMoveStart () {
|
|
129
|
+
onMoveStart (e) {
|
|
117
130
|
columnResizeWidthRef.current = state.getColumnWidth(item.key);
|
|
131
|
+
if (e.pointerType === 'mouse') setMouseResizing(true);
|
|
118
132
|
startResize(item);
|
|
119
133
|
},
|
|
120
134
|
onMove (e) {
|
|
@@ -133,6 +147,7 @@ function $0c8ce4d883832c66$export$52994e973806c219(props, state, ref) {
|
|
|
133
147
|
onMoveEnd (e) {
|
|
134
148
|
let { pointerType: pointerType } = e;
|
|
135
149
|
columnResizeWidthRef.current = 0;
|
|
150
|
+
setMouseResizing(false);
|
|
136
151
|
if (pointerType === 'mouse' || pointerType === 'touch' && wasFocusedOnResizeStart.current) endResize(item);
|
|
137
152
|
}
|
|
138
153
|
});
|
|
@@ -148,7 +163,8 @@ function $0c8ce4d883832c66$export$52994e973806c219(props, state, ref) {
|
|
|
148
163
|
let value = Math.floor(state.getColumnWidth(item.key));
|
|
149
164
|
let modality = (0, $d0df89f3abe2c2ca$exports.useInteractionModality)();
|
|
150
165
|
if (modality === 'virtual' && typeof window !== 'undefined' && 'ontouchstart' in window) modality = 'touch';
|
|
151
|
-
let description =
|
|
166
|
+
let description = // oxlint-disable-next-line react/react-compiler
|
|
167
|
+
triggerRef?.current == null && (modality === 'keyboard' || modality === 'virtual') && !isResizing ? stringFormatter.format('resizerDescription') : undefined;
|
|
152
168
|
let descriptionProps = (0, $2205bbfafbd0b5cd$exports.useDescription)(description);
|
|
153
169
|
let ariaProps = {
|
|
154
170
|
'aria-label': ariaLabel,
|
|
@@ -227,7 +243,8 @@ function $0c8ce4d883832c66$export$52994e973806c219(props, state, ref) {
|
|
|
227
243
|
touchAction: 'none'
|
|
228
244
|
}
|
|
229
245
|
}),
|
|
230
|
-
inputProps: (0, $89b39774f3b79dbb$exports.mergeProps)(visuallyHiddenProps,
|
|
246
|
+
inputProps: (0, $89b39774f3b79dbb$exports.mergeProps)(visuallyHiddenProps, // oxlint-disable-next-line react/react-compiler
|
|
247
|
+
{
|
|
231
248
|
id: id,
|
|
232
249
|
onBlur: ()=>{
|
|
233
250
|
endResize(item);
|
|
@@ -235,7 +252,8 @@ function $0c8ce4d883832c66$export$52994e973806c219(props, state, ref) {
|
|
|
235
252
|
onChange: onChange,
|
|
236
253
|
disabled: isDisabled
|
|
237
254
|
}, ariaProps),
|
|
238
|
-
isResizing: isResizing
|
|
255
|
+
isResizing: isResizing,
|
|
256
|
+
isMouseResizing: isMouseResizing
|
|
239
257
|
};
|
|
240
258
|
}
|
|
241
259
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;;;;;;;AAiEM,SAAS,0CACd,KAAoC,EACpC,KAAgC,EAChC,GAAuC;IAEvC,IAAI,EACF,QAAQ,IAAI,cACZ,UAAU,cACV,UAAU,iBACV,aAAa,YACb,QAAQ,eACR,WAAW,EACX,cAAc,SAAS,EACxB,GAAG;IACJ,MAAM,kBAAkB,CAAA,GAAA,qDAA0B,EAAE,CAAA,GAAA,mDAAW,GAAG;IAClE,IAAI,KAAK,CAAA,GAAA,+BAAI;IACb,IAAI,aAAa,MAAM,cAAc,KAAK,KAAK,GAAG;IAClD,IAAI,gBAAgB,CAAA,GAAA,mBAAK,EAAE;IAC3B,IAAI,WAAW,CAAA,GAAA,mBAAK,EAA+B;IACnD,IAAI,0BAA0B,CAAA,GAAA,mBAAK,EAAE;IACrC,IAAI,kBAAkB,MAAM,UAAU,CAAC,4BAA4B;IAEnE,IAAI,aAAC,SAAS,EAAC,GAAG,CAAA,GAAA,mCAAQ;IAE1B,IAAI,cAAc,CAAA,GAAA,wBAAU,EAC1B,CAAA;QACE,IAAI,CAAC,cAAc,OAAO,EAAE;YAC1B,SAAS,OAAO,GAAG,MAAM,oBAAoB,CAAC,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC,KAAK,GAAG;YACrF,MAAM,WAAW,CAAC,KAAK,GAAG;YAC1B,MAAM,UAAU,CAAC,6BAA6B,CAAC;YAC/C,gBAAgB,SAAS,OAAO;QAClC;QACA,cAAc,OAAO,GAAG;IAC1B,GACA;QAAC;QAAO;KAAc;IAGxB,IAAI,SAAS,CAAA,GAAA,wBAAU,EACrB,CAAC,MAAM;QACL,IAAI,QAAQ,MAAM,oBAAoB,CAAC,KAAK,GAAG,EAAE;QACjD,WAAW;QACX,SAAS,OAAO,GAAG;IACrB,GACA;QAAC;QAAO;KAAS;IAGnB,IAAI,YAAY,CAAA,GAAA,wBAAU,EACxB,CAAA;QACE,IAAI,cAAc,OAAO,EAAE;YACzB,IAAI,SAAS,OAAO,IAAI,MACtB,SAAS,OAAO,GAAG,MAAM,oBAAoB,CAAC,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC,KAAK,GAAG;YAGvF,MAAM,SAAS;YACf,MAAM,UAAU,CAAC,6BAA6B,CAAC;YAC/C,cAAc,SAAS,OAAO;YAC9B,cAAc,OAAO,GAAG;YAExB,IAAI,YAAY,WAAW,CAAC,wBAAwB,OAAO,EACzD,uGAAuG;YACvG,CAAA,GAAA,qCAAU,EAAE,WAAW,OAAO;QAElC;QACA,SAAS,OAAO,GAAG;IACrB,GACA;QAAC;QAAO;QAAY;KAAY;IAGlC,IAAI,iBAAC,aAAa,EAAC,GAAG,CAAA,GAAA,qCAAU,EAAE;QAChC,WAAW,CAAA;YACT,IAAI,iBACF;gBAAA,IAAI,EAAE,GAAG,KAAK,YAAY,EAAE,GAAG,KAAK,WAAW,EAAE,GAAG,KAAK,OAAO,EAAE,GAAG,KAAK,OAAO;oBAC/E,EAAE,cAAc;oBAChB,UAAU;gBACZ;YAAA,OACK;gBACL,gHAAgH;gBAChH,EAAE,mBAAmB;gBAErB,IAAI,EAAE,GAAG,KAAK,SACZ,YAAY;YAEhB;QACF;IACF;IAEA,MAAM,uBAAuB,CAAA,GAAA,mBAAK,EAAU;IAC5C,MAAM,aAAC,SAAS,EAAC,GAAG,CAAA,GAAA,iCAAM,EAAE;QAC1B;YACE,qBAAqB,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,GAAG;YAC5D,YAAY;QACd;QACA,QAAO,CAAC;YACN,IAAI,UAAC,MAAM,UAAE,MAAM,eAAE,WAAW,EAAC,GAAG;YACpC,IAAI,cAAc,OAChB,UAAU;YAEZ,IAAI,gBAAgB,YAAY;gBAC9B,IAAI,WAAW,KAAK,WAAW,GAC7B,SAAS,SAAS;gBAEpB,UAAU;YACZ;YACA,4CAA4C;YAC5C,IAAI,WAAW,GAAG;gBAChB,qBAAqB,OAAO,IAAI;gBAChC,OAAO,MAAM,qBAAqB,OAAO;YAC3C;QACF;QACA,WAAU,CAAC;YACT,IAAI,eAAC,WAAW,EAAC,GAAG;YACpB,qBAAqB,OAAO,GAAG;YAC/B,IAAI,gBAAgB,WAAY,gBAAgB,WAAW,wBAAwB,OAAO,EACxF,UAAU;QAEd;IACF;IAEA,IAAI,YAAY,CAAA,GAAA,wBAAU,EACxB,CAAA;QACE,IAAI,iBACF,UAAU,SAAS,GAAG;IAE1B,GACA;QAAC;QAAiB;KAAU;IAG9B,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,iBAAiB,CAAC,KAAK,GAAG;IACrD,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,iBAAiB,CAAC,KAAK,GAAG;IACrD,IAAI,QAAQ,UACV,MAAM,OAAO,gBAAgB;IAE/B,IAAI,QAAQ,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC,KAAK,GAAG;IACpD,IAAI,WAA0B,CAAA,GAAA,gDAAqB;IACnD,IAAI,aAAa,aAAa,OAAO,WAAW,eAAe,kBAAkB,QAC/E,WAAW;IAEb,IAAI,cACF,YAAY,WAAW,QACtB,CAAA,aAAa,cAAc,aAAa,SAAQ,KACjD,CAAC,aACG,gBAAgB,MAAM,CAAC,wBACvB;IACN,IAAI,mBAAmB,CAAA,GAAA,wCAAa,EAAE;IACtC,IAAI,YAAY;QACd,cAAc;QACd,oBAAoB;QACpB,mBAAmB,GAAG,GAAG,CAAC,EAAE,CAAA,GAAA,2CAAgB,EAAE,MAAM,UAAU,EAAE,KAAK,GAAG,GAAG;QAC3E,kBAAkB,gBAAgB,MAAM,CAAC,cAAc;mBAAC;QAAK;QAC7D,MAAM;aACN;aACA;eACA;QACA,GAAG,gBAAgB;IACrB;IAEA,MAAM,aAAa,CAAA,GAAA,wBAAU,EAAE;QAC7B,IAAI,IAAI,OAAO,EACb,CAAA,GAAA,qCAAU,EAAE,IAAI,OAAO;IAE3B,GAAG;QAAC;KAAI;IAER,IAAI,iBAAiB,MAAM,cAAc;IACzC,IAAI,qBAAqB,CAAA,GAAA,mBAAK,EAAc;IAC5C,IAAI,mBAAmB,CAAA,GAAA,wCAAa,EAAE;IACtC,CAAA,GAAA,sBAAQ,EAAE;QACR,IACE,mBAAmB,OAAO,KAAK,kBAC/B,kBAAkB,QAClB,mBAAmB,KAAK,GAAG,EAC3B;YACA,wBAAwB,OAAO,GAAG,CAAA,GAAA,0CAAe,QAAQ,IAAI,OAAO;YACpE,iBAAiB;YACjB,kJAAkJ;YAClJ,IAAI,UAAU,WAAW,IAAM,cAAc;YAC7C,gEAAgE;YAChE,IAAI,YAAY,WAAW,YAAY;YACvC,OAAO;gBACL,aAAa;gBACb,aAAa;YACf;QACF;QACA,mBAAmB,OAAO,GAAG;IAC/B,GAAG;QAAC;QAAgB;QAAM;QAAY;KAAI;IAE1C,IAAI,WAAW,CAAC;QACd,IAAI,eAAe,MAAM,cAAc,CAAC,KAAK,GAAG;QAChD,IAAI,YAAY,WAAW,CAAA,GAAA,wCAAa,EAAE,GAAG,KAAK;QAElD,IAAI,YAAY,cACd,YAAY,eAAe;aAE3B,YAAY,eAAe;QAE7B,OAAO,MAAM;IACf;IAEA,IAAI,cAAC,UAAU,EAAC,GAAG,CAAA,GAAA,kCAAO,EAAE;QAC1B,qBAAqB;QACrB,cAAc,CAAA;YACZ,IAAI,EAAE,OAAO,IAAI,EAAE,MAAM,IAAI,EAAE,OAAO,IAAI,EAAE,QAAQ,IAAI,EAAE,WAAW,KAAK,YACxE;YAEF,IAAI,EAAE,WAAW,KAAK,aAAa,MAAM,cAAc,IAAI,MAAM;gBAC/D,UAAU;gBACV;YACF;YAEA,0GAA0G;YAC1G,iCAAiC;YACjC;YAEA,gIAAgI;YAChI,kDAAkD;YAClD,IAAI,EAAE,WAAW,KAAK,WACpB,YAAY;QAEhB;QACA,SAAS,CAAA;YACP,IACE,AAAC,CAAA,AAAC,EAAE,WAAW,KAAK,WAAW,wBAAwB,OAAO,IAC5D,EAAE,WAAW,KAAK,OAAM,KAC1B,MAAM,cAAc,IAAI,MAExB,UAAU;QAEd;IACF;IACA,IAAI,uBAAC,mBAAmB,EAAC,GAAG,CAAA,GAAA,2CAAgB;IAE5C,OAAO;QACL,cAAc,CAAA,GAAA,oCAAS,EAAE,eAAe;YAAC,GAAG,SAAS;uBAAE;QAAS,GAAG,YAAY;YAC7E,OAAO;gBAAC,aAAa;YAAM;QAC7B;QACA,YAAY,CAAA,GAAA,oCAAS,EACnB,qBACA;gBACE;YACA,QAAQ;gBACN,UAAU;YACZ;sBACA;YACA,UAAU;QACZ,GACA;oBAEF;IACF;AACF","sources":["packages/react-aria/src/table/useTableColumnResize.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {ChangeEvent, useCallback, useEffect, useRef} from 'react';\nimport {ColumnSize} from 'react-stately/useTableState';\nimport {DOMAttributes, FocusableElement, Key, RefObject} from '@react-types/shared';\nimport {focusSafely} from '../interactions/focusSafely';\nimport {getActiveElement, getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableColumnResizeState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffectEvent} from '../utils/useEffectEvent';\nimport {useId} from '../utils/useId';\nimport {useInteractionModality} from '../interactions/useFocusVisible';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {useMove} from '../interactions/useMove';\nimport {usePress} from '../interactions/usePress';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface TableColumnResizeAria {\n /** Props for the visually hidden input element. */\n inputProps: DOMAttributes;\n /** Props for the resizer element. */\n resizerProps: DOMAttributes;\n /** Whether this column is currently being resized. */\n isResizing: boolean;\n}\n\nexport interface AriaTableColumnResizeProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n column: GridNode<T>;\n /** Aria label for the hidden input. Gets read when resizing. */\n 'aria-label': string;\n /**\n * Ref to the trigger if resizing was started from a column header menu. If it's provided, focus\n * will be returned there when resizing is done. If it isn't provided, it is assumed that the\n * resizer is visible at all time and keyboard resizing is started via pressing Enter on the\n * resizer and not on focus.\n */\n triggerRef?: RefObject<FocusableElement | null>;\n /** If resizing is disabled. */\n isDisabled?: boolean;\n /** Called when resizing starts. */\n onResizeStart?: (widths: Map<Key, ColumnSize>) => void;\n /** Called for every resize event that results in new column sizes. */\n onResize?: (widths: Map<Key, ColumnSize>) => void;\n /** Called when resizing ends. */\n onResizeEnd?: (widths: Map<Key, ColumnSize>) => void;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table column resizer element.\n *\n * @param props - Props for the resizer.\n * @param state - State for the table's resizable columns, as returned by\n * `useTableColumnResizeState`.\n * @param ref - The ref attached to the resizer's visually hidden input element.\n */\nexport function useTableColumnResize<T>(\n props: AriaTableColumnResizeProps<T>,\n state: TableColumnResizeState<T>,\n ref: RefObject<HTMLInputElement | null>\n): TableColumnResizeAria {\n let {\n column: item,\n triggerRef,\n isDisabled,\n onResizeStart,\n onResize,\n onResizeEnd,\n 'aria-label': ariaLabel\n } = props;\n const stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let id = useId();\n let isResizing = state.resizingColumn === item.key;\n let isResizingRef = useRef(isResizing);\n let lastSize = useRef<Map<Key, ColumnSize> | null>(null);\n let wasFocusedOnResizeStart = useRef(false);\n let editModeEnabled = state.tableState.isKeyboardNavigationDisabled;\n\n let {direction} = useLocale();\n\n let startResize = useCallback(\n item => {\n if (!isResizingRef.current) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n state.startResize(item.key);\n state.tableState.setKeyboardNavigationDisabled(true);\n onResizeStart?.(lastSize.current);\n }\n isResizingRef.current = true;\n },\n [state, onResizeStart]\n );\n\n let resize = useCallback(\n (item, newWidth) => {\n let sizes = state.updateResizedColumns(item.key, newWidth);\n onResize?.(sizes);\n lastSize.current = sizes;\n },\n [state, onResize]\n );\n\n let endResize = useCallback(\n item => {\n if (isResizingRef.current) {\n if (lastSize.current == null) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n }\n\n state.endResize();\n state.tableState.setKeyboardNavigationDisabled(false);\n onResizeEnd?.(lastSize.current);\n isResizingRef.current = false;\n\n if (triggerRef?.current && !wasFocusedOnResizeStart.current) {\n // switch focus back to the column header unless the resizer was already focused when resizing started.\n focusSafely(triggerRef.current);\n }\n }\n lastSize.current = null;\n },\n [state, triggerRef, onResizeEnd]\n );\n\n let {keyboardProps} = useKeyboard({\n onKeyDown: e => {\n if (editModeEnabled) {\n if (e.key === 'Escape' || e.key === 'Enter' || e.key === ' ' || e.key === 'Tab') {\n e.preventDefault();\n endResize(item);\n }\n } else {\n // Continue propagation on keydown events so they still bubbles to useSelectableCollection and are handled there\n e.continuePropagation();\n\n if (e.key === 'Enter') {\n startResize(item);\n }\n }\n }\n });\n\n const columnResizeWidthRef = useRef<number>(0);\n const {moveProps} = useMove({\n onMoveStart() {\n columnResizeWidthRef.current = state.getColumnWidth(item.key);\n startResize(item);\n },\n onMove(e) {\n let {deltaX, deltaY, pointerType} = e;\n if (direction === 'rtl') {\n deltaX *= -1;\n }\n if (pointerType === 'keyboard') {\n if (deltaY !== 0 && deltaX === 0) {\n deltaX = deltaY * -1;\n }\n deltaX *= 10;\n }\n // if moving up/down only, no need to resize\n if (deltaX !== 0) {\n columnResizeWidthRef.current += deltaX;\n resize(item, columnResizeWidthRef.current);\n }\n },\n onMoveEnd(e) {\n let {pointerType} = e;\n columnResizeWidthRef.current = 0;\n if (pointerType === 'mouse' || (pointerType === 'touch' && wasFocusedOnResizeStart.current)) {\n endResize(item);\n }\n }\n });\n\n let onKeyDown = useCallback(\n e => {\n if (editModeEnabled) {\n moveProps.onKeyDown?.(e);\n }\n },\n [editModeEnabled, moveProps]\n );\n\n let min = Math.floor(state.getColumnMinWidth(item.key));\n let max = Math.floor(state.getColumnMaxWidth(item.key));\n if (max === Infinity) {\n max = Number.MAX_SAFE_INTEGER;\n }\n let value = Math.floor(state.getColumnWidth(item.key));\n let modality: string | null = useInteractionModality();\n if (modality === 'virtual' && typeof window !== 'undefined' && 'ontouchstart' in window) {\n modality = 'touch';\n }\n let description =\n triggerRef?.current == null &&\n (modality === 'keyboard' || modality === 'virtual') &&\n !isResizing\n ? stringFormatter.format('resizerDescription')\n : undefined;\n let descriptionProps = useDescription(description);\n let ariaProps = {\n 'aria-label': ariaLabel,\n 'aria-orientation': 'horizontal' as 'horizontal',\n 'aria-labelledby': `${id} ${getColumnHeaderId(state.tableState, item.key)}`,\n 'aria-valuetext': stringFormatter.format('columnSize', {value}),\n type: 'range',\n min,\n max,\n value,\n ...descriptionProps\n };\n\n const focusInput = useCallback(() => {\n if (ref.current) {\n focusSafely(ref.current);\n }\n }, [ref]);\n\n let resizingColumn = state.resizingColumn;\n let prevResizingColumn = useRef<Key | null>(null);\n let startResizeEvent = useEffectEvent(startResize);\n useEffect(() => {\n if (\n prevResizingColumn.current !== resizingColumn &&\n resizingColumn != null &&\n resizingColumn === item.key\n ) {\n wasFocusedOnResizeStart.current = getActiveElement() === ref.current;\n startResizeEvent(item);\n // Delay focusing input until Android Chrome's delayed click after touchend happens: https://bugs.chromium.org/p/chromium/issues/detail?id=1150073\n let timeout = setTimeout(() => focusInput(), 0);\n // VoiceOver on iOS has problems focusing the input from a menu.\n let VOTimeout = setTimeout(focusInput, 400);\n return () => {\n clearTimeout(timeout);\n clearTimeout(VOTimeout);\n };\n }\n prevResizingColumn.current = resizingColumn;\n }, [resizingColumn, item, focusInput, ref]);\n\n let onChange = (e: ChangeEvent<HTMLInputElement>) => {\n let currentWidth = state.getColumnWidth(item.key);\n let nextValue = parseFloat(getEventTarget(e).value);\n\n if (nextValue > currentWidth) {\n nextValue = currentWidth + 10;\n } else {\n nextValue = currentWidth - 10;\n }\n resize(item, nextValue);\n };\n\n let {pressProps} = usePress({\n preventFocusOnPress: true,\n onPressStart: e => {\n if (e.ctrlKey || e.altKey || e.metaKey || e.shiftKey || e.pointerType === 'keyboard') {\n return;\n }\n if (e.pointerType === 'virtual' && state.resizingColumn != null) {\n endResize(item);\n return;\n }\n\n // Sometimes onPress won't trigger for quick taps on mobile so we want to focus the input so blurring away\n // can cancel resize mode for us.\n focusInput();\n\n // If resizer is always visible, mobile screenreader user can access the visually hidden resizer directly and thus we don't need\n // to handle a virtual click to start the resizer.\n if (e.pointerType !== 'virtual') {\n startResize(item);\n }\n },\n onPress: e => {\n if (\n ((e.pointerType === 'touch' && wasFocusedOnResizeStart.current) ||\n e.pointerType === 'mouse') &&\n state.resizingColumn != null\n ) {\n endResize(item);\n }\n }\n });\n let {visuallyHiddenProps} = useVisuallyHidden();\n\n return {\n resizerProps: mergeProps(keyboardProps, {...moveProps, onKeyDown}, pressProps, {\n style: {touchAction: 'none'}\n }),\n inputProps: mergeProps(\n visuallyHiddenProps,\n {\n id,\n onBlur: () => {\n endResize(item);\n },\n onChange,\n disabled: isDisabled\n },\n ariaProps\n ),\n isResizing\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnResize.cjs.map"}
|
|
1
|
+
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;;;CAUC;;;;;;;;;;;;;;;;AAsEM,SAAS,0CACd,KAAoC,EACpC,KAAgC,EAChC,GAAuC;IAEvC,IAAI,EACF,QAAQ,IAAI,cACZ,UAAU,cACV,UAAU,iBACV,aAAa,YACb,QAAQ,eACR,WAAW,EACX,cAAc,SAAS,EACxB,GAAG;IACJ,MAAM,kBAAkB,CAAA,GAAA,qDAA0B,EAAE,CAAA,GAAA,mDAAW,GAAG;IAClE,IAAI,KAAK,CAAA,GAAA,+BAAI;IACb,IAAI,aAAa,MAAM,cAAc,KAAK,KAAK,GAAG;IAClD,IAAI,gBAAgB,CAAA,GAAA,mBAAK,EAAE;IAC3B,IAAI,WAAW,CAAA,GAAA,mBAAK,EAA+B;IACnD,IAAI,0BAA0B,CAAA,GAAA,mBAAK,EAAE;IACrC,IAAI,kBAAkB,MAAM,UAAU,CAAC,4BAA4B;IACnE,0FAA0F;IAC1F,6CAA6C;IAC7C,IAAI,CAAC,iBAAiB,iBAAiB,GAAG,CAAA,GAAA,qBAAO,EAAE;IAEnD,IAAI,aAAC,SAAS,EAAC,GAAG,CAAA,GAAA,mCAAQ;IAE1B,IAAI,cAAc,CAAA,GAAA,wBAAU,EAC1B,CAAA;QACE,IAAI,CAAC,cAAc,OAAO,EAAE;YAC1B,SAAS,OAAO,GAAG,MAAM,oBAAoB,CAAC,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC,KAAK,GAAG;YACrF,MAAM,WAAW,CAAC,KAAK,GAAG;YAC1B,MAAM,UAAU,CAAC,6BAA6B,CAAC;YAC/C,gBAAgB,SAAS,OAAO;QAClC;QACA,cAAc,OAAO,GAAG;IAC1B,GACA;QAAC;QAAO;KAAc;IAGxB,IAAI,SAAS,CAAA,GAAA,wBAAU,EACrB,CAAC,MAAM;QACL,IAAI,QAAQ,MAAM,oBAAoB,CAAC,KAAK,GAAG,EAAE;QACjD,WAAW;QACX,SAAS,OAAO,GAAG;IACrB,GACA;QAAC;QAAO;KAAS;IAGnB,IAAI,YAAY,CAAA,GAAA,wBAAU,EACxB,CAAA;QACE,IAAI,cAAc,OAAO,EAAE;YACzB,IAAI,SAAS,OAAO,IAAI,MACtB,SAAS,OAAO,GAAG,MAAM,oBAAoB,CAAC,KAAK,GAAG,EAAE,MAAM,cAAc,CAAC,KAAK,GAAG;YAGvF,MAAM,SAAS;YACf,MAAM,UAAU,CAAC,6BAA6B,CAAC;YAC/C,cAAc,SAAS,OAAO;YAC9B,cAAc,OAAO,GAAG;YAExB,IAAI,YAAY,WAAW,CAAC,wBAAwB,OAAO,EACzD,uGAAuG;YACvG,CAAA,GAAA,qCAAU,EAAE,WAAW,OAAO;QAElC;QACA,SAAS,OAAO,GAAG;IACrB,GACA;QAAC;QAAO;QAAY;KAAY;IAGlC,IAAI,iBAAiB;QACnB,IAAI,iBAAiB;YACnB,UAAU;YACV;QACF;QACA,OAAO;IACT;IAEA,IAAI,iBAAC,aAAa,EAAC,GAAG,CAAA,GAAA,qCAAU,EAAE;QAChC,WAAW;YACT,QAAQ;gBACN,OAAO;YACT;YACA,OAAO;gBACL,IAAI,iBACF,UAAU;qBAEV,YAAY;YAEhB;YACA,KAAK;gBACH,OAAO;YACT;YACA,KAAK;gBACH,OAAO;YACT;QACF;IACF;IAEA,MAAM,uBAAuB,CAAA,GAAA,mBAAK,EAAU;IAC5C,MAAM,aAAC,SAAS,EAAC,GAAG,CAAA,GAAA,iCAAM,EAAE;QAC1B,aAAY,CAAC;YACX,qBAAqB,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,GAAG;YAC5D,IAAI,EAAE,WAAW,KAAK,SACpB,iBAAiB;YAEnB,YAAY;QACd;QACA,QAAO,CAAC;YACN,IAAI,UAAC,MAAM,UAAE,MAAM,eAAE,WAAW,EAAC,GAAG;YACpC,IAAI,cAAc,OAChB,UAAU;YAEZ,IAAI,gBAAgB,YAAY;gBAC9B,IAAI,WAAW,KAAK,WAAW,GAC7B,SAAS,SAAS;gBAEpB,UAAU;YACZ;YACA,4CAA4C;YAC5C,IAAI,WAAW,GAAG;gBAChB,qBAAqB,OAAO,IAAI;gBAChC,OAAO,MAAM,qBAAqB,OAAO;YAC3C;QACF;QACA,WAAU,CAAC;YACT,IAAI,eAAC,WAAW,EAAC,GAAG;YACpB,qBAAqB,OAAO,GAAG;YAC/B,iBAAiB;YACjB,IAAI,gBAAgB,WAAY,gBAAgB,WAAW,wBAAwB,OAAO,EACxF,UAAU;QAEd;IACF;IAEA,IAAI,YAAY,CAAA,GAAA,wBAAU,EACxB,CAAA;QACE,IAAI,iBACF,UAAU,SAAS,GAAG;IAE1B,GACA;QAAC;QAAiB;KAAU;IAG9B,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,iBAAiB,CAAC,KAAK,GAAG;IACrD,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,iBAAiB,CAAC,KAAK,GAAG;IACrD,IAAI,QAAQ,UACV,MAAM,OAAO,gBAAgB;IAE/B,IAAI,QAAQ,KAAK,KAAK,CAAC,MAAM,cAAc,CAAC,KAAK,GAAG;IACpD,IAAI,WAA0B,CAAA,GAAA,gDAAqB;IACnD,IAAI,aAAa,aAAa,OAAO,WAAW,eAAe,kBAAkB,QAC/E,WAAW;IAEb,IAAI,cACF,gDAAgD;IAChD,YAAY,WAAW,QACtB,CAAA,aAAa,cAAc,aAAa,SAAQ,KACjD,CAAC,aACG,gBAAgB,MAAM,CAAC,wBACvB;IACN,IAAI,mBAAmB,CAAA,GAAA,wCAAa,EAAE;IACtC,IAAI,YAAY;QACd,cAAc;QACd,oBAAoB;QACpB,mBAAmB,GAAG,GAAG,CAAC,EAAE,CAAA,GAAA,2CAAgB,EAAE,MAAM,UAAU,EAAE,KAAK,GAAG,GAAG;QAC3E,kBAAkB,gBAAgB,MAAM,CAAC,cAAc;mBAAC;QAAK;QAC7D,MAAM;aACN;aACA;eACA;QACA,GAAG,gBAAgB;IACrB;IAEA,MAAM,aAAa,CAAA,GAAA,wBAAU,EAAE;QAC7B,IAAI,IAAI,OAAO,EACb,CAAA,GAAA,qCAAU,EAAE,IAAI,OAAO;IAE3B,GAAG;QAAC;KAAI;IAER,IAAI,iBAAiB,MAAM,cAAc;IACzC,IAAI,qBAAqB,CAAA,GAAA,mBAAK,EAAc;IAC5C,IAAI,mBAAmB,CAAA,GAAA,wCAAa,EAAE;IACtC,CAAA,GAAA,sBAAQ,EAAE;QACR,IACE,mBAAmB,OAAO,KAAK,kBAC/B,kBAAkB,QAClB,mBAAmB,KAAK,GAAG,EAC3B;YACA,wBAAwB,OAAO,GAAG,CAAA,GAAA,0CAAe,QAAQ,IAAI,OAAO;YACpE,iBAAiB;YACjB,kJAAkJ;YAClJ,IAAI,UAAU,WAAW,IAAM,cAAc;YAC7C,gEAAgE;YAChE,IAAI,YAAY,WAAW,YAAY;YACvC,OAAO;gBACL,aAAa;gBACb,aAAa;YACf;QACF;QACA,mBAAmB,OAAO,GAAG;IAC/B,GAAG;QAAC;QAAgB;QAAM;QAAY;KAAI;IAE1C,IAAI,WAAW,CAAC;QACd,IAAI,eAAe,MAAM,cAAc,CAAC,KAAK,GAAG;QAChD,IAAI,YAAY,WAAW,CAAA,GAAA,wCAAa,EAAE,GAAG,KAAK;QAElD,IAAI,YAAY,cACd,YAAY,eAAe;aAE3B,YAAY,eAAe;QAE7B,OAAO,MAAM;IACf;IAEA,IAAI,cAAC,UAAU,EAAC,GAAG,CAAA,GAAA,kCAAO,EAAE;QAC1B,qBAAqB;QACrB,cAAc,CAAA;YACZ,IAAI,EAAE,OAAO,IAAI,EAAE,MAAM,IAAI,EAAE,OAAO,IAAI,EAAE,QAAQ,IAAI,EAAE,WAAW,KAAK,YACxE;YAEF,IAAI,EAAE,WAAW,KAAK,aAAa,MAAM,cAAc,IAAI,MAAM;gBAC/D,UAAU;gBACV;YACF;YAEA,0GAA0G;YAC1G,iCAAiC;YACjC;YAEA,gIAAgI;YAChI,kDAAkD;YAClD,IAAI,EAAE,WAAW,KAAK,WACpB,YAAY;QAEhB;QACA,SAAS,CAAA;YACP,IACE,AAAC,CAAA,AAAC,EAAE,WAAW,KAAK,WAAW,wBAAwB,OAAO,IAC5D,EAAE,WAAW,KAAK,OAAM,KAC1B,MAAM,cAAc,IAAI,MAExB,UAAU;QAEd;IACF;IACA,IAAI,uBAAC,mBAAmB,EAAC,GAAG,CAAA,GAAA,2CAAgB;IAE5C,OAAO;QACL,cAAc,CAAA,GAAA,oCAAS,EAAE,eAAe;YAAC,GAAG,SAAS;uBAAE;QAAS,GAAG,YAAY;YAC7E,OAAO;gBAAC,aAAa;YAAM;QAC7B;QACA,YAAY,CAAA,GAAA,oCAAS,EACnB,qBACA,gDAAgD;QAChD;gBACE;YACA,QAAQ;gBACN,UAAU;YACZ;sBACA;YACA,UAAU;QACZ,GACA;oBAEF;yBACA;IACF;AACF","sources":["packages/react-aria/src/table/useTableColumnResize.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {ChangeEvent, useCallback, useEffect, useRef, useState} from 'react';\nimport {ColumnSize} from 'react-stately/useTableState';\nimport {DOMAttributes, FocusableElement, Key, RefObject} from '@react-types/shared';\nimport {focusSafely} from '../interactions/focusSafely';\nimport {getActiveElement, getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableColumnResizeState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffectEvent} from '../utils/useEffectEvent';\nimport {useId} from '../utils/useId';\nimport {useInteractionModality} from '../interactions/useFocusVisible';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {useMove} from '../interactions/useMove';\nimport {usePress} from '../interactions/usePress';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface TableColumnResizeAria {\n /** Props for the visually hidden input element. */\n inputProps: DOMAttributes;\n /** Props for the resizer element. */\n resizerProps: DOMAttributes;\n /** Whether this column is currently being resized. */\n isResizing: boolean;\n /**\n * Whether this column is currently being resized via a mouse drag (e.g. to render a cursor\n * overlay).\n */\n isMouseResizing: boolean;\n}\n\nexport interface AriaTableColumnResizeProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n column: GridNode<T>;\n /** Aria label for the hidden input. Gets read when resizing. */\n 'aria-label': string;\n /**\n * Ref to the trigger if resizing was started from a column header menu. If it's provided, focus\n * will be returned there when resizing is done. If it isn't provided, it is assumed that the\n * resizer is visible at all time and keyboard resizing is started via pressing Enter on the\n * resizer and not on focus.\n */\n triggerRef?: RefObject<FocusableElement | null>;\n /** If resizing is disabled. */\n isDisabled?: boolean;\n /** Called when resizing starts. */\n onResizeStart?: (widths: Map<Key, ColumnSize>) => void;\n /** Called for every resize event that results in new column sizes. */\n onResize?: (widths: Map<Key, ColumnSize>) => void;\n /** Called when resizing ends. */\n onResizeEnd?: (widths: Map<Key, ColumnSize>) => void;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table column resizer element.\n *\n * @param props - Props for the resizer.\n * @param state - State for the table's resizable columns, as returned by\n * `useTableColumnResizeState`.\n * @param ref - The ref attached to the resizer's visually hidden input element.\n */\nexport function useTableColumnResize<T>(\n props: AriaTableColumnResizeProps<T>,\n state: TableColumnResizeState<T>,\n ref: RefObject<HTMLInputElement | null>\n): TableColumnResizeAria {\n let {\n column: item,\n triggerRef,\n isDisabled,\n onResizeStart,\n onResize,\n onResizeEnd,\n 'aria-label': ariaLabel\n } = props;\n const stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let id = useId();\n let isResizing = state.resizingColumn === item.key;\n let isResizingRef = useRef(isResizing);\n let lastSize = useRef<Map<Key, ColumnSize> | null>(null);\n let wasFocusedOnResizeStart = useRef(false);\n let editModeEnabled = state.tableState.isKeyboardNavigationDisabled;\n // Whether a mouse drag-resize is active. Set on the first move (not on press) so a cursor\n // overlay only mounts during an actual drag.\n let [isMouseResizing, setMouseResizing] = useState(false);\n\n let {direction} = useLocale();\n\n let startResize = useCallback(\n item => {\n if (!isResizingRef.current) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n state.startResize(item.key);\n state.tableState.setKeyboardNavigationDisabled(true);\n onResizeStart?.(lastSize.current);\n }\n isResizingRef.current = true;\n },\n [state, onResizeStart]\n );\n\n let resize = useCallback(\n (item, newWidth) => {\n let sizes = state.updateResizedColumns(item.key, newWidth);\n onResize?.(sizes);\n lastSize.current = sizes;\n },\n [state, onResize]\n );\n\n let endResize = useCallback(\n item => {\n if (isResizingRef.current) {\n if (lastSize.current == null) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n }\n\n state.endResize();\n state.tableState.setKeyboardNavigationDisabled(false);\n onResizeEnd?.(lastSize.current);\n isResizingRef.current = false;\n\n if (triggerRef?.current && !wasFocusedOnResizeStart.current) {\n // switch focus back to the column header unless the resizer was already focused when resizing started.\n focusSafely(triggerRef.current);\n }\n }\n lastSize.current = null;\n },\n [state, triggerRef, onResizeEnd]\n );\n\n let endResizeEvent = () => {\n if (editModeEnabled) {\n endResize(item);\n return;\n }\n return false;\n };\n\n let {keyboardProps} = useKeyboard({\n shortcuts: {\n Escape: () => {\n return endResizeEvent();\n },\n Enter: () => {\n if (editModeEnabled) {\n endResize(item);\n } else {\n startResize(item);\n }\n },\n ' ': () => {\n return endResizeEvent();\n },\n Tab: () => {\n return endResizeEvent();\n }\n }\n });\n\n const columnResizeWidthRef = useRef<number>(0);\n const {moveProps} = useMove({\n onMoveStart(e) {\n columnResizeWidthRef.current = state.getColumnWidth(item.key);\n if (e.pointerType === 'mouse') {\n setMouseResizing(true);\n }\n startResize(item);\n },\n onMove(e) {\n let {deltaX, deltaY, pointerType} = e;\n if (direction === 'rtl') {\n deltaX *= -1;\n }\n if (pointerType === 'keyboard') {\n if (deltaY !== 0 && deltaX === 0) {\n deltaX = deltaY * -1;\n }\n deltaX *= 10;\n }\n // if moving up/down only, no need to resize\n if (deltaX !== 0) {\n columnResizeWidthRef.current += deltaX;\n resize(item, columnResizeWidthRef.current);\n }\n },\n onMoveEnd(e) {\n let {pointerType} = e;\n columnResizeWidthRef.current = 0;\n setMouseResizing(false);\n if (pointerType === 'mouse' || (pointerType === 'touch' && wasFocusedOnResizeStart.current)) {\n endResize(item);\n }\n }\n });\n\n let onKeyDown = useCallback(\n e => {\n if (editModeEnabled) {\n moveProps.onKeyDown?.(e);\n }\n },\n [editModeEnabled, moveProps]\n );\n\n let min = Math.floor(state.getColumnMinWidth(item.key));\n let max = Math.floor(state.getColumnMaxWidth(item.key));\n if (max === Infinity) {\n max = Number.MAX_SAFE_INTEGER;\n }\n let value = Math.floor(state.getColumnWidth(item.key));\n let modality: string | null = useInteractionModality();\n if (modality === 'virtual' && typeof window !== 'undefined' && 'ontouchstart' in window) {\n modality = 'touch';\n }\n let description =\n // oxlint-disable-next-line react/react-compiler\n triggerRef?.current == null &&\n (modality === 'keyboard' || modality === 'virtual') &&\n !isResizing\n ? stringFormatter.format('resizerDescription')\n : undefined;\n let descriptionProps = useDescription(description);\n let ariaProps = {\n 'aria-label': ariaLabel,\n 'aria-orientation': 'horizontal' as 'horizontal',\n 'aria-labelledby': `${id} ${getColumnHeaderId(state.tableState, item.key)}`,\n 'aria-valuetext': stringFormatter.format('columnSize', {value}),\n type: 'range',\n min,\n max,\n value,\n ...descriptionProps\n };\n\n const focusInput = useCallback(() => {\n if (ref.current) {\n focusSafely(ref.current);\n }\n }, [ref]);\n\n let resizingColumn = state.resizingColumn;\n let prevResizingColumn = useRef<Key | null>(null);\n let startResizeEvent = useEffectEvent(startResize);\n useEffect(() => {\n if (\n prevResizingColumn.current !== resizingColumn &&\n resizingColumn != null &&\n resizingColumn === item.key\n ) {\n wasFocusedOnResizeStart.current = getActiveElement() === ref.current;\n startResizeEvent(item);\n // Delay focusing input until Android Chrome's delayed click after touchend happens: https://bugs.chromium.org/p/chromium/issues/detail?id=1150073\n let timeout = setTimeout(() => focusInput(), 0);\n // VoiceOver on iOS has problems focusing the input from a menu.\n let VOTimeout = setTimeout(focusInput, 400);\n return () => {\n clearTimeout(timeout);\n clearTimeout(VOTimeout);\n };\n }\n prevResizingColumn.current = resizingColumn;\n }, [resizingColumn, item, focusInput, ref]);\n\n let onChange = (e: ChangeEvent<HTMLInputElement>) => {\n let currentWidth = state.getColumnWidth(item.key);\n let nextValue = parseFloat(getEventTarget(e).value);\n\n if (nextValue > currentWidth) {\n nextValue = currentWidth + 10;\n } else {\n nextValue = currentWidth - 10;\n }\n resize(item, nextValue);\n };\n\n let {pressProps} = usePress({\n preventFocusOnPress: true,\n onPressStart: e => {\n if (e.ctrlKey || e.altKey || e.metaKey || e.shiftKey || e.pointerType === 'keyboard') {\n return;\n }\n if (e.pointerType === 'virtual' && state.resizingColumn != null) {\n endResize(item);\n return;\n }\n\n // Sometimes onPress won't trigger for quick taps on mobile so we want to focus the input so blurring away\n // can cancel resize mode for us.\n focusInput();\n\n // If resizer is always visible, mobile screenreader user can access the visually hidden resizer directly and thus we don't need\n // to handle a virtual click to start the resizer.\n if (e.pointerType !== 'virtual') {\n startResize(item);\n }\n },\n onPress: e => {\n if (\n ((e.pointerType === 'touch' && wasFocusedOnResizeStart.current) ||\n e.pointerType === 'mouse') &&\n state.resizingColumn != null\n ) {\n endResize(item);\n }\n }\n });\n let {visuallyHiddenProps} = useVisuallyHidden();\n\n return {\n resizerProps: mergeProps(keyboardProps, {...moveProps, onKeyDown}, pressProps, {\n style: {touchAction: 'none'}\n }),\n inputProps: mergeProps(\n visuallyHiddenProps,\n // oxlint-disable-next-line react/react-compiler\n {\n id,\n onBlur: () => {\n endResize(item);\n },\n onChange,\n disabled: isDisabled\n },\n ariaProps\n ),\n isResizing,\n isMouseResizing\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnResize.cjs.map"}
|
|
@@ -13,7 +13,7 @@ import {useLocalizedStringFormatter as $1adfa757ef3cd864$export$f12b703ca79dfbb1
|
|
|
13
13
|
import {useMove as $e7c7f5ffbc8157af$export$36da96379f79f245} from "../interactions/useMove.js";
|
|
14
14
|
import {usePress as $a87f4c40785e693b$export$45712eceda6fad21} from "../interactions/usePress.js";
|
|
15
15
|
import {useVisuallyHidden as $6947385881e3ae0e$export$a966af930f325cab} from "../visually-hidden/VisuallyHidden.js";
|
|
16
|
-
import {useRef as $e1mcl$useRef, useCallback as $e1mcl$useCallback, useEffect as $e1mcl$useEffect} from "react";
|
|
16
|
+
import {useRef as $e1mcl$useRef, useState as $e1mcl$useState, useCallback as $e1mcl$useCallback, useEffect as $e1mcl$useEffect} from "react";
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
function $parcel$interopDefault(a) {
|
|
@@ -54,6 +54,9 @@ function $966c74f4398bece2$export$52994e973806c219(props, state, ref) {
|
|
|
54
54
|
let lastSize = (0, $e1mcl$useRef)(null);
|
|
55
55
|
let wasFocusedOnResizeStart = (0, $e1mcl$useRef)(false);
|
|
56
56
|
let editModeEnabled = state.tableState.isKeyboardNavigationDisabled;
|
|
57
|
+
// Whether a mouse drag-resize is active. Set on the first move (not on press) so a cursor
|
|
58
|
+
// overlay only mounts during an actual drag.
|
|
59
|
+
let [isMouseResizing, setMouseResizing] = (0, $e1mcl$useState)(false);
|
|
57
60
|
let { direction: direction } = (0, $4defb058003b3e05$export$43bb16f9c6d9e3f7)();
|
|
58
61
|
let startResize = (0, $e1mcl$useCallback)((item)=>{
|
|
59
62
|
if (!isResizingRef.current) {
|
|
@@ -91,24 +94,35 @@ function $966c74f4398bece2$export$52994e973806c219(props, state, ref) {
|
|
|
91
94
|
triggerRef,
|
|
92
95
|
onResizeEnd
|
|
93
96
|
]);
|
|
97
|
+
let endResizeEvent = ()=>{
|
|
98
|
+
if (editModeEnabled) {
|
|
99
|
+
endResize(item);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
return false;
|
|
103
|
+
};
|
|
94
104
|
let { keyboardProps: keyboardProps } = (0, $bf74df7506f65576$export$8f71654801c2f7cd)({
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
+
shortcuts: {
|
|
106
|
+
Escape: ()=>{
|
|
107
|
+
return endResizeEvent();
|
|
108
|
+
},
|
|
109
|
+
Enter: ()=>{
|
|
110
|
+
if (editModeEnabled) endResize(item);
|
|
111
|
+
else startResize(item);
|
|
112
|
+
},
|
|
113
|
+
' ': ()=>{
|
|
114
|
+
return endResizeEvent();
|
|
115
|
+
},
|
|
116
|
+
Tab: ()=>{
|
|
117
|
+
return endResizeEvent();
|
|
105
118
|
}
|
|
106
119
|
}
|
|
107
120
|
});
|
|
108
121
|
const columnResizeWidthRef = (0, $e1mcl$useRef)(0);
|
|
109
122
|
const { moveProps: moveProps } = (0, $e7c7f5ffbc8157af$export$36da96379f79f245)({
|
|
110
|
-
onMoveStart () {
|
|
123
|
+
onMoveStart (e) {
|
|
111
124
|
columnResizeWidthRef.current = state.getColumnWidth(item.key);
|
|
125
|
+
if (e.pointerType === 'mouse') setMouseResizing(true);
|
|
112
126
|
startResize(item);
|
|
113
127
|
},
|
|
114
128
|
onMove (e) {
|
|
@@ -127,6 +141,7 @@ function $966c74f4398bece2$export$52994e973806c219(props, state, ref) {
|
|
|
127
141
|
onMoveEnd (e) {
|
|
128
142
|
let { pointerType: pointerType } = e;
|
|
129
143
|
columnResizeWidthRef.current = 0;
|
|
144
|
+
setMouseResizing(false);
|
|
130
145
|
if (pointerType === 'mouse' || pointerType === 'touch' && wasFocusedOnResizeStart.current) endResize(item);
|
|
131
146
|
}
|
|
132
147
|
});
|
|
@@ -143,7 +158,8 @@ function $966c74f4398bece2$export$52994e973806c219(props, state, ref) {
|
|
|
143
158
|
let value = Math.floor(state.getColumnWidth(item.key));
|
|
144
159
|
let modality = (0, $b50b1cc8a843ace7$export$98e20ec92f614cfe)();
|
|
145
160
|
if (modality === 'virtual' && typeof window !== 'undefined' && 'ontouchstart' in window) modality = 'touch';
|
|
146
|
-
let description =
|
|
161
|
+
let description = // oxlint-disable-next-line react/react-compiler
|
|
162
|
+
(triggerRef === null || triggerRef === void 0 ? void 0 : triggerRef.current) == null && (modality === 'keyboard' || modality === 'virtual') && !isResizing ? stringFormatter.format('resizerDescription') : undefined;
|
|
147
163
|
let descriptionProps = (0, $fe0741815591a8ca$export$f8aeda7b10753fa1)(description);
|
|
148
164
|
let ariaProps = {
|
|
149
165
|
'aria-label': ariaLabel,
|
|
@@ -222,7 +238,8 @@ function $966c74f4398bece2$export$52994e973806c219(props, state, ref) {
|
|
|
222
238
|
touchAction: 'none'
|
|
223
239
|
}
|
|
224
240
|
}),
|
|
225
|
-
inputProps: (0, $64c36edd757dfa16$export$9d1611c77c2fe928)(visuallyHiddenProps,
|
|
241
|
+
inputProps: (0, $64c36edd757dfa16$export$9d1611c77c2fe928)(visuallyHiddenProps, // oxlint-disable-next-line react/react-compiler
|
|
242
|
+
{
|
|
226
243
|
id: id,
|
|
227
244
|
onBlur: ()=>{
|
|
228
245
|
endResize(item);
|
|
@@ -230,7 +247,8 @@ function $966c74f4398bece2$export$52994e973806c219(props, state, ref) {
|
|
|
230
247
|
onChange: onChange,
|
|
231
248
|
disabled: isDisabled
|
|
232
249
|
}, ariaProps),
|
|
233
|
-
isResizing: isResizing
|
|
250
|
+
isResizing: isResizing,
|
|
251
|
+
isMouseResizing: isMouseResizing
|
|
234
252
|
};
|
|
235
253
|
}
|
|
236
254
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"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","sources":["packages/react-aria/src/table/useTableColumnResize.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {ChangeEvent, useCallback, useEffect, useRef} from 'react';\nimport {ColumnSize} from 'react-stately/useTableState';\nimport {DOMAttributes, FocusableElement, Key, RefObject} from '@react-types/shared';\nimport {focusSafely} from '../interactions/focusSafely';\nimport {getActiveElement, getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableColumnResizeState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffectEvent} from '../utils/useEffectEvent';\nimport {useId} from '../utils/useId';\nimport {useInteractionModality} from '../interactions/useFocusVisible';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {useMove} from '../interactions/useMove';\nimport {usePress} from '../interactions/usePress';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface TableColumnResizeAria {\n /** Props for the visually hidden input element. */\n inputProps: DOMAttributes;\n /** Props for the resizer element. */\n resizerProps: DOMAttributes;\n /** Whether this column is currently being resized. */\n isResizing: boolean;\n}\n\nexport interface AriaTableColumnResizeProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n column: GridNode<T>;\n /** Aria label for the hidden input. Gets read when resizing. */\n 'aria-label': string;\n /**\n * Ref to the trigger if resizing was started from a column header menu. If it's provided, focus\n * will be returned there when resizing is done. If it isn't provided, it is assumed that the\n * resizer is visible at all time and keyboard resizing is started via pressing Enter on the\n * resizer and not on focus.\n */\n triggerRef?: RefObject<FocusableElement | null>;\n /** If resizing is disabled. */\n isDisabled?: boolean;\n /** Called when resizing starts. */\n onResizeStart?: (widths: Map<Key, ColumnSize>) => void;\n /** Called for every resize event that results in new column sizes. */\n onResize?: (widths: Map<Key, ColumnSize>) => void;\n /** Called when resizing ends. */\n onResizeEnd?: (widths: Map<Key, ColumnSize>) => void;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table column resizer element.\n *\n * @param props - Props for the resizer.\n * @param state - State for the table's resizable columns, as returned by\n * `useTableColumnResizeState`.\n * @param ref - The ref attached to the resizer's visually hidden input element.\n */\nexport function useTableColumnResize<T>(\n props: AriaTableColumnResizeProps<T>,\n state: TableColumnResizeState<T>,\n ref: RefObject<HTMLInputElement | null>\n): TableColumnResizeAria {\n let {\n column: item,\n triggerRef,\n isDisabled,\n onResizeStart,\n onResize,\n onResizeEnd,\n 'aria-label': ariaLabel\n } = props;\n const stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let id = useId();\n let isResizing = state.resizingColumn === item.key;\n let isResizingRef = useRef(isResizing);\n let lastSize = useRef<Map<Key, ColumnSize> | null>(null);\n let wasFocusedOnResizeStart = useRef(false);\n let editModeEnabled = state.tableState.isKeyboardNavigationDisabled;\n\n let {direction} = useLocale();\n\n let startResize = useCallback(\n item => {\n if (!isResizingRef.current) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n state.startResize(item.key);\n state.tableState.setKeyboardNavigationDisabled(true);\n onResizeStart?.(lastSize.current);\n }\n isResizingRef.current = true;\n },\n [state, onResizeStart]\n );\n\n let resize = useCallback(\n (item, newWidth) => {\n let sizes = state.updateResizedColumns(item.key, newWidth);\n onResize?.(sizes);\n lastSize.current = sizes;\n },\n [state, onResize]\n );\n\n let endResize = useCallback(\n item => {\n if (isResizingRef.current) {\n if (lastSize.current == null) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n }\n\n state.endResize();\n state.tableState.setKeyboardNavigationDisabled(false);\n onResizeEnd?.(lastSize.current);\n isResizingRef.current = false;\n\n if (triggerRef?.current && !wasFocusedOnResizeStart.current) {\n // switch focus back to the column header unless the resizer was already focused when resizing started.\n focusSafely(triggerRef.current);\n }\n }\n lastSize.current = null;\n },\n [state, triggerRef, onResizeEnd]\n );\n\n let {keyboardProps} = useKeyboard({\n onKeyDown: e => {\n if (editModeEnabled) {\n if (e.key === 'Escape' || e.key === 'Enter' || e.key === ' ' || e.key === 'Tab') {\n e.preventDefault();\n endResize(item);\n }\n } else {\n // Continue propagation on keydown events so they still bubbles to useSelectableCollection and are handled there\n e.continuePropagation();\n\n if (e.key === 'Enter') {\n startResize(item);\n }\n }\n }\n });\n\n const columnResizeWidthRef = useRef<number>(0);\n const {moveProps} = useMove({\n onMoveStart() {\n columnResizeWidthRef.current = state.getColumnWidth(item.key);\n startResize(item);\n },\n onMove(e) {\n let {deltaX, deltaY, pointerType} = e;\n if (direction === 'rtl') {\n deltaX *= -1;\n }\n if (pointerType === 'keyboard') {\n if (deltaY !== 0 && deltaX === 0) {\n deltaX = deltaY * -1;\n }\n deltaX *= 10;\n }\n // if moving up/down only, no need to resize\n if (deltaX !== 0) {\n columnResizeWidthRef.current += deltaX;\n resize(item, columnResizeWidthRef.current);\n }\n },\n onMoveEnd(e) {\n let {pointerType} = e;\n columnResizeWidthRef.current = 0;\n if (pointerType === 'mouse' || (pointerType === 'touch' && wasFocusedOnResizeStart.current)) {\n endResize(item);\n }\n }\n });\n\n let onKeyDown = useCallback(\n e => {\n if (editModeEnabled) {\n moveProps.onKeyDown?.(e);\n }\n },\n [editModeEnabled, moveProps]\n );\n\n let min = Math.floor(state.getColumnMinWidth(item.key));\n let max = Math.floor(state.getColumnMaxWidth(item.key));\n if (max === Infinity) {\n max = Number.MAX_SAFE_INTEGER;\n }\n let value = Math.floor(state.getColumnWidth(item.key));\n let modality: string | null = useInteractionModality();\n if (modality === 'virtual' && typeof window !== 'undefined' && 'ontouchstart' in window) {\n modality = 'touch';\n }\n let description =\n triggerRef?.current == null &&\n (modality === 'keyboard' || modality === 'virtual') &&\n !isResizing\n ? stringFormatter.format('resizerDescription')\n : undefined;\n let descriptionProps = useDescription(description);\n let ariaProps = {\n 'aria-label': ariaLabel,\n 'aria-orientation': 'horizontal' as 'horizontal',\n 'aria-labelledby': `${id} ${getColumnHeaderId(state.tableState, item.key)}`,\n 'aria-valuetext': stringFormatter.format('columnSize', {value}),\n type: 'range',\n min,\n max,\n value,\n ...descriptionProps\n };\n\n const focusInput = useCallback(() => {\n if (ref.current) {\n focusSafely(ref.current);\n }\n }, [ref]);\n\n let resizingColumn = state.resizingColumn;\n let prevResizingColumn = useRef<Key | null>(null);\n let startResizeEvent = useEffectEvent(startResize);\n useEffect(() => {\n if (\n prevResizingColumn.current !== resizingColumn &&\n resizingColumn != null &&\n resizingColumn === item.key\n ) {\n wasFocusedOnResizeStart.current = getActiveElement() === ref.current;\n startResizeEvent(item);\n // Delay focusing input until Android Chrome's delayed click after touchend happens: https://bugs.chromium.org/p/chromium/issues/detail?id=1150073\n let timeout = setTimeout(() => focusInput(), 0);\n // VoiceOver on iOS has problems focusing the input from a menu.\n let VOTimeout = setTimeout(focusInput, 400);\n return () => {\n clearTimeout(timeout);\n clearTimeout(VOTimeout);\n };\n }\n prevResizingColumn.current = resizingColumn;\n }, [resizingColumn, item, focusInput, ref]);\n\n let onChange = (e: ChangeEvent<HTMLInputElement>) => {\n let currentWidth = state.getColumnWidth(item.key);\n let nextValue = parseFloat(getEventTarget(e).value);\n\n if (nextValue > currentWidth) {\n nextValue = currentWidth + 10;\n } else {\n nextValue = currentWidth - 10;\n }\n resize(item, nextValue);\n };\n\n let {pressProps} = usePress({\n preventFocusOnPress: true,\n onPressStart: e => {\n if (e.ctrlKey || e.altKey || e.metaKey || e.shiftKey || e.pointerType === 'keyboard') {\n return;\n }\n if (e.pointerType === 'virtual' && state.resizingColumn != null) {\n endResize(item);\n return;\n }\n\n // Sometimes onPress won't trigger for quick taps on mobile so we want to focus the input so blurring away\n // can cancel resize mode for us.\n focusInput();\n\n // If resizer is always visible, mobile screenreader user can access the visually hidden resizer directly and thus we don't need\n // to handle a virtual click to start the resizer.\n if (e.pointerType !== 'virtual') {\n startResize(item);\n }\n },\n onPress: e => {\n if (\n ((e.pointerType === 'touch' && wasFocusedOnResizeStart.current) ||\n e.pointerType === 'mouse') &&\n state.resizingColumn != null\n ) {\n endResize(item);\n }\n }\n });\n let {visuallyHiddenProps} = useVisuallyHidden();\n\n return {\n resizerProps: mergeProps(keyboardProps, {...moveProps, onKeyDown}, pressProps, {\n style: {touchAction: 'none'}\n }),\n inputProps: mergeProps(\n visuallyHiddenProps,\n {\n id,\n onBlur: () => {\n endResize(item);\n },\n onChange,\n disabled: isDisabled\n },\n ariaProps\n ),\n isResizing\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnResize.js.map"}
|
|
1
|
+
{"mappings":"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","sources":["packages/react-aria/src/table/useTableColumnResize.ts"],"sourcesContent":["/*\n * Copyright 2020 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 {ChangeEvent, useCallback, useEffect, useRef, useState} from 'react';\nimport {ColumnSize} from 'react-stately/useTableState';\nimport {DOMAttributes, FocusableElement, Key, RefObject} from '@react-types/shared';\nimport {focusSafely} from '../interactions/focusSafely';\nimport {getActiveElement, getEventTarget} from '../utils/shadowdom/DOMFunctions';\nimport {getColumnHeaderId} from './utils';\nimport {GridNode} from 'react-stately/private/grid/GridCollection';\nimport intlMessages from '../../intl/table/*.json';\nimport {mergeProps} from '../utils/mergeProps';\nimport {TableColumnResizeState} from 'react-stately/useTableState';\nimport {useDescription} from '../utils/useDescription';\nimport {useEffectEvent} from '../utils/useEffectEvent';\nimport {useId} from '../utils/useId';\nimport {useInteractionModality} from '../interactions/useFocusVisible';\nimport {useKeyboard} from '../interactions/useKeyboard';\nimport {useLocale} from '../i18n/I18nProvider';\nimport {useLocalizedStringFormatter} from '../i18n/useLocalizedStringFormatter';\nimport {useMove} from '../interactions/useMove';\nimport {usePress} from '../interactions/usePress';\nimport {useVisuallyHidden} from '../visually-hidden/VisuallyHidden';\n\nexport interface TableColumnResizeAria {\n /** Props for the visually hidden input element. */\n inputProps: DOMAttributes;\n /** Props for the resizer element. */\n resizerProps: DOMAttributes;\n /** Whether this column is currently being resized. */\n isResizing: boolean;\n /**\n * Whether this column is currently being resized via a mouse drag (e.g. to render a cursor\n * overlay).\n */\n isMouseResizing: boolean;\n}\n\nexport interface AriaTableColumnResizeProps<T> {\n /**\n * An object representing the [column header](https://www.w3.org/TR/wai-aria-1.1/#columnheader).\n * Contains all the relevant information that makes up the column header.\n */\n column: GridNode<T>;\n /** Aria label for the hidden input. Gets read when resizing. */\n 'aria-label': string;\n /**\n * Ref to the trigger if resizing was started from a column header menu. If it's provided, focus\n * will be returned there when resizing is done. If it isn't provided, it is assumed that the\n * resizer is visible at all time and keyboard resizing is started via pressing Enter on the\n * resizer and not on focus.\n */\n triggerRef?: RefObject<FocusableElement | null>;\n /** If resizing is disabled. */\n isDisabled?: boolean;\n /** Called when resizing starts. */\n onResizeStart?: (widths: Map<Key, ColumnSize>) => void;\n /** Called for every resize event that results in new column sizes. */\n onResize?: (widths: Map<Key, ColumnSize>) => void;\n /** Called when resizing ends. */\n onResizeEnd?: (widths: Map<Key, ColumnSize>) => void;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a table column resizer element.\n *\n * @param props - Props for the resizer.\n * @param state - State for the table's resizable columns, as returned by\n * `useTableColumnResizeState`.\n * @param ref - The ref attached to the resizer's visually hidden input element.\n */\nexport function useTableColumnResize<T>(\n props: AriaTableColumnResizeProps<T>,\n state: TableColumnResizeState<T>,\n ref: RefObject<HTMLInputElement | null>\n): TableColumnResizeAria {\n let {\n column: item,\n triggerRef,\n isDisabled,\n onResizeStart,\n onResize,\n onResizeEnd,\n 'aria-label': ariaLabel\n } = props;\n const stringFormatter = useLocalizedStringFormatter(intlMessages, '@react-aria/table');\n let id = useId();\n let isResizing = state.resizingColumn === item.key;\n let isResizingRef = useRef(isResizing);\n let lastSize = useRef<Map<Key, ColumnSize> | null>(null);\n let wasFocusedOnResizeStart = useRef(false);\n let editModeEnabled = state.tableState.isKeyboardNavigationDisabled;\n // Whether a mouse drag-resize is active. Set on the first move (not on press) so a cursor\n // overlay only mounts during an actual drag.\n let [isMouseResizing, setMouseResizing] = useState(false);\n\n let {direction} = useLocale();\n\n let startResize = useCallback(\n item => {\n if (!isResizingRef.current) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n state.startResize(item.key);\n state.tableState.setKeyboardNavigationDisabled(true);\n onResizeStart?.(lastSize.current);\n }\n isResizingRef.current = true;\n },\n [state, onResizeStart]\n );\n\n let resize = useCallback(\n (item, newWidth) => {\n let sizes = state.updateResizedColumns(item.key, newWidth);\n onResize?.(sizes);\n lastSize.current = sizes;\n },\n [state, onResize]\n );\n\n let endResize = useCallback(\n item => {\n if (isResizingRef.current) {\n if (lastSize.current == null) {\n lastSize.current = state.updateResizedColumns(item.key, state.getColumnWidth(item.key));\n }\n\n state.endResize();\n state.tableState.setKeyboardNavigationDisabled(false);\n onResizeEnd?.(lastSize.current);\n isResizingRef.current = false;\n\n if (triggerRef?.current && !wasFocusedOnResizeStart.current) {\n // switch focus back to the column header unless the resizer was already focused when resizing started.\n focusSafely(triggerRef.current);\n }\n }\n lastSize.current = null;\n },\n [state, triggerRef, onResizeEnd]\n );\n\n let endResizeEvent = () => {\n if (editModeEnabled) {\n endResize(item);\n return;\n }\n return false;\n };\n\n let {keyboardProps} = useKeyboard({\n shortcuts: {\n Escape: () => {\n return endResizeEvent();\n },\n Enter: () => {\n if (editModeEnabled) {\n endResize(item);\n } else {\n startResize(item);\n }\n },\n ' ': () => {\n return endResizeEvent();\n },\n Tab: () => {\n return endResizeEvent();\n }\n }\n });\n\n const columnResizeWidthRef = useRef<number>(0);\n const {moveProps} = useMove({\n onMoveStart(e) {\n columnResizeWidthRef.current = state.getColumnWidth(item.key);\n if (e.pointerType === 'mouse') {\n setMouseResizing(true);\n }\n startResize(item);\n },\n onMove(e) {\n let {deltaX, deltaY, pointerType} = e;\n if (direction === 'rtl') {\n deltaX *= -1;\n }\n if (pointerType === 'keyboard') {\n if (deltaY !== 0 && deltaX === 0) {\n deltaX = deltaY * -1;\n }\n deltaX *= 10;\n }\n // if moving up/down only, no need to resize\n if (deltaX !== 0) {\n columnResizeWidthRef.current += deltaX;\n resize(item, columnResizeWidthRef.current);\n }\n },\n onMoveEnd(e) {\n let {pointerType} = e;\n columnResizeWidthRef.current = 0;\n setMouseResizing(false);\n if (pointerType === 'mouse' || (pointerType === 'touch' && wasFocusedOnResizeStart.current)) {\n endResize(item);\n }\n }\n });\n\n let onKeyDown = useCallback(\n e => {\n if (editModeEnabled) {\n moveProps.onKeyDown?.(e);\n }\n },\n [editModeEnabled, moveProps]\n );\n\n let min = Math.floor(state.getColumnMinWidth(item.key));\n let max = Math.floor(state.getColumnMaxWidth(item.key));\n if (max === Infinity) {\n max = Number.MAX_SAFE_INTEGER;\n }\n let value = Math.floor(state.getColumnWidth(item.key));\n let modality: string | null = useInteractionModality();\n if (modality === 'virtual' && typeof window !== 'undefined' && 'ontouchstart' in window) {\n modality = 'touch';\n }\n let description =\n // oxlint-disable-next-line react/react-compiler\n triggerRef?.current == null &&\n (modality === 'keyboard' || modality === 'virtual') &&\n !isResizing\n ? stringFormatter.format('resizerDescription')\n : undefined;\n let descriptionProps = useDescription(description);\n let ariaProps = {\n 'aria-label': ariaLabel,\n 'aria-orientation': 'horizontal' as 'horizontal',\n 'aria-labelledby': `${id} ${getColumnHeaderId(state.tableState, item.key)}`,\n 'aria-valuetext': stringFormatter.format('columnSize', {value}),\n type: 'range',\n min,\n max,\n value,\n ...descriptionProps\n };\n\n const focusInput = useCallback(() => {\n if (ref.current) {\n focusSafely(ref.current);\n }\n }, [ref]);\n\n let resizingColumn = state.resizingColumn;\n let prevResizingColumn = useRef<Key | null>(null);\n let startResizeEvent = useEffectEvent(startResize);\n useEffect(() => {\n if (\n prevResizingColumn.current !== resizingColumn &&\n resizingColumn != null &&\n resizingColumn === item.key\n ) {\n wasFocusedOnResizeStart.current = getActiveElement() === ref.current;\n startResizeEvent(item);\n // Delay focusing input until Android Chrome's delayed click after touchend happens: https://bugs.chromium.org/p/chromium/issues/detail?id=1150073\n let timeout = setTimeout(() => focusInput(), 0);\n // VoiceOver on iOS has problems focusing the input from a menu.\n let VOTimeout = setTimeout(focusInput, 400);\n return () => {\n clearTimeout(timeout);\n clearTimeout(VOTimeout);\n };\n }\n prevResizingColumn.current = resizingColumn;\n }, [resizingColumn, item, focusInput, ref]);\n\n let onChange = (e: ChangeEvent<HTMLInputElement>) => {\n let currentWidth = state.getColumnWidth(item.key);\n let nextValue = parseFloat(getEventTarget(e).value);\n\n if (nextValue > currentWidth) {\n nextValue = currentWidth + 10;\n } else {\n nextValue = currentWidth - 10;\n }\n resize(item, nextValue);\n };\n\n let {pressProps} = usePress({\n preventFocusOnPress: true,\n onPressStart: e => {\n if (e.ctrlKey || e.altKey || e.metaKey || e.shiftKey || e.pointerType === 'keyboard') {\n return;\n }\n if (e.pointerType === 'virtual' && state.resizingColumn != null) {\n endResize(item);\n return;\n }\n\n // Sometimes onPress won't trigger for quick taps on mobile so we want to focus the input so blurring away\n // can cancel resize mode for us.\n focusInput();\n\n // If resizer is always visible, mobile screenreader user can access the visually hidden resizer directly and thus we don't need\n // to handle a virtual click to start the resizer.\n if (e.pointerType !== 'virtual') {\n startResize(item);\n }\n },\n onPress: e => {\n if (\n ((e.pointerType === 'touch' && wasFocusedOnResizeStart.current) ||\n e.pointerType === 'mouse') &&\n state.resizingColumn != null\n ) {\n endResize(item);\n }\n }\n });\n let {visuallyHiddenProps} = useVisuallyHidden();\n\n return {\n resizerProps: mergeProps(keyboardProps, {...moveProps, onKeyDown}, pressProps, {\n style: {touchAction: 'none'}\n }),\n inputProps: mergeProps(\n visuallyHiddenProps,\n // oxlint-disable-next-line react/react-compiler\n {\n id,\n onBlur: () => {\n endResize(item);\n },\n onChange,\n disabled: isDisabled\n },\n ariaProps\n ),\n isResizing,\n isMouseResizing\n };\n}\n"],"names":[],"version":3,"file":"useTableColumnResize.js.map"}
|