@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,255 @@
|
|
|
1
|
+
import { i as access, o as mergeProps } from "./env.jsx";
|
|
2
|
+
import { t as filterDOMProps } from "./filterDOMProps.jsx";
|
|
3
|
+
import { n as focusWithoutScrolling } from "./focus.jsx";
|
|
4
|
+
import { t as createFocusRing } from "./createFocusRing.jsx";
|
|
5
|
+
import { a as useLocale } from "./createCollator.jsx";
|
|
6
|
+
import { createId } from "../ssr/index.jsx";
|
|
7
|
+
import { t as createLabel } from "./createLabel.jsx";
|
|
8
|
+
import { onCleanup, onMount } from "solid-js";
|
|
9
|
+
//#region src/slider/createSlider.ts
|
|
10
|
+
/**
|
|
11
|
+
* Provides the behavior and accessibility implementation for a slider component.
|
|
12
|
+
* A slider allows users to select a value from a range.
|
|
13
|
+
* Based on @react-aria/slider useSlider.
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Provides the behavior and accessibility implementation for a slider.
|
|
17
|
+
*/
|
|
18
|
+
function createSlider(props, state, trackRef, inputRef) {
|
|
19
|
+
const getProps = () => access(props);
|
|
20
|
+
const id = createId(getProps().id);
|
|
21
|
+
const locale = useLocale();
|
|
22
|
+
const inputId = `${id}-input`;
|
|
23
|
+
const outputId = `${id}-output`;
|
|
24
|
+
const domProps = () => filterDOMProps(getProps(), { labelable: true });
|
|
25
|
+
const { labelProps, fieldProps } = createLabel({
|
|
26
|
+
get id() {
|
|
27
|
+
return inputId;
|
|
28
|
+
},
|
|
29
|
+
get label() {
|
|
30
|
+
return getProps().label;
|
|
31
|
+
},
|
|
32
|
+
get "aria-label"() {
|
|
33
|
+
return getProps()["aria-label"];
|
|
34
|
+
},
|
|
35
|
+
get "aria-labelledby"() {
|
|
36
|
+
return getProps()["aria-labelledby"];
|
|
37
|
+
},
|
|
38
|
+
labelElementType: "span"
|
|
39
|
+
});
|
|
40
|
+
const { isFocusVisible, focusProps } = createFocusRing({ within: true });
|
|
41
|
+
let currentPointerId = null;
|
|
42
|
+
const getPositionFromPointer = (clientX, clientY) => {
|
|
43
|
+
const track = trackRef?.();
|
|
44
|
+
if (!track) return 0;
|
|
45
|
+
const rect = track.getBoundingClientRect();
|
|
46
|
+
const isVertical = state.orientation === "vertical";
|
|
47
|
+
let position;
|
|
48
|
+
if (isVertical) position = (rect.bottom - clientY) / rect.height;
|
|
49
|
+
else position = (clientX - rect.left) / rect.width;
|
|
50
|
+
return Math.max(0, Math.min(1, position));
|
|
51
|
+
};
|
|
52
|
+
const onTrackPointerDown = (e) => {
|
|
53
|
+
if (state.isDisabled || e.button !== 0) return;
|
|
54
|
+
e.preventDefault();
|
|
55
|
+
currentPointerId = e.pointerId;
|
|
56
|
+
const track = trackRef?.();
|
|
57
|
+
if (track) track.setPointerCapture(e.pointerId);
|
|
58
|
+
const percent = getPositionFromPointer(e.clientX, e.clientY);
|
|
59
|
+
state.setValuePercent(percent);
|
|
60
|
+
focusWithoutScrolling(inputRef?.() ?? null);
|
|
61
|
+
state.setDragging(true);
|
|
62
|
+
};
|
|
63
|
+
const onTrackPointerMove = (e) => {
|
|
64
|
+
if (!state.isDragging() || e.pointerId !== currentPointerId) return;
|
|
65
|
+
const percent = getPositionFromPointer(e.clientX, e.clientY);
|
|
66
|
+
state.setValuePercent(percent);
|
|
67
|
+
};
|
|
68
|
+
const onTrackPointerUp = (e) => {
|
|
69
|
+
if (e.pointerId !== currentPointerId) return;
|
|
70
|
+
const track = trackRef?.();
|
|
71
|
+
if (track) track.releasePointerCapture(e.pointerId);
|
|
72
|
+
currentPointerId = null;
|
|
73
|
+
focusWithoutScrolling(inputRef?.() ?? null);
|
|
74
|
+
state.setDragging(false);
|
|
75
|
+
};
|
|
76
|
+
const onThumbKeyDown = (e) => {
|
|
77
|
+
if (state.isDisabled) return;
|
|
78
|
+
switch (e.key) {
|
|
79
|
+
case "ArrowRight":
|
|
80
|
+
e.preventDefault();
|
|
81
|
+
if (state.orientation === "horizontal" && locale().direction === "rtl") state.decrement();
|
|
82
|
+
else state.increment();
|
|
83
|
+
break;
|
|
84
|
+
case "ArrowLeft":
|
|
85
|
+
e.preventDefault();
|
|
86
|
+
if (state.orientation === "horizontal" && locale().direction === "rtl") state.increment();
|
|
87
|
+
else state.decrement();
|
|
88
|
+
break;
|
|
89
|
+
case "ArrowUp":
|
|
90
|
+
e.preventDefault();
|
|
91
|
+
if (state.orientation === "vertical") state.increment();
|
|
92
|
+
else state.decrement();
|
|
93
|
+
break;
|
|
94
|
+
case "ArrowDown":
|
|
95
|
+
e.preventDefault();
|
|
96
|
+
if (state.orientation === "vertical") state.decrement();
|
|
97
|
+
else state.increment();
|
|
98
|
+
break;
|
|
99
|
+
case "PageUp":
|
|
100
|
+
e.preventDefault();
|
|
101
|
+
state.increment(state.pageStep / state.step);
|
|
102
|
+
break;
|
|
103
|
+
case "PageDown":
|
|
104
|
+
e.preventDefault();
|
|
105
|
+
state.decrement(state.pageStep / state.step);
|
|
106
|
+
break;
|
|
107
|
+
case "Home":
|
|
108
|
+
e.preventDefault();
|
|
109
|
+
state.setValue(state.minValue);
|
|
110
|
+
break;
|
|
111
|
+
case "End":
|
|
112
|
+
e.preventDefault();
|
|
113
|
+
state.setValue(state.maxValue);
|
|
114
|
+
break;
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
const onFocus = () => {
|
|
118
|
+
state.setFocused(true);
|
|
119
|
+
};
|
|
120
|
+
const onBlur = () => {
|
|
121
|
+
state.setFocused(false);
|
|
122
|
+
};
|
|
123
|
+
const onThumbPointerDown = (e) => {
|
|
124
|
+
if (state.isDisabled || e.button !== 0) return;
|
|
125
|
+
e.preventDefault();
|
|
126
|
+
e.stopPropagation();
|
|
127
|
+
currentPointerId = e.pointerId;
|
|
128
|
+
focusWithoutScrolling(inputRef?.() ?? null);
|
|
129
|
+
document.body.setPointerCapture(e.pointerId);
|
|
130
|
+
state.setDragging(true);
|
|
131
|
+
};
|
|
132
|
+
const onDocumentPointerMove = (e) => {
|
|
133
|
+
if (!state.isDragging() || e.pointerId !== currentPointerId) return;
|
|
134
|
+
const percent = getPositionFromPointer(e.clientX, e.clientY);
|
|
135
|
+
state.setValuePercent(percent);
|
|
136
|
+
};
|
|
137
|
+
const onDocumentPointerUp = (e) => {
|
|
138
|
+
if (e.pointerId !== currentPointerId) return;
|
|
139
|
+
try {
|
|
140
|
+
document.body.releasePointerCapture(e.pointerId);
|
|
141
|
+
} catch {}
|
|
142
|
+
currentPointerId = null;
|
|
143
|
+
focusWithoutScrolling(inputRef?.() ?? null);
|
|
144
|
+
state.setDragging(false);
|
|
145
|
+
};
|
|
146
|
+
onMount(() => {
|
|
147
|
+
if (typeof document === "undefined") return;
|
|
148
|
+
document.addEventListener("pointermove", onDocumentPointerMove);
|
|
149
|
+
document.addEventListener("pointerup", onDocumentPointerUp);
|
|
150
|
+
document.addEventListener("pointercancel", onDocumentPointerUp);
|
|
151
|
+
onCleanup(() => {
|
|
152
|
+
document.removeEventListener("pointermove", onDocumentPointerMove);
|
|
153
|
+
document.removeEventListener("pointerup", onDocumentPointerUp);
|
|
154
|
+
document.removeEventListener("pointercancel", onDocumentPointerUp);
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
const labelledBy = () => fieldProps["aria-labelledby"];
|
|
158
|
+
const ariaLabel = () => fieldProps["aria-label"];
|
|
159
|
+
return {
|
|
160
|
+
get labelProps() {
|
|
161
|
+
return labelProps;
|
|
162
|
+
},
|
|
163
|
+
get groupProps() {
|
|
164
|
+
return mergeProps(domProps(), fieldProps, {
|
|
165
|
+
role: "group",
|
|
166
|
+
"data-disabled": state.isDisabled || void 0,
|
|
167
|
+
"data-orientation": state.orientation
|
|
168
|
+
});
|
|
169
|
+
},
|
|
170
|
+
get trackProps() {
|
|
171
|
+
return {
|
|
172
|
+
onPointerDown: onTrackPointerDown,
|
|
173
|
+
onPointerMove: onTrackPointerMove,
|
|
174
|
+
onPointerUp: onTrackPointerUp,
|
|
175
|
+
onPointerCancel: onTrackPointerUp,
|
|
176
|
+
style: {
|
|
177
|
+
position: "relative",
|
|
178
|
+
"touch-action": "none"
|
|
179
|
+
},
|
|
180
|
+
"data-disabled": state.isDisabled || void 0,
|
|
181
|
+
"data-orientation": state.orientation,
|
|
182
|
+
"data-dragging": state.isDragging() || void 0
|
|
183
|
+
};
|
|
184
|
+
},
|
|
185
|
+
get thumbProps() {
|
|
186
|
+
const percent = state.getValuePercent();
|
|
187
|
+
const isVertical = state.orientation === "vertical";
|
|
188
|
+
return {
|
|
189
|
+
role: "slider",
|
|
190
|
+
"aria-valuemin": state.minValue,
|
|
191
|
+
"aria-valuemax": state.maxValue,
|
|
192
|
+
"aria-valuenow": state.value(),
|
|
193
|
+
"aria-valuetext": state.getFormattedValue(),
|
|
194
|
+
"aria-orientation": state.orientation,
|
|
195
|
+
"aria-disabled": state.isDisabled || void 0,
|
|
196
|
+
"aria-labelledby": labelledBy(),
|
|
197
|
+
"aria-label": labelledBy() ? void 0 : ariaLabel(),
|
|
198
|
+
tabIndex: state.isDisabled ? void 0 : 0,
|
|
199
|
+
onPointerDown: onThumbPointerDown,
|
|
200
|
+
onKeyDown: onThumbKeyDown,
|
|
201
|
+
onFocus,
|
|
202
|
+
onBlur,
|
|
203
|
+
style: {
|
|
204
|
+
position: "absolute",
|
|
205
|
+
[isVertical ? "bottom" : "left"]: `${percent * 100}%`,
|
|
206
|
+
transform: isVertical ? "translateY(50%)" : "translateX(-50%)",
|
|
207
|
+
"touch-action": "none"
|
|
208
|
+
},
|
|
209
|
+
"data-disabled": state.isDisabled || void 0,
|
|
210
|
+
"data-dragging": state.isDragging() || void 0
|
|
211
|
+
};
|
|
212
|
+
},
|
|
213
|
+
get inputProps() {
|
|
214
|
+
const p = getProps();
|
|
215
|
+
return mergeProps(focusProps, {
|
|
216
|
+
type: "range",
|
|
217
|
+
id: inputId,
|
|
218
|
+
"aria-hidden": true,
|
|
219
|
+
min: state.minValue,
|
|
220
|
+
max: state.maxValue,
|
|
221
|
+
step: state.step,
|
|
222
|
+
value: state.value(),
|
|
223
|
+
name: p.name,
|
|
224
|
+
form: p.form,
|
|
225
|
+
disabled: state.isDisabled,
|
|
226
|
+
"aria-orientation": state.orientation,
|
|
227
|
+
"aria-valuetext": state.getFormattedValue(),
|
|
228
|
+
"aria-labelledby": labelledBy(),
|
|
229
|
+
"aria-label": labelledBy() ? void 0 : ariaLabel(),
|
|
230
|
+
tabIndex: -1,
|
|
231
|
+
onInput: (e) => {
|
|
232
|
+
const target = e.target;
|
|
233
|
+
state.setValue(parseFloat(target.value));
|
|
234
|
+
},
|
|
235
|
+
onChange: (e) => {
|
|
236
|
+
const target = e.target;
|
|
237
|
+
state.setValue(parseFloat(target.value));
|
|
238
|
+
},
|
|
239
|
+
onFocus,
|
|
240
|
+
onBlur
|
|
241
|
+
});
|
|
242
|
+
},
|
|
243
|
+
get outputProps() {
|
|
244
|
+
return {
|
|
245
|
+
id: outputId,
|
|
246
|
+
for: inputId,
|
|
247
|
+
"aria-live": "off"
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
//#endregion
|
|
253
|
+
export { createSlider as t };
|
|
254
|
+
|
|
255
|
+
//# sourceMappingURL=slider.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slider.jsx","names":[],"sources":["../../src/slider/createSlider.ts"],"sourcesContent":["/**\n * Provides the behavior and accessibility implementation for a slider component.\n * A slider allows users to select a value from a range.\n * Based on @react-aria/slider useSlider.\n */\n\nimport { type JSX, onCleanup, onMount } from \"solid-js\";\nimport { createLabel } from \"../label/createLabel\";\nimport { createFocusRing } from \"../interactions/createFocusRing\";\nimport { filterDOMProps } from \"../utils/filterDOMProps\";\nimport { focusWithoutScrolling } from \"../utils/focus\";\nimport { mergeProps } from \"../utils/mergeProps\";\nimport { createId } from \"../ssr\";\nimport { useLocale } from \"../i18n\";\nimport { access, type MaybeAccessor } from \"../utils/reactivity\";\nimport type { SliderState, SliderOrientation } from \"@proyecto-viviana/solid-stately\";\n\nexport interface AriaSliderProps {\n /** An ID for the slider. */\n id?: string;\n /** Whether the slider is disabled. */\n isDisabled?: boolean;\n /** The label for the slider. */\n label?: JSX.Element;\n /** An accessible label for the slider when no visible label is provided. */\n \"aria-label\"?: string;\n /** The ID of an element that labels the slider. */\n \"aria-labelledby\"?: string;\n /** The ID of an element that describes the slider. */\n \"aria-describedby\"?: string;\n /** The orientation of the slider. */\n orientation?: SliderOrientation;\n /** The name for the form input. */\n name?: string;\n /** The form element this input belongs to. */\n form?: string;\n}\n\nexport interface SliderAria {\n /** Props for the label element. */\n labelProps: JSX.HTMLAttributes<HTMLElement>;\n /** Props for the root group element. */\n groupProps: JSX.HTMLAttributes<HTMLElement>;\n /** Props for the track element. */\n trackProps: JSX.HTMLAttributes<HTMLElement>;\n /** Props for the thumb element. */\n thumbProps: JSX.HTMLAttributes<HTMLElement>;\n /** Props for the hidden input element. */\n inputProps: JSX.InputHTMLAttributes<HTMLInputElement>;\n /** Props for the output element (showing current value). */\n outputProps: JSX.HTMLAttributes<HTMLElement>;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a slider.\n */\nexport function createSlider(\n props: MaybeAccessor<AriaSliderProps>,\n state: SliderState,\n trackRef?: () => HTMLElement | null,\n inputRef?: () => HTMLInputElement | null,\n): SliderAria {\n const getProps = () => access(props);\n const id = createId(getProps().id);\n const locale = useLocale();\n\n // Generate IDs for associated elements\n const inputId = `${id}-input`;\n const outputId = `${id}-output`;\n\n // Filter DOM props\n const domProps = () =>\n filterDOMProps(getProps() as unknown as Record<string, unknown>, { labelable: true });\n\n // Label handling\n const { labelProps, fieldProps } = createLabel({\n get id() {\n return inputId;\n },\n get label() {\n return getProps().label;\n },\n get \"aria-label\"() {\n return getProps()[\"aria-label\"];\n },\n get \"aria-labelledby\"() {\n return getProps()[\"aria-labelledby\"];\n },\n labelElementType: \"span\",\n });\n\n // Focus ring for keyboard focus styling\n const { isFocusVisible, focusProps } = createFocusRing({\n within: true,\n });\n\n // Track pointer state for drag handling\n let currentPointerId: number | null = null;\n\n // Calculate position from pointer event\n const getPositionFromPointer = (clientX: number, clientY: number): number => {\n const track = trackRef?.();\n if (!track) return 0;\n\n const rect = track.getBoundingClientRect();\n const isVertical = state.orientation === \"vertical\";\n\n let position: number;\n if (isVertical) {\n position = (rect.bottom - clientY) / rect.height;\n } else {\n position = (clientX - rect.left) / rect.width;\n }\n\n return Math.max(0, Math.min(1, position));\n };\n\n // Handle pointer down on track\n const onTrackPointerDown = (e: PointerEvent) => {\n if (state.isDisabled || e.button !== 0) return;\n\n e.preventDefault();\n currentPointerId = e.pointerId;\n\n const track = trackRef?.();\n if (track) {\n track.setPointerCapture(e.pointerId);\n }\n\n const percent = getPositionFromPointer(e.clientX, e.clientY);\n state.setValuePercent(percent);\n focusWithoutScrolling(inputRef?.() ?? null);\n state.setDragging(true);\n };\n\n // Handle pointer move for dragging\n const onTrackPointerMove = (e: PointerEvent) => {\n if (!state.isDragging() || e.pointerId !== currentPointerId) return;\n\n const percent = getPositionFromPointer(e.clientX, e.clientY);\n state.setValuePercent(percent);\n };\n\n // Handle pointer up to end drag\n const onTrackPointerUp = (e: PointerEvent) => {\n if (e.pointerId !== currentPointerId) return;\n\n const track = trackRef?.();\n if (track) {\n track.releasePointerCapture(e.pointerId);\n }\n\n currentPointerId = null;\n focusWithoutScrolling(inputRef?.() ?? null);\n state.setDragging(false);\n };\n\n // Keyboard navigation that is not consistently handled by the native range input.\n const onThumbKeyDown = (e: KeyboardEvent) => {\n if (state.isDisabled) return;\n\n switch (e.key) {\n case \"ArrowRight\":\n e.preventDefault();\n if (state.orientation === \"horizontal\" && locale().direction === \"rtl\") {\n state.decrement();\n } else {\n state.increment();\n }\n break;\n case \"ArrowLeft\":\n e.preventDefault();\n if (state.orientation === \"horizontal\" && locale().direction === \"rtl\") {\n state.increment();\n } else {\n state.decrement();\n }\n break;\n case \"ArrowUp\":\n e.preventDefault();\n if (state.orientation === \"vertical\") {\n state.increment();\n } else {\n state.decrement();\n }\n break;\n case \"ArrowDown\":\n e.preventDefault();\n if (state.orientation === \"vertical\") {\n state.decrement();\n } else {\n state.increment();\n }\n break;\n case \"PageUp\":\n e.preventDefault();\n state.increment(state.pageStep / state.step);\n break;\n case \"PageDown\":\n e.preventDefault();\n state.decrement(state.pageStep / state.step);\n break;\n case \"Home\":\n e.preventDefault();\n state.setValue(state.minValue);\n break;\n case \"End\":\n e.preventDefault();\n state.setValue(state.maxValue);\n break;\n }\n };\n\n // Handle focus events\n const onFocus = () => {\n state.setFocused(true);\n };\n\n const onBlur = () => {\n state.setFocused(false);\n };\n\n // Handle pointer down on thumb (for direct thumb dragging)\n const onThumbPointerDown = (e: PointerEvent) => {\n if (state.isDisabled || e.button !== 0) return;\n\n e.preventDefault();\n e.stopPropagation(); // Prevent track from also handling\n currentPointerId = e.pointerId;\n focusWithoutScrolling(inputRef?.() ?? null);\n\n // Capture pointer on document for smooth dragging\n document.body.setPointerCapture(e.pointerId);\n state.setDragging(true);\n };\n\n // Global pointer move handler for thumb dragging\n const onDocumentPointerMove = (e: PointerEvent) => {\n if (!state.isDragging() || e.pointerId !== currentPointerId) return;\n\n const percent = getPositionFromPointer(e.clientX, e.clientY);\n state.setValuePercent(percent);\n };\n\n // Global pointer up handler\n const onDocumentPointerUp = (e: PointerEvent) => {\n if (e.pointerId !== currentPointerId) return;\n\n try {\n document.body.releasePointerCapture(e.pointerId);\n } catch {\n // Ignore if capture was already released\n }\n\n currentPointerId = null;\n focusWithoutScrolling(inputRef?.() ?? null);\n state.setDragging(false);\n };\n\n // Set up global listeners on mount (client-side only)\n onMount(() => {\n if (typeof document === \"undefined\") return;\n\n document.addEventListener(\"pointermove\", onDocumentPointerMove);\n document.addEventListener(\"pointerup\", onDocumentPointerUp);\n document.addEventListener(\"pointercancel\", onDocumentPointerUp);\n\n // Cleanup when component unmounts\n onCleanup(() => {\n document.removeEventListener(\"pointermove\", onDocumentPointerMove);\n document.removeEventListener(\"pointerup\", onDocumentPointerUp);\n document.removeEventListener(\"pointercancel\", onDocumentPointerUp);\n });\n });\n\n const labelledBy = () => (fieldProps as { \"aria-labelledby\"?: string })[\"aria-labelledby\"];\n const ariaLabel = () => (fieldProps as { \"aria-label\"?: string })[\"aria-label\"];\n\n return {\n get labelProps() {\n return labelProps as JSX.HTMLAttributes<HTMLElement>;\n },\n get groupProps() {\n return mergeProps(\n domProps(),\n fieldProps as Record<string, unknown>,\n {\n role: \"group\",\n \"data-disabled\": state.isDisabled || undefined,\n \"data-orientation\": state.orientation,\n } as Record<string, unknown>,\n ) as JSX.HTMLAttributes<HTMLElement>;\n },\n get trackProps() {\n return {\n onPointerDown: onTrackPointerDown,\n onPointerMove: onTrackPointerMove,\n onPointerUp: onTrackPointerUp,\n onPointerCancel: onTrackPointerUp,\n style: {\n position: \"relative\",\n \"touch-action\": \"none\",\n },\n \"data-disabled\": state.isDisabled || undefined,\n \"data-orientation\": state.orientation,\n \"data-dragging\": state.isDragging() || undefined,\n } as JSX.HTMLAttributes<HTMLElement>;\n },\n get thumbProps() {\n const percent = state.getValuePercent();\n const isVertical = state.orientation === \"vertical\";\n\n return {\n role: \"slider\",\n \"aria-valuemin\": state.minValue,\n \"aria-valuemax\": state.maxValue,\n \"aria-valuenow\": state.value(),\n \"aria-valuetext\": state.getFormattedValue(),\n \"aria-orientation\": state.orientation,\n \"aria-disabled\": state.isDisabled || undefined,\n \"aria-labelledby\": labelledBy(),\n \"aria-label\": labelledBy() ? undefined : ariaLabel(),\n tabIndex: state.isDisabled ? undefined : 0,\n onPointerDown: onThumbPointerDown,\n onKeyDown: onThumbKeyDown,\n onFocus,\n onBlur,\n style: {\n position: \"absolute\",\n [isVertical ? \"bottom\" : \"left\"]: `${percent * 100}%`,\n transform: isVertical ? \"translateY(50%)\" : \"translateX(-50%)\",\n \"touch-action\": \"none\",\n },\n \"data-disabled\": state.isDisabled || undefined,\n \"data-dragging\": state.isDragging() || undefined,\n } as JSX.HTMLAttributes<HTMLElement>;\n },\n get inputProps() {\n const p = getProps();\n\n return mergeProps(\n focusProps as Record<string, unknown>,\n {\n type: \"range\",\n id: inputId,\n \"aria-hidden\": true,\n min: state.minValue,\n max: state.maxValue,\n step: state.step,\n value: state.value(),\n name: p.name,\n form: p.form,\n disabled: state.isDisabled,\n \"aria-orientation\": state.orientation,\n \"aria-valuetext\": state.getFormattedValue(),\n \"aria-labelledby\": labelledBy(),\n \"aria-label\": labelledBy() ? undefined : ariaLabel(),\n tabIndex: -1,\n onInput: (e: Event) => {\n const target = e.target as HTMLInputElement;\n state.setValue(parseFloat(target.value));\n },\n onChange: (e: Event) => {\n const target = e.target as HTMLInputElement;\n state.setValue(parseFloat(target.value));\n },\n onFocus,\n onBlur,\n } as Record<string, unknown>,\n ) as JSX.InputHTMLAttributes<HTMLInputElement>;\n },\n get outputProps() {\n return {\n id: outputId,\n for: inputId,\n \"aria-live\": \"off\",\n } as JSX.HTMLAttributes<HTMLElement>;\n },\n };\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
//#region src/steplist/createStepList.ts
|
|
2
|
+
/**
|
|
3
|
+
* Creates ARIA props for a step list container.
|
|
4
|
+
*/
|
|
5
|
+
function createStepList(props, _state) {
|
|
6
|
+
return { stepListProps: {
|
|
7
|
+
get "aria-label"() {
|
|
8
|
+
return props["aria-label"] ?? "Step List";
|
|
9
|
+
},
|
|
10
|
+
get "aria-labelledby"() {
|
|
11
|
+
return props["aria-labelledby"];
|
|
12
|
+
}
|
|
13
|
+
} };
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Creates ARIA props for an individual step within a step list.
|
|
17
|
+
*/
|
|
18
|
+
function createStep(props, state) {
|
|
19
|
+
const isSelected = () => state.selectedKey() === props.key;
|
|
20
|
+
const isCompleted = () => state.isCompleted(props.key);
|
|
21
|
+
const selectable = () => state.isSelectable(props.key);
|
|
22
|
+
const getStepStateText = () => {
|
|
23
|
+
if (isSelected()) return "Current";
|
|
24
|
+
if (isCompleted()) return "Completed";
|
|
25
|
+
return "Not completed";
|
|
26
|
+
};
|
|
27
|
+
const handleClick = (e) => {
|
|
28
|
+
e.preventDefault();
|
|
29
|
+
if (selectable()) state.setSelectedKey(props.key);
|
|
30
|
+
};
|
|
31
|
+
const handleKeyDown = (e) => {
|
|
32
|
+
if (e.key === "ArrowUp" || e.key === "ArrowDown") {
|
|
33
|
+
e.preventDefault();
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
37
|
+
e.preventDefault();
|
|
38
|
+
if (selectable()) state.setSelectedKey(props.key);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
return {
|
|
42
|
+
get stepProps() {
|
|
43
|
+
return {
|
|
44
|
+
role: "link",
|
|
45
|
+
get "aria-current"() {
|
|
46
|
+
return isSelected() ? "step" : void 0;
|
|
47
|
+
},
|
|
48
|
+
get "aria-disabled"() {
|
|
49
|
+
return !selectable() ? true : void 0;
|
|
50
|
+
},
|
|
51
|
+
get tabIndex() {
|
|
52
|
+
return selectable() ? 0 : void 0;
|
|
53
|
+
},
|
|
54
|
+
onClick: handleClick,
|
|
55
|
+
onKeyDown: handleKeyDown
|
|
56
|
+
};
|
|
57
|
+
},
|
|
58
|
+
get stepStateText() {
|
|
59
|
+
return getStepStateText();
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//#endregion
|
|
64
|
+
export { createStepList as n, createStep as t };
|
|
65
|
+
|
|
66
|
+
//# sourceMappingURL=steplist.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steplist.js","names":[],"sources":["../../src/steplist/createStepList.ts"],"sourcesContent":["/**\n * ARIA hooks for StepList components.\n * Provides accessible step list and step item props.\n */\n\nimport type { JSX } from \"solid-js\";\nimport type { StepListState } from \"@proyecto-viviana/solid-stately\";\nimport type { Key } from \"@proyecto-viviana/solid-stately\";\n\nexport interface AriaStepListProps {\n /** Accessible label for the step list. */\n \"aria-label\"?: string;\n /** ID of element that labels the step list. */\n \"aria-labelledby\"?: string;\n}\n\nexport interface StepListAria {\n /** Props for the step list container element. */\n stepListProps: JSX.HTMLAttributes<HTMLOListElement>;\n}\n\n/**\n * Creates ARIA props for a step list container.\n */\nexport function createStepList(props: AriaStepListProps, _state: StepListState): StepListAria {\n return {\n stepListProps: {\n get \"aria-label\"() {\n return props[\"aria-label\"] ?? \"Step List\";\n },\n get \"aria-labelledby\"() {\n return props[\"aria-labelledby\"];\n },\n },\n };\n}\n\nexport interface AriaStepProps {\n /** The key of this step. */\n key: Key;\n}\n\nexport interface StepAria {\n /** Props for the step element (anchor/link). */\n stepProps: JSX.HTMLAttributes<HTMLAnchorElement>;\n /** Accessible text describing the step state. */\n stepStateText: string;\n}\n\n/**\n * Creates ARIA props for an individual step within a step list.\n */\nexport function createStep(props: AriaStepProps, state: StepListState): StepAria {\n const isSelected = () => state.selectedKey() === props.key;\n const isCompleted = () => state.isCompleted(props.key);\n const selectable = () => state.isSelectable(props.key);\n\n const getStepStateText = (): string => {\n if (isSelected()) return \"Current\";\n if (isCompleted()) return \"Completed\";\n return \"Not completed\";\n };\n\n const handleClick: JSX.EventHandler<HTMLAnchorElement, MouseEvent> = (e) => {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(props.key);\n }\n };\n\n const handleKeyDown: JSX.EventHandler<HTMLAnchorElement, KeyboardEvent> = (e) => {\n // Prevent arrow key scrolling — tab order handles navigation\n if (e.key === \"ArrowUp\" || e.key === \"ArrowDown\") {\n e.preventDefault();\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(props.key);\n }\n }\n };\n\n return {\n get stepProps() {\n return {\n role: \"link\" as const,\n get \"aria-current\"() {\n return isSelected() ? (\"step\" as const) : undefined;\n },\n get \"aria-disabled\"() {\n return !selectable() ? true : undefined;\n },\n get tabIndex() {\n return selectable() ? 0 : undefined;\n },\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n };\n },\n get stepStateText() {\n return getStepStateText();\n },\n };\n}\n"],"mappings":";;;;AAwBA,SAAgB,eAAe,OAA0B,QAAqC;CAC5F,OAAO,EACL,eAAe;EACb,IAAI,eAAe;GACjB,OAAO,MAAM,iBAAiB;EAChC;EACA,IAAI,oBAAoB;GACtB,OAAO,MAAM;EACf;CACF,EACF;AACF;;;;AAiBA,SAAgB,WAAW,OAAsB,OAAgC;CAC/E,MAAM,mBAAmB,MAAM,YAAY,MAAM,MAAM;CACvD,MAAM,oBAAoB,MAAM,YAAY,MAAM,GAAG;CACrD,MAAM,mBAAmB,MAAM,aAAa,MAAM,GAAG;CAErD,MAAM,yBAAiC;EACrC,IAAI,WAAW,GAAG,OAAO;EACzB,IAAI,YAAY,GAAG,OAAO;EAC1B,OAAO;CACT;CAEA,MAAM,eAAgE,MAAM;EAC1E,EAAE,eAAe;EACjB,IAAI,WAAW,GACb,MAAM,eAAe,MAAM,GAAG;CAElC;CAEA,MAAM,iBAAqE,MAAM;EAE/E,IAAI,EAAE,QAAQ,aAAa,EAAE,QAAQ,aAAa;GAChD,EAAE,eAAe;GACjB;EACF;EACA,IAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;GACtC,EAAE,eAAe;GACjB,IAAI,WAAW,GACb,MAAM,eAAe,MAAM,GAAG;EAElC;CACF;CAEA,OAAO;EACL,IAAI,YAAY;GACd,OAAO;IACL,MAAM;IACN,IAAI,iBAAiB;KACnB,OAAO,WAAW,IAAK,SAAmB,KAAA;IAC5C;IACA,IAAI,kBAAkB;KACpB,OAAO,CAAC,WAAW,IAAI,OAAO,KAAA;IAChC;IACA,IAAI,WAAW;KACb,OAAO,WAAW,IAAI,IAAI,KAAA;IAC5B;IACA,SAAS;IACT,WAAW;GACb;EACF;EACA,IAAI,gBAAgB;GAClB,OAAO,iBAAiB;EAC1B;CACF;AACF"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
//#region src/steplist/createStepList.ts
|
|
2
|
+
/**
|
|
3
|
+
* Creates ARIA props for a step list container.
|
|
4
|
+
*/
|
|
5
|
+
function createStepList(props, _state) {
|
|
6
|
+
return { stepListProps: {
|
|
7
|
+
get "aria-label"() {
|
|
8
|
+
return props["aria-label"] ?? "Step List";
|
|
9
|
+
},
|
|
10
|
+
get "aria-labelledby"() {
|
|
11
|
+
return props["aria-labelledby"];
|
|
12
|
+
}
|
|
13
|
+
} };
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Creates ARIA props for an individual step within a step list.
|
|
17
|
+
*/
|
|
18
|
+
function createStep(props, state) {
|
|
19
|
+
const isSelected = () => state.selectedKey() === props.key;
|
|
20
|
+
const isCompleted = () => state.isCompleted(props.key);
|
|
21
|
+
const selectable = () => state.isSelectable(props.key);
|
|
22
|
+
const getStepStateText = () => {
|
|
23
|
+
if (isSelected()) return "Current";
|
|
24
|
+
if (isCompleted()) return "Completed";
|
|
25
|
+
return "Not completed";
|
|
26
|
+
};
|
|
27
|
+
const handleClick = (e) => {
|
|
28
|
+
e.preventDefault();
|
|
29
|
+
if (selectable()) state.setSelectedKey(props.key);
|
|
30
|
+
};
|
|
31
|
+
const handleKeyDown = (e) => {
|
|
32
|
+
if (e.key === "ArrowUp" || e.key === "ArrowDown") {
|
|
33
|
+
e.preventDefault();
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
37
|
+
e.preventDefault();
|
|
38
|
+
if (selectable()) state.setSelectedKey(props.key);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
return {
|
|
42
|
+
get stepProps() {
|
|
43
|
+
return {
|
|
44
|
+
role: "link",
|
|
45
|
+
get "aria-current"() {
|
|
46
|
+
return isSelected() ? "step" : void 0;
|
|
47
|
+
},
|
|
48
|
+
get "aria-disabled"() {
|
|
49
|
+
return !selectable() ? true : void 0;
|
|
50
|
+
},
|
|
51
|
+
get tabIndex() {
|
|
52
|
+
return selectable() ? 0 : void 0;
|
|
53
|
+
},
|
|
54
|
+
onClick: handleClick,
|
|
55
|
+
onKeyDown: handleKeyDown
|
|
56
|
+
};
|
|
57
|
+
},
|
|
58
|
+
get stepStateText() {
|
|
59
|
+
return getStepStateText();
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//#endregion
|
|
64
|
+
export { createStepList as n, createStep as t };
|
|
65
|
+
|
|
66
|
+
//# sourceMappingURL=steplist.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steplist.jsx","names":[],"sources":["../../src/steplist/createStepList.ts"],"sourcesContent":["/**\n * ARIA hooks for StepList components.\n * Provides accessible step list and step item props.\n */\n\nimport type { JSX } from \"solid-js\";\nimport type { StepListState } from \"@proyecto-viviana/solid-stately\";\nimport type { Key } from \"@proyecto-viviana/solid-stately\";\n\nexport interface AriaStepListProps {\n /** Accessible label for the step list. */\n \"aria-label\"?: string;\n /** ID of element that labels the step list. */\n \"aria-labelledby\"?: string;\n}\n\nexport interface StepListAria {\n /** Props for the step list container element. */\n stepListProps: JSX.HTMLAttributes<HTMLOListElement>;\n}\n\n/**\n * Creates ARIA props for a step list container.\n */\nexport function createStepList(props: AriaStepListProps, _state: StepListState): StepListAria {\n return {\n stepListProps: {\n get \"aria-label\"() {\n return props[\"aria-label\"] ?? \"Step List\";\n },\n get \"aria-labelledby\"() {\n return props[\"aria-labelledby\"];\n },\n },\n };\n}\n\nexport interface AriaStepProps {\n /** The key of this step. */\n key: Key;\n}\n\nexport interface StepAria {\n /** Props for the step element (anchor/link). */\n stepProps: JSX.HTMLAttributes<HTMLAnchorElement>;\n /** Accessible text describing the step state. */\n stepStateText: string;\n}\n\n/**\n * Creates ARIA props for an individual step within a step list.\n */\nexport function createStep(props: AriaStepProps, state: StepListState): StepAria {\n const isSelected = () => state.selectedKey() === props.key;\n const isCompleted = () => state.isCompleted(props.key);\n const selectable = () => state.isSelectable(props.key);\n\n const getStepStateText = (): string => {\n if (isSelected()) return \"Current\";\n if (isCompleted()) return \"Completed\";\n return \"Not completed\";\n };\n\n const handleClick: JSX.EventHandler<HTMLAnchorElement, MouseEvent> = (e) => {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(props.key);\n }\n };\n\n const handleKeyDown: JSX.EventHandler<HTMLAnchorElement, KeyboardEvent> = (e) => {\n // Prevent arrow key scrolling — tab order handles navigation\n if (e.key === \"ArrowUp\" || e.key === \"ArrowDown\") {\n e.preventDefault();\n return;\n }\n if (e.key === \"Enter\" || e.key === \" \") {\n e.preventDefault();\n if (selectable()) {\n state.setSelectedKey(props.key);\n }\n }\n };\n\n return {\n get stepProps() {\n return {\n role: \"link\" as const,\n get \"aria-current\"() {\n return isSelected() ? (\"step\" as const) : undefined;\n },\n get \"aria-disabled\"() {\n return !selectable() ? true : undefined;\n },\n get tabIndex() {\n return selectable() ? 0 : undefined;\n },\n onClick: handleClick,\n onKeyDown: handleKeyDown,\n };\n },\n get stepStateText() {\n return getStepStateText();\n },\n };\n}\n"],"mappings":";;;;AAwBA,SAAgB,eAAe,OAA0B,QAAqC;CAC5F,OAAO,EACL,eAAe;EACb,IAAI,eAAe;GACjB,OAAO,MAAM,iBAAiB;EAChC;EACA,IAAI,oBAAoB;GACtB,OAAO,MAAM;EACf;CACF,EACF;AACF;;;;AAiBA,SAAgB,WAAW,OAAsB,OAAgC;CAC/E,MAAM,mBAAmB,MAAM,YAAY,MAAM,MAAM;CACvD,MAAM,oBAAoB,MAAM,YAAY,MAAM,GAAG;CACrD,MAAM,mBAAmB,MAAM,aAAa,MAAM,GAAG;CAErD,MAAM,yBAAiC;EACrC,IAAI,WAAW,GAAG,OAAO;EACzB,IAAI,YAAY,GAAG,OAAO;EAC1B,OAAO;CACT;CAEA,MAAM,eAAgE,MAAM;EAC1E,EAAE,eAAe;EACjB,IAAI,WAAW,GACb,MAAM,eAAe,MAAM,GAAG;CAElC;CAEA,MAAM,iBAAqE,MAAM;EAE/E,IAAI,EAAE,QAAQ,aAAa,EAAE,QAAQ,aAAa;GAChD,EAAE,eAAe;GACjB;EACF;EACA,IAAI,EAAE,QAAQ,WAAW,EAAE,QAAQ,KAAK;GACtC,EAAE,eAAe;GACjB,IAAI,WAAW,GACb,MAAM,eAAe,MAAM,GAAG;EAElC;CACF;CAEA,OAAO;EACL,IAAI,YAAY;GACd,OAAO;IACL,MAAM;IACN,IAAI,iBAAiB;KACnB,OAAO,WAAW,IAAK,SAAmB,KAAA;IAC5C;IACA,IAAI,kBAAkB;KACpB,OAAO,CAAC,WAAW,IAAI,OAAO,KAAA;IAChC;IACA,IAAI,WAAW;KACb,OAAO,WAAW,IAAI,IAAI,KAAA;IAC5B;IACA,SAAS;IACT,WAAW;GACb;EACF;EACA,IAAI,gBAAgB;GAClB,OAAO,iBAAiB;EAC1B;CACF;AACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { t as createToggle } from "./createToggle.js";
|
|
2
|
+
//#region src/switch/createSwitch.ts
|
|
3
|
+
/**
|
|
4
|
+
* Provides the behavior and accessibility implementation for a switch component.
|
|
5
|
+
* A switch is similar to a checkbox, but represents on/off values as opposed to selection.
|
|
6
|
+
*/
|
|
7
|
+
function createSwitch(props, state, ref) {
|
|
8
|
+
const toggle = createToggle(props, state, ref);
|
|
9
|
+
return {
|
|
10
|
+
labelProps: toggle.labelProps,
|
|
11
|
+
get inputProps() {
|
|
12
|
+
return {
|
|
13
|
+
...toggle.inputProps,
|
|
14
|
+
role: "switch",
|
|
15
|
+
checked: toggle.isSelected()
|
|
16
|
+
};
|
|
17
|
+
},
|
|
18
|
+
get descriptionProps() {
|
|
19
|
+
return toggle.descriptionProps;
|
|
20
|
+
},
|
|
21
|
+
get errorMessageProps() {
|
|
22
|
+
return toggle.errorMessageProps;
|
|
23
|
+
},
|
|
24
|
+
isSelected: toggle.isSelected,
|
|
25
|
+
isPressed: toggle.isPressed,
|
|
26
|
+
isDisabled: toggle.isDisabled,
|
|
27
|
+
isReadOnly: toggle.isReadOnly,
|
|
28
|
+
isInvalid: toggle.isInvalid
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { createSwitch as t };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=switch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch.js","names":[],"sources":["../../src/switch/createSwitch.ts"],"sourcesContent":["/**\n * Switch hook for Solidaria\n *\n * Provides the behavior and accessibility implementation for a switch component.\n * A switch is similar to a checkbox, but represents on/off values as opposed to selection.\n *\n * This is a 1:1 port of @react-aria/switch's useSwitch hook.\n */\n\nimport { JSX, Accessor } from \"solid-js\";\nimport { createToggle, type AriaToggleProps } from \"../toggle/createToggle\";\nimport { type ToggleState } from \"@proyecto-viviana/solid-stately\";\nimport { type MaybeAccessor } from \"../utils/reactivity\";\n\nexport interface AriaSwitchProps extends AriaToggleProps {\n // Switch uses the same props as toggle\n}\n\nexport interface SwitchAria {\n /** Props for the label wrapper element. */\n labelProps: JSX.LabelHTMLAttributes<HTMLLabelElement>;\n /** Props for the input element. */\n inputProps: JSX.InputHTMLAttributes<HTMLInputElement>;\n /** Props for the switch description element, if any. */\n descriptionProps: JSX.HTMLAttributes<HTMLElement>;\n /** Props for the switch error message element, if any. */\n errorMessageProps: JSX.HTMLAttributes<HTMLElement>;\n /** Whether the switch is selected. */\n isSelected: Accessor<boolean>;\n /** Whether the switch is in a pressed state. */\n isPressed: Accessor<boolean>;\n /** Whether the switch is disabled. */\n isDisabled: boolean;\n /** Whether the switch is read only. */\n isReadOnly: boolean;\n /** Whether the switch is invalid. */\n isInvalid: boolean;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a switch component.\n * A switch is similar to a checkbox, but represents on/off values as opposed to selection.\n */\nexport function createSwitch(\n props: MaybeAccessor<AriaSwitchProps>,\n state: ToggleState,\n ref: () => HTMLInputElement | null,\n): SwitchAria {\n // Don't destructure inputProps - it's a getter that needs to be evaluated each time\n const toggle = createToggle(props, state, ref);\n\n return {\n labelProps: toggle.labelProps,\n get inputProps() {\n // Access toggle.inputProps (the getter) each time to get fresh values\n const baseProps = toggle.inputProps;\n return {\n ...baseProps,\n role: \"switch\" as const,\n checked: toggle.isSelected(),\n };\n },\n get descriptionProps() {\n return toggle.descriptionProps;\n },\n get errorMessageProps() {\n return toggle.errorMessageProps;\n },\n isSelected: toggle.isSelected,\n isPressed: toggle.isPressed,\n isDisabled: toggle.isDisabled,\n isReadOnly: toggle.isReadOnly,\n isInvalid: toggle.isInvalid,\n };\n}\n"],"mappings":";;;;;;AA2CA,SAAgB,aACd,OACA,OACA,KACY;CAEZ,MAAM,SAAS,aAAa,OAAO,OAAO,GAAG;CAE7C,OAAO;EACL,YAAY,OAAO;EACnB,IAAI,aAAa;GAGf,OAAO;IACL,GAFgB,OAAO;IAGvB,MAAM;IACN,SAAS,OAAO,WAAW;GAC7B;EACF;EACA,IAAI,mBAAmB;GACrB,OAAO,OAAO;EAChB;EACA,IAAI,oBAAoB;GACtB,OAAO,OAAO;EAChB;EACA,YAAY,OAAO;EACnB,WAAW,OAAO;EAClB,YAAY,OAAO;EACnB,YAAY,OAAO;EACnB,WAAW,OAAO;CACpB;AACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { t as createToggle } from "./createToggle.jsx";
|
|
2
|
+
//#region src/switch/createSwitch.ts
|
|
3
|
+
/**
|
|
4
|
+
* Provides the behavior and accessibility implementation for a switch component.
|
|
5
|
+
* A switch is similar to a checkbox, but represents on/off values as opposed to selection.
|
|
6
|
+
*/
|
|
7
|
+
function createSwitch(props, state, ref) {
|
|
8
|
+
const toggle = createToggle(props, state, ref);
|
|
9
|
+
return {
|
|
10
|
+
labelProps: toggle.labelProps,
|
|
11
|
+
get inputProps() {
|
|
12
|
+
return {
|
|
13
|
+
...toggle.inputProps,
|
|
14
|
+
role: "switch",
|
|
15
|
+
checked: toggle.isSelected()
|
|
16
|
+
};
|
|
17
|
+
},
|
|
18
|
+
get descriptionProps() {
|
|
19
|
+
return toggle.descriptionProps;
|
|
20
|
+
},
|
|
21
|
+
get errorMessageProps() {
|
|
22
|
+
return toggle.errorMessageProps;
|
|
23
|
+
},
|
|
24
|
+
isSelected: toggle.isSelected,
|
|
25
|
+
isPressed: toggle.isPressed,
|
|
26
|
+
isDisabled: toggle.isDisabled,
|
|
27
|
+
isReadOnly: toggle.isReadOnly,
|
|
28
|
+
isInvalid: toggle.isInvalid
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { createSwitch as t };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=switch.jsx.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switch.jsx","names":[],"sources":["../../src/switch/createSwitch.ts"],"sourcesContent":["/**\n * Switch hook for Solidaria\n *\n * Provides the behavior and accessibility implementation for a switch component.\n * A switch is similar to a checkbox, but represents on/off values as opposed to selection.\n *\n * This is a 1:1 port of @react-aria/switch's useSwitch hook.\n */\n\nimport { JSX, Accessor } from \"solid-js\";\nimport { createToggle, type AriaToggleProps } from \"../toggle/createToggle\";\nimport { type ToggleState } from \"@proyecto-viviana/solid-stately\";\nimport { type MaybeAccessor } from \"../utils/reactivity\";\n\nexport interface AriaSwitchProps extends AriaToggleProps {\n // Switch uses the same props as toggle\n}\n\nexport interface SwitchAria {\n /** Props for the label wrapper element. */\n labelProps: JSX.LabelHTMLAttributes<HTMLLabelElement>;\n /** Props for the input element. */\n inputProps: JSX.InputHTMLAttributes<HTMLInputElement>;\n /** Props for the switch description element, if any. */\n descriptionProps: JSX.HTMLAttributes<HTMLElement>;\n /** Props for the switch error message element, if any. */\n errorMessageProps: JSX.HTMLAttributes<HTMLElement>;\n /** Whether the switch is selected. */\n isSelected: Accessor<boolean>;\n /** Whether the switch is in a pressed state. */\n isPressed: Accessor<boolean>;\n /** Whether the switch is disabled. */\n isDisabled: boolean;\n /** Whether the switch is read only. */\n isReadOnly: boolean;\n /** Whether the switch is invalid. */\n isInvalid: boolean;\n}\n\n/**\n * Provides the behavior and accessibility implementation for a switch component.\n * A switch is similar to a checkbox, but represents on/off values as opposed to selection.\n */\nexport function createSwitch(\n props: MaybeAccessor<AriaSwitchProps>,\n state: ToggleState,\n ref: () => HTMLInputElement | null,\n): SwitchAria {\n // Don't destructure inputProps - it's a getter that needs to be evaluated each time\n const toggle = createToggle(props, state, ref);\n\n return {\n labelProps: toggle.labelProps,\n get inputProps() {\n // Access toggle.inputProps (the getter) each time to get fresh values\n const baseProps = toggle.inputProps;\n return {\n ...baseProps,\n role: \"switch\" as const,\n checked: toggle.isSelected(),\n };\n },\n get descriptionProps() {\n return toggle.descriptionProps;\n },\n get errorMessageProps() {\n return toggle.errorMessageProps;\n },\n isSelected: toggle.isSelected,\n isPressed: toggle.isPressed,\n isDisabled: toggle.isDisabled,\n isReadOnly: toggle.isReadOnly,\n isInvalid: toggle.isInvalid,\n };\n}\n"],"mappings":";;;;;;AA2CA,SAAgB,aACd,OACA,OACA,KACY;CAEZ,MAAM,SAAS,aAAa,OAAO,OAAO,GAAG;CAE7C,OAAO;EACL,YAAY,OAAO;EACnB,IAAI,aAAa;GAGf,OAAO;IACL,GAFgB,OAAO;IAGvB,MAAM;IACN,SAAS,OAAO,WAAW;GAC7B;EACF;EACA,IAAI,mBAAmB;GACrB,OAAO,OAAO;EAChB;EACA,IAAI,oBAAoB;GACtB,OAAO,OAAO;EAChB;EACA,YAAY,OAAO;EACnB,WAAW,OAAO;EAClB,YAAY,OAAO;EACnB,YAAY,OAAO;EACnB,WAAW,OAAO;CACpB;AACF"}
|