@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
package/src/table/types.ts
DELETED
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Table ARIA types for Table components.
|
|
3
|
-
* Based on @react-aria/table types.
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import type { JSX } from 'solid-js';
|
|
7
|
-
import type { Key, GridNode } from '@proyecto-viviana/solid-stately';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Props for the createTable hook.
|
|
11
|
-
*/
|
|
12
|
-
export interface AriaTableProps {
|
|
13
|
-
/** ID for the table element. */
|
|
14
|
-
id?: string;
|
|
15
|
-
/** ARIA label for the table. */
|
|
16
|
-
'aria-label'?: string;
|
|
17
|
-
/** ARIA labelledby for the table. */
|
|
18
|
-
'aria-labelledby'?: string;
|
|
19
|
-
/** ARIA describedby for the table. */
|
|
20
|
-
'aria-describedby'?: string;
|
|
21
|
-
/** Whether the table uses virtual scrolling. */
|
|
22
|
-
isVirtualized?: boolean;
|
|
23
|
-
/** Handler for row actions. */
|
|
24
|
-
onRowAction?: (key: Key) => void;
|
|
25
|
-
/** Handler for cell actions. */
|
|
26
|
-
onCellAction?: (key: Key) => void;
|
|
27
|
-
/** Whether selection should occur on press up. */
|
|
28
|
-
shouldSelectOnPressUp?: boolean;
|
|
29
|
-
/** Focus mode: 'row' or 'cell'. */
|
|
30
|
-
focusMode?: 'row' | 'cell';
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
/**
|
|
34
|
-
* Return value from createTable.
|
|
35
|
-
*/
|
|
36
|
-
export interface TableAria {
|
|
37
|
-
/** Props to spread on the table element. */
|
|
38
|
-
gridProps: JSX.HTMLAttributes<HTMLTableElement>;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Props for the createTableHeaderRow hook.
|
|
43
|
-
*/
|
|
44
|
-
export interface AriaTableHeaderRowProps {
|
|
45
|
-
/** The header row node. */
|
|
46
|
-
node: GridNode<unknown>;
|
|
47
|
-
/** Whether the table is virtualized. */
|
|
48
|
-
isVirtualized?: boolean;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Return value from createTableHeaderRow.
|
|
53
|
-
*/
|
|
54
|
-
export interface TableHeaderRowAria {
|
|
55
|
-
/** Props to spread on the header row element. */
|
|
56
|
-
rowProps: JSX.HTMLAttributes<HTMLTableRowElement>;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Props for the createTableColumnHeader hook.
|
|
61
|
-
*/
|
|
62
|
-
export interface AriaTableColumnHeaderProps {
|
|
63
|
-
/** The column header node. */
|
|
64
|
-
node: GridNode<unknown>;
|
|
65
|
-
/** Whether the table is virtualized. */
|
|
66
|
-
isVirtualized?: boolean;
|
|
67
|
-
/** Whether the column allows sorting. */
|
|
68
|
-
allowsSorting?: boolean;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Return value from createTableColumnHeader.
|
|
73
|
-
*/
|
|
74
|
-
export interface TableColumnHeaderAria {
|
|
75
|
-
/** Props to spread on the column header element. */
|
|
76
|
-
columnHeaderProps: JSX.HTMLAttributes<HTMLTableCellElement>;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
/**
|
|
80
|
-
* Props for the createTableRow hook.
|
|
81
|
-
*/
|
|
82
|
-
export interface AriaTableRowProps {
|
|
83
|
-
/** The row node. */
|
|
84
|
-
node: GridNode<unknown>;
|
|
85
|
-
/** Whether the table is virtualized. */
|
|
86
|
-
isVirtualized?: boolean;
|
|
87
|
-
/** Handler for row action. */
|
|
88
|
-
onAction?: () => void;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
/**
|
|
92
|
-
* Return value from createTableRow.
|
|
93
|
-
*/
|
|
94
|
-
export interface TableRowAria {
|
|
95
|
-
/** Props to spread on the row element. */
|
|
96
|
-
rowProps: JSX.HTMLAttributes<HTMLTableRowElement>;
|
|
97
|
-
/** Whether the row is selected. */
|
|
98
|
-
isSelected: boolean;
|
|
99
|
-
/** Whether the row is disabled. */
|
|
100
|
-
isDisabled: boolean;
|
|
101
|
-
/** Whether the row is pressed. */
|
|
102
|
-
isPressed: boolean;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* Props for the createTableCell hook.
|
|
107
|
-
*/
|
|
108
|
-
export interface AriaTableCellProps {
|
|
109
|
-
/** The cell node. */
|
|
110
|
-
node: GridNode<unknown>;
|
|
111
|
-
/** Whether the table is virtualized. */
|
|
112
|
-
isVirtualized?: boolean;
|
|
113
|
-
/** Handler for cell action. */
|
|
114
|
-
onAction?: () => void;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* Return value from createTableCell.
|
|
119
|
-
*/
|
|
120
|
-
export interface TableCellAria {
|
|
121
|
-
/** Props to spread on the cell element. */
|
|
122
|
-
gridCellProps: JSX.HTMLAttributes<HTMLTableCellElement>;
|
|
123
|
-
/** Whether the cell is pressed. */
|
|
124
|
-
isPressed: boolean;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
/**
|
|
128
|
-
* Props for the createTableRowGroup hook.
|
|
129
|
-
*/
|
|
130
|
-
export interface AriaTableRowGroupProps {
|
|
131
|
-
/** The type of row group: 'thead', 'tbody', or 'tfoot'. */
|
|
132
|
-
type: 'thead' | 'tbody' | 'tfoot';
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
* Return value from createTableRowGroup.
|
|
137
|
-
*/
|
|
138
|
-
export interface TableRowGroupAria {
|
|
139
|
-
/** Props to spread on the row group element. */
|
|
140
|
-
rowGroupProps: JSX.HTMLAttributes<HTMLTableSectionElement>;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
/**
|
|
144
|
-
* Props for the createTableSelectionCheckbox hook.
|
|
145
|
-
*/
|
|
146
|
-
export interface AriaTableSelectionCheckboxProps {
|
|
147
|
-
/** The key of the row. */
|
|
148
|
-
key: Key;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
/**
|
|
152
|
-
* Return value from createTableSelectionCheckbox.
|
|
153
|
-
*/
|
|
154
|
-
export interface TableSelectionCheckboxAria {
|
|
155
|
-
/** Props to spread on the checkbox input element. */
|
|
156
|
-
checkboxProps: JSX.InputHTMLAttributes<HTMLInputElement>;
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
/**
|
|
160
|
-
* Return value from createTableSelectAllCheckbox.
|
|
161
|
-
*/
|
|
162
|
-
export interface TableSelectAllCheckboxAria {
|
|
163
|
-
/** Props to spread on the checkbox input element. */
|
|
164
|
-
checkboxProps: JSX.InputHTMLAttributes<HTMLInputElement>;
|
|
165
|
-
}
|
package/src/tabs/createTabs.ts
DELETED
|
@@ -1,472 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ARIA hooks for tab components.
|
|
3
|
-
* Based on @react-aria/tabs.
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import { type Accessor, createMemo, onMount } from 'solid-js';
|
|
7
|
-
import { createFocusRing } from '../interactions';
|
|
8
|
-
import { createPress } from '../interactions';
|
|
9
|
-
import { createHover } from '../interactions';
|
|
10
|
-
import { createId } from '../ssr';
|
|
11
|
-
import type { Key, Collection, CollectionNode } from '@proyecto-viviana/solid-stately';
|
|
12
|
-
|
|
13
|
-
// ============================================
|
|
14
|
-
// TYPES
|
|
15
|
-
// ============================================
|
|
16
|
-
|
|
17
|
-
export type TabOrientation = 'horizontal' | 'vertical';
|
|
18
|
-
export type KeyboardActivation = 'automatic' | 'manual';
|
|
19
|
-
|
|
20
|
-
export interface TabListState<T = unknown> {
|
|
21
|
-
collection: Accessor<Collection<T>>;
|
|
22
|
-
selectedKey: Accessor<Key | null>;
|
|
23
|
-
setSelectedKey(key: Key): void;
|
|
24
|
-
selectedItem: Accessor<CollectionNode<T> | null>;
|
|
25
|
-
isDisabled: Accessor<boolean>;
|
|
26
|
-
keyboardActivation: Accessor<KeyboardActivation>;
|
|
27
|
-
orientation: Accessor<TabOrientation>;
|
|
28
|
-
isKeyDisabled(key: Key): boolean;
|
|
29
|
-
disabledKeys: Accessor<Set<Key>>;
|
|
30
|
-
isFocused: Accessor<boolean>;
|
|
31
|
-
setFocused(isFocused: boolean): void;
|
|
32
|
-
focusedKey: Accessor<Key | null>;
|
|
33
|
-
setFocusedKey(key: Key | null): void;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface AriaTabListProps {
|
|
37
|
-
/** The orientation of the tab list. */
|
|
38
|
-
orientation?: TabOrientation;
|
|
39
|
-
/** How tabs are activated (on focus or on click). */
|
|
40
|
-
keyboardActivation?: KeyboardActivation;
|
|
41
|
-
/** Whether the tab list is disabled. */
|
|
42
|
-
isDisabled?: boolean;
|
|
43
|
-
/** Label for the tab list. */
|
|
44
|
-
'aria-label'?: string;
|
|
45
|
-
/** ID of element that labels the tab list. */
|
|
46
|
-
'aria-labelledby'?: string;
|
|
47
|
-
/** ID of element that describes the tab list. */
|
|
48
|
-
'aria-describedby'?: string;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export interface TabListAria {
|
|
52
|
-
/** Props for the tab list container element. */
|
|
53
|
-
tabListProps: {
|
|
54
|
-
role: 'tablist';
|
|
55
|
-
'aria-orientation': TabOrientation;
|
|
56
|
-
'aria-label'?: string;
|
|
57
|
-
'aria-labelledby'?: string;
|
|
58
|
-
'aria-describedby'?: string;
|
|
59
|
-
onKeyDown: (e: KeyboardEvent) => void;
|
|
60
|
-
onFocus: (e: FocusEvent) => void;
|
|
61
|
-
onBlur: (e: FocusEvent) => void;
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export interface AriaTabProps {
|
|
66
|
-
/** The key of the tab. */
|
|
67
|
-
key: Key;
|
|
68
|
-
/** Whether the tab is disabled. */
|
|
69
|
-
isDisabled?: boolean;
|
|
70
|
-
/** Label for the tab. */
|
|
71
|
-
'aria-label'?: string;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export interface TabAria {
|
|
75
|
-
/** Props for the tab element. */
|
|
76
|
-
tabProps: {
|
|
77
|
-
id: string;
|
|
78
|
-
role: 'tab';
|
|
79
|
-
'aria-selected': boolean;
|
|
80
|
-
'aria-disabled': boolean | undefined;
|
|
81
|
-
'aria-controls': string | undefined;
|
|
82
|
-
'aria-label'?: string;
|
|
83
|
-
tabIndex: number;
|
|
84
|
-
onKeyDown: (e: KeyboardEvent) => void;
|
|
85
|
-
onMouseDown: (e: MouseEvent) => void;
|
|
86
|
-
onPointerDown: (e: PointerEvent) => void;
|
|
87
|
-
onClick: (e: MouseEvent) => void;
|
|
88
|
-
onFocus: (e: FocusEvent) => void;
|
|
89
|
-
};
|
|
90
|
-
/** Whether the tab is selected. */
|
|
91
|
-
isSelected: Accessor<boolean>;
|
|
92
|
-
/** Whether the tab is disabled. */
|
|
93
|
-
isDisabled: Accessor<boolean>;
|
|
94
|
-
/** Whether the tab is pressed. */
|
|
95
|
-
isPressed: Accessor<boolean>;
|
|
96
|
-
/** Whether the tab has focus. */
|
|
97
|
-
isFocused: Accessor<boolean>;
|
|
98
|
-
/** Whether the tab has visible focus ring. */
|
|
99
|
-
isFocusVisible: Accessor<boolean>;
|
|
100
|
-
/** Whether the tab is hovered. */
|
|
101
|
-
isHovered: Accessor<boolean>;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
export interface AriaTabPanelProps {
|
|
105
|
-
/** The key of the associated tab. */
|
|
106
|
-
id?: Key;
|
|
107
|
-
/** Label for the tab panel. */
|
|
108
|
-
'aria-label'?: string;
|
|
109
|
-
/** ID of element that labels the tab panel. */
|
|
110
|
-
'aria-labelledby'?: string;
|
|
111
|
-
/** ID of element that describes the tab panel. */
|
|
112
|
-
'aria-describedby'?: string;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
export interface TabPanelAria {
|
|
116
|
-
/** Props for the tab panel element. */
|
|
117
|
-
tabPanelProps: {
|
|
118
|
-
id: string;
|
|
119
|
-
role: 'tabpanel';
|
|
120
|
-
'aria-labelledby': string;
|
|
121
|
-
'aria-label'?: string;
|
|
122
|
-
'aria-describedby'?: string;
|
|
123
|
-
tabIndex: number;
|
|
124
|
-
};
|
|
125
|
-
/** Whether this panel is the selected one. */
|
|
126
|
-
isSelected: Accessor<boolean>;
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
// ============================================
|
|
130
|
-
// ID MANAGEMENT
|
|
131
|
-
// ============================================
|
|
132
|
-
|
|
133
|
-
const tabListIds = new WeakMap<TabListState<unknown>, string>();
|
|
134
|
-
|
|
135
|
-
function getTabListId<T>(state: TabListState<T>): string {
|
|
136
|
-
let id = tabListIds.get(state as TabListState<unknown>);
|
|
137
|
-
if (!id) {
|
|
138
|
-
id = createId();
|
|
139
|
-
tabListIds.set(state as TabListState<unknown>, id);
|
|
140
|
-
}
|
|
141
|
-
return id;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
function generateTabId<T>(state: TabListState<T>, key: Key): string {
|
|
145
|
-
const baseId = getTabListId(state);
|
|
146
|
-
const keyStr = String(key).replace(/\s+/g, '-');
|
|
147
|
-
return `${baseId}-tab-${keyStr}`;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
function generateTabPanelId<T>(state: TabListState<T>, key: Key): string {
|
|
151
|
-
const baseId = getTabListId(state);
|
|
152
|
-
const keyStr = String(key).replace(/\s+/g, '-');
|
|
153
|
-
return `${baseId}-tabpanel-${keyStr}`;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
// ============================================
|
|
157
|
-
// KEYBOARD DELEGATE
|
|
158
|
-
// ============================================
|
|
159
|
-
|
|
160
|
-
function getNextKey<T>(state: TabListState<T>, currentKey: Key): Key | null {
|
|
161
|
-
const coll = state.collection();
|
|
162
|
-
const keys = [...coll].map(node => node.key);
|
|
163
|
-
const currentIndex = keys.indexOf(currentKey);
|
|
164
|
-
|
|
165
|
-
if (currentIndex === -1) return keys[0] ?? null;
|
|
166
|
-
|
|
167
|
-
// Find next non-disabled key, wrapping around
|
|
168
|
-
for (let i = 1; i <= keys.length; i++) {
|
|
169
|
-
const nextIndex = (currentIndex + i) % keys.length;
|
|
170
|
-
const nextKey = keys[nextIndex];
|
|
171
|
-
if (!state.isKeyDisabled(nextKey)) {
|
|
172
|
-
return nextKey;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
return null;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
function getPreviousKey<T>(state: TabListState<T>, currentKey: Key): Key | null {
|
|
180
|
-
const coll = state.collection();
|
|
181
|
-
const keys = [...coll].map(node => node.key);
|
|
182
|
-
const currentIndex = keys.indexOf(currentKey);
|
|
183
|
-
|
|
184
|
-
if (currentIndex === -1) return keys[keys.length - 1] ?? null;
|
|
185
|
-
|
|
186
|
-
// Find previous non-disabled key, wrapping around
|
|
187
|
-
for (let i = 1; i <= keys.length; i++) {
|
|
188
|
-
const prevIndex = (currentIndex - i + keys.length) % keys.length;
|
|
189
|
-
const prevKey = keys[prevIndex];
|
|
190
|
-
if (!state.isKeyDisabled(prevKey)) {
|
|
191
|
-
return prevKey;
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
return null;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
function getFirstKey<T>(state: TabListState<T>): Key | null {
|
|
199
|
-
const coll = state.collection();
|
|
200
|
-
for (const node of coll) {
|
|
201
|
-
if (!state.isKeyDisabled(node.key)) {
|
|
202
|
-
return node.key;
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
return null;
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
function getLastKey<T>(state: TabListState<T>): Key | null {
|
|
209
|
-
const coll = state.collection();
|
|
210
|
-
const keys = [...coll].map(node => node.key).reverse();
|
|
211
|
-
for (const key of keys) {
|
|
212
|
-
if (!state.isKeyDisabled(key)) {
|
|
213
|
-
return key;
|
|
214
|
-
}
|
|
215
|
-
}
|
|
216
|
-
return null;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
// ============================================
|
|
220
|
-
// HOOKS
|
|
221
|
-
// ============================================
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* Creates ARIA props for a tab list container.
|
|
225
|
-
*/
|
|
226
|
-
export function createTabList<T>(
|
|
227
|
-
props: AriaTabListProps,
|
|
228
|
-
state: TabListState<T>
|
|
229
|
-
): TabListAria {
|
|
230
|
-
const orientation = () => props.orientation ?? state.orientation() ?? 'horizontal';
|
|
231
|
-
const keyboardActivation = () => props.keyboardActivation ?? state.keyboardActivation() ?? 'automatic';
|
|
232
|
-
|
|
233
|
-
const handleKeyDown = (e: KeyboardEvent) => {
|
|
234
|
-
if (state.isDisabled()) return;
|
|
235
|
-
|
|
236
|
-
const currentKey = state.focusedKey() ?? state.selectedKey();
|
|
237
|
-
if (currentKey === null) return;
|
|
238
|
-
|
|
239
|
-
let nextKey: Key | null = null;
|
|
240
|
-
const isHorizontal = orientation() === 'horizontal';
|
|
241
|
-
|
|
242
|
-
switch (e.key) {
|
|
243
|
-
case 'ArrowLeft':
|
|
244
|
-
if (isHorizontal) {
|
|
245
|
-
// TODO: RTL support
|
|
246
|
-
nextKey = getPreviousKey(state, currentKey);
|
|
247
|
-
}
|
|
248
|
-
break;
|
|
249
|
-
case 'ArrowRight':
|
|
250
|
-
if (isHorizontal) {
|
|
251
|
-
nextKey = getNextKey(state, currentKey);
|
|
252
|
-
}
|
|
253
|
-
break;
|
|
254
|
-
case 'ArrowUp':
|
|
255
|
-
if (!isHorizontal) {
|
|
256
|
-
nextKey = getPreviousKey(state, currentKey);
|
|
257
|
-
}
|
|
258
|
-
break;
|
|
259
|
-
case 'ArrowDown':
|
|
260
|
-
if (!isHorizontal) {
|
|
261
|
-
nextKey = getNextKey(state, currentKey);
|
|
262
|
-
}
|
|
263
|
-
break;
|
|
264
|
-
case 'Home':
|
|
265
|
-
nextKey = getFirstKey(state);
|
|
266
|
-
break;
|
|
267
|
-
case 'End':
|
|
268
|
-
nextKey = getLastKey(state);
|
|
269
|
-
break;
|
|
270
|
-
case 'Enter':
|
|
271
|
-
case ' ':
|
|
272
|
-
// In manual mode, Enter/Space activates the focused tab
|
|
273
|
-
if (keyboardActivation() === 'manual' && state.focusedKey()) {
|
|
274
|
-
state.setSelectedKey(state.focusedKey()!);
|
|
275
|
-
e.preventDefault();
|
|
276
|
-
}
|
|
277
|
-
return;
|
|
278
|
-
default:
|
|
279
|
-
return;
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
if (nextKey !== null) {
|
|
283
|
-
e.preventDefault();
|
|
284
|
-
state.setFocusedKey(nextKey);
|
|
285
|
-
|
|
286
|
-
// In automatic mode, selection follows focus
|
|
287
|
-
if (keyboardActivation() === 'automatic') {
|
|
288
|
-
state.setSelectedKey(nextKey);
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
};
|
|
292
|
-
|
|
293
|
-
const handleFocus = () => {
|
|
294
|
-
state.setFocused(true);
|
|
295
|
-
// If no focused key, focus the selected key
|
|
296
|
-
if (state.focusedKey() === null && state.selectedKey() !== null) {
|
|
297
|
-
state.setFocusedKey(state.selectedKey());
|
|
298
|
-
}
|
|
299
|
-
};
|
|
300
|
-
|
|
301
|
-
const handleBlur = (e: FocusEvent) => {
|
|
302
|
-
// Only blur if focus is leaving the tab list entirely
|
|
303
|
-
const relatedTarget = e.relatedTarget as Element | null;
|
|
304
|
-
if (relatedTarget && (e.currentTarget as Element).contains(relatedTarget)) {
|
|
305
|
-
return;
|
|
306
|
-
}
|
|
307
|
-
state.setFocused(false);
|
|
308
|
-
};
|
|
309
|
-
|
|
310
|
-
return {
|
|
311
|
-
tabListProps: {
|
|
312
|
-
role: 'tablist',
|
|
313
|
-
'aria-orientation': orientation(),
|
|
314
|
-
'aria-label': props['aria-label'],
|
|
315
|
-
'aria-labelledby': props['aria-labelledby'],
|
|
316
|
-
'aria-describedby': props['aria-describedby'],
|
|
317
|
-
onKeyDown: handleKeyDown,
|
|
318
|
-
onFocus: handleFocus,
|
|
319
|
-
onBlur: handleBlur,
|
|
320
|
-
},
|
|
321
|
-
};
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
/**
|
|
325
|
-
* Creates ARIA props for an individual tab.
|
|
326
|
-
*/
|
|
327
|
-
export function createTab<T>(
|
|
328
|
-
props: AriaTabProps,
|
|
329
|
-
state: TabListState<T>,
|
|
330
|
-
ref?: Accessor<HTMLElement | null>
|
|
331
|
-
): TabAria {
|
|
332
|
-
const key = () => props.key;
|
|
333
|
-
|
|
334
|
-
const isSelected = createMemo(() => state.selectedKey() === key());
|
|
335
|
-
const isDisabled = createMemo(() => {
|
|
336
|
-
if (props.isDisabled) return true;
|
|
337
|
-
return state.isKeyDisabled(key());
|
|
338
|
-
});
|
|
339
|
-
|
|
340
|
-
const isFocused = createMemo(() => state.focusedKey() === key());
|
|
341
|
-
|
|
342
|
-
// Focus ring
|
|
343
|
-
const { isFocusVisible, focusProps } = createFocusRing();
|
|
344
|
-
|
|
345
|
-
// Press handling
|
|
346
|
-
const { isPressed, pressProps } = createPress({
|
|
347
|
-
get isDisabled() {
|
|
348
|
-
return isDisabled();
|
|
349
|
-
},
|
|
350
|
-
onPress: () => {
|
|
351
|
-
state.setSelectedKey(key());
|
|
352
|
-
state.setFocusedKey(key());
|
|
353
|
-
},
|
|
354
|
-
});
|
|
355
|
-
|
|
356
|
-
// Hover handling
|
|
357
|
-
const { isHovered } = createHover({
|
|
358
|
-
get isDisabled() {
|
|
359
|
-
return isDisabled();
|
|
360
|
-
},
|
|
361
|
-
});
|
|
362
|
-
|
|
363
|
-
// Generate IDs
|
|
364
|
-
const tabId = generateTabId(state, key());
|
|
365
|
-
const tabPanelId = generateTabPanelId(state, key());
|
|
366
|
-
|
|
367
|
-
// Helper to safely call event handlers that may be bound tuples
|
|
368
|
-
const callHandler = <E extends Event>(
|
|
369
|
-
handler: ((e: E) => void) | [object, (e: E) => void] | undefined,
|
|
370
|
-
event: E
|
|
371
|
-
) => {
|
|
372
|
-
if (!handler) return;
|
|
373
|
-
if (Array.isArray(handler)) {
|
|
374
|
-
handler[1].call(handler[0], event);
|
|
375
|
-
} else {
|
|
376
|
-
handler(event);
|
|
377
|
-
}
|
|
378
|
-
};
|
|
379
|
-
|
|
380
|
-
// Focus management
|
|
381
|
-
const handleFocus = (e: FocusEvent) => {
|
|
382
|
-
state.setFocusedKey(key());
|
|
383
|
-
callHandler(focusProps.onFocus as any, e);
|
|
384
|
-
};
|
|
385
|
-
|
|
386
|
-
// Combine all handlers
|
|
387
|
-
const handleKeyDown = (e: KeyboardEvent) => {
|
|
388
|
-
callHandler(pressProps.onKeyDown as any, e);
|
|
389
|
-
};
|
|
390
|
-
|
|
391
|
-
const handleMouseDown = (e: MouseEvent) => {
|
|
392
|
-
callHandler(pressProps.onMouseDown as any, e);
|
|
393
|
-
};
|
|
394
|
-
|
|
395
|
-
const handlePointerDown = (e: PointerEvent) => {
|
|
396
|
-
callHandler(pressProps.onPointerDown as any, e);
|
|
397
|
-
};
|
|
398
|
-
|
|
399
|
-
const handleClick = (e: MouseEvent) => {
|
|
400
|
-
callHandler(pressProps.onClick as any, e);
|
|
401
|
-
};
|
|
402
|
-
|
|
403
|
-
// Focus this tab when it becomes selected and focused
|
|
404
|
-
onMount(() => {
|
|
405
|
-
const cleanup = createMemo(() => {
|
|
406
|
-
if (isFocused() && ref?.()) {
|
|
407
|
-
ref()?.focus();
|
|
408
|
-
}
|
|
409
|
-
});
|
|
410
|
-
return cleanup;
|
|
411
|
-
});
|
|
412
|
-
|
|
413
|
-
return {
|
|
414
|
-
tabProps: {
|
|
415
|
-
id: tabId,
|
|
416
|
-
role: 'tab',
|
|
417
|
-
'aria-selected': isSelected(),
|
|
418
|
-
'aria-disabled': isDisabled() || undefined,
|
|
419
|
-
'aria-controls': isSelected() ? tabPanelId : undefined,
|
|
420
|
-
'aria-label': props['aria-label'],
|
|
421
|
-
tabIndex: isSelected() && !isDisabled() ? 0 : -1,
|
|
422
|
-
onKeyDown: handleKeyDown,
|
|
423
|
-
onMouseDown: handleMouseDown,
|
|
424
|
-
onPointerDown: handlePointerDown,
|
|
425
|
-
onClick: handleClick,
|
|
426
|
-
onFocus: handleFocus,
|
|
427
|
-
},
|
|
428
|
-
isSelected,
|
|
429
|
-
isDisabled,
|
|
430
|
-
isPressed,
|
|
431
|
-
isFocused,
|
|
432
|
-
isFocusVisible,
|
|
433
|
-
isHovered,
|
|
434
|
-
};
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
/**
|
|
438
|
-
* Creates ARIA props for a tab panel.
|
|
439
|
-
*/
|
|
440
|
-
export function createTabPanel<T>(
|
|
441
|
-
props: AriaTabPanelProps,
|
|
442
|
-
state: TabListState<T> | null
|
|
443
|
-
): TabPanelAria {
|
|
444
|
-
// If state is null, the panel is always visible (for SSR scenarios)
|
|
445
|
-
const isSelected = createMemo(() => {
|
|
446
|
-
if (state === null) return true;
|
|
447
|
-
if (props.id === undefined) return false;
|
|
448
|
-
return state.selectedKey() === props.id;
|
|
449
|
-
});
|
|
450
|
-
|
|
451
|
-
// Generate IDs based on the associated tab key
|
|
452
|
-
const tabPanelId = state && props.id !== undefined
|
|
453
|
-
? generateTabPanelId(state, props.id)
|
|
454
|
-
: createId();
|
|
455
|
-
|
|
456
|
-
const tabId = state && props.id !== undefined
|
|
457
|
-
? generateTabId(state, props.id)
|
|
458
|
-
: '';
|
|
459
|
-
|
|
460
|
-
return {
|
|
461
|
-
tabPanelProps: {
|
|
462
|
-
id: tabPanelId,
|
|
463
|
-
role: 'tabpanel',
|
|
464
|
-
'aria-labelledby': props['aria-labelledby'] ?? tabId,
|
|
465
|
-
'aria-label': props['aria-label'],
|
|
466
|
-
'aria-describedby': props['aria-describedby'],
|
|
467
|
-
// Make panel focusable if no tabbable children
|
|
468
|
-
tabIndex: 0,
|
|
469
|
-
},
|
|
470
|
-
isSelected,
|
|
471
|
-
};
|
|
472
|
-
}
|
package/src/tabs/index.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export {
|
|
2
|
-
createTabList,
|
|
3
|
-
createTab,
|
|
4
|
-
createTabPanel,
|
|
5
|
-
type TabListState,
|
|
6
|
-
type TabOrientation,
|
|
7
|
-
type KeyboardActivation,
|
|
8
|
-
type AriaTabListProps,
|
|
9
|
-
type TabListAria,
|
|
10
|
-
type AriaTabProps,
|
|
11
|
-
type TabAria,
|
|
12
|
-
type AriaTabPanelProps,
|
|
13
|
-
type TabPanelAria,
|
|
14
|
-
} from './createTabs';
|