@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 @@
|
|
|
1
|
+
{"version":3,"file":"color-area.js","names":["<dom.div\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n merge(() => aria.colorAreaProps),\n render\n )}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-disabled={props.isDisabled === true ? true : undefined}\n >\n <ColorAreaStateContext value={state}>\n <InternalColorThumbContext value={thumb}>\n {render.children}\n </InternalColorThumbContext>\n </ColorAreaStateContext>\n </dom.div>","dom.div","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined","<ColorAreaStateContext value={state}>\n <InternalColorThumbContext value={thumb}>\n {render.children}\n </InternalColorThumbContext>\n </ColorAreaStateContext>","value={state}","<InternalColorThumbContext value={thumb}>\n {render.children}\n </InternalColorThumbContext>","value={thumb}","mergeProps","_$createComponent","_$mergeProps","_$memo"],"sources":["../../src/color-area.tsx"],"sourcesContent":["/*\n * Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorArea.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 { createColorArea } from \"@solid2-aria/core/color/create-color-area\";\nimport type { AriaColorAreaProps } from \"@solid2-aria/core/color/create-color-area\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { createColorAreaState } from \"@solid2-aria/stately/color/create-color-area-state\";\nimport type { ColorAreaState } from \"@solid2-aria/stately/color/create-color-area-state\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, createSignal, merge, createContext, omit } from \"solid-js\";\n\nimport { InternalColorThumbContext } from \"./color-thumb\";\nimport { dom, createContextProps, createRenderProps } from \"./utils\";\nimport type { ContextValue, RenderProps, SlotProps, Ref } from \"./utils\";\n\nexport interface ColorAreaRenderProps {\n isDisabled: boolean;\n state: ColorAreaState;\n}\n\nexport interface ColorAreaProps\n extends\n AriaColorAreaProps,\n RenderProps<ColorAreaRenderProps>,\n SlotProps,\n GlobalDOMAttributes<HTMLDivElement> {\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ColorAreaContext =\n createContext<ContextValue<Partial<ColorAreaProps>, HTMLDivElement>>(null);\n\nexport const ColorAreaStateContext = createContext<ColorAreaState | null>(null);\n\nexport function ColorArea(input: ColorAreaProps): JSX.Element {\n const [inputXRef, setInputXRef] = createSignal<HTMLInputElement | null>(\n null,\n { ownedWrite: true }\n );\n\n const [inputYRef, setInputYRef] = createSignal<HTMLInputElement | null>(\n null,\n { ownedWrite: true }\n );\n\n const [props, ref, setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ColorAreaContext\n );\n\n const state = createColorAreaState(props);\n\n const aria = createColorArea(\n mergeProps(props, { containerRef: ref, inputXRef, inputYRef }),\n state\n );\n\n const values: ColorAreaRenderProps = {\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n state,\n };\n\n const render = createRenderProps(\n mergeProps(props, {\n defaultClass: \"solid2-aria-ColorArea\",\n get defaultStyle() {\n const { style } = aria.colorAreaProps;\n\n return typeof style === \"object\" ? style : undefined;\n },\n values,\n })\n );\n\n const thumb = {\n inputXRef,\n inputYRef,\n get isDisabled() {\n return props.isDisabled;\n },\n setInputXRef: (element: HTMLInputElement) => {\n setInputXRef(element);\n },\n setInputYRef: (element: HTMLInputElement) => {\n setInputYRef(element);\n },\n state,\n get thumbProps() {\n return aria.thumbProps;\n },\n get xInputProps() {\n return aria.xInputProps;\n },\n get yInputProps() {\n return aria.yInputProps;\n },\n };\n\n return (\n <dom.div\n {...mergeProps(\n omit(filterDOMProps(props, { global: true }), \"id\"),\n merge(() => aria.colorAreaProps),\n render\n )}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-disabled={props.isDisabled === true ? true : undefined}\n >\n <ColorAreaStateContext value={state}>\n <InternalColorThumbContext value={thumb}>\n {render.children}\n </InternalColorThumbContext>\n </ColorAreaStateContext>\n </dom.div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;AAkCA,MAAa,mBACX,cAAqE,IAAI;AAE3E,MAAa,wBAAwB,cAAqC,IAAI;AAE9E,SAAgB,UAAU,OAAoC;CAC5D,MAAM,CAAC,WAAW,gBAAgB,aAChC,MACA,EAAE,YAAY,KAAK,CACrB;CAEA,MAAM,CAAC,WAAW,gBAAgB,aAChC,MACA,EAAE,YAAY,KAAK,CACrB;CAEA,MAAM,CAAC,OAAO,KAAK,UAAU,mBAC3B,OACA,cAAc,MAAM,GAAG,GACvB,gBACF;CAEA,MAAM,QAAQ,qBAAqB,KAAK;CAExC,MAAM,OAAO,gBACXQ,aAAW,OAAO;EAAE,cAAc;EAAK;EAAW;CAAU,CAAC,GAC7D,KACF;CASA,MAAM,SAAS,kBACbA,aAAW,OAAO;EAChB,cAAc;EACd,IAAI,eAAe;GACjB,MAAM,EAAE,UAAU,KAAK;GAEvB,OAAO,OAAO,UAAU,WAAW,QAAQ,KAAA;EAC7C;EACA,QAAA;GAdF,IAAI,aAAa;IACf,OAAO,MAAM,cAAc;GAC7B;GACA;EAWE;CACF,CAAC,CACH;CAEA,MAAM,QAAQ;EACZ;EACA;EACA,IAAI,aAAa;GACf,OAAO,MAAM;EACf;EACA,eAAe,YAA8B;GAC3C,aAAa,OAAO;EACtB;EACA,eAAe,YAA8B;GAC3C,aAAa,OAAO;EACtB;EACA;EACA,IAAI,aAAa;GACf,OAAO,KAAK;EACd;EACA,IAAI,cAAc;GAChB,OAAO,KAAK;EACd;EACA,IAAI,cAAc;GAChB,OAAO,KAAK;EACd;CACF;CAEA,OACER,gBAAAA,IAACC,KAADD,iBACE;EAAI,OAAAQ,aACF,KAAK,eAAe,OAAO,EAAE,QAAQ,KAAK,CAAC,GAAG,IAAI,GAClD,YAAY,KAAK,cAAc,GAC/B,MACF;CAAC,GALH;EAMEN,MAAM,YAA4B;GAChC,OAAO,OAAO;EAChB;EACA,IAAA,OAAA;GACEC,OAAAA,WAAAA;IAAO,OAAA,CAAA,EAAA,OAAA,MAAM,SAAS,YAAY,MAAM,KAAK,SAAS;GAE1C,CAAA,CAAC,CAAD,IADR,MAAM,OACN,KAAA;EACN;EACA,IAAA,kBAAA;GAAe,OAAA,MAAM,eAAe,OAAO,OAAO,KAAA;EAAS;EAd7D,IAAA,WAAA;GAgBEC,OAAAA,gBAAAA,uBAAAA;IAAuBC,OAAO;IAA9B,IAAA,WAAA;KACEC,OAAAA,gBAAAA,2BAAAA;MAA2BC,OAAO;MAAlC,IAAA,WAAA;OACG,OAAA,OAAO;MACiB;;IACN;;EAChB;;AAEb"}
|
|
@@ -0,0 +1,39 @@
|
|
|
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/ColorField.tsx.
|
|
14
|
+
* Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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, RACValidation, Ref, RenderProps, SlotProps } from "./utils.js";
|
|
18
|
+
import { JSX } from "@solidjs/web";
|
|
19
|
+
import { AriaColorFieldProps } from "@solid2-aria/core/color/create-color-field";
|
|
20
|
+
import { ColorFieldState } from "@solid2-aria/stately/color/create-color-field-state";
|
|
21
|
+
import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
|
|
22
|
+
import { ColorChannel, ColorSpace } from "@solid2-aria/stately/color/types";
|
|
23
|
+
export interface ColorFieldRenderProps {
|
|
24
|
+
isDisabled: boolean;
|
|
25
|
+
isInvalid: boolean;
|
|
26
|
+
isReadOnly: boolean;
|
|
27
|
+
isRequired: boolean;
|
|
28
|
+
channel: ColorChannel | "hex";
|
|
29
|
+
state: ColorFieldState;
|
|
30
|
+
}
|
|
31
|
+
export interface ColorFieldProps extends Omit<AriaColorFieldProps, "label" | "placeholder" | "description" | "errorMessage" | "validationState" | "validationBehavior">, RACValidation, RenderProps<ColorFieldRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
|
|
32
|
+
channel?: ColorChannel;
|
|
33
|
+
colorSpace?: ColorSpace;
|
|
34
|
+
ref?: Ref<HTMLDivElement>;
|
|
35
|
+
}
|
|
36
|
+
export declare const ColorFieldContext: import("solid-js").Context<ContextValue<ColorFieldProps, HTMLDivElement>>;
|
|
37
|
+
export declare const ColorFieldStateContext: import("solid-js").Context<ColorFieldState | null>;
|
|
38
|
+
export declare function ColorField(input: ColorFieldProps): JSX.Element;
|
|
39
|
+
//# sourceMappingURL=color-field.d.ts.map
|
|
@@ -0,0 +1,232 @@
|
|
|
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/ColorField.tsx.
|
|
14
|
+
* Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 { assignRef, createContextProps, createRenderProps, createSlot, dom, removeDataAttributes } from "./utils.js";
|
|
18
|
+
import { LabelContext } from "./label.js";
|
|
19
|
+
import { TextContext } from "./text.js";
|
|
20
|
+
import { FieldErrorContext } from "./field-error.js";
|
|
21
|
+
import { GroupContext } from "./group.js";
|
|
22
|
+
import { InputContext } from "./input.js";
|
|
23
|
+
import { createComponent, effect, getNextElement, memo, mergeProps, setAttribute, setProperty, template } from "@solidjs/web";
|
|
24
|
+
import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
|
|
25
|
+
import { Show, createContext, createSignal, merge, omit, untrack } from "solid-js";
|
|
26
|
+
import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
|
|
27
|
+
import { createLocale } from "@solid2-aria/core/i18n/i18n-provider";
|
|
28
|
+
import { createColorChannelField } from "@solid2-aria/core/color/create-color-channel-field";
|
|
29
|
+
import { createColorField } from "@solid2-aria/core/color/create-color-field";
|
|
30
|
+
import { createColorChannelFieldState } from "@solid2-aria/stately/color/create-color-channel-field-state";
|
|
31
|
+
import { createColorFieldState } from "@solid2-aria/stately/color/create-color-field-state";
|
|
32
|
+
// src/color-field.tsx
|
|
33
|
+
var _tmpl$ = /* @__PURE__ */ template(`<input type=hidden>`);
|
|
34
|
+
const ColorFieldContext = createContext(null);
|
|
35
|
+
const ColorFieldStateContext = createContext(null);
|
|
36
|
+
function ColorField(input) {
|
|
37
|
+
const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ColorFieldContext);
|
|
38
|
+
return createComponent(Show, {
|
|
39
|
+
get when() {
|
|
40
|
+
return props.channel;
|
|
41
|
+
},
|
|
42
|
+
get fallback() {
|
|
43
|
+
return createComponent(HexColorField, mergeProps(props, { ref: (element) => {
|
|
44
|
+
setRef(element);
|
|
45
|
+
} }));
|
|
46
|
+
},
|
|
47
|
+
children: (channel) => createComponent(ColorChannelField, mergeProps(props, {
|
|
48
|
+
ref: (element) => {
|
|
49
|
+
setRef(element);
|
|
50
|
+
},
|
|
51
|
+
get channel() {
|
|
52
|
+
return channel();
|
|
53
|
+
}
|
|
54
|
+
}))
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
function HexColorField(props) {
|
|
58
|
+
const options = mergeProps$1(props, { get validationBehavior() {
|
|
59
|
+
return props.validationBehavior ?? "native";
|
|
60
|
+
} });
|
|
61
|
+
const state = createColorFieldState(options);
|
|
62
|
+
const [inputRef, setInputRef] = createSignal(null, { ownedWrite: true });
|
|
63
|
+
const [registerLabel, label] = createSlot(() => (props["aria-label"]?.length ?? 0) === 0 && (props["aria-labelledby"]?.length ?? 0) === 0);
|
|
64
|
+
const aria = createColorField(mergeProps$1(removeDataAttributes(options), { get label() {
|
|
65
|
+
return label();
|
|
66
|
+
} }), state, inputRef);
|
|
67
|
+
return createComponent(ColorFieldChildren, {
|
|
68
|
+
props,
|
|
69
|
+
state,
|
|
70
|
+
aria,
|
|
71
|
+
inputRef: (element) => {
|
|
72
|
+
setInputRef(element);
|
|
73
|
+
},
|
|
74
|
+
registerLabel
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
function ColorChannelField(props) {
|
|
78
|
+
const locale = createLocale();
|
|
79
|
+
const options = mergeProps$1(props, {
|
|
80
|
+
get locale() {
|
|
81
|
+
return locale.locale;
|
|
82
|
+
},
|
|
83
|
+
get validationBehavior() {
|
|
84
|
+
return props.validationBehavior ?? "native";
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
const state = createColorChannelFieldState(options);
|
|
88
|
+
const [inputRef, setInputRef] = createSignal(null, { ownedWrite: true });
|
|
89
|
+
const [registerLabel, label] = createSlot(() => (props["aria-label"]?.length ?? 0) === 0 && (props["aria-labelledby"]?.length ?? 0) === 0);
|
|
90
|
+
const aria = createColorChannelField(mergeProps$1(removeDataAttributes(options), { get label() {
|
|
91
|
+
return label();
|
|
92
|
+
} }), state, inputRef);
|
|
93
|
+
return [createComponent(ColorFieldChildren, {
|
|
94
|
+
props,
|
|
95
|
+
state,
|
|
96
|
+
aria,
|
|
97
|
+
inputRef: (element) => {
|
|
98
|
+
setInputRef(element);
|
|
99
|
+
},
|
|
100
|
+
registerLabel
|
|
101
|
+
}), memo(() => {
|
|
102
|
+
return memo(() => {
|
|
103
|
+
return (props.name?.length ?? 0) > 0;
|
|
104
|
+
})() && (() => {
|
|
105
|
+
var _el$ = getNextElement(_tmpl$);
|
|
106
|
+
effect(() => {
|
|
107
|
+
return {
|
|
108
|
+
e: props.name,
|
|
109
|
+
t: props.form,
|
|
110
|
+
a: Number.isNaN(state.numberValue) ? "" : state.numberValue
|
|
111
|
+
};
|
|
112
|
+
}, ({ e, t, a }, _p$) => {
|
|
113
|
+
e !== _p$?.e && setAttribute(_el$, "name", e);
|
|
114
|
+
t !== _p$?.t && setAttribute(_el$, "form", t);
|
|
115
|
+
setProperty(_el$, "value", a);
|
|
116
|
+
});
|
|
117
|
+
return _el$;
|
|
118
|
+
})();
|
|
119
|
+
})];
|
|
120
|
+
}
|
|
121
|
+
function ColorFieldChildren(input) {
|
|
122
|
+
const { props } = untrack(() => input);
|
|
123
|
+
const { state } = untrack(() => input);
|
|
124
|
+
const { aria } = untrack(() => input);
|
|
125
|
+
const render = createRenderProps(mergeProps$1(props, {
|
|
126
|
+
defaultClass: "solid2-aria-ColorField",
|
|
127
|
+
values: {
|
|
128
|
+
get channel() {
|
|
129
|
+
return props.channel ?? "hex";
|
|
130
|
+
},
|
|
131
|
+
get isDisabled() {
|
|
132
|
+
return props.isDisabled ?? false;
|
|
133
|
+
},
|
|
134
|
+
get isInvalid() {
|
|
135
|
+
return aria.isInvalid;
|
|
136
|
+
},
|
|
137
|
+
get isReadOnly() {
|
|
138
|
+
return props.isReadOnly ?? false;
|
|
139
|
+
},
|
|
140
|
+
get isRequired() {
|
|
141
|
+
return props.isRequired ?? false;
|
|
142
|
+
},
|
|
143
|
+
state
|
|
144
|
+
}
|
|
145
|
+
}));
|
|
146
|
+
return createComponent(ColorFieldStateContext, {
|
|
147
|
+
value: state,
|
|
148
|
+
get children() {
|
|
149
|
+
return createComponent(InputContext, {
|
|
150
|
+
get value() {
|
|
151
|
+
return mergeProps$1(merge(() => aria.inputProps), { get ref() {
|
|
152
|
+
return input.inputRef;
|
|
153
|
+
} });
|
|
154
|
+
},
|
|
155
|
+
get children() {
|
|
156
|
+
return createComponent(LabelContext, {
|
|
157
|
+
get value() {
|
|
158
|
+
return mergeProps$1(merge(() => aria.labelProps), { get registerSlot() {
|
|
159
|
+
return input.registerLabel;
|
|
160
|
+
} });
|
|
161
|
+
},
|
|
162
|
+
get children() {
|
|
163
|
+
return createComponent(GroupContext, {
|
|
164
|
+
value: {
|
|
165
|
+
get isDisabled() {
|
|
166
|
+
return props.isDisabled ?? false;
|
|
167
|
+
},
|
|
168
|
+
get isInvalid() {
|
|
169
|
+
return aria.isInvalid;
|
|
170
|
+
},
|
|
171
|
+
role: "presentation"
|
|
172
|
+
},
|
|
173
|
+
get children() {
|
|
174
|
+
return createComponent(TextContext, {
|
|
175
|
+
value: { slots: {
|
|
176
|
+
get description() {
|
|
177
|
+
return aria.descriptionProps;
|
|
178
|
+
},
|
|
179
|
+
get errorMessage() {
|
|
180
|
+
return aria.errorMessageProps;
|
|
181
|
+
}
|
|
182
|
+
} },
|
|
183
|
+
get children() {
|
|
184
|
+
return createComponent(FieldErrorContext, {
|
|
185
|
+
value: aria,
|
|
186
|
+
get children() {
|
|
187
|
+
return createComponent(dom.div, mergeProps(() => {
|
|
188
|
+
return omit(filterDOMProps(props, { global: true }), "id");
|
|
189
|
+
}, render, {
|
|
190
|
+
ref: (el) => {
|
|
191
|
+
assignRef(untrack(() => props.ref), el);
|
|
192
|
+
},
|
|
193
|
+
get slot() {
|
|
194
|
+
return memo(() => {
|
|
195
|
+
return !!(typeof props.slot === "string" && props.slot.length > 0);
|
|
196
|
+
})() ? props.slot : void 0;
|
|
197
|
+
},
|
|
198
|
+
get "data-channel"() {
|
|
199
|
+
return props.channel ?? "hex";
|
|
200
|
+
},
|
|
201
|
+
get "data-disabled"() {
|
|
202
|
+
return props.isDisabled === true ? true : void 0;
|
|
203
|
+
},
|
|
204
|
+
get "data-invalid"() {
|
|
205
|
+
return aria.isInvalid || void 0;
|
|
206
|
+
},
|
|
207
|
+
get "data-readonly"() {
|
|
208
|
+
return props.isReadOnly === true ? true : void 0;
|
|
209
|
+
},
|
|
210
|
+
get "data-required"() {
|
|
211
|
+
return props.isRequired === true ? true : void 0;
|
|
212
|
+
},
|
|
213
|
+
get children() {
|
|
214
|
+
return render.children;
|
|
215
|
+
}
|
|
216
|
+
}));
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
export { ColorField, ColorFieldContext, ColorFieldStateContext };
|
|
231
|
+
|
|
232
|
+
//# sourceMappingURL=color-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-field.js","names":["<Show\n when={props.channel}\n fallback={\n <HexColorField\n {...props}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n />\n }\n >\n {(channel) => (\n <ColorChannelField\n {...props}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n channel={channel()}\n />\n )}\n </Show>","<HexColorField\n {...props}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n />","ref={(element: HTMLDivElement) => {\n setRef(element);\n }}","<ColorChannelField\n {...props}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n channel={channel()}\n />","<ColorFieldChildren\n props={props}\n state={state}\n aria={aria}\n inputRef={(element: HTMLInputElement) => {\n setInputRef(element);\n }}\n registerLabel={registerLabel}\n />","inputRef={(element: HTMLInputElement) => {\n setInputRef(element);\n }}","<ColorFieldChildren\n props={props}\n state={state}\n aria={aria}\n inputRef={(element: HTMLInputElement) => {\n setInputRef(element);\n }}\n registerLabel={registerLabel}\n />","inputRef={(element: HTMLInputElement) => {\n setInputRef(element);\n }}","{(props.name?.length ?? 0) > 0 && (\n <input\n type=\"hidden\"\n name={props.name}\n form={props.form}\n value={Number.isNaN(state.numberValue) ? \"\" : state.numberValue}\n />\n )}","form={props.form}","value={Number.isNaN(state.numberValue) ? \"\" : state.numberValue}","<ColorFieldStateContext value={state}>\n <InputContext\n value={mergeProps(\n merge(() => aria.inputProps),\n {\n get ref() {\n return input.inputRef;\n },\n }\n )}\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get registerSlot() {\n return input.registerLabel;\n },\n }\n )}\n >\n <GroupContext\n value={{\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n role: \"presentation\",\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>\n </TextContext>\n </GroupContext>\n </LabelContext>\n </InputContext>\n </ColorFieldStateContext>","value={state}","<InputContext\n value={mergeProps(\n merge(() => aria.inputProps),\n {\n get ref() {\n return input.inputRef;\n },\n }\n )}\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get registerSlot() {\n return input.registerLabel;\n },\n }\n )}\n >\n <GroupContext\n value={{\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n role: \"presentation\",\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>\n </TextContext>\n </GroupContext>\n </LabelContext>\n </InputContext>","<LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get registerSlot() {\n return input.registerLabel;\n },\n }\n )}\n >\n <GroupContext\n value={{\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n role: \"presentation\",\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>\n </TextContext>\n </GroupContext>\n </LabelContext>","<GroupContext\n value={{\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n role: \"presentation\",\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>\n </TextContext>\n </GroupContext>","value={{\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n role: \"presentation\",\n }}","<TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>\n </TextContext>","value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}","<FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>","value={aria}","<dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>","dom.div","ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}","typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined","_$createComponent","_$mergeProps","mergeProps","_$memo","_$getNextElement","_$setAttribute"],"sources":["../../src/color-field.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/ColorField.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; 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 { createColorChannelField } from \"@solid2-aria/core/color/create-color-channel-field\";\nimport { createColorField } from \"@solid2-aria/core/color/create-color-field\";\nimport type {\n AriaColorFieldProps,\n ColorFieldAria,\n} from \"@solid2-aria/core/color/create-color-field\";\nimport { createLocale } from \"@solid2-aria/core/i18n/i18n-provider\";\nimport { filterDOMProps } from \"@solid2-aria/core/utils/filter-dom-props\";\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { createColorChannelFieldState } from \"@solid2-aria/stately/color/create-color-channel-field-state\";\nimport { createColorFieldState } from \"@solid2-aria/stately/color/create-color-field-state\";\nimport type { ColorFieldState } from \"@solid2-aria/stately/color/create-color-field-state\";\nimport type {\n ColorChannel,\n ColorSpace,\n} from \"@solid2-aria/stately/color/types\";\nimport type { GlobalDOMAttributes } from \"@solid2-aria/types-shared-web\";\nimport type { JSX } from \"@solidjs/web\";\nimport {\n untrack,\n createSignal,\n merge,\n createContext,\n Show,\n omit,\n} from \"solid-js\";\n\nimport { FieldErrorContext } from \"./field-error\";\nimport { GroupContext } from \"./group\";\nimport { InputContext } from \"./input\";\nimport { LabelContext } from \"./label\";\nimport { TextContext } from \"./text\";\nimport {\n dom,\n assignRef,\n createContextProps,\n createRenderProps,\n createSlot,\n removeDataAttributes,\n} from \"./utils\";\nimport type {\n ContextValue,\n RenderProps,\n SlotProps,\n Ref,\n RACValidation,\n} from \"./utils\";\n\nexport interface ColorFieldRenderProps {\n isDisabled: boolean;\n isInvalid: boolean;\n isReadOnly: boolean;\n isRequired: boolean;\n channel: ColorChannel | \"hex\";\n state: ColorFieldState;\n}\n\nexport interface ColorFieldProps\n extends\n Omit<\n AriaColorFieldProps,\n | \"label\"\n | \"placeholder\"\n | \"description\"\n | \"errorMessage\"\n | \"validationState\"\n | \"validationBehavior\"\n >,\n RACValidation,\n RenderProps<ColorFieldRenderProps>,\n SlotProps,\n GlobalDOMAttributes<HTMLDivElement> {\n channel?: ColorChannel;\n colorSpace?: ColorSpace;\n ref?: Ref<HTMLDivElement>;\n}\n\nexport const ColorFieldContext =\n createContext<ContextValue<ColorFieldProps, HTMLDivElement>>(null);\n\nexport const ColorFieldStateContext = createContext<ColorFieldState | null>(\n null\n);\n\nexport function ColorField(input: ColorFieldProps): JSX.Element {\n const [props, , setRef] = createContextProps(\n input,\n untrack(() => input.ref),\n ColorFieldContext\n );\n\n return (\n <Show\n when={props.channel}\n fallback={\n <HexColorField\n {...props}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n />\n }\n >\n {(channel) => (\n <ColorChannelField\n {...props}\n ref={(element: HTMLDivElement) => {\n setRef(element);\n }}\n channel={channel()}\n />\n )}\n </Show>\n );\n}\n\nfunction HexColorField(props: ColorFieldProps): JSX.Element {\n const options = mergeProps(props, {\n get validationBehavior() {\n return props.validationBehavior ?? \"native\";\n },\n });\n\n const state = createColorFieldState(options);\n\n const [inputRef, setInputRef] = createSignal<HTMLInputElement | null>(null, {\n ownedWrite: true,\n });\n\n const [registerLabel, label] = createSlot(\n () =>\n (props[\"aria-label\"]?.length ?? 0) === 0 &&\n (props[\"aria-labelledby\"]?.length ?? 0) === 0\n );\n\n const aria = createColorField(\n mergeProps(removeDataAttributes(options), {\n get label() {\n return label();\n },\n }),\n state,\n inputRef\n );\n\n return (\n <ColorFieldChildren\n props={props}\n state={state}\n aria={aria}\n inputRef={(element: HTMLInputElement) => {\n setInputRef(element);\n }}\n registerLabel={registerLabel}\n />\n );\n}\n\nfunction ColorChannelField(\n props: ColorFieldProps & { channel: ColorChannel }\n): JSX.Element {\n const locale = createLocale();\n\n const options = mergeProps(props, {\n get locale() {\n return locale.locale;\n },\n get validationBehavior() {\n return props.validationBehavior ?? \"native\";\n },\n });\n\n const state = createColorChannelFieldState(options);\n\n const [inputRef, setInputRef] = createSignal<HTMLInputElement | null>(null, {\n ownedWrite: true,\n });\n\n const [registerLabel, label] = createSlot(\n () =>\n (props[\"aria-label\"]?.length ?? 0) === 0 &&\n (props[\"aria-labelledby\"]?.length ?? 0) === 0\n );\n\n const aria = createColorChannelField(\n mergeProps(removeDataAttributes(options), {\n get label() {\n return label();\n },\n }),\n state,\n inputRef\n );\n\n return (\n <>\n <ColorFieldChildren\n props={props}\n state={state}\n aria={aria}\n inputRef={(element: HTMLInputElement) => {\n setInputRef(element);\n }}\n registerLabel={registerLabel}\n />\n {(props.name?.length ?? 0) > 0 && (\n <input\n type=\"hidden\"\n name={props.name}\n form={props.form}\n value={Number.isNaN(state.numberValue) ? \"\" : state.numberValue}\n />\n )}\n </>\n );\n}\n\nfunction ColorFieldChildren(input: {\n props: ColorFieldProps;\n state: ColorFieldState;\n aria: ColorFieldAria | ReturnType<typeof createColorChannelField>;\n inputRef: (element: HTMLInputElement) => void;\n registerLabel: ReturnType<typeof createSlot>[0];\n}): JSX.Element {\n const { props } = untrack(() => input);\n const { state } = untrack(() => input);\n const { aria } = untrack(() => input);\n\n const values: ColorFieldRenderProps = {\n get channel() {\n return props.channel ?? \"hex\";\n },\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n get isReadOnly() {\n return props.isReadOnly ?? false;\n },\n get isRequired() {\n return props.isRequired ?? false;\n },\n state,\n };\n\n const render = createRenderProps(\n mergeProps(props, { defaultClass: \"solid2-aria-ColorField\", values })\n );\n\n return (\n <ColorFieldStateContext value={state}>\n <InputContext\n value={mergeProps(\n merge(() => aria.inputProps),\n {\n get ref() {\n return input.inputRef;\n },\n }\n )}\n >\n <LabelContext\n value={mergeProps(\n merge(() => aria.labelProps),\n {\n get registerSlot() {\n return input.registerLabel;\n },\n }\n )}\n >\n <GroupContext\n value={{\n get isDisabled() {\n return props.isDisabled ?? false;\n },\n get isInvalid() {\n return aria.isInvalid;\n },\n role: \"presentation\",\n }}\n >\n <TextContext\n value={{\n slots: {\n get description() {\n return aria.descriptionProps;\n },\n get errorMessage() {\n return aria.errorMessageProps;\n },\n },\n }}\n >\n <FieldErrorContext value={aria}>\n <dom.div\n {\n // oxlint-disable solid/reactivity -- Keep prop filtering in the renderer's lazy evaluation.\n ...omit(filterDOMProps(props, { global: true }), \"id\")\n // oxlint-enable solid/reactivity\n }\n {...render}\n ref={(el: HTMLDivElement) => {\n assignRef(\n untrack(() => props.ref),\n el\n );\n }}\n slot={\n typeof props.slot === \"string\" && props.slot.length > 0\n ? props.slot\n : undefined\n }\n data-channel={props.channel ?? \"hex\"}\n data-disabled={props.isDisabled === true ? true : undefined}\n data-invalid={aria.isInvalid || undefined}\n data-readonly={props.isReadOnly === true ? true : undefined}\n data-required={props.isRequired === true ? true : undefined}\n >\n {render.children}\n </dom.div>\n </FieldErrorContext>\n </TextContext>\n </GroupContext>\n </LabelContext>\n </InputContext>\n </ColorFieldStateContext>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 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/ColorPicker.tsx.
|
|
14
|
+
* Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { ChildrenOrFunction, SlotProps, SlottedContextValue } from "./utils.js";
|
|
18
|
+
import { JSX } from "@solidjs/web";
|
|
19
|
+
import { ColorPickerProps as ColorPickerProps$1, ColorPickerState } from "@solid2-aria/stately/color/create-color-picker-state";
|
|
20
|
+
import { Color } from "@solid2-aria/stately/color/types";
|
|
21
|
+
export interface ColorPickerRenderProps {
|
|
22
|
+
color: Color;
|
|
23
|
+
}
|
|
24
|
+
export interface ColorPickerProps extends ColorPickerProps$1, SlotProps {
|
|
25
|
+
children: ChildrenOrFunction<ColorPickerRenderProps>;
|
|
26
|
+
}
|
|
27
|
+
export declare const ColorPickerContext: import("solid-js").Context<SlottedContextValue<ColorPickerProps>>;
|
|
28
|
+
export declare const ColorPickerStateContext: import("solid-js").Context<ColorPickerState | null>;
|
|
29
|
+
export declare function ColorPicker(input: ColorPickerProps): JSX.Element;
|
|
30
|
+
//# sourceMappingURL=color-picker.d.ts.map
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright 2024 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/ColorPicker.tsx.
|
|
14
|
+
* Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs.
|
|
15
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
16
|
+
*/
|
|
17
|
+
import { createRenderProps, createSlottedContext } from "./utils.js";
|
|
18
|
+
import { ColorAreaContext } from "./color-area.js";
|
|
19
|
+
import { ColorFieldContext } from "./color-field.js";
|
|
20
|
+
import { ColorSliderContext } from "./color-slider.js";
|
|
21
|
+
import { ColorSwatchContext } from "./color-swatch.js";
|
|
22
|
+
import { ColorSwatchPickerContext } from "./color-swatch-picker.js";
|
|
23
|
+
import { ColorWheelContext } from "./color-wheel.js";
|
|
24
|
+
import { createComponent } from "@solidjs/web";
|
|
25
|
+
import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
|
|
26
|
+
import { createContext, untrack } from "solid-js";
|
|
27
|
+
import { createColorPickerState } from "@solid2-aria/stately/color/create-color-picker-state";
|
|
28
|
+
// src/color-picker.tsx
|
|
29
|
+
const ColorPickerContext = createContext(null);
|
|
30
|
+
const ColorPickerStateContext = createContext(null);
|
|
31
|
+
function ColorPicker(input) {
|
|
32
|
+
const props = mergeProps$1(createSlottedContext(ColorPickerContext, untrack(() => input.slot)) ?? {}, input);
|
|
33
|
+
const state = createColorPickerState(props);
|
|
34
|
+
const render = createRenderProps(mergeProps$1(props, { values: { get color() {
|
|
35
|
+
return state.color;
|
|
36
|
+
} } }));
|
|
37
|
+
const value = {
|
|
38
|
+
onChange: state.setColor,
|
|
39
|
+
get value() {
|
|
40
|
+
return state.color;
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
return createComponent(ColorPickerStateContext, {
|
|
44
|
+
value: state,
|
|
45
|
+
get children() {
|
|
46
|
+
return createComponent(ColorSliderContext, {
|
|
47
|
+
value,
|
|
48
|
+
get children() {
|
|
49
|
+
return createComponent(ColorAreaContext, {
|
|
50
|
+
value,
|
|
51
|
+
get children() {
|
|
52
|
+
return createComponent(ColorWheelContext, {
|
|
53
|
+
value,
|
|
54
|
+
get children() {
|
|
55
|
+
return createComponent(ColorFieldContext, {
|
|
56
|
+
value,
|
|
57
|
+
get children() {
|
|
58
|
+
return createComponent(ColorSwatchContext, {
|
|
59
|
+
value: { get color() {
|
|
60
|
+
return state.color;
|
|
61
|
+
} },
|
|
62
|
+
get children() {
|
|
63
|
+
return createComponent(ColorSwatchPickerContext, {
|
|
64
|
+
value,
|
|
65
|
+
get children() {
|
|
66
|
+
return render.children;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
export { ColorPicker, ColorPickerContext, ColorPickerStateContext };
|
|
83
|
+
|
|
84
|
+
//# sourceMappingURL=color-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-picker.js","names":["<ColorPickerStateContext value={state}>\n <ColorSliderContext value={value}>\n <ColorAreaContext value={value}>\n <ColorWheelContext value={value}>\n <ColorFieldContext value={value}>\n <ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>\n </ColorFieldContext>\n </ColorWheelContext>\n </ColorAreaContext>\n </ColorSliderContext>\n </ColorPickerStateContext>","value={state}","<ColorSliderContext value={value}>\n <ColorAreaContext value={value}>\n <ColorWheelContext value={value}>\n <ColorFieldContext value={value}>\n <ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>\n </ColorFieldContext>\n </ColorWheelContext>\n </ColorAreaContext>\n </ColorSliderContext>","<ColorAreaContext value={value}>\n <ColorWheelContext value={value}>\n <ColorFieldContext value={value}>\n <ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>\n </ColorFieldContext>\n </ColorWheelContext>\n </ColorAreaContext>","<ColorWheelContext value={value}>\n <ColorFieldContext value={value}>\n <ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>\n </ColorFieldContext>\n </ColorWheelContext>","<ColorFieldContext value={value}>\n <ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>\n </ColorFieldContext>","<ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>","value={{\n get color() {\n return state.color;\n },\n }}","<ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>","mergeProps","_$createComponent"],"sources":["../../src/color-picker.tsx"],"sourcesContent":["/*\n * Copyright 2024 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/ColorPicker.tsx.\n * Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs.\n * Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.\n */\n\nimport { mergeProps } from \"@solid2-aria/core/utils/merge-props\";\nimport { createColorPickerState } from \"@solid2-aria/stately/color/create-color-picker-state\";\nimport type {\n ColorPickerProps as StatelyColorPickerProps,\n ColorPickerState,\n} from \"@solid2-aria/stately/color/create-color-picker-state\";\nimport type { Color } from \"@solid2-aria/stately/color/types\";\nimport type { JSX } from \"@solidjs/web\";\nimport { untrack, createContext } from \"solid-js\";\n\nimport { ColorAreaContext } from \"./color-area\";\nimport { ColorFieldContext } from \"./color-field\";\nimport { ColorSliderContext } from \"./color-slider\";\nimport { ColorSwatchContext } from \"./color-swatch\";\nimport { ColorSwatchPickerContext } from \"./color-swatch-picker\";\nimport { ColorWheelContext } from \"./color-wheel\";\nimport { createRenderProps, createSlottedContext } from \"./utils\";\nimport type {\n ChildrenOrFunction,\n SlotProps,\n SlottedContextValue,\n} from \"./utils\";\n\nexport interface ColorPickerRenderProps {\n color: Color;\n}\n\nexport interface ColorPickerProps extends StatelyColorPickerProps, SlotProps {\n children: ChildrenOrFunction<ColorPickerRenderProps>;\n}\n\nexport const ColorPickerContext =\n createContext<SlottedContextValue<ColorPickerProps>>(null);\n\nexport const ColorPickerStateContext = createContext<ColorPickerState | null>(\n null\n);\n\nexport function ColorPicker(input: ColorPickerProps): JSX.Element {\n const props = mergeProps(\n createSlottedContext(\n ColorPickerContext,\n untrack(() => input.slot)\n ) ?? {},\n input\n );\n\n const state = createColorPickerState(props);\n\n const render = createRenderProps(\n mergeProps(props, {\n values: {\n get color() {\n return state.color;\n },\n },\n })\n );\n\n const value = {\n onChange: state.setColor,\n get value() {\n return state.color;\n },\n };\n\n return (\n <ColorPickerStateContext value={state}>\n <ColorSliderContext value={value}>\n <ColorAreaContext value={value}>\n <ColorWheelContext value={value}>\n <ColorFieldContext value={value}>\n <ColorSwatchContext\n value={{\n get color() {\n return state.color;\n },\n }}\n >\n <ColorSwatchPickerContext value={value}>\n {render.children}\n </ColorSwatchPickerContext>\n </ColorSwatchContext>\n </ColorFieldContext>\n </ColorWheelContext>\n </ColorAreaContext>\n </ColorSliderContext>\n </ColorPickerStateContext>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,MAAa,qBACX,cAAqD,IAAI;AAE3D,MAAa,0BAA0B,cACrC,IACF;AAEA,SAAgB,YAAY,OAAsC;CAChE,MAAM,QAAQS,aACZ,qBACE,oBACA,cAAc,MAAM,IAAI,CAC1B,KAAK,CAAC,GACN,KACF;CAEA,MAAM,QAAQ,uBAAuB,KAAK;CAE1C,MAAM,SAAS,kBACbA,aAAW,OAAO,EAChB,QAAQ,EACN,IAAI,QAAQ;EACV,OAAO,MAAM;CACf,EACF,EACF,CAAC,CACH;CAEA,MAAM,QAAQ;EACZ,UAAU,MAAM;EAChB,IAAI,QAAQ;GACV,OAAO,MAAM;EACf;CACF;CAEA,OACET,gBAAAA,yBAAAA;EAAyBC,OAAO;EAAhC,IAAA,WAAA;GACEC,OAAAA,gBAAAA,oBAAAA;IAA2B;IAA3B,IAAA,WAAA;KACEC,OAAAA,gBAAAA,kBAAAA;MAAyB;MAAzB,IAAA,WAAA;OACEC,OAAAA,gBAAAA,mBAAAA;QAA0B;QAA1B,IAAA,WAAA;SACEC,OAAAA,gBAAAA,mBAAAA;UAA0B;UAA1B,IAAA,WAAA;WACEC,OAAAA,gBAAAA,oBAAAA;YACEC,OAAO,EACL,IAAI,QAAQ;aACV,OAAO,MAAM;YACf,EACF;YALF,IAAA,WAAA;aAOEC,OAAAA,gBAAAA,0BAAAA;cAAiC;cAAjC,IAAA,WAAA;eACG,OAAA,OAAO;cACgB;;YACR;;UACH;;QACF;;MACH;;IACA;;EACG;;AAE7B"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSlider.tsx.
|
|
3
|
+
* Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
|
|
4
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
5
|
+
*/
|
|
6
|
+
import { ContextValue, Ref, RenderProps, SlotProps } from "./utils.js";
|
|
7
|
+
import { JSX } from "@solidjs/web";
|
|
8
|
+
import { AriaColorSliderProps } from "@solid2-aria/core/color/create-color-slider";
|
|
9
|
+
import { ColorSliderState } from "@solid2-aria/stately/color/create-color-slider-state";
|
|
10
|
+
import { Orientation } from "@solid2-aria/types-shared";
|
|
11
|
+
import { GlobalDOMAttributes } from "@solid2-aria/types-shared-web";
|
|
12
|
+
export interface ColorSliderRenderProps {
|
|
13
|
+
orientation: Orientation;
|
|
14
|
+
isDisabled: boolean;
|
|
15
|
+
state: ColorSliderState;
|
|
16
|
+
}
|
|
17
|
+
export interface ColorSliderProps extends Omit<AriaColorSliderProps, "label">, RenderProps<ColorSliderRenderProps>, SlotProps, GlobalDOMAttributes<HTMLDivElement> {
|
|
18
|
+
ref?: Ref<HTMLDivElement>;
|
|
19
|
+
}
|
|
20
|
+
export declare const ColorSliderContext: import("solid-js").Context<ContextValue<Partial<ColorSliderProps>, HTMLDivElement>>;
|
|
21
|
+
export declare const ColorSliderStateContext: import("solid-js").Context<ColorSliderState | null>;
|
|
22
|
+
export declare function ColorSlider(input: ColorSliderProps): JSX.Element;
|
|
23
|
+
//# sourceMappingURL=color-slider.d.ts.map
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Derived from Adobe React Spectrum: packages/react-aria-components/src/ColorSlider.tsx.
|
|
3
|
+
* Modified for Solid Aria: composed Solid Aria and Stately primitives with Solid 2 contexts, reactive getters, and DOM refs; uses Solid class props.
|
|
4
|
+
* Licensed under Apache-2.0. See LICENSES/Apache-2.0.txt and NOTICE.txt at the repository root.
|
|
5
|
+
*/
|
|
6
|
+
import { createContextProps, createRenderProps, createSlot, dom } from "./utils.js";
|
|
7
|
+
import { LabelContext } from "./label.js";
|
|
8
|
+
import { InternalColorThumbContext } from "./color-thumb.js";
|
|
9
|
+
import { SliderOutputContext, SliderStateContext, SliderTrackContext } from "./slider.js";
|
|
10
|
+
import { createComponent, memo, mergeProps } from "@solidjs/web";
|
|
11
|
+
import { mergeProps as mergeProps$1 } from "@solid2-aria/core/utils/merge-props";
|
|
12
|
+
import { createContext, createSignal, merge, omit, untrack } from "solid-js";
|
|
13
|
+
import { filterDOMProps } from "@solid2-aria/core/utils/filter-dom-props";
|
|
14
|
+
import { createLocale } from "@solid2-aria/core/i18n/i18n-provider";
|
|
15
|
+
import { createColorSlider } from "@solid2-aria/core/color/create-color-slider";
|
|
16
|
+
import { createColorSliderState } from "@solid2-aria/stately/color/create-color-slider-state";
|
|
17
|
+
// src/color-slider.tsx
|
|
18
|
+
const ColorSliderContext = createContext(null);
|
|
19
|
+
const ColorSliderStateContext = createContext(null);
|
|
20
|
+
function ColorSlider(input) {
|
|
21
|
+
const [trackRef, setTrackRef] = createSignal(null, { ownedWrite: true });
|
|
22
|
+
const [props, , setRef] = createContextProps(input, untrack(() => input.ref), ColorSliderContext);
|
|
23
|
+
const locale = createLocale();
|
|
24
|
+
const state = createColorSliderState(mergeProps$1(props, { get locale() {
|
|
25
|
+
return locale.locale;
|
|
26
|
+
} }));
|
|
27
|
+
const [inputRef, setInputRef] = createSignal(null, { ownedWrite: true });
|
|
28
|
+
const [registerLabel, label] = createSlot(() => (props["aria-label"]?.length ?? 0) === 0 && (props["aria-labelledby"]?.length ?? 0) === 0);
|
|
29
|
+
const aria = createColorSlider(mergeProps$1(props, {
|
|
30
|
+
inputRef,
|
|
31
|
+
get label() {
|
|
32
|
+
return label();
|
|
33
|
+
},
|
|
34
|
+
trackRef
|
|
35
|
+
}), state);
|
|
36
|
+
const render = createRenderProps(mergeProps$1(props, {
|
|
37
|
+
defaultClass: "solid2-aria-ColorSlider",
|
|
38
|
+
values: {
|
|
39
|
+
get isDisabled() {
|
|
40
|
+
return state.isDisabled;
|
|
41
|
+
},
|
|
42
|
+
get orientation() {
|
|
43
|
+
return state.orientation;
|
|
44
|
+
},
|
|
45
|
+
state
|
|
46
|
+
}
|
|
47
|
+
}));
|
|
48
|
+
const thumb = {
|
|
49
|
+
inputXRef: inputRef,
|
|
50
|
+
get isDisabled() {
|
|
51
|
+
return props.isDisabled;
|
|
52
|
+
},
|
|
53
|
+
setInputXRef: setInputRef,
|
|
54
|
+
state,
|
|
55
|
+
get thumbProps() {
|
|
56
|
+
return aria.thumbProps;
|
|
57
|
+
},
|
|
58
|
+
get xInputProps() {
|
|
59
|
+
return aria.inputProps;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
return createComponent(ColorSliderStateContext, {
|
|
63
|
+
value: state,
|
|
64
|
+
get children() {
|
|
65
|
+
return createComponent(SliderStateContext, {
|
|
66
|
+
value: state,
|
|
67
|
+
get children() {
|
|
68
|
+
return createComponent(SliderTrackContext, {
|
|
69
|
+
get value() {
|
|
70
|
+
return mergeProps$1(merge(() => aria.trackProps), {
|
|
71
|
+
ref: (element) => {
|
|
72
|
+
setTrackRef(element);
|
|
73
|
+
},
|
|
74
|
+
trackRef
|
|
75
|
+
});
|
|
76
|
+
},
|
|
77
|
+
get children() {
|
|
78
|
+
return createComponent(SliderOutputContext, {
|
|
79
|
+
get value() {
|
|
80
|
+
return merge(() => aria.outputProps);
|
|
81
|
+
},
|
|
82
|
+
get children() {
|
|
83
|
+
return createComponent(LabelContext, {
|
|
84
|
+
get value() {
|
|
85
|
+
return mergeProps$1(merge(() => aria.labelProps), {
|
|
86
|
+
get children() {
|
|
87
|
+
return state.value.getChannelName(props.channel, locale.locale);
|
|
88
|
+
},
|
|
89
|
+
registerSlot: registerLabel
|
|
90
|
+
});
|
|
91
|
+
},
|
|
92
|
+
get children() {
|
|
93
|
+
return createComponent(InternalColorThumbContext, {
|
|
94
|
+
value: thumb,
|
|
95
|
+
get children() {
|
|
96
|
+
return createComponent(dom.div, mergeProps(() => {
|
|
97
|
+
return omit(filterDOMProps(props, { global: true }), "id");
|
|
98
|
+
}, render, {
|
|
99
|
+
ref: (element) => {
|
|
100
|
+
setRef(element);
|
|
101
|
+
},
|
|
102
|
+
get slot() {
|
|
103
|
+
return memo(() => {
|
|
104
|
+
return !!(typeof props.slot === "string" && props.slot.length > 0);
|
|
105
|
+
})() ? props.slot : void 0;
|
|
106
|
+
},
|
|
107
|
+
get "data-orientation"() {
|
|
108
|
+
return state.orientation;
|
|
109
|
+
},
|
|
110
|
+
get "data-disabled"() {
|
|
111
|
+
return state.isDisabled || void 0;
|
|
112
|
+
},
|
|
113
|
+
get children() {
|
|
114
|
+
return render.children;
|
|
115
|
+
}
|
|
116
|
+
}));
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
export { ColorSlider, ColorSliderContext, ColorSliderStateContext };
|
|
131
|
+
|
|
132
|
+
//# sourceMappingURL=color-slider.js.map
|