@proyecto-viviana/solidaria-components 0.5.0 → 0.7.0-rc.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/LICENSE-APACHE-2.0 +201 -0
- package/NOTICE +91 -0
- package/README.md +4 -7
- package/dist/ActionBar.d.ts +2 -10
- package/dist/ActionBar.d.ts.map +1 -1
- package/dist/ActionBar.js +95 -59
- package/dist/ActionBar.js.map +1 -1
- package/dist/ActionBar.jsx +42 -15
- package/dist/ActionBar.jsx.map +1 -1
- package/dist/ActionGroup.d.ts +1 -12
- package/dist/ActionGroup.d.ts.map +1 -1
- package/dist/ActionGroup.js +66 -44
- package/dist/ActionGroup.js.map +1 -1
- package/dist/ActionGroup.jsx +25 -10
- package/dist/ActionGroup.jsx.map +1 -1
- package/dist/Alert.d.ts +4 -1
- package/dist/Alert.d.ts.map +1 -1
- package/dist/Alert.js +25 -17
- package/dist/Alert.js.map +1 -1
- package/dist/Alert.jsx +9 -5
- package/dist/Alert.jsx.map +1 -1
- package/dist/Autocomplete.d.ts +2 -9
- package/dist/Autocomplete.d.ts.map +1 -1
- package/dist/Autocomplete.js +18 -5
- package/dist/Autocomplete.js.map +1 -1
- package/dist/Autocomplete.jsx +20 -7
- package/dist/Autocomplete.jsx.map +1 -1
- package/dist/Breadcrumbs.d.ts +2 -7
- package/dist/Breadcrumbs.d.ts.map +1 -1
- package/dist/Breadcrumbs.js +71 -51
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Breadcrumbs.jsx +25 -12
- package/dist/Breadcrumbs.jsx.map +1 -1
- package/dist/Button.d.ts +1 -7
- package/dist/Button.d.ts.map +1 -1
- package/dist/Button.js +125 -72
- package/dist/Button.js.map +1 -1
- package/dist/Button.jsx +105 -43
- package/dist/Button.jsx.map +1 -1
- package/dist/Calendar.d.ts +1 -7
- package/dist/Calendar.d.ts.map +1 -1
- package/dist/Calendar.js +297 -221
- package/dist/Calendar.js.map +1 -1
- package/dist/Calendar.jsx +52 -32
- package/dist/Calendar.jsx.map +1 -1
- package/dist/CalendarPicker.d.ts +1 -10
- package/dist/CalendarPicker.d.ts.map +1 -1
- package/dist/CalendarPicker.js +12 -0
- package/dist/CalendarPicker.js.map +1 -1
- package/dist/CalendarPicker.jsx +12 -0
- package/dist/CalendarPicker.jsx.map +1 -1
- package/dist/Checkbox.d.ts +2 -7
- package/dist/Checkbox.d.ts.map +1 -1
- package/dist/Checkbox.js +332 -270
- package/dist/Checkbox.js.map +1 -1
- package/dist/Checkbox.jsx +70 -77
- package/dist/Checkbox.jsx.map +1 -1
- package/dist/Collection.d.ts +33 -7
- package/dist/Collection.d.ts.map +1 -1
- package/dist/Collection.js +128 -74
- package/dist/Collection.js.map +1 -1
- package/dist/Collection.jsx +46 -7
- package/dist/Collection.jsx.map +1 -1
- package/dist/Color.d.ts +15 -20
- package/dist/Color.d.ts.map +1 -1
- package/dist/Color.js +572 -334
- package/dist/Color.js.map +1 -1
- package/dist/Color.jsx +205 -85
- package/dist/Color.jsx.map +1 -1
- package/dist/ColorEditor.d.ts +3 -1
- package/dist/ColorEditor.d.ts.map +1 -1
- package/dist/ColorEditor.js +147 -124
- package/dist/ColorEditor.js.map +1 -1
- package/dist/ColorEditor.jsx +4 -1
- package/dist/ColorEditor.jsx.map +1 -1
- package/dist/ComboBox.d.ts +31 -10
- package/dist/ComboBox.d.ts.map +1 -1
- package/dist/ComboBox.js +539 -274
- package/dist/ComboBox.js.map +1 -1
- package/dist/ComboBox.jsx +213 -70
- package/dist/ComboBox.jsx.map +1 -1
- package/dist/ContextualHelpTrigger.d.ts +1 -7
- package/dist/ContextualHelpTrigger.d.ts.map +1 -1
- package/dist/ContextualHelpTrigger.js +102 -72
- package/dist/ContextualHelpTrigger.js.map +1 -1
- package/dist/ContextualHelpTrigger.jsx +36 -16
- package/dist/ContextualHelpTrigger.jsx.map +1 -1
- package/dist/DateField.d.ts +2 -7
- package/dist/DateField.d.ts.map +1 -1
- package/dist/DateField.js +0 -2
- package/dist/DateField.jsx +0 -2
- package/dist/DateField2.js +194 -179
- package/dist/DateField2.js.map +1 -1
- package/dist/DateField2.jsx +58 -55
- package/dist/DateField2.jsx.map +1 -1
- package/dist/DatePicker.d.ts +7 -7
- package/dist/DatePicker.d.ts.map +1 -1
- package/dist/DatePicker.js +2 -2
- package/dist/DatePicker.jsx +2 -2
- package/dist/DatePicker2.js +357 -435
- package/dist/DatePicker2.js.map +1 -1
- package/dist/DatePicker2.jsx +109 -178
- package/dist/DatePicker2.jsx.map +1 -1
- package/dist/DateRangePickerContext.d.ts +7 -0
- package/dist/DateRangePickerContext.d.ts.map +1 -1
- package/dist/Dialog.d.ts +4 -9
- package/dist/Dialog.d.ts.map +1 -1
- package/dist/Dialog.js +168 -101
- package/dist/Dialog.js.map +1 -1
- package/dist/Dialog.jsx +75 -27
- package/dist/Dialog.jsx.map +1 -1
- package/dist/Disclosure.d.ts +1 -9
- package/dist/Disclosure.d.ts.map +1 -1
- package/dist/Disclosure.js +121 -79
- package/dist/Disclosure.js.map +1 -1
- package/dist/Disclosure.jsx +32 -19
- package/dist/Disclosure.jsx.map +1 -1
- package/dist/DragAndDrop.d.ts +9 -6
- package/dist/DragAndDrop.d.ts.map +1 -1
- package/dist/DragAndDrop.js +37 -22
- package/dist/DragAndDrop.js.map +1 -1
- package/dist/DragAndDrop.jsx +20 -4
- package/dist/DragAndDrop.jsx.map +1 -1
- package/dist/DragPreview.d.ts +1 -1
- package/dist/DragPreview.d.ts.map +1 -1
- package/dist/DropZone.d.ts +1 -7
- package/dist/DropZone.d.ts.map +1 -1
- package/dist/DropZone.js +74 -40
- package/dist/DropZone.js.map +1 -1
- package/dist/DropZone.jsx +24 -8
- package/dist/DropZone.jsx.map +1 -1
- package/dist/ElementTag.d.ts +9 -20
- package/dist/ElementTag.d.ts.map +1 -1
- package/dist/ElementTag.js +8 -210
- package/dist/ElementTag.js.map +1 -1
- package/dist/ElementTag.jsx +8 -57
- package/dist/ElementTag.jsx.map +1 -1
- package/dist/FieldError.d.ts +8 -7
- package/dist/FieldError.d.ts.map +1 -1
- package/dist/FieldError.js +33 -13
- package/dist/FieldError.js.map +1 -1
- package/dist/FieldError.jsx +20 -5
- package/dist/FieldError.jsx.map +1 -1
- package/dist/FileTrigger.d.ts +1 -7
- package/dist/FileTrigger.d.ts.map +1 -1
- package/dist/FileTrigger.js +30 -12
- package/dist/FileTrigger.js.map +1 -1
- package/dist/FileTrigger.jsx +15 -2
- package/dist/FileTrigger.jsx.map +1 -1
- package/dist/Focusable.d.ts +2 -8
- package/dist/Focusable.d.ts.map +1 -1
- package/dist/Focusable.js +23 -6
- package/dist/Focusable.js.map +1 -1
- package/dist/Focusable.jsx +22 -5
- package/dist/Focusable.jsx.map +1 -1
- package/dist/Form.d.ts +9 -8
- package/dist/Form.d.ts.map +1 -1
- package/dist/Form.js +66 -43
- package/dist/Form.js.map +1 -1
- package/dist/Form.jsx +36 -16
- package/dist/Form.jsx.map +1 -1
- package/dist/GridList.d.ts +5 -10
- package/dist/GridList.d.ts.map +1 -1
- package/dist/GridList.js +372 -243
- package/dist/GridList.js.map +1 -1
- package/dist/GridList.jsx +177 -99
- package/dist/GridList.jsx.map +1 -1
- package/dist/HiddenDateInput.d.ts +1 -7
- package/dist/HiddenDateInput.d.ts.map +1 -1
- package/dist/Icon.d.ts +4 -1
- package/dist/Icon.d.ts.map +1 -1
- package/dist/Icon.js +41 -37
- package/dist/Icon.js.map +1 -1
- package/dist/Icon.jsx +7 -3
- package/dist/Icon.jsx.map +1 -1
- package/dist/Keyboard.d.ts +1 -7
- package/dist/Keyboard.d.ts.map +1 -1
- package/dist/Keyboard.js +24 -11
- package/dist/Keyboard.js.map +1 -1
- package/dist/Keyboard.jsx +15 -2
- package/dist/Keyboard.jsx.map +1 -1
- package/dist/Label.d.ts +20 -0
- package/dist/Label.d.ts.map +1 -0
- package/dist/Label.js +60 -0
- package/dist/Label.js.map +1 -0
- package/dist/Label.jsx +47 -0
- package/dist/Label.jsx.map +1 -0
- package/dist/Landmark.d.ts +4 -1
- package/dist/Landmark.d.ts.map +1 -1
- package/dist/Landmark.js +10 -4
- package/dist/Landmark.js.map +1 -1
- package/dist/Landmark.jsx +5 -1
- package/dist/Landmark.jsx.map +1 -1
- package/dist/Link.d.ts +2 -7
- package/dist/Link.d.ts.map +1 -1
- package/dist/Link.js +56 -36
- package/dist/Link.js.map +1 -1
- package/dist/Link.jsx +52 -10
- package/dist/Link.jsx.map +1 -1
- package/dist/ListBox.d.ts +17 -13
- package/dist/ListBox.d.ts.map +1 -1
- package/dist/ListBox.js +647 -348
- package/dist/ListBox.js.map +1 -1
- package/dist/ListBox.jsx +339 -236
- package/dist/ListBox.jsx.map +1 -1
- package/dist/ListDropTargetDelegate.d.ts +3 -0
- package/dist/ListDropTargetDelegate.d.ts.map +1 -1
- package/dist/Menu.d.ts +39 -30
- package/dist/Menu.d.ts.map +1 -1
- package/dist/Menu.js +547 -368
- package/dist/Menu.js.map +1 -1
- package/dist/Menu.jsx +328 -230
- package/dist/Menu.jsx.map +1 -1
- package/dist/Meter.d.ts +6 -13
- package/dist/Meter.d.ts.map +1 -1
- package/dist/Meter.js +55 -18
- package/dist/Meter.js.map +1 -1
- package/dist/Meter.jsx +33 -8
- package/dist/Meter.jsx.map +1 -1
- package/dist/Modal.d.ts +1 -7
- package/dist/Modal.d.ts.map +1 -1
- package/dist/Modal.js +104 -56
- package/dist/Modal.js.map +1 -1
- package/dist/Modal.jsx +68 -38
- package/dist/Modal.jsx.map +1 -1
- package/dist/NumberField.d.ts +4 -7
- package/dist/NumberField.d.ts.map +1 -1
- package/dist/NumberField.js +243 -124
- package/dist/NumberField.js.map +1 -1
- package/dist/NumberField.jsx +115 -26
- package/dist/NumberField.jsx.map +1 -1
- package/dist/Popover.d.ts +15 -7
- package/dist/Popover.d.ts.map +1 -1
- package/dist/Popover.js +370 -181
- package/dist/Popover.js.map +1 -1
- package/dist/Popover.jsx +215 -82
- package/dist/Popover.jsx.map +1 -1
- package/dist/Pressable.d.ts +2 -8
- package/dist/Pressable.d.ts.map +1 -1
- package/dist/Pressable.js +23 -6
- package/dist/Pressable.js.map +1 -1
- package/dist/Pressable.jsx +22 -5
- package/dist/Pressable.jsx.map +1 -1
- package/dist/PreviewTrigger.d.ts +24 -0
- package/dist/PreviewTrigger.d.ts.map +1 -0
- package/dist/PreviewTrigger.js +128 -0
- package/dist/PreviewTrigger.js.map +1 -0
- package/dist/PreviewTrigger.jsx +117 -0
- package/dist/PreviewTrigger.jsx.map +1 -0
- package/dist/ProgressBar.d.ts +1 -7
- package/dist/ProgressBar.d.ts.map +1 -1
- package/dist/ProgressBar.js +34 -14
- package/dist/ProgressBar.js.map +1 -1
- package/dist/ProgressBar.jsx +17 -3
- package/dist/ProgressBar.jsx.map +1 -1
- package/dist/RadioGroup.d.ts +2 -7
- package/dist/RadioGroup.d.ts.map +1 -1
- package/dist/RadioGroup.js +388 -269
- package/dist/RadioGroup.js.map +1 -1
- package/dist/RadioGroup.jsx +110 -99
- package/dist/RadioGroup.jsx.map +1 -1
- package/dist/RangeCalendar.d.ts +3 -7
- package/dist/RangeCalendar.d.ts.map +1 -1
- package/dist/RangeCalendar.js +271 -202
- package/dist/RangeCalendar.js.map +1 -1
- package/dist/RangeCalendar.jsx +56 -37
- package/dist/RangeCalendar.jsx.map +1 -1
- package/dist/RouterProvider.d.ts +3 -9
- package/dist/RouterProvider.d.ts.map +1 -1
- package/dist/RouterProvider.js +15 -14
- package/dist/RouterProvider.js.map +1 -1
- package/dist/RouterProvider.jsx +14 -13
- package/dist/RouterProvider.jsx.map +1 -1
- package/dist/SearchField.d.ts +4 -7
- package/dist/SearchField.d.ts.map +1 -1
- package/dist/SearchField.js +191 -164
- package/dist/SearchField.js.map +1 -1
- package/dist/SearchField.jsx +69 -62
- package/dist/SearchField.jsx.map +1 -1
- package/dist/Select.d.ts +5 -10
- package/dist/Select.d.ts.map +1 -1
- package/dist/Select.js +565 -359
- package/dist/Select.js.map +1 -1
- package/dist/Select.jsx +281 -161
- package/dist/Select.jsx.map +1 -1
- package/dist/SelectionIndicator.d.ts +1 -4
- package/dist/SelectionIndicator.d.ts.map +1 -1
- package/dist/SelectionIndicator.js +29 -13
- package/dist/SelectionIndicator.js.map +1 -1
- package/dist/SelectionIndicator.jsx +18 -4
- package/dist/SelectionIndicator.jsx.map +1 -1
- package/dist/Separator.d.ts +1 -7
- package/dist/Separator.d.ts.map +1 -1
- package/dist/Separator.js +22 -6
- package/dist/Separator.js.map +1 -1
- package/dist/Separator.jsx +16 -3
- package/dist/Separator.jsx.map +1 -1
- package/dist/SharedElementTransition.d.ts +1 -10
- package/dist/SharedElementTransition.d.ts.map +1 -1
- package/dist/SharedElementTransition.js +68 -40
- package/dist/SharedElementTransition.js.map +1 -1
- package/dist/SharedElementTransition.jsx +49 -25
- package/dist/SharedElementTransition.jsx.map +1 -1
- package/dist/Slider.d.ts +2 -8
- package/dist/Slider.d.ts.map +1 -1
- package/dist/Slider.js +155 -97
- package/dist/Slider.js.map +1 -1
- package/dist/Slider.jsx +25 -12
- package/dist/Slider.jsx.map +1 -1
- package/dist/StepList.d.ts +1 -7
- package/dist/StepList.d.ts.map +1 -1
- package/dist/StepList.js +112 -68
- package/dist/StepList.js.map +1 -1
- package/dist/StepList.jsx +58 -20
- package/dist/StepList.jsx.map +1 -1
- package/dist/Switch.d.ts +2 -9
- package/dist/Switch.d.ts.map +1 -1
- package/dist/Switch.js +164 -114
- package/dist/Switch.js.map +1 -1
- package/dist/Switch.jsx +26 -13
- package/dist/Switch.jsx.map +1 -1
- package/dist/Table.d.ts +2 -1
- package/dist/Table.d.ts.map +1 -1
- package/dist/Table.js +689 -592
- package/dist/Table.js.map +1 -1
- package/dist/Table.jsx +317 -237
- package/dist/Table.jsx.map +1 -1
- package/dist/Tabs.d.ts +2 -7
- package/dist/Tabs.d.ts.map +1 -1
- package/dist/Tabs.js +278 -293
- package/dist/Tabs.js.map +1 -1
- package/dist/Tabs.jsx +68 -66
- package/dist/Tabs.jsx.map +1 -1
- package/dist/TagGroup.d.ts +4 -11
- package/dist/TagGroup.d.ts.map +1 -1
- package/dist/TagGroup.js +153 -115
- package/dist/TagGroup.js.map +1 -1
- package/dist/TagGroup.jsx +37 -24
- package/dist/TagGroup.jsx.map +1 -1
- package/dist/Text.d.ts +3 -3
- package/dist/Text.d.ts.map +1 -1
- package/dist/Text.js +24 -7
- package/dist/Text.js.map +1 -1
- package/dist/Text.jsx +17 -5
- package/dist/Text.jsx.map +1 -1
- package/dist/TextField.d.ts +3 -16
- package/dist/TextField.d.ts.map +1 -1
- package/dist/TextField.js +104 -129
- package/dist/TextField.js.map +1 -1
- package/dist/TextField.jsx +76 -102
- package/dist/TextField.jsx.map +1 -1
- package/dist/TimeField.d.ts +2 -15
- package/dist/TimeField.d.ts.map +1 -1
- package/dist/TimeField.js +86 -102
- package/dist/TimeField.js.map +1 -1
- package/dist/TimeField.jsx +32 -49
- package/dist/TimeField.jsx.map +1 -1
- package/dist/Toast.d.ts +10 -13
- package/dist/Toast.d.ts.map +1 -1
- package/dist/Toast.js +209 -108
- package/dist/Toast.js.map +1 -1
- package/dist/Toast.jsx +127 -22
- package/dist/Toast.jsx.map +1 -1
- package/dist/ToggleButton.d.ts +1 -7
- package/dist/ToggleButton.d.ts.map +1 -1
- package/dist/ToggleButton.js +57 -35
- package/dist/ToggleButton.js.map +1 -1
- package/dist/ToggleButton.jsx +26 -12
- package/dist/ToggleButton.jsx.map +1 -1
- package/dist/ToggleButtonGroup.d.ts +1 -7
- package/dist/ToggleButtonGroup.d.ts.map +1 -1
- package/dist/ToggleButtonGroup.js +59 -44
- package/dist/ToggleButtonGroup.js.map +1 -1
- package/dist/ToggleButtonGroup.jsx +25 -12
- package/dist/ToggleButtonGroup.jsx.map +1 -1
- package/dist/TokenField.d.ts +52 -0
- package/dist/TokenField.d.ts.map +1 -0
- package/dist/TokenField.js +301 -0
- package/dist/TokenField.js.map +1 -0
- package/dist/TokenField.jsx +197 -0
- package/dist/TokenField.jsx.map +1 -0
- package/dist/Toolbar.d.ts +2 -7
- package/dist/Toolbar.d.ts.map +1 -1
- package/dist/Toolbar.js +35 -16
- package/dist/Toolbar.js.map +1 -1
- package/dist/Toolbar.jsx +15 -2
- package/dist/Toolbar.jsx.map +1 -1
- package/dist/Tooltip.d.ts +2 -7
- package/dist/Tooltip.d.ts.map +1 -1
- package/dist/Tooltip.js +105 -68
- package/dist/Tooltip.js.map +1 -1
- package/dist/Tooltip.jsx +60 -36
- package/dist/Tooltip.jsx.map +1 -1
- package/dist/Tree.d.ts +8 -11
- package/dist/Tree.d.ts.map +1 -1
- package/dist/Tree.js +486 -339
- package/dist/Tree.js.map +1 -1
- package/dist/Tree.jsx +155 -107
- package/dist/Tree.jsx.map +1 -1
- package/dist/Virtualizer.d.ts +39 -9
- package/dist/Virtualizer.d.ts.map +1 -1
- package/dist/Virtualizer.js +2 -2
- package/dist/Virtualizer.jsx +2 -2
- package/dist/Virtualizer2.js +491 -136
- package/dist/Virtualizer2.js.map +1 -1
- package/dist/Virtualizer2.jsx +455 -122
- package/dist/Virtualizer2.jsx.map +1 -1
- package/dist/VirtualizerLayouts.d.ts +55 -2
- package/dist/VirtualizerLayouts.d.ts.map +1 -1
- package/dist/VisuallyHidden.d.ts +4 -3
- package/dist/VisuallyHidden.d.ts.map +1 -1
- package/dist/VisuallyHidden.js +18 -11
- package/dist/VisuallyHidden.js.map +1 -1
- package/dist/VisuallyHidden.jsx +15 -9
- package/dist/VisuallyHidden.jsx.map +1 -1
- package/dist/contexts.d.ts +25 -0
- package/dist/contexts.d.ts.map +1 -1
- package/dist/contexts.js +3 -0
- package/dist/contexts.js.map +1 -1
- package/dist/contexts.jsx +3 -0
- package/dist/contexts.jsx.map +1 -1
- package/dist/index.d.ts +11 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -11
- package/dist/index.jsx +14 -11
- package/dist/intl/index.d.ts +16 -0
- package/dist/intl/index.d.ts.map +1 -0
- package/dist/intl.js +212 -0
- package/dist/intl.js.map +1 -0
- package/dist/intl.jsx +212 -0
- package/dist/intl.jsx.map +1 -0
- package/dist/useDragAndDrop.d.ts +4 -2
- package/dist/useDragAndDrop.d.ts.map +1 -1
- package/dist/useDragAndDrop2.js +39 -21
- package/dist/useDragAndDrop2.js.map +1 -1
- package/dist/useDragAndDrop2.jsx +39 -21
- package/dist/useDragAndDrop2.jsx.map +1 -1
- package/dist/utils.d.ts +28 -9
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +96 -24
- package/dist/utils.js.map +1 -1
- package/dist/utils.jsx +81 -24
- package/dist/utils.jsx.map +1 -1
- package/dist/virtualizer/Layout.d.ts +9 -0
- package/dist/virtualizer/Layout.d.ts.map +1 -1
- package/dist/virtualizer/Layout.js +23 -2
- package/dist/virtualizer/Layout.js.map +1 -1
- package/dist/virtualizer/Layout.jsx +23 -2
- package/dist/virtualizer/Layout.jsx.map +1 -1
- package/package.json +29 -10
- package/src/ActionBar.tsx +50 -24
- package/src/ActionGroup.tsx +31 -19
- package/src/Alert.tsx +10 -4
- package/src/Autocomplete.tsx +24 -15
- package/src/Breadcrumbs.tsx +32 -16
- package/src/Button.tsx +182 -67
- package/src/Calendar.tsx +65 -47
- package/src/CalendarPicker.tsx +16 -1
- package/src/Checkbox.tsx +84 -116
- package/src/Collection.tsx +84 -3
- package/src/Color.tsx +282 -104
- package/src/ColorEditor.tsx +5 -1
- package/src/ComboBox.tsx +384 -109
- package/src/ContextualHelpTrigger.tsx +47 -41
- package/src/DateField.tsx +74 -106
- package/src/DatePicker.tsx +156 -352
- package/src/DateRangePickerContext.tsx +8 -0
- package/src/Dialog.tsx +105 -38
- package/src/Disclosure.tsx +29 -19
- package/src/DragAndDrop.tsx +43 -8
- package/src/DragPreview.tsx +20 -1
- package/src/DropZone.tsx +32 -18
- package/src/ElementTag.tsx +14 -104
- package/src/FieldError.tsx +39 -7
- package/src/FileTrigger.tsx +18 -3
- package/src/Focusable.tsx +27 -6
- package/src/Form.tsx +57 -11
- package/src/GridList.tsx +233 -141
- package/src/HiddenDateInput.tsx +19 -3
- package/src/Icon.tsx +8 -2
- package/src/Keyboard.tsx +18 -2
- package/src/Label.tsx +77 -0
- package/src/Landmark.tsx +6 -1
- package/src/Link.tsx +65 -19
- package/src/ListBox.tsx +645 -468
- package/src/ListDropTargetDelegate.ts +4 -0
- package/src/Menu.tsx +512 -349
- package/src/Meter.tsx +42 -8
- package/src/Modal.tsx +85 -42
- package/src/NumberField.tsx +161 -48
- package/src/Popover.tsx +424 -148
- package/src/Pressable.tsx +27 -6
- package/src/PreviewTrigger.tsx +171 -0
- package/src/ProgressBar.tsx +25 -3
- package/src/RadioGroup.tsx +230 -161
- package/src/RangeCalendar.tsx +75 -63
- package/src/RouterProvider.tsx +24 -14
- package/src/SearchField.tsx +118 -121
- package/src/Select.tsx +454 -274
- package/src/SelectionIndicator.tsx +21 -3
- package/src/Separator.tsx +17 -1
- package/src/SharedElementTransition.tsx +115 -97
- package/src/Slider.tsx +35 -17
- package/src/StepList.tsx +71 -32
- package/src/Switch.tsx +45 -29
- package/src/Table.tsx +446 -380
- package/src/Tabs.tsx +132 -155
- package/src/TagGroup.tsx +53 -40
- package/src/Text.tsx +23 -6
- package/src/TextField.tsx +118 -159
- package/src/TimeField.tsx +34 -95
- package/src/Toast.tsx +141 -67
- package/src/ToggleButton.tsx +33 -15
- package/src/ToggleButtonGroup.tsx +27 -9
- package/src/TokenField.tsx +379 -0
- package/src/Toolbar.tsx +19 -9
- package/src/Tooltip.tsx +126 -84
- package/src/Tree.tsx +233 -173
- package/src/Virtualizer.tsx +400 -138
- package/src/VirtualizerLayouts.ts +211 -26
- package/src/VisuallyHidden.tsx +22 -8
- package/src/contexts.ts +13 -0
- package/src/index.ts +32 -11
- package/src/intl/ar-AE.json +6 -0
- package/src/intl/bg-BG.json +6 -0
- package/src/intl/cs-CZ.json +6 -0
- package/src/intl/da-DK.json +6 -0
- package/src/intl/de-DE.json +6 -0
- package/src/intl/el-GR.json +6 -0
- package/src/intl/en-US.json +6 -0
- package/src/intl/es-ES.json +6 -0
- package/src/intl/et-EE.json +6 -0
- package/src/intl/fi-FI.json +6 -0
- package/src/intl/fr-FR.json +6 -0
- package/src/intl/he-IL.json +6 -0
- package/src/intl/hr-HR.json +6 -0
- package/src/intl/hu-HU.json +6 -0
- package/src/intl/index.ts +125 -0
- package/src/intl/it-IT.json +6 -0
- package/src/intl/ja-JP.json +6 -0
- package/src/intl/ko-KR.json +6 -0
- package/src/intl/lt-LT.json +6 -0
- package/src/intl/lv-LV.json +6 -0
- package/src/intl/nb-NO.json +6 -0
- package/src/intl/nl-NL.json +6 -0
- package/src/intl/pl-PL.json +6 -0
- package/src/intl/pt-BR.json +6 -0
- package/src/intl/pt-PT.json +6 -0
- package/src/intl/ro-RO.json +6 -0
- package/src/intl/ru-RU.json +6 -0
- package/src/intl/sk-SK.json +6 -0
- package/src/intl/sl-SI.json +6 -0
- package/src/intl/sr-SP.json +6 -0
- package/src/intl/sv-SE.json +6 -0
- package/src/intl/tr-TR.json +6 -0
- package/src/intl/uk-UA.json +6 -0
- package/src/intl/zh-CN.json +6 -0
- package/src/intl/zh-TW.json +6 -0
- package/src/useDragAndDrop.ts +30 -32
- package/src/utils.tsx +124 -68
- package/src/virtualizer/Layout.ts +29 -0
package/dist/DatePicker2.jsx
CHANGED
|
@@ -1,12 +1,38 @@
|
|
|
1
|
-
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2022 Adobe. All rights reserved.
|
|
3
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
4
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
5
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
6
|
+
*
|
|
7
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
8
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
9
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
|
+
* governing permissions and limitations under the License.
|
|
11
|
+
*/
|
|
12
|
+
// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria-components/src/DatePicker.tsx
|
|
13
|
+
/*
|
|
14
|
+
* Copyright 2025 Adobe. All rights reserved.
|
|
15
|
+
* This file is licensed to you under the Apache License, Version 2.0 (the "License");
|
|
16
|
+
* you may not use this file except in compliance with the License. You may obtain a copy
|
|
17
|
+
* of the License at http://www.apache.org/licenses/LICENSE-2.0
|
|
18
|
+
*
|
|
19
|
+
* Unless required by applicable law or agreed to in writing, software distributed under
|
|
20
|
+
* the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
|
|
21
|
+
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
22
|
+
* governing permissions and limitations under the License.
|
|
23
|
+
*/
|
|
24
|
+
// Ported to SolidJS for Proyecto Viviana; based on packages/react-aria-components/src/HiddenDateInput.tsx
|
|
25
|
+
import { Provider, dataAttr, useRenderProps } from "./utils.jsx";
|
|
2
26
|
import { TextContext } from "./Text.jsx";
|
|
3
|
-
import { FormContext } from "./Form.jsx";
|
|
27
|
+
import { FormContext, resolveValidationBehavior } from "./Form.jsx";
|
|
28
|
+
import { Popover } from "./Popover.jsx";
|
|
29
|
+
import { Dialog } from "./Dialog.jsx";
|
|
4
30
|
import { CalendarContext } from "./Calendar.jsx";
|
|
5
31
|
import { RangeCalendarContext } from "./RangeCalendar.jsx";
|
|
6
32
|
import { d as useDateRangePickerContext, n as DateFieldContext, u as DateRangePickerContext } from "./DateField2.jsx";
|
|
7
|
-
import { Show, createContext,
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
33
|
+
import { Show, createContext, createMemo, createSignal, createTrackedEffect, useContext } from "solid-js";
|
|
34
|
+
import { createDateField, createDatePicker, createDateRangePicker, createFocusRing, createFormValidation, createHover, mergeProps } from "@proyecto-viviana/solidaria";
|
|
35
|
+
import { splitProps } from "@proyecto-viviana/solidaria/utils";
|
|
10
36
|
import { access, createCalendarState, createDateFieldState, createDatePickerState, createRangeCalendarState } from "@proyecto-viviana/solid-stately";
|
|
11
37
|
//#region src/HiddenDateInput.tsx
|
|
12
38
|
/**
|
|
@@ -14,6 +40,7 @@ import { access, createCalendarState, createDateFieldState, createDatePickerStat
|
|
|
14
40
|
*
|
|
15
41
|
* A hidden native date/datetime-local input for form submission.
|
|
16
42
|
* Renders server-side with the initial value for SSR safety.
|
|
43
|
+
* Based on packages/react-aria-components/src/HiddenDateInput.tsx.
|
|
17
44
|
*/
|
|
18
45
|
function accessValue(value) {
|
|
19
46
|
return typeof value === "function" ? value() : value;
|
|
@@ -55,14 +82,14 @@ function HiddenDateInput(props) {
|
|
|
55
82
|
return props.focus;
|
|
56
83
|
}
|
|
57
84
|
}, props.validationState, inputRef);
|
|
58
|
-
|
|
85
|
+
createTrackedEffect(() => {
|
|
59
86
|
const val = formattedValue();
|
|
60
87
|
const input = inputRef();
|
|
61
88
|
if (input && input.value !== val) input.value = val;
|
|
62
89
|
});
|
|
63
90
|
return <input ref={(el) => {
|
|
64
91
|
setInputRef(el);
|
|
65
|
-
}} type={inputType()} name={props.name} form={props.form} value={formattedValue()} autocomplete={props.autoComplete} disabled={props.isDisabled} required={usesNativeValidation() && props.isRequired ? true : void 0} hidden={usesNativeValidation() || void 0} min={hasValidationBehavior() ? void 0 : formattedMin() || void 0} max={hasValidationBehavior() ? void 0 : formattedMax() || void 0} onChange={usesNativeValidation() ? () => {} : void 0}
|
|
92
|
+
}} type={inputType()} name={props.name} form={props.form} value={formattedValue()} autocomplete={props.autoComplete} disabled={props.isDisabled} required={usesNativeValidation() && props.isRequired ? true : void 0} hidden={usesNativeValidation() || void 0} min={hasValidationBehavior() ? void 0 : formattedMin() || void 0} max={hasValidationBehavior() ? void 0 : formattedMax() || void 0} onChange={usesNativeValidation() ? () => {} : void 0} tabindex={-1} aria-hidden="true" style={{
|
|
66
93
|
position: "absolute",
|
|
67
94
|
width: "1px",
|
|
68
95
|
height: "1px",
|
|
@@ -85,33 +112,6 @@ function HiddenDateInput(props) {
|
|
|
85
112
|
const DatePickerContext = createContext(null);
|
|
86
113
|
const DatePickerStateContext = createContext(null);
|
|
87
114
|
const DateRangePickerStateContext = createContext(null);
|
|
88
|
-
function withFormValidationBehavior(props, formContext) {
|
|
89
|
-
if (!formContext?.validationBehavior) return props;
|
|
90
|
-
return new Proxy(props, {
|
|
91
|
-
get(target, property, receiver) {
|
|
92
|
-
const localValue = Reflect.get(target, property, receiver);
|
|
93
|
-
if (property === "validationBehavior" && localValue === void 0) return formContext.validationBehavior;
|
|
94
|
-
return localValue;
|
|
95
|
-
},
|
|
96
|
-
has(target, property) {
|
|
97
|
-
return Reflect.has(target, property) || property === "validationBehavior" && formContext.validationBehavior !== void 0;
|
|
98
|
-
},
|
|
99
|
-
ownKeys(target) {
|
|
100
|
-
const keys = new Set(Reflect.ownKeys(target));
|
|
101
|
-
if (formContext.validationBehavior !== void 0) keys.add("validationBehavior");
|
|
102
|
-
return Array.from(keys);
|
|
103
|
-
},
|
|
104
|
-
getOwnPropertyDescriptor(target, property) {
|
|
105
|
-
const descriptor = Reflect.getOwnPropertyDescriptor(target, property);
|
|
106
|
-
if (descriptor) return descriptor;
|
|
107
|
-
if (property === "validationBehavior" && formContext.validationBehavior !== void 0) return {
|
|
108
|
-
enumerable: true,
|
|
109
|
-
configurable: true,
|
|
110
|
-
get: () => formContext.validationBehavior
|
|
111
|
-
};
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
115
|
function useDatePickerContext() {
|
|
116
116
|
const context = useContext(DatePickerContext);
|
|
117
117
|
if (!context) throw new Error("DatePicker components must be used within a DatePicker");
|
|
@@ -143,18 +143,14 @@ function useDatePickerContext() {
|
|
|
143
143
|
* ```
|
|
144
144
|
*/
|
|
145
145
|
function DatePicker(props) {
|
|
146
|
-
|
|
147
|
-
const formContext = useContext(FormContext);
|
|
148
|
-
return <Show when={isHydrated()} fallback={<div class="solidaria-DatePicker solidaria-DatePicker--placeholder" aria-hidden="true" />}>
|
|
149
|
-
<DatePickerInner {...props} __formContext={formContext} />
|
|
150
|
-
</Show>;
|
|
146
|
+
return <DatePickerInner {...props} />;
|
|
151
147
|
}
|
|
152
148
|
/**
|
|
153
149
|
* Internal DatePicker component that renders after client mount.
|
|
154
150
|
*/
|
|
155
151
|
function DatePickerInner(props) {
|
|
156
152
|
const formContext = props.__formContext ?? useContext(FormContext);
|
|
157
|
-
const [local, stateProps, rest] = splitProps(
|
|
153
|
+
const [local, stateProps, rest] = splitProps(props, [
|
|
158
154
|
"children",
|
|
159
155
|
"class",
|
|
160
156
|
"style",
|
|
@@ -194,6 +190,7 @@ function DatePickerInner(props) {
|
|
|
194
190
|
"isDateDisabled"
|
|
195
191
|
]);
|
|
196
192
|
const [triggerRef, setTriggerRef] = createSignal(null);
|
|
193
|
+
const [groupRef, setGroupRefState] = createSignal(null);
|
|
197
194
|
const [fieldRef, setFieldRef] = createSignal(null);
|
|
198
195
|
const datePickerState = createDatePickerState({
|
|
199
196
|
get value() {
|
|
@@ -261,6 +258,9 @@ function DatePickerInner(props) {
|
|
|
261
258
|
};
|
|
262
259
|
const fieldState = createDateFieldState({
|
|
263
260
|
...stateProps,
|
|
261
|
+
get locale() {
|
|
262
|
+
return access(stateProps.locale);
|
|
263
|
+
},
|
|
264
264
|
value: () => datePickerState.value(),
|
|
265
265
|
onChange: (value) => {
|
|
266
266
|
datePickerState.setValue(value);
|
|
@@ -276,7 +276,9 @@ function DatePickerInner(props) {
|
|
|
276
276
|
maxValue: stateProps.maxValue,
|
|
277
277
|
isDisabled: stateProps.isDisabled,
|
|
278
278
|
isReadOnly: stateProps.isReadOnly,
|
|
279
|
-
locale
|
|
279
|
+
get locale() {
|
|
280
|
+
return access(stateProps.locale);
|
|
281
|
+
},
|
|
280
282
|
createCalendar: stateProps.createCalendar,
|
|
281
283
|
isDateUnavailable: stateProps.isDateUnavailable,
|
|
282
284
|
firstDayOfWeek: stateProps.firstDayOfWeek,
|
|
@@ -286,7 +288,7 @@ function DatePickerInner(props) {
|
|
|
286
288
|
isDateDisabled: stateProps.isDateDisabled
|
|
287
289
|
});
|
|
288
290
|
let wasOpen = false;
|
|
289
|
-
|
|
291
|
+
createTrackedEffect(() => {
|
|
290
292
|
const open = datePickerState.isOpen();
|
|
291
293
|
if (open && !wasOpen) calendarState.setFocused(true);
|
|
292
294
|
wasOpen = open;
|
|
@@ -308,6 +310,11 @@ function DatePickerInner(props) {
|
|
|
308
310
|
const current = triggerRef();
|
|
309
311
|
if (!current || !current.isConnected) setTriggerRef(() => element);
|
|
310
312
|
},
|
|
313
|
+
groupRef,
|
|
314
|
+
setGroupRef: (element) => {
|
|
315
|
+
if (!element) return;
|
|
316
|
+
setGroupRefState(() => element);
|
|
317
|
+
},
|
|
311
318
|
pickerAria
|
|
312
319
|
};
|
|
313
320
|
const isInvalid = createMemo(() => fieldState.isInvalid() || datePickerState.builtinValidation().isInvalid || Boolean(stateProps.isInvalid));
|
|
@@ -323,11 +330,11 @@ function DatePickerInner(props) {
|
|
|
323
330
|
style: local.style,
|
|
324
331
|
defaultClassName: "solidaria-DatePicker"
|
|
325
332
|
}, renderValues);
|
|
326
|
-
const validationBehavior = () => stateProps.validationBehavior
|
|
327
|
-
return <DatePickerStateContext
|
|
328
|
-
<DatePickerContext
|
|
333
|
+
const validationBehavior = () => resolveValidationBehavior(stateProps.validationBehavior, formContext);
|
|
334
|
+
return <DatePickerStateContext value={fieldState}>
|
|
335
|
+
<DatePickerContext value={contextValue}>
|
|
329
336
|
{}
|
|
330
|
-
<DateFieldContext
|
|
337
|
+
<DateFieldContext value={{
|
|
331
338
|
state: fieldState,
|
|
332
339
|
aria: {
|
|
333
340
|
get labelProps() {
|
|
@@ -344,7 +351,7 @@ function DatePickerInner(props) {
|
|
|
344
351
|
}
|
|
345
352
|
}
|
|
346
353
|
}}>
|
|
347
|
-
<CalendarContext
|
|
354
|
+
<CalendarContext value={calendarState}>
|
|
348
355
|
{}
|
|
349
356
|
<div ref={setFieldRef} class={renderProps.class()} style={renderProps.style()} data-disabled={dataAttr(fieldState.isDisabled())} data-readonly={dataAttr(fieldState.isReadOnly())} data-required={dataAttr(fieldState.isRequired())} data-invalid={dataAttr(isInvalid())} data-open={dataAttr(overlayState.isOpen)}>
|
|
350
357
|
<Provider values={[[TextContext, { slots: {
|
|
@@ -363,16 +370,13 @@ function DatePickerInner(props) {
|
|
|
363
370
|
fieldRef()?.querySelector("[role=\"spinbutton\"]")?.focus();
|
|
364
371
|
}} minValue={() => access(stateProps.minValue)} maxValue={() => access(stateProps.maxValue)} granularity={datePickerState.granularity} />
|
|
365
372
|
</Show>
|
|
366
|
-
</CalendarContext
|
|
367
|
-
</DateFieldContext
|
|
368
|
-
</DatePickerContext
|
|
369
|
-
</DatePickerStateContext
|
|
373
|
+
</CalendarContext>
|
|
374
|
+
</DateFieldContext>
|
|
375
|
+
</DatePickerContext>
|
|
376
|
+
</DatePickerStateContext>;
|
|
370
377
|
}
|
|
371
378
|
function DateRangePicker(props) {
|
|
372
|
-
|
|
373
|
-
return <Show when={isHydrated()} fallback={<div class="solidaria-DateRangePicker solidaria-DateRangePicker--placeholder" aria-hidden="true" />}>
|
|
374
|
-
<DateRangePickerInner {...props} />
|
|
375
|
-
</Show>;
|
|
379
|
+
return <DateRangePickerInner {...props} />;
|
|
376
380
|
}
|
|
377
381
|
function DateRangePickerInner(props) {
|
|
378
382
|
const [local, overlayProps, stateProps, rest] = splitProps(props, [
|
|
@@ -418,6 +422,7 @@ function DateRangePickerInner(props) {
|
|
|
418
422
|
overlayProps.onOpenChange?.(open);
|
|
419
423
|
};
|
|
420
424
|
let triggerRef = null;
|
|
425
|
+
let groupRef = null;
|
|
421
426
|
const [fieldRef, setFieldRef] = createSignal(null);
|
|
422
427
|
const overlayState = {
|
|
423
428
|
get isOpen() {
|
|
@@ -438,6 +443,9 @@ function DateRangePickerInner(props) {
|
|
|
438
443
|
};
|
|
439
444
|
const calendarState = createRangeCalendarState({
|
|
440
445
|
...stateProps,
|
|
446
|
+
get locale() {
|
|
447
|
+
return access(stateProps.locale);
|
|
448
|
+
},
|
|
441
449
|
value: currentRangeValue,
|
|
442
450
|
onChange: (value) => {
|
|
443
451
|
setCommittedRangeValue(value);
|
|
@@ -445,7 +453,7 @@ function DateRangePickerInner(props) {
|
|
|
445
453
|
}
|
|
446
454
|
});
|
|
447
455
|
let wasRangeOpen = false;
|
|
448
|
-
|
|
456
|
+
createTrackedEffect(() => {
|
|
449
457
|
const open = overlayState.isOpen;
|
|
450
458
|
if (open && !wasRangeOpen) calendarState.setFocused(true);
|
|
451
459
|
wasRangeOpen = open;
|
|
@@ -460,7 +468,7 @@ function DateRangePickerInner(props) {
|
|
|
460
468
|
if (value && "hour" in value) return "second" in value ? "second" : "minute";
|
|
461
469
|
return "day";
|
|
462
470
|
});
|
|
463
|
-
|
|
471
|
+
createTrackedEffect(() => {
|
|
464
472
|
const value = currentRangeValue();
|
|
465
473
|
setStartFieldValue(() => value?.start ?? null);
|
|
466
474
|
setEndFieldValue(() => value?.end ?? null);
|
|
@@ -481,7 +489,9 @@ function DateRangePickerInner(props) {
|
|
|
481
489
|
isDisabled: stateProps.isDisabled,
|
|
482
490
|
isReadOnly: stateProps.isReadOnly,
|
|
483
491
|
isRequired,
|
|
484
|
-
locale
|
|
492
|
+
get locale() {
|
|
493
|
+
return access(stateProps.locale);
|
|
494
|
+
},
|
|
485
495
|
granularity: rangeGranularity(),
|
|
486
496
|
hourCycle: stateProps.hourCycle,
|
|
487
497
|
hideTimeZone: stateProps.hideTimeZone,
|
|
@@ -491,11 +501,17 @@ function DateRangePickerInner(props) {
|
|
|
491
501
|
};
|
|
492
502
|
const startFieldState = createDateFieldState({
|
|
493
503
|
...rangeFieldStateProps,
|
|
504
|
+
get locale() {
|
|
505
|
+
return access(stateProps.locale);
|
|
506
|
+
},
|
|
494
507
|
value: startFieldValue,
|
|
495
508
|
onChange: (value) => setRangeFieldValue("start", value)
|
|
496
509
|
});
|
|
497
510
|
const endFieldState = createDateFieldState({
|
|
498
511
|
...rangeFieldStateProps,
|
|
512
|
+
get locale() {
|
|
513
|
+
return access(stateProps.locale);
|
|
514
|
+
},
|
|
499
515
|
value: endFieldValue,
|
|
500
516
|
onChange: (value) => setRangeFieldValue("end", value)
|
|
501
517
|
});
|
|
@@ -546,6 +562,11 @@ function DateRangePickerInner(props) {
|
|
|
546
562
|
if (!element) return;
|
|
547
563
|
if (!triggerRef || !triggerRef.isConnected) triggerRef = element;
|
|
548
564
|
},
|
|
565
|
+
groupRef: () => groupRef,
|
|
566
|
+
setGroupRef: (element) => {
|
|
567
|
+
if (!element) return;
|
|
568
|
+
groupRef = element;
|
|
569
|
+
},
|
|
549
570
|
pickerAria
|
|
550
571
|
};
|
|
551
572
|
const renderValues = createMemo(() => ({
|
|
@@ -560,9 +581,9 @@ function DateRangePickerInner(props) {
|
|
|
560
581
|
style: local.style,
|
|
561
582
|
defaultClassName: "solidaria-DateRangePicker"
|
|
562
583
|
}, renderValues);
|
|
563
|
-
return <DateRangePickerStateContext
|
|
564
|
-
<DateRangePickerContext
|
|
565
|
-
<RangeCalendarContext
|
|
584
|
+
return <DateRangePickerStateContext value={calendarState}>
|
|
585
|
+
<DateRangePickerContext value={contextValue}>
|
|
586
|
+
<RangeCalendarContext value={calendarState}>
|
|
566
587
|
{}
|
|
567
588
|
<div ref={setFieldRef} class={renderProps.class()} style={renderProps.style()} data-disabled={dataAttr(calendarState.isDisabled())} data-readonly={dataAttr(calendarState.isReadOnly())} data-required={dataAttr(isRequired())} data-invalid={dataAttr(isInvalid())} data-open={dataAttr(overlayState.isOpen)}>
|
|
568
589
|
<Provider values={[[TextContext, { slots: {
|
|
@@ -582,9 +603,9 @@ function DateRangePickerInner(props) {
|
|
|
582
603
|
<Show when={rest.endName}>
|
|
583
604
|
<HiddenDateInput name={rest.endName} form={rest.form} value={() => currentRangeValue()?.end ?? null} isDisabled={access(stateProps.isDisabled) ?? false} minValue={() => access(stateProps.minValue)} maxValue={() => access(stateProps.maxValue)} granularity={rangeGranularity()} />
|
|
584
605
|
</Show>
|
|
585
|
-
</RangeCalendarContext
|
|
586
|
-
</DateRangePickerContext
|
|
587
|
-
</DateRangePickerStateContext
|
|
606
|
+
</RangeCalendarContext>
|
|
607
|
+
</DateRangePickerContext>
|
|
608
|
+
</DateRangePickerStateContext>;
|
|
588
609
|
}
|
|
589
610
|
/**
|
|
590
611
|
* A button that opens the date picker calendar.
|
|
@@ -615,11 +636,11 @@ function DatePickerButton(props) {
|
|
|
615
636
|
if (typeof props.children === "function") return renderProps.renderChildren();
|
|
616
637
|
return props.children ?? "📅";
|
|
617
638
|
};
|
|
618
|
-
const buttonProps = createMemo(() => mergeProps
|
|
639
|
+
const buttonProps = createMemo(() => mergeProps(context.pickerAria.buttonProps, focusProps, hoverProps));
|
|
619
640
|
return <button ref={(el) => {
|
|
620
641
|
context.setTriggerRef(el);
|
|
621
642
|
props.ref?.(el);
|
|
622
|
-
}} {...buttonProps()} class={renderProps.class()} style={renderProps.style()} disabled={isDisabled()} data-disabled={dataAttr(isDisabled())} data-open={dataAttr(context.overlayState.isOpen)}
|
|
643
|
+
}} {...buttonProps()} class={renderProps.class()} style={renderProps.style()} disabled={isDisabled()} data-disabled={dataAttr(isDisabled())} data-open={dataAttr(context.overlayState.isOpen)} data-hovered={dataAttr(isHovered())} data-focused={dataAttr(isFocused())} data-focus-visible={dataAttr(isFocusVisible())} data-pressed={dataAttr(context.pickerAria.isButtonPressed())}>
|
|
623
644
|
{getChildren()}
|
|
624
645
|
</button>;
|
|
625
646
|
}
|
|
@@ -649,11 +670,11 @@ function DateRangePickerButton(props) {
|
|
|
649
670
|
if (typeof props.children === "function") return renderProps.renderChildren();
|
|
650
671
|
return props.children ?? "📅";
|
|
651
672
|
};
|
|
652
|
-
const buttonProps = createMemo(() => mergeProps
|
|
673
|
+
const buttonProps = createMemo(() => mergeProps(context.pickerAria.buttonProps, focusProps, hoverProps));
|
|
653
674
|
return <button ref={(el) => {
|
|
654
675
|
context.setTriggerRef(el);
|
|
655
676
|
props.ref?.(el);
|
|
656
|
-
}} {...buttonProps()} class={renderProps.class()} style={renderProps.style()} disabled={isDisabled()} data-disabled={dataAttr(isDisabled())} data-open={dataAttr(context.overlayState.isOpen)}
|
|
677
|
+
}} {...buttonProps()} class={renderProps.class()} style={renderProps.style()} disabled={isDisabled()} data-disabled={dataAttr(isDisabled())} data-open={dataAttr(context.overlayState.isOpen)} data-hovered={dataAttr(isHovered())} data-focused={dataAttr(isFocused())} data-focus-visible={dataAttr(isFocusVisible())} data-pressed={dataAttr(context.pickerAria.isButtonPressed())}>
|
|
657
678
|
{getChildren()}
|
|
658
679
|
</button>;
|
|
659
680
|
}
|
|
@@ -693,126 +714,36 @@ function DateRangePickerErrorMessage(props) {
|
|
|
693
714
|
{props.children}
|
|
694
715
|
</span>;
|
|
695
716
|
}
|
|
696
|
-
function
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
close();
|
|
702
|
-
};
|
|
703
|
-
document.addEventListener("keydown", onKeyDown);
|
|
704
|
-
onCleanup(() => document.removeEventListener("keydown", onKeyDown));
|
|
717
|
+
function datePickerContentClass(className, defaultClassName) {
|
|
718
|
+
if (typeof className === "function") return (renderProps) => className({
|
|
719
|
+
isEntering: renderProps.isEntering,
|
|
720
|
+
isExiting: renderProps.isExiting,
|
|
721
|
+
placement: renderProps.placement
|
|
705
722
|
});
|
|
723
|
+
return className ?? defaultClassName;
|
|
706
724
|
}
|
|
707
725
|
/**
|
|
708
726
|
* The content area of the date picker (typically contains a Calendar).
|
|
727
|
+
* Overlay enter/exit is owned by Popover, matching RAC DatePicker which renders
|
|
728
|
+
* a Popover + Dialog and has no private animation machine.
|
|
709
729
|
*/
|
|
710
730
|
function DatePickerContent(props) {
|
|
711
731
|
const context = useDatePickerContext();
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
placement: "bottom start",
|
|
719
|
-
offset: 8,
|
|
720
|
-
isNonModal: false,
|
|
721
|
-
isKeyboardDismissDisabled: false
|
|
722
|
-
}, {
|
|
723
|
-
isOpen: () => context.overlayState.isOpen,
|
|
724
|
-
open: context.overlayState.open,
|
|
725
|
-
close: context.overlayState.close,
|
|
726
|
-
toggle: context.overlayState.toggle
|
|
727
|
-
});
|
|
728
|
-
createEscapeDismissFallback(() => context.overlayState.isOpen, context.overlayState.close);
|
|
729
|
-
const isEntering = createEnterAnimation(contentRef, () => context.overlayState.isOpen);
|
|
730
|
-
const renderProps = () => ({
|
|
731
|
-
isEntering: isEntering(),
|
|
732
|
-
isExiting: false,
|
|
733
|
-
placement: popoverAria.placement() ?? "bottom"
|
|
734
|
-
});
|
|
735
|
-
const resolvedClass = () => {
|
|
736
|
-
const c = props.class;
|
|
737
|
-
if (typeof c === "function") return c(renderProps());
|
|
738
|
-
return c ?? "solidaria-DatePickerContent";
|
|
739
|
-
};
|
|
740
|
-
const cleanPopoverProps = () => {
|
|
741
|
-
const { style: _style, ref: _ref, ...rest } = popoverAria.popoverProps;
|
|
742
|
-
return rest;
|
|
743
|
-
};
|
|
744
|
-
const mergedStyle = () => {
|
|
745
|
-
return {
|
|
746
|
-
...popoverAria.popoverProps.style,
|
|
747
|
-
...props.style
|
|
748
|
-
};
|
|
749
|
-
};
|
|
750
|
-
return <Show when={context.overlayState.isOpen}>
|
|
751
|
-
<Portal mount={portalContainer()}>
|
|
752
|
-
<FocusScope contain restoreFocus>
|
|
753
|
-
{}
|
|
754
|
-
<div ref={setContentRef} {...cleanPopoverProps()} class={resolvedClass()} style={mergedStyle()} data-placement={popoverAria.placement() ?? "bottom"} data-entering={dataAttr(isEntering())}>
|
|
755
|
-
{}
|
|
756
|
-
<section {...context.pickerAria.dialogProps} tabIndex={-1}>
|
|
757
|
-
{props.children}
|
|
758
|
-
</section>
|
|
759
|
-
</div>
|
|
760
|
-
</FocusScope>
|
|
761
|
-
</Portal>
|
|
762
|
-
</Show>;
|
|
732
|
+
return <Popover trigger="DatePicker" triggerRef={() => context.groupRef() ?? context.triggerRef()} placement="bottom start" offset={8} isOpen={context.overlayState.isOpen} onOpenChange={(open) => {
|
|
733
|
+
if (open) context.overlayState.open();
|
|
734
|
+
else context.overlayState.close();
|
|
735
|
+
}} class={datePickerContentClass(props.class, "solidaria-DatePickerContent")} style={props.style}>
|
|
736
|
+
<Dialog {...context.pickerAria.dialogProps}>{props.children}</Dialog>
|
|
737
|
+
</Popover>;
|
|
763
738
|
}
|
|
764
739
|
function DateRangePickerContent(props) {
|
|
765
740
|
const context = useDateRangePickerContext();
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
placement: "bottom start",
|
|
773
|
-
offset: 8,
|
|
774
|
-
isNonModal: false,
|
|
775
|
-
isKeyboardDismissDisabled: false
|
|
776
|
-
}, {
|
|
777
|
-
isOpen: () => context.overlayState.isOpen,
|
|
778
|
-
open: context.overlayState.open,
|
|
779
|
-
close: context.overlayState.close,
|
|
780
|
-
toggle: context.overlayState.toggle
|
|
781
|
-
});
|
|
782
|
-
createEscapeDismissFallback(() => context.overlayState.isOpen, context.overlayState.close);
|
|
783
|
-
const isEntering = createEnterAnimation(contentRef, () => context.overlayState.isOpen);
|
|
784
|
-
const renderProps = () => ({
|
|
785
|
-
isEntering: isEntering(),
|
|
786
|
-
isExiting: false,
|
|
787
|
-
placement: popoverAria.placement() ?? "bottom"
|
|
788
|
-
});
|
|
789
|
-
const resolvedClass = () => {
|
|
790
|
-
const c = props.class;
|
|
791
|
-
if (typeof c === "function") return c(renderProps());
|
|
792
|
-
return c ?? "solidaria-DateRangePickerContent";
|
|
793
|
-
};
|
|
794
|
-
const cleanPopoverProps = () => {
|
|
795
|
-
const { style: _style, ref: _ref, ...rest } = popoverAria.popoverProps;
|
|
796
|
-
return rest;
|
|
797
|
-
};
|
|
798
|
-
const mergedStyle = () => {
|
|
799
|
-
return {
|
|
800
|
-
...popoverAria.popoverProps.style,
|
|
801
|
-
...props.style
|
|
802
|
-
};
|
|
803
|
-
};
|
|
804
|
-
return <Show when={context.overlayState.isOpen}>
|
|
805
|
-
<Portal mount={portalContainer()}>
|
|
806
|
-
<FocusScope contain restoreFocus>
|
|
807
|
-
{}
|
|
808
|
-
<div ref={setContentRef} {...cleanPopoverProps()} class={resolvedClass()} style={mergedStyle()} data-placement={popoverAria.placement() ?? "bottom"} data-entering={dataAttr(isEntering())}>
|
|
809
|
-
<section {...context.pickerAria.dialogProps} tabIndex={-1}>
|
|
810
|
-
{props.children}
|
|
811
|
-
</section>
|
|
812
|
-
</div>
|
|
813
|
-
</FocusScope>
|
|
814
|
-
</Portal>
|
|
815
|
-
</Show>;
|
|
741
|
+
return <Popover trigger="DateRangePicker" triggerRef={() => context.groupRef() ?? context.triggerRef()} placement="bottom start" offset={8} isOpen={context.overlayState.isOpen} onOpenChange={(open) => {
|
|
742
|
+
if (open) context.overlayState.open();
|
|
743
|
+
else context.overlayState.close();
|
|
744
|
+
}} class={datePickerContentClass(props.class, "solidaria-DateRangePickerContent")} style={props.style}>
|
|
745
|
+
<Dialog {...context.pickerAria.dialogProps}>{props.children}</Dialog>
|
|
746
|
+
</Popover>;
|
|
816
747
|
}
|
|
817
748
|
//#endregion
|
|
818
749
|
export { HiddenDateInput as _, DatePickerDescription as a, DatePickerStateContext as c, DateRangePickerContent as d, DateRangePickerDescription as f, useDatePickerContext as g, DateRangePickerStateContext as h, DatePickerContext as i, DateRangePicker as l, DateRangePickerLabel as m, DatePickerButton as n, DatePickerErrorMessage as o, DateRangePickerErrorMessage as p, DatePickerContent as r, DatePickerLabel as s, DatePicker as t, DateRangePickerButton as u };
|