@proyecto-viviana/solidaria 0.2.8 → 0.4.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/README.md +31 -236
- package/dist/_chunk/actiongroup.js +207 -0
- package/dist/_chunk/actiongroup.js.map +1 -0
- package/dist/_chunk/actiongroup.jsx +207 -0
- package/dist/_chunk/actiongroup.jsx.map +1 -0
- package/dist/_chunk/ariaHideOutside.js +122 -0
- package/dist/_chunk/ariaHideOutside.js.map +1 -0
- package/dist/_chunk/ariaHideOutside.jsx +122 -0
- package/dist/_chunk/ariaHideOutside.jsx.map +1 -0
- package/dist/_chunk/autocomplete.js +196 -0
- package/dist/_chunk/autocomplete.js.map +1 -0
- package/dist/_chunk/autocomplete.jsx +196 -0
- package/dist/_chunk/autocomplete.jsx.map +1 -0
- package/dist/_chunk/breadcrumbs.js +119 -0
- package/dist/_chunk/breadcrumbs.js.map +1 -0
- package/dist/_chunk/breadcrumbs.jsx +119 -0
- package/dist/_chunk/breadcrumbs.jsx.map +1 -0
- package/dist/_chunk/button.js +276 -0
- package/dist/_chunk/button.js.map +1 -0
- package/dist/_chunk/button.jsx +276 -0
- package/dist/_chunk/button.jsx.map +1 -0
- package/dist/_chunk/calendar.js +1036 -0
- package/dist/_chunk/calendar.js.map +1 -0
- package/dist/_chunk/calendar.jsx +1036 -0
- package/dist/_chunk/calendar.jsx.map +1 -0
- package/dist/_chunk/checkbox.js +234 -0
- package/dist/_chunk/checkbox.js.map +1 -0
- package/dist/_chunk/checkbox.jsx +234 -0
- package/dist/_chunk/checkbox.jsx.map +1 -0
- package/dist/_chunk/color.js +1174 -0
- package/dist/_chunk/color.js.map +1 -0
- package/dist/_chunk/color.jsx +1174 -0
- package/dist/_chunk/color.jsx.map +1 -0
- package/dist/_chunk/combobox.js +436 -0
- package/dist/_chunk/combobox.js.map +1 -0
- package/dist/_chunk/combobox.jsx +436 -0
- package/dist/_chunk/combobox.jsx.map +1 -0
- package/dist/_chunk/createCollator.js +229 -0
- package/dist/_chunk/createCollator.js.map +1 -0
- package/dist/_chunk/createCollator.jsx +223 -0
- package/dist/_chunk/createCollator.jsx.map +1 -0
- package/dist/_chunk/createCollectionRowInteraction.js +133 -0
- package/dist/_chunk/createCollectionRowInteraction.js.map +1 -0
- package/dist/_chunk/createCollectionRowInteraction.jsx +133 -0
- package/dist/_chunk/createCollectionRowInteraction.jsx.map +1 -0
- package/dist/_chunk/createField.js +54 -0
- package/dist/_chunk/createField.js.map +1 -0
- package/dist/_chunk/createField.jsx +54 -0
- package/dist/_chunk/createField.jsx.map +1 -0
- package/dist/_chunk/createFocus.js +101 -0
- package/dist/_chunk/createFocus.js.map +1 -0
- package/dist/_chunk/createFocus.jsx +101 -0
- package/dist/_chunk/createFocus.jsx.map +1 -0
- package/dist/_chunk/createFocusRing.js +54 -0
- package/dist/_chunk/createFocusRing.js.map +1 -0
- package/dist/_chunk/createFocusRing.jsx +54 -0
- package/dist/_chunk/createFocusRing.jsx.map +1 -0
- package/dist/_chunk/createFocusWithin.js +121 -0
- package/dist/_chunk/createFocusWithin.js.map +1 -0
- package/dist/_chunk/createFocusWithin.jsx +121 -0
- package/dist/_chunk/createFocusWithin.jsx.map +1 -0
- package/dist/_chunk/createFocusable.js +131 -0
- package/dist/_chunk/createFocusable.js.map +1 -0
- package/dist/_chunk/createFocusable.jsx +131 -0
- package/dist/_chunk/createFocusable.jsx.map +1 -0
- package/dist/_chunk/createFormValidation.js +135 -0
- package/dist/_chunk/createFormValidation.js.map +1 -0
- package/dist/_chunk/createFormValidation.jsx +135 -0
- package/dist/_chunk/createFormValidation.jsx.map +1 -0
- package/dist/_chunk/createHover.js +130 -0
- package/dist/_chunk/createHover.js.map +1 -0
- package/dist/_chunk/createHover.jsx +130 -0
- package/dist/_chunk/createHover.jsx.map +1 -0
- package/dist/_chunk/createInteractionModality.js +269 -0
- package/dist/_chunk/createInteractionModality.js.map +1 -0
- package/dist/_chunk/createInteractionModality.jsx +269 -0
- package/dist/_chunk/createInteractionModality.jsx.map +1 -0
- package/dist/_chunk/createLabel.js +46 -0
- package/dist/_chunk/createLabel.js.map +1 -0
- package/dist/_chunk/createLabel.jsx +46 -0
- package/dist/_chunk/createLabel.jsx.map +1 -0
- package/dist/_chunk/createLabels.js +31 -0
- package/dist/_chunk/createLabels.js.map +1 -0
- package/dist/_chunk/createLabels.jsx +31 -0
- package/dist/_chunk/createLabels.jsx.map +1 -0
- package/dist/_chunk/createLandmark.js +198 -0
- package/dist/_chunk/createLandmark.js.map +1 -0
- package/dist/_chunk/createLandmark.jsx +198 -0
- package/dist/_chunk/createLandmark.jsx.map +1 -0
- package/dist/_chunk/createLongPress.js +91 -0
- package/dist/_chunk/createLongPress.js.map +1 -0
- package/dist/_chunk/createLongPress.jsx +91 -0
- package/dist/_chunk/createLongPress.jsx.map +1 -0
- package/dist/_chunk/createOverlay.js +327 -0
- package/dist/_chunk/createOverlay.js.map +1 -0
- package/dist/_chunk/createOverlay.jsx +327 -0
- package/dist/_chunk/createOverlay.jsx.map +1 -0
- package/dist/_chunk/createPress.js +526 -0
- package/dist/_chunk/createPress.js.map +1 -0
- package/dist/_chunk/createPress.jsx +526 -0
- package/dist/_chunk/createPress.jsx.map +1 -0
- package/dist/_chunk/createProgressBar.js +81 -0
- package/dist/_chunk/createProgressBar.js.map +1 -0
- package/dist/_chunk/createProgressBar.jsx +81 -0
- package/dist/_chunk/createProgressBar.jsx.map +1 -0
- package/dist/_chunk/createSelectableItem.js +298 -0
- package/dist/_chunk/createSelectableItem.js.map +1 -0
- package/dist/_chunk/createSelectableItem.jsx +298 -0
- package/dist/_chunk/createSelectableItem.jsx.map +1 -0
- package/dist/_chunk/createToggle.js +158 -0
- package/dist/_chunk/createToggle.js.map +1 -0
- package/dist/_chunk/createToggle.jsx +158 -0
- package/dist/_chunk/createToggle.jsx.map +1 -0
- package/dist/_chunk/createTypeSelect.js +125 -0
- package/dist/_chunk/createTypeSelect.js.map +1 -0
- package/dist/_chunk/createTypeSelect.jsx +125 -0
- package/dist/_chunk/createTypeSelect.jsx.map +1 -0
- package/dist/_chunk/datepicker.js +1393 -0
- package/dist/_chunk/datepicker.js.map +1 -0
- package/dist/_chunk/datepicker.jsx +1393 -0
- package/dist/_chunk/datepicker.jsx.map +1 -0
- package/dist/_chunk/dialog.js +62 -0
- package/dist/_chunk/dialog.js.map +1 -0
- package/dist/_chunk/dialog.jsx +62 -0
- package/dist/_chunk/dialog.jsx.map +1 -0
- package/dist/_chunk/disclosure.js +185 -0
- package/dist/_chunk/disclosure.js.map +1 -0
- package/dist/_chunk/disclosure.jsx +185 -0
- package/dist/_chunk/disclosure.jsx.map +1 -0
- package/dist/_chunk/dnd.js +1304 -0
- package/dist/_chunk/dnd.js.map +1 -0
- package/dist/_chunk/dnd.jsx +1304 -0
- package/dist/_chunk/dnd.jsx.map +1 -0
- package/dist/_chunk/env.js +105 -0
- package/dist/_chunk/env.js.map +1 -0
- package/dist/_chunk/env.jsx +105 -0
- package/dist/_chunk/env.jsx.map +1 -0
- package/dist/_chunk/filterDOMProps.js +82 -0
- package/dist/_chunk/filterDOMProps.js.map +1 -0
- package/dist/_chunk/filterDOMProps.jsx +82 -0
- package/dist/_chunk/filterDOMProps.jsx.map +1 -0
- package/dist/_chunk/focus.js +399 -0
- package/dist/_chunk/focus.js.map +1 -0
- package/dist/_chunk/focus.jsx +399 -0
- package/dist/_chunk/focus.jsx.map +1 -0
- package/dist/_chunk/focus2.js +895 -0
- package/dist/_chunk/focus2.js.map +1 -0
- package/dist/_chunk/focus2.jsx +870 -0
- package/dist/_chunk/focus2.jsx.map +1 -0
- package/dist/_chunk/form.js +39 -0
- package/dist/_chunk/form.js.map +1 -0
- package/dist/_chunk/form.jsx +39 -0
- package/dist/_chunk/form.jsx.map +1 -0
- package/dist/_chunk/grid.js +623 -0
- package/dist/_chunk/grid.js.map +1 -0
- package/dist/_chunk/grid.jsx +623 -0
- package/dist/_chunk/grid.jsx.map +1 -0
- package/dist/_chunk/gridlist.js +364 -0
- package/dist/_chunk/gridlist.js.map +1 -0
- package/dist/_chunk/gridlist.jsx +364 -0
- package/dist/_chunk/gridlist.jsx.map +1 -0
- package/dist/_chunk/i18n.js +254 -0
- package/dist/_chunk/i18n.js.map +1 -0
- package/dist/_chunk/i18n.jsx +254 -0
- package/dist/_chunk/i18n.jsx.map +1 -0
- package/dist/_chunk/interactions.js +241 -0
- package/dist/_chunk/interactions.js.map +1 -0
- package/dist/_chunk/interactions.jsx +237 -0
- package/dist/_chunk/interactions.jsx.map +1 -0
- package/dist/_chunk/link.js +96 -0
- package/dist/_chunk/link.js.map +1 -0
- package/dist/_chunk/link.jsx +96 -0
- package/dist/_chunk/link.jsx.map +1 -0
- package/dist/_chunk/listbox.js +324 -0
- package/dist/_chunk/listbox.js.map +1 -0
- package/dist/_chunk/listbox.jsx +324 -0
- package/dist/_chunk/listbox.jsx.map +1 -0
- package/dist/_chunk/live-announcer.js +207 -0
- package/dist/_chunk/live-announcer.js.map +1 -0
- package/dist/_chunk/live-announcer.jsx +207 -0
- package/dist/_chunk/live-announcer.jsx.map +1 -0
- package/dist/_chunk/menu.js +518 -0
- package/dist/_chunk/menu.js.map +1 -0
- package/dist/_chunk/menu.jsx +518 -0
- package/dist/_chunk/menu.jsx.map +1 -0
- package/dist/_chunk/meter.js +33 -0
- package/dist/_chunk/meter.js.map +1 -0
- package/dist/_chunk/meter.jsx +33 -0
- package/dist/_chunk/meter.jsx.map +1 -0
- package/dist/_chunk/numberfield.js +258 -0
- package/dist/_chunk/numberfield.js.map +1 -0
- package/dist/_chunk/numberfield.jsx +258 -0
- package/dist/_chunk/numberfield.jsx.map +1 -0
- package/dist/_chunk/overlays.js +186 -0
- package/dist/_chunk/overlays.js.map +1 -0
- package/dist/_chunk/overlays.jsx +162 -0
- package/dist/_chunk/overlays.jsx.map +1 -0
- package/dist/_chunk/popover.js +574 -0
- package/dist/_chunk/popover.js.map +1 -0
- package/dist/_chunk/popover.jsx +574 -0
- package/dist/_chunk/popover.jsx.map +1 -0
- package/dist/_chunk/radio.js +319 -0
- package/dist/_chunk/radio.js.map +1 -0
- package/dist/_chunk/radio.jsx +319 -0
- package/dist/_chunk/radio.jsx.map +1 -0
- package/dist/_chunk/searchfield.js +209 -0
- package/dist/_chunk/searchfield.js.map +1 -0
- package/dist/_chunk/searchfield.jsx +209 -0
- package/dist/_chunk/searchfield.jsx.map +1 -0
- package/dist/_chunk/select.js +403 -0
- package/dist/_chunk/select.js.map +1 -0
- package/dist/_chunk/select.jsx +394 -0
- package/dist/_chunk/select.jsx.map +1 -0
- package/dist/_chunk/selection.js +679 -0
- package/dist/_chunk/selection.js.map +1 -0
- package/dist/_chunk/selection.jsx +679 -0
- package/dist/_chunk/selection.jsx.map +1 -0
- package/dist/_chunk/separator.js +29 -0
- package/dist/_chunk/separator.js.map +1 -0
- package/dist/_chunk/separator.jsx +29 -0
- package/dist/_chunk/separator.jsx.map +1 -0
- package/dist/_chunk/slider.js +255 -0
- package/dist/_chunk/slider.js.map +1 -0
- package/dist/_chunk/slider.jsx +255 -0
- package/dist/_chunk/slider.jsx.map +1 -0
- package/dist/_chunk/steplist.js +66 -0
- package/dist/_chunk/steplist.js.map +1 -0
- package/dist/_chunk/steplist.jsx +66 -0
- package/dist/_chunk/steplist.jsx.map +1 -0
- package/dist/_chunk/switch.js +34 -0
- package/dist/_chunk/switch.js.map +1 -0
- package/dist/_chunk/switch.jsx +34 -0
- package/dist/_chunk/switch.jsx.map +1 -0
- package/dist/_chunk/table.js +1051 -0
- package/dist/_chunk/table.js.map +1 -0
- package/dist/_chunk/table.jsx +1051 -0
- package/dist/_chunk/table.jsx.map +1 -0
- package/dist/_chunk/tabs.js +260 -0
- package/dist/_chunk/tabs.js.map +1 -0
- package/dist/_chunk/tabs.jsx +260 -0
- package/dist/_chunk/tabs.jsx.map +1 -0
- package/dist/_chunk/tag.js +286 -0
- package/dist/_chunk/tag.js.map +1 -0
- package/dist/_chunk/tag.jsx +286 -0
- package/dist/_chunk/tag.jsx.map +1 -0
- package/dist/_chunk/textfield.js +109 -0
- package/dist/_chunk/textfield.js.map +1 -0
- package/dist/_chunk/textfield.jsx +109 -0
- package/dist/_chunk/textfield.jsx.map +1 -0
- package/dist/_chunk/toast.js +250 -0
- package/dist/_chunk/toast.js.map +1 -0
- package/dist/_chunk/toast.jsx +250 -0
- package/dist/_chunk/toast.jsx.map +1 -0
- package/dist/_chunk/toolbar.js +258 -0
- package/dist/_chunk/toolbar.js.map +1 -0
- package/dist/_chunk/toolbar.jsx +258 -0
- package/dist/_chunk/toolbar.jsx.map +1 -0
- package/dist/_chunk/tooltip.js +185 -0
- package/dist/_chunk/tooltip.js.map +1 -0
- package/dist/_chunk/tooltip.jsx +185 -0
- package/dist/_chunk/tooltip.jsx.map +1 -0
- package/dist/_chunk/tree.js +424 -0
- package/dist/_chunk/tree.js.map +1 -0
- package/dist/_chunk/tree.jsx +424 -0
- package/dist/_chunk/tree.jsx.map +1 -0
- package/dist/_chunk/utils.js +665 -0
- package/dist/_chunk/utils.js.map +1 -0
- package/dist/_chunk/utils.jsx +665 -0
- package/dist/_chunk/utils.jsx.map +1 -0
- package/dist/_chunk/visually-hidden.js +92 -0
- package/dist/_chunk/visually-hidden.js.map +1 -0
- package/dist/_chunk/visually-hidden.jsx +92 -0
- package/dist/_chunk/visually-hidden.jsx.map +1 -0
- package/dist/actiongroup/createActionGroup.d.ts +5 -5
- package/dist/actiongroup/createActionGroup.d.ts.map +1 -1
- package/dist/actiongroup/index.d.ts +1 -1
- package/dist/actiongroup/index.js +2 -0
- package/dist/actiongroup/index.jsx +2 -0
- package/dist/autocomplete/createAutocomplete.d.ts +12 -10
- package/dist/autocomplete/createAutocomplete.d.ts.map +1 -1
- package/dist/autocomplete/index.d.ts +1 -1
- package/dist/autocomplete/index.d.ts.map +1 -1
- package/dist/autocomplete/index.js +2 -0
- package/dist/autocomplete/index.jsx +2 -0
- package/dist/breadcrumbs/createBreadcrumbs.d.ts +9 -7
- package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +1 -1
- package/dist/breadcrumbs/index.d.ts +1 -1
- package/dist/breadcrumbs/index.js +2 -0
- package/dist/breadcrumbs/index.jsx +2 -0
- package/dist/button/createButton.d.ts +1 -1
- package/dist/button/createButton.d.ts.map +1 -1
- package/dist/button/createToggleButton.d.ts +3 -3
- package/dist/button/createToggleButtonGroup.d.ts +7 -7
- package/dist/button/createToggleButtonGroup.d.ts.map +1 -1
- package/dist/button/index.d.ts +6 -6
- package/dist/button/index.d.ts.map +1 -1
- package/dist/button/index.js +2 -0
- package/dist/button/index.jsx +2 -0
- package/dist/button/types.d.ts +18 -12
- package/dist/button/types.d.ts.map +1 -1
- package/dist/calendar/createCalendar.d.ts +15 -5
- package/dist/calendar/createCalendar.d.ts.map +1 -1
- package/dist/calendar/createCalendarCell.d.ts +6 -2
- package/dist/calendar/createCalendarCell.d.ts.map +1 -1
- package/dist/calendar/createCalendarGrid.d.ts +4 -4
- package/dist/calendar/createCalendarGrid.d.ts.map +1 -1
- package/dist/calendar/createCalendarMonthPicker.d.ts +41 -0
- package/dist/calendar/createCalendarMonthPicker.d.ts.map +1 -0
- package/dist/calendar/createCalendarYearPicker.d.ts +49 -0
- package/dist/calendar/createCalendarYearPicker.d.ts.map +1 -0
- package/dist/calendar/createRangeCalendar.d.ts +15 -5
- package/dist/calendar/createRangeCalendar.d.ts.map +1 -1
- package/dist/calendar/createRangeCalendarCell.d.ts +4 -2
- package/dist/calendar/createRangeCalendarCell.d.ts.map +1 -1
- package/dist/calendar/index.d.ts +7 -5
- package/dist/calendar/index.d.ts.map +1 -1
- package/dist/calendar/index.js +2 -0
- package/dist/calendar/index.jsx +2 -0
- package/dist/calendar/intl/index.d.ts +12 -0
- package/dist/calendar/intl/index.d.ts.map +1 -0
- package/dist/calendar/utils.d.ts +16 -0
- package/dist/calendar/utils.d.ts.map +1 -0
- package/dist/checkbox/createCheckbox.d.ts +10 -6
- package/dist/checkbox/createCheckbox.d.ts.map +1 -1
- package/dist/checkbox/createCheckboxGroup.d.ts +7 -7
- package/dist/checkbox/createCheckboxGroup.d.ts.map +1 -1
- package/dist/checkbox/createCheckboxGroupItem.d.ts +4 -4
- package/dist/checkbox/createCheckboxGroupItem.d.ts.map +1 -1
- package/dist/checkbox/createCheckboxGroupState.d.ts +2 -2
- package/dist/checkbox/createCheckboxGroupState.d.ts.map +1 -1
- package/dist/checkbox/index.d.ts +8 -8
- package/dist/checkbox/index.d.ts.map +1 -1
- package/dist/checkbox/index.js +2 -0
- package/dist/checkbox/index.jsx +2 -0
- package/dist/collections/index.d.ts +3 -3
- package/dist/collections/index.d.ts.map +1 -1
- package/dist/collections/index.js +160 -0
- package/dist/collections/index.js.map +1 -0
- package/dist/collections/index.jsx +160 -0
- package/dist/collections/index.jsx.map +1 -0
- package/dist/color/createColorArea.d.ts +3 -3
- package/dist/color/createColorArea.d.ts.map +1 -1
- package/dist/color/createColorField.d.ts +4 -4
- package/dist/color/createColorField.d.ts.map +1 -1
- package/dist/color/createColorSlider.d.ts +4 -4
- package/dist/color/createColorSlider.d.ts.map +1 -1
- package/dist/color/createColorSwatch.d.ts +2 -2
- package/dist/color/createColorSwatch.d.ts.map +1 -1
- package/dist/color/createColorWheel.d.ts +3 -3
- package/dist/color/createColorWheel.d.ts.map +1 -1
- package/dist/color/index.d.ts +6 -6
- package/dist/color/index.js +2 -0
- package/dist/color/index.jsx +2 -0
- package/dist/color/types.d.ts +98 -16
- package/dist/color/types.d.ts.map +1 -1
- package/dist/combobox/createComboBox.d.ts +10 -7
- package/dist/combobox/createComboBox.d.ts.map +1 -1
- package/dist/combobox/index.d.ts +1 -1
- package/dist/combobox/index.js +2 -0
- package/dist/combobox/index.jsx +2 -0
- package/dist/combobox/intl/index.d.ts +1 -1
- package/dist/datepicker/createDateField.d.ts +18 -6
- package/dist/datepicker/createDateField.d.ts.map +1 -1
- package/dist/datepicker/createDatePicker.d.ts +51 -5
- package/dist/datepicker/createDatePicker.d.ts.map +1 -1
- package/dist/datepicker/createDatePickerGroup.d.ts +19 -0
- package/dist/datepicker/createDatePickerGroup.d.ts.map +1 -0
- package/dist/datepicker/createDateRangePicker.d.ts +8 -6
- package/dist/datepicker/createDateRangePicker.d.ts.map +1 -1
- package/dist/datepicker/createDateSegment.d.ts +10 -2
- package/dist/datepicker/createDateSegment.d.ts.map +1 -1
- package/dist/datepicker/createTimeField.d.ts +11 -5
- package/dist/datepicker/createTimeField.d.ts.map +1 -1
- package/dist/datepicker/createTimeSegment.d.ts +2 -2
- package/dist/datepicker/createTimeSegment.d.ts.map +1 -1
- package/dist/datepicker/index.d.ts +7 -6
- package/dist/datepicker/index.d.ts.map +1 -1
- package/dist/datepicker/index.js +2 -0
- package/dist/datepicker/index.jsx +2 -0
- package/dist/dialog/createDialog.d.ts +5 -5
- package/dist/dialog/createDialog.d.ts.map +1 -1
- package/dist/dialog/index.d.ts +2 -2
- package/dist/dialog/index.d.ts.map +1 -1
- package/dist/dialog/index.js +2 -0
- package/dist/dialog/index.jsx +2 -0
- package/dist/dialog/types.d.ts +4 -4
- package/dist/disclosure/createDisclosure.d.ts +5 -2
- package/dist/disclosure/createDisclosure.d.ts.map +1 -1
- package/dist/disclosure/createDisclosureGroup.d.ts +4 -4
- package/dist/disclosure/createDisclosureGroup.d.ts.map +1 -1
- package/dist/disclosure/index.d.ts +2 -2
- package/dist/disclosure/index.js +2 -0
- package/dist/disclosure/index.jsx +2 -0
- package/dist/dnd/createDrag.d.ts +2 -2
- package/dist/dnd/createDrag.d.ts.map +1 -1
- package/dist/dnd/createDraggableCollection.d.ts +2 -2
- package/dist/dnd/createDraggableItem.d.ts +3 -3
- package/dist/dnd/createDraggableItem.d.ts.map +1 -1
- package/dist/dnd/createDrop.d.ts +2 -2
- package/dist/dnd/createDrop.d.ts.map +1 -1
- package/dist/dnd/createDroppableCollection.d.ts +26 -6
- package/dist/dnd/createDroppableCollection.d.ts.map +1 -1
- package/dist/dnd/createDroppableItem.d.ts +3 -3
- package/dist/dnd/index.d.ts +12 -12
- package/dist/dnd/index.d.ts.map +1 -1
- package/dist/dnd/index.js +2 -0
- package/dist/dnd/index.jsx +2 -0
- package/dist/dnd/types.d.ts +2 -2
- package/dist/dnd/types.d.ts.map +1 -1
- package/dist/dnd/utils.d.ts +2 -2
- package/dist/dnd/utils.d.ts.map +1 -1
- package/dist/focus/FocusScope.d.ts +1 -1
- package/dist/focus/FocusScope.d.ts.map +1 -1
- package/dist/focus/createAutoFocus.d.ts.map +1 -1
- package/dist/focus/createFocusRestore.d.ts.map +1 -1
- package/dist/focus/createVirtualFocus.d.ts +4 -4
- package/dist/focus/createVirtualFocus.d.ts.map +1 -1
- package/dist/focus/index.d.ts +4 -4
- package/dist/focus/index.d.ts.map +1 -1
- package/dist/focus/index.js +2 -0
- package/dist/focus/index.jsx +2 -0
- package/dist/form/createFormReset.d.ts +1 -1
- package/dist/form/createFormValidation.d.ts +3 -3
- package/dist/form/createFormValidation.d.ts.map +1 -1
- package/dist/form/index.d.ts +2 -2
- package/dist/form/index.d.ts.map +1 -1
- package/dist/form/index.js +3 -0
- package/dist/form/index.jsx +3 -0
- package/dist/grid/GridKeyboardDelegate.d.ts +5 -5
- package/dist/grid/createGrid.d.ts +3 -3
- package/dist/grid/createGridCell.d.ts +3 -3
- package/dist/grid/createGridRow.d.ts +3 -3
- package/dist/grid/index.d.ts +5 -5
- package/dist/grid/index.js +2 -0
- package/dist/grid/index.jsx +2 -0
- package/dist/grid/types.d.ts +8 -8
- package/dist/gridlist/createGridList.d.ts +12 -4
- package/dist/gridlist/createGridList.d.ts.map +1 -1
- package/dist/gridlist/createGridListItem.d.ts +4 -4
- package/dist/gridlist/createGridListItem.d.ts.map +1 -1
- package/dist/gridlist/createGridListSection.d.ts +15 -0
- package/dist/gridlist/createGridListSection.d.ts.map +1 -0
- package/dist/gridlist/createGridListSelectionCheckbox.d.ts +3 -3
- package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +1 -1
- package/dist/gridlist/index.d.ts +5 -4
- package/dist/gridlist/index.d.ts.map +1 -1
- package/dist/gridlist/index.js +2 -0
- package/dist/gridlist/index.jsx +2 -0
- package/dist/gridlist/types.d.ts +61 -7
- package/dist/gridlist/types.d.ts.map +1 -1
- package/dist/i18n/createCollator.d.ts.map +1 -1
- package/dist/i18n/createDateFormatter.d.ts.map +1 -1
- package/dist/i18n/createFilter.d.ts.map +1 -1
- package/dist/i18n/createNumberFormatter.d.ts +1 -1
- package/dist/i18n/createNumberFormatter.d.ts.map +1 -1
- package/dist/i18n/createStringFormatter.d.ts +2 -2
- package/dist/i18n/createStringFormatter.d.ts.map +1 -1
- package/dist/i18n/index.d.ts +8 -8
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/index.js +3 -0
- package/dist/i18n/index.jsx +3 -0
- package/dist/i18n/locale.d.ts +2 -2
- package/dist/i18n/locale.d.ts.map +1 -1
- package/dist/i18n/utils.d.ts.map +1 -1
- package/dist/index.d.ts +56 -51
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +71 -17119
- package/dist/index.jsx +71 -0
- package/dist/interactions/FocusableProvider.d.ts +2 -2
- package/dist/interactions/FocusableProvider.d.ts.map +1 -1
- package/dist/interactions/PressEvent.d.ts +13 -2
- package/dist/interactions/PressEvent.d.ts.map +1 -1
- package/dist/interactions/createFocus.d.ts +1 -1
- package/dist/interactions/createFocus.d.ts.map +1 -1
- package/dist/interactions/createFocusRing.d.ts +1 -1
- package/dist/interactions/createFocusRing.d.ts.map +1 -1
- package/dist/interactions/createFocusWithin.d.ts +1 -1
- package/dist/interactions/createFocusWithin.d.ts.map +1 -1
- package/dist/interactions/createFocusable.d.ts +3 -3
- package/dist/interactions/createFocusable.d.ts.map +1 -1
- package/dist/interactions/createHover.d.ts +5 -5
- package/dist/interactions/createHover.d.ts.map +1 -1
- package/dist/interactions/createInteractionModality.d.ts +3 -4
- package/dist/interactions/createInteractionModality.d.ts.map +1 -1
- package/dist/interactions/createKeyboard.d.ts +1 -1
- package/dist/interactions/createKeyboard.d.ts.map +1 -1
- package/dist/interactions/createLongPress.d.ts +5 -5
- package/dist/interactions/createMove.d.ts +5 -5
- package/dist/interactions/createMove.d.ts.map +1 -1
- package/dist/interactions/createPress.d.ts +4 -4
- package/dist/interactions/createPress.d.ts.map +1 -1
- package/dist/interactions/index.d.ts +12 -12
- package/dist/interactions/index.d.ts.map +1 -1
- package/dist/interactions/index.js +10 -0
- package/dist/interactions/index.jsx +10 -0
- package/dist/label/createField.d.ts +4 -4
- package/dist/label/createField.d.ts.map +1 -1
- package/dist/label/createLabel.d.ts +7 -7
- package/dist/label/createLabel.d.ts.map +1 -1
- package/dist/label/createLabels.d.ts +1 -1
- package/dist/label/createLabels.d.ts.map +1 -1
- package/dist/label/index.d.ts +5 -5
- package/dist/label/index.js +4 -0
- package/dist/label/index.jsx +4 -0
- package/dist/landmark/createLandmark.d.ts +5 -5
- package/dist/landmark/createLandmark.d.ts.map +1 -1
- package/dist/landmark/index.d.ts +1 -1
- package/dist/landmark/index.js +2 -0
- package/dist/landmark/index.jsx +2 -0
- package/dist/link/createLink.d.ts +14 -8
- package/dist/link/createLink.d.ts.map +1 -1
- package/dist/link/index.d.ts +1 -1
- package/dist/link/index.js +2 -0
- package/dist/link/index.jsx +2 -0
- package/dist/listbox/createListBox.d.ts +48 -6
- package/dist/listbox/createListBox.d.ts.map +1 -1
- package/dist/listbox/createOption.d.ts +27 -4
- package/dist/listbox/createOption.d.ts.map +1 -1
- package/dist/listbox/index.d.ts +2 -2
- package/dist/listbox/index.d.ts.map +1 -1
- package/dist/listbox/index.js +2 -0
- package/dist/listbox/index.jsx +2 -0
- package/dist/live-announcer/announce.d.ts +2 -2
- package/dist/live-announcer/announce.d.ts.map +1 -1
- package/dist/live-announcer/index.d.ts +1 -1
- package/dist/live-announcer/index.js +2 -0
- package/dist/live-announcer/index.jsx +2 -0
- package/dist/menu/createMenu.d.ts +14 -11
- package/dist/menu/createMenu.d.ts.map +1 -1
- package/dist/menu/createMenuItem.d.ts +25 -5
- package/dist/menu/createMenuItem.d.ts.map +1 -1
- package/dist/menu/createMenuTrigger.d.ts +4 -4
- package/dist/menu/index.d.ts +3 -3
- package/dist/menu/index.d.ts.map +1 -1
- package/dist/menu/index.js +2 -0
- package/dist/menu/index.jsx +2 -0
- package/dist/meter/createMeter.d.ts +6 -6
- package/dist/meter/createMeter.d.ts.map +1 -1
- package/dist/meter/index.d.ts +1 -1
- package/dist/meter/index.js +2 -0
- package/dist/meter/index.jsx +2 -0
- package/dist/numberfield/createNumberField.d.ts +9 -8
- package/dist/numberfield/createNumberField.d.ts.map +1 -1
- package/dist/numberfield/index.d.ts +1 -1
- package/dist/numberfield/index.js +2 -0
- package/dist/numberfield/index.jsx +2 -0
- package/dist/overlays/ariaHideOutside.d.ts.map +1 -1
- package/dist/overlays/createModal.d.ts +3 -3
- package/dist/overlays/createModal.d.ts.map +1 -1
- package/dist/overlays/createOverlay.d.ts +1 -1
- package/dist/overlays/createOverlay.d.ts.map +1 -1
- package/dist/overlays/createOverlayTrigger.d.ts +6 -6
- package/dist/overlays/index.d.ts +6 -6
- package/dist/overlays/index.d.ts.map +1 -1
- package/dist/overlays/index.js +4 -0
- package/dist/overlays/index.jsx +4 -0
- package/dist/popover/calculatePosition.d.ts +6 -4
- package/dist/popover/calculatePosition.d.ts.map +1 -1
- package/dist/popover/createOverlayPosition.d.ts +11 -3
- package/dist/popover/createOverlayPosition.d.ts.map +1 -1
- package/dist/popover/createPopover.d.ts +4 -4
- package/dist/popover/createPopover.d.ts.map +1 -1
- package/dist/popover/index.d.ts +3 -3
- package/dist/popover/index.js +2 -0
- package/dist/popover/index.jsx +2 -0
- package/dist/progress/createProgressBar.d.ts +7 -5
- package/dist/progress/createProgressBar.d.ts.map +1 -1
- package/dist/progress/index.d.ts +1 -1
- package/dist/progress/index.js +2 -0
- package/dist/progress/index.jsx +2 -0
- package/dist/radio/createRadio.d.ts +9 -7
- package/dist/radio/createRadio.d.ts.map +1 -1
- package/dist/radio/createRadioGroup.d.ts +10 -10
- package/dist/radio/createRadioGroup.d.ts.map +1 -1
- package/dist/radio/createRadioGroupState.d.ts +3 -3
- package/dist/radio/createRadioGroupState.d.ts.map +1 -1
- package/dist/radio/index.d.ts +3 -3
- package/dist/radio/index.d.ts.map +1 -1
- package/dist/radio/index.js +2 -0
- package/dist/radio/index.jsx +2 -0
- package/dist/searchfield/createSearchField.d.ts +7 -7
- package/dist/searchfield/createSearchField.d.ts.map +1 -1
- package/dist/searchfield/index.d.ts +2 -2
- package/dist/searchfield/index.js +2 -0
- package/dist/searchfield/index.jsx +2 -0
- package/dist/select/createHiddenSelect.d.ts +4 -4
- package/dist/select/createHiddenSelect.d.ts.map +1 -1
- package/dist/select/createSelect.d.ts +14 -6
- package/dist/select/createSelect.d.ts.map +1 -1
- package/dist/select/index.d.ts +2 -2
- package/dist/select/index.d.ts.map +1 -1
- package/dist/select/index.js +2 -0
- package/dist/select/index.jsx +2 -0
- package/dist/selection/DOMLayoutDelegate.d.ts +58 -0
- package/dist/selection/DOMLayoutDelegate.d.ts.map +1 -0
- package/dist/selection/ListKeyboardDelegate.d.ts +95 -0
- package/dist/selection/ListKeyboardDelegate.d.ts.map +1 -0
- package/dist/selection/constants.d.ts +15 -0
- package/dist/selection/constants.d.ts.map +1 -0
- package/dist/selection/createCollectionRowInteraction.d.ts +13 -0
- package/dist/selection/createCollectionRowInteraction.d.ts.map +1 -0
- package/dist/selection/createScrollIntoViewOnFocus.d.ts +31 -0
- package/dist/selection/createScrollIntoViewOnFocus.d.ts.map +1 -0
- package/dist/selection/createSelectableCollection.d.ts +69 -0
- package/dist/selection/createSelectableCollection.d.ts.map +1 -0
- package/dist/selection/createSelectableItem.d.ts +154 -0
- package/dist/selection/createSelectableItem.d.ts.map +1 -0
- package/dist/selection/createSelectableList.d.ts +43 -0
- package/dist/selection/createSelectableList.d.ts.map +1 -0
- package/dist/selection/createTypeSelect.d.ts +2 -2
- package/dist/selection/createTypeSelect.d.ts.map +1 -1
- package/dist/selection/index.d.ts +10 -1
- package/dist/selection/index.d.ts.map +1 -1
- package/dist/selection/index.js +4 -0
- package/dist/selection/index.jsx +4 -0
- package/dist/selection/selectItem.d.ts +29 -0
- package/dist/selection/selectItem.d.ts.map +1 -0
- package/dist/selection/utils.d.ts +40 -0
- package/dist/selection/utils.d.ts.map +1 -0
- package/dist/separator/createSeparator.d.ts +9 -5
- package/dist/separator/createSeparator.d.ts.map +1 -1
- package/dist/separator/index.d.ts +1 -1
- package/dist/separator/index.js +2 -0
- package/dist/separator/index.jsx +2 -0
- package/dist/slider/createSlider.d.ts +11 -7
- package/dist/slider/createSlider.d.ts.map +1 -1
- package/dist/slider/index.d.ts +2 -2
- package/dist/slider/index.js +2 -0
- package/dist/slider/index.jsx +2 -0
- package/dist/ssr/index.d.ts +18 -1
- package/dist/ssr/index.d.ts.map +1 -1
- package/dist/ssr/index.js +299 -0
- package/dist/ssr/index.js.map +1 -0
- package/dist/ssr/index.jsx +292 -0
- package/dist/ssr/index.jsx.map +1 -0
- package/dist/steplist/createStepList.d.ts +36 -0
- package/dist/steplist/createStepList.d.ts.map +1 -0
- package/dist/steplist/index.d.ts +2 -0
- package/dist/steplist/index.d.ts.map +1 -0
- package/dist/steplist/index.js +2 -0
- package/dist/steplist/index.jsx +2 -0
- package/dist/switch/createSwitch.d.ts +10 -4
- package/dist/switch/createSwitch.d.ts.map +1 -1
- package/dist/switch/index.d.ts +1 -1
- package/dist/switch/index.js +2 -0
- package/dist/switch/index.jsx +2 -0
- package/dist/table/createTable.d.ts +3 -3
- package/dist/table/createTable.d.ts.map +1 -1
- package/dist/table/createTableCell.d.ts +3 -3
- package/dist/table/createTableCell.d.ts.map +1 -1
- package/dist/table/createTableColumnHeader.d.ts +3 -3
- package/dist/table/createTableColumnHeader.d.ts.map +1 -1
- package/dist/table/createTableColumnResize.d.ts +41 -0
- package/dist/table/createTableColumnResize.d.ts.map +1 -0
- package/dist/table/createTableHeaderRow.d.ts +3 -3
- package/dist/table/createTableRow.d.ts +4 -4
- package/dist/table/createTableRow.d.ts.map +1 -1
- package/dist/table/createTableRowGroup.d.ts +2 -2
- package/dist/table/createTableRowGroup.d.ts.map +1 -1
- package/dist/table/createTableSelectAllCheckbox.d.ts +3 -3
- package/dist/table/createTableSelectionCheckbox.d.ts +3 -3
- package/dist/table/index.d.ts +11 -9
- package/dist/table/index.d.ts.map +1 -1
- package/dist/table/index.js +2 -0
- package/dist/table/index.jsx +2 -0
- package/dist/table/types.d.ts +41 -7
- package/dist/table/types.d.ts.map +1 -1
- package/dist/tabs/createTabs.d.ts +32 -28
- package/dist/tabs/createTabs.d.ts.map +1 -1
- package/dist/tabs/index.d.ts +1 -1
- package/dist/tabs/index.js +2 -0
- package/dist/tabs/index.jsx +2 -0
- package/dist/tag/createTag.d.ts +4 -2
- package/dist/tag/createTag.d.ts.map +1 -1
- package/dist/tag/createTagGroup.d.ts +5 -5
- package/dist/tag/createTagGroup.d.ts.map +1 -1
- package/dist/tag/index.d.ts +2 -2
- package/dist/tag/index.d.ts.map +1 -1
- package/dist/tag/index.js +2 -0
- package/dist/tag/index.jsx +2 -0
- package/dist/textfield/createTextField.d.ts +17 -11
- package/dist/textfield/createTextField.d.ts.map +1 -1
- package/dist/textfield/index.d.ts +1 -1
- package/dist/textfield/index.d.ts.map +1 -1
- package/dist/textfield/index.js +2 -0
- package/dist/textfield/index.jsx +2 -0
- package/dist/toast/createToast.d.ts +2 -2
- package/dist/toast/createToast.d.ts.map +1 -1
- package/dist/toast/createToastRegion.d.ts +5 -3
- package/dist/toast/createToastRegion.d.ts.map +1 -1
- package/dist/toast/index.d.ts +2 -2
- package/dist/toast/index.d.ts.map +1 -1
- package/dist/toast/index.js +2 -0
- package/dist/toast/index.jsx +2 -0
- package/dist/toggle/createToggle.d.ts +13 -9
- package/dist/toggle/createToggle.d.ts.map +1 -1
- package/dist/toggle/createToggleState.d.ts +2 -2
- package/dist/toggle/createToggleState.d.ts.map +1 -1
- package/dist/toggle/index.d.ts +4 -4
- package/dist/toggle/index.d.ts.map +1 -1
- package/dist/toggle/index.js +3 -0
- package/dist/toggle/index.jsx +3 -0
- package/dist/toolbar/createToolbar.d.ts +9 -9
- package/dist/toolbar/createToolbar.d.ts.map +1 -1
- package/dist/toolbar/index.d.ts +1 -1
- package/dist/toolbar/index.d.ts.map +1 -1
- package/dist/toolbar/index.js +2 -0
- package/dist/toolbar/index.jsx +2 -0
- package/dist/tooltip/createTooltip.d.ts +5 -5
- package/dist/tooltip/createTooltip.d.ts.map +1 -1
- package/dist/tooltip/createTooltipTrigger.d.ts +10 -5
- package/dist/tooltip/createTooltipTrigger.d.ts.map +1 -1
- package/dist/tooltip/index.d.ts +2 -2
- package/dist/tooltip/index.js +2 -0
- package/dist/tooltip/index.jsx +2 -0
- package/dist/tree/createTree.d.ts +8 -4
- package/dist/tree/createTree.d.ts.map +1 -1
- package/dist/tree/createTreeItem.d.ts +4 -4
- package/dist/tree/createTreeItem.d.ts.map +1 -1
- package/dist/tree/createTreeSelectionCheckbox.d.ts +3 -3
- package/dist/tree/createTreeSelectionCheckbox.d.ts.map +1 -1
- package/dist/tree/index.d.ts +4 -4
- package/dist/tree/index.js +2 -0
- package/dist/tree/index.jsx +2 -0
- package/dist/tree/types.d.ts +20 -6
- package/dist/tree/types.d.ts.map +1 -1
- package/dist/utils/animation.d.ts +60 -0
- package/dist/utils/animation.d.ts.map +1 -0
- package/dist/utils/createDescription.d.ts +2 -2
- package/dist/utils/createDescription.d.ts.map +1 -1
- package/dist/utils/dom.d.ts +48 -2
- package/dist/utils/dom.d.ts.map +1 -1
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/focus.d.ts +1 -1
- package/dist/utils/focus.d.ts.map +1 -1
- package/dist/utils/geometry.d.ts.map +1 -1
- package/dist/utils/index.d.ts +15 -12
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +5 -0
- package/dist/utils/index.jsx +5 -0
- package/dist/utils/keyboard.d.ts +17 -0
- package/dist/utils/keyboard.d.ts.map +1 -0
- package/dist/utils/mergeProps.d.ts.map +1 -1
- package/dist/utils/reactivity.d.ts +1 -1
- package/dist/utils/scrollIntoView.d.ts +30 -0
- package/dist/utils/scrollIntoView.d.ts.map +1 -0
- package/dist/visually-hidden/createVisuallyHidden.d.ts +2 -2
- package/dist/visually-hidden/createVisuallyHidden.d.ts.map +1 -1
- package/dist/visually-hidden/index.d.ts +1 -1
- package/dist/visually-hidden/index.js +2 -0
- package/dist/visually-hidden/index.jsx +2 -0
- package/package.json +334 -33
- package/src/actiongroup/createActionGroup.ts +101 -91
- package/src/actiongroup/index.ts +1 -1
- package/src/autocomplete/createAutocomplete.ts +177 -148
- package/src/autocomplete/index.ts +1 -1
- package/src/breadcrumbs/createBreadcrumbs.ts +33 -42
- package/src/breadcrumbs/index.ts +1 -1
- package/src/button/createButton.ts +102 -73
- package/src/button/createToggleButton.ts +10 -10
- package/src/button/createToggleButtonGroup.ts +25 -32
- package/src/button/index.ts +6 -9
- package/src/button/types.ts +18 -12
- package/src/calendar/createCalendar.ts +64 -29
- package/src/calendar/createCalendarCell.ts +115 -46
- package/src/calendar/createCalendarGrid.ts +97 -41
- package/src/calendar/createCalendarMonthPicker.ts +105 -0
- package/src/calendar/createCalendarYearPicker.ts +144 -0
- package/src/calendar/createRangeCalendar.ts +68 -31
- package/src/calendar/createRangeCalendarCell.ts +92 -31
- package/src/calendar/index.ts +21 -8
- package/src/calendar/intl/index.ts +210 -0
- package/src/calendar/utils.ts +231 -0
- package/src/checkbox/createCheckbox.ts +23 -21
- package/src/checkbox/createCheckboxGroup.ts +68 -44
- package/src/checkbox/createCheckboxGroupItem.ts +26 -41
- package/src/checkbox/createCheckboxGroupState.ts +3 -22
- package/src/checkbox/index.ts +8 -10
- package/src/collections/index.ts +33 -29
- package/src/color/createColorArea.ts +232 -154
- package/src/color/createColorField.ts +107 -58
- package/src/color/createColorSlider.ts +231 -73
- package/src/color/createColorSwatch.ts +38 -13
- package/src/color/createColorWheel.ts +208 -83
- package/src/color/index.ts +6 -6
- package/src/color/types.ts +98 -16
- package/src/combobox/createComboBox.ts +157 -100
- package/src/combobox/index.ts +1 -1
- package/src/combobox/intl/index.ts +5 -5
- package/src/datepicker/createDateField.ts +192 -39
- package/src/datepicker/createDatePicker.ts +260 -67
- package/src/datepicker/createDatePickerGroup.ts +149 -0
- package/src/datepicker/createDateRangePicker.ts +105 -57
- package/src/datepicker/createDateSegment.ts +188 -96
- package/src/datepicker/createTimeField.ts +38 -34
- package/src/datepicker/createTimeSegment.ts +67 -85
- package/src/datepicker/index.ts +13 -14
- package/src/dialog/createDialog.ts +45 -38
- package/src/dialog/index.ts +2 -2
- package/src/dialog/types.ts +4 -4
- package/src/disclosure/createDisclosure.ts +138 -33
- package/src/disclosure/createDisclosureGroup.ts +8 -21
- package/src/disclosure/index.ts +2 -2
- package/src/dnd/createDrag.ts +19 -25
- package/src/dnd/createDraggableCollection.ts +4 -4
- package/src/dnd/createDraggableItem.ts +20 -19
- package/src/dnd/createDrop.ts +42 -51
- package/src/dnd/createDroppableCollection.ts +293 -173
- package/src/dnd/createDroppableItem.ts +34 -34
- package/src/dnd/index.ts +23 -12
- package/src/dnd/types.ts +4 -7
- package/src/dnd/utils.ts +58 -47
- package/src/focus/FocusScope.tsx +301 -176
- package/src/focus/createAutoFocus.ts +4 -20
- package/src/focus/createFocusRestore.ts +15 -28
- package/src/focus/createVirtualFocus.ts +20 -36
- package/src/focus/index.ts +4 -8
- package/src/form/createFormReset.ts +4 -4
- package/src/form/createFormValidation.ts +23 -39
- package/src/form/index.ts +2 -5
- package/src/grid/GridKeyboardDelegate.ts +30 -30
- package/src/grid/createGrid.ts +36 -36
- package/src/grid/createGridCell.ts +18 -18
- package/src/grid/createGridRow.ts +14 -14
- package/src/grid/index.ts +5 -5
- package/src/grid/types.ts +8 -8
- package/src/gridlist/createGridList.ts +172 -64
- package/src/gridlist/createGridListItem.ts +98 -121
- package/src/gridlist/createGridListSection.ts +54 -0
- package/src/gridlist/createGridListSelectionCheckbox.ts +12 -9
- package/src/gridlist/index.ts +7 -4
- package/src/gridlist/types.ts +58 -7
- package/src/i18n/createCollator.ts +5 -18
- package/src/i18n/createDateFormatter.ts +5 -13
- package/src/i18n/createFilter.ts +11 -24
- package/src/i18n/createNumberFormatter.ts +4 -6
- package/src/i18n/createStringFormatter.ts +19 -15
- package/src/i18n/index.ts +8 -11
- package/src/i18n/locale.tsx +15 -40
- package/src/i18n/utils.ts +35 -39
- package/src/index.ts +111 -172
- package/src/interactions/FocusableProvider.tsx +3 -7
- package/src/interactions/PressEvent.ts +18 -4
- package/src/interactions/createFocus.ts +12 -8
- package/src/interactions/createFocusRing.ts +21 -19
- package/src/interactions/createFocusWithin.ts +20 -13
- package/src/interactions/createFocusable.ts +15 -16
- package/src/interactions/createHover.ts +70 -55
- package/src/interactions/createInteractionModality.ts +96 -94
- package/src/interactions/createKeyboard.ts +12 -2
- package/src/interactions/createLongPress.ts +23 -23
- package/src/interactions/createMove.ts +72 -62
- package/src/interactions/createPress.ts +192 -92
- package/src/interactions/index.ts +24 -16
- package/src/label/createField.ts +18 -19
- package/src/label/createLabel.ts +18 -30
- package/src/label/createLabels.ts +8 -12
- package/src/label/index.ts +5 -5
- package/src/landmark/createLandmark.ts +30 -51
- package/src/landmark/index.ts +1 -1
- package/src/link/createLink.ts +83 -56
- package/src/link/index.ts +1 -1
- package/src/listbox/createListBox.ts +198 -66
- package/src/listbox/createOption.ts +112 -71
- package/src/listbox/index.ts +2 -6
- package/src/live-announcer/announce.ts +44 -71
- package/src/live-announcer/index.ts +1 -1
- package/src/menu/createMenu.ts +171 -65
- package/src/menu/createMenuItem.ts +315 -51
- package/src/menu/createMenuTrigger.ts +15 -15
- package/src/menu/index.ts +3 -12
- package/src/meter/createMeter.ts +7 -15
- package/src/meter/index.ts +1 -1
- package/src/numberfield/createNumberField.ts +205 -80
- package/src/numberfield/index.ts +1 -1
- package/src/overlays/ariaHideOutside.ts +14 -10
- package/src/overlays/createInteractOutside.ts +21 -18
- package/src/overlays/createModal.tsx +17 -17
- package/src/overlays/createOverlay.ts +38 -8
- package/src/overlays/createOverlayTrigger.ts +16 -16
- package/src/overlays/createPreventScroll.ts +46 -24
- package/src/overlays/index.ts +6 -17
- package/src/popover/calculatePosition.ts +134 -124
- package/src/popover/createOverlayPosition.ts +55 -40
- package/src/popover/createPopover.ts +42 -17
- package/src/popover/index.ts +3 -3
- package/src/progress/createProgressBar.ts +31 -32
- package/src/progress/index.ts +1 -1
- package/src/radio/createRadio.ts +114 -75
- package/src/radio/createRadioGroup.ts +83 -77
- package/src/radio/createRadioGroupState.ts +7 -31
- package/src/radio/index.ts +3 -8
- package/src/searchfield/createSearchField.ts +57 -29
- package/src/searchfield/index.ts +2 -2
- package/src/select/createHiddenSelect.tsx +57 -44
- package/src/select/createSelect.ts +146 -73
- package/src/select/index.ts +2 -7
- package/src/selection/DOMLayoutDelegate.ts +102 -0
- package/src/selection/ListKeyboardDelegate.ts +398 -0
- package/src/selection/constants.ts +16 -0
- package/src/selection/createCollectionRowInteraction.ts +209 -0
- package/src/selection/createScrollIntoViewOnFocus.ts +65 -0
- package/src/selection/createSelectableCollection.ts +645 -0
- package/src/selection/createSelectableItem.ts +498 -0
- package/src/selection/createSelectableList.ts +93 -0
- package/src/selection/createTypeSelect.ts +120 -59
- package/src/selection/index.ts +32 -1
- package/src/selection/selectItem.ts +80 -0
- package/src/selection/utils.ts +82 -0
- package/src/separator/createSeparator.ts +20 -25
- package/src/separator/index.ts +1 -1
- package/src/slider/createSlider.ts +128 -112
- package/src/slider/index.ts +2 -2
- package/src/ssr/index.tsx +38 -46
- package/src/steplist/createStepList.ts +106 -0
- package/src/steplist/index.ts +8 -0
- package/src/switch/createSwitch.ts +19 -14
- package/src/switch/index.ts +1 -1
- package/src/table/createTable.ts +192 -95
- package/src/table/createTableCell.ts +17 -16
- package/src/table/createTableColumnHeader.ts +67 -20
- package/src/table/createTableColumnResize.ts +256 -0
- package/src/table/createTableHeaderRow.ts +7 -7
- package/src/table/createTableRow.ts +206 -91
- package/src/table/createTableRowGroup.ts +5 -7
- package/src/table/createTableSelectAllCheckbox.ts +14 -14
- package/src/table/createTableSelectionCheckbox.ts +8 -8
- package/src/table/index.ts +14 -9
- package/src/table/types.ts +43 -7
- package/src/tabs/createTabs.ts +123 -111
- package/src/tabs/index.ts +1 -1
- package/src/tag/createTag.ts +57 -50
- package/src/tag/createTagGroup.ts +47 -41
- package/src/tag/index.ts +2 -6
- package/src/textfield/createTextField.ts +67 -35
- package/src/textfield/index.ts +1 -5
- package/src/toast/createToast.ts +29 -26
- package/src/toast/createToastRegion.ts +169 -26
- package/src/toast/index.ts +2 -6
- package/src/toggle/createToggle.ts +115 -53
- package/src/toggle/createToggleState.ts +2 -10
- package/src/toggle/index.ts +4 -5
- package/src/toolbar/createToolbar.ts +214 -230
- package/src/toolbar/index.ts +1 -1
- package/src/tooltip/createTooltip.ts +11 -24
- package/src/tooltip/createTooltipTrigger.ts +61 -49
- package/src/tooltip/index.ts +2 -2
- package/src/tree/createTree.ts +128 -72
- package/src/tree/createTreeItem.ts +120 -135
- package/src/tree/createTreeSelectionCheckbox.ts +11 -8
- package/src/tree/index.ts +4 -4
- package/src/tree/types.ts +20 -6
- package/src/utils/animation.ts +151 -0
- package/src/utils/createDescription.ts +6 -23
- package/src/utils/dom.ts +265 -68
- package/src/utils/env.ts +9 -11
- package/src/utils/events.ts +7 -7
- package/src/utils/filterDOMProps.ts +49 -49
- package/src/utils/focus.ts +60 -68
- package/src/utils/geometry.ts +1 -4
- package/src/utils/globalListeners.ts +9 -9
- package/src/utils/index.ts +20 -22
- package/src/utils/keyboard.ts +25 -0
- package/src/utils/mergeProps.ts +49 -15
- package/src/utils/platform.ts +2 -2
- package/src/utils/reactivity.ts +3 -3
- package/src/utils/scrollIntoView.ts +181 -0
- package/src/utils/textSelection.ts +16 -16
- package/src/visually-hidden/createVisuallyHidden.ts +16 -28
- package/src/visually-hidden/index.ts +1 -1
- package/dist/i18n/NumberFormatter.d.ts +0 -43
- package/dist/i18n/NumberFormatter.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/index.ssr.js +0 -17082
- package/dist/index.ssr.js.map +0 -1
- package/src/i18n/NumberFormatter.ts +0 -266
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","names":[],"sources":["../../src/i18n/createNumberFormatter.ts","../../src/i18n/createDateFormatter.ts","../../src/i18n/createFilter.ts","../../src/i18n/createStringFormatter.ts"],"sourcesContent":["/**\n * createNumberFormatter hook for solidaria\n *\n * Provides localized number formatting with automatic locale updates.\n *\n * Port of @react-aria/i18n useNumberFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { NumberFormatter, type NumberFormatOptions } from \"@internationalized/number\";\n\n/**\n * Provides localized number formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function PriceDisplay(props: { value: number }) {\n * const formatter = createNumberFormatter({\n * style: 'currency',\n * currency: 'USD',\n * });\n *\n * return <span>{formatter().format(props.value)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Percent formatting\n * const percentFormatter = createNumberFormatter({\n * style: 'percent',\n * minimumFractionDigits: 1,\n * });\n * percentFormatter().format(0.125); // '12.5%'\n *\n * // Unit formatting\n * const tempFormatter = createNumberFormatter({\n * style: 'unit',\n * unit: 'celsius',\n * });\n * tempFormatter().format(25); // '25°C'\n * ```\n */\nexport function createNumberFormatter(options: NumberFormatOptions = {}): () => NumberFormatter {\n const locale = useLocale();\n\n return createMemo(() => new NumberFormatter(locale().locale, options));\n}\n","/**\n * createDateFormatter hook for solidaria\n *\n * Provides localized date formatting with caching.\n *\n * Port of @react-aria/i18n useDateFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { createCacheKey } from \"./utils\";\n\nconst dateFormatterCache = new Map<string, Intl.DateTimeFormat>();\n\n/**\n * Gets or creates a cached date formatter.\n */\nfunction getCachedDateFormatter(\n locale: string,\n options?: Intl.DateTimeFormatOptions,\n): Intl.DateTimeFormat {\n const cacheKey = createCacheKey(locale, options as Record<string, unknown>);\n\n if (dateFormatterCache.has(cacheKey)) {\n return dateFormatterCache.get(cacheKey)!;\n }\n\n const formatter = new Intl.DateTimeFormat(locale, options);\n dateFormatterCache.set(cacheKey, formatter);\n return formatter;\n}\n\n/**\n * Provides localized date and time formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function DateDisplay(props: { date: Date }) {\n * const formatter = createDateFormatter({\n * year: 'numeric',\n * month: 'long',\n * day: 'numeric',\n * });\n *\n * return <span>{formatter().format(props.date)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Short date\n * const shortDate = createDateFormatter({ dateStyle: 'short' });\n * shortDate().format(new Date()); // '1/19/26' (US) or '19/01/26' (UK)\n *\n * // Full date with time\n * const fullDateTime = createDateFormatter({\n * dateStyle: 'full',\n * timeStyle: 'short',\n * });\n *\n * // Time only\n * const timeFormatter = createDateFormatter({\n * hour: 'numeric',\n * minute: '2-digit',\n * });\n * ```\n */\nexport function createDateFormatter(\n options?: Intl.DateTimeFormatOptions,\n): () => Intl.DateTimeFormat {\n const locale = useLocale();\n\n return createMemo(() => getCachedDateFormatter(locale().locale, options));\n}\n","/**\n * createFilter hook for solidaria\n *\n * Provides localized string filtering with collation support.\n *\n * Port of @react-aria/i18n useFilter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { createCollator } from \"./createCollator\";\n\nexport interface Filter {\n /** Returns whether a string starts with a given substring. */\n startsWith(string: string, substring: string): boolean;\n /** Returns whether a string ends with a given substring. */\n endsWith(string: string, substring: string): boolean;\n /** Returns whether a string contains a given substring. */\n contains(string: string, substring: string): boolean;\n}\n\n/**\n * Provides localized string search functionality for filtering or matching items.\n * Respects locale-specific collation rules for case and diacritic sensitivity.\n *\n * @example\n * ```tsx\n * function SearchableList(props: { items: { name: string }[] }) {\n * const [query, setQuery] = createSignal('');\n * const filter = createFilter({ sensitivity: 'base' });\n *\n * const filteredItems = () =>\n * props.items.filter((item) =>\n * filter().contains(item.name, query())\n * );\n *\n * return (\n * <>\n * <input\n * value={query()}\n * onInput={(e) => setQuery(e.target.value)}\n * placeholder=\"Search...\"\n * />\n * <ul>\n * <For each={filteredItems()}>\n * {(item) => <li>{item.name}</li>}\n * </For>\n * </ul>\n * </>\n * );\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Case-insensitive, diacritic-insensitive filtering\n * const filter = createFilter({ sensitivity: 'base' });\n * filter().contains('Café', 'cafe'); // true\n * filter().startsWith('Hello', 'hello'); // true\n * ```\n */\nexport function createFilter(options?: Intl.CollatorOptions): () => Filter {\n const collator = createCollator({\n usage: \"search\",\n ...options,\n });\n\n return createMemo(() => {\n const coll = collator();\n\n const startsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n // Normalize both strings for safe slicing\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(0, normalizedSub.length), normalizedSub) === 0;\n };\n\n const endsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(-normalizedSub.length), normalizedSub) === 0;\n };\n\n const contains = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n const sliceLen = normalizedSub.length;\n\n for (let scan = 0; scan + sliceLen <= normalizedStr.length; scan++) {\n const slice = normalizedStr.slice(scan, scan + sliceLen);\n if (coll.compare(normalizedSub, slice) === 0) {\n return true;\n }\n }\n\n return false;\n };\n\n return {\n startsWith,\n endsWith,\n contains,\n };\n });\n}\n","/**\n * String formatter for localized strings with ICU MessageFormat support.\n * Port of @react-aria/i18n useLocalizedStringFormatter.\n */\n\nimport {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { createMemo, type Accessor } from \"solid-js\";\nimport { useLocale } from \"./locale\";\n\n// Cache for dictionaries to avoid recreating them\nconst cache = new WeakMap<\n LocalizedStrings<string, LocalizedString>,\n LocalizedStringDictionary<string, LocalizedString>\n>();\n\nfunction getCachedDictionary<K extends string, T extends LocalizedString>(\n strings: LocalizedStrings<K, T>,\n): LocalizedStringDictionary<K, T> {\n let dictionary = cache.get(strings as LocalizedStrings<string, LocalizedString>);\n if (!dictionary) {\n dictionary = new LocalizedStringDictionary(\n strings as LocalizedStrings<string, LocalizedString>,\n );\n cache.set(strings as LocalizedStrings<string, LocalizedString>, dictionary);\n }\n return dictionary as LocalizedStringDictionary<K, T>;\n}\n\n/**\n * Returns a cached LocalizedStringDictionary for the given strings.\n */\nexport function createStringDictionary<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): LocalizedStringDictionary<K, T> {\n return (\n (packageName && LocalizedStringDictionary.getGlobalDictionaryForPackage(packageName)) ||\n getCachedDictionary(strings)\n );\n}\n\n/**\n * Provides localized string formatting for the current locale.\n * Supports interpolating variables, selecting the correct pluralization,\n * and formatting numbers. Automatically updates when the locale changes.\n *\n * @param strings - A mapping of languages to localized strings by key.\n * @param packageName - Optional package name for global dictionary lookup.\n *\n * @example\n * ```tsx\n * const strings = {\n * 'en-US': {\n * greeting: 'Hello, {name}!',\n * count: '{count, plural, one {# item} other {# items}}'\n * }\n * };\n *\n * function MyComponent() {\n * const stringFormatter = createStringFormatter(strings);\n *\n * return (\n * <div>\n * {stringFormatter().format('greeting', { name: 'World' })}\n * {stringFormatter().format('count', { count: 5 })}\n * </div>\n * );\n * }\n * ```\n */\nexport function createStringFormatter<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): Accessor<LocalizedStringFormatter<K, T>> {\n const localeAccessor = useLocale();\n const dictionary = createStringDictionary(strings, packageName);\n\n return createMemo(() => new LocalizedStringFormatter(localeAccessor().locale, dictionary));\n}\n\nexport type {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n LocalizedStrings,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,SAAgB,sBAAsB,UAA+B,CAAC,GAA0B;CAC9F,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,IAAI,gBAAgB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AACvE;;;;;;;;;;ACrCA,MAAM,qCAAqB,IAAI,IAAiC;;;;AAKhE,SAAS,uBACP,QACA,SACqB;CACrB,MAAM,WAAW,eAAe,QAAQ,OAAkC;CAE1E,IAAI,mBAAmB,IAAI,QAAQ,GACjC,OAAO,mBAAmB,IAAI,QAAQ;CAGxC,MAAM,YAAY,IAAI,KAAK,eAAe,QAAQ,OAAO;CACzD,mBAAmB,IAAI,UAAU,SAAS;CAC1C,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,SAAgB,oBACd,SAC2B;CAC3B,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,uBAAuB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AAC1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACdA,SAAgB,aAAa,SAA8C;CACzE,MAAM,WAAW,eAAe;EAC9B,OAAO;EACP,GAAG;CACL,CAAC;CAED,OAAO,iBAAiB;EACtB,MAAM,OAAO,SAAS;EAEtB,MAAM,cAAc,KAAa,cAA+B;GAC9D,IAAI,UAAU,WAAW,GACvB,OAAO;GAIT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,GAAG,cAAc,MAAM,GAAG,aAAa,MAAM;EACvF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,CAAC,cAAc,MAAM,GAAG,aAAa,MAAM;EACrF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAC/C,MAAM,WAAW,cAAc;GAE/B,KAAK,IAAI,OAAO,GAAG,OAAO,YAAY,cAAc,QAAQ,QAAQ;IAClE,MAAM,QAAQ,cAAc,MAAM,MAAM,OAAO,QAAQ;IACvD,IAAI,KAAK,QAAQ,eAAe,KAAK,MAAM,GACzC,OAAO;GAEX;GAEA,OAAO;EACT;EAEA,OAAO;GACL;GACA;GACA;EACF;CACF,CAAC;AACH;;;;;;;ACtGA,MAAM,wBAAQ,IAAI,QAGhB;AAEF,SAAS,oBACP,SACiC;CACjC,IAAI,aAAa,MAAM,IAAI,OAAoD;CAC/E,IAAI,CAAC,YAAY;EACf,aAAa,IAAI,0BACf,OACF;EACA,MAAM,IAAI,SAAsD,UAAU;CAC5E;CACA,OAAO;AACT;;;;AAKA,SAAgB,uBAGd,SAAiC,aAAuD;CACxF,OACG,eAAe,0BAA0B,8BAA8B,WAAW,KACnF,oBAAoB,OAAO;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAgB,sBAGd,SAAiC,aAAgE;CACjG,MAAM,iBAAiB,UAAU;CACjC,MAAM,aAAa,uBAAuB,SAAS,WAAW;CAE9D,OAAO,iBAAiB,IAAI,yBAAyB,eAAe,CAAC,CAAC,QAAQ,UAAU,CAAC;AAC3F"}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
import { a as useLocale, o as createCacheKey, t as createCollator } from "./createCollator.jsx";
|
|
2
|
+
import { createMemo } from "solid-js";
|
|
3
|
+
import { NumberFormatter, NumberFormatter as NumberFormatter$1 } from "@internationalized/number";
|
|
4
|
+
import { LocalizedStringDictionary, LocalizedStringFormatter } from "@internationalized/string";
|
|
5
|
+
//#region src/i18n/createNumberFormatter.ts
|
|
6
|
+
/**
|
|
7
|
+
* createNumberFormatter hook for solidaria
|
|
8
|
+
*
|
|
9
|
+
* Provides localized number formatting with automatic locale updates.
|
|
10
|
+
*
|
|
11
|
+
* Port of @react-aria/i18n useNumberFormatter.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Provides localized number formatting for the current locale.
|
|
15
|
+
* Automatically updates when the locale changes.
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* ```tsx
|
|
19
|
+
* function PriceDisplay(props: { value: number }) {
|
|
20
|
+
* const formatter = createNumberFormatter({
|
|
21
|
+
* style: 'currency',
|
|
22
|
+
* currency: 'USD',
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* return <span>{formatter().format(props.value)}</span>;
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```tsx
|
|
31
|
+
* // Percent formatting
|
|
32
|
+
* const percentFormatter = createNumberFormatter({
|
|
33
|
+
* style: 'percent',
|
|
34
|
+
* minimumFractionDigits: 1,
|
|
35
|
+
* });
|
|
36
|
+
* percentFormatter().format(0.125); // '12.5%'
|
|
37
|
+
*
|
|
38
|
+
* // Unit formatting
|
|
39
|
+
* const tempFormatter = createNumberFormatter({
|
|
40
|
+
* style: 'unit',
|
|
41
|
+
* unit: 'celsius',
|
|
42
|
+
* });
|
|
43
|
+
* tempFormatter().format(25); // '25°C'
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
function createNumberFormatter(options = {}) {
|
|
47
|
+
const locale = useLocale();
|
|
48
|
+
return createMemo(() => new NumberFormatter(locale().locale, options));
|
|
49
|
+
}
|
|
50
|
+
//#endregion
|
|
51
|
+
//#region src/i18n/createDateFormatter.ts
|
|
52
|
+
/**
|
|
53
|
+
* createDateFormatter hook for solidaria
|
|
54
|
+
*
|
|
55
|
+
* Provides localized date formatting with caching.
|
|
56
|
+
*
|
|
57
|
+
* Port of @react-aria/i18n useDateFormatter.
|
|
58
|
+
*/
|
|
59
|
+
const dateFormatterCache = /* @__PURE__ */ new Map();
|
|
60
|
+
/**
|
|
61
|
+
* Gets or creates a cached date formatter.
|
|
62
|
+
*/
|
|
63
|
+
function getCachedDateFormatter(locale, options) {
|
|
64
|
+
const cacheKey = createCacheKey(locale, options);
|
|
65
|
+
if (dateFormatterCache.has(cacheKey)) return dateFormatterCache.get(cacheKey);
|
|
66
|
+
const formatter = new Intl.DateTimeFormat(locale, options);
|
|
67
|
+
dateFormatterCache.set(cacheKey, formatter);
|
|
68
|
+
return formatter;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Provides localized date and time formatting for the current locale.
|
|
72
|
+
* Automatically updates when the locale changes.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```tsx
|
|
76
|
+
* function DateDisplay(props: { date: Date }) {
|
|
77
|
+
* const formatter = createDateFormatter({
|
|
78
|
+
* year: 'numeric',
|
|
79
|
+
* month: 'long',
|
|
80
|
+
* day: 'numeric',
|
|
81
|
+
* });
|
|
82
|
+
*
|
|
83
|
+
* return <span>{formatter().format(props.date)}</span>;
|
|
84
|
+
* }
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```tsx
|
|
89
|
+
* // Short date
|
|
90
|
+
* const shortDate = createDateFormatter({ dateStyle: 'short' });
|
|
91
|
+
* shortDate().format(new Date()); // '1/19/26' (US) or '19/01/26' (UK)
|
|
92
|
+
*
|
|
93
|
+
* // Full date with time
|
|
94
|
+
* const fullDateTime = createDateFormatter({
|
|
95
|
+
* dateStyle: 'full',
|
|
96
|
+
* timeStyle: 'short',
|
|
97
|
+
* });
|
|
98
|
+
*
|
|
99
|
+
* // Time only
|
|
100
|
+
* const timeFormatter = createDateFormatter({
|
|
101
|
+
* hour: 'numeric',
|
|
102
|
+
* minute: '2-digit',
|
|
103
|
+
* });
|
|
104
|
+
* ```
|
|
105
|
+
*/
|
|
106
|
+
function createDateFormatter(options) {
|
|
107
|
+
const locale = useLocale();
|
|
108
|
+
return createMemo(() => getCachedDateFormatter(locale().locale, options));
|
|
109
|
+
}
|
|
110
|
+
//#endregion
|
|
111
|
+
//#region src/i18n/createFilter.ts
|
|
112
|
+
/**
|
|
113
|
+
* createFilter hook for solidaria
|
|
114
|
+
*
|
|
115
|
+
* Provides localized string filtering with collation support.
|
|
116
|
+
*
|
|
117
|
+
* Port of @react-aria/i18n useFilter.
|
|
118
|
+
*/
|
|
119
|
+
/**
|
|
120
|
+
* Provides localized string search functionality for filtering or matching items.
|
|
121
|
+
* Respects locale-specific collation rules for case and diacritic sensitivity.
|
|
122
|
+
*
|
|
123
|
+
* @example
|
|
124
|
+
* ```tsx
|
|
125
|
+
* function SearchableList(props: { items: { name: string }[] }) {
|
|
126
|
+
* const [query, setQuery] = createSignal('');
|
|
127
|
+
* const filter = createFilter({ sensitivity: 'base' });
|
|
128
|
+
*
|
|
129
|
+
* const filteredItems = () =>
|
|
130
|
+
* props.items.filter((item) =>
|
|
131
|
+
* filter().contains(item.name, query())
|
|
132
|
+
* );
|
|
133
|
+
*
|
|
134
|
+
* return (
|
|
135
|
+
* <>
|
|
136
|
+
* <input
|
|
137
|
+
* value={query()}
|
|
138
|
+
* onInput={(e) => setQuery(e.target.value)}
|
|
139
|
+
* placeholder="Search..."
|
|
140
|
+
* />
|
|
141
|
+
* <ul>
|
|
142
|
+
* <For each={filteredItems()}>
|
|
143
|
+
* {(item) => <li>{item.name}</li>}
|
|
144
|
+
* </For>
|
|
145
|
+
* </ul>
|
|
146
|
+
* </>
|
|
147
|
+
* );
|
|
148
|
+
* }
|
|
149
|
+
* ```
|
|
150
|
+
*
|
|
151
|
+
* @example
|
|
152
|
+
* ```tsx
|
|
153
|
+
* // Case-insensitive, diacritic-insensitive filtering
|
|
154
|
+
* const filter = createFilter({ sensitivity: 'base' });
|
|
155
|
+
* filter().contains('Café', 'cafe'); // true
|
|
156
|
+
* filter().startsWith('Hello', 'hello'); // true
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
function createFilter(options) {
|
|
160
|
+
const collator = createCollator({
|
|
161
|
+
usage: "search",
|
|
162
|
+
...options
|
|
163
|
+
});
|
|
164
|
+
return createMemo(() => {
|
|
165
|
+
const coll = collator();
|
|
166
|
+
const startsWith = (str, substring) => {
|
|
167
|
+
if (substring.length === 0) return true;
|
|
168
|
+
const normalizedStr = str.normalize("NFC");
|
|
169
|
+
const normalizedSub = substring.normalize("NFC");
|
|
170
|
+
return coll.compare(normalizedStr.slice(0, normalizedSub.length), normalizedSub) === 0;
|
|
171
|
+
};
|
|
172
|
+
const endsWith = (str, substring) => {
|
|
173
|
+
if (substring.length === 0) return true;
|
|
174
|
+
const normalizedStr = str.normalize("NFC");
|
|
175
|
+
const normalizedSub = substring.normalize("NFC");
|
|
176
|
+
return coll.compare(normalizedStr.slice(-normalizedSub.length), normalizedSub) === 0;
|
|
177
|
+
};
|
|
178
|
+
const contains = (str, substring) => {
|
|
179
|
+
if (substring.length === 0) return true;
|
|
180
|
+
const normalizedStr = str.normalize("NFC");
|
|
181
|
+
const normalizedSub = substring.normalize("NFC");
|
|
182
|
+
const sliceLen = normalizedSub.length;
|
|
183
|
+
for (let scan = 0; scan + sliceLen <= normalizedStr.length; scan++) {
|
|
184
|
+
const slice = normalizedStr.slice(scan, scan + sliceLen);
|
|
185
|
+
if (coll.compare(normalizedSub, slice) === 0) return true;
|
|
186
|
+
}
|
|
187
|
+
return false;
|
|
188
|
+
};
|
|
189
|
+
return {
|
|
190
|
+
startsWith,
|
|
191
|
+
endsWith,
|
|
192
|
+
contains
|
|
193
|
+
};
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
//#endregion
|
|
197
|
+
//#region src/i18n/createStringFormatter.ts
|
|
198
|
+
/**
|
|
199
|
+
* String formatter for localized strings with ICU MessageFormat support.
|
|
200
|
+
* Port of @react-aria/i18n useLocalizedStringFormatter.
|
|
201
|
+
*/
|
|
202
|
+
const cache = /* @__PURE__ */ new WeakMap();
|
|
203
|
+
function getCachedDictionary(strings) {
|
|
204
|
+
let dictionary = cache.get(strings);
|
|
205
|
+
if (!dictionary) {
|
|
206
|
+
dictionary = new LocalizedStringDictionary(strings);
|
|
207
|
+
cache.set(strings, dictionary);
|
|
208
|
+
}
|
|
209
|
+
return dictionary;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Returns a cached LocalizedStringDictionary for the given strings.
|
|
213
|
+
*/
|
|
214
|
+
function createStringDictionary(strings, packageName) {
|
|
215
|
+
return packageName && LocalizedStringDictionary.getGlobalDictionaryForPackage(packageName) || getCachedDictionary(strings);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Provides localized string formatting for the current locale.
|
|
219
|
+
* Supports interpolating variables, selecting the correct pluralization,
|
|
220
|
+
* and formatting numbers. Automatically updates when the locale changes.
|
|
221
|
+
*
|
|
222
|
+
* @param strings - A mapping of languages to localized strings by key.
|
|
223
|
+
* @param packageName - Optional package name for global dictionary lookup.
|
|
224
|
+
*
|
|
225
|
+
* @example
|
|
226
|
+
* ```tsx
|
|
227
|
+
* const strings = {
|
|
228
|
+
* 'en-US': {
|
|
229
|
+
* greeting: 'Hello, {name}!',
|
|
230
|
+
* count: '{count, plural, one {# item} other {# items}}'
|
|
231
|
+
* }
|
|
232
|
+
* };
|
|
233
|
+
*
|
|
234
|
+
* function MyComponent() {
|
|
235
|
+
* const stringFormatter = createStringFormatter(strings);
|
|
236
|
+
*
|
|
237
|
+
* return (
|
|
238
|
+
* <div>
|
|
239
|
+
* {stringFormatter().format('greeting', { name: 'World' })}
|
|
240
|
+
* {stringFormatter().format('count', { count: 5 })}
|
|
241
|
+
* </div>
|
|
242
|
+
* );
|
|
243
|
+
* }
|
|
244
|
+
* ```
|
|
245
|
+
*/
|
|
246
|
+
function createStringFormatter(strings, packageName) {
|
|
247
|
+
const localeAccessor = useLocale();
|
|
248
|
+
const dictionary = createStringDictionary(strings, packageName);
|
|
249
|
+
return createMemo(() => new LocalizedStringFormatter(localeAccessor().locale, dictionary));
|
|
250
|
+
}
|
|
251
|
+
//#endregion
|
|
252
|
+
export { createDateFormatter as a, createFilter as i, createStringDictionary as n, createNumberFormatter as o, createStringFormatter as r, NumberFormatter$1 as t };
|
|
253
|
+
|
|
254
|
+
//# sourceMappingURL=i18n.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.jsx","names":[],"sources":["../../src/i18n/createNumberFormatter.ts","../../src/i18n/createDateFormatter.ts","../../src/i18n/createFilter.ts","../../src/i18n/createStringFormatter.ts"],"sourcesContent":["/**\n * createNumberFormatter hook for solidaria\n *\n * Provides localized number formatting with automatic locale updates.\n *\n * Port of @react-aria/i18n useNumberFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { NumberFormatter, type NumberFormatOptions } from \"@internationalized/number\";\n\n/**\n * Provides localized number formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function PriceDisplay(props: { value: number }) {\n * const formatter = createNumberFormatter({\n * style: 'currency',\n * currency: 'USD',\n * });\n *\n * return <span>{formatter().format(props.value)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Percent formatting\n * const percentFormatter = createNumberFormatter({\n * style: 'percent',\n * minimumFractionDigits: 1,\n * });\n * percentFormatter().format(0.125); // '12.5%'\n *\n * // Unit formatting\n * const tempFormatter = createNumberFormatter({\n * style: 'unit',\n * unit: 'celsius',\n * });\n * tempFormatter().format(25); // '25°C'\n * ```\n */\nexport function createNumberFormatter(options: NumberFormatOptions = {}): () => NumberFormatter {\n const locale = useLocale();\n\n return createMemo(() => new NumberFormatter(locale().locale, options));\n}\n","/**\n * createDateFormatter hook for solidaria\n *\n * Provides localized date formatting with caching.\n *\n * Port of @react-aria/i18n useDateFormatter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { useLocale } from \"./locale\";\nimport { createCacheKey } from \"./utils\";\n\nconst dateFormatterCache = new Map<string, Intl.DateTimeFormat>();\n\n/**\n * Gets or creates a cached date formatter.\n */\nfunction getCachedDateFormatter(\n locale: string,\n options?: Intl.DateTimeFormatOptions,\n): Intl.DateTimeFormat {\n const cacheKey = createCacheKey(locale, options as Record<string, unknown>);\n\n if (dateFormatterCache.has(cacheKey)) {\n return dateFormatterCache.get(cacheKey)!;\n }\n\n const formatter = new Intl.DateTimeFormat(locale, options);\n dateFormatterCache.set(cacheKey, formatter);\n return formatter;\n}\n\n/**\n * Provides localized date and time formatting for the current locale.\n * Automatically updates when the locale changes.\n *\n * @example\n * ```tsx\n * function DateDisplay(props: { date: Date }) {\n * const formatter = createDateFormatter({\n * year: 'numeric',\n * month: 'long',\n * day: 'numeric',\n * });\n *\n * return <span>{formatter().format(props.date)}</span>;\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Short date\n * const shortDate = createDateFormatter({ dateStyle: 'short' });\n * shortDate().format(new Date()); // '1/19/26' (US) or '19/01/26' (UK)\n *\n * // Full date with time\n * const fullDateTime = createDateFormatter({\n * dateStyle: 'full',\n * timeStyle: 'short',\n * });\n *\n * // Time only\n * const timeFormatter = createDateFormatter({\n * hour: 'numeric',\n * minute: '2-digit',\n * });\n * ```\n */\nexport function createDateFormatter(\n options?: Intl.DateTimeFormatOptions,\n): () => Intl.DateTimeFormat {\n const locale = useLocale();\n\n return createMemo(() => getCachedDateFormatter(locale().locale, options));\n}\n","/**\n * createFilter hook for solidaria\n *\n * Provides localized string filtering with collation support.\n *\n * Port of @react-aria/i18n useFilter.\n */\n\nimport { createMemo } from \"solid-js\";\nimport { createCollator } from \"./createCollator\";\n\nexport interface Filter {\n /** Returns whether a string starts with a given substring. */\n startsWith(string: string, substring: string): boolean;\n /** Returns whether a string ends with a given substring. */\n endsWith(string: string, substring: string): boolean;\n /** Returns whether a string contains a given substring. */\n contains(string: string, substring: string): boolean;\n}\n\n/**\n * Provides localized string search functionality for filtering or matching items.\n * Respects locale-specific collation rules for case and diacritic sensitivity.\n *\n * @example\n * ```tsx\n * function SearchableList(props: { items: { name: string }[] }) {\n * const [query, setQuery] = createSignal('');\n * const filter = createFilter({ sensitivity: 'base' });\n *\n * const filteredItems = () =>\n * props.items.filter((item) =>\n * filter().contains(item.name, query())\n * );\n *\n * return (\n * <>\n * <input\n * value={query()}\n * onInput={(e) => setQuery(e.target.value)}\n * placeholder=\"Search...\"\n * />\n * <ul>\n * <For each={filteredItems()}>\n * {(item) => <li>{item.name}</li>}\n * </For>\n * </ul>\n * </>\n * );\n * }\n * ```\n *\n * @example\n * ```tsx\n * // Case-insensitive, diacritic-insensitive filtering\n * const filter = createFilter({ sensitivity: 'base' });\n * filter().contains('Café', 'cafe'); // true\n * filter().startsWith('Hello', 'hello'); // true\n * ```\n */\nexport function createFilter(options?: Intl.CollatorOptions): () => Filter {\n const collator = createCollator({\n usage: \"search\",\n ...options,\n });\n\n return createMemo(() => {\n const coll = collator();\n\n const startsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n // Normalize both strings for safe slicing\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(0, normalizedSub.length), normalizedSub) === 0;\n };\n\n const endsWith = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n\n return coll.compare(normalizedStr.slice(-normalizedSub.length), normalizedSub) === 0;\n };\n\n const contains = (str: string, substring: string): boolean => {\n if (substring.length === 0) {\n return true;\n }\n\n const normalizedStr = str.normalize(\"NFC\");\n const normalizedSub = substring.normalize(\"NFC\");\n const sliceLen = normalizedSub.length;\n\n for (let scan = 0; scan + sliceLen <= normalizedStr.length; scan++) {\n const slice = normalizedStr.slice(scan, scan + sliceLen);\n if (coll.compare(normalizedSub, slice) === 0) {\n return true;\n }\n }\n\n return false;\n };\n\n return {\n startsWith,\n endsWith,\n contains,\n };\n });\n}\n","/**\n * String formatter for localized strings with ICU MessageFormat support.\n * Port of @react-aria/i18n useLocalizedStringFormatter.\n */\n\nimport {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n type LocalizedStrings,\n} from \"@internationalized/string\";\nimport { createMemo, type Accessor } from \"solid-js\";\nimport { useLocale } from \"./locale\";\n\n// Cache for dictionaries to avoid recreating them\nconst cache = new WeakMap<\n LocalizedStrings<string, LocalizedString>,\n LocalizedStringDictionary<string, LocalizedString>\n>();\n\nfunction getCachedDictionary<K extends string, T extends LocalizedString>(\n strings: LocalizedStrings<K, T>,\n): LocalizedStringDictionary<K, T> {\n let dictionary = cache.get(strings as LocalizedStrings<string, LocalizedString>);\n if (!dictionary) {\n dictionary = new LocalizedStringDictionary(\n strings as LocalizedStrings<string, LocalizedString>,\n );\n cache.set(strings as LocalizedStrings<string, LocalizedString>, dictionary);\n }\n return dictionary as LocalizedStringDictionary<K, T>;\n}\n\n/**\n * Returns a cached LocalizedStringDictionary for the given strings.\n */\nexport function createStringDictionary<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): LocalizedStringDictionary<K, T> {\n return (\n (packageName && LocalizedStringDictionary.getGlobalDictionaryForPackage(packageName)) ||\n getCachedDictionary(strings)\n );\n}\n\n/**\n * Provides localized string formatting for the current locale.\n * Supports interpolating variables, selecting the correct pluralization,\n * and formatting numbers. Automatically updates when the locale changes.\n *\n * @param strings - A mapping of languages to localized strings by key.\n * @param packageName - Optional package name for global dictionary lookup.\n *\n * @example\n * ```tsx\n * const strings = {\n * 'en-US': {\n * greeting: 'Hello, {name}!',\n * count: '{count, plural, one {# item} other {# items}}'\n * }\n * };\n *\n * function MyComponent() {\n * const stringFormatter = createStringFormatter(strings);\n *\n * return (\n * <div>\n * {stringFormatter().format('greeting', { name: 'World' })}\n * {stringFormatter().format('count', { count: 5 })}\n * </div>\n * );\n * }\n * ```\n */\nexport function createStringFormatter<\n K extends string = string,\n T extends LocalizedString = string,\n>(strings: LocalizedStrings<K, T>, packageName?: string): Accessor<LocalizedStringFormatter<K, T>> {\n const localeAccessor = useLocale();\n const dictionary = createStringDictionary(strings, packageName);\n\n return createMemo(() => new LocalizedStringFormatter(localeAccessor().locale, dictionary));\n}\n\nexport type {\n LocalizedString,\n LocalizedStringDictionary,\n LocalizedStringFormatter,\n LocalizedStrings,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6CA,SAAgB,sBAAsB,UAA+B,CAAC,GAA0B;CAC9F,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,IAAI,gBAAgB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AACvE;;;;;;;;;;ACrCA,MAAM,qCAAqB,IAAI,IAAiC;;;;AAKhE,SAAS,uBACP,QACA,SACqB;CACrB,MAAM,WAAW,eAAe,QAAQ,OAAkC;CAE1E,IAAI,mBAAmB,IAAI,QAAQ,GACjC,OAAO,mBAAmB,IAAI,QAAQ;CAGxC,MAAM,YAAY,IAAI,KAAK,eAAe,QAAQ,OAAO;CACzD,mBAAmB,IAAI,UAAU,SAAS;CAC1C,OAAO;AACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,SAAgB,oBACd,SAC2B;CAC3B,MAAM,SAAS,UAAU;CAEzB,OAAO,iBAAiB,uBAAuB,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC;AAC1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACdA,SAAgB,aAAa,SAA8C;CACzE,MAAM,WAAW,eAAe;EAC9B,OAAO;EACP,GAAG;CACL,CAAC;CAED,OAAO,iBAAiB;EACtB,MAAM,OAAO,SAAS;EAEtB,MAAM,cAAc,KAAa,cAA+B;GAC9D,IAAI,UAAU,WAAW,GACvB,OAAO;GAIT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,GAAG,cAAc,MAAM,GAAG,aAAa,MAAM;EACvF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAE/C,OAAO,KAAK,QAAQ,cAAc,MAAM,CAAC,cAAc,MAAM,GAAG,aAAa,MAAM;EACrF;EAEA,MAAM,YAAY,KAAa,cAA+B;GAC5D,IAAI,UAAU,WAAW,GACvB,OAAO;GAGT,MAAM,gBAAgB,IAAI,UAAU,KAAK;GACzC,MAAM,gBAAgB,UAAU,UAAU,KAAK;GAC/C,MAAM,WAAW,cAAc;GAE/B,KAAK,IAAI,OAAO,GAAG,OAAO,YAAY,cAAc,QAAQ,QAAQ;IAClE,MAAM,QAAQ,cAAc,MAAM,MAAM,OAAO,QAAQ;IACvD,IAAI,KAAK,QAAQ,eAAe,KAAK,MAAM,GACzC,OAAO;GAEX;GAEA,OAAO;EACT;EAEA,OAAO;GACL;GACA;GACA;EACF;CACF,CAAC;AACH;;;;;;;ACtGA,MAAM,wBAAQ,IAAI,QAGhB;AAEF,SAAS,oBACP,SACiC;CACjC,IAAI,aAAa,MAAM,IAAI,OAAoD;CAC/E,IAAI,CAAC,YAAY;EACf,aAAa,IAAI,0BACf,OACF;EACA,MAAM,IAAI,SAAsD,UAAU;CAC5E;CACA,OAAO;AACT;;;;AAKA,SAAgB,uBAGd,SAAiC,aAAuD;CACxF,OACG,eAAe,0BAA0B,8BAA8B,WAAW,KACnF,oBAAoB,OAAO;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAgB,sBAGd,SAAiC,aAAgE;CACjG,MAAM,iBAAiB,UAAU;CACjC,MAAM,aAAa,uBAAuB,SAAS,WAAW;CAE9D,OAAO,iBAAiB,IAAI,yBAAyB,eAAe,CAAC,CAAC,QAAQ,UAAU,CAAC;AAC3F"}
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import { l as disableTextSelection, s as createGlobalListeners, u as restoreTextSelection } from "./utils.js";
|
|
2
|
+
import { t as FocusableContext } from "./createFocusable.js";
|
|
3
|
+
import { createEffect, createSignal, onCleanup } from "solid-js";
|
|
4
|
+
import { createComponent } from "solid-js/web";
|
|
5
|
+
//#region src/interactions/createMove.ts
|
|
6
|
+
/**
|
|
7
|
+
* createMove - Handles move interactions across mouse, touch, pointer, and keyboard.
|
|
8
|
+
*
|
|
9
|
+
* Port of @react-aria/interactions useMove, adapted for SolidJS.
|
|
10
|
+
*/
|
|
11
|
+
function createBaseEvent(originalEvent, pointerType) {
|
|
12
|
+
return {
|
|
13
|
+
pointerType,
|
|
14
|
+
shiftKey: originalEvent.shiftKey,
|
|
15
|
+
ctrlKey: originalEvent.ctrlKey,
|
|
16
|
+
metaKey: originalEvent.metaKey,
|
|
17
|
+
altKey: originalEvent.altKey
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Handles move interactions across mouse, touch, pointer, and keyboard.
|
|
22
|
+
*/
|
|
23
|
+
function createMove(props = {}) {
|
|
24
|
+
const { onMoveStart, onMove, onMoveEnd } = props;
|
|
25
|
+
const state = {
|
|
26
|
+
didMove: false,
|
|
27
|
+
lastPosition: null,
|
|
28
|
+
id: null
|
|
29
|
+
};
|
|
30
|
+
const { addGlobalListener, removeGlobalListener } = createGlobalListeners();
|
|
31
|
+
const [pointerDown, setPointerDown] = createSignal(null);
|
|
32
|
+
const move = (originalEvent, pointerType, deltaX, deltaY) => {
|
|
33
|
+
if (deltaX === 0 && deltaY === 0) return;
|
|
34
|
+
if (!state.didMove) {
|
|
35
|
+
state.didMove = true;
|
|
36
|
+
onMoveStart?.({
|
|
37
|
+
type: "movestart",
|
|
38
|
+
...createBaseEvent(originalEvent, pointerType)
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
onMove?.({
|
|
42
|
+
type: "move",
|
|
43
|
+
deltaX,
|
|
44
|
+
deltaY,
|
|
45
|
+
...createBaseEvent(originalEvent, pointerType)
|
|
46
|
+
});
|
|
47
|
+
};
|
|
48
|
+
const end = (originalEvent, pointerType) => {
|
|
49
|
+
restoreTextSelection();
|
|
50
|
+
if (state.didMove) onMoveEnd?.({
|
|
51
|
+
type: "moveend",
|
|
52
|
+
...createBaseEvent(originalEvent, pointerType)
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
createEffect(() => {
|
|
56
|
+
const activePointer = pointerDown();
|
|
57
|
+
if (!activePointer) return;
|
|
58
|
+
if (activePointer === "pointer") {
|
|
59
|
+
const onPointerMove = (e) => {
|
|
60
|
+
if (e.pointerId === state.id) {
|
|
61
|
+
move(e, e.pointerType || "mouse", e.pageX - (state.lastPosition?.pageX ?? 0), e.pageY - (state.lastPosition?.pageY ?? 0));
|
|
62
|
+
state.lastPosition = {
|
|
63
|
+
pageX: e.pageX,
|
|
64
|
+
pageY: e.pageY
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
const onPointerUp = (e) => {
|
|
69
|
+
if (e.pointerId === state.id) {
|
|
70
|
+
end(e, e.pointerType || "mouse");
|
|
71
|
+
state.id = null;
|
|
72
|
+
removeGlobalListener("pointermove", onPointerMove, { isWindow: true });
|
|
73
|
+
removeGlobalListener("pointerup", onPointerUp, { isWindow: true });
|
|
74
|
+
removeGlobalListener("pointercancel", onPointerUp, { isWindow: true });
|
|
75
|
+
setPointerDown(null);
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
addGlobalListener("pointermove", onPointerMove, { isWindow: true });
|
|
79
|
+
addGlobalListener("pointerup", onPointerUp, { isWindow: true });
|
|
80
|
+
addGlobalListener("pointercancel", onPointerUp, { isWindow: true });
|
|
81
|
+
onCleanup(() => {
|
|
82
|
+
removeGlobalListener("pointermove", onPointerMove, { isWindow: true });
|
|
83
|
+
removeGlobalListener("pointerup", onPointerUp, { isWindow: true });
|
|
84
|
+
removeGlobalListener("pointercancel", onPointerUp, { isWindow: true });
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
const start = () => {
|
|
89
|
+
disableTextSelection();
|
|
90
|
+
state.didMove = false;
|
|
91
|
+
};
|
|
92
|
+
const moveProps = {};
|
|
93
|
+
const hasPointerEvents = typeof window !== "undefined" && typeof window.PointerEvent !== "undefined";
|
|
94
|
+
moveProps.onMouseDown = (e) => {
|
|
95
|
+
if (pointerDown() != null) return;
|
|
96
|
+
if (e.button === 0) {
|
|
97
|
+
start();
|
|
98
|
+
e.stopPropagation();
|
|
99
|
+
e.preventDefault();
|
|
100
|
+
state.lastPosition = {
|
|
101
|
+
pageX: e.pageX,
|
|
102
|
+
pageY: e.pageY
|
|
103
|
+
};
|
|
104
|
+
setPointerDown("mouse");
|
|
105
|
+
const onMouseMove = (event) => {
|
|
106
|
+
move(event, "mouse", event.pageX - (state.lastPosition?.pageX ?? 0), event.pageY - (state.lastPosition?.pageY ?? 0));
|
|
107
|
+
state.lastPosition = {
|
|
108
|
+
pageX: event.pageX,
|
|
109
|
+
pageY: event.pageY
|
|
110
|
+
};
|
|
111
|
+
};
|
|
112
|
+
const onMouseUp = (event) => {
|
|
113
|
+
end(event, "mouse");
|
|
114
|
+
removeGlobalListener("mousemove", onMouseMove);
|
|
115
|
+
removeGlobalListener("mouseup", onMouseUp);
|
|
116
|
+
setPointerDown(null);
|
|
117
|
+
};
|
|
118
|
+
addGlobalListener("mousemove", onMouseMove);
|
|
119
|
+
addGlobalListener("mouseup", onMouseUp);
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
moveProps.onTouchStart = (e) => {
|
|
123
|
+
if (pointerDown() != null || e.changedTouches.length === 0 || state.id != null) return;
|
|
124
|
+
const { pageX, pageY, identifier } = e.changedTouches[0];
|
|
125
|
+
start();
|
|
126
|
+
e.stopPropagation();
|
|
127
|
+
e.preventDefault();
|
|
128
|
+
state.lastPosition = {
|
|
129
|
+
pageX,
|
|
130
|
+
pageY
|
|
131
|
+
};
|
|
132
|
+
state.id = identifier;
|
|
133
|
+
setPointerDown("touch");
|
|
134
|
+
const onTouchMove = (event) => {
|
|
135
|
+
const touchIndex = [...event.changedTouches].findIndex(({ identifier: touchId }) => touchId === state.id);
|
|
136
|
+
if (touchIndex >= 0) {
|
|
137
|
+
const { pageX: moveX, pageY: moveY } = event.changedTouches[touchIndex];
|
|
138
|
+
move(event, "touch", moveX - (state.lastPosition?.pageX ?? 0), moveY - (state.lastPosition?.pageY ?? 0));
|
|
139
|
+
state.lastPosition = {
|
|
140
|
+
pageX: moveX,
|
|
141
|
+
pageY: moveY
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
const onTouchEnd = (event) => {
|
|
146
|
+
if ([...event.changedTouches].findIndex(({ identifier: touchId }) => touchId === state.id) >= 0) {
|
|
147
|
+
end(event, "touch");
|
|
148
|
+
state.id = null;
|
|
149
|
+
removeGlobalListener("touchmove", onTouchMove);
|
|
150
|
+
removeGlobalListener("touchend", onTouchEnd);
|
|
151
|
+
removeGlobalListener("touchcancel", onTouchEnd);
|
|
152
|
+
setPointerDown(null);
|
|
153
|
+
}
|
|
154
|
+
};
|
|
155
|
+
addGlobalListener("touchmove", onTouchMove);
|
|
156
|
+
addGlobalListener("touchend", onTouchEnd);
|
|
157
|
+
addGlobalListener("touchcancel", onTouchEnd);
|
|
158
|
+
};
|
|
159
|
+
if (hasPointerEvents) moveProps.onPointerDown = (e) => {
|
|
160
|
+
if ((e.button ?? 0) === 0 && state.id == null) {
|
|
161
|
+
start();
|
|
162
|
+
e.stopPropagation();
|
|
163
|
+
e.preventDefault();
|
|
164
|
+
state.lastPosition = {
|
|
165
|
+
pageX: e.pageX,
|
|
166
|
+
pageY: e.pageY
|
|
167
|
+
};
|
|
168
|
+
state.id = e.pointerId;
|
|
169
|
+
setPointerDown("pointer");
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
const triggerKeyboardMove = (e, deltaX, deltaY) => {
|
|
173
|
+
start();
|
|
174
|
+
move(e, "keyboard", deltaX, deltaY);
|
|
175
|
+
end(e, "keyboard");
|
|
176
|
+
};
|
|
177
|
+
moveProps.onKeyDown = (e) => {
|
|
178
|
+
switch (e.key) {
|
|
179
|
+
case "Left":
|
|
180
|
+
case "ArrowLeft":
|
|
181
|
+
e.preventDefault();
|
|
182
|
+
e.stopPropagation();
|
|
183
|
+
triggerKeyboardMove(e, -1, 0);
|
|
184
|
+
break;
|
|
185
|
+
case "Right":
|
|
186
|
+
case "ArrowRight":
|
|
187
|
+
e.preventDefault();
|
|
188
|
+
e.stopPropagation();
|
|
189
|
+
triggerKeyboardMove(e, 1, 0);
|
|
190
|
+
break;
|
|
191
|
+
case "Up":
|
|
192
|
+
case "ArrowUp":
|
|
193
|
+
e.preventDefault();
|
|
194
|
+
e.stopPropagation();
|
|
195
|
+
triggerKeyboardMove(e, 0, -1);
|
|
196
|
+
break;
|
|
197
|
+
case "Down":
|
|
198
|
+
case "ArrowDown":
|
|
199
|
+
e.preventDefault();
|
|
200
|
+
e.stopPropagation();
|
|
201
|
+
triggerKeyboardMove(e, 0, 1);
|
|
202
|
+
break;
|
|
203
|
+
default: break;
|
|
204
|
+
}
|
|
205
|
+
};
|
|
206
|
+
return { moveProps };
|
|
207
|
+
}
|
|
208
|
+
//#endregion
|
|
209
|
+
//#region src/interactions/FocusableProvider.tsx
|
|
210
|
+
/**
|
|
211
|
+
* Provides DOM props to the nearest focusable child.
|
|
212
|
+
* Used to pass focus-related props through component boundaries.
|
|
213
|
+
*
|
|
214
|
+
* @example
|
|
215
|
+
* ```tsx
|
|
216
|
+
* import { FocusableProvider } from 'solidaria';
|
|
217
|
+
*
|
|
218
|
+
* function MyComponent() {
|
|
219
|
+
* return (
|
|
220
|
+
* <FocusableProvider onFocus={() => console.log('focused!')}>
|
|
221
|
+
* <NestedFocusableComponent />
|
|
222
|
+
* </FocusableProvider>
|
|
223
|
+
* );
|
|
224
|
+
* }
|
|
225
|
+
* ```
|
|
226
|
+
*/
|
|
227
|
+
const FocusableProvider = (props) => {
|
|
228
|
+
const { children, ...otherProps } = props;
|
|
229
|
+
const context = {
|
|
230
|
+
...otherProps,
|
|
231
|
+
ref: (_el) => {}
|
|
232
|
+
};
|
|
233
|
+
return createComponent(FocusableContext.Provider, {
|
|
234
|
+
value: context,
|
|
235
|
+
children
|
|
236
|
+
});
|
|
237
|
+
};
|
|
238
|
+
//#endregion
|
|
239
|
+
export { createMove as n, FocusableProvider as t };
|
|
240
|
+
|
|
241
|
+
//# sourceMappingURL=interactions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interactions.js","names":["JSX","ParentComponent","FocusableContext","FocusableContextValue","FocusableProviderProps","FocusableProvider","HTMLAttributes","HTMLElement","props","children","otherProps","context","ref","_el","_$createComponent","Provider","value"],"sources":["../../src/interactions/createMove.ts","../../src/interactions/FocusableProvider.tsx"],"sourcesContent":["/**\n * createMove - Handles move interactions across mouse, touch, pointer, and keyboard.\n *\n * Port of @react-aria/interactions useMove, adapted for SolidJS.\n */\n\nimport { JSX, createSignal, createEffect, onCleanup } from \"solid-js\";\nimport { disableTextSelection, restoreTextSelection, createGlobalListeners } from \"../utils\";\n\nexport type PointerType = \"mouse\" | \"pen\" | \"touch\" | \"keyboard\";\n\ninterface BaseMoveEvent {\n pointerType: PointerType;\n shiftKey: boolean;\n ctrlKey: boolean;\n metaKey: boolean;\n altKey: boolean;\n}\n\nexport interface MoveStartEvent extends BaseMoveEvent {\n type: \"movestart\";\n}\n\nexport interface MoveMoveEvent extends BaseMoveEvent {\n type: \"move\";\n deltaX: number;\n deltaY: number;\n}\n\nexport interface MoveEndEvent extends BaseMoveEvent {\n type: \"moveend\";\n}\n\nexport interface MoveEvents {\n onMoveStart?: (e: MoveStartEvent) => void;\n onMove?: (e: MoveMoveEvent) => void;\n onMoveEnd?: (e: MoveEndEvent) => void;\n}\n\nexport interface MoveResult {\n /** Props to spread on the target element. */\n moveProps: JSX.HTMLAttributes<HTMLElement>;\n}\n\ninterface MoveState {\n didMove: boolean;\n lastPosition: { pageX: number; pageY: number } | null;\n id: number | null;\n}\n\nfunction createBaseEvent(\n originalEvent: { shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean },\n pointerType: PointerType,\n): BaseMoveEvent {\n return {\n pointerType,\n shiftKey: originalEvent.shiftKey,\n ctrlKey: originalEvent.ctrlKey,\n metaKey: originalEvent.metaKey,\n altKey: originalEvent.altKey,\n };\n}\n\n/**\n * Handles move interactions across mouse, touch, pointer, and keyboard.\n */\nexport function createMove(props: MoveEvents = {}): MoveResult {\n const { onMoveStart, onMove, onMoveEnd } = props;\n\n const state: MoveState = {\n didMove: false,\n lastPosition: null,\n id: null,\n };\n\n const { addGlobalListener, removeGlobalListener } = createGlobalListeners();\n const [pointerDown, setPointerDown] = createSignal<\"pointer\" | \"mouse\" | \"touch\" | null>(null);\n\n const move = (\n originalEvent: { shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean },\n pointerType: PointerType,\n deltaX: number,\n deltaY: number,\n ) => {\n if (deltaX === 0 && deltaY === 0) {\n return;\n }\n\n if (!state.didMove) {\n state.didMove = true;\n onMoveStart?.({\n type: \"movestart\",\n ...createBaseEvent(originalEvent, pointerType),\n });\n }\n\n onMove?.({\n type: \"move\",\n deltaX,\n deltaY,\n ...createBaseEvent(originalEvent, pointerType),\n });\n };\n\n const end = (\n originalEvent: { shiftKey: boolean; ctrlKey: boolean; metaKey: boolean; altKey: boolean },\n pointerType: PointerType,\n ) => {\n restoreTextSelection();\n if (state.didMove) {\n onMoveEnd?.({\n type: \"moveend\",\n ...createBaseEvent(originalEvent, pointerType),\n });\n }\n };\n\n createEffect(() => {\n const activePointer = pointerDown();\n if (!activePointer) return;\n\n if (activePointer === \"pointer\") {\n const onPointerMove = (e: PointerEvent) => {\n if (e.pointerId === state.id) {\n const pointerType = (e.pointerType || \"mouse\") as PointerType;\n move(\n e,\n pointerType,\n e.pageX - (state.lastPosition?.pageX ?? 0),\n e.pageY - (state.lastPosition?.pageY ?? 0),\n );\n state.lastPosition = { pageX: e.pageX, pageY: e.pageY };\n }\n };\n\n const onPointerUp = (e: PointerEvent) => {\n if (e.pointerId === state.id) {\n const pointerType = (e.pointerType || \"mouse\") as PointerType;\n end(e, pointerType);\n state.id = null;\n removeGlobalListener(\"pointermove\", onPointerMove, { isWindow: true });\n removeGlobalListener(\"pointerup\", onPointerUp, { isWindow: true });\n removeGlobalListener(\"pointercancel\", onPointerUp, { isWindow: true });\n setPointerDown(null);\n }\n };\n\n addGlobalListener(\"pointermove\", onPointerMove, { isWindow: true });\n addGlobalListener(\"pointerup\", onPointerUp, { isWindow: true });\n addGlobalListener(\"pointercancel\", onPointerUp, { isWindow: true });\n onCleanup(() => {\n removeGlobalListener(\"pointermove\", onPointerMove, { isWindow: true });\n removeGlobalListener(\"pointerup\", onPointerUp, { isWindow: true });\n removeGlobalListener(\"pointercancel\", onPointerUp, { isWindow: true });\n });\n }\n\n // Mouse/touch listeners are attached directly in their handlers.\n });\n\n const start = () => {\n disableTextSelection();\n state.didMove = false;\n };\n\n const moveProps: JSX.HTMLAttributes<HTMLElement> = {};\n\n const hasPointerEvents =\n typeof window !== \"undefined\" && typeof window.PointerEvent !== \"undefined\";\n\n moveProps.onMouseDown = (e: MouseEvent) => {\n if (pointerDown() != null) {\n return;\n }\n if (e.button === 0) {\n start();\n e.stopPropagation();\n e.preventDefault();\n state.lastPosition = { pageX: e.pageX, pageY: e.pageY };\n setPointerDown(\"mouse\");\n\n const onMouseMove = (event: MouseEvent) => {\n move(\n event,\n \"mouse\",\n event.pageX - (state.lastPosition?.pageX ?? 0),\n event.pageY - (state.lastPosition?.pageY ?? 0),\n );\n state.lastPosition = { pageX: event.pageX, pageY: event.pageY };\n };\n const onMouseUp = (event: MouseEvent) => {\n end(event, \"mouse\");\n removeGlobalListener(\"mousemove\", onMouseMove);\n removeGlobalListener(\"mouseup\", onMouseUp);\n setPointerDown(null);\n };\n addGlobalListener(\"mousemove\", onMouseMove);\n addGlobalListener(\"mouseup\", onMouseUp);\n }\n };\n\n moveProps.onTouchStart = (e: TouchEvent) => {\n if (pointerDown() != null || e.changedTouches.length === 0 || state.id != null) {\n return;\n }\n const { pageX, pageY, identifier } = e.changedTouches[0];\n start();\n e.stopPropagation();\n e.preventDefault();\n state.lastPosition = { pageX, pageY };\n state.id = identifier;\n setPointerDown(\"touch\");\n\n const onTouchMove = (event: TouchEvent) => {\n const touchIndex = [...event.changedTouches].findIndex(\n ({ identifier: touchId }) => touchId === state.id,\n );\n if (touchIndex >= 0) {\n const { pageX: moveX, pageY: moveY } = event.changedTouches[touchIndex];\n move(\n event,\n \"touch\",\n moveX - (state.lastPosition?.pageX ?? 0),\n moveY - (state.lastPosition?.pageY ?? 0),\n );\n state.lastPosition = { pageX: moveX, pageY: moveY };\n }\n };\n const onTouchEnd = (event: TouchEvent) => {\n const touchIndex = [...event.changedTouches].findIndex(\n ({ identifier: touchId }) => touchId === state.id,\n );\n if (touchIndex >= 0) {\n end(event, \"touch\");\n state.id = null;\n removeGlobalListener(\"touchmove\", onTouchMove);\n removeGlobalListener(\"touchend\", onTouchEnd);\n removeGlobalListener(\"touchcancel\", onTouchEnd);\n setPointerDown(null);\n }\n };\n addGlobalListener(\"touchmove\", onTouchMove);\n addGlobalListener(\"touchend\", onTouchEnd);\n addGlobalListener(\"touchcancel\", onTouchEnd);\n };\n\n if (hasPointerEvents) {\n moveProps.onPointerDown = (e: PointerEvent) => {\n const button = e.button ?? 0;\n if (button === 0 && state.id == null) {\n start();\n e.stopPropagation();\n e.preventDefault();\n state.lastPosition = { pageX: e.pageX, pageY: e.pageY };\n state.id = e.pointerId;\n setPointerDown(\"pointer\");\n }\n };\n }\n\n const triggerKeyboardMove = (e: KeyboardEvent, deltaX: number, deltaY: number) => {\n start();\n move(e, \"keyboard\", deltaX, deltaY);\n end(e, \"keyboard\");\n };\n\n moveProps.onKeyDown = (e: KeyboardEvent) => {\n switch (e.key) {\n case \"Left\":\n case \"ArrowLeft\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, -1, 0);\n break;\n case \"Right\":\n case \"ArrowRight\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 1, 0);\n break;\n case \"Up\":\n case \"ArrowUp\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 0, -1);\n break;\n case \"Down\":\n case \"ArrowDown\":\n e.preventDefault();\n e.stopPropagation();\n triggerKeyboardMove(e, 0, 1);\n break;\n default:\n break;\n }\n };\n\n return { moveProps };\n}\n","/**\n * FocusableProvider - Provides DOM props to the nearest focusable child.\n *\n * This is a 1-1 port of React-Aria's FocusableProvider adapted for SolidJS.\n */\n\nimport { JSX, ParentComponent } from \"solid-js\";\nimport { FocusableContext, FocusableContextValue, FocusableProviderProps } from \"./createFocusable\";\n\n/**\n * Provides DOM props to the nearest focusable child.\n * Used to pass focus-related props through component boundaries.\n *\n * @example\n * ```tsx\n * import { FocusableProvider } from 'solidaria';\n *\n * function MyComponent() {\n * return (\n * <FocusableProvider onFocus={() => console.log('focused!')}>\n * <NestedFocusableComponent />\n * </FocusableProvider>\n * );\n * }\n * ```\n */\nexport const FocusableProvider: ParentComponent<\n FocusableProviderProps & JSX.HTMLAttributes<HTMLElement>\n> = (props) => {\n const { children, ...otherProps } = props;\n\n const context: FocusableContextValue = {\n ...otherProps,\n ref: (_el: HTMLElement) => {\n // Store ref if needed by parent\n },\n };\n\n return <FocusableContext.Provider value={context}>{children}</FocusableContext.Provider>;\n};\n"],"mappings":";;;;;;;;;;AAkDA,SAAS,gBACP,eACA,aACe;CACf,OAAO;EACL;EACA,UAAU,cAAc;EACxB,SAAS,cAAc;EACvB,SAAS,cAAc;EACvB,QAAQ,cAAc;CACxB;AACF;;;;AAKA,SAAgB,WAAW,QAAoB,CAAC,GAAe;CAC7D,MAAM,EAAE,aAAa,QAAQ,cAAc;CAE3C,MAAM,QAAmB;EACvB,SAAS;EACT,cAAc;EACd,IAAI;CACN;CAEA,MAAM,EAAE,mBAAmB,yBAAyB,sBAAsB;CAC1E,MAAM,CAAC,aAAa,kBAAkB,aAAmD,IAAI;CAE7F,MAAM,QACJ,eACA,aACA,QACA,WACG;EACH,IAAI,WAAW,KAAK,WAAW,GAC7B;EAGF,IAAI,CAAC,MAAM,SAAS;GAClB,MAAM,UAAU;GAChB,cAAc;IACZ,MAAM;IACN,GAAG,gBAAgB,eAAe,WAAW;GAC/C,CAAC;EACH;EAEA,SAAS;GACP,MAAM;GACN;GACA;GACA,GAAG,gBAAgB,eAAe,WAAW;EAC/C,CAAC;CACH;CAEA,MAAM,OACJ,eACA,gBACG;EACH,qBAAqB;EACrB,IAAI,MAAM,SACR,YAAY;GACV,MAAM;GACN,GAAG,gBAAgB,eAAe,WAAW;EAC/C,CAAC;CAEL;CAEA,mBAAmB;EACjB,MAAM,gBAAgB,YAAY;EAClC,IAAI,CAAC,eAAe;EAEpB,IAAI,kBAAkB,WAAW;GAC/B,MAAM,iBAAiB,MAAoB;IACzC,IAAI,EAAE,cAAc,MAAM,IAAI;KAE5B,KACE,GAFmB,EAAE,eAAe,SAIpC,EAAE,SAAS,MAAM,cAAc,SAAS,IACxC,EAAE,SAAS,MAAM,cAAc,SAAS,EAC1C;KACA,MAAM,eAAe;MAAE,OAAO,EAAE;MAAO,OAAO,EAAE;KAAM;IACxD;GACF;GAEA,MAAM,eAAe,MAAoB;IACvC,IAAI,EAAE,cAAc,MAAM,IAAI;KAE5B,IAAI,GADiB,EAAE,eAAe,OACpB;KAClB,MAAM,KAAK;KACX,qBAAqB,eAAe,eAAe,EAAE,UAAU,KAAK,CAAC;KACrE,qBAAqB,aAAa,aAAa,EAAE,UAAU,KAAK,CAAC;KACjE,qBAAqB,iBAAiB,aAAa,EAAE,UAAU,KAAK,CAAC;KACrE,eAAe,IAAI;IACrB;GACF;GAEA,kBAAkB,eAAe,eAAe,EAAE,UAAU,KAAK,CAAC;GAClE,kBAAkB,aAAa,aAAa,EAAE,UAAU,KAAK,CAAC;GAC9D,kBAAkB,iBAAiB,aAAa,EAAE,UAAU,KAAK,CAAC;GAClE,gBAAgB;IACd,qBAAqB,eAAe,eAAe,EAAE,UAAU,KAAK,CAAC;IACrE,qBAAqB,aAAa,aAAa,EAAE,UAAU,KAAK,CAAC;IACjE,qBAAqB,iBAAiB,aAAa,EAAE,UAAU,KAAK,CAAC;GACvE,CAAC;EACH;CAGF,CAAC;CAED,MAAM,cAAc;EAClB,qBAAqB;EACrB,MAAM,UAAU;CAClB;CAEA,MAAM,YAA6C,CAAC;CAEpD,MAAM,mBACJ,OAAO,WAAW,eAAe,OAAO,OAAO,iBAAiB;CAElE,UAAU,eAAe,MAAkB;EACzC,IAAI,YAAY,KAAK,MACnB;EAEF,IAAI,EAAE,WAAW,GAAG;GAClB,MAAM;GACN,EAAE,gBAAgB;GAClB,EAAE,eAAe;GACjB,MAAM,eAAe;IAAE,OAAO,EAAE;IAAO,OAAO,EAAE;GAAM;GACtD,eAAe,OAAO;GAEtB,MAAM,eAAe,UAAsB;IACzC,KACE,OACA,SACA,MAAM,SAAS,MAAM,cAAc,SAAS,IAC5C,MAAM,SAAS,MAAM,cAAc,SAAS,EAC9C;IACA,MAAM,eAAe;KAAE,OAAO,MAAM;KAAO,OAAO,MAAM;IAAM;GAChE;GACA,MAAM,aAAa,UAAsB;IACvC,IAAI,OAAO,OAAO;IAClB,qBAAqB,aAAa,WAAW;IAC7C,qBAAqB,WAAW,SAAS;IACzC,eAAe,IAAI;GACrB;GACA,kBAAkB,aAAa,WAAW;GAC1C,kBAAkB,WAAW,SAAS;EACxC;CACF;CAEA,UAAU,gBAAgB,MAAkB;EAC1C,IAAI,YAAY,KAAK,QAAQ,EAAE,eAAe,WAAW,KAAK,MAAM,MAAM,MACxE;EAEF,MAAM,EAAE,OAAO,OAAO,eAAe,EAAE,eAAe;EACtD,MAAM;EACN,EAAE,gBAAgB;EAClB,EAAE,eAAe;EACjB,MAAM,eAAe;GAAE;GAAO;EAAM;EACpC,MAAM,KAAK;EACX,eAAe,OAAO;EAEtB,MAAM,eAAe,UAAsB;GACzC,MAAM,aAAa,CAAC,GAAG,MAAM,cAAc,CAAC,CAAC,WAC1C,EAAE,YAAY,cAAc,YAAY,MAAM,EACjD;GACA,IAAI,cAAc,GAAG;IACnB,MAAM,EAAE,OAAO,OAAO,OAAO,UAAU,MAAM,eAAe;IAC5D,KACE,OACA,SACA,SAAS,MAAM,cAAc,SAAS,IACtC,SAAS,MAAM,cAAc,SAAS,EACxC;IACA,MAAM,eAAe;KAAE,OAAO;KAAO,OAAO;IAAM;GACpD;EACF;EACA,MAAM,cAAc,UAAsB;GAIxC,IAHmB,CAAC,GAAG,MAAM,cAAc,CAAC,CAAC,WAC1C,EAAE,YAAY,cAAc,YAAY,MAAM,EAEpC,KAAK,GAAG;IACnB,IAAI,OAAO,OAAO;IAClB,MAAM,KAAK;IACX,qBAAqB,aAAa,WAAW;IAC7C,qBAAqB,YAAY,UAAU;IAC3C,qBAAqB,eAAe,UAAU;IAC9C,eAAe,IAAI;GACrB;EACF;EACA,kBAAkB,aAAa,WAAW;EAC1C,kBAAkB,YAAY,UAAU;EACxC,kBAAkB,eAAe,UAAU;CAC7C;CAEA,IAAI,kBACF,UAAU,iBAAiB,MAAoB;EAE7C,KADe,EAAE,UAAU,OACZ,KAAK,MAAM,MAAM,MAAM;GACpC,MAAM;GACN,EAAE,gBAAgB;GAClB,EAAE,eAAe;GACjB,MAAM,eAAe;IAAE,OAAO,EAAE;IAAO,OAAO,EAAE;GAAM;GACtD,MAAM,KAAK,EAAE;GACb,eAAe,SAAS;EAC1B;CACF;CAGF,MAAM,uBAAuB,GAAkB,QAAgB,WAAmB;EAChF,MAAM;EACN,KAAK,GAAG,YAAY,QAAQ,MAAM;EAClC,IAAI,GAAG,UAAU;CACnB;CAEA,UAAU,aAAa,MAAqB;EAC1C,QAAQ,EAAE,KAAV;GACE,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,IAAI,CAAC;IAC5B;GACF,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,GAAG,CAAC;IAC3B;GACF,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,GAAG,EAAE;IAC5B;GACF,KAAK;GACL,KAAK;IACH,EAAE,eAAe;IACjB,EAAE,gBAAgB;IAClB,oBAAoB,GAAG,GAAG,CAAC;IAC3B;GACF,SACE;EACJ;CACF;CAEA,OAAO,EAAE,UAAU;AACrB;;;;;;;;;;;;;;;;;;;;AChRA,MAAaK,qBAERG,UAAU;CACb,MAAM,EAAEC,UAAU,GAAGC,eAAeF;CAEpC,MAAMG,UAAiC;EACrC,GAAGD;EACHE,MAAMC,QAAqB,CACzB;CAEJ;CAEA,OAAAC,gBAAQZ,iBAAiBa,UAAQ;EAACC,OAAOL;EAAUF;CAAQ,CAAA;AAC7D"}
|