@proyecto-viviana/solidaria 0.1.3 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +6135 -50
- package/dist/index.js +485 -1120
- package/dist/{index.ssr.js → index.jsx} +89 -143
- package/package.json +7 -9
- package/dist/autocomplete/createAutocomplete.d.ts +0 -109
- package/dist/autocomplete/createAutocomplete.d.ts.map +0 -1
- package/dist/autocomplete/index.d.ts +0 -2
- package/dist/autocomplete/index.d.ts.map +0 -1
- package/dist/breadcrumbs/createBreadcrumbs.d.ts +0 -43
- package/dist/breadcrumbs/createBreadcrumbs.d.ts.map +0 -1
- package/dist/breadcrumbs/index.d.ts +0 -2
- package/dist/breadcrumbs/index.d.ts.map +0 -1
- package/dist/button/createButton.d.ts +0 -29
- package/dist/button/createButton.d.ts.map +0 -1
- package/dist/button/createToggleButton.d.ts +0 -41
- package/dist/button/createToggleButton.d.ts.map +0 -1
- package/dist/button/index.d.ts +0 -5
- package/dist/button/index.d.ts.map +0 -1
- package/dist/button/types.d.ts +0 -77
- package/dist/button/types.d.ts.map +0 -1
- package/dist/calendar/createCalendar.d.ts +0 -41
- package/dist/calendar/createCalendar.d.ts.map +0 -1
- package/dist/calendar/createCalendarCell.d.ts +0 -41
- package/dist/calendar/createCalendarCell.d.ts.map +0 -1
- package/dist/calendar/createCalendarGrid.d.ts +0 -29
- package/dist/calendar/createCalendarGrid.d.ts.map +0 -1
- package/dist/calendar/createRangeCalendar.d.ts +0 -39
- package/dist/calendar/createRangeCalendar.d.ts.map +0 -1
- package/dist/calendar/createRangeCalendarCell.d.ts +0 -45
- package/dist/calendar/createRangeCalendarCell.d.ts.map +0 -1
- package/dist/calendar/index.d.ts +0 -6
- package/dist/calendar/index.d.ts.map +0 -1
- package/dist/checkbox/createCheckbox.d.ts +0 -56
- package/dist/checkbox/createCheckbox.d.ts.map +0 -1
- package/dist/checkbox/createCheckboxGroup.d.ts +0 -53
- package/dist/checkbox/createCheckboxGroup.d.ts.map +0 -1
- package/dist/checkbox/createCheckboxGroupItem.d.ts +0 -25
- package/dist/checkbox/createCheckboxGroupItem.d.ts.map +0 -1
- package/dist/checkbox/createCheckboxGroupState.d.ts +0 -71
- package/dist/checkbox/createCheckboxGroupState.d.ts.map +0 -1
- package/dist/checkbox/index.d.ts +0 -9
- package/dist/checkbox/index.d.ts.map +0 -1
- package/dist/color/createColorArea.d.ts +0 -13
- package/dist/color/createColorArea.d.ts.map +0 -1
- package/dist/color/createColorField.d.ts +0 -13
- package/dist/color/createColorField.d.ts.map +0 -1
- package/dist/color/createColorSlider.d.ts +0 -13
- package/dist/color/createColorSlider.d.ts.map +0 -1
- package/dist/color/createColorSwatch.d.ts +0 -12
- package/dist/color/createColorSwatch.d.ts.map +0 -1
- package/dist/color/createColorWheel.d.ts +0 -13
- package/dist/color/createColorWheel.d.ts.map +0 -1
- package/dist/color/index.d.ts +0 -10
- package/dist/color/index.d.ts.map +0 -1
- package/dist/color/types.d.ts +0 -106
- package/dist/color/types.d.ts.map +0 -1
- package/dist/combobox/createComboBox.d.ts +0 -77
- package/dist/combobox/createComboBox.d.ts.map +0 -1
- package/dist/combobox/index.d.ts +0 -2
- package/dist/combobox/index.d.ts.map +0 -1
- package/dist/combobox/intl/index.d.ts +0 -14
- package/dist/combobox/intl/index.d.ts.map +0 -1
- package/dist/datepicker/createDateField.d.ts +0 -51
- package/dist/datepicker/createDateField.d.ts.map +0 -1
- package/dist/datepicker/createDatePicker.d.ts +0 -65
- package/dist/datepicker/createDatePicker.d.ts.map +0 -1
- package/dist/datepicker/createDateSegment.d.ts +0 -29
- package/dist/datepicker/createDateSegment.d.ts.map +0 -1
- package/dist/datepicker/createTimeField.d.ts +0 -51
- package/dist/datepicker/createTimeField.d.ts.map +0 -1
- package/dist/datepicker/index.d.ts +0 -5
- package/dist/datepicker/index.d.ts.map +0 -1
- package/dist/dialog/createDialog.d.ts +0 -25
- package/dist/dialog/createDialog.d.ts.map +0 -1
- package/dist/dialog/index.d.ts +0 -3
- package/dist/dialog/index.d.ts.map +0 -1
- package/dist/dialog/types.d.ts +0 -18
- package/dist/dialog/types.d.ts.map +0 -1
- package/dist/disclosure/createDisclosure.d.ts +0 -52
- package/dist/disclosure/createDisclosure.d.ts.map +0 -1
- package/dist/disclosure/createDisclosureGroup.d.ts +0 -39
- package/dist/disclosure/createDisclosureGroup.d.ts.map +0 -1
- package/dist/disclosure/index.d.ts +0 -3
- package/dist/disclosure/index.d.ts.map +0 -1
- package/dist/dnd/createDrag.d.ts +0 -16
- package/dist/dnd/createDrag.d.ts.map +0 -1
- package/dist/dnd/createDraggableCollection.d.ts +0 -27
- package/dist/dnd/createDraggableCollection.d.ts.map +0 -1
- package/dist/dnd/createDraggableItem.d.ts +0 -37
- package/dist/dnd/createDraggableItem.d.ts.map +0 -1
- package/dist/dnd/createDrop.d.ts +0 -16
- package/dist/dnd/createDrop.d.ts.map +0 -1
- package/dist/dnd/createDroppableCollection.d.ts +0 -76
- package/dist/dnd/createDroppableCollection.d.ts.map +0 -1
- package/dist/dnd/createDroppableItem.d.ts +0 -31
- package/dist/dnd/createDroppableItem.d.ts.map +0 -1
- package/dist/dnd/index.d.ts +0 -18
- package/dist/dnd/index.d.ts.map +0 -1
- package/dist/dnd/types.d.ts +0 -66
- package/dist/dnd/types.d.ts.map +0 -1
- package/dist/dnd/utils.d.ts +0 -57
- package/dist/dnd/utils.d.ts.map +0 -1
- package/dist/focus/FocusScope.d.ts +0 -57
- package/dist/focus/FocusScope.d.ts.map +0 -1
- package/dist/focus/createAutoFocus.d.ts +0 -120
- package/dist/focus/createAutoFocus.d.ts.map +0 -1
- package/dist/focus/createFocusRestore.d.ts +0 -116
- package/dist/focus/createFocusRestore.d.ts.map +0 -1
- package/dist/focus/createVirtualFocus.d.ts +0 -170
- package/dist/focus/createVirtualFocus.d.ts.map +0 -1
- package/dist/focus/index.d.ts +0 -5
- package/dist/focus/index.d.ts.map +0 -1
- package/dist/form/createFormReset.d.ts +0 -27
- package/dist/form/createFormReset.d.ts.map +0 -1
- package/dist/form/createFormValidation.d.ts +0 -56
- package/dist/form/createFormValidation.d.ts.map +0 -1
- package/dist/form/index.d.ts +0 -3
- package/dist/form/index.d.ts.map +0 -1
- package/dist/grid/GridKeyboardDelegate.d.ts +0 -79
- package/dist/grid/GridKeyboardDelegate.d.ts.map +0 -1
- package/dist/grid/createGrid.d.ts +0 -24
- package/dist/grid/createGrid.d.ts.map +0 -1
- package/dist/grid/createGridCell.d.ts +0 -12
- package/dist/grid/createGridCell.d.ts.map +0 -1
- package/dist/grid/createGridRow.d.ts +0 -12
- package/dist/grid/createGridRow.d.ts.map +0 -1
- package/dist/grid/index.d.ts +0 -10
- package/dist/grid/index.d.ts.map +0 -1
- package/dist/grid/types.d.ts +0 -126
- package/dist/grid/types.d.ts.map +0 -1
- package/dist/gridlist/createGridList.d.ts +0 -28
- package/dist/gridlist/createGridList.d.ts.map +0 -1
- package/dist/gridlist/createGridListItem.d.ts +0 -12
- package/dist/gridlist/createGridListItem.d.ts.map +0 -1
- package/dist/gridlist/createGridListSelectionCheckbox.d.ts +0 -12
- package/dist/gridlist/createGridListSelectionCheckbox.d.ts.map +0 -1
- package/dist/gridlist/index.d.ts +0 -8
- package/dist/gridlist/index.d.ts.map +0 -1
- package/dist/gridlist/types.d.ts +0 -75
- package/dist/gridlist/types.d.ts.map +0 -1
- package/dist/i18n/NumberFormatter.d.ts +0 -43
- package/dist/i18n/NumberFormatter.d.ts.map +0 -1
- package/dist/i18n/createCollator.d.ts +0 -41
- package/dist/i18n/createCollator.d.ts.map +0 -1
- package/dist/i18n/createDateFormatter.d.ts +0 -45
- package/dist/i18n/createDateFormatter.d.ts.map +0 -1
- package/dist/i18n/createFilter.d.ts +0 -57
- package/dist/i18n/createFilter.d.ts.map +0 -1
- package/dist/i18n/createNumberFormatter.d.ts +0 -43
- package/dist/i18n/createNumberFormatter.d.ts.map +0 -1
- package/dist/i18n/createStringFormatter.d.ts +0 -42
- package/dist/i18n/createStringFormatter.d.ts.map +0 -1
- package/dist/i18n/index.d.ts +0 -9
- package/dist/i18n/index.d.ts.map +0 -1
- package/dist/i18n/locale.d.ts +0 -66
- package/dist/i18n/locale.d.ts.map +0 -1
- package/dist/i18n/utils.d.ts +0 -17
- package/dist/i18n/utils.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -7
- package/dist/index.ssr.js.map +0 -7
- package/dist/interactions/FocusableProvider.d.ts +0 -26
- package/dist/interactions/FocusableProvider.d.ts.map +0 -1
- package/dist/interactions/PressEvent.d.ts +0 -73
- package/dist/interactions/PressEvent.d.ts.map +0 -1
- package/dist/interactions/createFocus.d.ts +0 -31
- package/dist/interactions/createFocus.d.ts.map +0 -1
- package/dist/interactions/createFocusRing.d.ts +0 -37
- package/dist/interactions/createFocusRing.d.ts.map +0 -1
- package/dist/interactions/createFocusWithin.d.ts +0 -27
- package/dist/interactions/createFocusWithin.d.ts.map +0 -1
- package/dist/interactions/createFocusable.d.ts +0 -65
- package/dist/interactions/createFocusable.d.ts.map +0 -1
- package/dist/interactions/createHover.d.ts +0 -43
- package/dist/interactions/createHover.d.ts.map +0 -1
- package/dist/interactions/createInteractionModality.d.ts +0 -73
- package/dist/interactions/createInteractionModality.d.ts.map +0 -1
- package/dist/interactions/createKeyboard.d.ts +0 -35
- package/dist/interactions/createKeyboard.d.ts.map +0 -1
- package/dist/interactions/createLongPress.d.ts +0 -63
- package/dist/interactions/createLongPress.d.ts.map +0 -1
- package/dist/interactions/createMove.d.ts +0 -40
- package/dist/interactions/createMove.d.ts.map +0 -1
- package/dist/interactions/createPress.d.ts +0 -55
- package/dist/interactions/createPress.d.ts.map +0 -1
- package/dist/interactions/index.d.ts +0 -13
- package/dist/interactions/index.d.ts.map +0 -1
- package/dist/label/createField.d.ts +0 -51
- package/dist/label/createField.d.ts.map +0 -1
- package/dist/label/createLabel.d.ts +0 -49
- package/dist/label/createLabel.d.ts.map +0 -1
- package/dist/label/createLabels.d.ts +0 -16
- package/dist/label/createLabels.d.ts.map +0 -1
- package/dist/label/index.d.ts +0 -6
- package/dist/label/index.d.ts.map +0 -1
- package/dist/landmark/createLandmark.d.ts +0 -79
- package/dist/landmark/createLandmark.d.ts.map +0 -1
- package/dist/landmark/index.d.ts +0 -2
- package/dist/landmark/index.d.ts.map +0 -1
- package/dist/link/createLink.d.ts +0 -65
- package/dist/link/createLink.d.ts.map +0 -1
- package/dist/link/index.d.ts +0 -2
- package/dist/link/index.d.ts.map +0 -1
- package/dist/listbox/createListBox.d.ts +0 -58
- package/dist/listbox/createListBox.d.ts.map +0 -1
- package/dist/listbox/createOption.d.ts +0 -42
- package/dist/listbox/createOption.d.ts.map +0 -1
- package/dist/listbox/index.d.ts +0 -3
- package/dist/listbox/index.d.ts.map +0 -1
- package/dist/live-announcer/announce.d.ts +0 -113
- package/dist/live-announcer/announce.d.ts.map +0 -1
- package/dist/live-announcer/index.d.ts +0 -2
- package/dist/live-announcer/index.d.ts.map +0 -1
- package/dist/menu/createMenu.d.ts +0 -57
- package/dist/menu/createMenu.d.ts.map +0 -1
- package/dist/menu/createMenuItem.d.ts +0 -42
- package/dist/menu/createMenuItem.d.ts.map +0 -1
- package/dist/menu/createMenuTrigger.d.ts +0 -29
- package/dist/menu/createMenuTrigger.d.ts.map +0 -1
- package/dist/menu/index.d.ts +0 -4
- package/dist/menu/index.d.ts.map +0 -1
- package/dist/meter/createMeter.d.ts +0 -44
- package/dist/meter/createMeter.d.ts.map +0 -1
- package/dist/meter/index.d.ts +0 -2
- package/dist/meter/index.d.ts.map +0 -1
- package/dist/numberfield/createNumberField.d.ts +0 -56
- package/dist/numberfield/createNumberField.d.ts.map +0 -1
- package/dist/numberfield/index.d.ts +0 -2
- package/dist/numberfield/index.d.ts.map +0 -1
- package/dist/overlays/ariaHideOutside.d.ts +0 -25
- package/dist/overlays/ariaHideOutside.d.ts.map +0 -1
- package/dist/overlays/createInteractOutside.d.ts +0 -20
- package/dist/overlays/createInteractOutside.d.ts.map +0 -1
- package/dist/overlays/createModal.d.ts +0 -70
- package/dist/overlays/createModal.d.ts.map +0 -1
- package/dist/overlays/createOverlay.d.ts +0 -43
- package/dist/overlays/createOverlay.d.ts.map +0 -1
- package/dist/overlays/createOverlayTrigger.d.ts +0 -30
- package/dist/overlays/createOverlayTrigger.d.ts.map +0 -1
- package/dist/overlays/createPreventScroll.d.ts +0 -15
- package/dist/overlays/createPreventScroll.d.ts.map +0 -1
- package/dist/overlays/index.d.ts +0 -7
- package/dist/overlays/index.d.ts.map +0 -1
- package/dist/popover/calculatePosition.d.ts +0 -67
- package/dist/popover/calculatePosition.d.ts.map +0 -1
- package/dist/popover/createOverlayPosition.d.ts +0 -109
- package/dist/popover/createOverlayPosition.d.ts.map +0 -1
- package/dist/popover/createPopover.d.ts +0 -88
- package/dist/popover/createPopover.d.ts.map +0 -1
- package/dist/popover/index.d.ts +0 -4
- package/dist/popover/index.d.ts.map +0 -1
- package/dist/progress/createProgressBar.d.ts +0 -47
- package/dist/progress/createProgressBar.d.ts.map +0 -1
- package/dist/progress/index.d.ts +0 -2
- package/dist/progress/index.d.ts.map +0 -1
- package/dist/radio/createRadio.d.ts +0 -68
- package/dist/radio/createRadio.d.ts.map +0 -1
- package/dist/radio/createRadioGroup.d.ts +0 -85
- package/dist/radio/createRadioGroup.d.ts.map +0 -1
- package/dist/radio/createRadioGroupState.d.ts +0 -77
- package/dist/radio/createRadioGroupState.d.ts.map +0 -1
- package/dist/radio/index.d.ts +0 -4
- package/dist/radio/index.d.ts.map +0 -1
- package/dist/searchfield/createSearchField.d.ts +0 -32
- package/dist/searchfield/createSearchField.d.ts.map +0 -1
- package/dist/searchfield/index.d.ts +0 -3
- package/dist/searchfield/index.d.ts.map +0 -1
- package/dist/select/createHiddenSelect.d.ts +0 -69
- package/dist/select/createHiddenSelect.d.ts.map +0 -1
- package/dist/select/createSelect.d.ts +0 -70
- package/dist/select/createSelect.d.ts.map +0 -1
- package/dist/select/index.d.ts +0 -3
- package/dist/select/index.d.ts.map +0 -1
- package/dist/selection/createTypeSelect.d.ts +0 -43
- package/dist/selection/createTypeSelect.d.ts.map +0 -1
- package/dist/selection/index.d.ts +0 -6
- package/dist/selection/index.d.ts.map +0 -1
- package/dist/separator/createSeparator.d.ts +0 -38
- package/dist/separator/createSeparator.d.ts.map +0 -1
- package/dist/separator/index.d.ts +0 -2
- package/dist/separator/index.d.ts.map +0 -1
- package/dist/slider/createSlider.d.ts +0 -43
- package/dist/slider/createSlider.d.ts.map +0 -1
- package/dist/slider/index.d.ts +0 -3
- package/dist/slider/index.d.ts.map +0 -1
- package/dist/ssr/index.d.ts +0 -221
- package/dist/ssr/index.d.ts.map +0 -1
- package/dist/switch/createSwitch.d.ts +0 -34
- package/dist/switch/createSwitch.d.ts.map +0 -1
- package/dist/switch/index.d.ts +0 -2
- package/dist/switch/index.d.ts.map +0 -1
- package/dist/table/createTable.d.ts +0 -24
- package/dist/table/createTable.d.ts.map +0 -1
- package/dist/table/createTableCell.d.ts +0 -12
- package/dist/table/createTableCell.d.ts.map +0 -1
- package/dist/table/createTableColumnHeader.d.ts +0 -12
- package/dist/table/createTableColumnHeader.d.ts.map +0 -1
- package/dist/table/createTableHeaderRow.d.ts +0 -12
- package/dist/table/createTableHeaderRow.d.ts.map +0 -1
- package/dist/table/createTableRow.d.ts +0 -12
- package/dist/table/createTableRow.d.ts.map +0 -1
- package/dist/table/createTableRowGroup.d.ts +0 -11
- package/dist/table/createTableRowGroup.d.ts.map +0 -1
- package/dist/table/createTableSelectAllCheckbox.d.ts +0 -12
- package/dist/table/createTableSelectAllCheckbox.d.ts.map +0 -1
- package/dist/table/createTableSelectionCheckbox.d.ts +0 -12
- package/dist/table/createTableSelectionCheckbox.d.ts.map +0 -1
- package/dist/table/index.d.ts +0 -14
- package/dist/table/index.d.ts.map +0 -1
- package/dist/table/types.d.ts +0 -150
- package/dist/table/types.d.ts.map +0 -1
- package/dist/tabs/createTabs.d.ts +0 -123
- package/dist/tabs/createTabs.d.ts.map +0 -1
- package/dist/tabs/index.d.ts +0 -2
- package/dist/tabs/index.d.ts.map +0 -1
- package/dist/tag/createTag.d.ts +0 -42
- package/dist/tag/createTag.d.ts.map +0 -1
- package/dist/tag/createTagGroup.d.ts +0 -54
- package/dist/tag/createTagGroup.d.ts.map +0 -1
- package/dist/tag/index.d.ts +0 -3
- package/dist/tag/index.d.ts.map +0 -1
- package/dist/textfield/createTextField.d.ts +0 -73
- package/dist/textfield/createTextField.d.ts.map +0 -1
- package/dist/textfield/index.d.ts +0 -2
- package/dist/textfield/index.d.ts.map +0 -1
- package/dist/toast/createToast.d.ts +0 -58
- package/dist/toast/createToast.d.ts.map +0 -1
- package/dist/toast/createToastRegion.d.ts +0 -49
- package/dist/toast/createToastRegion.d.ts.map +0 -1
- package/dist/toast/index.d.ts +0 -3
- package/dist/toast/index.d.ts.map +0 -1
- package/dist/toggle/createToggle.d.ts +0 -94
- package/dist/toggle/createToggle.d.ts.map +0 -1
- package/dist/toggle/createToggleState.d.ts +0 -34
- package/dist/toggle/createToggleState.d.ts.map +0 -1
- package/dist/toggle/index.d.ts +0 -5
- package/dist/toggle/index.d.ts.map +0 -1
- package/dist/toolbar/createToolbar.d.ts +0 -49
- package/dist/toolbar/createToolbar.d.ts.map +0 -1
- package/dist/toolbar/index.d.ts +0 -2
- package/dist/toolbar/index.d.ts.map +0 -1
- package/dist/tooltip/createTooltip.d.ts +0 -48
- package/dist/tooltip/createTooltip.d.ts.map +0 -1
- package/dist/tooltip/createTooltipTrigger.d.ts +0 -64
- package/dist/tooltip/createTooltipTrigger.d.ts.map +0 -1
- package/dist/tooltip/index.d.ts +0 -3
- package/dist/tooltip/index.d.ts.map +0 -1
- package/dist/tree/createTree.d.ts +0 -28
- package/dist/tree/createTree.d.ts.map +0 -1
- package/dist/tree/createTreeItem.d.ts +0 -12
- package/dist/tree/createTreeItem.d.ts.map +0 -1
- package/dist/tree/createTreeSelectionCheckbox.d.ts +0 -12
- package/dist/tree/createTreeSelectionCheckbox.d.ts.map +0 -1
- package/dist/tree/index.d.ts +0 -8
- package/dist/tree/index.d.ts.map +0 -1
- package/dist/tree/types.d.ts +0 -81
- package/dist/tree/types.d.ts.map +0 -1
- package/dist/utils/createDescription.d.ts +0 -56
- package/dist/utils/createDescription.d.ts.map +0 -1
- package/dist/utils/dom.d.ts +0 -68
- package/dist/utils/dom.d.ts.map +0 -1
- package/dist/utils/env.d.ts +0 -18
- package/dist/utils/env.d.ts.map +0 -1
- package/dist/utils/events.d.ts +0 -29
- package/dist/utils/events.d.ts.map +0 -1
- package/dist/utils/filterDOMProps.d.ts +0 -29
- package/dist/utils/filterDOMProps.d.ts.map +0 -1
- package/dist/utils/focus.d.ts +0 -20
- package/dist/utils/focus.d.ts.map +0 -1
- package/dist/utils/geometry.d.ts +0 -40
- package/dist/utils/geometry.d.ts.map +0 -1
- package/dist/utils/globalListeners.d.ts +0 -36
- package/dist/utils/globalListeners.d.ts.map +0 -1
- package/dist/utils/index.d.ts +0 -13
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/mergeProps.d.ts +0 -11
- package/dist/utils/mergeProps.d.ts.map +0 -1
- package/dist/utils/platform.d.ts +0 -14
- package/dist/utils/platform.d.ts.map +0 -1
- package/dist/utils/reactivity.d.ts +0 -28
- package/dist/utils/reactivity.d.ts.map +0 -1
- package/dist/utils/textSelection.d.ts +0 -19
- package/dist/utils/textSelection.d.ts.map +0 -1
- package/dist/visually-hidden/createVisuallyHidden.d.ts +0 -60
- package/dist/visually-hidden/createVisuallyHidden.d.ts.map +0 -1
- package/dist/visually-hidden/index.d.ts +0 -2
- package/dist/visually-hidden/index.d.ts.map +0 -1
- package/src/autocomplete/createAutocomplete.ts +0 -341
- package/src/autocomplete/index.ts +0 -9
- package/src/breadcrumbs/createBreadcrumbs.ts +0 -196
- package/src/breadcrumbs/index.ts +0 -8
- package/src/button/createButton.ts +0 -142
- package/src/button/createToggleButton.ts +0 -101
- package/src/button/index.ts +0 -4
- package/src/button/types.ts +0 -78
- package/src/calendar/createCalendar.ts +0 -138
- package/src/calendar/createCalendarCell.ts +0 -187
- package/src/calendar/createCalendarGrid.ts +0 -140
- package/src/calendar/createRangeCalendar.ts +0 -136
- package/src/calendar/createRangeCalendarCell.ts +0 -186
- package/src/calendar/index.ts +0 -34
- package/src/checkbox/createCheckbox.ts +0 -135
- package/src/checkbox/createCheckboxGroup.ts +0 -137
- package/src/checkbox/createCheckboxGroupItem.ts +0 -117
- package/src/checkbox/createCheckboxGroupState.ts +0 -193
- package/src/checkbox/index.ts +0 -13
- package/src/color/createColorArea.ts +0 -314
- package/src/color/createColorField.ts +0 -137
- package/src/color/createColorSlider.ts +0 -197
- package/src/color/createColorSwatch.ts +0 -40
- package/src/color/createColorWheel.ts +0 -208
- package/src/color/index.ts +0 -24
- package/src/color/types.ts +0 -116
- package/src/combobox/createComboBox.ts +0 -647
- package/src/combobox/index.ts +0 -6
- package/src/combobox/intl/en-US.json +0 -7
- package/src/combobox/intl/es-ES.json +0 -7
- package/src/combobox/intl/index.ts +0 -23
- package/src/datepicker/createDateField.ts +0 -154
- package/src/datepicker/createDatePicker.ts +0 -206
- package/src/datepicker/createDateSegment.ts +0 -229
- package/src/datepicker/createTimeField.ts +0 -154
- package/src/datepicker/index.ts +0 -28
- package/src/dialog/createDialog.ts +0 -120
- package/src/dialog/index.ts +0 -2
- package/src/dialog/types.ts +0 -19
- package/src/disclosure/createDisclosure.ts +0 -131
- package/src/disclosure/createDisclosureGroup.ts +0 -62
- package/src/disclosure/index.ts +0 -11
- package/src/dnd/createDrag.ts +0 -209
- package/src/dnd/createDraggableCollection.ts +0 -63
- package/src/dnd/createDraggableItem.ts +0 -243
- package/src/dnd/createDrop.ts +0 -321
- package/src/dnd/createDroppableCollection.ts +0 -293
- package/src/dnd/createDroppableItem.ts +0 -213
- package/src/dnd/index.ts +0 -47
- package/src/dnd/types.ts +0 -89
- package/src/dnd/utils.ts +0 -294
- package/src/focus/FocusScope.tsx +0 -408
- package/src/focus/createAutoFocus.ts +0 -321
- package/src/focus/createFocusRestore.ts +0 -313
- package/src/focus/createVirtualFocus.ts +0 -396
- package/src/focus/index.ts +0 -35
- package/src/form/createFormReset.ts +0 -51
- package/src/form/createFormValidation.ts +0 -224
- package/src/form/index.ts +0 -11
- package/src/grid/GridKeyboardDelegate.ts +0 -429
- package/src/grid/createGrid.ts +0 -261
- package/src/grid/createGridCell.ts +0 -182
- package/src/grid/createGridRow.ts +0 -153
- package/src/grid/index.ts +0 -18
- package/src/grid/types.ts +0 -133
- package/src/gridlist/createGridList.ts +0 -185
- package/src/gridlist/createGridListItem.ts +0 -180
- package/src/gridlist/createGridListSelectionCheckbox.ts +0 -59
- package/src/gridlist/index.ts +0 -16
- package/src/gridlist/types.ts +0 -81
- package/src/i18n/NumberFormatter.ts +0 -266
- package/src/i18n/createCollator.ts +0 -79
- package/src/i18n/createDateFormatter.ts +0 -83
- package/src/i18n/createFilter.ts +0 -131
- package/src/i18n/createNumberFormatter.ts +0 -52
- package/src/i18n/createStringFormatter.ts +0 -87
- package/src/i18n/index.ts +0 -40
- package/src/i18n/locale.tsx +0 -188
- package/src/i18n/utils.ts +0 -99
- package/src/index.ts +0 -670
- package/src/interactions/FocusableProvider.tsx +0 -44
- package/src/interactions/PressEvent.ts +0 -124
- package/src/interactions/createFocus.ts +0 -163
- package/src/interactions/createFocusRing.ts +0 -89
- package/src/interactions/createFocusWithin.ts +0 -206
- package/src/interactions/createFocusable.ts +0 -168
- package/src/interactions/createHover.ts +0 -254
- package/src/interactions/createInteractionModality.ts +0 -424
- package/src/interactions/createKeyboard.ts +0 -82
- package/src/interactions/createLongPress.ts +0 -174
- package/src/interactions/createMove.ts +0 -289
- package/src/interactions/createPress.ts +0 -834
- package/src/interactions/index.ts +0 -78
- package/src/label/createField.ts +0 -145
- package/src/label/createLabel.ts +0 -117
- package/src/label/createLabels.ts +0 -50
- package/src/label/index.ts +0 -19
- package/src/landmark/createLandmark.ts +0 -377
- package/src/landmark/index.ts +0 -8
- package/src/link/createLink.ts +0 -182
- package/src/link/index.ts +0 -1
- package/src/listbox/createListBox.ts +0 -269
- package/src/listbox/createOption.ts +0 -151
- package/src/listbox/index.ts +0 -12
- package/src/live-announcer/announce.ts +0 -322
- package/src/live-announcer/index.ts +0 -9
- package/src/menu/createMenu.ts +0 -396
- package/src/menu/createMenuItem.ts +0 -149
- package/src/menu/createMenuTrigger.ts +0 -88
- package/src/menu/index.ts +0 -18
- package/src/meter/createMeter.ts +0 -75
- package/src/meter/index.ts +0 -1
- package/src/numberfield/createNumberField.ts +0 -268
- package/src/numberfield/index.ts +0 -5
- package/src/overlays/ariaHideOutside.ts +0 -219
- package/src/overlays/createInteractOutside.ts +0 -149
- package/src/overlays/createModal.tsx +0 -202
- package/src/overlays/createOverlay.ts +0 -155
- package/src/overlays/createOverlayTrigger.ts +0 -85
- package/src/overlays/createPreventScroll.ts +0 -266
- package/src/overlays/index.ts +0 -44
- package/src/popover/calculatePosition.ts +0 -766
- package/src/popover/createOverlayPosition.ts +0 -356
- package/src/popover/createPopover.ts +0 -170
- package/src/popover/index.ts +0 -24
- package/src/progress/createProgressBar.ts +0 -128
- package/src/progress/index.ts +0 -5
- package/src/radio/createRadio.ts +0 -287
- package/src/radio/createRadioGroup.ts +0 -189
- package/src/radio/createRadioGroupState.ts +0 -201
- package/src/radio/index.ts +0 -23
- package/src/searchfield/createSearchField.ts +0 -186
- package/src/searchfield/index.ts +0 -2
- package/src/select/createHiddenSelect.tsx +0 -236
- package/src/select/createSelect.ts +0 -395
- package/src/select/index.ts +0 -14
- package/src/selection/createTypeSelect.ts +0 -201
- package/src/selection/index.ts +0 -6
- package/src/separator/createSeparator.ts +0 -82
- package/src/separator/index.ts +0 -6
- package/src/slider/createSlider.ts +0 -349
- package/src/slider/index.ts +0 -2
- package/src/ssr/index.tsx +0 -370
- package/src/switch/createSwitch.ts +0 -70
- package/src/switch/index.ts +0 -1
- package/src/table/createTable.ts +0 -526
- package/src/table/createTableCell.ts +0 -147
- package/src/table/createTableColumnHeader.ts +0 -115
- package/src/table/createTableHeaderRow.ts +0 -40
- package/src/table/createTableRow.ts +0 -155
- package/src/table/createTableRowGroup.ts +0 -32
- package/src/table/createTableSelectAllCheckbox.ts +0 -73
- package/src/table/createTableSelectionCheckbox.ts +0 -59
- package/src/table/index.ts +0 -30
- package/src/table/types.ts +0 -165
- package/src/tabs/createTabs.ts +0 -472
- package/src/tabs/index.ts +0 -14
- package/src/tag/createTag.ts +0 -194
- package/src/tag/createTagGroup.ts +0 -154
- package/src/tag/index.ts +0 -12
- package/src/textfield/createTextField.ts +0 -198
- package/src/textfield/index.ts +0 -5
- package/src/toast/createToast.ts +0 -118
- package/src/toast/createToastRegion.ts +0 -100
- package/src/toast/index.ts +0 -11
- package/src/toggle/createToggle.ts +0 -223
- package/src/toggle/createToggleState.ts +0 -94
- package/src/toggle/index.ts +0 -7
- package/src/toolbar/createToolbar.ts +0 -368
- package/src/toolbar/index.ts +0 -6
- package/src/tooltip/createTooltip.ts +0 -79
- package/src/tooltip/createTooltipTrigger.ts +0 -222
- package/src/tooltip/index.ts +0 -6
- package/src/tree/createTree.ts +0 -246
- package/src/tree/createTreeItem.ts +0 -233
- package/src/tree/createTreeSelectionCheckbox.ts +0 -68
- package/src/tree/index.ts +0 -16
- package/src/tree/types.ts +0 -87
- package/src/utils/createDescription.ts +0 -137
- package/src/utils/dom.ts +0 -327
- package/src/utils/env.ts +0 -54
- package/src/utils/events.ts +0 -106
- package/src/utils/filterDOMProps.ts +0 -116
- package/src/utils/focus.ts +0 -151
- package/src/utils/geometry.ts +0 -115
- package/src/utils/globalListeners.ts +0 -142
- package/src/utils/index.ts +0 -80
- package/src/utils/mergeProps.ts +0 -52
- package/src/utils/platform.ts +0 -52
- package/src/utils/reactivity.ts +0 -36
- package/src/utils/textSelection.ts +0 -114
- package/src/visually-hidden/createVisuallyHidden.ts +0 -124
- package/src/visually-hidden/index.ts +0 -6
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* createToastRegion hook for Solidaria
|
|
3
|
-
*
|
|
4
|
-
* Provides the accessibility implementation for a ToastRegion component.
|
|
5
|
-
* The region is a landmark that contains all visible toasts.
|
|
6
|
-
*
|
|
7
|
-
* Port of @react-aria/toast useToastRegion.
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
import { type JSX, createMemo } from 'solid-js';
|
|
11
|
-
import { type ToastState } from '@proyecto-viviana/solid-stately';
|
|
12
|
-
import { mergeProps } from '../utils';
|
|
13
|
-
import { createHover } from '../interactions/createHover';
|
|
14
|
-
|
|
15
|
-
// ============================================
|
|
16
|
-
// TYPES
|
|
17
|
-
// ============================================
|
|
18
|
-
|
|
19
|
-
export interface AriaToastRegionProps<T> {
|
|
20
|
-
/** The toast state from createToastState. */
|
|
21
|
-
state: ToastState<T>;
|
|
22
|
-
/** An accessible label for the region. */
|
|
23
|
-
'aria-label'?: string;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export interface ToastRegionAria {
|
|
27
|
-
/** Props for the toast region container element. */
|
|
28
|
-
regionProps: JSX.HTMLAttributes<HTMLElement>;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
// ============================================
|
|
32
|
-
// IMPLEMENTATION
|
|
33
|
-
// ============================================
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Provides the accessibility implementation for a ToastRegion component.
|
|
37
|
-
*
|
|
38
|
-
* The region is a landmark (role="region") that contains all visible toasts.
|
|
39
|
-
* It pauses toast timers on hover or focus to give users time to read/interact.
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* ```tsx
|
|
43
|
-
* import { createToastRegion } from 'solidaria';
|
|
44
|
-
* import { For, Show } from 'solid-js';
|
|
45
|
-
*
|
|
46
|
-
* function ToastRegion(props) {
|
|
47
|
-
* let ref;
|
|
48
|
-
* const { regionProps } = createToastRegion({ state: props.state });
|
|
49
|
-
*
|
|
50
|
-
* return (
|
|
51
|
-
* <Show when={props.state.visibleToasts().length > 0}>
|
|
52
|
-
* <div {...regionProps} ref={ref}>
|
|
53
|
-
* <For each={props.state.visibleToasts()}>
|
|
54
|
-
* {(toast) => <Toast toast={toast} state={props.state} />}
|
|
55
|
-
* </For>
|
|
56
|
-
* </div>
|
|
57
|
-
* </Show>
|
|
58
|
-
* );
|
|
59
|
-
* }
|
|
60
|
-
* ```
|
|
61
|
-
*/
|
|
62
|
-
export function createToastRegion<T>(props: AriaToastRegionProps<T>): ToastRegionAria {
|
|
63
|
-
// Pause timers on hover
|
|
64
|
-
const { hoverProps } = createHover({
|
|
65
|
-
onHoverStart: () => {
|
|
66
|
-
props.state.pauseAll();
|
|
67
|
-
},
|
|
68
|
-
onHoverEnd: () => {
|
|
69
|
-
props.state.resumeAll();
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
// Pause timers on focus
|
|
74
|
-
const handleFocus = () => {
|
|
75
|
-
props.state.pauseAll();
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
const handleBlur = (e: FocusEvent) => {
|
|
79
|
-
// Only resume if focus moved outside the region
|
|
80
|
-
const target = e.relatedTarget as HTMLElement | null;
|
|
81
|
-
const currentTarget = e.currentTarget as HTMLElement;
|
|
82
|
-
if (!target || !currentTarget.contains(target)) {
|
|
83
|
-
props.state.resumeAll();
|
|
84
|
-
}
|
|
85
|
-
};
|
|
86
|
-
|
|
87
|
-
// Region props
|
|
88
|
-
const regionProps = createMemo<JSX.HTMLAttributes<HTMLElement>>(() => ({
|
|
89
|
-
...hoverProps,
|
|
90
|
-
role: 'region' as const,
|
|
91
|
-
'aria-label': props['aria-label'] ?? 'Notifications',
|
|
92
|
-
tabIndex: -1,
|
|
93
|
-
onFocusIn: handleFocus,
|
|
94
|
-
onFocusOut: handleBlur,
|
|
95
|
-
}));
|
|
96
|
-
|
|
97
|
-
return {
|
|
98
|
-
get regionProps() { return regionProps(); },
|
|
99
|
-
};
|
|
100
|
-
}
|
package/src/toast/index.ts
DELETED
|
@@ -1,223 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Toggle hook for Solidaria
|
|
3
|
-
*
|
|
4
|
-
* Handles interactions for toggle elements, e.g. Checkboxes and Switches.
|
|
5
|
-
*
|
|
6
|
-
* This is a 1:1 port of @react-aria/toggle's useToggle hook.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import { JSX, Accessor, createEffect } from 'solid-js';
|
|
10
|
-
import { createPress } from '../interactions/createPress';
|
|
11
|
-
import { createFocusable } from '../interactions/createFocusable';
|
|
12
|
-
import { mergeProps } from '../utils/mergeProps';
|
|
13
|
-
import { filterDOMProps } from '../utils/filterDOMProps';
|
|
14
|
-
import { type MaybeAccessor, access } from '../utils/reactivity';
|
|
15
|
-
import { isDevEnv } from '../utils/env';
|
|
16
|
-
import { type ToggleState } from '@proyecto-viviana/solid-stately';
|
|
17
|
-
import { type PressEvent } from '../interactions/PressEvent';
|
|
18
|
-
|
|
19
|
-
// ============================================
|
|
20
|
-
// TYPES
|
|
21
|
-
// ============================================
|
|
22
|
-
|
|
23
|
-
export interface AriaToggleProps {
|
|
24
|
-
/** Whether the element should be selected (controlled). */
|
|
25
|
-
isSelected?: boolean;
|
|
26
|
-
/** Whether the element should be selected by default (uncontrolled). */
|
|
27
|
-
defaultSelected?: boolean;
|
|
28
|
-
/** Handler that is called when the element's selection state changes. */
|
|
29
|
-
onChange?: (isSelected: boolean) => void;
|
|
30
|
-
/** The value of the input element, used when submitting an HTML form. */
|
|
31
|
-
value?: string;
|
|
32
|
-
/** The name of the input element, used when submitting an HTML form. */
|
|
33
|
-
name?: string;
|
|
34
|
-
/** The form to associate the input with. */
|
|
35
|
-
form?: string;
|
|
36
|
-
/** Whether the element is disabled. */
|
|
37
|
-
isDisabled?: boolean;
|
|
38
|
-
/** Whether the element is read only. */
|
|
39
|
-
isReadOnly?: boolean;
|
|
40
|
-
/** Whether the element is required. */
|
|
41
|
-
isRequired?: boolean;
|
|
42
|
-
/** Whether the element is invalid. */
|
|
43
|
-
isInvalid?: boolean;
|
|
44
|
-
/** The element's children. */
|
|
45
|
-
children?: JSX.Element;
|
|
46
|
-
/** Defines a string value that labels the current element. */
|
|
47
|
-
'aria-label'?: string;
|
|
48
|
-
/** Identifies the element (or elements) that labels the current element. */
|
|
49
|
-
'aria-labelledby'?: string;
|
|
50
|
-
/** Identifies the element (or elements) that describes the object. */
|
|
51
|
-
'aria-describedby'?: string;
|
|
52
|
-
/** Identifies the element (or elements) that provide an error message for the object. */
|
|
53
|
-
'aria-errormessage'?: string;
|
|
54
|
-
/** Identifies the element (or elements) whose contents or presence are controlled by the current element. */
|
|
55
|
-
'aria-controls'?: string;
|
|
56
|
-
/** The element's unique identifier. */
|
|
57
|
-
id?: string;
|
|
58
|
-
/** Handler that is called when the press is released over the target. */
|
|
59
|
-
onPress?: (e: PressEvent) => void;
|
|
60
|
-
/** Handler that is called when a press interaction starts. */
|
|
61
|
-
onPressStart?: (e: PressEvent) => void;
|
|
62
|
-
/** Handler that is called when a press interaction ends, either over the target or when the pointer leaves the target. */
|
|
63
|
-
onPressEnd?: (e: PressEvent) => void;
|
|
64
|
-
/** Handler that is called when the press state changes. */
|
|
65
|
-
onPressChange?: (isPressed: boolean) => void;
|
|
66
|
-
/** Handler that is called when a press is released over the target, regardless of whether it started on the target or not. */
|
|
67
|
-
onPressUp?: (e: PressEvent) => void;
|
|
68
|
-
/** Handler that is called when the element is clicked. */
|
|
69
|
-
onClick?: (e: MouseEvent) => void;
|
|
70
|
-
/** Handler that is called when the element receives focus. */
|
|
71
|
-
onFocus?: (e: FocusEvent) => void;
|
|
72
|
-
/** Handler that is called when the element loses focus. */
|
|
73
|
-
onBlur?: (e: FocusEvent) => void;
|
|
74
|
-
/** Handler that is called when the element's focus status changes. */
|
|
75
|
-
onFocusChange?: (isFocused: boolean) => void;
|
|
76
|
-
/** Handler that is called when a key is pressed. */
|
|
77
|
-
onKeyDown?: (e: KeyboardEvent) => void;
|
|
78
|
-
/** Handler that is called when a key is released. */
|
|
79
|
-
onKeyUp?: (e: KeyboardEvent) => void;
|
|
80
|
-
/** Whether to exclude the element from the tab order. */
|
|
81
|
-
excludeFromTabOrder?: boolean;
|
|
82
|
-
/** Whether to autofocus the element. */
|
|
83
|
-
autoFocus?: boolean;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export interface ToggleAria {
|
|
87
|
-
/** Props to be spread on the label element. */
|
|
88
|
-
labelProps: JSX.LabelHTMLAttributes<HTMLLabelElement>;
|
|
89
|
-
/** Props to be spread on the input element. */
|
|
90
|
-
inputProps: JSX.InputHTMLAttributes<HTMLInputElement>;
|
|
91
|
-
/** Whether the toggle is selected. */
|
|
92
|
-
isSelected: Accessor<boolean>;
|
|
93
|
-
/** Whether the toggle is in a pressed state. */
|
|
94
|
-
isPressed: Accessor<boolean>;
|
|
95
|
-
/** Whether the toggle is disabled. */
|
|
96
|
-
isDisabled: boolean;
|
|
97
|
-
/** Whether the toggle is read only. */
|
|
98
|
-
isReadOnly: boolean;
|
|
99
|
-
/** Whether the toggle is invalid. */
|
|
100
|
-
isInvalid: boolean;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
// ============================================
|
|
104
|
-
// IMPLEMENTATION
|
|
105
|
-
// ============================================
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* Handles interactions for toggle elements, e.g. Checkboxes and Switches.
|
|
109
|
-
*/
|
|
110
|
-
export function createToggle(
|
|
111
|
-
props: MaybeAccessor<AriaToggleProps>,
|
|
112
|
-
state: ToggleState,
|
|
113
|
-
ref: () => HTMLInputElement | null
|
|
114
|
-
): ToggleAria {
|
|
115
|
-
const getProps = () => access(props);
|
|
116
|
-
|
|
117
|
-
const isDisabled = () => getProps().isDisabled ?? false;
|
|
118
|
-
const isReadOnly = () => getProps().isReadOnly ?? false;
|
|
119
|
-
const isInvalid = () => {
|
|
120
|
-
return getProps().isInvalid ?? false;
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
// Handle press state for keyboard interactions and cases where labelProps is not used.
|
|
124
|
-
const { pressProps, isPressed } = createPress({
|
|
125
|
-
get onPressStart() { return getProps().onPressStart; },
|
|
126
|
-
get onPressEnd() { return getProps().onPressEnd; },
|
|
127
|
-
get onPressChange() { return getProps().onPressChange; },
|
|
128
|
-
get onPress() { return getProps().onPress; },
|
|
129
|
-
get onPressUp() { return getProps().onPressUp; },
|
|
130
|
-
get isDisabled() { return isDisabled(); },
|
|
131
|
-
});
|
|
132
|
-
|
|
133
|
-
// Handle press state on the label.
|
|
134
|
-
const { pressProps: labelPressProps, isPressed: isLabelPressed } = createPress({
|
|
135
|
-
get onPressStart() { return getProps().onPressStart; },
|
|
136
|
-
get onPressEnd() { return getProps().onPressEnd; },
|
|
137
|
-
get onPressChange() { return getProps().onPressChange; },
|
|
138
|
-
get onPressUp() { return getProps().onPressUp; },
|
|
139
|
-
onPress(e: PressEvent) {
|
|
140
|
-
getProps().onPress?.(e);
|
|
141
|
-
state.toggle();
|
|
142
|
-
ref()?.focus();
|
|
143
|
-
},
|
|
144
|
-
get isDisabled() { return isDisabled() || isReadOnly(); },
|
|
145
|
-
});
|
|
146
|
-
|
|
147
|
-
// Handle focusable - extract the relevant props for createFocusable
|
|
148
|
-
const { focusableProps } = createFocusable({
|
|
149
|
-
get isDisabled() { return isDisabled(); },
|
|
150
|
-
get autoFocus() { return getProps().autoFocus; },
|
|
151
|
-
get onFocus() { return getProps().onFocus; },
|
|
152
|
-
get onBlur() { return getProps().onBlur; },
|
|
153
|
-
get onFocusChange() { return getProps().onFocusChange; },
|
|
154
|
-
get onKeyDown() { return getProps().onKeyDown; },
|
|
155
|
-
get onKeyUp() { return getProps().onKeyUp; },
|
|
156
|
-
get excludeFromTabOrder() { return getProps().excludeFromTabOrder; },
|
|
157
|
-
}, ref as unknown as (el: HTMLElement) => void);
|
|
158
|
-
|
|
159
|
-
// Combine press and focusable props for input
|
|
160
|
-
const interactions = mergeProps(pressProps, focusableProps);
|
|
161
|
-
|
|
162
|
-
// Filter DOM props
|
|
163
|
-
const domProps = () => filterDOMProps(getProps() as unknown as Record<string, unknown>, { labelable: true });
|
|
164
|
-
|
|
165
|
-
// Handle input change
|
|
166
|
-
const onChange: JSX.EventHandler<HTMLInputElement, Event> = (e) => {
|
|
167
|
-
// Since we spread props on label, onChange will end up there as well as in here.
|
|
168
|
-
// So we have to stop propagation at the lowest level that we care about
|
|
169
|
-
e.stopPropagation();
|
|
170
|
-
|
|
171
|
-
// Don't update state if readonly
|
|
172
|
-
if (isReadOnly()) {
|
|
173
|
-
// Reset the checkbox to its previous state since the browser already toggled it
|
|
174
|
-
e.currentTarget.checked = state.isSelected();
|
|
175
|
-
return;
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
state.setSelected(e.currentTarget.checked);
|
|
179
|
-
};
|
|
180
|
-
|
|
181
|
-
// Warn if no accessible label
|
|
182
|
-
createEffect(() => {
|
|
183
|
-
const p = getProps();
|
|
184
|
-
const hasChildren = p.children != null;
|
|
185
|
-
const hasAriaLabel = p['aria-label'] != null || p['aria-labelledby'] != null;
|
|
186
|
-
if (!hasChildren && !hasAriaLabel && isDevEnv()) {
|
|
187
|
-
console.warn('If you do not provide children, you must specify an aria-label for accessibility');
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
|
|
191
|
-
// Combined pressed state
|
|
192
|
-
const combinedIsPressed: Accessor<boolean> = () => isPressed() || isLabelPressed();
|
|
193
|
-
|
|
194
|
-
return {
|
|
195
|
-
labelProps: mergeProps(labelPressProps, {
|
|
196
|
-
onClick: (e: MouseEvent) => e.preventDefault(),
|
|
197
|
-
}),
|
|
198
|
-
get inputProps() {
|
|
199
|
-
const p = getProps();
|
|
200
|
-
return mergeProps(domProps(), {
|
|
201
|
-
'aria-invalid': isInvalid() || undefined,
|
|
202
|
-
'aria-errormessage': p['aria-errormessage'],
|
|
203
|
-
'aria-controls': p['aria-controls'],
|
|
204
|
-
'aria-readonly': isReadOnly() || undefined,
|
|
205
|
-
onChange,
|
|
206
|
-
disabled: isDisabled(),
|
|
207
|
-
...(p.value == null ? {} : { value: p.value }),
|
|
208
|
-
name: p.name,
|
|
209
|
-
form: p.form,
|
|
210
|
-
type: 'checkbox' as const,
|
|
211
|
-
...interactions,
|
|
212
|
-
// Stop click propagation to prevent labelProps.onClick from calling preventDefault
|
|
213
|
-
// which would prevent the checkbox from toggling in JSDOM/testing-library environments
|
|
214
|
-
onClick: (e: MouseEvent) => e.stopPropagation(),
|
|
215
|
-
}) as JSX.InputHTMLAttributes<HTMLInputElement>;
|
|
216
|
-
},
|
|
217
|
-
isSelected: state.isSelected,
|
|
218
|
-
isPressed: combinedIsPressed,
|
|
219
|
-
isDisabled: isDisabled(),
|
|
220
|
-
isReadOnly: isReadOnly(),
|
|
221
|
-
isInvalid: isInvalid(),
|
|
222
|
-
};
|
|
223
|
-
}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Toggle state for Solidaria
|
|
3
|
-
*
|
|
4
|
-
* Provides state management for toggle components like checkboxes and switches.
|
|
5
|
-
*
|
|
6
|
-
* This is a 1:1 port of @react-stately/toggle's useToggleState.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import { createSignal, Accessor } from 'solid-js';
|
|
10
|
-
import { type MaybeAccessor, access } from '../utils/reactivity';
|
|
11
|
-
|
|
12
|
-
// ============================================
|
|
13
|
-
// TYPES
|
|
14
|
-
// ============================================
|
|
15
|
-
|
|
16
|
-
export interface ToggleStateOptions {
|
|
17
|
-
/** Whether the element should be selected (controlled). */
|
|
18
|
-
isSelected?: boolean;
|
|
19
|
-
/** Whether the element should be selected by default (uncontrolled). */
|
|
20
|
-
defaultSelected?: boolean;
|
|
21
|
-
/** Handler that is called when the element's selection state changes. */
|
|
22
|
-
onChange?: (isSelected: boolean) => void;
|
|
23
|
-
/** Whether the element is read only. */
|
|
24
|
-
isReadOnly?: boolean;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export interface ToggleState {
|
|
28
|
-
/** Whether the toggle is selected. */
|
|
29
|
-
readonly isSelected: Accessor<boolean>;
|
|
30
|
-
/** Whether the toggle is selected by default. */
|
|
31
|
-
readonly defaultSelected: boolean;
|
|
32
|
-
/** Updates selection state. */
|
|
33
|
-
setSelected(isSelected: boolean): void;
|
|
34
|
-
/** Toggle the selection state. */
|
|
35
|
-
toggle(): void;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// ============================================
|
|
39
|
-
// IMPLEMENTATION
|
|
40
|
-
// ============================================
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Provides state management for toggle components like checkboxes and switches.
|
|
44
|
-
*/
|
|
45
|
-
export function createToggleState(props: MaybeAccessor<ToggleStateOptions> = {}): ToggleState {
|
|
46
|
-
const getProps = () => access(props);
|
|
47
|
-
|
|
48
|
-
// Get initial values
|
|
49
|
-
const initialProps = getProps();
|
|
50
|
-
const initialSelected = initialProps.isSelected ?? initialProps.defaultSelected ?? false;
|
|
51
|
-
|
|
52
|
-
// Create internal signal for uncontrolled mode
|
|
53
|
-
const [internalSelected, setInternalSelected] = createSignal(initialSelected);
|
|
54
|
-
|
|
55
|
-
// Determine if controlled
|
|
56
|
-
const isControlled = () => getProps().isSelected !== undefined;
|
|
57
|
-
|
|
58
|
-
// Get current selection state
|
|
59
|
-
const isSelected: Accessor<boolean> = () => {
|
|
60
|
-
const p = getProps();
|
|
61
|
-
return isControlled() ? (p.isSelected ?? false) : internalSelected();
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
// Update selection state
|
|
65
|
-
function setSelected(value: boolean): void {
|
|
66
|
-
const p = getProps();
|
|
67
|
-
if (p.isReadOnly) {
|
|
68
|
-
return;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
if (!isControlled()) {
|
|
72
|
-
setInternalSelected(value);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
p.onChange?.(value);
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
// Toggle selection state
|
|
79
|
-
function toggle(): void {
|
|
80
|
-
const p = getProps();
|
|
81
|
-
if (p.isReadOnly) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
setSelected(!isSelected());
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
return {
|
|
89
|
-
isSelected,
|
|
90
|
-
defaultSelected: initialProps.defaultSelected ?? initialSelected,
|
|
91
|
-
setSelected,
|
|
92
|
-
toggle,
|
|
93
|
-
};
|
|
94
|
-
}
|
package/src/toggle/index.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
// Re-export state from solid-stately
|
|
2
|
-
export { createToggleState } from '@proyecto-viviana/solid-stately';
|
|
3
|
-
export type { ToggleStateOptions, ToggleState } from '@proyecto-viviana/solid-stately';
|
|
4
|
-
|
|
5
|
-
// ARIA hook (solidaria-specific)
|
|
6
|
-
export { createToggle } from './createToggle';
|
|
7
|
-
export type { AriaToggleProps, ToggleAria } from './createToggle';
|