@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/Menu.js
CHANGED
|
@@ -1,12 +1,26 @@
|
|
|
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/Menu.tsx
|
|
13
|
+
import { assignRef as assignRef$1, dataAttr, filterDOMProps, isAriaTrue, useRenderProps } from "./utils.js";
|
|
2
14
|
import { r as PopoverTriggerContext } from "./contexts.js";
|
|
3
15
|
import { SharedElementTransition } from "./SharedElementTransition.js";
|
|
4
|
-
import { CollectionRendererContext, Group, Header, Section, flattenCollectionEntries, isCollectionSection, useCollectionRenderer } from "./Collection.js";
|
|
5
|
-
import {
|
|
6
|
-
import { getNormalizedDropTargetKey, mergePersistedKeysIntoVirtualRange, useDndPersistedKeys, useRenderDropIndicator } from "./DragAndDrop.js";
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
16
|
+
import { CollectionRendererContext, Group, Header, Section, flattenCollectionEntries, isCollectionSection, renderCollectionDropSlots, useCollectionRenderer, useCollectionRoot } from "./Collection.js";
|
|
17
|
+
import { o as useVirtualizerContext, t as PersistedVirtualItem } from "./Virtualizer2.js";
|
|
18
|
+
import { getNormalizedDropTargetKey, indexesOutsideRange, mergePersistedKeysIntoVirtualRange, useDndPersistedKeys, useRenderDropIndicator } from "./DragAndDrop.js";
|
|
19
|
+
import { OverlayContext } from "./Popover.js";
|
|
20
|
+
import { claimElement, createComponent, effect, getNextElement, insert, memo, ref, runHydrationEvents, scope, setAttribute, spread, template } from "@solidjs/web";
|
|
21
|
+
import { For, Show, createContext, createEffect, createMemo, createSignal, createUniqueId, onCleanup, useContext } from "solid-js";
|
|
22
|
+
import { FocusScope, createFocusRing, createHover, createInteractOutside, createMenu, createMenuItem, createMenuTrigger, createScrollIntoViewOnFocus, mergeProps as mergeProps$1, useLocale } from "@proyecto-viviana/solidaria";
|
|
23
|
+
import { splitProps } from "@proyecto-viviana/solidaria/utils";
|
|
10
24
|
import { createMenuState, createMenuTriggerState, createSelectionState } from "@proyecto-viviana/solid-stately";
|
|
11
25
|
//#region src/Menu.tsx
|
|
12
26
|
/**
|
|
@@ -15,7 +29,13 @@ import { createMenuState, createMenuTriggerState, createSelectionState } from "@
|
|
|
15
29
|
* A pre-wired headless menu that combines state + aria hooks.
|
|
16
30
|
* Port of react-aria-components/src/Menu.tsx
|
|
17
31
|
*/
|
|
18
|
-
var _tmpl$ =
|
|
32
|
+
var _tmpl$ = /* @__PURE__ */ template(`<div role=group>`);
|
|
33
|
+
var _tmpl$2 = /* @__PURE__ */ template(`<div role=presentation data-section-wrapper>`);
|
|
34
|
+
var _tmpl$3 = /* @__PURE__ */ template(`<div role=presentation data-empty-state><div role=menuitem style=display:contents>`);
|
|
35
|
+
var _tmpl$4 = /* @__PURE__ */ template(`<span>`);
|
|
36
|
+
var _tmpl$5 = /* @__PURE__ */ template(`<div>`);
|
|
37
|
+
var _tmpl$6 = /* @__PURE__ */ template(`<a>`);
|
|
38
|
+
var _tmpl$7 = /* @__PURE__ */ template(`<div inert style=position:relative;width:0;height:0><div data-testid=loadMoreSentinel style=position:absolute;height:1px;width:1px>`);
|
|
19
39
|
const MenuContext = createContext(null);
|
|
20
40
|
const MenuStateContext = createContext(null);
|
|
21
41
|
const MenuTriggerContext = createContext(null);
|
|
@@ -25,11 +45,6 @@ const StaticMenuCollectionContext = createContext(null);
|
|
|
25
45
|
const MenuSectionSelectionContext = createContext(null);
|
|
26
46
|
const MenuSectionSelectionRegistryContext = createContext(null);
|
|
27
47
|
const MenuItemCloseRegistryContext = createContext(null);
|
|
28
|
-
function assignRef(ref, el) {
|
|
29
|
-
if (!ref) return;
|
|
30
|
-
if (typeof ref === "function") ref(el);
|
|
31
|
-
else ref.current = el;
|
|
32
|
-
}
|
|
33
48
|
function resolveBoolean(value) {
|
|
34
49
|
return typeof value === "function" ? Boolean(value()) : Boolean(value);
|
|
35
50
|
}
|
|
@@ -47,8 +62,12 @@ function MenuTrigger(props) {
|
|
|
47
62
|
},
|
|
48
63
|
get onOpenChange() {
|
|
49
64
|
return stateProps.onOpenChange;
|
|
65
|
+
},
|
|
66
|
+
get trigger() {
|
|
67
|
+
return stateProps.trigger;
|
|
50
68
|
}
|
|
51
69
|
});
|
|
70
|
+
const [triggerRef, setTriggerRef] = createSignal(null);
|
|
52
71
|
const [isMousePressed, setMousePressed] = createSignal(false);
|
|
53
72
|
const onPressStart = (e) => {
|
|
54
73
|
if (e.pointerType !== "mouse" || typeof document === "undefined") return;
|
|
@@ -60,13 +79,21 @@ function MenuTrigger(props) {
|
|
|
60
79
|
capture: true
|
|
61
80
|
});
|
|
62
81
|
};
|
|
63
|
-
const menuTrigger = createMenuTrigger({
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
82
|
+
const menuTrigger = createMenuTrigger({
|
|
83
|
+
get isDisabled() {
|
|
84
|
+
return stateProps.isDisabled;
|
|
85
|
+
},
|
|
86
|
+
get type() {
|
|
87
|
+
return stateProps.type;
|
|
88
|
+
},
|
|
89
|
+
get trigger() {
|
|
90
|
+
return stateProps.trigger;
|
|
91
|
+
}
|
|
92
|
+
}, state, triggerRef);
|
|
93
|
+
return createComponent(RootMenuTriggerStateContext, {
|
|
67
94
|
value: state,
|
|
68
95
|
get children() {
|
|
69
|
-
return createComponent(MenuTriggerContext
|
|
96
|
+
return createComponent(MenuTriggerContext, {
|
|
70
97
|
value: {
|
|
71
98
|
state,
|
|
72
99
|
get triggerProps() {
|
|
@@ -75,11 +102,36 @@ function MenuTrigger(props) {
|
|
|
75
102
|
get menuProps() {
|
|
76
103
|
return menuTrigger.menuProps;
|
|
77
104
|
},
|
|
105
|
+
triggerRef,
|
|
106
|
+
setTriggerRef,
|
|
107
|
+
isDisabled: () => Boolean(stateProps.isDisabled),
|
|
78
108
|
isPressed: isMousePressed,
|
|
79
109
|
onPressStart
|
|
80
110
|
},
|
|
81
111
|
get children() {
|
|
82
|
-
return
|
|
112
|
+
return createComponent(PopoverTriggerContext, {
|
|
113
|
+
get value() {
|
|
114
|
+
return {
|
|
115
|
+
state,
|
|
116
|
+
triggerRef,
|
|
117
|
+
setTriggerRef,
|
|
118
|
+
triggerId: String(menuTrigger.menuTriggerProps.id),
|
|
119
|
+
trigger: "MenuTrigger",
|
|
120
|
+
get triggerProps() {
|
|
121
|
+
return mergeProps$1(menuTrigger.menuTriggerProps, { onPressStart: (event) => {
|
|
122
|
+
onPressStart(event);
|
|
123
|
+
menuTrigger.menuTriggerProps.onPressStart?.(event);
|
|
124
|
+
} });
|
|
125
|
+
},
|
|
126
|
+
get overlayProps() {
|
|
127
|
+
return { "aria-labelledby": menuTrigger.menuProps["aria-labelledby"] };
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
},
|
|
131
|
+
get children() {
|
|
132
|
+
return props.children;
|
|
133
|
+
}
|
|
134
|
+
});
|
|
83
135
|
}
|
|
84
136
|
});
|
|
85
137
|
}
|
|
@@ -90,6 +142,7 @@ function SubmenuTrigger(props) {
|
|
|
90
142
|
const trigger = () => children()[0];
|
|
91
143
|
const content = () => children()[1];
|
|
92
144
|
const parentMenuItemContext = useContext(MenuItemContext);
|
|
145
|
+
const locale = useLocale();
|
|
93
146
|
const state = createMenuTriggerState({
|
|
94
147
|
get isOpen() {
|
|
95
148
|
return props.isOpen;
|
|
@@ -164,7 +217,8 @@ function SubmenuTrigger(props) {
|
|
|
164
217
|
triggerRef = el;
|
|
165
218
|
},
|
|
166
219
|
triggerId,
|
|
167
|
-
trigger: "SubmenuTrigger"
|
|
220
|
+
trigger: "SubmenuTrigger",
|
|
221
|
+
overlayProps: { "aria-labelledby": triggerId }
|
|
168
222
|
}));
|
|
169
223
|
const itemContext = createMemo(() => ({
|
|
170
224
|
closeOnSelect: false,
|
|
@@ -176,7 +230,7 @@ function SubmenuTrigger(props) {
|
|
|
176
230
|
id: triggerId,
|
|
177
231
|
"aria-haspopup": "menu",
|
|
178
232
|
get "aria-expanded"() {
|
|
179
|
-
return state.isOpen()
|
|
233
|
+
return state.isOpen() ? "true" : void 0;
|
|
180
234
|
},
|
|
181
235
|
get "aria-controls"() {
|
|
182
236
|
return state.isOpen() ? menuId : void 0;
|
|
@@ -192,27 +246,29 @@ function SubmenuTrigger(props) {
|
|
|
192
246
|
onMouseEnter: openFromMouseHover,
|
|
193
247
|
onMouseOver: openFromMouseHover,
|
|
194
248
|
onKeyDown: (event) => {
|
|
195
|
-
|
|
249
|
+
const openKey = locale().direction === "rtl" ? "ArrowLeft" : "ArrowRight";
|
|
250
|
+
const closeKey = locale().direction === "rtl" ? "ArrowRight" : "ArrowLeft";
|
|
251
|
+
if (event.key === openKey || event.key === "Enter" || event.key === " ") {
|
|
196
252
|
event.preventDefault();
|
|
197
253
|
openSubmenu();
|
|
198
|
-
} else if (event.key ===
|
|
254
|
+
} else if (event.key === closeKey && state.isOpen()) {
|
|
199
255
|
event.preventDefault();
|
|
200
256
|
state.close();
|
|
201
257
|
}
|
|
202
258
|
}
|
|
203
259
|
})
|
|
204
260
|
}));
|
|
205
|
-
return createComponent(PopoverTriggerContext
|
|
261
|
+
return createComponent(PopoverTriggerContext, {
|
|
206
262
|
get value() {
|
|
207
263
|
return popoverTriggerContext();
|
|
208
264
|
},
|
|
209
265
|
get children() {
|
|
210
|
-
return createComponent(MenuTriggerContext
|
|
266
|
+
return createComponent(MenuTriggerContext, {
|
|
211
267
|
get value() {
|
|
212
268
|
return menuTriggerContext();
|
|
213
269
|
},
|
|
214
270
|
get children() {
|
|
215
|
-
return [createComponent(MenuItemContext
|
|
271
|
+
return [createComponent(MenuItemContext, {
|
|
216
272
|
get value() {
|
|
217
273
|
return {
|
|
218
274
|
...parentMenuItemContext,
|
|
@@ -222,117 +278,14 @@ function SubmenuTrigger(props) {
|
|
|
222
278
|
get children() {
|
|
223
279
|
return trigger();
|
|
224
280
|
}
|
|
225
|
-
}), memo(() =>
|
|
281
|
+
}), memo(() => {
|
|
282
|
+
return content();
|
|
283
|
+
})];
|
|
226
284
|
}
|
|
227
285
|
});
|
|
228
286
|
}
|
|
229
287
|
});
|
|
230
288
|
}
|
|
231
|
-
function MenuButton(props) {
|
|
232
|
-
const [local, domProps] = splitProps(props, [
|
|
233
|
-
"class",
|
|
234
|
-
"style",
|
|
235
|
-
"slot",
|
|
236
|
-
"isDisabled",
|
|
237
|
-
"children"
|
|
238
|
-
]);
|
|
239
|
-
const context = useContext(MenuTriggerContext);
|
|
240
|
-
if (!context) throw new Error("MenuButton must be used within a MenuTrigger");
|
|
241
|
-
const { state } = context;
|
|
242
|
-
const buttonAria = createButton({
|
|
243
|
-
get isDisabled() {
|
|
244
|
-
return local.isDisabled;
|
|
245
|
-
},
|
|
246
|
-
onPressStart(e) {
|
|
247
|
-
context.onPressStart?.(e);
|
|
248
|
-
},
|
|
249
|
-
onPress() {
|
|
250
|
-
state.toggle();
|
|
251
|
-
}
|
|
252
|
-
});
|
|
253
|
-
const { isFocused, isFocusVisible, focusProps } = createFocusRing();
|
|
254
|
-
const { isHovered, hoverProps } = createHover({ get isDisabled() {
|
|
255
|
-
return local.isDisabled;
|
|
256
|
-
} });
|
|
257
|
-
const renderValues = createMemo(() => ({
|
|
258
|
-
isOpen: state.isOpen(),
|
|
259
|
-
isFocused: isFocused(),
|
|
260
|
-
isFocusVisible: isFocusVisible(),
|
|
261
|
-
isPressed: context.isPressed?.() || buttonAria.isPressed(),
|
|
262
|
-
isHovered: isHovered(),
|
|
263
|
-
isDisabled: !!local.isDisabled
|
|
264
|
-
}));
|
|
265
|
-
const renderProps = useRenderProps({
|
|
266
|
-
get children() {
|
|
267
|
-
return props.children;
|
|
268
|
-
},
|
|
269
|
-
class: local.class,
|
|
270
|
-
style: local.style,
|
|
271
|
-
defaultClassName: "solidaria-MenuButton"
|
|
272
|
-
}, renderValues);
|
|
273
|
-
const resolvedTriggerProps = () => context.triggerProps;
|
|
274
|
-
const cleanTriggerProps = () => {
|
|
275
|
-
const { ref: _ref1, "aria-haspopup": _ariaHasPopup, "aria-expanded": _ariaExpanded, "aria-controls": _ariaControls, "aria-disabled": _ariaDisabled, ...rest } = resolvedTriggerProps();
|
|
276
|
-
return rest;
|
|
277
|
-
};
|
|
278
|
-
const cleanButtonProps = () => {
|
|
279
|
-
const { ref: _ref2, ...rest } = buttonAria.buttonProps;
|
|
280
|
-
return rest;
|
|
281
|
-
};
|
|
282
|
-
const cleanFocusProps = () => {
|
|
283
|
-
const { ref: _ref3, ...rest } = focusProps;
|
|
284
|
-
return rest;
|
|
285
|
-
};
|
|
286
|
-
const cleanHoverProps = () => {
|
|
287
|
-
const { ref: _ref4, ...rest } = hoverProps;
|
|
288
|
-
return rest;
|
|
289
|
-
};
|
|
290
|
-
return (() => {
|
|
291
|
-
var _el$ = getNextElement(_tmpl$);
|
|
292
|
-
spread(_el$, mergeProps(domProps, cleanTriggerProps, cleanButtonProps, cleanFocusProps, cleanHoverProps, {
|
|
293
|
-
"type": "button",
|
|
294
|
-
get ["class"]() {
|
|
295
|
-
return renderProps.class();
|
|
296
|
-
},
|
|
297
|
-
get style() {
|
|
298
|
-
return renderProps.style();
|
|
299
|
-
},
|
|
300
|
-
get ["aria-haspopup"]() {
|
|
301
|
-
return resolvedTriggerProps()["aria-haspopup"];
|
|
302
|
-
},
|
|
303
|
-
get ["aria-expanded"]() {
|
|
304
|
-
return resolvedTriggerProps()["aria-expanded"];
|
|
305
|
-
},
|
|
306
|
-
get ["aria-controls"]() {
|
|
307
|
-
return resolvedTriggerProps()["aria-controls"];
|
|
308
|
-
},
|
|
309
|
-
get ["aria-disabled"]() {
|
|
310
|
-
return resolvedTriggerProps()["aria-disabled"];
|
|
311
|
-
},
|
|
312
|
-
get ["data-open"]() {
|
|
313
|
-
return state.isOpen() || void 0;
|
|
314
|
-
},
|
|
315
|
-
get ["data-focused"]() {
|
|
316
|
-
return isFocused() || void 0;
|
|
317
|
-
},
|
|
318
|
-
get ["data-focus-visible"]() {
|
|
319
|
-
return isFocusVisible() || void 0;
|
|
320
|
-
},
|
|
321
|
-
get ["data-pressed"]() {
|
|
322
|
-
return context.isPressed?.() || buttonAria.isPressed() || void 0;
|
|
323
|
-
},
|
|
324
|
-
get ["data-hovered"]() {
|
|
325
|
-
return isHovered() || void 0;
|
|
326
|
-
},
|
|
327
|
-
get ["data-disabled"]() {
|
|
328
|
-
return local.isDisabled || void 0;
|
|
329
|
-
}
|
|
330
|
-
}), false, true);
|
|
331
|
-
insert(_el$, () => renderProps.renderChildren());
|
|
332
|
-
runHydrationEvents();
|
|
333
|
-
return _el$;
|
|
334
|
-
})();
|
|
335
|
-
}
|
|
336
289
|
/**
|
|
337
290
|
* A menu displays a list of actions or options for the user to choose from.
|
|
338
291
|
*/
|
|
@@ -366,8 +319,11 @@ function Menu(props) {
|
|
|
366
319
|
"dragAndDropHooks"
|
|
367
320
|
]);
|
|
368
321
|
const triggerContext = useContext(MenuTriggerContext);
|
|
322
|
+
const popoverTriggerContext = useContext(PopoverTriggerContext);
|
|
323
|
+
const overlayContext = useContext(OverlayContext);
|
|
324
|
+
const locale = useLocale();
|
|
369
325
|
const [menuRef, setMenuRef] = createSignal(null);
|
|
370
|
-
const [staticItems, setStaticItems] = createSignal([]);
|
|
326
|
+
const [staticItems, setStaticItems] = createSignal([], { ownedWrite: true });
|
|
371
327
|
const staticItemMap = /* @__PURE__ */ new Map();
|
|
372
328
|
const sectionSelectionMap = /* @__PURE__ */ new Map();
|
|
373
329
|
const itemCloseMap = /* @__PURE__ */ new Map();
|
|
@@ -478,11 +434,14 @@ function Menu(props) {
|
|
|
478
434
|
get label() {
|
|
479
435
|
return ariaProps.label;
|
|
480
436
|
},
|
|
437
|
+
get autoFocus() {
|
|
438
|
+
return ariaProps.autoFocus ?? triggerContext?.menuProps.autoFocus;
|
|
439
|
+
},
|
|
481
440
|
get onAction() {
|
|
482
441
|
return handleAction;
|
|
483
442
|
},
|
|
484
443
|
get onClose() {
|
|
485
|
-
return stateProps.onClose ?? (() => triggerContext?.state.close());
|
|
444
|
+
return stateProps.onClose ?? triggerContext?.menuProps.onClose ?? (() => triggerContext?.state.close());
|
|
486
445
|
},
|
|
487
446
|
get shouldCloseOnSelect() {
|
|
488
447
|
return itemCloseRegistry.shouldCloseOnSelect(state.focusedKey()) ?? stateProps.shouldCloseOnSelect;
|
|
@@ -496,7 +455,7 @@ function Menu(props) {
|
|
|
496
455
|
get "aria-describedby"() {
|
|
497
456
|
return ariaProps["aria-describedby"];
|
|
498
457
|
}
|
|
499
|
-
}, state);
|
|
458
|
+
}, state, () => menuRef());
|
|
500
459
|
createScrollIntoViewOnFocus({
|
|
501
460
|
focusedKey: () => state.focusedKey(),
|
|
502
461
|
isActive: () => state.isFocused(),
|
|
@@ -528,7 +487,9 @@ function Menu(props) {
|
|
|
528
487
|
};
|
|
529
488
|
const cleanTriggerMenuProps = () => {
|
|
530
489
|
if (!triggerContext) return {};
|
|
531
|
-
const { ref: _ref2, ...rest } = triggerContext.menuProps;
|
|
490
|
+
const { ref: _ref2, autoFocus: _autoFocus, onClose: _onClose, "aria-labelledby": triggerLabelledBy, ...rest } = triggerContext.menuProps;
|
|
491
|
+
if (triggerLabelledBy && popoverTriggerContext?.trigger === "SubmenuTrigger") rest["aria-labelledby"] = triggerLabelledBy;
|
|
492
|
+
else if (!ariaProps.label && !ariaProps["aria-label"] && !ariaProps["aria-labelledby"]) rest["aria-labelledby"] = triggerLabelledBy;
|
|
532
493
|
return rest;
|
|
533
494
|
};
|
|
534
495
|
const cleanFocusProps = () => {
|
|
@@ -542,9 +503,8 @@ function Menu(props) {
|
|
|
542
503
|
};
|
|
543
504
|
const setResolvedMenuRef = (el) => {
|
|
544
505
|
setMenuRef(el);
|
|
545
|
-
assignRef(local.ref, el);
|
|
506
|
+
assignRef$1(local.ref, el);
|
|
546
507
|
};
|
|
547
|
-
const shouldRender = () => triggerContext ? triggerContext.state.isOpen() : true;
|
|
548
508
|
const parentCollectionRenderer = useCollectionRenderer();
|
|
549
509
|
const virtualizer = useVirtualizerContext();
|
|
550
510
|
const getItemNodes = createMemo(() => Array.from(state.collection()).filter((node) => node.type === "item"));
|
|
@@ -561,64 +521,54 @@ function Menu(props) {
|
|
|
561
521
|
const hooks = stateProps.dragAndDropHooks;
|
|
562
522
|
return Boolean(hooks?.useDroppableCollectionState && hooks.useDroppableCollection && (hooks.dropTargetDelegate || parentCollectionRenderer?.dropTargetDelegate || hooks.ListDropTargetDelegate));
|
|
563
523
|
});
|
|
564
|
-
const
|
|
524
|
+
const dragStateValue = createMemo(() => {
|
|
565
525
|
const hooks = stateProps.dragAndDropHooks;
|
|
566
526
|
return Boolean(hooks?.useDraggableCollectionState && hooks.useDraggableCollection);
|
|
567
|
-
})
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
527
|
+
})() ? stateProps.dragAndDropHooks?.useDraggableCollectionState?.({
|
|
528
|
+
items: flatItems(),
|
|
529
|
+
collection: state.collection(),
|
|
530
|
+
selectedKeys: state.selectionManager.selectedKeys,
|
|
531
|
+
isSelected: (key) => state.selectionManager.isSelected(key)
|
|
532
|
+
}) : void 0;
|
|
533
|
+
const dragState = () => dragStateValue;
|
|
534
|
+
const dropStateValue = hasDroppableDnd() ? stateProps.dragAndDropHooks?.useDroppableCollectionState?.({ get collection() {
|
|
535
|
+
return state.collection();
|
|
536
|
+
} }) : void 0;
|
|
537
|
+
const dropState = () => dropStateValue;
|
|
576
538
|
const persistedKeys = useDndPersistedKeys({ focusedKey: state.focusedKey }, stateProps.dragAndDropHooks, dropState(), state.collection());
|
|
577
539
|
const virtualRange = createMemo(() => {
|
|
578
540
|
if (!virtualizer || !parentCollectionRenderer?.isVirtualized || hasSections()) return null;
|
|
579
541
|
const dynamicItems = stateProps.items ?? [];
|
|
580
542
|
const baseRange = virtualizer.getVisibleRange(dynamicItems.length);
|
|
581
543
|
const itemNodes = getItemNodes();
|
|
582
|
-
const persistedIndexes = Array.from(persistedKeys()).map((key) => itemNodes.findIndex((node) => node.key === key)).filter((index) => index >= 0);
|
|
583
544
|
const dropTarget = dropState()?.target;
|
|
584
545
|
const normalizedDropKey = getNormalizedDropTargetKey(dropTarget, state.collection());
|
|
585
|
-
const
|
|
586
|
-
|
|
587
|
-
const forceIncludeIndexes = [
|
|
588
|
-
dropTarget?.type === "item" ? itemNodes.findIndex((node) => node.key === dropTarget.key) : -1,
|
|
589
|
-
normalizedDropKey != null ? itemNodes.findIndex((node) => node.key === normalizedDropKey) : -1,
|
|
590
|
-
dropTarget?.type === "item" ? -1 : focusedIndex
|
|
591
|
-
].filter((index) => index >= 0);
|
|
592
|
-
return mergePersistedKeysIntoVirtualRange(baseRange, persistedIndexes, dynamicItems.length, virtualizer, 80, {
|
|
546
|
+
const forceIncludeIndexes = [dropTarget?.type === "item" ? itemNodes.findIndex((node) => node.key === dropTarget.key) : -1, normalizedDropKey != null ? itemNodes.findIndex((node) => node.key === normalizedDropKey) : -1].filter((index) => index >= 0);
|
|
547
|
+
return mergePersistedKeysIntoVirtualRange(baseRange, [], dynamicItems.length, virtualizer, 80, {
|
|
593
548
|
forceIncludeIndexes,
|
|
594
549
|
forceIncludeMaxSpan: 320
|
|
595
550
|
});
|
|
596
551
|
});
|
|
552
|
+
const persistedOutsideIndexes = createMemo(() => {
|
|
553
|
+
const range = virtualRange();
|
|
554
|
+
if (!range) return [];
|
|
555
|
+
const itemNodes = getItemNodes();
|
|
556
|
+
const persistedIndexes = Array.from(persistedKeys()).map((key) => itemNodes.findIndex((node) => node.key === key)).filter((index) => index >= 0);
|
|
557
|
+
return indexesOutsideRange(range, persistedIndexes);
|
|
558
|
+
});
|
|
597
559
|
const visibleItems = createMemo(() => {
|
|
598
560
|
const range = virtualRange();
|
|
599
561
|
const items = stateProps.items ?? [];
|
|
600
562
|
if (!range) return items;
|
|
601
563
|
return items.slice(range.start, range.end);
|
|
602
564
|
});
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
const hooks = stateProps.dragAndDropHooks;
|
|
606
|
-
const activeDragState = dragState();
|
|
607
|
-
if (!hooks?.useDraggableCollection || !activeDragState) return;
|
|
608
|
-
hooks.useDraggableCollection({}, activeDragState, () => menuRef());
|
|
609
|
-
});
|
|
610
|
-
const droppableCollection = createMemo(() => {
|
|
565
|
+
if (stateProps.dragAndDropHooks?.useDraggableCollection && dragStateValue) stateProps.dragAndDropHooks.useDraggableCollection({}, dragStateValue, () => menuRef());
|
|
566
|
+
const droppableCollectionValue = (() => {
|
|
611
567
|
if (!hasDroppableDnd()) return void 0;
|
|
612
568
|
const hooks = stateProps.dragAndDropHooks;
|
|
613
|
-
const activeDropState =
|
|
569
|
+
const activeDropState = dropStateValue;
|
|
614
570
|
if (!hooks?.useDroppableCollection || !activeDropState) return void 0;
|
|
615
|
-
const resolveDirection = () =>
|
|
616
|
-
const menuEl = menuRef();
|
|
617
|
-
if (menuEl && typeof window !== "undefined" && typeof window.getComputedStyle === "function") {
|
|
618
|
-
if (window.getComputedStyle(menuEl).direction === "rtl") return "rtl";
|
|
619
|
-
}
|
|
620
|
-
return typeof document !== "undefined" && document.dir === "rtl" ? "rtl" : "ltr";
|
|
621
|
-
};
|
|
571
|
+
const resolveDirection = () => locale().direction;
|
|
622
572
|
const dropTargetDelegate = hooks.dropTargetDelegate ?? parentCollectionRenderer?.dropTargetDelegate ?? (hooks.ListDropTargetDelegate ? new hooks.ListDropTargetDelegate(() => state.collection(), () => menuRef(), {
|
|
623
573
|
layout: "stack",
|
|
624
574
|
orientation: "vertical",
|
|
@@ -636,7 +586,8 @@ function Menu(props) {
|
|
|
636
586
|
getKeyPageAbove: (key) => state.collection().getKeyBefore(key)
|
|
637
587
|
}
|
|
638
588
|
}, activeDropState, () => menuRef());
|
|
639
|
-
});
|
|
589
|
+
})();
|
|
590
|
+
const droppableCollection = () => droppableCollectionValue;
|
|
640
591
|
const isRootDropTarget = createMemo(() => {
|
|
641
592
|
return Boolean(dropState()?.target?.type === "root");
|
|
642
593
|
});
|
|
@@ -680,97 +631,197 @@ function Menu(props) {
|
|
|
680
631
|
renderItem: (item) => renderDynamicItem(item),
|
|
681
632
|
renderDropIndicator: (index, position) => dndDropIndicator(index, position) ?? parentCollectionRenderer?.renderDropIndicator?.(index, position)
|
|
682
633
|
}));
|
|
634
|
+
const CollectionRoot = useCollectionRoot();
|
|
683
635
|
const menuItemContextValue = createMemo(() => stateProps.shouldCloseOnSelect !== void 0 ? { closeOnSelect: stateProps.shouldCloseOnSelect } : {});
|
|
684
636
|
const menuListChildren = () => createComponent(SharedElementTransition, { get children() {
|
|
685
|
-
return memo(() =>
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
637
|
+
return [memo(() => {
|
|
638
|
+
return memo(() => {
|
|
639
|
+
return !!parentCollectionRenderer?.isVirtualized;
|
|
640
|
+
})() ? createComponent(CollectionRoot, {
|
|
641
|
+
get collection() {
|
|
642
|
+
return memo(() => {
|
|
643
|
+
return !!virtualRange();
|
|
644
|
+
})() ? stateProps.items ?? [] : [];
|
|
645
|
+
},
|
|
646
|
+
scrollRef: () => menuRef(),
|
|
647
|
+
get persistedKeys() {
|
|
648
|
+
return persistedKeys();
|
|
649
|
+
},
|
|
650
|
+
get children() {
|
|
651
|
+
return memo(() => {
|
|
652
|
+
return !!usesStaticChildren();
|
|
653
|
+
})() ? renderStaticChildren() : memo(() => {
|
|
654
|
+
return !!hasSections();
|
|
655
|
+
})() ? createComponent(For, {
|
|
656
|
+
get each() {
|
|
657
|
+
return sectionedRenderEntries();
|
|
658
|
+
},
|
|
659
|
+
children: (entry) => entry.type === "section" ? (() => {
|
|
660
|
+
var _el$ = getNextElement(_tmpl$2);
|
|
661
|
+
insert(_el$, createComponent(Section, {
|
|
662
|
+
class: "solidaria-Menu-section",
|
|
663
|
+
get children() {
|
|
664
|
+
return [memo(() => {
|
|
665
|
+
return memo(() => {
|
|
666
|
+
return entry.section.title != null;
|
|
667
|
+
})() && createComponent(Header, {
|
|
668
|
+
class: "solidaria-Menu-sectionHeader",
|
|
669
|
+
get children() {
|
|
670
|
+
return entry.section.title;
|
|
671
|
+
}
|
|
672
|
+
});
|
|
673
|
+
}), createComponent(Group, {
|
|
674
|
+
class: "solidaria-Menu-sectionGroup",
|
|
675
|
+
get children() {
|
|
676
|
+
var _el$2 = getNextElement(_tmpl$);
|
|
677
|
+
insert(_el$2, createComponent(For, {
|
|
678
|
+
get each() {
|
|
679
|
+
return entry.items;
|
|
680
|
+
},
|
|
681
|
+
children: (indexedItem) => renderCollectionDropSlots({
|
|
682
|
+
index: indexedItem.index,
|
|
683
|
+
lastIndex: getItemNodes().length - 1,
|
|
684
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
685
|
+
children: renderDynamicItem(indexedItem.item)
|
|
686
|
+
})
|
|
687
|
+
}));
|
|
688
|
+
effect(() => entry.section["aria-label"], (_v$) => {
|
|
689
|
+
setAttribute(_el$2, "aria-label", _v$);
|
|
690
|
+
});
|
|
691
|
+
return _el$2;
|
|
692
|
+
}
|
|
693
|
+
})];
|
|
694
|
+
}
|
|
695
|
+
}));
|
|
696
|
+
return _el$;
|
|
697
|
+
})() : renderCollectionDropSlots({
|
|
698
|
+
index: entry.item.index,
|
|
699
|
+
lastIndex: getItemNodes().length - 1,
|
|
700
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
701
|
+
children: renderDynamicItem(entry.item.item)
|
|
702
|
+
})
|
|
703
|
+
}) : [createComponent(For, {
|
|
704
|
+
get each() {
|
|
705
|
+
return visibleItems();
|
|
706
|
+
},
|
|
707
|
+
children: (item, index) => {
|
|
708
|
+
const itemIndex = () => (virtualRange()?.start ?? 0) + index();
|
|
709
|
+
return renderCollectionDropSlots({
|
|
710
|
+
index: itemIndex(),
|
|
711
|
+
lastIndex: getItemNodes().length - 1,
|
|
712
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
713
|
+
children: renderDynamicItem(item)
|
|
714
|
+
});
|
|
715
|
+
}
|
|
716
|
+
}), createComponent(For, {
|
|
717
|
+
get each() {
|
|
718
|
+
return persistedOutsideIndexes();
|
|
719
|
+
},
|
|
720
|
+
children: (index) => createComponent(PersistedVirtualItem, {
|
|
721
|
+
index,
|
|
705
722
|
get children() {
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
memo(() => collectionRenderer().renderDropIndicator?.(indexedItem.index, "before")),
|
|
713
|
-
memo(() => collectionRenderer().renderDropIndicator?.(indexedItem.index, "on")),
|
|
714
|
-
memo(() => renderDynamicItem(indexedItem.item)),
|
|
715
|
-
memo(() => collectionRenderer().renderDropIndicator?.(indexedItem.index, "after"))
|
|
716
|
-
]
|
|
717
|
-
}));
|
|
718
|
-
effect(() => setAttribute(_el$5, "aria-label", entry.section["aria-label"]));
|
|
719
|
-
return _el$5;
|
|
723
|
+
return renderCollectionDropSlots({
|
|
724
|
+
index,
|
|
725
|
+
lastIndex: getItemNodes().length - 1,
|
|
726
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
727
|
+
children: renderDynamicItem((stateProps.items ?? [])[index])
|
|
728
|
+
});
|
|
720
729
|
}
|
|
721
|
-
})
|
|
722
|
-
}
|
|
723
|
-
}
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
730
|
+
})
|
|
731
|
+
})];
|
|
732
|
+
}
|
|
733
|
+
}) : memo(() => {
|
|
734
|
+
return !!usesStaticChildren();
|
|
735
|
+
})() ? renderStaticChildren() : memo(() => {
|
|
736
|
+
return !!hasSections();
|
|
737
|
+
})() ? createComponent(For, {
|
|
738
|
+
get each() {
|
|
739
|
+
return sectionedRenderEntries();
|
|
740
|
+
},
|
|
741
|
+
children: (entry) => entry.type === "section" ? (() => {
|
|
742
|
+
var _el$3 = getNextElement(_tmpl$2);
|
|
743
|
+
insert(_el$3, createComponent(Section, {
|
|
744
|
+
class: "solidaria-Menu-section",
|
|
745
|
+
get children() {
|
|
746
|
+
return [memo(() => {
|
|
747
|
+
return memo(() => {
|
|
748
|
+
return entry.section.title != null;
|
|
749
|
+
})() && createComponent(Header, {
|
|
750
|
+
class: "solidaria-Menu-sectionHeader",
|
|
751
|
+
get children() {
|
|
752
|
+
return entry.section.title;
|
|
753
|
+
}
|
|
754
|
+
});
|
|
755
|
+
}), createComponent(Group, {
|
|
756
|
+
class: "solidaria-Menu-sectionGroup",
|
|
757
|
+
get children() {
|
|
758
|
+
var _el$4 = getNextElement(_tmpl$);
|
|
759
|
+
insert(_el$4, createComponent(For, {
|
|
760
|
+
get each() {
|
|
761
|
+
return entry.items;
|
|
762
|
+
},
|
|
763
|
+
children: (indexedItem) => renderCollectionDropSlots({
|
|
764
|
+
index: indexedItem.index,
|
|
765
|
+
lastIndex: getItemNodes().length - 1,
|
|
766
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
767
|
+
children: renderDynamicItem(indexedItem.item)
|
|
768
|
+
})
|
|
769
|
+
}));
|
|
770
|
+
effect(() => entry.section["aria-label"], (_v$) => {
|
|
771
|
+
setAttribute(_el$4, "aria-label", _v$);
|
|
772
|
+
});
|
|
773
|
+
return _el$4;
|
|
774
|
+
}
|
|
775
|
+
})];
|
|
776
|
+
}
|
|
777
|
+
}));
|
|
778
|
+
return _el$3;
|
|
779
|
+
})() : renderCollectionDropSlots({
|
|
780
|
+
index: entry.item.index,
|
|
781
|
+
lastIndex: getItemNodes().length - 1,
|
|
782
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
783
|
+
children: renderDynamicItem(entry.item.item)
|
|
784
|
+
})
|
|
785
|
+
}) : createComponent(For, {
|
|
738
786
|
get each() {
|
|
739
787
|
return visibleItems();
|
|
740
788
|
},
|
|
741
789
|
children: (item, index) => {
|
|
742
790
|
const itemIndex = () => (virtualRange()?.start ?? 0) + index();
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
memo(() => renderDynamicItem(item)),
|
|
750
|
-
memo(afterIndicator)
|
|
751
|
-
];
|
|
791
|
+
return renderCollectionDropSlots({
|
|
792
|
+
index: itemIndex(),
|
|
793
|
+
lastIndex: getItemNodes().length - 1,
|
|
794
|
+
renderDropIndicator: (i, position) => collectionRenderer().renderDropIndicator?.(i, position),
|
|
795
|
+
children: renderDynamicItem(item)
|
|
796
|
+
});
|
|
752
797
|
}
|
|
753
|
-
})
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
798
|
+
});
|
|
799
|
+
}), memo(() => {
|
|
800
|
+
return memo(() => {
|
|
801
|
+
return !!(state.collection().size === 0 && local.renderEmptyState);
|
|
802
|
+
})() ? (() => {
|
|
803
|
+
var _el$5 = getNextElement(_tmpl$3);
|
|
804
|
+
var _el$6 = _el$5.firstChild;
|
|
805
|
+
insert(_el$6, scope(() => {
|
|
806
|
+
return local.renderEmptyState();
|
|
807
|
+
}));
|
|
808
|
+
return _el$5;
|
|
809
|
+
})() : null;
|
|
810
|
+
})];
|
|
760
811
|
} });
|
|
761
812
|
const menuListProps = () => ({
|
|
762
813
|
ref: setResolvedMenuRef,
|
|
763
|
-
...mergeProps$
|
|
814
|
+
...mergeProps$1(domProps(), cleanMenuProps(), cleanTriggerMenuProps(), cleanFocusProps(), droppableCollection()?.collectionProps ?? {}),
|
|
764
815
|
class: renderProps.class(),
|
|
765
816
|
style: renderProps.style(),
|
|
766
817
|
slot: local.slot,
|
|
767
|
-
"data-focused": state.isFocused()
|
|
768
|
-
"data-disabled": resolveDisabled()
|
|
769
|
-
"data-empty": state.collection().size === 0
|
|
770
|
-
"data-drop-target": isRootDropTarget()
|
|
818
|
+
"data-focused": dataAttr(state.isFocused()),
|
|
819
|
+
"data-disabled": dataAttr(resolveDisabled()),
|
|
820
|
+
"data-empty": dataAttr(state.collection().size === 0),
|
|
821
|
+
"data-drop-target": dataAttr(isRootDropTarget()),
|
|
771
822
|
children: menuListChildren()
|
|
772
823
|
});
|
|
773
|
-
const menuContent = () => createComponent(MenuContext
|
|
824
|
+
const menuContent = () => createComponent(MenuContext, {
|
|
774
825
|
get value() {
|
|
775
826
|
return {
|
|
776
827
|
state,
|
|
@@ -781,26 +832,26 @@ function Menu(props) {
|
|
|
781
832
|
};
|
|
782
833
|
},
|
|
783
834
|
get children() {
|
|
784
|
-
return createComponent(MenuStateContext
|
|
835
|
+
return createComponent(MenuStateContext, {
|
|
785
836
|
value: state,
|
|
786
837
|
get children() {
|
|
787
|
-
return createComponent(MenuSectionSelectionRegistryContext
|
|
838
|
+
return createComponent(MenuSectionSelectionRegistryContext, {
|
|
788
839
|
value: sectionSelectionRegistry,
|
|
789
840
|
get children() {
|
|
790
|
-
return createComponent(MenuItemCloseRegistryContext
|
|
841
|
+
return createComponent(MenuItemCloseRegistryContext, {
|
|
791
842
|
value: itemCloseRegistry,
|
|
792
843
|
get children() {
|
|
793
|
-
return createComponent(StaticMenuCollectionContext
|
|
844
|
+
return createComponent(StaticMenuCollectionContext, {
|
|
794
845
|
get value() {
|
|
795
846
|
return usesStaticChildren() ? staticCollectionContext : null;
|
|
796
847
|
},
|
|
797
848
|
get children() {
|
|
798
|
-
return createComponent(MenuItemContext
|
|
849
|
+
return createComponent(MenuItemContext, {
|
|
799
850
|
get value() {
|
|
800
851
|
return menuItemContextValue();
|
|
801
852
|
},
|
|
802
853
|
get children() {
|
|
803
|
-
return createComponent(CollectionRendererContext
|
|
854
|
+
return createComponent(CollectionRendererContext, {
|
|
804
855
|
get value() {
|
|
805
856
|
return collectionRenderer();
|
|
806
857
|
},
|
|
@@ -810,42 +861,54 @@ function Menu(props) {
|
|
|
810
861
|
return ariaProps.label;
|
|
811
862
|
},
|
|
812
863
|
get children() {
|
|
813
|
-
var _el$
|
|
814
|
-
spread(_el$
|
|
815
|
-
insert(_el$
|
|
864
|
+
var _el$7 = getNextElement(_tmpl$4);
|
|
865
|
+
spread(_el$7, cleanLabelProps, true);
|
|
866
|
+
insert(_el$7, () => {
|
|
867
|
+
return ariaProps.label;
|
|
868
|
+
});
|
|
816
869
|
runHydrationEvents();
|
|
817
|
-
return _el$
|
|
870
|
+
return _el$7;
|
|
818
871
|
}
|
|
819
|
-
}), memo(() =>
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
872
|
+
}), memo(() => {
|
|
873
|
+
return memo(() => {
|
|
874
|
+
return !!local.render;
|
|
875
|
+
})() ? local.render(menuListProps(), renderValues()) : (() => {
|
|
876
|
+
var _el$8 = getNextElement(_tmpl$5);
|
|
877
|
+
ref(() => {
|
|
878
|
+
return setResolvedMenuRef;
|
|
879
|
+
}, _el$8);
|
|
880
|
+
spread(_el$8, [() => {
|
|
881
|
+
return mergeProps$1(domProps(), cleanMenuProps(), cleanTriggerMenuProps(), cleanFocusProps(), droppableCollection()?.collectionProps ?? {});
|
|
882
|
+
}, {
|
|
883
|
+
get "class"() {
|
|
884
|
+
return renderProps.class();
|
|
885
|
+
},
|
|
886
|
+
get style() {
|
|
887
|
+
return renderProps.style();
|
|
888
|
+
},
|
|
889
|
+
get slot() {
|
|
890
|
+
return local.slot;
|
|
891
|
+
},
|
|
892
|
+
get "data-focused"() {
|
|
893
|
+
return dataAttr(state.isFocused());
|
|
894
|
+
},
|
|
895
|
+
get "data-disabled"() {
|
|
896
|
+
return dataAttr(resolveDisabled());
|
|
897
|
+
},
|
|
898
|
+
get "data-empty"() {
|
|
899
|
+
return dataAttr(state.collection().size === 0);
|
|
900
|
+
},
|
|
901
|
+
get "data-drop-target"() {
|
|
902
|
+
return dataAttr(isRootDropTarget());
|
|
903
|
+
}
|
|
904
|
+
}], true);
|
|
905
|
+
insert(_el$8, scope(() => {
|
|
906
|
+
return menuListChildren();
|
|
907
|
+
}));
|
|
908
|
+
runHydrationEvents();
|
|
909
|
+
return _el$8;
|
|
910
|
+
})();
|
|
911
|
+
})];
|
|
849
912
|
}
|
|
850
913
|
});
|
|
851
914
|
}
|
|
@@ -860,24 +923,18 @@ function Menu(props) {
|
|
|
860
923
|
});
|
|
861
924
|
}
|
|
862
925
|
});
|
|
926
|
+
const shouldRender = () => overlayContext != null || !triggerContext ? true : triggerContext.state.isOpen();
|
|
863
927
|
return createComponent(Show, {
|
|
864
928
|
get when() {
|
|
865
929
|
return shouldRender();
|
|
866
930
|
},
|
|
867
931
|
get children() {
|
|
868
|
-
return createComponent(
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
},
|
|
932
|
+
return overlayContext != null || !triggerContext ? createComponent(FocusScope, { get children() {
|
|
933
|
+
return menuContent();
|
|
934
|
+
} }) : createComponent(FocusScope, {
|
|
935
|
+
restoreFocus: true,
|
|
873
936
|
get children() {
|
|
874
|
-
return
|
|
875
|
-
restoreFocus: true,
|
|
876
|
-
autoFocus: true,
|
|
877
|
-
get children() {
|
|
878
|
-
return menuContent();
|
|
879
|
-
}
|
|
880
|
-
});
|
|
937
|
+
return menuContent();
|
|
881
938
|
}
|
|
882
939
|
});
|
|
883
940
|
}
|
|
@@ -914,7 +971,7 @@ function MenuItem(props) {
|
|
|
914
971
|
const sectionSelection = useContext(MenuSectionSelectionContext);
|
|
915
972
|
const sectionSelectionRegistry = useContext(MenuSectionSelectionRegistryContext);
|
|
916
973
|
const itemCloseRegistry = useContext(MenuItemCloseRegistryContext);
|
|
917
|
-
const [ref, setRef] = createSignal(null);
|
|
974
|
+
const [ref$1, setRef] = createSignal(null);
|
|
918
975
|
const contextProps = () => itemContext?.props?.() ?? {};
|
|
919
976
|
const combinedOnAction = () => {
|
|
920
977
|
local.onAction?.();
|
|
@@ -935,29 +992,34 @@ function MenuItem(props) {
|
|
|
935
992
|
}
|
|
936
993
|
};
|
|
937
994
|
createEffect(() => {
|
|
938
|
-
if (!staticCollection) return;
|
|
939
|
-
|
|
940
|
-
registeredStaticKey = local.id;
|
|
941
|
-
staticCollection.registerItem({
|
|
995
|
+
if (!staticCollection) return null;
|
|
996
|
+
return {
|
|
942
997
|
id: local.id,
|
|
943
998
|
textValue: local.textValue ?? ariaProps["aria-label"],
|
|
944
999
|
isDisabled: resolveBoolean(ariaProps.isDisabled) || (sectionSelection?.isDisabled(local.id) ?? false)
|
|
945
|
-
}
|
|
1000
|
+
};
|
|
1001
|
+
}, (item) => {
|
|
1002
|
+
if (!staticCollection || !item) return;
|
|
1003
|
+
if (registeredStaticKey != null && registeredStaticKey !== item.id) staticCollection.unregisterItem(registeredStaticKey);
|
|
1004
|
+
registeredStaticKey = item.id;
|
|
1005
|
+
staticCollection.registerItem(item);
|
|
946
1006
|
});
|
|
947
1007
|
onCleanup(() => {
|
|
948
1008
|
if (registeredStaticKey != null) staticCollection?.unregisterItem(registeredStaticKey);
|
|
949
1009
|
});
|
|
950
|
-
createEffect(() => {
|
|
951
|
-
|
|
1010
|
+
createEffect(() => ({
|
|
1011
|
+
selection: activeSectionSelection(),
|
|
1012
|
+
id: local.id
|
|
1013
|
+
}), ({ selection, id }) => {
|
|
952
1014
|
if (!sectionSelectionRegistry || !selection) {
|
|
953
1015
|
unregisterSectionSelection();
|
|
954
1016
|
return;
|
|
955
1017
|
}
|
|
956
|
-
if (registeredSectionSelectionKey ===
|
|
1018
|
+
if (registeredSectionSelectionKey === id && registeredSectionSelection === selection) return;
|
|
957
1019
|
unregisterSectionSelection();
|
|
958
|
-
registeredSectionSelectionKey =
|
|
1020
|
+
registeredSectionSelectionKey = id;
|
|
959
1021
|
registeredSectionSelection = selection;
|
|
960
|
-
sectionSelectionRegistry.registerItem(
|
|
1022
|
+
sectionSelectionRegistry.registerItem(id, selection);
|
|
961
1023
|
});
|
|
962
1024
|
onCleanup(unregisterSectionSelection);
|
|
963
1025
|
const unregisterItemClose = () => {
|
|
@@ -967,16 +1029,20 @@ function MenuItem(props) {
|
|
|
967
1029
|
registeredCloseAccessor = null;
|
|
968
1030
|
}
|
|
969
1031
|
};
|
|
970
|
-
createEffect(() => {
|
|
971
|
-
|
|
1032
|
+
createEffect(() => ({
|
|
1033
|
+
id: local.id,
|
|
1034
|
+
shouldClose: itemCloseOnSelect,
|
|
1035
|
+
registry: itemCloseRegistry
|
|
1036
|
+
}), ({ id, shouldClose, registry }) => {
|
|
1037
|
+
if (!registry) {
|
|
972
1038
|
unregisterItemClose();
|
|
973
1039
|
return;
|
|
974
1040
|
}
|
|
975
|
-
if (registeredCloseKey ===
|
|
1041
|
+
if (registeredCloseKey === id && registeredCloseAccessor === shouldClose) return;
|
|
976
1042
|
unregisterItemClose();
|
|
977
|
-
registeredCloseKey =
|
|
978
|
-
registeredCloseAccessor =
|
|
979
|
-
|
|
1043
|
+
registeredCloseKey = id;
|
|
1044
|
+
registeredCloseAccessor = shouldClose;
|
|
1045
|
+
registry.registerItem(id, shouldClose);
|
|
980
1046
|
});
|
|
981
1047
|
onCleanup(unregisterItemClose);
|
|
982
1048
|
const itemAria = createMenuItem({
|
|
@@ -1017,7 +1083,7 @@ function MenuItem(props) {
|
|
|
1017
1083
|
get download() {
|
|
1018
1084
|
return local.download;
|
|
1019
1085
|
}
|
|
1020
|
-
}, state, () => ref());
|
|
1086
|
+
}, state, () => ref$1());
|
|
1021
1087
|
const { isHovered, hoverProps } = createHover({
|
|
1022
1088
|
get isDisabled() {
|
|
1023
1089
|
return itemAria.isDisabled();
|
|
@@ -1037,7 +1103,7 @@ function MenuItem(props) {
|
|
|
1037
1103
|
isHovered: isHovered(),
|
|
1038
1104
|
isDisabled: itemAria.isDisabled(),
|
|
1039
1105
|
hasSubmenu: Boolean(contextProps()["aria-haspopup"]),
|
|
1040
|
-
isOpen: contextProps()["aria-expanded"]
|
|
1106
|
+
isOpen: isAriaTrue(contextProps()["aria-expanded"]),
|
|
1041
1107
|
descriptionProps: itemAria.descriptionProps,
|
|
1042
1108
|
keyboardShortcutProps: itemAria.keyboardShortcutProps
|
|
1043
1109
|
};
|
|
@@ -1077,7 +1143,7 @@ function MenuItem(props) {
|
|
|
1077
1143
|
});
|
|
1078
1144
|
const droppableItem = createMemo(() => {
|
|
1079
1145
|
if (!menuContext?.dragAndDropHooks?.useDroppableItem || !menuContext.dropState) return void 0;
|
|
1080
|
-
return menuContext.dragAndDropHooks.useDroppableItem({ key: local.id }, menuContext.dropState, () => ref());
|
|
1146
|
+
return menuContext.dragAndDropHooks.useDroppableItem({ key: local.id }, menuContext.dropState, () => ref$1());
|
|
1081
1147
|
});
|
|
1082
1148
|
const isLink = () => !!local.href;
|
|
1083
1149
|
const cleanItemPropsForLink = () => {
|
|
@@ -1096,40 +1162,46 @@ function MenuItem(props) {
|
|
|
1096
1162
|
const dataAttrs = () => {
|
|
1097
1163
|
const selection = activeSectionSelection();
|
|
1098
1164
|
return {
|
|
1099
|
-
"data-focused": itemAria.isFocused()
|
|
1100
|
-
"data-focus-visible": itemAria.isFocusVisible()
|
|
1101
|
-
"data-pressed": itemAria.isPressed()
|
|
1102
|
-
"data-hovered": isHovered()
|
|
1103
|
-
"data-disabled": itemAria.isDisabled()
|
|
1104
|
-
"data-selected": (selection?.isSelected(local.id) ?? itemAria.isSelected())
|
|
1105
|
-
"data-has-submenu": Boolean(contextProps()["aria-haspopup"])
|
|
1106
|
-
"data-open": contextProps()["aria-expanded"]
|
|
1107
|
-
"data-dragging": draggableItem()?.isDragging
|
|
1108
|
-
"data-drop-target": droppableItem()?.isDropTarget
|
|
1165
|
+
"data-focused": dataAttr(itemAria.isFocused()),
|
|
1166
|
+
"data-focus-visible": dataAttr(itemAria.isFocusVisible()),
|
|
1167
|
+
"data-pressed": dataAttr(itemAria.isPressed()),
|
|
1168
|
+
"data-hovered": dataAttr(isHovered()),
|
|
1169
|
+
"data-disabled": dataAttr(itemAria.isDisabled()),
|
|
1170
|
+
"data-selected": dataAttr(selection?.isSelected(local.id) ?? itemAria.isSelected()),
|
|
1171
|
+
"data-has-submenu": dataAttr(Boolean(contextProps()["aria-haspopup"])),
|
|
1172
|
+
"data-open": dataAttr(isAriaTrue(contextProps()["aria-expanded"])),
|
|
1173
|
+
"data-dragging": dataAttr(!!draggableItem()?.isDragging),
|
|
1174
|
+
"data-drop-target": dataAttr(!!droppableItem()?.isDropTarget)
|
|
1109
1175
|
};
|
|
1110
1176
|
};
|
|
1111
1177
|
const childContent = () => hasPrimitiveLabel() ? (() => {
|
|
1112
|
-
var _el$
|
|
1113
|
-
spread(_el$
|
|
1114
|
-
|
|
1178
|
+
var _el$9 = getNextElement(_tmpl$4);
|
|
1179
|
+
spread(_el$9, () => {
|
|
1180
|
+
return itemAria.labelProps;
|
|
1181
|
+
}, true);
|
|
1182
|
+
insert(_el$9, scope(() => {
|
|
1183
|
+
return renderProps.renderChildren();
|
|
1184
|
+
}));
|
|
1115
1185
|
runHydrationEvents();
|
|
1116
|
-
return _el$
|
|
1186
|
+
return _el$9;
|
|
1117
1187
|
})() : renderProps.renderChildren();
|
|
1118
1188
|
const setResolvedItemRef = (el) => {
|
|
1119
1189
|
setRef(el);
|
|
1120
1190
|
itemContext?.setItemRef?.(el);
|
|
1121
|
-
if (el) assignRef(local.ref, el);
|
|
1191
|
+
if (el) assignRef$1(local.ref, el);
|
|
1192
|
+
const dragRef = (draggableItem()?.dragProps)?.ref;
|
|
1193
|
+
if (el && typeof dragRef === "function") dragRef(el);
|
|
1122
1194
|
};
|
|
1123
1195
|
const menuItemProps = () => ({
|
|
1124
1196
|
ref: setResolvedItemRef,
|
|
1125
|
-
...mergeProps$
|
|
1197
|
+
...mergeProps$1(cleanItemProps(), contextProps(), domProps(), cleanHoverProps(), draggableItem()?.dragProps ?? {}, droppableItem()?.dropProps ?? {}),
|
|
1126
1198
|
class: renderProps.class(),
|
|
1127
1199
|
style: renderProps.style(),
|
|
1128
1200
|
...dataAttrs(),
|
|
1129
1201
|
children: childContent()
|
|
1130
1202
|
});
|
|
1131
1203
|
const linkMenuItemProps = () => ({
|
|
1132
|
-
...mergeProps$
|
|
1204
|
+
...mergeProps$1(cleanItemPropsForLink(), contextProps(), domProps(), cleanHoverProps(), linkDomProps(), draggableItem()?.dragProps ?? {}, droppableItem()?.dropProps ?? {}),
|
|
1133
1205
|
class: renderProps.class(),
|
|
1134
1206
|
style: renderProps.style(),
|
|
1135
1207
|
...dataAttrs(),
|
|
@@ -1141,45 +1213,58 @@ function MenuItem(props) {
|
|
|
1141
1213
|
return isLink();
|
|
1142
1214
|
},
|
|
1143
1215
|
get fallback() {
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1216
|
+
var _el$10 = getNextElement(_tmpl$5);
|
|
1217
|
+
ref(() => {
|
|
1218
|
+
return setResolvedItemRef;
|
|
1219
|
+
}, _el$10);
|
|
1220
|
+
spread(_el$10, [
|
|
1221
|
+
() => {
|
|
1222
|
+
return mergeProps$1(cleanItemProps(), contextProps(), domProps(), cleanHoverProps(), draggableItem()?.dragProps ?? {}, droppableItem()?.dropProps ?? {});
|
|
1223
|
+
},
|
|
1224
|
+
{
|
|
1225
|
+
get "class"() {
|
|
1153
1226
|
return renderProps.class();
|
|
1154
1227
|
},
|
|
1155
1228
|
get style() {
|
|
1156
1229
|
return renderProps.style();
|
|
1157
1230
|
}
|
|
1158
|
-
},
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1231
|
+
},
|
|
1232
|
+
dataAttrs
|
|
1233
|
+
], true);
|
|
1234
|
+
insert(_el$10, scope(() => {
|
|
1235
|
+
return childContent();
|
|
1236
|
+
}));
|
|
1237
|
+
runHydrationEvents();
|
|
1238
|
+
return _el$10;
|
|
1163
1239
|
},
|
|
1164
1240
|
get children() {
|
|
1165
|
-
return memo(() =>
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
}, _el$
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1241
|
+
return memo(() => {
|
|
1242
|
+
return !!local.render;
|
|
1243
|
+
})() ? local.render(linkMenuItemProps(), renderValues()) : (() => {
|
|
1244
|
+
var _el$11 = getNextElement(_tmpl$6);
|
|
1245
|
+
ref(() => {
|
|
1246
|
+
return setResolvedItemRef;
|
|
1247
|
+
}, _el$11);
|
|
1248
|
+
claimElement(_el$11);
|
|
1249
|
+
spread(_el$11, [
|
|
1250
|
+
() => {
|
|
1251
|
+
return mergeProps$1(cleanItemPropsForLink(), contextProps(), domProps(), cleanHoverProps(), linkDomProps(), draggableItem()?.dragProps ?? {}, droppableItem()?.dropProps ?? {});
|
|
1175
1252
|
},
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1253
|
+
{
|
|
1254
|
+
get "class"() {
|
|
1255
|
+
return renderProps.class();
|
|
1256
|
+
},
|
|
1257
|
+
get style() {
|
|
1258
|
+
return renderProps.style();
|
|
1259
|
+
}
|
|
1260
|
+
},
|
|
1261
|
+
dataAttrs
|
|
1262
|
+
], true);
|
|
1263
|
+
insert(_el$11, scope(() => {
|
|
1264
|
+
return childContent();
|
|
1265
|
+
}));
|
|
1181
1266
|
runHydrationEvents();
|
|
1182
|
-
return _el$
|
|
1267
|
+
return _el$11;
|
|
1183
1268
|
})();
|
|
1184
1269
|
}
|
|
1185
1270
|
});
|
|
@@ -1240,15 +1325,109 @@ function MenuSection(props) {
|
|
|
1240
1325
|
return selectionProps.shouldCloseOnSelect;
|
|
1241
1326
|
}
|
|
1242
1327
|
};
|
|
1243
|
-
return createComponent(MenuSectionSelectionContext
|
|
1328
|
+
return createComponent(MenuSectionSelectionContext, {
|
|
1244
1329
|
value: sectionSelection,
|
|
1245
1330
|
get children() {
|
|
1246
1331
|
return createComponent(Section, sectionProps);
|
|
1247
1332
|
}
|
|
1248
1333
|
});
|
|
1249
1334
|
}
|
|
1335
|
+
/**
|
|
1336
|
+
* Load more sentinel item for menu collections.
|
|
1337
|
+
* Port of RAC `MenuLoadMoreItem` (`react-aria-components/src/Menu.tsx`).
|
|
1338
|
+
*/
|
|
1339
|
+
function MenuLoadMoreItem(props) {
|
|
1340
|
+
const state = useContext(MenuStateContext);
|
|
1341
|
+
const [sentinel, setSentinel] = createSignal(null);
|
|
1342
|
+
const [collectionEpoch, setCollectionEpoch] = createSignal(0);
|
|
1343
|
+
let seenCollectionSize;
|
|
1344
|
+
const [local, domProps] = splitProps(props, [
|
|
1345
|
+
"onLoadMore",
|
|
1346
|
+
"isLoading",
|
|
1347
|
+
"scrollOffset",
|
|
1348
|
+
"children",
|
|
1349
|
+
"class",
|
|
1350
|
+
"style",
|
|
1351
|
+
"ref",
|
|
1352
|
+
"slot"
|
|
1353
|
+
]);
|
|
1354
|
+
const scrollOffsetValue = createMemo(() => local.scrollOffset ?? 1);
|
|
1355
|
+
createEffect(() => state?.collection()?.size ?? 0, (size) => {
|
|
1356
|
+
if (seenCollectionSize === void 0 || seenCollectionSize === 0) {
|
|
1357
|
+
seenCollectionSize = size;
|
|
1358
|
+
return;
|
|
1359
|
+
}
|
|
1360
|
+
if (size !== seenCollectionSize) {
|
|
1361
|
+
seenCollectionSize = size;
|
|
1362
|
+
setCollectionEpoch((n) => n + 1);
|
|
1363
|
+
}
|
|
1364
|
+
});
|
|
1365
|
+
createEffect(() => ({
|
|
1366
|
+
current: sentinel(),
|
|
1367
|
+
scrollOffset: scrollOffsetValue(),
|
|
1368
|
+
epoch: collectionEpoch()
|
|
1369
|
+
}), ({ current, scrollOffset }) => {
|
|
1370
|
+
if (!current || typeof IntersectionObserver !== "function") return;
|
|
1371
|
+
const onLoadMore = local.onLoadMore;
|
|
1372
|
+
const margin = 100 * scrollOffset;
|
|
1373
|
+
const rootMargin = `0px ${margin}% ${margin}% ${margin}%`;
|
|
1374
|
+
const observer = new IntersectionObserver((entries) => {
|
|
1375
|
+
for (const entry of entries) if (entry.isIntersecting && onLoadMore) onLoadMore();
|
|
1376
|
+
}, { rootMargin });
|
|
1377
|
+
observer.observe(current);
|
|
1378
|
+
return () => observer.disconnect();
|
|
1379
|
+
});
|
|
1380
|
+
const isLoading = () => !!local.isLoading;
|
|
1381
|
+
const renderProps = useRenderProps({
|
|
1382
|
+
get children() {
|
|
1383
|
+
return local.children;
|
|
1384
|
+
},
|
|
1385
|
+
class: local.class,
|
|
1386
|
+
style: local.style,
|
|
1387
|
+
defaultClassName: "solidaria-Menu-loadMore"
|
|
1388
|
+
}, () => ({ isLoading: isLoading() }));
|
|
1389
|
+
return [(() => {
|
|
1390
|
+
var _el$12 = getNextElement(_tmpl$7);
|
|
1391
|
+
var _el$13 = _el$12.firstChild;
|
|
1392
|
+
ref(() => {
|
|
1393
|
+
return setSentinel;
|
|
1394
|
+
}, _el$13);
|
|
1395
|
+
return _el$12;
|
|
1396
|
+
})(), createComponent(Show, {
|
|
1397
|
+
get when() {
|
|
1398
|
+
return memo(() => {
|
|
1399
|
+
return !!isLoading();
|
|
1400
|
+
})() ? local.children : isLoading();
|
|
1401
|
+
},
|
|
1402
|
+
get children() {
|
|
1403
|
+
var _el$14 = getNextElement(_tmpl$5);
|
|
1404
|
+
ref(() => {
|
|
1405
|
+
return (el) => assignRef$1(local.ref, el);
|
|
1406
|
+
}, _el$14);
|
|
1407
|
+
spread(_el$14, [() => {
|
|
1408
|
+
return filterDOMProps(domProps, { global: true });
|
|
1409
|
+
}, {
|
|
1410
|
+
role: "menuitem",
|
|
1411
|
+
tabindex: -1,
|
|
1412
|
+
get "class"() {
|
|
1413
|
+
return renderProps.class();
|
|
1414
|
+
},
|
|
1415
|
+
get style() {
|
|
1416
|
+
return renderProps.style();
|
|
1417
|
+
},
|
|
1418
|
+
"data-loading": true
|
|
1419
|
+
}], true);
|
|
1420
|
+
insert(_el$14, scope(() => {
|
|
1421
|
+
return renderProps.renderChildren();
|
|
1422
|
+
}));
|
|
1423
|
+
runHydrationEvents();
|
|
1424
|
+
return _el$14;
|
|
1425
|
+
}
|
|
1426
|
+
})];
|
|
1427
|
+
}
|
|
1250
1428
|
Menu.Item = MenuItem;
|
|
1429
|
+
Menu.LoadMoreItem = MenuLoadMoreItem;
|
|
1251
1430
|
//#endregion
|
|
1252
|
-
export { Menu,
|
|
1431
|
+
export { Menu, MenuContext, MenuItem, MenuLoadMoreItem, MenuSection, MenuStateContext, MenuTrigger, MenuTriggerContext, RootMenuTriggerStateContext, SubmenuTrigger };
|
|
1253
1432
|
|
|
1254
1433
|
//# sourceMappingURL=Menu.js.map
|