@accelint/design-system 0.3.2 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -7
- package/dist/chunk-PZ5AY32C.js +9 -0
- package/dist/chunk-PZ5AY32C.js.map +1 -0
- package/dist/components/aria/aria.d.ts +32 -0
- package/dist/components/aria/aria.js +39 -0
- package/dist/components/aria/aria.js.map +1 -0
- package/dist/components/aria/index.d.ts +3 -0
- package/dist/components/aria/index.js +4 -0
- package/dist/components/aria/index.js.map +1 -0
- package/dist/components/button/button.css.d.ts +41 -0
- package/dist/components/button/button.css.js +12 -0
- package/dist/components/button/button.css.js.map +1 -0
- package/dist/components/button/button.d.ts +47 -0
- package/dist/components/button/button.js +104 -0
- package/dist/components/button/button.js.map +1 -0
- package/dist/components/button/index.d.ts +8 -0
- package/dist/components/button/index.js +6 -0
- package/dist/components/button/index.js.map +1 -0
- package/dist/components/button/types.d.ts +32 -0
- package/dist/components/button/types.js +3 -0
- package/dist/components/button/types.js.map +1 -0
- package/dist/components/checkbox/checkbox.css.d.ts +44 -0
- package/dist/components/checkbox/checkbox.css.js +14 -0
- package/dist/components/checkbox/checkbox.css.js.map +1 -0
- package/dist/components/checkbox/checkbox.d.ts +30 -0
- package/dist/components/checkbox/checkbox.js +123 -0
- package/dist/components/checkbox/checkbox.js.map +1 -0
- package/dist/components/checkbox/index.d.ts +9 -0
- package/dist/components/checkbox/index.js +6 -0
- package/dist/components/checkbox/index.js.map +1 -0
- package/dist/components/checkbox/types.d.ts +41 -0
- package/dist/components/checkbox/types.js +3 -0
- package/dist/components/checkbox/types.js.map +1 -0
- package/dist/components/chip/chip.css.d.ts +41 -0
- package/dist/components/chip/chip.css.js +12 -0
- package/dist/components/chip/chip.css.js.map +1 -0
- package/dist/components/chip/chip.d.ts +41 -0
- package/dist/components/chip/chip.js +171 -0
- package/dist/components/chip/chip.js.map +1 -0
- package/dist/components/chip/index.d.ts +11 -0
- package/dist/components/chip/index.js +6 -0
- package/dist/components/chip/index.js.map +1 -0
- package/dist/components/chip/types.d.ts +37 -0
- package/dist/components/chip/types.js +3 -0
- package/dist/components/chip/types.js.map +1 -0
- package/dist/components/collection/collection.d.ts +17 -0
- package/dist/components/collection/collection.js +22 -0
- package/dist/components/collection/collection.js.map +1 -0
- package/dist/components/collection/index.d.ts +6 -0
- package/dist/components/collection/index.js +4 -0
- package/dist/components/collection/index.js.map +1 -0
- package/dist/components/combo-box/combo-box.css.d.ts +35 -0
- package/dist/components/combo-box/combo-box.css.js +12 -0
- package/dist/components/combo-box/combo-box.css.js.map +1 -0
- package/dist/components/combo-box/combo-box.d.ts +21 -0
- package/dist/components/combo-box/combo-box.js +116 -0
- package/dist/components/combo-box/combo-box.js.map +1 -0
- package/dist/components/combo-box/index.d.ts +13 -0
- package/dist/components/combo-box/index.js +6 -0
- package/dist/components/combo-box/index.js.map +1 -0
- package/dist/components/combo-box/types.d.ts +38 -0
- package/dist/components/combo-box/types.js +3 -0
- package/dist/components/combo-box/types.js.map +1 -0
- package/dist/components/dialog/dialog.css.d.ts +45 -0
- package/dist/components/dialog/dialog.css.js +12 -0
- package/dist/components/dialog/dialog.css.js.map +1 -0
- package/dist/components/dialog/dialog.d.ts +29 -0
- package/dist/components/dialog/dialog.js +186 -0
- package/dist/components/dialog/dialog.js.map +1 -0
- package/dist/components/dialog/index.d.ts +11 -0
- package/dist/components/dialog/index.js +6 -0
- package/dist/components/dialog/index.js.map +1 -0
- package/dist/components/dialog/types.d.ts +53 -0
- package/dist/components/dialog/types.js +3 -0
- package/dist/components/dialog/types.js.map +1 -0
- package/dist/components/drawer/drawer.css.d.ts +48 -0
- package/dist/components/drawer/drawer.css.js +14 -0
- package/dist/components/drawer/drawer.css.js.map +1 -0
- package/dist/components/drawer/drawer.d.ts +28 -0
- package/dist/components/drawer/drawer.js +304 -0
- package/dist/components/drawer/drawer.js.map +1 -0
- package/dist/components/drawer/index.d.ts +16 -0
- package/dist/components/drawer/index.js +6 -0
- package/dist/components/drawer/index.js.map +1 -0
- package/dist/components/drawer/types.d.ts +77 -0
- package/dist/components/drawer/types.js +3 -0
- package/dist/components/drawer/types.js.map +1 -0
- package/dist/components/element/element.d.ts +16 -0
- package/dist/components/element/element.js +24 -0
- package/dist/components/element/element.js.map +1 -0
- package/dist/components/element/index.d.ts +5 -0
- package/dist/components/element/index.js +5 -0
- package/dist/components/element/index.js.map +1 -0
- package/dist/components/element/types.d.ts +24 -0
- package/dist/components/element/types.js +3 -0
- package/dist/components/element/types.js.map +1 -0
- package/dist/components/group/group.css.d.ts +20 -0
- package/dist/components/group/group.css.js +11 -0
- package/dist/components/group/group.css.js.map +1 -0
- package/dist/components/group/group.d.ts +16 -0
- package/dist/components/group/group.js +61 -0
- package/dist/components/group/group.js.map +1 -0
- package/dist/components/group/index.d.ts +6 -0
- package/dist/components/group/index.js +6 -0
- package/dist/components/group/index.js.map +1 -0
- package/dist/components/group/types.d.ts +38 -0
- package/dist/components/group/types.js +3 -0
- package/dist/components/group/types.js.map +1 -0
- package/dist/components/icon/icon.css.d.ts +23 -0
- package/dist/components/icon/icon.css.js +12 -0
- package/dist/components/icon/icon.css.js.map +1 -0
- package/dist/components/icon/icon.d.ts +17 -0
- package/dist/components/icon/icon.js +39 -0
- package/dist/components/icon/icon.js.map +1 -0
- package/dist/components/icon/index.d.ts +5 -0
- package/dist/components/icon/index.js +6 -0
- package/dist/components/icon/index.js.map +1 -0
- package/dist/components/icon/types.d.ts +16 -0
- package/dist/components/icon/types.js +3 -0
- package/dist/components/icon/types.js.map +1 -0
- package/dist/components/index.d.ts +93 -0
- package/dist/components/index.js +31 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/input/index.d.ts +6 -0
- package/dist/components/input/index.js +6 -0
- package/dist/components/input/index.js.map +1 -0
- package/dist/components/input/input.css.d.ts +34 -0
- package/dist/components/input/input.css.js +12 -0
- package/dist/components/input/input.css.js.map +1 -0
- package/dist/components/input/input.d.ts +13 -0
- package/dist/components/input/input.js +141 -0
- package/dist/components/input/input.js.map +1 -0
- package/dist/components/input/types.d.ts +47 -0
- package/dist/components/input/types.js +3 -0
- package/dist/components/input/types.js.map +1 -0
- package/dist/components/menu/index.d.ts +8 -0
- package/dist/components/menu/index.js +6 -0
- package/dist/components/menu/index.js.map +1 -0
- package/dist/components/menu/menu.css.d.ts +83 -0
- package/dist/components/menu/menu.css.js +13 -0
- package/dist/components/menu/menu.css.js.map +1 -0
- package/dist/components/menu/menu.d.ts +32 -0
- package/dist/components/menu/menu.js +252 -0
- package/dist/components/menu/menu.js.map +1 -0
- package/dist/components/menu/types.d.ts +51 -0
- package/dist/components/menu/types.js +3 -0
- package/dist/components/menu/types.js.map +1 -0
- package/dist/components/merge-provider/index.d.ts +5 -0
- package/dist/components/merge-provider/index.js +5 -0
- package/dist/components/merge-provider/index.js.map +1 -0
- package/dist/components/merge-provider/merge-provider.d.ts +20 -0
- package/dist/components/merge-provider/merge-provider.js +46 -0
- package/dist/components/merge-provider/merge-provider.js.map +1 -0
- package/dist/components/merge-provider/types.d.ts +8 -0
- package/dist/components/merge-provider/types.js +3 -0
- package/dist/components/merge-provider/types.js.map +1 -0
- package/dist/components/number-field/index.d.ts +12 -0
- package/dist/components/number-field/index.js +5 -0
- package/dist/components/number-field/index.js.map +1 -0
- package/dist/components/number-field/number-field.css.d.ts +40 -0
- package/dist/components/number-field/number-field.css.js +12 -0
- package/dist/components/number-field/number-field.css.js.map +1 -0
- package/dist/components/number-field/number-field.d.ts +20 -0
- package/dist/components/number-field/number-field.js +125 -0
- package/dist/components/number-field/number-field.js.map +1 -0
- package/dist/components/number-field/types.d.ts +38 -0
- package/dist/components/number-field/types.js +3 -0
- package/dist/components/number-field/types.js.map +1 -0
- package/dist/components/options/index.d.ts +8 -0
- package/dist/components/options/index.js +6 -0
- package/dist/components/options/index.js.map +1 -0
- package/dist/components/options/options.css.d.ts +87 -0
- package/dist/components/options/options.css.js +14 -0
- package/dist/components/options/options.css.js.map +1 -0
- package/dist/components/options/options.d.ts +28 -0
- package/dist/components/options/options.js +253 -0
- package/dist/components/options/options.js.map +1 -0
- package/dist/components/options/types.d.ts +52 -0
- package/dist/components/options/types.js +3 -0
- package/dist/components/options/types.js.map +1 -0
- package/dist/components/picker/index.d.ts +6 -0
- package/dist/components/picker/index.js +6 -0
- package/dist/components/picker/index.js.map +1 -0
- package/dist/components/picker/picker.css.d.ts +37 -0
- package/dist/components/picker/picker.css.js +13 -0
- package/dist/components/picker/picker.css.js.map +1 -0
- package/dist/components/picker/picker.d.ts +24 -0
- package/dist/components/picker/picker.js +113 -0
- package/dist/components/picker/picker.js.map +1 -0
- package/dist/components/picker/picker.stories.css.d.ts +5 -0
- package/dist/components/picker/picker.stories.css.js +10 -0
- package/dist/components/picker/picker.stories.css.js.map +1 -0
- package/dist/components/picker/types.d.ts +30 -0
- package/dist/components/picker/types.js +3 -0
- package/dist/components/picker/types.js.map +1 -0
- package/dist/components/popover/index.d.ts +14 -0
- package/dist/components/popover/index.js +6 -0
- package/dist/components/popover/index.js.map +1 -0
- package/dist/components/popover/popover.css.d.ts +45 -0
- package/dist/components/popover/popover.css.js +12 -0
- package/dist/components/popover/popover.css.js.map +1 -0
- package/dist/components/popover/popover.d.ts +22 -0
- package/dist/components/popover/popover.js +139 -0
- package/dist/components/popover/popover.js.map +1 -0
- package/dist/components/popover/types.d.ts +39 -0
- package/dist/components/popover/types.js +3 -0
- package/dist/components/popover/types.js.map +1 -0
- package/dist/components/query-builder/action-element.d.ts +23 -0
- package/dist/components/query-builder/action-element.js +26 -0
- package/dist/components/query-builder/action-element.js.map +1 -0
- package/dist/components/query-builder/constants.d.ts +25 -0
- package/dist/components/query-builder/constants.js +25 -0
- package/dist/components/query-builder/constants.js.map +1 -0
- package/dist/components/query-builder/dataset-sample.d.ts +95 -0
- package/dist/components/query-builder/dataset-sample.js +288 -0
- package/dist/components/query-builder/dataset-sample.js.map +1 -0
- package/dist/components/query-builder/group.d.ts +9 -0
- package/dist/components/query-builder/group.js +396 -0
- package/dist/components/query-builder/group.js.map +1 -0
- package/dist/components/query-builder/index.d.ts +23 -0
- package/dist/components/query-builder/index.js +8 -0
- package/dist/components/query-builder/index.js.map +1 -0
- package/dist/components/query-builder/query-builder.css.d.ts +116 -0
- package/dist/components/query-builder/query-builder.css.js +14 -0
- package/dist/components/query-builder/query-builder.css.js.map +1 -0
- package/dist/components/query-builder/query-builder.d.ts +23 -0
- package/dist/components/query-builder/query-builder.js +196 -0
- package/dist/components/query-builder/query-builder.js.map +1 -0
- package/dist/components/query-builder/rule.d.ts +7 -0
- package/dist/components/query-builder/rule.js +401 -0
- package/dist/components/query-builder/rule.js.map +1 -0
- package/dist/components/query-builder/types.d.ts +146 -0
- package/dist/components/query-builder/types.js +3 -0
- package/dist/components/query-builder/types.js.map +1 -0
- package/dist/components/query-builder/utils.d.ts +32 -0
- package/dist/components/query-builder/utils.js +25 -0
- package/dist/components/query-builder/utils.js.map +1 -0
- package/dist/components/query-builder/value-editor.d.ts +24 -0
- package/dist/components/query-builder/value-editor.js +207 -0
- package/dist/components/query-builder/value-editor.js.map +1 -0
- package/dist/components/query-builder/value-selector.d.ts +6 -0
- package/dist/components/query-builder/value-selector.js +77 -0
- package/dist/components/query-builder/value-selector.js.map +1 -0
- package/dist/components/radio/index.d.ts +7 -0
- package/dist/components/radio/index.js +6 -0
- package/dist/components/radio/index.js.map +1 -0
- package/dist/components/radio/radio.css.d.ts +41 -0
- package/dist/components/radio/radio.css.js +14 -0
- package/dist/components/radio/radio.css.js.map +1 -0
- package/dist/components/radio/radio.d.ts +23 -0
- package/dist/components/radio/radio.js +114 -0
- package/dist/components/radio/radio.js.map +1 -0
- package/dist/components/radio/types.d.ts +32 -0
- package/dist/components/radio/types.js +3 -0
- package/dist/components/radio/types.js.map +1 -0
- package/dist/components/search-field/index.d.ts +12 -0
- package/dist/components/search-field/index.js +6 -0
- package/dist/components/search-field/index.js.map +1 -0
- package/dist/components/search-field/search-field.css.d.ts +28 -0
- package/dist/components/search-field/search-field.css.js +11 -0
- package/dist/components/search-field/search-field.css.js.map +1 -0
- package/dist/components/search-field/search-field.d.ts +21 -0
- package/dist/components/search-field/search-field.js +92 -0
- package/dist/components/search-field/search-field.js.map +1 -0
- package/dist/components/search-field/types.d.ts +34 -0
- package/dist/components/search-field/types.js +3 -0
- package/dist/components/search-field/types.js.map +1 -0
- package/dist/components/select/index.d.ts +12 -0
- package/dist/components/select/index.js +6 -0
- package/dist/components/select/index.js.map +1 -0
- package/dist/components/select/select.css.d.ts +37 -0
- package/dist/components/select/select.css.js +12 -0
- package/dist/components/select/select.css.js.map +1 -0
- package/dist/components/select/select.d.ts +20 -0
- package/dist/components/select/select.js +109 -0
- package/dist/components/select/select.js.map +1 -0
- package/dist/components/select/types.d.ts +36 -0
- package/dist/components/select/types.js +3 -0
- package/dist/components/select/types.js.map +1 -0
- package/dist/components/switch/index.d.ts +6 -0
- package/dist/components/switch/index.js +6 -0
- package/dist/components/switch/index.js.map +1 -0
- package/dist/components/switch/switch.css.d.ts +31 -0
- package/dist/components/switch/switch.css.js +12 -0
- package/dist/components/switch/switch.css.js.map +1 -0
- package/dist/components/switch/switch.d.ts +10 -0
- package/dist/components/switch/switch.js +60 -0
- package/dist/components/switch/switch.js.map +1 -0
- package/dist/components/switch/types.d.ts +21 -0
- package/dist/components/switch/types.js +3 -0
- package/dist/components/switch/types.js.map +1 -0
- package/dist/components/tabs/index.d.ts +8 -0
- package/dist/components/tabs/index.js +6 -0
- package/dist/components/tabs/index.js.map +1 -0
- package/dist/components/tabs/tabs.css.d.ts +57 -0
- package/dist/components/tabs/tabs.css.js +15 -0
- package/dist/components/tabs/tabs.css.js.map +1 -0
- package/dist/components/tabs/tabs.d.ts +75 -0
- package/dist/components/tabs/tabs.js +258 -0
- package/dist/components/tabs/tabs.js.map +1 -0
- package/dist/components/tabs/types.d.ts +84 -0
- package/dist/components/tabs/types.js +3 -0
- package/dist/components/tabs/types.js.map +1 -0
- package/dist/components/text-field/index.d.ts +9 -0
- package/dist/components/text-field/index.js +5 -0
- package/dist/components/text-field/index.js.map +1 -0
- package/dist/components/text-field/text-field.css.d.ts +28 -0
- package/dist/components/text-field/text-field.css.js +12 -0
- package/dist/components/text-field/text-field.css.js.map +1 -0
- package/dist/components/text-field/text-field.d.ts +62 -0
- package/dist/components/text-field/text-field.js +91 -0
- package/dist/components/text-field/text-field.js.map +1 -0
- package/dist/components/text-field/types.d.ts +28 -0
- package/dist/components/text-field/types.js +3 -0
- package/dist/components/text-field/types.js.map +1 -0
- package/dist/components/textarea/index.d.ts +6 -0
- package/dist/components/textarea/index.js +6 -0
- package/dist/components/textarea/index.js.map +1 -0
- package/dist/components/textarea/textarea.css.d.ts +37 -0
- package/dist/components/textarea/textarea.css.js +12 -0
- package/dist/components/textarea/textarea.css.js.map +1 -0
- package/dist/components/textarea/textarea.d.ts +19 -0
- package/dist/components/textarea/textarea.js +134 -0
- package/dist/components/textarea/textarea.js.map +1 -0
- package/dist/components/textarea/types.d.ts +42 -0
- package/dist/components/textarea/types.js +3 -0
- package/dist/components/textarea/types.js.map +1 -0
- package/dist/components/tooltip/index.d.ts +7 -0
- package/dist/components/tooltip/index.js +6 -0
- package/dist/components/tooltip/index.js.map +1 -0
- package/dist/components/tooltip/tooltip.css.d.ts +30 -0
- package/dist/components/tooltip/tooltip.css.js +12 -0
- package/dist/components/tooltip/tooltip.css.js.map +1 -0
- package/dist/components/tooltip/tooltip.d.ts +30 -0
- package/dist/components/tooltip/tooltip.js +112 -0
- package/dist/components/tooltip/tooltip.js.map +1 -0
- package/dist/components/tooltip/types.d.ts +41 -0
- package/dist/components/tooltip/types.js +3 -0
- package/dist/components/tooltip/types.js.map +1 -0
- package/dist/components/tree/index.d.ts +17 -0
- package/dist/components/tree/index.js +6 -0
- package/dist/components/tree/index.js.map +1 -0
- package/dist/components/tree/tree.css.d.ts +89 -0
- package/dist/components/tree/tree.css.js +15 -0
- package/dist/components/tree/tree.css.js.map +1 -0
- package/dist/components/tree/tree.d.ts +29 -0
- package/dist/components/tree/tree.js +488 -0
- package/dist/components/tree/tree.js.map +1 -0
- package/dist/components/tree/types.d.ts +121 -0
- package/dist/components/tree/types.js +3 -0
- package/dist/components/tree/types.js.map +1 -0
- package/dist/components/tree/utils.d.ts +12 -0
- package/dist/components/tree/utils.js +89 -0
- package/dist/components/tree/utils.js.map +1 -0
- package/dist/hooks/index.d.ts +52 -0
- package/dist/hooks/index.js +11 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/use-collection-render/index.d.ts +3 -0
- package/dist/hooks/use-collection-render/index.js +4 -0
- package/dist/hooks/use-collection-render/index.js.map +1 -0
- package/dist/hooks/use-collection-render/use-collection-render.d.ts +11 -0
- package/dist/hooks/use-collection-render/use-collection-render.js +27 -0
- package/dist/hooks/use-collection-render/use-collection-render.js.map +1 -0
- package/dist/hooks/use-context-props/index.d.ts +3 -0
- package/dist/hooks/use-context-props/index.js +4 -0
- package/dist/hooks/use-context-props/index.js.map +1 -0
- package/dist/hooks/use-context-props/use-context-props.d.ts +10 -0
- package/dist/hooks/use-context-props/use-context-props.js +18 -0
- package/dist/hooks/use-context-props/use-context-props.js.map +1 -0
- package/dist/hooks/use-defaults/index.d.ts +37 -0
- package/dist/hooks/use-defaults/index.js +5 -0
- package/dist/hooks/use-defaults/index.js.map +1 -0
- package/dist/hooks/use-defaults/types.d.ts +83 -0
- package/dist/hooks/use-defaults/types.js +3 -0
- package/dist/hooks/use-defaults/types.js.map +1 -0
- package/dist/hooks/use-defaults/use-defaults.d.ts +96 -0
- package/dist/hooks/use-defaults/use-defaults.js +36 -0
- package/dist/hooks/use-defaults/use-defaults.js.map +1 -0
- package/dist/hooks/use-propagating-press/index.d.ts +2 -0
- package/dist/hooks/use-propagating-press/index.js +4 -0
- package/dist/hooks/use-propagating-press/index.js.map +1 -0
- package/dist/hooks/use-propagating-press/use-propagating-press.d.ts +13 -0
- package/dist/hooks/use-propagating-press/use-propagating-press.js +21 -0
- package/dist/hooks/use-propagating-press/use-propagating-press.js.map +1 -0
- package/dist/hooks/use-slot/index.d.ts +2 -0
- package/dist/hooks/use-slot/index.js +4 -0
- package/dist/hooks/use-slot/index.js.map +1 -0
- package/dist/hooks/use-slot/use-slot.d.ts +16 -0
- package/dist/hooks/use-slot/use-slot.js +21 -0
- package/dist/hooks/use-slot/use-slot.js.map +1 -0
- package/dist/hooks/use-theme/index.d.ts +43 -0
- package/dist/hooks/use-theme/index.js +5 -0
- package/dist/hooks/use-theme/index.js.map +1 -0
- package/dist/hooks/use-theme/types.d.ts +104 -0
- package/dist/hooks/use-theme/types.js +3 -0
- package/dist/hooks/use-theme/types.js.map +1 -0
- package/dist/hooks/use-theme/use-theme.css.d.ts +3 -0
- package/dist/hooks/use-theme/use-theme.css.js +8 -0
- package/dist/hooks/use-theme/use-theme.css.js.map +1 -0
- package/dist/hooks/use-theme/use-theme.d.ts +55 -0
- package/dist/hooks/use-theme/use-theme.js +108 -0
- package/dist/hooks/use-theme/use-theme.js.map +1 -0
- package/dist/hooks/use-tree/index.d.ts +4 -0
- package/dist/hooks/use-tree/index.js +4 -0
- package/dist/hooks/use-tree/index.js.map +1 -0
- package/dist/hooks/use-tree/use-tree.d.ts +7 -0
- package/dist/hooks/use-tree/use-tree.js +257 -0
- package/dist/hooks/use-tree/use-tree.js.map +1 -0
- package/dist/hooks/use-tree/utils.d.ts +10 -0
- package/dist/hooks/use-tree/utils.js +84 -0
- package/dist/hooks/use-tree/utils.js.map +1 -0
- package/dist/hooks/use-update-effect/index.d.ts +1 -0
- package/dist/hooks/use-update-effect/index.js +4 -0
- package/dist/hooks/use-update-effect/index.js.map +1 -0
- package/dist/hooks/use-update-effect/use-update-effect.d.ts +3 -0
- package/dist/hooks/use-update-effect/use-update-effect.js +23 -0
- package/dist/hooks/use-update-effect/use-update-effect.js.map +1 -0
- package/dist/index.css +90 -53
- package/dist/index.d.ts +113 -757
- package/dist/index.js +5 -5278
- package/dist/index.js.map +1 -1
- package/dist/ladle/actions.d.ts +3 -0
- package/dist/ladle/actions.js +26 -0
- package/dist/ladle/actions.js.map +1 -0
- package/dist/ladle/index.d.ts +1 -0
- package/dist/ladle/index.js +4 -0
- package/dist/ladle/index.js.map +1 -0
- package/dist/styles/index.d.ts +6 -0
- package/dist/styles/index.js +9 -0
- package/dist/styles/index.js.map +1 -0
- package/dist/styles/layers.css.d.ts +18 -0
- package/dist/styles/layers.css.js +8 -0
- package/dist/styles/layers.css.js.map +1 -0
- package/dist/styles/reset.css.d.ts +2 -0
- package/dist/styles/reset.css.js +3 -0
- package/dist/styles/reset.css.js.map +1 -0
- package/dist/styles/space.css.d.ts +2 -0
- package/dist/styles/space.css.js +3 -0
- package/dist/styles/space.css.js.map +1 -0
- package/dist/styles/surfaces.css.d.ts +6 -0
- package/dist/styles/surfaces.css.js +8 -0
- package/dist/styles/surfaces.css.js.map +1 -0
- package/dist/styles/theme.css.d.ts +337 -0
- package/dist/styles/theme.css.js +35 -0
- package/dist/styles/theme.css.js.map +1 -0
- package/dist/styles/typography.css.d.ts +21 -0
- package/dist/styles/typography.css.js +12 -0
- package/dist/styles/typography.css.js.map +1 -0
- package/dist/test/setup.d.ts +2 -0
- package/dist/test/setup.js +6879 -0
- package/dist/test/setup.js.map +1 -0
- package/dist/types/deckgl.d.ts +3 -0
- package/dist/types/deckgl.js +3 -0
- package/dist/types/deckgl.js.map +1 -0
- package/dist/types/generic.d.ts +5 -0
- package/dist/types/generic.js +3 -0
- package/dist/types/generic.js.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/props.d.ts +6 -0
- package/dist/types/props.js +3 -0
- package/dist/types/props.js.map +1 -0
- package/dist/types/react-aria.d.ts +94 -0
- package/dist/types/react-aria.js +3 -0
- package/dist/types/react-aria.js.map +1 -0
- package/dist/types/react.d.d.ts +6 -0
- package/dist/types/react.d.js +3 -0
- package/dist/types/react.d.js.map +1 -0
- package/dist/types/use-tree.d.ts +55 -0
- package/dist/types/use-tree.js +3 -0
- package/dist/types/use-tree.js.map +1 -0
- package/dist/types/vanilla-extract.d.ts +18 -0
- package/dist/types/vanilla-extract.js +3 -0
- package/dist/types/vanilla-extract.js.map +1 -0
- package/dist/utils/css.d.ts +142 -0
- package/dist/utils/css.js +165 -0
- package/dist/utils/css.js.map +1 -0
- package/dist/utils/events.d.ts +11 -0
- package/dist/utils/events.js +10 -0
- package/dist/utils/events.js.map +1 -0
- package/dist/utils/index.d.ts +10 -0
- package/dist/utils/index.js +7 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/props.d.ts +32 -0
- package/dist/utils/props.js +145 -0
- package/dist/utils/props.js.map +1 -0
- package/dist/utils/validators.d.ts +52 -0
- package/dist/utils/validators.js +42 -0
- package/dist/utils/validators.js.map +1 -0
- package/dist/vanilla.d.ts +66 -5
- package/dist/vanilla.js +27 -1
- package/dist/vanilla.js.map +1 -1
- package/package.json +30 -21
- package/dist/chunk-4ZUGQMUD.js +0 -419
- package/dist/chunk-4ZUGQMUD.js.map +0 -1
- package/dist/index.css.map +0 -1
- package/dist/vanilla-Ibcop5d3.d.ts +0 -2627
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { ButtonProps, LinkButtonProps, ToggleButtonProps } from '../../components/button/types.js';
|
|
3
|
+
import { CheckboxProps, CheckboxGroupProps } from '../../components/checkbox/types.js';
|
|
4
|
+
import { ChipProps, ChipGroupProps } from '../../components/chip/types.js';
|
|
5
|
+
import { OmitProtectedProps } from '../../types/props.js';
|
|
6
|
+
import { ComboBoxProps } from '../../components/combo-box/types.js';
|
|
7
|
+
import { DialogProps } from '../../components/dialog/types.js';
|
|
8
|
+
import { DrawerProps, DrawerTabProps, DrawerTabListProps } from '../../components/drawer/types.js';
|
|
9
|
+
import { IconProps } from '../../components/icon/types.js';
|
|
10
|
+
import { InputProps } from '../../components/input/types.js';
|
|
11
|
+
import { MenuProps, MenuListProps, MenuItemProps } from '../../components/menu/types.js';
|
|
12
|
+
import { NumberFieldProps } from '../../components/number-field/types.js';
|
|
13
|
+
import { OptionsProps, OptionsListProps, OptionsItemProps } from '../../components/options/types.js';
|
|
14
|
+
import { PickerProps } from '../../components/picker/types.js';
|
|
15
|
+
import { PopoverProps } from '../../components/popover/types.js';
|
|
16
|
+
import { RadioProps, RadioGroupProps } from '../../components/radio/types.js';
|
|
17
|
+
import { SelectProps } from '../../components/select/types.js';
|
|
18
|
+
import { SwitchProps } from '../../components/switch/types.js';
|
|
19
|
+
import { TextAreaProps } from '../../components/textarea/types.js';
|
|
20
|
+
import { SearchFieldProps } from '../../components/search-field/types.js';
|
|
21
|
+
import { TabProps, TabListProps, TabPanelProps, TabPanelsProps, TabsProps } from '../../components/tabs/types.js';
|
|
22
|
+
import { TextFieldProps } from '../../components/text-field/types.js';
|
|
23
|
+
import { TooltipProps, TooltipTargetProps } from '../../components/tooltip/types.js';
|
|
24
|
+
import { TreeProps } from '../../components/tree/types.js';
|
|
25
|
+
import { DefaultsContext, DefaultsProviderProps } from './types.js';
|
|
26
|
+
import 'react-aria-components';
|
|
27
|
+
import '../../types/react-aria.js';
|
|
28
|
+
import 'react';
|
|
29
|
+
import '@react-types/shared';
|
|
30
|
+
import 'type-fest';
|
|
31
|
+
import '../../types/generic.js';
|
|
32
|
+
import '../../components/group/types.js';
|
|
33
|
+
import '@react-aria/overlays';
|
|
34
|
+
import '@react-stately/overlays';
|
|
35
|
+
import '../../types/use-tree.js';
|
|
36
|
+
import '@react-stately/data';
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Access globally established component prop defaults
|
|
40
|
+
*/
|
|
41
|
+
declare function useDefaults(): {
|
|
42
|
+
Button?: OmitProtectedProps<ButtonProps> | undefined;
|
|
43
|
+
Checkbox?: OmitProtectedProps<CheckboxProps> | undefined;
|
|
44
|
+
CheckboxGroup?: OmitProtectedProps<CheckboxGroupProps> | undefined;
|
|
45
|
+
Chip?: OmitProtectedProps<ChipProps> | undefined;
|
|
46
|
+
ChipGroup?: OmitProtectedProps<ChipGroupProps> | undefined;
|
|
47
|
+
ComboBox?: OmitProtectedProps<ComboBoxProps<object>> | undefined;
|
|
48
|
+
Dialog?: OmitProtectedProps<DialogProps> | undefined;
|
|
49
|
+
Drawer?: OmitProtectedProps<DrawerProps> | undefined;
|
|
50
|
+
DrawerTab?: OmitProtectedProps<DrawerTabProps> | undefined;
|
|
51
|
+
DrawerTabList?: OmitProtectedProps<DrawerTabListProps<unknown>> | undefined;
|
|
52
|
+
Icon?: OmitProtectedProps<IconProps> | undefined;
|
|
53
|
+
Input?: OmitProtectedProps<InputProps> | undefined;
|
|
54
|
+
LinkButton?: OmitProtectedProps<LinkButtonProps> | undefined;
|
|
55
|
+
Menu?: OmitProtectedProps<MenuProps> | undefined;
|
|
56
|
+
MenuList?: OmitProtectedProps<MenuListProps<unknown>> | undefined;
|
|
57
|
+
MenuItem?: OmitProtectedProps<MenuItemProps<unknown>> | undefined;
|
|
58
|
+
NumberField?: OmitProtectedProps<NumberFieldProps> | undefined;
|
|
59
|
+
Options?: OmitProtectedProps<OptionsProps> | undefined;
|
|
60
|
+
OptionsList?: OmitProtectedProps<OptionsListProps<object>> | undefined;
|
|
61
|
+
OptionsItem?: OmitProtectedProps<OptionsItemProps<object>> | undefined;
|
|
62
|
+
Picker?: OmitProtectedProps<PickerProps<unknown>> | undefined;
|
|
63
|
+
Popover?: OmitProtectedProps<PopoverProps> | undefined;
|
|
64
|
+
Radio?: OmitProtectedProps<RadioProps> | undefined;
|
|
65
|
+
RadioGroup?: OmitProtectedProps<RadioGroupProps> | undefined;
|
|
66
|
+
SearchField?: OmitProtectedProps<SearchFieldProps> | undefined;
|
|
67
|
+
Select?: OmitProtectedProps<SelectProps<object>> | undefined;
|
|
68
|
+
Switch?: OmitProtectedProps<SwitchProps> | undefined;
|
|
69
|
+
Tab?: OmitProtectedProps<TabProps> | undefined;
|
|
70
|
+
TabList?: OmitProtectedProps<TabListProps<unknown>> | undefined;
|
|
71
|
+
TabPanel?: OmitProtectedProps<TabPanelProps> | undefined;
|
|
72
|
+
TabPanels?: OmitProtectedProps<TabPanelsProps> | undefined;
|
|
73
|
+
Tabs?: OmitProtectedProps<TabsProps> | undefined;
|
|
74
|
+
TextArea?: OmitProtectedProps<TextAreaProps> | undefined;
|
|
75
|
+
TextField?: OmitProtectedProps<TextFieldProps> | undefined;
|
|
76
|
+
ToggleButton?: OmitProtectedProps<ToggleButtonProps> | undefined;
|
|
77
|
+
Tooltip?: OmitProtectedProps<TooltipProps> | undefined;
|
|
78
|
+
TooltipTarget?: OmitProtectedProps<TooltipTargetProps> | undefined;
|
|
79
|
+
Tree?: OmitProtectedProps<TreeProps<unknown>> | undefined;
|
|
80
|
+
};
|
|
81
|
+
/**
|
|
82
|
+
* Select default props from context and merge with provided props
|
|
83
|
+
* with provided props taking precedence
|
|
84
|
+
*/
|
|
85
|
+
declare function useDefaultProps<K extends keyof DefaultsContext, P extends DefaultsContext[K]>(props: P, key: K): P;
|
|
86
|
+
/**
|
|
87
|
+
* Set default props for any component, to be merged in with props at point
|
|
88
|
+
* of implementation. Global defaults take lower priority than props from
|
|
89
|
+
* composition context or props attached to instance
|
|
90
|
+
*
|
|
91
|
+
* Nested instances of this provider will shallow merge defaults from parent
|
|
92
|
+
* context, with the defaults prop taking precedence
|
|
93
|
+
*/
|
|
94
|
+
declare function DefaultsProvider({ children, defaults: defaultsProp, }: DefaultsProviderProps): react_jsx_runtime.JSX.Element;
|
|
95
|
+
|
|
96
|
+
export { DefaultsProvider, useDefaultProps, useDefaults };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import '../../chunk-PZ5AY32C.js';
|
|
2
|
+
import { createContext, useContext, useMemo } from 'react';
|
|
3
|
+
import { mergeProps } from '../../utils/index.js';
|
|
4
|
+
import { jsx } from 'react/jsx-runtime';
|
|
5
|
+
|
|
6
|
+
var defaultsContext = createContext({});
|
|
7
|
+
function useDefaults() {
|
|
8
|
+
return useContext(defaultsContext);
|
|
9
|
+
}
|
|
10
|
+
function useDefaultProps(props, key) {
|
|
11
|
+
const defaults = useDefaults();
|
|
12
|
+
const defaultProps = useMemo(
|
|
13
|
+
() => defaults[key] ?? {},
|
|
14
|
+
[defaults, key]
|
|
15
|
+
);
|
|
16
|
+
return useMemo(
|
|
17
|
+
() => mergeProps(defaultProps, props),
|
|
18
|
+
[defaultProps, props]
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
function DefaultsProvider({
|
|
22
|
+
children,
|
|
23
|
+
defaults: defaultsProp
|
|
24
|
+
}) {
|
|
25
|
+
const defaults = useDefaults();
|
|
26
|
+
const context = useMemo(
|
|
27
|
+
() => ({ ...defaults, ...defaultsProp }),
|
|
28
|
+
[defaults, defaultsProp]
|
|
29
|
+
);
|
|
30
|
+
const { Provider } = defaultsContext;
|
|
31
|
+
return /* @__PURE__ */ jsx(Provider, { value: context, children });
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export { DefaultsProvider, useDefaultProps, useDefaults };
|
|
35
|
+
//# sourceMappingURL=use-defaults.js.map
|
|
36
|
+
//# sourceMappingURL=use-defaults.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/use-defaults/use-defaults.tsx"],"names":[],"mappings":";;;;;AAIA,IAAM,eAAA,GAAkB,aAA+B,CAAA,EAAE,CAAA;AAKlD,SAAS,WAAc,GAAA;AAC5B,EAAA,OAAO,WAAW,eAAe,CAAA;AACnC;AAMO,SAAS,eAAA,CAGd,OAAU,GAAW,EAAA;AACrB,EAAA,MAAM,WAAW,WAAY,EAAA;AAE7B,EAAA,MAAM,YAAe,GAAA,OAAA;AAAA,IACnB,MAAO,QAAA,CAAS,GAAG,CAAA,IAAK,EAAC;AAAA,IACzB,CAAC,UAAU,GAAG;AAAA,GAChB;AAEA,EAAO,OAAA,OAAA;AAAA,IACL,MAAM,UAAW,CAAA,YAAA,EAAc,KAAK,CAAA;AAAA,IACpC,CAAC,cAAc,KAAK;AAAA,GACtB;AACF;AAUO,SAAS,gBAAiB,CAAA;AAAA,EAC/B,QAAA;AAAA,EACA,QAAU,EAAA;AACZ,CAA0B,EAAA;AACxB,EAAA,MAAM,WAAW,WAAY,EAAA;AAE7B,EAAA,MAAM,OAAU,GAAA,OAAA;AAAA,IACd,OAAO,EAAE,GAAG,QAAA,EAAU,GAAG,YAAa,EAAA,CAAA;AAAA,IACtC,CAAC,UAAU,YAAY;AAAA,GACzB;AAEA,EAAM,MAAA,EAAE,UAAa,GAAA,eAAA;AAErB,EAAA,uBAAQ,GAAA,CAAA,QAAA,EAAA,EAAS,KAAO,EAAA,OAAA,EAAU,QAAS,EAAA,CAAA;AAC7C","file":"use-defaults.js","sourcesContent":["import { createContext, useContext, useMemo } from 'react';\nimport { mergeProps } from '../../utils';\nimport type { DefaultsContext, DefaultsProviderProps } from './types';\n\nconst defaultsContext = createContext<DefaultsContext>({});\n\n/**\n * Access globally established component prop defaults\n */\nexport function useDefaults() {\n return useContext(defaultsContext);\n}\n\n/**\n * Select default props from context and merge with provided props\n * with provided props taking precedence\n */\nexport function useDefaultProps<\n K extends keyof DefaultsContext,\n P extends DefaultsContext[K],\n>(props: P, key: K): P {\n const defaults = useDefaults();\n\n const defaultProps = useMemo(\n () => (defaults[key] ?? {}) as Partial<P>,\n [defaults, key],\n );\n\n return useMemo(\n () => mergeProps(defaultProps, props) as P,\n [defaultProps, props],\n );\n}\n\n/**\n * Set default props for any component, to be merged in with props at point\n * of implementation. Global defaults take lower priority than props from\n * composition context or props attached to instance\n *\n * Nested instances of this provider will shallow merge defaults from parent\n * context, with the defaults prop taking precedence\n */\nexport function DefaultsProvider({\n children,\n defaults: defaultsProp,\n}: DefaultsProviderProps) {\n const defaults = useDefaults();\n\n const context = useMemo(\n () => ({ ...defaults, ...defaultsProp }),\n [defaults, defaultsProp],\n );\n\n const { Provider } = defaultsContext;\n\n return <Provider value={context}>{children}</Provider>;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as _react_aria_interactions from '@react-aria/interactions';
|
|
2
|
+
import { PressHookProps } from '@react-aria/interactions';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* The default behavior of usePress is to stop all propagation of press events
|
|
6
|
+
*
|
|
7
|
+
* To allow the more typical behavior of event propagation by default, this hook
|
|
8
|
+
* continues propagation of press events. This allows for nested press event
|
|
9
|
+
* listeners to not block press event listeners higher in the heirarchy
|
|
10
|
+
*/
|
|
11
|
+
declare function usePropagatingPress(props: PressHookProps): _react_aria_interactions.PressResult;
|
|
12
|
+
|
|
13
|
+
export { usePropagatingPress };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import '../../chunk-PZ5AY32C.js';
|
|
2
|
+
import { usePress } from '@react-aria/interactions';
|
|
3
|
+
import { mergeProps, continuePropagation } from '../../utils/index.js';
|
|
4
|
+
|
|
5
|
+
function usePropagatingPress(props) {
|
|
6
|
+
return usePress(
|
|
7
|
+
mergeProps(
|
|
8
|
+
{
|
|
9
|
+
onPress: continuePropagation,
|
|
10
|
+
onPressEnd: continuePropagation,
|
|
11
|
+
onPressStart: continuePropagation,
|
|
12
|
+
onPressUp: continuePropagation
|
|
13
|
+
},
|
|
14
|
+
props
|
|
15
|
+
)
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { usePropagatingPress };
|
|
20
|
+
//# sourceMappingURL=use-propagating-press.js.map
|
|
21
|
+
//# sourceMappingURL=use-propagating-press.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/use-propagating-press/use-propagating-press.ts"],"names":[],"mappings":";;;;AAUO,SAAS,oBAAoB,KAAuB,EAAA;AACzD,EAAO,OAAA,QAAA;AAAA,IACL,UAAA;AAAA,MACE;AAAA,QACE,OAAS,EAAA,mBAAA;AAAA,QACT,UAAY,EAAA,mBAAA;AAAA,QACZ,YAAc,EAAA,mBAAA;AAAA,QACd,SAAW,EAAA;AAAA,OACb;AAAA,MACA;AAAA;AACF,GACF;AACF","file":"use-propagating-press.js","sourcesContent":["import { type PressHookProps, usePress } from '@react-aria/interactions';\nimport { continuePropagation, mergeProps } from '../../utils';\n\n/**\n * The default behavior of usePress is to stop all propagation of press events\n *\n * To allow the more typical behavior of event propagation by default, this hook\n * continues propagation of press events. This allows for nested press event\n * listeners to not block press event listeners higher in the heirarchy\n */\nexport function usePropagatingPress(props: PressHookProps) {\n return usePress(\n mergeProps(\n {\n onPress: continuePropagation,\n onPressEnd: continuePropagation,\n onPressStart: continuePropagation,\n onPressUp: continuePropagation,\n },\n props,\n ),\n );\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { RefCallback } from 'react';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Detects whether a slot has been utilized
|
|
5
|
+
*
|
|
6
|
+
* Example:
|
|
7
|
+
* Parent component implements RAC Provider, with a slotted context
|
|
8
|
+
* Child component implements slot prop matching provided slot in context
|
|
9
|
+
* Parent is able to see that the slot has been fulfilled
|
|
10
|
+
*
|
|
11
|
+
* Copied from RAC: https://github.com/adobe/react-spectrum/blob/main/packages/react-aria-components/src/utils.tsx#L213
|
|
12
|
+
* Due to not being exported, but quite handy
|
|
13
|
+
*/
|
|
14
|
+
declare function useSlot(): [RefCallback<Element>, boolean];
|
|
15
|
+
|
|
16
|
+
export { useSlot };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import '../../chunk-PZ5AY32C.js';
|
|
2
|
+
import { useState, useRef, useCallback, useLayoutEffect } from 'react';
|
|
3
|
+
|
|
4
|
+
function useSlot() {
|
|
5
|
+
let [hasSlot, setHasSlot] = useState(true);
|
|
6
|
+
let hasRun = useRef(false);
|
|
7
|
+
let ref = useCallback((el) => {
|
|
8
|
+
hasRun.current = true;
|
|
9
|
+
setHasSlot(!!el);
|
|
10
|
+
}, []);
|
|
11
|
+
useLayoutEffect(() => {
|
|
12
|
+
if (!hasRun.current) {
|
|
13
|
+
setHasSlot(false);
|
|
14
|
+
}
|
|
15
|
+
}, []);
|
|
16
|
+
return [ref, hasSlot];
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { useSlot };
|
|
20
|
+
//# sourceMappingURL=use-slot.js.map
|
|
21
|
+
//# sourceMappingURL=use-slot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/use-slot/use-slot.ts"],"names":[],"mappings":";;;AAmBO,SAAS,OAA2C,GAAA;AAEzD,EAAA,IAAI,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAS,IAAI,CAAA;AACzC,EAAI,IAAA,MAAA,GAAS,OAAO,KAAK,CAAA;AAIzB,EAAI,IAAA,GAAA,GAAM,WAAY,CAAA,CAAC,EAA2B,KAAA;AAChD,IAAA,MAAA,CAAO,OAAU,GAAA,IAAA;AACjB,IAAW,UAAA,CAAA,CAAC,CAAC,EAAE,CAAA;AAAA,GACjB,EAAG,EAAE,CAAA;AAGL,EAAA,eAAA,CAAgB,MAAM;AACpB,IAAI,IAAA,CAAC,OAAO,OAAS,EAAA;AACnB,MAAA,UAAA,CAAW,KAAK,CAAA;AAAA;AAClB,GACF,EAAG,EAAE,CAAA;AAEL,EAAO,OAAA,CAAC,KAAK,OAAO,CAAA;AACtB","file":"use-slot.js","sourcesContent":["import {\n type RefCallback,\n useCallback,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\n\n/**\n * Detects whether a slot has been utilized\n *\n * Example:\n * Parent component implements RAC Provider, with a slotted context\n * Child component implements slot prop matching provided slot in context\n * Parent is able to see that the slot has been fulfilled\n *\n * Copied from RAC: https://github.com/adobe/react-spectrum/blob/main/packages/react-aria-components/src/utils.tsx#L213\n * Due to not being exported, but quite handy\n */\nexport function useSlot(): [RefCallback<Element>, boolean] {\n // Assume we do have the slot in the initial render.\n let [hasSlot, setHasSlot] = useState(true);\n let hasRun = useRef(false);\n\n // A callback ref which will run when the slotted element mounts.\n // This should happen before the useLayoutEffect below.\n let ref = useCallback((el: HTMLElement | null) => {\n hasRun.current = true;\n setHasSlot(!!el);\n }, []);\n\n // If the callback hasn't been called, then reset to false.\n useLayoutEffect(() => {\n if (!hasRun.current) {\n setHasSlot(false);\n }\n }, []);\n\n return [ref, hasSlot];\n}\n"]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export { ThemeContext, ThemeProviderProps, ThemeVars } from './types.js';
|
|
2
|
+
export { ThemeProvider, useTheme } from './use-theme.js';
|
|
3
|
+
import 'react';
|
|
4
|
+
import '../../components/button/types.js';
|
|
5
|
+
import 'react-aria-components';
|
|
6
|
+
import '../../types/props.js';
|
|
7
|
+
import '../../types/react-aria.js';
|
|
8
|
+
import '../../components/icon/types.js';
|
|
9
|
+
import '../../components/checkbox/types.js';
|
|
10
|
+
import '@react-types/shared';
|
|
11
|
+
import 'type-fest';
|
|
12
|
+
import '../../components/chip/types.js';
|
|
13
|
+
import '../../types/generic.js';
|
|
14
|
+
import '../../components/combo-box/types.js';
|
|
15
|
+
import '../../components/input/types.js';
|
|
16
|
+
import '../../components/options/types.js';
|
|
17
|
+
import '../../components/dialog/types.js';
|
|
18
|
+
import '../../components/group/types.js';
|
|
19
|
+
import '../../components/drawer/types.js';
|
|
20
|
+
import '@react-aria/overlays';
|
|
21
|
+
import '@react-stately/overlays';
|
|
22
|
+
import '../../components/tabs/types.js';
|
|
23
|
+
import '../../components/menu/types.js';
|
|
24
|
+
import '../../components/number-field/types.js';
|
|
25
|
+
import '../../components/picker/types.js';
|
|
26
|
+
import '../../components/popover/types.js';
|
|
27
|
+
import '../../components/query-builder/types.js';
|
|
28
|
+
import 'react-querybuilder';
|
|
29
|
+
import '../../components/radio/types.js';
|
|
30
|
+
import '../../components/select/types.js';
|
|
31
|
+
import '../../components/switch/types.js';
|
|
32
|
+
import '../../components/textarea/types.js';
|
|
33
|
+
import '../../components/search-field/types.js';
|
|
34
|
+
import '../../components/text-field/types.js';
|
|
35
|
+
import '../../components/tooltip/types.js';
|
|
36
|
+
import '../../components/tree/types.js';
|
|
37
|
+
import '../../types/use-tree.js';
|
|
38
|
+
import '@react-stately/data';
|
|
39
|
+
import 'react/jsx-runtime';
|
|
40
|
+
import '../../types/vanilla-extract.js';
|
|
41
|
+
import '@vanilla-extract/css';
|
|
42
|
+
import '../../utils/css.js';
|
|
43
|
+
import '../../types/deckgl.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js","sourcesContent":[]}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { CSSProperties, PropsWithChildren } from 'react';
|
|
2
|
+
import { ButtonClassNames } from '../../components/button/types.js';
|
|
3
|
+
import { CheckboxClassNames } from '../../components/checkbox/types.js';
|
|
4
|
+
import { ChipClassNames } from '../../components/chip/types.js';
|
|
5
|
+
import { ComboBoxClassNames } from '../../components/combo-box/types.js';
|
|
6
|
+
import { DialogClassNames } from '../../components/dialog/types.js';
|
|
7
|
+
import { DrawerClassNames } from '../../components/drawer/types.js';
|
|
8
|
+
import { GroupClassNames } from '../../components/group/types.js';
|
|
9
|
+
import { IconClassNames } from '../../components/icon/types.js';
|
|
10
|
+
import { InputClassNames } from '../../components/input/types.js';
|
|
11
|
+
import { MenuClassNames } from '../../components/menu/types.js';
|
|
12
|
+
import { NumberFieldClassNames } from '../../components/number-field/types.js';
|
|
13
|
+
import { OptionsClassNames } from '../../components/options/types.js';
|
|
14
|
+
import { PickerClassNames } from '../../components/picker/types.js';
|
|
15
|
+
import { PopoverClassNames } from '../../components/popover/types.js';
|
|
16
|
+
import { QueryBuilderClassNames } from '../../components/query-builder/types.js';
|
|
17
|
+
import { RadioClassNames } from '../../components/radio/types.js';
|
|
18
|
+
import { SearchFieldClassNames } from '../../components/search-field/types.js';
|
|
19
|
+
import { SelectClassNames } from '../../components/select/types.js';
|
|
20
|
+
import { SwitchClassNames } from '../../components/switch/types.js';
|
|
21
|
+
import { TabsClassNames } from '../../components/tabs/types.js';
|
|
22
|
+
import { TextFieldClassNames } from '../../components/text-field/types.js';
|
|
23
|
+
import { TextAreaClassNames } from '../../components/textarea/types.js';
|
|
24
|
+
import { TooltipClassNames } from '../../components/tooltip/types.js';
|
|
25
|
+
import { TreeClassNames } from '../../components/tree/types.js';
|
|
26
|
+
import 'react-aria-components';
|
|
27
|
+
import '../../types/props.js';
|
|
28
|
+
import '../../types/react-aria.js';
|
|
29
|
+
import '@react-types/shared';
|
|
30
|
+
import 'type-fest';
|
|
31
|
+
import '../../types/generic.js';
|
|
32
|
+
import '@react-aria/overlays';
|
|
33
|
+
import '@react-stately/overlays';
|
|
34
|
+
import 'react-querybuilder';
|
|
35
|
+
import '../../types/use-tree.js';
|
|
36
|
+
import '@react-stately/data';
|
|
37
|
+
|
|
38
|
+
type ThemeContext = {
|
|
39
|
+
/**
|
|
40
|
+
* Intended as a way to pass classNames down to nested themes or global portals
|
|
41
|
+
*/
|
|
42
|
+
className?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Intended as a way to pass inline CSS variables down to nested themes or global portals
|
|
45
|
+
*/
|
|
46
|
+
style?: CSSProperties;
|
|
47
|
+
/**
|
|
48
|
+
* Component specific classNames theme entrypoints
|
|
49
|
+
*/
|
|
50
|
+
Button?: ButtonClassNames;
|
|
51
|
+
Checkbox?: CheckboxClassNames;
|
|
52
|
+
Chip?: ChipClassNames;
|
|
53
|
+
ComboBox?: ComboBoxClassNames;
|
|
54
|
+
Dialog?: DialogClassNames;
|
|
55
|
+
Drawer?: DrawerClassNames;
|
|
56
|
+
Group?: GroupClassNames;
|
|
57
|
+
Icon?: IconClassNames;
|
|
58
|
+
Input?: InputClassNames;
|
|
59
|
+
Menu?: MenuClassNames;
|
|
60
|
+
NumberField?: NumberFieldClassNames;
|
|
61
|
+
Options?: OptionsClassNames;
|
|
62
|
+
Picker?: PickerClassNames;
|
|
63
|
+
Popover?: PopoverClassNames;
|
|
64
|
+
QueryBuilder?: QueryBuilderClassNames;
|
|
65
|
+
Radio?: RadioClassNames;
|
|
66
|
+
SearchField?: SearchFieldClassNames;
|
|
67
|
+
Select?: SelectClassNames;
|
|
68
|
+
Switch?: SwitchClassNames;
|
|
69
|
+
Tabs?: TabsClassNames;
|
|
70
|
+
TextArea?: TextAreaClassNames;
|
|
71
|
+
TextField?: TextFieldClassNames;
|
|
72
|
+
Tooltip?: TooltipClassNames;
|
|
73
|
+
Tree?: TreeClassNames;
|
|
74
|
+
};
|
|
75
|
+
type ThemeVars = {
|
|
76
|
+
colors?: {
|
|
77
|
+
generic?: string;
|
|
78
|
+
semantic?: string;
|
|
79
|
+
};
|
|
80
|
+
elevation?: string;
|
|
81
|
+
focus?: string;
|
|
82
|
+
radius?: string;
|
|
83
|
+
sizes?: string;
|
|
84
|
+
space?: string;
|
|
85
|
+
typography?: string;
|
|
86
|
+
zIndex?: string;
|
|
87
|
+
};
|
|
88
|
+
type ThemeProviderProps = PropsWithChildren<{
|
|
89
|
+
className?: string;
|
|
90
|
+
/**
|
|
91
|
+
* Set to true to skip defaults and inherit classNames, styles, theme & vars from parent
|
|
92
|
+
* All other props will be merged on top of inherited theme
|
|
93
|
+
*/
|
|
94
|
+
inherit?: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Use to set runtime CSS variables, not intended for other styles. Will be passed to
|
|
97
|
+
* nested themes and global portals
|
|
98
|
+
*/
|
|
99
|
+
style?: CSSProperties;
|
|
100
|
+
theme?: ThemeContext;
|
|
101
|
+
vars?: ThemeVars;
|
|
102
|
+
}>;
|
|
103
|
+
|
|
104
|
+
export type { ThemeContext, ThemeProviderProps, ThemeVars };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/use-theme/use-theme.css.ts"],"names":[],"mappings":";;;AAAO,IAAI,IAAO,GAAA","file":"use-theme.css.js","sourcesContent":["export var root = 'use-theme_root__5ipw7a0';"]}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ThemeContext, ThemeProviderProps } from './types.js';
|
|
2
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
3
|
+
import { Contract } from '../../types/vanilla-extract.js';
|
|
4
|
+
import { computeContract } from '../../utils/css.js';
|
|
5
|
+
import 'react';
|
|
6
|
+
import '../../components/button/types.js';
|
|
7
|
+
import 'react-aria-components';
|
|
8
|
+
import '../../types/props.js';
|
|
9
|
+
import '../../types/react-aria.js';
|
|
10
|
+
import '../../components/icon/types.js';
|
|
11
|
+
import '../../components/checkbox/types.js';
|
|
12
|
+
import '@react-types/shared';
|
|
13
|
+
import 'type-fest';
|
|
14
|
+
import '../../components/chip/types.js';
|
|
15
|
+
import '../../types/generic.js';
|
|
16
|
+
import '../../components/combo-box/types.js';
|
|
17
|
+
import '../../components/input/types.js';
|
|
18
|
+
import '../../components/options/types.js';
|
|
19
|
+
import '../../components/dialog/types.js';
|
|
20
|
+
import '../../components/group/types.js';
|
|
21
|
+
import '../../components/drawer/types.js';
|
|
22
|
+
import '@react-aria/overlays';
|
|
23
|
+
import '@react-stately/overlays';
|
|
24
|
+
import '../../components/tabs/types.js';
|
|
25
|
+
import '../../components/menu/types.js';
|
|
26
|
+
import '../../components/number-field/types.js';
|
|
27
|
+
import '../../components/picker/types.js';
|
|
28
|
+
import '../../components/popover/types.js';
|
|
29
|
+
import '../../components/query-builder/types.js';
|
|
30
|
+
import 'react-querybuilder';
|
|
31
|
+
import '../../components/radio/types.js';
|
|
32
|
+
import '../../components/select/types.js';
|
|
33
|
+
import '../../components/switch/types.js';
|
|
34
|
+
import '../../components/textarea/types.js';
|
|
35
|
+
import '../../components/search-field/types.js';
|
|
36
|
+
import '../../components/text-field/types.js';
|
|
37
|
+
import '../../components/tooltip/types.js';
|
|
38
|
+
import '../../components/tree/types.js';
|
|
39
|
+
import '../../types/use-tree.js';
|
|
40
|
+
import '@react-stately/data';
|
|
41
|
+
import '@vanilla-extract/css';
|
|
42
|
+
import '../../types/deckgl.js';
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Computes CSS values into DeckGL compatible formats using the optionally provided contract
|
|
46
|
+
*
|
|
47
|
+
* This function allows for the reuse of CSS contract tokens within React context for non-CSS
|
|
48
|
+
* use cases. This ensures synchronized theming across the entire rendering stack
|
|
49
|
+
*/
|
|
50
|
+
declare function useTheme<T extends Contract>(contract?: T): ThemeContext & {
|
|
51
|
+
contract?: ReturnType<typeof computeContract<T>>;
|
|
52
|
+
};
|
|
53
|
+
declare function ThemeProvider({ children, className: classNameProp, inherit, style: styleProp, theme: themeProp, vars, }: ThemeProviderProps): react_jsx_runtime.JSX.Element;
|
|
54
|
+
|
|
55
|
+
export { ThemeProvider, useTheme };
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import '../../chunk-PZ5AY32C.js';
|
|
2
|
+
import { useLayoutEffect } from '@react-aria/utils';
|
|
3
|
+
import { clsx } from 'clsx';
|
|
4
|
+
import { createContext, useContext, useMemo, useRef, useState } from 'react';
|
|
5
|
+
import { defaultGenericColors, defaultSemanticColors, defaultElevations, defaultFocus, defaultRadius, defaultSizes, defaultSpace, defaultTypography, defaultZIndex } from '../../styles/index.js';
|
|
6
|
+
import { computeContract } from '../../utils/index.js';
|
|
7
|
+
import { root } from './use-theme.css.js';
|
|
8
|
+
import { jsx } from 'react/jsx-runtime';
|
|
9
|
+
|
|
10
|
+
var defaultTheme = {};
|
|
11
|
+
var themeContext = createContext(defaultTheme);
|
|
12
|
+
var themeCssContext = createContext(null);
|
|
13
|
+
function useTheme(contract) {
|
|
14
|
+
const theme = useContext(themeContext);
|
|
15
|
+
const css = useContext(themeCssContext);
|
|
16
|
+
return useMemo(
|
|
17
|
+
() => ({
|
|
18
|
+
...theme,
|
|
19
|
+
...!!contract && !!css ? {
|
|
20
|
+
contract: computeContract(contract, css)
|
|
21
|
+
} : {}
|
|
22
|
+
}),
|
|
23
|
+
[theme, contract, css]
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
function localInheritOrDefault(localClass, inherit, defaultClass) {
|
|
27
|
+
return localClass ?? (!inherit && defaultClass);
|
|
28
|
+
}
|
|
29
|
+
function ThemeProvider({
|
|
30
|
+
children,
|
|
31
|
+
className: classNameProp,
|
|
32
|
+
inherit,
|
|
33
|
+
style: styleProp,
|
|
34
|
+
theme: themeProp = defaultTheme,
|
|
35
|
+
vars
|
|
36
|
+
}) {
|
|
37
|
+
const ref = useRef(null);
|
|
38
|
+
const [css, setCss] = useState(null);
|
|
39
|
+
const parent = useTheme();
|
|
40
|
+
const className = useMemo(
|
|
41
|
+
() => clsx(
|
|
42
|
+
root,
|
|
43
|
+
classNameProp,
|
|
44
|
+
inherit && parent.className,
|
|
45
|
+
themeProp.className,
|
|
46
|
+
localInheritOrDefault(
|
|
47
|
+
vars?.colors?.generic,
|
|
48
|
+
inherit,
|
|
49
|
+
defaultGenericColors
|
|
50
|
+
),
|
|
51
|
+
localInheritOrDefault(
|
|
52
|
+
vars?.colors?.semantic,
|
|
53
|
+
inherit,
|
|
54
|
+
defaultSemanticColors
|
|
55
|
+
),
|
|
56
|
+
localInheritOrDefault(vars?.elevation, inherit, defaultElevations),
|
|
57
|
+
localInheritOrDefault(vars?.focus, inherit, defaultFocus),
|
|
58
|
+
localInheritOrDefault(vars?.radius, inherit, defaultRadius),
|
|
59
|
+
localInheritOrDefault(vars?.sizes, inherit, defaultSizes),
|
|
60
|
+
localInheritOrDefault(vars?.space, inherit, defaultSpace),
|
|
61
|
+
localInheritOrDefault(vars?.typography, inherit, defaultTypography),
|
|
62
|
+
localInheritOrDefault(vars?.zIndex, inherit, defaultZIndex)
|
|
63
|
+
),
|
|
64
|
+
[
|
|
65
|
+
classNameProp,
|
|
66
|
+
inherit,
|
|
67
|
+
parent.className,
|
|
68
|
+
themeProp.className,
|
|
69
|
+
vars?.colors?.generic,
|
|
70
|
+
vars?.colors?.semantic,
|
|
71
|
+
vars?.elevation,
|
|
72
|
+
vars?.focus,
|
|
73
|
+
vars?.radius,
|
|
74
|
+
vars?.sizes,
|
|
75
|
+
vars?.space,
|
|
76
|
+
vars?.typography,
|
|
77
|
+
vars?.zIndex
|
|
78
|
+
]
|
|
79
|
+
);
|
|
80
|
+
const style = useMemo(
|
|
81
|
+
() => ({
|
|
82
|
+
...inherit ? parent.style : {},
|
|
83
|
+
...themeProp.style,
|
|
84
|
+
...styleProp
|
|
85
|
+
}),
|
|
86
|
+
[inherit, parent.style, themeProp.style, styleProp]
|
|
87
|
+
);
|
|
88
|
+
const theme = useMemo(
|
|
89
|
+
() => ({
|
|
90
|
+
...inherit ? parent : themeProp,
|
|
91
|
+
className,
|
|
92
|
+
style
|
|
93
|
+
}),
|
|
94
|
+
[inherit, parent, themeProp, className, style]
|
|
95
|
+
);
|
|
96
|
+
useLayoutEffect(() => {
|
|
97
|
+
if (ref.current) {
|
|
98
|
+
setCss(window.getComputedStyle(ref.current));
|
|
99
|
+
}
|
|
100
|
+
}, [className, style]);
|
|
101
|
+
const { Provider: ClassesProvider } = themeContext;
|
|
102
|
+
const { Provider: CssProvider } = themeCssContext;
|
|
103
|
+
return /* @__PURE__ */ jsx("div", { ref, className, style, children: /* @__PURE__ */ jsx(ClassesProvider, { value: theme, children: /* @__PURE__ */ jsx(CssProvider, { value: css, children }) }) });
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export { ThemeProvider, useTheme };
|
|
107
|
+
//# sourceMappingURL=use-theme.js.map
|
|
108
|
+
//# sourceMappingURL=use-theme.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/use-theme/use-theme.tsx"],"names":[],"mappings":"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","file":"use-theme.js","sourcesContent":["import { useLayoutEffect } from '@react-aria/utils';\nimport { clsx } from 'clsx';\nimport { createContext, useContext, useMemo, useRef, useState } from 'react';\nimport {\n defaultGenericColors,\n defaultElevations,\n defaultFocus,\n defaultRadius,\n defaultSemanticColors,\n defaultSizes,\n defaultSpace,\n defaultTypography,\n defaultZIndex,\n} from '../../styles';\nimport type { Contract } from '../../types';\nimport { computeContract } from '../../utils';\nimport type { ThemeContext, ThemeProviderProps } from './types';\nimport { root } from './use-theme.css';\n\nconst defaultTheme: ThemeContext = {};\nconst themeContext = createContext<ThemeContext>(defaultTheme);\nconst themeCssContext = createContext<CSSStyleDeclaration | null>(null);\n\n/**\n * Computes CSS values into DeckGL compatible formats using the optionally provided contract\n *\n * This function allows for the reuse of CSS contract tokens within React context for non-CSS\n * use cases. This ensures synchronized theming across the entire rendering stack\n */\nexport function useTheme<T extends Contract>(\n contract?: T,\n): ThemeContext & {\n contract?: ReturnType<typeof computeContract<T>>;\n} {\n const theme = useContext(themeContext);\n const css = useContext(themeCssContext);\n\n return useMemo(\n () => ({\n ...theme,\n ...(!!contract && !!css\n ? {\n contract: computeContract(contract, css),\n }\n : {}),\n }),\n [theme, contract, css],\n );\n}\n\nfunction localInheritOrDefault(\n localClass?: string,\n inherit?: boolean,\n defaultClass?: string,\n) {\n return localClass ?? (!inherit && defaultClass);\n}\n\nexport function ThemeProvider({\n children,\n className: classNameProp,\n inherit,\n style: styleProp,\n theme: themeProp = defaultTheme,\n vars,\n}: ThemeProviderProps) {\n const ref = useRef<HTMLDivElement>(null);\n const [css, setCss] = useState<CSSStyleDeclaration | null>(null);\n const parent = useTheme();\n\n const className = useMemo(\n () =>\n clsx(\n root,\n classNameProp,\n inherit && parent.className,\n themeProp.className,\n localInheritOrDefault(\n vars?.colors?.generic,\n inherit,\n defaultGenericColors,\n ),\n localInheritOrDefault(\n vars?.colors?.semantic,\n inherit,\n defaultSemanticColors,\n ),\n localInheritOrDefault(vars?.elevation, inherit, defaultElevations),\n localInheritOrDefault(vars?.focus, inherit, defaultFocus),\n localInheritOrDefault(vars?.radius, inherit, defaultRadius),\n localInheritOrDefault(vars?.sizes, inherit, defaultSizes),\n localInheritOrDefault(vars?.space, inherit, defaultSpace),\n localInheritOrDefault(vars?.typography, inherit, defaultTypography),\n localInheritOrDefault(vars?.zIndex, inherit, defaultZIndex),\n ),\n [\n classNameProp,\n inherit,\n parent.className,\n themeProp.className,\n vars?.colors?.generic,\n vars?.colors?.semantic,\n vars?.elevation,\n vars?.focus,\n vars?.radius,\n vars?.sizes,\n vars?.space,\n vars?.typography,\n vars?.zIndex,\n ],\n );\n\n const style = useMemo(\n () => ({\n ...(inherit ? parent.style : {}),\n ...themeProp.style,\n ...styleProp,\n }),\n [inherit, parent.style, themeProp.style, styleProp],\n );\n\n const theme = useMemo(\n () => ({\n ...(inherit ? parent : themeProp),\n className,\n style,\n }),\n [inherit, parent, themeProp, className, style],\n );\n\n useLayoutEffect(() => {\n if (ref.current) {\n setCss(window.getComputedStyle(ref.current));\n }\n }, [className, style]);\n\n const { Provider: ClassesProvider } = themeContext;\n const { Provider: CssProvider } = themeCssContext;\n\n return (\n <div ref={ref} className={className} style={style}>\n <ClassesProvider value={theme}>\n <CssProvider value={css}>{children}</CssProvider>\n </ClassesProvider>\n </div>\n );\n}\n"]}
|