@solid2-aria/components 0.0.0-stage → 0.0.1
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 +21 -0
- package/README.md +58 -2
- package/dist/LICENSES/Apache-2.0.txt +201 -0
- package/dist/LICENSES/react-spectrum-NOTICE.txt +242 -0
- package/dist/NOTICE.txt +636 -0
- package/dist/browser/autocomplete.d.ts +35 -0
- package/dist/browser/autocomplete.js +69 -0
- package/dist/browser/autocomplete.js.map +1 -0
- package/dist/browser/breadcrumbs.d.ts +71 -0
- package/dist/browser/breadcrumbs.js +121 -0
- package/dist/browser/breadcrumbs.js.map +1 -0
- package/dist/browser/button.d.ts +36 -0
- package/dist/browser/button.js +156 -0
- package/dist/browser/button.js.map +1 -0
- package/dist/browser/calendar.d.ts +103 -0
- package/dist/browser/calendar.js +581 -0
- package/dist/browser/calendar.js.map +1 -0
- package/dist/browser/checkbox.d.ts +67 -0
- package/dist/browser/checkbox.js +345 -0
- package/dist/browser/checkbox.js.map +1 -0
- package/dist/browser/collection-dnd.d.ts +56 -0
- package/dist/browser/collection-dnd.js +156 -0
- package/dist/browser/collection-dnd.js.map +1 -0
- package/dist/browser/collection.d.ts +153 -0
- package/dist/browser/collection.js +106 -0
- package/dist/browser/collection.js.map +1 -0
- package/dist/browser/color-area.d.ts +21 -0
- package/dist/browser/color-area.js +94 -0
- package/dist/browser/color-area.js.map +1 -0
- package/dist/browser/color-field.d.ts +39 -0
- package/dist/browser/color-field.js +232 -0
- package/dist/browser/color-field.js.map +1 -0
- package/dist/browser/color-picker.d.ts +30 -0
- package/dist/browser/color-picker.js +84 -0
- package/dist/browser/color-picker.js.map +1 -0
- package/dist/browser/color-slider.d.ts +23 -0
- package/dist/browser/color-slider.js +132 -0
- package/dist/browser/color-slider.js.map +1 -0
- package/dist/browser/color-swatch-picker.d.ts +29 -0
- package/dist/browser/color-swatch-picker.js +131 -0
- package/dist/browser/color-swatch-picker.js.map +1 -0
- package/dist/browser/color-swatch.d.ts +19 -0
- package/dist/browser/color-swatch.js +42 -0
- package/dist/browser/color-swatch.js.map +1 -0
- package/dist/browser/color-thumb.d.ts +42 -0
- package/dist/browser/color-thumb.js +114 -0
- package/dist/browser/color-thumb.js.map +1 -0
- package/dist/browser/color-wheel.d.ts +29 -0
- package/dist/browser/color-wheel.js +109 -0
- package/dist/browser/color-wheel.js.map +1 -0
- package/dist/browser/combo-box.d.ts +113 -0
- package/dist/browser/combo-box.js +394 -0
- package/dist/browser/combo-box.js.map +1 -0
- package/dist/browser/create-drag-and-drop.d.ts +61 -0
- package/dist/browser/create-drag-and-drop.js +56 -0
- package/dist/browser/create-drag-and-drop.js.map +1 -0
- package/dist/browser/date-field.d.ts +71 -0
- package/dist/browser/date-field.js +508 -0
- package/dist/browser/date-field.js.map +1 -0
- package/dist/browser/date-picker.d.ts +50 -0
- package/dist/browser/date-picker.js +403 -0
- package/dist/browser/date-picker.js.map +1 -0
- package/dist/browser/dialog.d.ts +35 -0
- package/dist/browser/dialog.js +148 -0
- package/dist/browser/dialog.js.map +1 -0
- package/dist/browser/disclosure.d.ts +56 -0
- package/dist/browser/disclosure.js +180 -0
- package/dist/browser/disclosure.js.map +1 -0
- package/dist/browser/drag-and-drop.d.ts +43 -0
- package/dist/browser/drag-and-drop.js +66 -0
- package/dist/browser/drag-and-drop.js.map +1 -0
- package/dist/browser/drop-zone.d.ts +33 -0
- package/dist/browser/drop-zone.js +161 -0
- package/dist/browser/drop-zone.js.map +1 -0
- package/dist/browser/field-error.d.ts +28 -0
- package/dist/browser/field-error.js +60 -0
- package/dist/browser/field-error.js.map +1 -0
- package/dist/browser/file-trigger.d.ts +30 -0
- package/dist/browser/file-trigger.js +66 -0
- package/dist/browser/file-trigger.js.map +1 -0
- package/dist/browser/form.d.ts +28 -0
- package/dist/browser/form.js +64 -0
- package/dist/browser/form.js.map +1 -0
- package/dist/browser/grid-layout.d.ts +22 -0
- package/dist/browser/grid-layout.js +30 -0
- package/dist/browser/grid-layout.js.map +1 -0
- package/dist/browser/grid-list.d.ts +95 -0
- package/dist/browser/grid-list.js +609 -0
- package/dist/browser/grid-list.js.map +1 -0
- package/dist/browser/group.d.ts +35 -0
- package/dist/browser/group.js +92 -0
- package/dist/browser/group.js.map +1 -0
- package/dist/browser/header.d.ts +25 -0
- package/dist/browser/header.js +57 -0
- package/dist/browser/header.js.map +1 -0
- package/dist/browser/heading.d.ts +26 -0
- package/dist/browser/heading.js +53 -0
- package/dist/browser/heading.js.map +1 -0
- package/dist/browser/hidden-date-input.d.ts +34 -0
- package/dist/browser/hidden-date-input.js +84 -0
- package/dist/browser/hidden-date-input.js.map +1 -0
- package/dist/browser/index.d.ts +133 -0
- package/dist/browser/index.js +98 -0
- package/dist/browser/input.d.ts +33 -0
- package/dist/browser/input.js +94 -0
- package/dist/browser/input.js.map +1 -0
- package/dist/browser/intl/ar-AE.js +11 -0
- package/dist/browser/intl/ar-AE.js.map +1 -0
- package/dist/browser/intl/bg-BG.js +11 -0
- package/dist/browser/intl/bg-BG.js.map +1 -0
- package/dist/browser/intl/cs-CZ.js +11 -0
- package/dist/browser/intl/cs-CZ.js.map +1 -0
- package/dist/browser/intl/da-DK.js +11 -0
- package/dist/browser/intl/da-DK.js.map +1 -0
- package/dist/browser/intl/de-DE.js +11 -0
- package/dist/browser/intl/de-DE.js.map +1 -0
- package/dist/browser/intl/el-GR.js +11 -0
- package/dist/browser/intl/el-GR.js.map +1 -0
- package/dist/browser/intl/en-US.js +11 -0
- package/dist/browser/intl/en-US.js.map +1 -0
- package/dist/browser/intl/es-ES.js +11 -0
- package/dist/browser/intl/es-ES.js.map +1 -0
- package/dist/browser/intl/et-EE.js +11 -0
- package/dist/browser/intl/et-EE.js.map +1 -0
- package/dist/browser/intl/fi-FI.js +11 -0
- package/dist/browser/intl/fi-FI.js.map +1 -0
- package/dist/browser/intl/fr-FR.js +11 -0
- package/dist/browser/intl/fr-FR.js.map +1 -0
- package/dist/browser/intl/he-IL.js +11 -0
- package/dist/browser/intl/he-IL.js.map +1 -0
- package/dist/browser/intl/hr-HR.js +11 -0
- package/dist/browser/intl/hr-HR.js.map +1 -0
- package/dist/browser/intl/hu-HU.js +11 -0
- package/dist/browser/intl/hu-HU.js.map +1 -0
- package/dist/browser/intl/index.js +75 -0
- package/dist/browser/intl/index.js.map +1 -0
- package/dist/browser/intl/it-IT.js +11 -0
- package/dist/browser/intl/it-IT.js.map +1 -0
- package/dist/browser/intl/ja-JP.js +11 -0
- package/dist/browser/intl/ja-JP.js.map +1 -0
- package/dist/browser/intl/ko-KR.js +11 -0
- package/dist/browser/intl/ko-KR.js.map +1 -0
- package/dist/browser/intl/lt-LT.js +11 -0
- package/dist/browser/intl/lt-LT.js.map +1 -0
- package/dist/browser/intl/lv-LV.js +11 -0
- package/dist/browser/intl/lv-LV.js.map +1 -0
- package/dist/browser/intl/nb-NO.js +11 -0
- package/dist/browser/intl/nb-NO.js.map +1 -0
- package/dist/browser/intl/nl-NL.js +11 -0
- package/dist/browser/intl/nl-NL.js.map +1 -0
- package/dist/browser/intl/pl-PL.js +11 -0
- package/dist/browser/intl/pl-PL.js.map +1 -0
- package/dist/browser/intl/pt-BR.js +11 -0
- package/dist/browser/intl/pt-BR.js.map +1 -0
- package/dist/browser/intl/pt-PT.js +11 -0
- package/dist/browser/intl/pt-PT.js.map +1 -0
- package/dist/browser/intl/ro-RO.js +11 -0
- package/dist/browser/intl/ro-RO.js.map +1 -0
- package/dist/browser/intl/ru-RU.js +11 -0
- package/dist/browser/intl/ru-RU.js.map +1 -0
- package/dist/browser/intl/sk-SK.js +11 -0
- package/dist/browser/intl/sk-SK.js.map +1 -0
- package/dist/browser/intl/sl-SI.js +11 -0
- package/dist/browser/intl/sl-SI.js.map +1 -0
- package/dist/browser/intl/sr-SP.js +11 -0
- package/dist/browser/intl/sr-SP.js.map +1 -0
- package/dist/browser/intl/sv-SE.js +11 -0
- package/dist/browser/intl/sv-SE.js.map +1 -0
- package/dist/browser/intl/tr-TR.js +11 -0
- package/dist/browser/intl/tr-TR.js.map +1 -0
- package/dist/browser/intl/uk-UA.js +11 -0
- package/dist/browser/intl/uk-UA.js.map +1 -0
- package/dist/browser/intl/zh-CN.js +11 -0
- package/dist/browser/intl/zh-CN.js.map +1 -0
- package/dist/browser/intl/zh-TW.js +11 -0
- package/dist/browser/intl/zh-TW.js.map +1 -0
- package/dist/browser/keyboard.d.ts +25 -0
- package/dist/browser/keyboard.js +50 -0
- package/dist/browser/keyboard.js.map +1 -0
- package/dist/browser/label.d.ts +26 -0
- package/dist/browser/label.js +53 -0
- package/dist/browser/label.js.map +1 -0
- package/dist/browser/link.d.ts +34 -0
- package/dist/browser/link.js +92 -0
- package/dist/browser/link.js.map +1 -0
- package/dist/browser/list-box.d.ts +171 -0
- package/dist/browser/list-box.js +547 -0
- package/dist/browser/list-box.js.map +1 -0
- package/dist/browser/menu.d.ts +150 -0
- package/dist/browser/menu.js +597 -0
- package/dist/browser/menu.js.map +1 -0
- package/dist/browser/meter.d.ts +29 -0
- package/dist/browser/meter.js +73 -0
- package/dist/browser/meter.js.map +1 -0
- package/dist/browser/modal.d.ts +48 -0
- package/dist/browser/modal.js +190 -0
- package/dist/browser/modal.js.map +1 -0
- package/dist/browser/navigation-tree.d.ts +54 -0
- package/dist/browser/navigation-tree.js +233 -0
- package/dist/browser/navigation-tree.js.map +1 -0
- package/dist/browser/number-field.d.ts +36 -0
- package/dist/browser/number-field.js +179 -0
- package/dist/browser/number-field.js.map +1 -0
- package/dist/browser/overlay-arrow.d.ts +32 -0
- package/dist/browser/overlay-arrow.js +65 -0
- package/dist/browser/overlay-arrow.js.map +1 -0
- package/dist/browser/overlay-contexts.d.ts +22 -0
- package/dist/browser/overlay-contexts.js +24 -0
- package/dist/browser/overlay-contexts.js.map +1 -0
- package/dist/browser/popover.d.ts +50 -0
- package/dist/browser/popover.js +255 -0
- package/dist/browser/popover.js.map +1 -0
- package/dist/browser/preview-trigger.d.ts +25 -0
- package/dist/browser/preview-trigger.js +93 -0
- package/dist/browser/preview-trigger.js.map +1 -0
- package/dist/browser/progress-bar.d.ts +30 -0
- package/dist/browser/progress-bar.js +76 -0
- package/dist/browser/progress-bar.js.map +1 -0
- package/dist/browser/radio-group.d.ts +67 -0
- package/dist/browser/radio-group.js +336 -0
- package/dist/browser/radio-group.js.map +1 -0
- package/dist/browser/search-field.d.ts +34 -0
- package/dist/browser/search-field.js +156 -0
- package/dist/browser/search-field.js.map +1 -0
- package/dist/browser/select.d.ts +115 -0
- package/dist/browser/select.js +351 -0
- package/dist/browser/select.js.map +1 -0
- package/dist/browser/selection-indicator.d.ts +25 -0
- package/dist/browser/selection-indicator.js +40 -0
- package/dist/browser/selection-indicator.js.map +1 -0
- package/dist/browser/separator.d.ts +30 -0
- package/dist/browser/separator.js +68 -0
- package/dist/browser/separator.js.map +1 -0
- package/dist/browser/shared-element-transition.d.ts +35 -0
- package/dist/browser/shared-element-transition.js +141 -0
- package/dist/browser/shared-element-transition.js.map +1 -0
- package/dist/browser/sheet.d.ts +64 -0
- package/dist/browser/sheet.js +982 -0
- package/dist/browser/sheet.js.map +1 -0
- package/dist/browser/slider.d.ts +77 -0
- package/dist/browser/slider.js +318 -0
- package/dist/browser/slider.js.map +1 -0
- package/dist/browser/switch.d.ts +54 -0
- package/dist/browser/switch.js +240 -0
- package/dist/browser/switch.js.map +1 -0
- package/dist/browser/table-layout.d.ts +22 -0
- package/dist/browser/table-layout.js +31 -0
- package/dist/browser/table-layout.js.map +1 -0
- package/dist/browser/table.d.ts +184 -0
- package/dist/browser/table.js +1268 -0
- package/dist/browser/table.js.map +1 -0
- package/dist/browser/tabs.d.ts +194 -0
- package/dist/browser/tabs.js +378 -0
- package/dist/browser/tabs.js.map +1 -0
- package/dist/browser/tag-group.d.ts +112 -0
- package/dist/browser/tag-group.js +291 -0
- package/dist/browser/tag-group.js.map +1 -0
- package/dist/browser/text-area.d.ts +16 -0
- package/dist/browser/text-area.js +75 -0
- package/dist/browser/text-area.js.map +1 -0
- package/dist/browser/text-field.d.ts +31 -0
- package/dist/browser/text-field.js +152 -0
- package/dist/browser/text-field.js.map +1 -0
- package/dist/browser/text.d.ts +25 -0
- package/dist/browser/text.js +52 -0
- package/dist/browser/text.js.map +1 -0
- package/dist/browser/toast.d.ts +66 -0
- package/dist/browser/toast.js +226 -0
- package/dist/browser/toast.js.map +1 -0
- package/dist/browser/toggle-button-group.d.ts +32 -0
- package/dist/browser/toggle-button-group.js +74 -0
- package/dist/browser/toggle-button-group.js.map +1 -0
- package/dist/browser/toggle-button.d.ts +33 -0
- package/dist/browser/toggle-button.js +119 -0
- package/dist/browser/toggle-button.js.map +1 -0
- package/dist/browser/token-field.d.ts +124 -0
- package/dist/browser/token-field.js +277 -0
- package/dist/browser/token-field.js.map +1 -0
- package/dist/browser/toolbar.d.ts +28 -0
- package/dist/browser/toolbar.js +51 -0
- package/dist/browser/toolbar.js.map +1 -0
- package/dist/browser/tooltip.d.ts +44 -0
- package/dist/browser/tooltip.js +183 -0
- package/dist/browser/tooltip.js.map +1 -0
- package/dist/browser/tree-drop-target-delegate.d.ts +33 -0
- package/dist/browser/tree-drop-target-delegate.js +178 -0
- package/dist/browser/tree-drop-target-delegate.js.map +1 -0
- package/dist/browser/tree.d.ts +98 -0
- package/dist/browser/tree.js +699 -0
- package/dist/browser/tree.js.map +1 -0
- package/dist/browser/utils.d.ts +94 -0
- package/dist/browser/utils.js +173 -0
- package/dist/browser/utils.js.map +1 -0
- package/dist/browser/virtualizer.d.ts +33 -0
- package/dist/browser/virtualizer.js +179 -0
- package/dist/browser/virtualizer.js.map +1 -0
- package/dist/server/autocomplete.js +125 -0
- package/dist/server/autocomplete.js.map +1 -0
- package/dist/server/breadcrumbs.js +185 -0
- package/dist/server/breadcrumbs.js.map +1 -0
- package/dist/server/button.js +252 -0
- package/dist/server/button.js.map +1 -0
- package/dist/server/calendar.js +1054 -0
- package/dist/server/calendar.js.map +1 -0
- package/dist/server/checkbox.js +595 -0
- package/dist/server/checkbox.js.map +1 -0
- package/dist/server/collection-dnd.js +217 -0
- package/dist/server/collection-dnd.js.map +1 -0
- package/dist/server/collection.js +106 -0
- package/dist/server/collection.js.map +1 -0
- package/dist/server/color-area.js +142 -0
- package/dist/server/color-area.js.map +1 -0
- package/dist/server/color-field.js +394 -0
- package/dist/server/color-field.js.map +1 -0
- package/dist/server/color-picker.js +170 -0
- package/dist/server/color-picker.js.map +1 -0
- package/dist/server/color-slider.js +328 -0
- package/dist/server/color-slider.js.map +1 -0
- package/dist/server/color-swatch-picker.js +234 -0
- package/dist/server/color-swatch-picker.js.map +1 -0
- package/dist/server/color-swatch.js +52 -0
- package/dist/server/color-swatch.js.map +1 -0
- package/dist/server/color-thumb.js +132 -0
- package/dist/server/color-thumb.js.map +1 -0
- package/dist/server/color-wheel.js +188 -0
- package/dist/server/color-wheel.js.map +1 -0
- package/dist/server/combo-box.js +914 -0
- package/dist/server/combo-box.js.map +1 -0
- package/dist/server/create-drag-and-drop.js +56 -0
- package/dist/server/create-drag-and-drop.js.map +1 -0
- package/dist/server/date-field.js +1055 -0
- package/dist/server/date-field.js.map +1 -0
- package/dist/server/date-picker.js +1079 -0
- package/dist/server/date-picker.js.map +1 -0
- package/dist/server/dialog.js +295 -0
- package/dist/server/dialog.js.map +1 -0
- package/dist/server/disclosure.js +292 -0
- package/dist/server/disclosure.js.map +1 -0
- package/dist/server/drag-and-drop.js +66 -0
- package/dist/server/drag-and-drop.js.map +1 -0
- package/dist/server/drop-zone.js +241 -0
- package/dist/server/drop-zone.js.map +1 -0
- package/dist/server/field-error.js +90 -0
- package/dist/server/field-error.js.map +1 -0
- package/dist/server/file-trigger.js +98 -0
- package/dist/server/file-trigger.js.map +1 -0
- package/dist/server/form.js +116 -0
- package/dist/server/form.js.map +1 -0
- package/dist/server/grid-layout.js +30 -0
- package/dist/server/grid-layout.js.map +1 -0
- package/dist/server/grid-list.js +1015 -0
- package/dist/server/grid-list.js.map +1 -0
- package/dist/server/group.js +146 -0
- package/dist/server/group.js.map +1 -0
- package/dist/server/header.js +72 -0
- package/dist/server/header.js.map +1 -0
- package/dist/server/heading.js +68 -0
- package/dist/server/heading.js.map +1 -0
- package/dist/server/hidden-date-input.js +79 -0
- package/dist/server/hidden-date-input.js.map +1 -0
- package/dist/server/index.js +98 -0
- package/dist/server/input.js +134 -0
- package/dist/server/input.js.map +1 -0
- package/dist/server/intl/ar-AE.js +11 -0
- package/dist/server/intl/ar-AE.js.map +1 -0
- package/dist/server/intl/bg-BG.js +11 -0
- package/dist/server/intl/bg-BG.js.map +1 -0
- package/dist/server/intl/cs-CZ.js +11 -0
- package/dist/server/intl/cs-CZ.js.map +1 -0
- package/dist/server/intl/da-DK.js +11 -0
- package/dist/server/intl/da-DK.js.map +1 -0
- package/dist/server/intl/de-DE.js +11 -0
- package/dist/server/intl/de-DE.js.map +1 -0
- package/dist/server/intl/el-GR.js +11 -0
- package/dist/server/intl/el-GR.js.map +1 -0
- package/dist/server/intl/en-US.js +11 -0
- package/dist/server/intl/en-US.js.map +1 -0
- package/dist/server/intl/es-ES.js +11 -0
- package/dist/server/intl/es-ES.js.map +1 -0
- package/dist/server/intl/et-EE.js +11 -0
- package/dist/server/intl/et-EE.js.map +1 -0
- package/dist/server/intl/fi-FI.js +11 -0
- package/dist/server/intl/fi-FI.js.map +1 -0
- package/dist/server/intl/fr-FR.js +11 -0
- package/dist/server/intl/fr-FR.js.map +1 -0
- package/dist/server/intl/he-IL.js +11 -0
- package/dist/server/intl/he-IL.js.map +1 -0
- package/dist/server/intl/hr-HR.js +11 -0
- package/dist/server/intl/hr-HR.js.map +1 -0
- package/dist/server/intl/hu-HU.js +11 -0
- package/dist/server/intl/hu-HU.js.map +1 -0
- package/dist/server/intl/index.js +75 -0
- package/dist/server/intl/index.js.map +1 -0
- package/dist/server/intl/it-IT.js +11 -0
- package/dist/server/intl/it-IT.js.map +1 -0
- package/dist/server/intl/ja-JP.js +11 -0
- package/dist/server/intl/ja-JP.js.map +1 -0
- package/dist/server/intl/ko-KR.js +11 -0
- package/dist/server/intl/ko-KR.js.map +1 -0
- package/dist/server/intl/lt-LT.js +11 -0
- package/dist/server/intl/lt-LT.js.map +1 -0
- package/dist/server/intl/lv-LV.js +11 -0
- package/dist/server/intl/lv-LV.js.map +1 -0
- package/dist/server/intl/nb-NO.js +11 -0
- package/dist/server/intl/nb-NO.js.map +1 -0
- package/dist/server/intl/nl-NL.js +11 -0
- package/dist/server/intl/nl-NL.js.map +1 -0
- package/dist/server/intl/pl-PL.js +11 -0
- package/dist/server/intl/pl-PL.js.map +1 -0
- package/dist/server/intl/pt-BR.js +11 -0
- package/dist/server/intl/pt-BR.js.map +1 -0
- package/dist/server/intl/pt-PT.js +11 -0
- package/dist/server/intl/pt-PT.js.map +1 -0
- package/dist/server/intl/ro-RO.js +11 -0
- package/dist/server/intl/ro-RO.js.map +1 -0
- package/dist/server/intl/ru-RU.js +11 -0
- package/dist/server/intl/ru-RU.js.map +1 -0
- package/dist/server/intl/sk-SK.js +11 -0
- package/dist/server/intl/sk-SK.js.map +1 -0
- package/dist/server/intl/sl-SI.js +11 -0
- package/dist/server/intl/sl-SI.js.map +1 -0
- package/dist/server/intl/sr-SP.js +11 -0
- package/dist/server/intl/sr-SP.js.map +1 -0
- package/dist/server/intl/sv-SE.js +11 -0
- package/dist/server/intl/sv-SE.js.map +1 -0
- package/dist/server/intl/tr-TR.js +11 -0
- package/dist/server/intl/tr-TR.js.map +1 -0
- package/dist/server/intl/uk-UA.js +11 -0
- package/dist/server/intl/uk-UA.js.map +1 -0
- package/dist/server/intl/zh-CN.js +11 -0
- package/dist/server/intl/zh-CN.js.map +1 -0
- package/dist/server/intl/zh-TW.js +11 -0
- package/dist/server/intl/zh-TW.js.map +1 -0
- package/dist/server/keyboard.js +65 -0
- package/dist/server/keyboard.js.map +1 -0
- package/dist/server/label.js +68 -0
- package/dist/server/label.js.map +1 -0
- package/dist/server/link.js +138 -0
- package/dist/server/link.js.map +1 -0
- package/dist/server/list-box.js +906 -0
- package/dist/server/list-box.js.map +1 -0
- package/dist/server/menu.js +1188 -0
- package/dist/server/menu.js.map +1 -0
- package/dist/server/meter.js +101 -0
- package/dist/server/meter.js.map +1 -0
- package/dist/server/modal.js +360 -0
- package/dist/server/modal.js.map +1 -0
- package/dist/server/navigation-tree.js +316 -0
- package/dist/server/navigation-tree.js.map +1 -0
- package/dist/server/number-field.js +371 -0
- package/dist/server/number-field.js.map +1 -0
- package/dist/server/overlay-arrow.js +81 -0
- package/dist/server/overlay-arrow.js.map +1 -0
- package/dist/server/overlay-contexts.js +24 -0
- package/dist/server/overlay-contexts.js.map +1 -0
- package/dist/server/popover.js +455 -0
- package/dist/server/popover.js.map +1 -0
- package/dist/server/preview-trigger.js +153 -0
- package/dist/server/preview-trigger.js.map +1 -0
- package/dist/server/progress-bar.js +104 -0
- package/dist/server/progress-bar.js.map +1 -0
- package/dist/server/radio-group.js +586 -0
- package/dist/server/radio-group.js.map +1 -0
- package/dist/server/search-field.js +288 -0
- package/dist/server/search-field.js.map +1 -0
- package/dist/server/select.js +771 -0
- package/dist/server/select.js.map +1 -0
- package/dist/server/selection-indicator.js +54 -0
- package/dist/server/selection-indicator.js.map +1 -0
- package/dist/server/separator.js +91 -0
- package/dist/server/separator.js.map +1 -0
- package/dist/server/shared-element-transition.js +189 -0
- package/dist/server/shared-element-transition.js.map +1 -0
- package/dist/server/sheet.js +1197 -0
- package/dist/server/sheet.js.map +1 -0
- package/dist/server/slider.js +581 -0
- package/dist/server/slider.js.map +1 -0
- package/dist/server/switch.js +400 -0
- package/dist/server/switch.js.map +1 -0
- package/dist/server/table-layout.js +31 -0
- package/dist/server/table-layout.js.map +1 -0
- package/dist/server/table.js +2075 -0
- package/dist/server/table.js.map +1 -0
- package/dist/server/tabs.js +668 -0
- package/dist/server/tabs.js.map +1 -0
- package/dist/server/tag-group.js +538 -0
- package/dist/server/tag-group.js.map +1 -0
- package/dist/server/text-area.js +115 -0
- package/dist/server/text-area.js.map +1 -0
- package/dist/server/text-field.js +272 -0
- package/dist/server/text-field.js.map +1 -0
- package/dist/server/text.js +67 -0
- package/dist/server/text.js.map +1 -0
- package/dist/server/toast.js +449 -0
- package/dist/server/toast.js.map +1 -0
- package/dist/server/toggle-button-group.js +125 -0
- package/dist/server/toggle-button-group.js.map +1 -0
- package/dist/server/toggle-button.js +183 -0
- package/dist/server/toggle-button.js.map +1 -0
- package/dist/server/token-field.js +457 -0
- package/dist/server/token-field.js.map +1 -0
- package/dist/server/toolbar.js +67 -0
- package/dist/server/toolbar.js.map +1 -0
- package/dist/server/tooltip.js +331 -0
- package/dist/server/tooltip.js.map +1 -0
- package/dist/server/tree-drop-target-delegate.js +178 -0
- package/dist/server/tree-drop-target-delegate.js.map +1 -0
- package/dist/server/tree.js +1096 -0
- package/dist/server/tree.js.map +1 -0
- package/dist/server/utils.js +184 -0
- package/dist/server/utils.js.map +1 -0
- package/dist/server/virtualizer.js +254 -0
- package/dist/server/virtualizer.js.map +1 -0
- package/package.json +437 -4
|
@@ -0,0 +1,32 @@
|
|
|
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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/OverlayArrow.tsx.
|
|
14
|
+
* Modified for Solid Aria: adapted components, contexts, refs, and reactive properties for Solid 2; preserve defined context offsets and placement edges in default render styles and use Solid class props.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { ContextValue, Ref, RenderProps, SlotProps } from "./utils.js";
|
|
18
|
+
import { JSX } from "@solidjs/web";
|
|
19
|
+
import { PlacementAxis } from "@solid2-aria/core/overlays/create-overlay-position";
|
|
20
|
+
export interface OverlayArrowRenderProps {
|
|
21
|
+
placement: PlacementAxis | null;
|
|
22
|
+
}
|
|
23
|
+
export interface OverlayArrowProps extends RenderProps<OverlayArrowRenderProps>, SlotProps {
|
|
24
|
+
ref?: Ref<HTMLDivElement>;
|
|
25
|
+
}
|
|
26
|
+
interface OverlayArrowContextValue extends OverlayArrowProps {
|
|
27
|
+
placement: PlacementAxis | null;
|
|
28
|
+
}
|
|
29
|
+
export declare const OverlayArrowContext: import("solid-js").Context<ContextValue<OverlayArrowContextValue, HTMLDivElement>>;
|
|
30
|
+
export declare function OverlayArrow(input: OverlayArrowProps): JSX.Element;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=overlay-arrow.d.ts.map
|
|
@@ -0,0 +1,65 @@
|
|
|
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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/OverlayArrow.tsx.
|
|
14
|
+
* Modified for Solid Aria: adapted components, contexts, refs, and reactive properties for Solid 2; preserve defined context offsets and placement edges in default render styles and use Solid class props.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { createContextProps, createRenderProps, createSlottedContext, dom } from "./utils.js";
|
|
18
|
+
import { createComponent, mergeProps } from "@solidjs/web";
|
|
19
|
+
import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
|
|
20
|
+
import { createContext, untrack } from "solid-js";
|
|
21
|
+
import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
|
|
22
|
+
// src/overlay-arrow.tsx
|
|
23
|
+
const OverlayArrowContext = createContext({ placement: "bottom" });
|
|
24
|
+
function definedStyle(style) {
|
|
25
|
+
return Object.fromEntries(Object.entries(style).filter(([, value]) => value !== void 0));
|
|
26
|
+
}
|
|
27
|
+
function OverlayArrow(input) {
|
|
28
|
+
const context = createSlottedContext(OverlayArrowContext, untrack(() => input.slot));
|
|
29
|
+
const [props, , setRef] = createContextProps(input, untrack(() => input.ref), OverlayArrowContext);
|
|
30
|
+
const values = { get placement() {
|
|
31
|
+
return props.placement ?? null;
|
|
32
|
+
} };
|
|
33
|
+
const defaultStyle = () => ({
|
|
34
|
+
position: "absolute",
|
|
35
|
+
transform: values.placement === "top" || values.placement === "bottom" ? "translateX(-50%)" : "translateY(-50%)",
|
|
36
|
+
...values.placement ? { [values.placement]: "100%" } : void 0,
|
|
37
|
+
...typeof context?.style === "object" ? definedStyle(context.style) : void 0
|
|
38
|
+
});
|
|
39
|
+
const render = createRenderProps(mergeProps$1(props, {
|
|
40
|
+
defaultClass: "solid2-aria-OverlayArrow",
|
|
41
|
+
get defaultStyle() {
|
|
42
|
+
return defaultStyle();
|
|
43
|
+
},
|
|
44
|
+
get style() {
|
|
45
|
+
return typeof props.style === "object" ? definedStyle(props.style) : props.style;
|
|
46
|
+
},
|
|
47
|
+
values
|
|
48
|
+
}));
|
|
49
|
+
return createComponent(dom.div, mergeProps(() => {
|
|
50
|
+
return filterDOMProps(props, { global: true });
|
|
51
|
+
}, render, {
|
|
52
|
+
ref: (element) => {
|
|
53
|
+
setRef(element);
|
|
54
|
+
},
|
|
55
|
+
get style() {
|
|
56
|
+
return render.style;
|
|
57
|
+
},
|
|
58
|
+
get "data-placement"() {
|
|
59
|
+
return values.placement;
|
|
60
|
+
}
|
|
61
|
+
}));
|
|
62
|
+
}
|
|
63
|
+
export { OverlayArrow, OverlayArrowContext };
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=overlay-arrow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overlay-arrow.js","names":["<dom.div\n {...filterDOMProps(props, { global: true })}\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n style={render.style}\n data-placement={values.placement}\n />","dom.div","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","mergeProps","_$createComponent","_$mergeProps"],"sources":["../../src/overlay-arrow.tsx"],"sourcesContent":["/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/OverlayArrow.tsx.\n * Modified for Solid Aria: adapted components, contexts, refs, and reactive properties for Solid 2; preserve defined context offsets and placement edges in default render styles and use Solid class props.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport type { PlacementAxis } from \"@solid2-aria/core/overlays/create-overlay-position\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, createContext } from \"solid-js\";\n\nimport {\n dom,\n createContextProps,\n createRenderProps,\n createSlottedContext,\n} from \"./utils\";\nimport type { ContextValue, Ref, RenderProps, SlotProps } from \"./utils\";\n\nexport interface OverlayArrowRenderProps {\n placement: PlacementAxis | null;\n}\n\nexport interface OverlayArrowProps\n extends RenderProps<OverlayArrowRenderProps>, SlotProps {\n ref?: Ref<HTMLDivElement>;\n}\n\ninterface OverlayArrowContextValue extends OverlayArrowProps {\n placement: PlacementAxis | null;\n}\n\nexport const OverlayArrowContext = createContext<\n ContextValue<OverlayArrowContextValue, HTMLDivElement>\n>({ placement: \"bottom\" });\n\nfunction definedStyle(style: JSX.CSSProperties): JSX.CSSProperties {\n return Object.fromEntries(\n Object.entries(style).filter(([, value]) => value !== undefined)\n );\n}\n\nexport function OverlayArrow(input: OverlayArrowProps): JSX.Element {\n const context = createSlottedContext(\n OverlayArrowContext,\n untrack(() => input.slot)\n );\n\n const [props, , setRef] = createContextProps<\n OverlayArrowProps & Partial<OverlayArrowContextValue>,\n OverlayArrowContextValue,\n HTMLDivElement\n >(\n input,\n untrack(() => input.ref),\n OverlayArrowContext\n );\n\n const values: OverlayArrowRenderProps = {\n get placement() {\n return props.placement ?? null;\n },\n };\n\n const defaultStyle = (): JSX.CSSProperties => ({\n position: \"absolute\",\n transform:\n values.placement === \"top\" || values.placement === \"bottom\"\n ? \"translateX(-50%)\"\n : \"translateY(-50%)\",\n ...(values.placement ? { [values.placement]: \"100%\" } : undefined),\n ...(typeof context?.style === \"object\"\n ? definedStyle(context.style)\n : undefined),\n });\n\n const render = createRenderProps(\n mergeProps(props, {\n defaultClass: \"solid2-aria-OverlayArrow\",\n get defaultStyle() {\n return defaultStyle();\n },\n get style() {\n return typeof props.style === \"object\"\n ? definedStyle(props.style)\n : props.style;\n },\n values,\n })\n );\n\n return (\n <dom.div\n {...filterDOMProps(props, { global: true })}\n {...render}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n style={render.style}\n data-placement={values.placement}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA4CA,MAAa,sBAAsB,cAEjC,EAAE,WAAW,SAAS,CAAC;AAEzB,SAAS,aAAa,OAA6C;CACjE,OAAO,OAAO,YACZ,OAAO,QAAQ,KAAK,CAAC,CAAC,QAAQ,GAAG,WAAW,UAAU,KAAA,CAAS,CACjE;AACF;AAEA,SAAgB,aAAa,OAAuC;CAClE,MAAM,UAAU,qBACd,qBACA,cAAc,MAAM,IAAI,CAC1B;CAEA,MAAM,CAAC,SAAS,UAAU,mBAKxB,OACA,cAAc,MAAM,GAAG,GACvB,mBACF;CAEA,MAAM,SAAkC,EACtC,IAAI,YAAY;EACd,OAAO,MAAM,aAAa;CAC5B,EACF;CAEA,MAAM,sBAAyC;EAC7C,UAAU;EACV,WACE,OAAO,cAAc,SAAS,OAAO,cAAc,WAC/C,qBACA;EACN,GAAI,OAAO,YAAY,GAAG,OAAO,YAAY,OAAO,IAAI,KAAA;EACxD,GAAI,OAAO,SAAS,UAAU,WAC1B,aAAa,QAAQ,KAAK,IAC1B,KAAA;CACN;CAEA,MAAM,SAAS,kBACbG,aAAW,OAAO;EAChB,cAAc;EACd,IAAI,eAAe;GACjB,OAAO,aAAa;EACtB;EACA,IAAI,QAAQ;GACV,OAAO,OAAO,MAAM,UAAU,WAC1B,aAAa,MAAM,KAAK,IACxB,MAAM;EACZ;EACA;CACF,CAAC,CACH;CAEA,OACEH,gBAAAA,IAACC,KAADD,iBACE;EAAI,OAAA,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC;CAAC,GACvC,QAFN;EAGEE,MAAM,YAA4B;GAChC,OAAO,OAAO;EAChB;EACA,IAAA,QAAA;GAAO,OAAA,OAAO;EAAK;EACnB,IAAA,mBAAA;GAAgB,OAAA,OAAO;EAAS;CACjC,CAAA,CAAA;AAEL"}
|
|
@@ -0,0 +1,22 @@
|
|
|
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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/Dialog.tsx.
|
|
14
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/Menu.tsx.
|
|
15
|
+
* Modified for Solid Aria: share overlay contexts independently of component modules to avoid initialization cycles.
|
|
16
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
17
|
+
*/
|
|
18
|
+
import { RootMenuTriggerState } from "@solid2-aria/stately/menu/create-menu-trigger-state";
|
|
19
|
+
import { OverlayTriggerState } from "@solid2-aria/stately/overlays/create-overlay-trigger-state";
|
|
20
|
+
export declare const OverlayTriggerStateContext: import("solid-js").Context<OverlayTriggerState | null>;
|
|
21
|
+
export declare const RootMenuTriggerStateContext: import("solid-js").Context<RootMenuTriggerState | null>;
|
|
22
|
+
//# sourceMappingURL=overlay-contexts.d.ts.map
|
|
@@ -0,0 +1,24 @@
|
|
|
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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/Dialog.tsx.
|
|
14
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/Menu.tsx.
|
|
15
|
+
* Modified for Solid Aria: share overlay contexts independently of component modules to avoid initialization cycles.
|
|
16
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
17
|
+
*/
|
|
18
|
+
import { createContext } from "solid-js";
|
|
19
|
+
// src/overlay-contexts.ts
|
|
20
|
+
const OverlayTriggerStateContext = createContext(null);
|
|
21
|
+
const RootMenuTriggerStateContext = createContext(null);
|
|
22
|
+
export { OverlayTriggerStateContext, RootMenuTriggerStateContext };
|
|
23
|
+
|
|
24
|
+
//# sourceMappingURL=overlay-contexts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overlay-contexts.js","names":[],"sources":["../../src/overlay-contexts.ts"],"sourcesContent":["/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/Dialog.tsx.\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/Menu.tsx.\n * Modified for Solid Aria: share overlay contexts independently of component modules to avoid initialization cycles.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport type { RootMenuTriggerState } from \"@solid2-aria/stately/menu/create-menu-trigger-state\";\nimport type { OverlayTriggerState } from \"@solid2-aria/stately/overlays/create-overlay-trigger-state\";\nimport { createContext } from \"solid-js\";\n\nexport const OverlayTriggerStateContext =\n createContext<OverlayTriggerState | null>(null);\n\nexport const RootMenuTriggerStateContext =\n createContext<RootMenuTriggerState | null>(null);\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAsBA,MAAa,6BACX,cAA0C,IAAI;AAEhD,MAAa,8BACX,cAA2C,IAAI"}
|
|
@@ -0,0 +1,50 @@
|
|
|
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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/Popover.tsx.
|
|
14
|
+
* Modified for Solid Aria: adapted components, contexts, refs, dialog semantics, animation state, and reactive properties for Solid 2; uses Solid class props.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { ContextValue, Ref, RenderProps, SlotProps } from "./utils.js";
|
|
18
|
+
import { JSX } from "@solidjs/web";
|
|
19
|
+
import { Accessor } from "solid-js";
|
|
20
|
+
import { AriaPopoverProps } from "@solid2-aria/core/overlays/create-popover";
|
|
21
|
+
import { OverlayTriggerProps } from "@solid2-aria/stately/overlays/create-overlay-trigger-state";
|
|
22
|
+
import { PlacementAxis } from "@solid2-aria/core/overlays/create-overlay-position";
|
|
23
|
+
import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
|
|
24
|
+
export interface PopoverRenderProps {
|
|
25
|
+
trigger: string | undefined;
|
|
26
|
+
placement: PlacementAxis | null;
|
|
27
|
+
isEntering: boolean;
|
|
28
|
+
isExiting: boolean;
|
|
29
|
+
}
|
|
30
|
+
type ClearableContext = (props: {
|
|
31
|
+
value: null;
|
|
32
|
+
children: JSX.Element;
|
|
33
|
+
}) => JSX.Element;
|
|
34
|
+
export interface PopoverProps extends Omit<AriaPopoverProps, "triggerRef" | "popoverRef" | "arrowRef">, OverlayTriggerProps, Pick<JSX.HTMLAttributes<HTMLElement>, Extract<keyof GlobalDOMAttributes<HTMLElement>, keyof JSX.HTMLAttributes<HTMLElement>> | "id" | "aria-label" | "aria-labelledby" | "aria-describedby" | "aria-details">, SlotProps, RenderProps<PopoverRenderProps> {
|
|
35
|
+
ref?: Ref<HTMLElement>;
|
|
36
|
+
triggerRef?: Accessor<Element | null>;
|
|
37
|
+
trigger?: string;
|
|
38
|
+
clearContexts?: ClearableContext[];
|
|
39
|
+
isEntering?: boolean;
|
|
40
|
+
isExiting?: boolean;
|
|
41
|
+
/** Whether automatic entry and exit animations should be skipped when swapping overlays. */
|
|
42
|
+
shouldSkipAnimation?: boolean;
|
|
43
|
+
UNSTABLE_portalContainer?: Element;
|
|
44
|
+
onEnter?: (element: HTMLElement) => void | Promise<void>;
|
|
45
|
+
onExit?: (element: HTMLElement) => void | Promise<void>;
|
|
46
|
+
}
|
|
47
|
+
export declare const PopoverContext: import("solid-js").Context<ContextValue<PopoverProps, HTMLElement>>;
|
|
48
|
+
export declare function Popover(input: PopoverProps): JSX.Element;
|
|
49
|
+
export {};
|
|
50
|
+
//# sourceMappingURL=popover.d.ts.map
|
|
@@ -0,0 +1,255 @@
|
|
|
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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/Popover.tsx.
|
|
14
|
+
* Modified for Solid Aria: adapted components, contexts, refs, dialog semantics, animation state, and reactive properties for Solid 2; uses Solid class props.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { createContextProps, createRenderProps, dom } from "./utils.js";
|
|
18
|
+
import { OverlayTriggerStateContext } from "./overlay-contexts.js";
|
|
19
|
+
import { OverlayArrowContext } from "./overlay-arrow.js";
|
|
20
|
+
import { createComponent, memo, mergeProps } from "@solidjs/web";
|
|
21
|
+
import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
|
|
22
|
+
import { Show, createContext, createEffect, createSignal, merge, onSettled, untrack, useContext } from "solid-js";
|
|
23
|
+
import { requireValue } from "@solid2-aria/core/utils/require-value";
|
|
24
|
+
import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
|
|
25
|
+
import { createIsHidden } from "@solid2-aria/core/collections/hidden";
|
|
26
|
+
import { getInteractionModality } from "@solid2-aria/core/interactions/create-focus-visible";
|
|
27
|
+
import { focusSafely } from "@solid2-aria/core/interactions/focus-safely";
|
|
28
|
+
import { createPopover } from "@solid2-aria/core/overlays/create-popover";
|
|
29
|
+
import { DismissButton } from "@solid2-aria/core/overlays/dismiss-button";
|
|
30
|
+
import { Overlay } from "@solid2-aria/core/overlays/overlay";
|
|
31
|
+
import { createEnterAnimation, createExitAnimation } from "@solid2-aria/core/utils/animation";
|
|
32
|
+
import { isFocusWithin } from "@solid2-aria/core/utils/shadowdom/dom-functions";
|
|
33
|
+
import { createOverlayTriggerState } from "@solid2-aria/stately/overlays/create-overlay-trigger-state";
|
|
34
|
+
// src/popover.tsx
|
|
35
|
+
const fallbackTrigger = () => null;
|
|
36
|
+
const PopoverContext = createContext(null);
|
|
37
|
+
function Popover(input) {
|
|
38
|
+
if (createIsHidden()) return memo(() => {
|
|
39
|
+
return input.children;
|
|
40
|
+
});
|
|
41
|
+
const [props, ref, setRef] = createContextProps(input, untrack(() => input.ref), PopoverContext);
|
|
42
|
+
const context = useContext(OverlayTriggerStateContext);
|
|
43
|
+
const local = createOverlayTriggerState(props);
|
|
44
|
+
const state = untrack(() => props.isOpen !== void 0 || props.defaultOpen !== void 0 || !context) ? local : requireValue(context, "Expected context");
|
|
45
|
+
const exitAnimation = createExitAnimation(ref, () => state.isOpen, (element) => untrack(() => props.onExit)?.(element));
|
|
46
|
+
const exiting = () => props.isExiting === true || props.shouldSkipAnimation !== true && exitAnimation();
|
|
47
|
+
return createComponent(Show, {
|
|
48
|
+
get when() {
|
|
49
|
+
return state.isOpen || exiting();
|
|
50
|
+
},
|
|
51
|
+
get children() {
|
|
52
|
+
return createComponent(Overlay, {
|
|
53
|
+
get portalContainer() {
|
|
54
|
+
return props.UNSTABLE_portalContainer;
|
|
55
|
+
},
|
|
56
|
+
get isExiting() {
|
|
57
|
+
return exiting();
|
|
58
|
+
},
|
|
59
|
+
get shouldContainFocus() {
|
|
60
|
+
return !(props.isNonModal === true);
|
|
61
|
+
},
|
|
62
|
+
get children() {
|
|
63
|
+
return createComponent(PopoverInner, {
|
|
64
|
+
props,
|
|
65
|
+
popoverRef: ref,
|
|
66
|
+
setPopoverRef: (element) => {
|
|
67
|
+
setRef(element);
|
|
68
|
+
},
|
|
69
|
+
state,
|
|
70
|
+
exiting
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
function PopoverInner(args) {
|
|
78
|
+
onSettled(() => () => {
|
|
79
|
+
args.setPopoverRef(null);
|
|
80
|
+
});
|
|
81
|
+
const [arrowRef, setArrowRef] = createSignal(null, { ownedWrite: true });
|
|
82
|
+
const aria = createPopover(mergeProps$1(merge(() => args.props ?? {}), {
|
|
83
|
+
arrowRef,
|
|
84
|
+
get offset() {
|
|
85
|
+
return args.props.offset ?? 8;
|
|
86
|
+
},
|
|
87
|
+
get placement() {
|
|
88
|
+
return args.props.placement ?? "bottom";
|
|
89
|
+
},
|
|
90
|
+
get popoverRef() {
|
|
91
|
+
return args.popoverRef;
|
|
92
|
+
},
|
|
93
|
+
get triggerRef() {
|
|
94
|
+
return args.props.triggerRef ?? fallbackTrigger;
|
|
95
|
+
}
|
|
96
|
+
}), untrack(() => args.state));
|
|
97
|
+
const entering = createEnterAnimation(untrack(() => args.popoverRef), () => aria.placement !== null, (element) => untrack(() => args.props.onEnter)?.(element));
|
|
98
|
+
const [isDialog, setDialog] = createSignal(untrack(() => args.props.trigger === "PreviewTrigger"));
|
|
99
|
+
createEffect(() => [args.popoverRef(), args.props.isNonModal !== true || args.props.trigger === "SubmenuTrigger" || args.props.trigger === "PreviewTrigger"], ([element, required]) => {
|
|
100
|
+
setDialog(!!element && required && !element.querySelector("[role=\"dialog\"]"));
|
|
101
|
+
});
|
|
102
|
+
createEffect(() => [
|
|
103
|
+
isDialog(),
|
|
104
|
+
args.popoverRef(),
|
|
105
|
+
args.props.trigger
|
|
106
|
+
], ([dialog, element, trigger]) => {
|
|
107
|
+
if (dialog && element && trigger !== "PreviewTrigger") onSettled(() => {
|
|
108
|
+
if ((trigger !== "SubmenuTrigger" || getInteractionModality() !== "pointer") && !isFocusWithin(element)) focusSafely(element);
|
|
109
|
+
});
|
|
110
|
+
});
|
|
111
|
+
const values = {
|
|
112
|
+
get isEntering() {
|
|
113
|
+
return args.props.isEntering === true || args.props.shouldSkipAnimation !== true && entering();
|
|
114
|
+
},
|
|
115
|
+
get isExiting() {
|
|
116
|
+
return args.exiting();
|
|
117
|
+
},
|
|
118
|
+
get placement() {
|
|
119
|
+
return aria.placement;
|
|
120
|
+
},
|
|
121
|
+
get trigger() {
|
|
122
|
+
return args.props.trigger;
|
|
123
|
+
}
|
|
124
|
+
};
|
|
125
|
+
const render = createRenderProps(mergeProps$1(merge(() => args.props ?? {}), {
|
|
126
|
+
defaultClass: "solid2-aria-Popover",
|
|
127
|
+
values
|
|
128
|
+
}));
|
|
129
|
+
const [triggerWidth, setTriggerWidth] = createSignal();
|
|
130
|
+
createEffect(() => args.props.triggerRef?.(), (trigger) => {
|
|
131
|
+
if (!trigger) return;
|
|
132
|
+
const measure = () => {
|
|
133
|
+
setTriggerWidth(`${trigger.getBoundingClientRect().width}px`);
|
|
134
|
+
};
|
|
135
|
+
measure();
|
|
136
|
+
const observer = new ResizeObserver(measure);
|
|
137
|
+
observer.observe(trigger);
|
|
138
|
+
return () => {
|
|
139
|
+
observer.disconnect();
|
|
140
|
+
};
|
|
141
|
+
}, { ssrSource: "client" });
|
|
142
|
+
return [memo(() => {
|
|
143
|
+
return memo(() => {
|
|
144
|
+
return !(args.props.isNonModal === true);
|
|
145
|
+
})() && createComponent(dom.div, mergeProps(() => {
|
|
146
|
+
return aria.underlayProps;
|
|
147
|
+
}, {
|
|
148
|
+
style: {
|
|
149
|
+
inset: "0",
|
|
150
|
+
position: "fixed"
|
|
151
|
+
},
|
|
152
|
+
"data-testid": "underlay"
|
|
153
|
+
}));
|
|
154
|
+
}), createComponent(dom.div, mergeProps(() => {
|
|
155
|
+
return mergeProps$1(filterDOMProps(args.props, { global: true }), merge(() => aria.popoverProps ?? {}), render);
|
|
156
|
+
}, {
|
|
157
|
+
ref: (element) => {
|
|
158
|
+
args.setPopoverRef(element);
|
|
159
|
+
},
|
|
160
|
+
get id() {
|
|
161
|
+
return memo(() => {
|
|
162
|
+
return !!isDialog();
|
|
163
|
+
})() ? args.props.id : void 0;
|
|
164
|
+
},
|
|
165
|
+
get role() {
|
|
166
|
+
return isDialog() ? "dialog" : void 0;
|
|
167
|
+
},
|
|
168
|
+
get tabindex() {
|
|
169
|
+
return isDialog() ? -1 : void 0;
|
|
170
|
+
},
|
|
171
|
+
get "aria-label"() {
|
|
172
|
+
return args.props["aria-label"];
|
|
173
|
+
},
|
|
174
|
+
get "aria-labelledby"() {
|
|
175
|
+
return args.props["aria-labelledby"];
|
|
176
|
+
},
|
|
177
|
+
get slot() {
|
|
178
|
+
return memo(() => {
|
|
179
|
+
return !!(args.props.slot === false || args.props.slot === "");
|
|
180
|
+
})() ? void 0 : args.props.slot ?? void 0;
|
|
181
|
+
},
|
|
182
|
+
get style() {
|
|
183
|
+
return {
|
|
184
|
+
...typeof aria.popoverProps.style === "object" ? aria.popoverProps.style : void 0,
|
|
185
|
+
"--trigger-anchor-point": aria.triggerAnchorPoint ? `${aria.triggerAnchorPoint.x}px ${aria.triggerAnchorPoint.y}px` : void 0,
|
|
186
|
+
"--trigger-width": triggerWidth(),
|
|
187
|
+
...typeof render.style === "object" ? render.style : void 0
|
|
188
|
+
};
|
|
189
|
+
},
|
|
190
|
+
get "data-trigger"() {
|
|
191
|
+
return values.trigger;
|
|
192
|
+
},
|
|
193
|
+
get "data-placement"() {
|
|
194
|
+
return values.placement;
|
|
195
|
+
},
|
|
196
|
+
get "data-entering"() {
|
|
197
|
+
return values.isEntering || void 0;
|
|
198
|
+
},
|
|
199
|
+
get "data-exiting"() {
|
|
200
|
+
return values.isExiting || void 0;
|
|
201
|
+
},
|
|
202
|
+
get children() {
|
|
203
|
+
return createComponent(OverlayArrowContext, {
|
|
204
|
+
get value() {
|
|
205
|
+
return mergeProps$1(merge(() => aria.arrowProps ?? {}), {
|
|
206
|
+
get placement() {
|
|
207
|
+
return aria.placement;
|
|
208
|
+
},
|
|
209
|
+
ref: (element) => {
|
|
210
|
+
setArrowRef(element);
|
|
211
|
+
}
|
|
212
|
+
});
|
|
213
|
+
},
|
|
214
|
+
get children() {
|
|
215
|
+
return [
|
|
216
|
+
memo(() => {
|
|
217
|
+
return memo(() => {
|
|
218
|
+
return !(args.props.isNonModal === true);
|
|
219
|
+
})() && createComponent(DismissButton, { get onDismiss() {
|
|
220
|
+
return args.state.close;
|
|
221
|
+
} });
|
|
222
|
+
}),
|
|
223
|
+
createComponent(ClearContexts, {
|
|
224
|
+
get contexts() {
|
|
225
|
+
return [PopoverContext, ...args.props.clearContexts ?? []];
|
|
226
|
+
},
|
|
227
|
+
get children() {
|
|
228
|
+
return render.children;
|
|
229
|
+
}
|
|
230
|
+
}),
|
|
231
|
+
createComponent(DismissButton, { get onDismiss() {
|
|
232
|
+
return args.state.close;
|
|
233
|
+
} })
|
|
234
|
+
];
|
|
235
|
+
}
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
}))];
|
|
239
|
+
}
|
|
240
|
+
function ClearContexts(props) {
|
|
241
|
+
const contexts = untrack(() => props.contexts);
|
|
242
|
+
const render = (index) => {
|
|
243
|
+
const Current = contexts[index];
|
|
244
|
+
return Current ? createComponent(Current, {
|
|
245
|
+
value: null,
|
|
246
|
+
get children() {
|
|
247
|
+
return render(index + 1);
|
|
248
|
+
}
|
|
249
|
+
}) : props.children;
|
|
250
|
+
};
|
|
251
|
+
return untrack(() => render(0));
|
|
252
|
+
}
|
|
253
|
+
export { Popover, PopoverContext };
|
|
254
|
+
|
|
255
|
+
//# sourceMappingURL=popover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popover.js","names":["{input.children as JSX.Element}","<Show when={state.isOpen || exiting()}>\n <Overlay\n portalContainer={props.UNSTABLE_portalContainer}\n isExiting={exiting()}\n shouldContainFocus={!(props.isNonModal === true)}\n >\n <PopoverInner\n props={props}\n popoverRef={ref}\n setPopoverRef={(element: HTMLElement | null) => {\n setRef(element);\n }}\n state={state}\n exiting={exiting}\n />\n </Overlay>\n </Show>","<Overlay\n portalContainer={props.UNSTABLE_portalContainer}\n isExiting={exiting()}\n shouldContainFocus={!(props.isNonModal === true)}\n >\n <PopoverInner\n props={props}\n popoverRef={ref}\n setPopoverRef={(element: HTMLElement | null) => {\n setRef(element);\n }}\n state={state}\n exiting={exiting}\n />\n </Overlay>","<PopoverInner\n props={props}\n popoverRef={ref}\n setPopoverRef={(element: HTMLElement | null) => {\n setRef(element);\n }}\n state={state}\n exiting={exiting}\n />","popoverRef={ref}","setPopoverRef={(element: HTMLElement | null) => {\n setRef(element);\n }}","{!(args.props.isNonModal === true) && (\n <dom.div\n {...aria.underlayProps}\n style={{ inset: \"0\", position: \"fixed\" }}\n data-testid=\"underlay\"\n />\n )}","<dom.div\n {...aria.underlayProps}\n style={{ inset: \"0\", position: \"fixed\" }}\n data-testid=\"underlay\"\n />","dom.div","style={{ inset: \"0\", position: \"fixed\" }}","<dom.div\n {...mergeProps(\n filterDOMProps(args.props, { global: true }),\n merge(() => aria.popoverProps ?? {}),\n render\n )}\n ref={(element: HTMLElement) => {\n args.setPopoverRef(element);\n }}\n id={isDialog() ? args.props.id : undefined}\n role={isDialog() ? \"dialog\" : undefined}\n tabindex={isDialog() ? -1 : undefined}\n aria-label={args.props[\"aria-label\"]}\n aria-labelledby={args.props[\"aria-labelledby\"]}\n slot={\n args.props.slot === false || args.props.slot === \"\"\n ? undefined\n : (args.props.slot ?? undefined)\n }\n style={{\n ...(typeof aria.popoverProps.style === \"object\"\n ? aria.popoverProps.style\n : undefined),\n \"--trigger-anchor-point\": aria.triggerAnchorPoint\n ? `${aria.triggerAnchorPoint.x}px ${aria.triggerAnchorPoint.y}px`\n : undefined,\n \"--trigger-width\": triggerWidth(),\n ...(typeof render.style === \"object\" ? render.style : undefined),\n }}\n data-trigger={values.trigger}\n data-placement={values.placement}\n data-entering={values.isEntering || undefined}\n data-exiting={values.isExiting || undefined}\n >\n <OverlayArrowContext\n value={mergeProps(\n merge(() => aria.arrowProps ?? {}),\n {\n get placement() {\n return aria.placement;\n },\n ref: (element: HTMLDivElement) => {\n setArrowRef(element);\n },\n }\n )}\n >\n {!(args.props.isNonModal === true) && (\n <DismissButton onDismiss={args.state.close} />\n )}\n <ClearContexts\n contexts={[PopoverContext, ...(args.props.clearContexts ?? [])]}\n >\n {render.children}\n </ClearContexts>\n <DismissButton onDismiss={args.state.close} />\n </OverlayArrowContext>\n </dom.div>","ref={(element: HTMLElement) => {\n args.setPopoverRef(element);\n }}","isDialog() ? args.props.id : undefined","args.props.slot === false || args.props.slot === \"\"\n ? undefined\n : (args.props.slot ?? undefined)","<OverlayArrowContext\n value={mergeProps(\n merge(() => aria.arrowProps ?? {}),\n {\n get placement() {\n return aria.placement;\n },\n ref: (element: HTMLDivElement) => {\n setArrowRef(element);\n },\n }\n )}\n >\n {!(args.props.isNonModal === true) && (\n <DismissButton onDismiss={args.state.close} />\n )}\n <ClearContexts\n contexts={[PopoverContext, ...(args.props.clearContexts ?? [])]}\n >\n {render.children}\n </ClearContexts>\n <DismissButton onDismiss={args.state.close} />\n </OverlayArrowContext>","{!(args.props.isNonModal === true) && (\n <DismissButton onDismiss={args.state.close} />\n )}","<DismissButton onDismiss={args.state.close} />","<ClearContexts\n contexts={[PopoverContext, ...(args.props.clearContexts ?? [])]}\n >\n {render.children}\n </ClearContexts>","<Current value={null}>{render(index + 1)}</Current>","value={null}","_$memo","_$createComponent","mergeProps","_$mergeProps"],"sources":["../../src/popover.tsx"],"sourcesContent":["/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/Popover.tsx.\n * Modified for Solid Aria: adapted components, contexts, refs, dialog semantics, animation state, and reactive properties for Solid 2; uses Solid class props.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport { createIsHidden } from \"@solid2-aria/core/collections/hidden\";\nimport { getInteractionModality } from \"@solid2-aria/core/interactions/create-focus-visible\";\nimport { focusSafely } from \"@solid2-aria/core/interactions/focus-safely\";\nimport type { PlacementAxis } from \"@solid2-aria/core/overlays/create-overlay-position\";\nimport { createPopover } from \"@solid2-aria/core/overlays/create-popover\";\nimport type { AriaPopoverProps } from \"@solid2-aria/core/overlays/create-popover\";\nimport { DismissButton } from \"@solid2-aria/core/overlays/dismiss-button\";\nimport { Overlay } from \"@solid2-aria/core/overlays/overlay\";\nimport {\n createEnterAnimation,\n createExitAnimation,\n} from \"@solid2-aria/core/utils/animation\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { requireValue } from \"@solid2-aria/core/utils/require-value\";\nimport { isFocusWithin } from \"@solid2-aria/core/utils/shadowdom/dom-functions\";\nimport { createOverlayTriggerState } from \"@solid2-aria/stately/overlays/create-overlay-trigger-state\";\nimport type { OverlayTriggerProps } from \"@solid2-aria/stately/overlays/create-overlay-trigger-state\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n merge,\n createSignal,\n createContext,\n createEffect,\n onSettled,\n Show,\n useContext,\n untrack,\n} from \"solid-js\";\nimport type { Accessor } from \"solid-js\";\n\nimport { OverlayArrowContext } from \"./overlay-arrow\";\nimport { OverlayTriggerStateContext } from \"./overlay-contexts\";\nimport { dom, createContextProps, createRenderProps } from \"./utils\";\nimport type { ContextValue, Ref, RenderProps, SlotProps } from \"./utils\";\n\nconst fallbackTrigger = () => null;\n\nexport interface PopoverRenderProps {\n trigger: string | undefined;\n placement: PlacementAxis | null;\n isEntering: boolean;\n isExiting: boolean;\n}\n\ntype ClearableContext = (props: {\n value: null;\n children: JSX.Element;\n}) => JSX.Element;\n\nexport interface PopoverProps\n extends\n Omit<AriaPopoverProps, \"triggerRef\" | \"popoverRef\" | \"arrowRef\">,\n OverlayTriggerProps,\n Pick<\n JSX.HTMLAttributes<HTMLElement>,\n | Extract<\n keyof GlobalDOMAttributes<HTMLElement>,\n keyof JSX.HTMLAttributes<HTMLElement>\n >\n | \"id\"\n | \"aria-label\"\n | \"aria-labelledby\"\n | \"aria-describedby\"\n | \"aria-details\"\n >,\n SlotProps,\n RenderProps<PopoverRenderProps> {\n ref?: Ref<HTMLElement>;\n triggerRef?: Accessor<Element | null>;\n trigger?: string;\n clearContexts?: ClearableContext[];\n isEntering?: boolean;\n isExiting?: boolean;\n /** Whether automatic entry and exit animations should be skipped when swapping overlays. */\n shouldSkipAnimation?: boolean;\n UNSTABLE_portalContainer?: Element;\n onEnter?: (element: HTMLElement) => void | Promise<void>;\n onExit?: (element: HTMLElement) => void | Promise<void>;\n}\n\nexport const PopoverContext =\n createContext<ContextValue<PopoverProps, HTMLElement>>(null);\n\nexport function Popover(input: PopoverProps): JSX.Element {\n if (createIsHidden()) {\n // SAFETY: The hidden collection renderer must still visit the popup's child thunk to discover its items.\n // oxlint-disable-next-line typescript/no-unsafe-type-assertion, solid/components-return-once -- The renderer resolves deferred JSX children inside the hidden collection owner. Static collection traversal and context registration are fixed when the owner is created.\n return <>{input.children as JSX.Element}</>;\n }\n\n const [props, ref, setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n PopoverContext\n );\n\n const context = useContext(OverlayTriggerStateContext);\n const local = createOverlayTriggerState(props);\n\n const state = untrack(\n () =>\n props.isOpen !== undefined || props.defaultOpen !== undefined || !context\n )\n ? local\n : requireValue(context, \"Expected context\");\n\n const exitAnimation = createExitAnimation(\n ref,\n () => state.isOpen,\n (element): void | Promise<void> => untrack(() => props.onExit)?.(element)\n );\n\n const exiting = () =>\n props.isExiting === true ||\n (props.shouldSkipAnimation !== true && exitAnimation());\n\n return (\n <Show when={state.isOpen || exiting()}>\n <Overlay\n portalContainer={props.UNSTABLE_portalContainer}\n isExiting={exiting()}\n shouldContainFocus={!(props.isNonModal === true)}\n >\n <PopoverInner\n props={props}\n popoverRef={ref}\n setPopoverRef={(element: HTMLElement | null) => {\n setRef(element);\n }}\n state={state}\n exiting={exiting}\n />\n </Overlay>\n </Show>\n );\n}\n\nfunction PopoverInner(args: {\n props: PopoverProps;\n popoverRef: Accessor<HTMLElement | null>;\n setPopoverRef: (element: HTMLElement | null) => void;\n state: ReturnType<typeof createOverlayTriggerState>;\n exiting: () => boolean;\n}): JSX.Element {\n onSettled(() => () => {\n args.setPopoverRef(null);\n });\n\n const [arrowRef, setArrowRef] = createSignal<HTMLDivElement | null>(null, {\n ownedWrite: true,\n });\n\n const aria = createPopover(\n mergeProps(\n merge(() => args.props ?? {}),\n {\n arrowRef,\n get offset() {\n return args.props.offset ?? 8;\n },\n get placement() {\n return args.props.placement ?? \"bottom\";\n },\n get popoverRef() {\n return args.popoverRef;\n },\n get triggerRef() {\n return args.props.triggerRef ?? fallbackTrigger;\n },\n }\n ),\n untrack(() => args.state)\n );\n\n const entering = createEnterAnimation(\n untrack(() => args.popoverRef),\n () => aria.placement !== null,\n (element): void | Promise<void> =>\n untrack(() => args.props.onEnter)?.(element)\n );\n\n const [isDialog, setDialog] = createSignal(\n untrack(() => args.props.trigger === \"PreviewTrigger\")\n );\n\n createEffect(\n () =>\n [\n args.popoverRef(),\n args.props.isNonModal !== true ||\n args.props.trigger === \"SubmenuTrigger\" ||\n args.props.trigger === \"PreviewTrigger\",\n ] as const,\n ([element, required]) => {\n setDialog(\n !!element && required && !element.querySelector('[role=\"dialog\"]')\n );\n }\n );\n\n createEffect(\n () => [isDialog(), args.popoverRef(), args.props.trigger] as const,\n ([dialog, element, trigger]) => {\n if (dialog && element && trigger !== \"PreviewTrigger\") {\n onSettled(() => {\n if (\n (trigger !== \"SubmenuTrigger\" ||\n getInteractionModality() !== \"pointer\") &&\n !isFocusWithin(element)\n ) {\n focusSafely(element);\n }\n });\n }\n }\n );\n\n const values: PopoverRenderProps = {\n get isEntering() {\n return (\n args.props.isEntering === true ||\n (args.props.shouldSkipAnimation !== true && entering())\n );\n },\n get isExiting() {\n return args.exiting();\n },\n get placement() {\n return aria.placement;\n },\n get trigger() {\n return args.props.trigger;\n },\n };\n\n const render = createRenderProps(\n mergeProps(\n merge(() => args.props ?? {}),\n { defaultClass: \"solid2-aria-Popover\", values }\n )\n );\n\n const [triggerWidth, setTriggerWidth] = createSignal<string>();\n createEffect(\n () => args.props.triggerRef?.(),\n (trigger) => {\n if (!trigger) {\n return;\n }\n\n const measure = () => {\n setTriggerWidth(`${trigger.getBoundingClientRect().width}px`);\n };\n\n measure();\n const observer = new ResizeObserver(measure);\n observer.observe(trigger);\n\n // oxlint-disable-next-line typescript/consistent-return -- Setup returns cleanup only when the observed element exists.\n return () => {\n observer.disconnect();\n };\n },\n { ssrSource: \"client\" }\n );\n\n return (\n <>\n {!(args.props.isNonModal === true) && (\n <dom.div\n {...aria.underlayProps}\n style={{ inset: \"0\", position: \"fixed\" }}\n data-testid=\"underlay\"\n />\n )}\n <dom.div\n {...mergeProps(\n filterDOMProps(args.props, { global: true }),\n merge(() => aria.popoverProps ?? {}),\n render\n )}\n ref={(element: HTMLElement) => {\n args.setPopoverRef(element);\n }}\n id={isDialog() ? args.props.id : undefined}\n role={isDialog() ? \"dialog\" : undefined}\n tabindex={isDialog() ? -1 : undefined}\n aria-label={args.props[\"aria-label\"]}\n aria-labelledby={args.props[\"aria-labelledby\"]}\n slot={\n args.props.slot === false || args.props.slot === \"\"\n ? undefined\n : (args.props.slot ?? undefined)\n }\n style={{\n ...(typeof aria.popoverProps.style === \"object\"\n ? aria.popoverProps.style\n : undefined),\n \"--trigger-anchor-point\": aria.triggerAnchorPoint\n ? `${aria.triggerAnchorPoint.x}px ${aria.triggerAnchorPoint.y}px`\n : undefined,\n \"--trigger-width\": triggerWidth(),\n ...(typeof render.style === \"object\" ? render.style : undefined),\n }}\n data-trigger={values.trigger}\n data-placement={values.placement}\n data-entering={values.isEntering || undefined}\n data-exiting={values.isExiting || undefined}\n >\n <OverlayArrowContext\n value={mergeProps(\n merge(() => aria.arrowProps ?? {}),\n {\n get placement() {\n return aria.placement;\n },\n ref: (element: HTMLDivElement) => {\n setArrowRef(element);\n },\n }\n )}\n >\n {!(args.props.isNonModal === true) && (\n <DismissButton onDismiss={args.state.close} />\n )}\n <ClearContexts\n contexts={[PopoverContext, ...(args.props.clearContexts ?? [])]}\n >\n {render.children}\n </ClearContexts>\n <DismissButton onDismiss={args.state.close} />\n </OverlayArrowContext>\n </dom.div>\n </>\n );\n}\n\nfunction ClearContexts(props: {\n contexts: ClearableContext[];\n children?: JSX.Element;\n}): JSX.Element {\n const contexts = untrack(() => props.contexts);\n\n const render = (index: number): JSX.Element => {\n const Current = contexts[index];\n\n return Current ? (\n <Current value={null}>{render(index + 1)}</Current>\n ) : (\n props.children\n );\n };\n\n return untrack(() => render(0));\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026 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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/PreviewTrigger.tsx.
|
|
14
|
+
* Modified for Solid Aria: adapted components, contexts, refs, warmup animation skipping, and reactive properties for Solid 2.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { JSX } from "@solidjs/web";
|
|
18
|
+
import { AriaPreviewTriggerProps } from "@solid2-aria/core/tooltip/create-preview-trigger";
|
|
19
|
+
export interface PreviewTriggerProps extends AriaPreviewTriggerProps {
|
|
20
|
+
children?: JSX.Element;
|
|
21
|
+
delay?: number;
|
|
22
|
+
closeDelay?: number;
|
|
23
|
+
}
|
|
24
|
+
export declare function PreviewTrigger(props: PreviewTriggerProps): JSX.Element;
|
|
25
|
+
//# sourceMappingURL=preview-trigger.d.ts.map
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2026 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
|
+
/*
|
|
13
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/PreviewTrigger.tsx.
|
|
14
|
+
* Modified for Solid Aria: adapted components, contexts, refs, warmup animation skipping, and reactive properties for Solid 2.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { OverlayTriggerStateContext } from "./overlay-contexts.js";
|
|
18
|
+
import { PopoverContext } from "./popover.js";
|
|
19
|
+
import { createComponent, mergeProps } from "@solidjs/web";
|
|
20
|
+
import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
|
|
21
|
+
import { createSignal, merge } from "solid-js";
|
|
22
|
+
import { FocusableProvider } from "@solid2-aria/core/interactions/create-focusable";
|
|
23
|
+
import { createPreviewTrigger } from "@solid2-aria/core/tooltip/create-preview-trigger";
|
|
24
|
+
import { createTooltipTriggerState } from "@solid2-aria/stately/tooltip/create-tooltip-trigger-state";
|
|
25
|
+
// src/preview-trigger.tsx
|
|
26
|
+
function PreviewTrigger(props) {
|
|
27
|
+
const [triggerRef, setTriggerRef] = createSignal(null, { ownedWrite: true });
|
|
28
|
+
const [popoverRef, setPopoverRef] = createSignal(null, { ownedWrite: true });
|
|
29
|
+
const state = createTooltipTriggerState(mergeProps$1(props, {
|
|
30
|
+
get closeDelay() {
|
|
31
|
+
return props.closeDelay ?? 200;
|
|
32
|
+
},
|
|
33
|
+
get delay() {
|
|
34
|
+
return props.delay ?? 600;
|
|
35
|
+
}
|
|
36
|
+
}));
|
|
37
|
+
const aria = createPreviewTrigger(mergeProps$1(props, {
|
|
38
|
+
popoverRef,
|
|
39
|
+
triggerRef
|
|
40
|
+
}), state);
|
|
41
|
+
return createComponent(OverlayTriggerStateContext, {
|
|
42
|
+
value: {
|
|
43
|
+
close() {
|
|
44
|
+
state.close();
|
|
45
|
+
},
|
|
46
|
+
get isOpen() {
|
|
47
|
+
return state.isOpen;
|
|
48
|
+
},
|
|
49
|
+
open() {
|
|
50
|
+
state.open();
|
|
51
|
+
},
|
|
52
|
+
point: null,
|
|
53
|
+
setOpen(open) {
|
|
54
|
+
if (open) state.open();
|
|
55
|
+
else state.close();
|
|
56
|
+
},
|
|
57
|
+
setPoint() {},
|
|
58
|
+
toggle() {
|
|
59
|
+
if (state.isOpen) state.close();
|
|
60
|
+
else state.open();
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
get children() {
|
|
64
|
+
return createComponent(PopoverContext, {
|
|
65
|
+
get value() {
|
|
66
|
+
return mergeProps$1(merge(() => aria.popoverProps ?? {}), {
|
|
67
|
+
isNonModal: true,
|
|
68
|
+
ref: (element) => {
|
|
69
|
+
setPopoverRef(element);
|
|
70
|
+
},
|
|
71
|
+
get shouldSkipAnimation() {
|
|
72
|
+
return state.shouldSkipAnimation;
|
|
73
|
+
},
|
|
74
|
+
trigger: "PreviewTrigger",
|
|
75
|
+
triggerRef
|
|
76
|
+
});
|
|
77
|
+
},
|
|
78
|
+
get children() {
|
|
79
|
+
return createComponent(FocusableProvider, mergeProps({ ref: (element) => {
|
|
80
|
+
setTriggerRef(element);
|
|
81
|
+
} }, () => {
|
|
82
|
+
return aria.triggerProps;
|
|
83
|
+
}, { get children() {
|
|
84
|
+
return props.children;
|
|
85
|
+
} }));
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
export { PreviewTrigger };
|
|
92
|
+
|
|
93
|
+
//# sourceMappingURL=preview-trigger.js.map
|