jaci-ui 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/dist/components/accordion/accordion.cjs +83 -0
- package/dist/components/accordion/accordion.cjs.map +1 -0
- package/dist/components/accordion/accordion.d.cts +32 -0
- package/dist/components/accordion/accordion.d.ts +32 -0
- package/dist/components/accordion/accordion.js +77 -0
- package/dist/components/accordion/accordion.js.map +1 -0
- package/dist/components/accordion/index.d.cts +2 -0
- package/dist/components/accordion/index.d.ts +2 -0
- package/dist/components/alert/alert.cjs +76 -0
- package/dist/components/alert/alert.cjs.map +1 -0
- package/dist/components/alert/alert.d.cts +26 -0
- package/dist/components/alert/alert.d.ts +26 -0
- package/dist/components/alert/alert.js +72 -0
- package/dist/components/alert/alert.js.map +1 -0
- package/dist/components/alert/index.d.cts +2 -0
- package/dist/components/alert/index.d.ts +2 -0
- package/dist/components/alert-dialog/alert-dialog.cjs +147 -0
- package/dist/components/alert-dialog/alert-dialog.cjs.map +1 -0
- package/dist/components/alert-dialog/alert-dialog.d.cts +73 -0
- package/dist/components/alert-dialog/alert-dialog.d.ts +73 -0
- package/dist/components/alert-dialog/alert-dialog.js +133 -0
- package/dist/components/alert-dialog/alert-dialog.js.map +1 -0
- package/dist/components/alert-dialog/index.d.cts +2 -0
- package/dist/components/alert-dialog/index.d.ts +2 -0
- package/dist/components/avatar/avatar.cjs +89 -0
- package/dist/components/avatar/avatar.cjs.map +1 -0
- package/dist/components/avatar/avatar.d.cts +33 -0
- package/dist/components/avatar/avatar.d.ts +33 -0
- package/dist/components/avatar/avatar.js +86 -0
- package/dist/components/avatar/avatar.js.map +1 -0
- package/dist/components/avatar/index.d.cts +2 -0
- package/dist/components/avatar/index.d.ts +2 -0
- package/dist/components/base-ui.cjs +14 -0
- package/dist/components/base-ui.cjs.map +1 -0
- package/dist/components/base-ui.js +14 -0
- package/dist/components/base-ui.js.map +1 -0
- package/dist/components/breadcrumbs/breadcrumbs.cjs +84 -0
- package/dist/components/breadcrumbs/breadcrumbs.cjs.map +1 -0
- package/dist/components/breadcrumbs/breadcrumbs.d.cts +31 -0
- package/dist/components/breadcrumbs/breadcrumbs.d.ts +31 -0
- package/dist/components/breadcrumbs/breadcrumbs.js +78 -0
- package/dist/components/breadcrumbs/breadcrumbs.js.map +1 -0
- package/dist/components/breadcrumbs/index.d.cts +2 -0
- package/dist/components/breadcrumbs/index.d.ts +2 -0
- package/dist/components/button/button.cjs +54 -0
- package/dist/components/button/button.cjs.map +1 -0
- package/dist/components/button/button.d.cts +21 -0
- package/dist/components/button/button.d.ts +21 -0
- package/dist/components/button/button.js +54 -0
- package/dist/components/button/button.js.map +1 -0
- package/dist/components/button/index.d.cts +2 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/card/card.cjs +55 -0
- package/dist/components/card/card.cjs.map +1 -0
- package/dist/components/card/card.d.cts +13 -0
- package/dist/components/card/card.d.ts +13 -0
- package/dist/components/card/card.js +51 -0
- package/dist/components/card/card.js.map +1 -0
- package/dist/components/card/index.d.cts +2 -0
- package/dist/components/card/index.d.ts +2 -0
- package/dist/components/checkbox-group/checkbox-group.cjs +85 -0
- package/dist/components/checkbox-group/checkbox-group.cjs.map +1 -0
- package/dist/components/checkbox-group/checkbox-group.d.cts +37 -0
- package/dist/components/checkbox-group/checkbox-group.d.ts +37 -0
- package/dist/components/checkbox-group/checkbox-group.js +79 -0
- package/dist/components/checkbox-group/checkbox-group.js.map +1 -0
- package/dist/components/checkbox-group/index.d.cts +2 -0
- package/dist/components/checkbox-group/index.d.ts +2 -0
- package/dist/components/collapsible/collapsible.cjs +59 -0
- package/dist/components/collapsible/collapsible.cjs.map +1 -0
- package/dist/components/collapsible/collapsible.d.cts +22 -0
- package/dist/components/collapsible/collapsible.d.ts +22 -0
- package/dist/components/collapsible/collapsible.js +55 -0
- package/dist/components/collapsible/collapsible.js.map +1 -0
- package/dist/components/collapsible/index.d.cts +2 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/color-picker/color-picker.cjs +360 -0
- package/dist/components/color-picker/color-picker.cjs.map +1 -0
- package/dist/components/color-picker/color-picker.d.cts +94 -0
- package/dist/components/color-picker/color-picker.d.ts +94 -0
- package/dist/components/color-picker/color-picker.js +344 -0
- package/dist/components/color-picker/color-picker.js.map +1 -0
- package/dist/components/color-picker/color-utils.cjs +162 -0
- package/dist/components/color-picker/color-utils.cjs.map +1 -0
- package/dist/components/color-picker/color-utils.d.cts +14 -0
- package/dist/components/color-picker/color-utils.d.ts +14 -0
- package/dist/components/color-picker/color-utils.js +160 -0
- package/dist/components/color-picker/color-utils.js.map +1 -0
- package/dist/components/color-picker/index.d.cts +3 -0
- package/dist/components/color-picker/index.d.ts +3 -0
- package/dist/components/combobox/combobox.cjs +218 -0
- package/dist/components/combobox/combobox.cjs.map +1 -0
- package/dist/components/combobox/combobox.d.cts +81 -0
- package/dist/components/combobox/combobox.d.ts +81 -0
- package/dist/components/combobox/combobox.js +199 -0
- package/dist/components/combobox/combobox.js.map +1 -0
- package/dist/components/combobox/index.d.cts +2 -0
- package/dist/components/combobox/index.d.ts +2 -0
- package/dist/components/command/command.cjs +303 -0
- package/dist/components/command/command.cjs.map +1 -0
- package/dist/components/command/command.d.cts +50 -0
- package/dist/components/command/command.d.ts +50 -0
- package/dist/components/command/command.js +294 -0
- package/dist/components/command/command.js.map +1 -0
- package/dist/components/command/index.d.cts +2 -0
- package/dist/components/command/index.d.ts +2 -0
- package/dist/components/context-menu/context-menu.cjs +175 -0
- package/dist/components/context-menu/context-menu.cjs.map +1 -0
- package/dist/components/context-menu/context-menu.d.cts +69 -0
- package/dist/components/context-menu/context-menu.d.ts +69 -0
- package/dist/components/context-menu/context-menu.js +156 -0
- package/dist/components/context-menu/context-menu.js.map +1 -0
- package/dist/components/context-menu/index.d.cts +2 -0
- package/dist/components/context-menu/index.d.ts +2 -0
- package/dist/components/controls/checkbox.cjs +33 -0
- package/dist/components/controls/checkbox.cjs.map +1 -0
- package/dist/components/controls/checkbox.d.cts +12 -0
- package/dist/components/controls/checkbox.d.ts +12 -0
- package/dist/components/controls/checkbox.js +33 -0
- package/dist/components/controls/checkbox.js.map +1 -0
- package/dist/components/controls/index.d.cts +6 -0
- package/dist/components/controls/index.d.ts +6 -0
- package/dist/components/controls/input.cjs +29 -0
- package/dist/components/controls/input.cjs.map +1 -0
- package/dist/components/controls/input.d.cts +9 -0
- package/dist/components/controls/input.d.ts +9 -0
- package/dist/components/controls/input.js +29 -0
- package/dist/components/controls/input.js.map +1 -0
- package/dist/components/controls/radio.cjs +20 -0
- package/dist/components/controls/radio.cjs.map +1 -0
- package/dist/components/controls/radio.d.cts +7 -0
- package/dist/components/controls/radio.d.ts +7 -0
- package/dist/components/controls/radio.js +20 -0
- package/dist/components/controls/radio.js.map +1 -0
- package/dist/components/controls/switch.cjs +30 -0
- package/dist/components/controls/switch.cjs.map +1 -0
- package/dist/components/controls/switch.d.cts +10 -0
- package/dist/components/controls/switch.d.ts +10 -0
- package/dist/components/controls/switch.js +30 -0
- package/dist/components/controls/switch.js.map +1 -0
- package/dist/components/controls/textarea.cjs +30 -0
- package/dist/components/controls/textarea.cjs.map +1 -0
- package/dist/components/controls/textarea.d.cts +9 -0
- package/dist/components/controls/textarea.d.ts +9 -0
- package/dist/components/controls/textarea.js +30 -0
- package/dist/components/controls/textarea.js.map +1 -0
- package/dist/components/copyable/copyable.cjs +124 -0
- package/dist/components/copyable/copyable.cjs.map +1 -0
- package/dist/components/copyable/copyable.d.cts +27 -0
- package/dist/components/copyable/copyable.d.ts +27 -0
- package/dist/components/copyable/copyable.js +121 -0
- package/dist/components/copyable/copyable.js.map +1 -0
- package/dist/components/copyable/index.d.cts +2 -0
- package/dist/components/copyable/index.d.ts +2 -0
- package/dist/components/data-view/data-view.cjs +85 -0
- package/dist/components/data-view/data-view.cjs.map +1 -0
- package/dist/components/data-view/data-view.d.cts +31 -0
- package/dist/components/data-view/data-view.d.ts +31 -0
- package/dist/components/data-view/data-view.js +79 -0
- package/dist/components/data-view/data-view.js.map +1 -0
- package/dist/components/data-view/index.d.cts +2 -0
- package/dist/components/data-view/index.d.ts +2 -0
- package/dist/components/date-picker/date-picker.cjs +448 -0
- package/dist/components/date-picker/date-picker.cjs.map +1 -0
- package/dist/components/date-picker/date-picker.d.cts +118 -0
- package/dist/components/date-picker/date-picker.d.ts +118 -0
- package/dist/components/date-picker/date-picker.js +432 -0
- package/dist/components/date-picker/date-picker.js.map +1 -0
- package/dist/components/date-picker/date-utils.cjs +80 -0
- package/dist/components/date-picker/date-utils.cjs.map +1 -0
- package/dist/components/date-picker/date-utils.js +66 -0
- package/dist/components/date-picker/date-utils.js.map +1 -0
- package/dist/components/date-picker/index.d.cts +2 -0
- package/dist/components/date-picker/index.d.ts +2 -0
- package/dist/components/dialog/dialog.cjs +130 -0
- package/dist/components/dialog/dialog.cjs.map +1 -0
- package/dist/components/dialog/dialog.d.cts +55 -0
- package/dist/components/dialog/dialog.d.ts +55 -0
- package/dist/components/dialog/dialog.js +118 -0
- package/dist/components/dialog/dialog.js.map +1 -0
- package/dist/components/dialog/index.d.cts +2 -0
- package/dist/components/dialog/index.d.ts +2 -0
- package/dist/components/drawer/drawer.cjs +165 -0
- package/dist/components/drawer/drawer.cjs.map +1 -0
- package/dist/components/drawer/drawer.d.cts +58 -0
- package/dist/components/drawer/drawer.d.ts +58 -0
- package/dist/components/drawer/drawer.js +153 -0
- package/dist/components/drawer/drawer.js.map +1 -0
- package/dist/components/drawer/index.d.cts +2 -0
- package/dist/components/drawer/index.d.ts +2 -0
- package/dist/components/feedback/badge.cjs +18 -0
- package/dist/components/feedback/badge.cjs.map +1 -0
- package/dist/components/feedback/badge.d.cts +9 -0
- package/dist/components/feedback/badge.d.ts +9 -0
- package/dist/components/feedback/badge.js +18 -0
- package/dist/components/feedback/badge.js.map +1 -0
- package/dist/components/feedback/index.d.cts +2 -0
- package/dist/components/feedback/index.d.ts +2 -0
- package/dist/components/field/field.cjs +127 -0
- package/dist/components/field/field.cjs.map +1 -0
- package/dist/components/field/field.d.cts +47 -0
- package/dist/components/field/field.d.ts +47 -0
- package/dist/components/field/field.js +123 -0
- package/dist/components/field/field.js.map +1 -0
- package/dist/components/field/index.d.cts +2 -0
- package/dist/components/field/index.d.ts +2 -0
- package/dist/components/fieldset/fieldset.cjs +48 -0
- package/dist/components/fieldset/fieldset.cjs.map +1 -0
- package/dist/components/fieldset/fieldset.d.cts +17 -0
- package/dist/components/fieldset/fieldset.d.ts +17 -0
- package/dist/components/fieldset/fieldset.js +45 -0
- package/dist/components/fieldset/fieldset.js.map +1 -0
- package/dist/components/fieldset/index.d.cts +2 -0
- package/dist/components/fieldset/index.d.ts +2 -0
- package/dist/components/form/form.cjs +27 -0
- package/dist/components/form/form.cjs.map +1 -0
- package/dist/components/form/form.d.cts +18 -0
- package/dist/components/form/form.d.ts +18 -0
- package/dist/components/form/form.js +26 -0
- package/dist/components/form/form.js.map +1 -0
- package/dist/components/form/index.d.cts +2 -0
- package/dist/components/form/index.d.ts +2 -0
- package/dist/components/layout/index.cjs +73 -0
- package/dist/components/layout/index.cjs.map +1 -0
- package/dist/components/layout/index.d.cts +35 -0
- package/dist/components/layout/index.d.ts +35 -0
- package/dist/components/layout/index.js +69 -0
- package/dist/components/layout/index.js.map +1 -0
- package/dist/components/list/index.d.cts +2 -0
- package/dist/components/list/index.d.ts +2 -0
- package/dist/components/list/list.cjs +86 -0
- package/dist/components/list/list.cjs.map +1 -0
- package/dist/components/list/list.d.cts +37 -0
- package/dist/components/list/list.d.ts +37 -0
- package/dist/components/list/list.js +80 -0
- package/dist/components/list/list.js.map +1 -0
- package/dist/components/menu/index.d.cts +2 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/menu/menu.cjs +108 -0
- package/dist/components/menu/menu.cjs.map +1 -0
- package/dist/components/menu/menu.d.cts +47 -0
- package/dist/components/menu/menu.d.ts +47 -0
- package/dist/components/menu/menu.js +98 -0
- package/dist/components/menu/menu.js.map +1 -0
- package/dist/components/menubar/index.d.cts +2 -0
- package/dist/components/menubar/index.d.ts +2 -0
- package/dist/components/menubar/menubar.cjs +206 -0
- package/dist/components/menubar/menubar.cjs.map +1 -0
- package/dist/components/menubar/menubar.d.cts +74 -0
- package/dist/components/menubar/menubar.d.ts +74 -0
- package/dist/components/menubar/menubar.js +187 -0
- package/dist/components/menubar/menubar.js.map +1 -0
- package/dist/components/meter/index.d.cts +2 -0
- package/dist/components/meter/index.d.ts +2 -0
- package/dist/components/meter/meter.cjs +91 -0
- package/dist/components/meter/meter.cjs.map +1 -0
- package/dist/components/meter/meter.d.cts +30 -0
- package/dist/components/meter/meter.d.ts +30 -0
- package/dist/components/meter/meter.js +86 -0
- package/dist/components/meter/meter.js.map +1 -0
- package/dist/components/navigation/index.d.cts +2 -0
- package/dist/components/navigation/index.d.ts +2 -0
- package/dist/components/navigation/navigation.cjs +163 -0
- package/dist/components/navigation/navigation.cjs.map +1 -0
- package/dist/components/navigation/navigation.d.cts +75 -0
- package/dist/components/navigation/navigation.d.ts +75 -0
- package/dist/components/navigation/navigation.js +151 -0
- package/dist/components/navigation/navigation.js.map +1 -0
- package/dist/components/navigation-menu/index.d.cts +2 -0
- package/dist/components/navigation-menu/index.d.ts +2 -0
- package/dist/components/navigation-menu/navigation-menu.cjs +214 -0
- package/dist/components/navigation-menu/navigation-menu.cjs.map +1 -0
- package/dist/components/navigation-menu/navigation-menu.d.cts +54 -0
- package/dist/components/navigation-menu/navigation-menu.d.ts +54 -0
- package/dist/components/navigation-menu/navigation-menu.js +201 -0
- package/dist/components/navigation-menu/navigation-menu.js.map +1 -0
- package/dist/components/number-field/index.d.cts +2 -0
- package/dist/components/number-field/index.d.ts +2 -0
- package/dist/components/number-field/number-field.cjs +124 -0
- package/dist/components/number-field/number-field.cjs.map +1 -0
- package/dist/components/number-field/number-field.d.cts +48 -0
- package/dist/components/number-field/number-field.d.ts +48 -0
- package/dist/components/number-field/number-field.js +116 -0
- package/dist/components/number-field/number-field.js.map +1 -0
- package/dist/components/option-selector/index.d.cts +2 -0
- package/dist/components/option-selector/index.d.ts +2 -0
- package/dist/components/option-selector/option-selector.cjs +105 -0
- package/dist/components/option-selector/option-selector.cjs.map +1 -0
- package/dist/components/option-selector/option-selector.d.cts +46 -0
- package/dist/components/option-selector/option-selector.d.ts +46 -0
- package/dist/components/option-selector/option-selector.js +105 -0
- package/dist/components/option-selector/option-selector.js.map +1 -0
- package/dist/components/pagination/index.d.cts +2 -0
- package/dist/components/pagination/index.d.ts +2 -0
- package/dist/components/pagination/pagination.cjs +132 -0
- package/dist/components/pagination/pagination.cjs.map +1 -0
- package/dist/components/pagination/pagination.d.cts +44 -0
- package/dist/components/pagination/pagination.d.ts +44 -0
- package/dist/components/pagination/pagination.js +125 -0
- package/dist/components/pagination/pagination.js.map +1 -0
- package/dist/components/popover/index.d.cts +2 -0
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/popover/popover.cjs +98 -0
- package/dist/components/popover/popover.cjs.map +1 -0
- package/dist/components/popover/popover.d.cts +61 -0
- package/dist/components/popover/popover.d.ts +61 -0
- package/dist/components/popover/popover.js +89 -0
- package/dist/components/popover/popover.js.map +1 -0
- package/dist/components/progress/index.d.cts +2 -0
- package/dist/components/progress/index.d.ts +2 -0
- package/dist/components/progress/progress.cjs +59 -0
- package/dist/components/progress/progress.cjs.map +1 -0
- package/dist/components/progress/progress.d.cts +20 -0
- package/dist/components/progress/progress.d.ts +20 -0
- package/dist/components/progress/progress.js +59 -0
- package/dist/components/progress/progress.js.map +1 -0
- package/dist/components/radio-group/index.d.cts +2 -0
- package/dist/components/radio-group/index.d.ts +2 -0
- package/dist/components/radio-group/radio-group.cjs +90 -0
- package/dist/components/radio-group/radio-group.cjs.map +1 -0
- package/dist/components/radio-group/radio-group.d.cts +40 -0
- package/dist/components/radio-group/radio-group.d.ts +40 -0
- package/dist/components/radio-group/radio-group.js +84 -0
- package/dist/components/radio-group/radio-group.js.map +1 -0
- package/dist/components/range-slider/index.d.cts +2 -0
- package/dist/components/range-slider/index.d.ts +2 -0
- package/dist/components/range-slider/range-slider.cjs +103 -0
- package/dist/components/range-slider/range-slider.cjs.map +1 -0
- package/dist/components/range-slider/range-slider.d.cts +40 -0
- package/dist/components/range-slider/range-slider.d.ts +40 -0
- package/dist/components/range-slider/range-slider.js +96 -0
- package/dist/components/range-slider/range-slider.js.map +1 -0
- package/dist/components/scroll-area/index.d.cts +2 -0
- package/dist/components/scroll-area/index.d.ts +2 -0
- package/dist/components/scroll-area/scroll-area.cjs +76 -0
- package/dist/components/scroll-area/scroll-area.cjs.map +1 -0
- package/dist/components/scroll-area/scroll-area.d.cts +26 -0
- package/dist/components/scroll-area/scroll-area.d.ts +26 -0
- package/dist/components/scroll-area/scroll-area.js +70 -0
- package/dist/components/scroll-area/scroll-area.js.map +1 -0
- package/dist/components/select/index.d.cts +2 -0
- package/dist/components/select/index.d.ts +2 -0
- package/dist/components/select/select.cjs +171 -0
- package/dist/components/select/select.cjs.map +1 -0
- package/dist/components/select/select.d.cts +74 -0
- package/dist/components/select/select.d.ts +74 -0
- package/dist/components/select/select.js +156 -0
- package/dist/components/select/select.js.map +1 -0
- package/dist/components/sidebar/index.d.cts +2 -0
- package/dist/components/sidebar/index.d.ts +2 -0
- package/dist/components/sidebar/sidebar.cjs +162 -0
- package/dist/components/sidebar/sidebar.cjs.map +1 -0
- package/dist/components/sidebar/sidebar.d.cts +64 -0
- package/dist/components/sidebar/sidebar.d.ts +64 -0
- package/dist/components/sidebar/sidebar.js +154 -0
- package/dist/components/sidebar/sidebar.js.map +1 -0
- package/dist/components/skeleton/index.d.cts +2 -0
- package/dist/components/skeleton/index.d.ts +2 -0
- package/dist/components/skeleton/skeleton.cjs +25 -0
- package/dist/components/skeleton/skeleton.cjs.map +1 -0
- package/dist/components/skeleton/skeleton.d.cts +13 -0
- package/dist/components/skeleton/skeleton.d.ts +13 -0
- package/dist/components/skeleton/skeleton.js +25 -0
- package/dist/components/skeleton/skeleton.js.map +1 -0
- package/dist/components/slider/index.d.cts +2 -0
- package/dist/components/slider/index.d.ts +2 -0
- package/dist/components/slider/slider.cjs +96 -0
- package/dist/components/slider/slider.cjs.map +1 -0
- package/dist/components/slider/slider.d.cts +39 -0
- package/dist/components/slider/slider.d.ts +39 -0
- package/dist/components/slider/slider.js +89 -0
- package/dist/components/slider/slider.js.map +1 -0
- package/dist/components/table/index.d.cts +2 -0
- package/dist/components/table/index.d.ts +2 -0
- package/dist/components/table/table.cjs +196 -0
- package/dist/components/table/table.cjs.map +1 -0
- package/dist/components/table/table.d.cts +66 -0
- package/dist/components/table/table.d.ts +66 -0
- package/dist/components/table/table.js +184 -0
- package/dist/components/table/table.js.map +1 -0
- package/dist/components/tabs/index.d.cts +2 -0
- package/dist/components/tabs/index.d.ts +2 -0
- package/dist/components/tabs/tabs.cjs +65 -0
- package/dist/components/tabs/tabs.cjs.map +1 -0
- package/dist/components/tabs/tabs.d.cts +23 -0
- package/dist/components/tabs/tabs.d.ts +23 -0
- package/dist/components/tabs/tabs.js +61 -0
- package/dist/components/tabs/tabs.js.map +1 -0
- package/dist/components/tags-input/index.d.cts +2 -0
- package/dist/components/tags-input/index.d.ts +2 -0
- package/dist/components/tags-input/tags-input.cjs +172 -0
- package/dist/components/tags-input/tags-input.cjs.map +1 -0
- package/dist/components/tags-input/tags-input.d.cts +26 -0
- package/dist/components/tags-input/tags-input.d.ts +26 -0
- package/dist/components/tags-input/tags-input.js +172 -0
- package/dist/components/tags-input/tags-input.js.map +1 -0
- package/dist/components/toast/index.d.cts +2 -0
- package/dist/components/toast/index.d.ts +2 -0
- package/dist/components/toast/toast.cjs +135 -0
- package/dist/components/toast/toast.cjs.map +1 -0
- package/dist/components/toast/toast.d.cts +61 -0
- package/dist/components/toast/toast.d.ts +61 -0
- package/dist/components/toast/toast.js +125 -0
- package/dist/components/toast/toast.js.map +1 -0
- package/dist/components/toggle/index.d.cts +2 -0
- package/dist/components/toggle/index.d.ts +2 -0
- package/dist/components/toggle/toggle.cjs +25 -0
- package/dist/components/toggle/toggle.cjs.map +1 -0
- package/dist/components/toggle/toggle.d.cts +16 -0
- package/dist/components/toggle/toggle.d.ts +16 -0
- package/dist/components/toggle/toggle.js +25 -0
- package/dist/components/toggle/toggle.js.map +1 -0
- package/dist/components/toggle-group/index.d.cts +2 -0
- package/dist/components/toggle-group/index.d.ts +2 -0
- package/dist/components/toggle-group/toggle-group.cjs +52 -0
- package/dist/components/toggle-group/toggle-group.cjs.map +1 -0
- package/dist/components/toggle-group/toggle-group.d.cts +25 -0
- package/dist/components/toggle-group/toggle-group.d.ts +25 -0
- package/dist/components/toggle-group/toggle-group.js +50 -0
- package/dist/components/toggle-group/toggle-group.js.map +1 -0
- package/dist/components/toolbar/index.d.cts +2 -0
- package/dist/components/toolbar/index.d.ts +2 -0
- package/dist/components/toolbar/toolbar.cjs +85 -0
- package/dist/components/toolbar/toolbar.cjs.map +1 -0
- package/dist/components/toolbar/toolbar.d.cts +34 -0
- package/dist/components/toolbar/toolbar.d.ts +34 -0
- package/dist/components/toolbar/toolbar.js +79 -0
- package/dist/components/toolbar/toolbar.js.map +1 -0
- package/dist/components/tooltip/index.d.cts +2 -0
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tooltip/tooltip.cjs +65 -0
- package/dist/components/tooltip/tooltip.cjs.map +1 -0
- package/dist/components/tooltip/tooltip.d.cts +28 -0
- package/dist/components/tooltip/tooltip.d.ts +28 -0
- package/dist/components/tooltip/tooltip.js +59 -0
- package/dist/components/tooltip/tooltip.js.map +1 -0
- package/dist/components/tree-view/index.d.cts +2 -0
- package/dist/components/tree-view/index.d.ts +2 -0
- package/dist/components/tree-view/tree-view.cjs +345 -0
- package/dist/components/tree-view/tree-view.cjs.map +1 -0
- package/dist/components/tree-view/tree-view.d.cts +39 -0
- package/dist/components/tree-view/tree-view.d.ts +39 -0
- package/dist/components/tree-view/tree-view.js +340 -0
- package/dist/components/tree-view/tree-view.js.map +1 -0
- package/dist/components/typography/heading.cjs +28 -0
- package/dist/components/typography/heading.cjs.map +1 -0
- package/dist/components/typography/heading.d.cts +12 -0
- package/dist/components/typography/heading.d.ts +12 -0
- package/dist/components/typography/heading.js +28 -0
- package/dist/components/typography/heading.js.map +1 -0
- package/dist/components/typography/index.d.cts +5 -0
- package/dist/components/typography/index.d.ts +5 -0
- package/dist/components/typography/link.cjs +18 -0
- package/dist/components/typography/link.cjs.map +1 -0
- package/dist/components/typography/link.d.cts +9 -0
- package/dist/components/typography/link.d.ts +9 -0
- package/dist/components/typography/link.js +18 -0
- package/dist/components/typography/link.js.map +1 -0
- package/dist/components/typography/paragraph.cjs +18 -0
- package/dist/components/typography/paragraph.cjs.map +1 -0
- package/dist/components/typography/paragraph.d.cts +7 -0
- package/dist/components/typography/paragraph.d.ts +7 -0
- package/dist/components/typography/paragraph.js +18 -0
- package/dist/components/typography/paragraph.js.map +1 -0
- package/dist/components/typography/text.cjs +21 -0
- package/dist/components/typography/text.cjs.map +1 -0
- package/dist/components/typography/text.d.cts +14 -0
- package/dist/components/typography/text.d.ts +14 -0
- package/dist/components/typography/text.js +21 -0
- package/dist/components/typography/text.js.map +1 -0
- package/dist/components/upload/index.d.cts +2 -0
- package/dist/components/upload/index.d.ts +2 -0
- package/dist/components/upload/upload.cjs +411 -0
- package/dist/components/upload/upload.cjs.map +1 -0
- package/dist/components/upload/upload.d.cts +91 -0
- package/dist/components/upload/upload.d.ts +91 -0
- package/dist/components/upload/upload.js +398 -0
- package/dist/components/upload/upload.js.map +1 -0
- package/dist/components/visually-hidden/index.d.cts +2 -0
- package/dist/components/visually-hidden/index.d.ts +2 -0
- package/dist/components/visually-hidden/visually-hidden.cjs +18 -0
- package/dist/components/visually-hidden/visually-hidden.cjs.map +1 -0
- package/dist/components/visually-hidden/visually-hidden.d.cts +7 -0
- package/dist/components/visually-hidden/visually-hidden.d.ts +7 -0
- package/dist/components/visually-hidden/visually-hidden.js +18 -0
- package/dist/components/visually-hidden/visually-hidden.js.map +1 -0
- package/dist/index.cjs +494 -0
- package/dist/index.d.cts +116 -0
- package/dist/index.d.ts +116 -0
- package/dist/index.js +63 -0
- package/dist/panda-preset.cjs +11 -0
- package/dist/panda-preset.cjs.map +1 -0
- package/dist/panda-preset.d.cts +4 -0
- package/dist/panda-preset.d.ts +5 -0
- package/dist/panda-preset.js +12 -0
- package/dist/panda-preset.js.map +1 -0
- package/dist/styled-system/css/conditions.cjs +31 -0
- package/dist/styled-system/css/conditions.cjs.map +1 -0
- package/dist/styled-system/css/conditions.js +29 -0
- package/dist/styled-system/css/conditions.js.map +1 -0
- package/dist/styled-system/css/css.cjs +48 -0
- package/dist/styled-system/css/css.cjs.map +1 -0
- package/dist/styled-system/css/css.js +47 -0
- package/dist/styled-system/css/css.js.map +1 -0
- package/dist/styled-system/css/cva.cjs +20 -0
- package/dist/styled-system/css/cva.cjs.map +1 -0
- package/dist/styled-system/css/cva.js +19 -0
- package/dist/styled-system/css/cva.js.map +1 -0
- package/dist/styled-system/css/cx.cjs +13 -0
- package/dist/styled-system/css/cx.cjs.map +1 -0
- package/dist/styled-system/css/cx.js +13 -0
- package/dist/styled-system/css/cx.js.map +1 -0
- package/dist/styled-system/helpers.cjs +231 -0
- package/dist/styled-system/helpers.cjs.map +1 -0
- package/dist/styled-system/helpers.js +216 -0
- package/dist/styled-system/helpers.js.map +1 -0
- package/dist/styled-system/recipes/accordion.cjs +37 -0
- package/dist/styled-system/recipes/accordion.cjs.map +1 -0
- package/dist/styled-system/recipes/accordion.js +37 -0
- package/dist/styled-system/recipes/accordion.js.map +1 -0
- package/dist/styled-system/recipes/alert.cjs +40 -0
- package/dist/styled-system/recipes/alert.cjs.map +1 -0
- package/dist/styled-system/recipes/alert.js +40 -0
- package/dist/styled-system/recipes/alert.js.map +1 -0
- package/dist/styled-system/recipes/avatar.cjs +46 -0
- package/dist/styled-system/recipes/avatar.cjs.map +1 -0
- package/dist/styled-system/recipes/avatar.js +46 -0
- package/dist/styled-system/recipes/avatar.js.map +1 -0
- package/dist/styled-system/recipes/badge.cjs +31 -0
- package/dist/styled-system/recipes/badge.cjs.map +1 -0
- package/dist/styled-system/recipes/badge.js +31 -0
- package/dist/styled-system/recipes/badge.js.map +1 -0
- package/dist/styled-system/recipes/bottom-navigation.cjs +30 -0
- package/dist/styled-system/recipes/bottom-navigation.cjs.map +1 -0
- package/dist/styled-system/recipes/bottom-navigation.js +30 -0
- package/dist/styled-system/recipes/bottom-navigation.js.map +1 -0
- package/dist/styled-system/recipes/breadcrumbs.cjs +37 -0
- package/dist/styled-system/recipes/breadcrumbs.cjs.map +1 -0
- package/dist/styled-system/recipes/breadcrumbs.js +37 -0
- package/dist/styled-system/recipes/breadcrumbs.js.map +1 -0
- package/dist/styled-system/recipes/button.cjs +42 -0
- package/dist/styled-system/recipes/button.cjs.map +1 -0
- package/dist/styled-system/recipes/button.js +42 -0
- package/dist/styled-system/recipes/button.js.map +1 -0
- package/dist/styled-system/recipes/card.cjs +40 -0
- package/dist/styled-system/recipes/card.cjs.map +1 -0
- package/dist/styled-system/recipes/card.js +40 -0
- package/dist/styled-system/recipes/card.js.map +1 -0
- package/dist/styled-system/recipes/checkbox-group.cjs +37 -0
- package/dist/styled-system/recipes/checkbox-group.cjs.map +1 -0
- package/dist/styled-system/recipes/checkbox-group.js +37 -0
- package/dist/styled-system/recipes/checkbox-group.js.map +1 -0
- package/dist/styled-system/recipes/checkbox.cjs +30 -0
- package/dist/styled-system/recipes/checkbox.cjs.map +1 -0
- package/dist/styled-system/recipes/checkbox.js +30 -0
- package/dist/styled-system/recipes/checkbox.js.map +1 -0
- package/dist/styled-system/recipes/collapsible.cjs +35 -0
- package/dist/styled-system/recipes/collapsible.cjs.map +1 -0
- package/dist/styled-system/recipes/collapsible.js +35 -0
- package/dist/styled-system/recipes/collapsible.js.map +1 -0
- package/dist/styled-system/recipes/color-picker.cjs +46 -0
- package/dist/styled-system/recipes/color-picker.cjs.map +1 -0
- package/dist/styled-system/recipes/color-picker.js +46 -0
- package/dist/styled-system/recipes/color-picker.js.map +1 -0
- package/dist/styled-system/recipes/combobox.cjs +53 -0
- package/dist/styled-system/recipes/combobox.cjs.map +1 -0
- package/dist/styled-system/recipes/combobox.js +53 -0
- package/dist/styled-system/recipes/combobox.js.map +1 -0
- package/dist/styled-system/recipes/command.cjs +41 -0
- package/dist/styled-system/recipes/command.cjs.map +1 -0
- package/dist/styled-system/recipes/command.js +41 -0
- package/dist/styled-system/recipes/command.js.map +1 -0
- package/dist/styled-system/recipes/copyable.cjs +35 -0
- package/dist/styled-system/recipes/copyable.cjs.map +1 -0
- package/dist/styled-system/recipes/copyable.js +35 -0
- package/dist/styled-system/recipes/copyable.js.map +1 -0
- package/dist/styled-system/recipes/create-recipe.cjs +80 -0
- package/dist/styled-system/recipes/create-recipe.cjs.map +1 -0
- package/dist/styled-system/recipes/create-recipe.js +79 -0
- package/dist/styled-system/recipes/create-recipe.js.map +1 -0
- package/dist/styled-system/recipes/data-view.cjs +52 -0
- package/dist/styled-system/recipes/data-view.cjs.map +1 -0
- package/dist/styled-system/recipes/data-view.js +52 -0
- package/dist/styled-system/recipes/data-view.js.map +1 -0
- package/dist/styled-system/recipes/date-picker.cjs +51 -0
- package/dist/styled-system/recipes/date-picker.cjs.map +1 -0
- package/dist/styled-system/recipes/date-picker.js +51 -0
- package/dist/styled-system/recipes/date-picker.js.map +1 -0
- package/dist/styled-system/recipes/dialog.cjs +46 -0
- package/dist/styled-system/recipes/dialog.cjs.map +1 -0
- package/dist/styled-system/recipes/dialog.js +46 -0
- package/dist/styled-system/recipes/dialog.js.map +1 -0
- package/dist/styled-system/recipes/drawer.cjs +46 -0
- package/dist/styled-system/recipes/drawer.cjs.map +1 -0
- package/dist/styled-system/recipes/drawer.js +46 -0
- package/dist/styled-system/recipes/drawer.js.map +1 -0
- package/dist/styled-system/recipes/field.cjs +36 -0
- package/dist/styled-system/recipes/field.cjs.map +1 -0
- package/dist/styled-system/recipes/field.js +36 -0
- package/dist/styled-system/recipes/field.js.map +1 -0
- package/dist/styled-system/recipes/fieldset.cjs +34 -0
- package/dist/styled-system/recipes/fieldset.cjs.map +1 -0
- package/dist/styled-system/recipes/fieldset.js +34 -0
- package/dist/styled-system/recipes/fieldset.js.map +1 -0
- package/dist/styled-system/recipes/form.cjs +25 -0
- package/dist/styled-system/recipes/form.cjs.map +1 -0
- package/dist/styled-system/recipes/form.js +25 -0
- package/dist/styled-system/recipes/form.js.map +1 -0
- package/dist/styled-system/recipes/heading.cjs +32 -0
- package/dist/styled-system/recipes/heading.cjs.map +1 -0
- package/dist/styled-system/recipes/heading.js +32 -0
- package/dist/styled-system/recipes/heading.js.map +1 -0
- package/dist/styled-system/recipes/input.cjs +29 -0
- package/dist/styled-system/recipes/input.cjs.map +1 -0
- package/dist/styled-system/recipes/input.js +29 -0
- package/dist/styled-system/recipes/input.js.map +1 -0
- package/dist/styled-system/recipes/layout-grid.cjs +42 -0
- package/dist/styled-system/recipes/layout-grid.cjs.map +1 -0
- package/dist/styled-system/recipes/layout-grid.js +42 -0
- package/dist/styled-system/recipes/layout-grid.js.map +1 -0
- package/dist/styled-system/recipes/layout-stack.cjs +53 -0
- package/dist/styled-system/recipes/layout-stack.cjs.map +1 -0
- package/dist/styled-system/recipes/layout-stack.js +53 -0
- package/dist/styled-system/recipes/layout-stack.js.map +1 -0
- package/dist/styled-system/recipes/link.cjs +25 -0
- package/dist/styled-system/recipes/link.cjs.map +1 -0
- package/dist/styled-system/recipes/link.js +25 -0
- package/dist/styled-system/recipes/link.js.map +1 -0
- package/dist/styled-system/recipes/list.cjs +52 -0
- package/dist/styled-system/recipes/list.cjs.map +1 -0
- package/dist/styled-system/recipes/list.js +52 -0
- package/dist/styled-system/recipes/list.js.map +1 -0
- package/dist/styled-system/recipes/menu.cjs +38 -0
- package/dist/styled-system/recipes/menu.cjs.map +1 -0
- package/dist/styled-system/recipes/menu.js +38 -0
- package/dist/styled-system/recipes/menu.js.map +1 -0
- package/dist/styled-system/recipes/menubar.cjs +30 -0
- package/dist/styled-system/recipes/menubar.cjs.map +1 -0
- package/dist/styled-system/recipes/menubar.js +30 -0
- package/dist/styled-system/recipes/menubar.js.map +1 -0
- package/dist/styled-system/recipes/meter.cjs +52 -0
- package/dist/styled-system/recipes/meter.cjs.map +1 -0
- package/dist/styled-system/recipes/meter.js +52 -0
- package/dist/styled-system/recipes/meter.js.map +1 -0
- package/dist/styled-system/recipes/navbar.cjs +41 -0
- package/dist/styled-system/recipes/navbar.cjs.map +1 -0
- package/dist/styled-system/recipes/navbar.js +41 -0
- package/dist/styled-system/recipes/navbar.js.map +1 -0
- package/dist/styled-system/recipes/navigation-menu.cjs +43 -0
- package/dist/styled-system/recipes/navigation-menu.cjs.map +1 -0
- package/dist/styled-system/recipes/navigation-menu.js +43 -0
- package/dist/styled-system/recipes/navigation-menu.js.map +1 -0
- package/dist/styled-system/recipes/number-field.cjs +43 -0
- package/dist/styled-system/recipes/number-field.cjs.map +1 -0
- package/dist/styled-system/recipes/number-field.js +43 -0
- package/dist/styled-system/recipes/number-field.js.map +1 -0
- package/dist/styled-system/recipes/option-selector.cjs +52 -0
- package/dist/styled-system/recipes/option-selector.cjs.map +1 -0
- package/dist/styled-system/recipes/option-selector.js +52 -0
- package/dist/styled-system/recipes/option-selector.js.map +1 -0
- package/dist/styled-system/recipes/pagination.cjs +44 -0
- package/dist/styled-system/recipes/pagination.cjs.map +1 -0
- package/dist/styled-system/recipes/pagination.js +44 -0
- package/dist/styled-system/recipes/pagination.js.map +1 -0
- package/dist/styled-system/recipes/paragraph.cjs +25 -0
- package/dist/styled-system/recipes/paragraph.cjs.map +1 -0
- package/dist/styled-system/recipes/paragraph.js +25 -0
- package/dist/styled-system/recipes/paragraph.js.map +1 -0
- package/dist/styled-system/recipes/popover.cjs +38 -0
- package/dist/styled-system/recipes/popover.cjs.map +1 -0
- package/dist/styled-system/recipes/popover.js +38 -0
- package/dist/styled-system/recipes/popover.js.map +1 -0
- package/dist/styled-system/recipes/progress.cjs +35 -0
- package/dist/styled-system/recipes/progress.cjs.map +1 -0
- package/dist/styled-system/recipes/progress.js +35 -0
- package/dist/styled-system/recipes/progress.js.map +1 -0
- package/dist/styled-system/recipes/radio-group.cjs +37 -0
- package/dist/styled-system/recipes/radio-group.cjs.map +1 -0
- package/dist/styled-system/recipes/radio-group.js +37 -0
- package/dist/styled-system/recipes/radio-group.js.map +1 -0
- package/dist/styled-system/recipes/range-slider.cjs +42 -0
- package/dist/styled-system/recipes/range-slider.cjs.map +1 -0
- package/dist/styled-system/recipes/range-slider.js +42 -0
- package/dist/styled-system/recipes/range-slider.js.map +1 -0
- package/dist/styled-system/recipes/screen-reader-only.cjs +25 -0
- package/dist/styled-system/recipes/screen-reader-only.cjs.map +1 -0
- package/dist/styled-system/recipes/screen-reader-only.js +25 -0
- package/dist/styled-system/recipes/screen-reader-only.js.map +1 -0
- package/dist/styled-system/recipes/scroll-area.cjs +37 -0
- package/dist/styled-system/recipes/scroll-area.cjs.map +1 -0
- package/dist/styled-system/recipes/scroll-area.js +37 -0
- package/dist/styled-system/recipes/scroll-area.js.map +1 -0
- package/dist/styled-system/recipes/select.cjs +48 -0
- package/dist/styled-system/recipes/select.cjs.map +1 -0
- package/dist/styled-system/recipes/select.js +48 -0
- package/dist/styled-system/recipes/select.js.map +1 -0
- package/dist/styled-system/recipes/separator.cjs +25 -0
- package/dist/styled-system/recipes/separator.cjs.map +1 -0
- package/dist/styled-system/recipes/separator.js +25 -0
- package/dist/styled-system/recipes/separator.js.map +1 -0
- package/dist/styled-system/recipes/sidebar.cjs +44 -0
- package/dist/styled-system/recipes/sidebar.cjs.map +1 -0
- package/dist/styled-system/recipes/sidebar.js +44 -0
- package/dist/styled-system/recipes/sidebar.js.map +1 -0
- package/dist/styled-system/recipes/skeleton.cjs +35 -0
- package/dist/styled-system/recipes/skeleton.cjs.map +1 -0
- package/dist/styled-system/recipes/skeleton.js +35 -0
- package/dist/styled-system/recipes/skeleton.js.map +1 -0
- package/dist/styled-system/recipes/slider.cjs +42 -0
- package/dist/styled-system/recipes/slider.cjs.map +1 -0
- package/dist/styled-system/recipes/slider.js +42 -0
- package/dist/styled-system/recipes/slider.js.map +1 -0
- package/dist/styled-system/recipes/spinner.cjs +29 -0
- package/dist/styled-system/recipes/spinner.cjs.map +1 -0
- package/dist/styled-system/recipes/spinner.js +29 -0
- package/dist/styled-system/recipes/spinner.js.map +1 -0
- package/dist/styled-system/recipes/table.cjs +58 -0
- package/dist/styled-system/recipes/table.cjs.map +1 -0
- package/dist/styled-system/recipes/table.js +58 -0
- package/dist/styled-system/recipes/table.js.map +1 -0
- package/dist/styled-system/recipes/tabs.cjs +35 -0
- package/dist/styled-system/recipes/tabs.cjs.map +1 -0
- package/dist/styled-system/recipes/tabs.js +35 -0
- package/dist/styled-system/recipes/tabs.js.map +1 -0
- package/dist/styled-system/recipes/tags-input.cjs +43 -0
- package/dist/styled-system/recipes/tags-input.cjs.map +1 -0
- package/dist/styled-system/recipes/tags-input.js +43 -0
- package/dist/styled-system/recipes/tags-input.js.map +1 -0
- package/dist/styled-system/recipes/text.cjs +35 -0
- package/dist/styled-system/recipes/text.cjs.map +1 -0
- package/dist/styled-system/recipes/text.js +35 -0
- package/dist/styled-system/recipes/text.js.map +1 -0
- package/dist/styled-system/recipes/textarea.cjs +29 -0
- package/dist/styled-system/recipes/textarea.cjs.map +1 -0
- package/dist/styled-system/recipes/textarea.js +29 -0
- package/dist/styled-system/recipes/textarea.js.map +1 -0
- package/dist/styled-system/recipes/toast.cjs +45 -0
- package/dist/styled-system/recipes/toast.cjs.map +1 -0
- package/dist/styled-system/recipes/toast.js +45 -0
- package/dist/styled-system/recipes/toast.js.map +1 -0
- package/dist/styled-system/recipes/toggle-group.cjs +44 -0
- package/dist/styled-system/recipes/toggle-group.cjs.map +1 -0
- package/dist/styled-system/recipes/toggle-group.js +44 -0
- package/dist/styled-system/recipes/toggle-group.js.map +1 -0
- package/dist/styled-system/recipes/toggle-switch.cjs +30 -0
- package/dist/styled-system/recipes/toggle-switch.cjs.map +1 -0
- package/dist/styled-system/recipes/toggle-switch.js +30 -0
- package/dist/styled-system/recipes/toggle-switch.js.map +1 -0
- package/dist/styled-system/recipes/toggle.cjs +39 -0
- package/dist/styled-system/recipes/toggle.cjs.map +1 -0
- package/dist/styled-system/recipes/toggle.js +39 -0
- package/dist/styled-system/recipes/toggle.js.map +1 -0
- package/dist/styled-system/recipes/toolbar.cjs +51 -0
- package/dist/styled-system/recipes/toolbar.cjs.map +1 -0
- package/dist/styled-system/recipes/toolbar.js +51 -0
- package/dist/styled-system/recipes/toolbar.js.map +1 -0
- package/dist/styled-system/recipes/tooltip.cjs +35 -0
- package/dist/styled-system/recipes/tooltip.cjs.map +1 -0
- package/dist/styled-system/recipes/tooltip.js +35 -0
- package/dist/styled-system/recipes/tooltip.js.map +1 -0
- package/dist/styled-system/recipes/tree-view.cjs +37 -0
- package/dist/styled-system/recipes/tree-view.cjs.map +1 -0
- package/dist/styled-system/recipes/tree-view.js +37 -0
- package/dist/styled-system/recipes/tree-view.js.map +1 -0
- package/dist/styled-system/recipes/upload.cjs +55 -0
- package/dist/styled-system/recipes/upload.cjs.map +1 -0
- package/dist/styled-system/recipes/upload.js +55 -0
- package/dist/styled-system/recipes/upload.js.map +1 -0
- package/dist/styles/theme.cjs +137 -0
- package/dist/styles/theme.cjs.map +1 -0
- package/dist/styles/theme.js +136 -0
- package/dist/styles/theme.js.map +1 -0
- package/dist/styles.css +7706 -0
- package/package.json +107 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { ColorFormat, ColorModel, defaultColor, formatColor, parseColor } from "./color-utils.js";
|
|
2
|
+
import { ComponentPropsWithoutRef, ReactNode } from "react";
|
|
3
|
+
import { Popover, PopoverRoot } from "@base-ui/react/popover";
|
|
4
|
+
//#region src/components/color-picker/color-picker.d.ts
|
|
5
|
+
interface ColorPickerRootProps extends Omit<PopoverRoot.Props, "children"> {
|
|
6
|
+
children?: ReactNode;
|
|
7
|
+
defaultValue?: string;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
format?: ColorFormat;
|
|
10
|
+
id?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
onValueChange?: (value: string) => void;
|
|
13
|
+
showAlpha?: boolean;
|
|
14
|
+
swatches?: string[];
|
|
15
|
+
value?: string;
|
|
16
|
+
}
|
|
17
|
+
declare function ColorPickerRoot({ children, defaultValue, disabled, format, id, name, onValueChange, showAlpha, swatches, value: controlledValue, ...popoverProps }: ColorPickerRootProps): import("react").JSX.Element;
|
|
18
|
+
interface ColorPickerLabelProps extends ComponentPropsWithoutRef<"label"> {}
|
|
19
|
+
declare const ColorPickerLabel: import("react").ForwardRefExoticComponent<ColorPickerLabelProps & import("react").RefAttributes<HTMLLabelElement>>;
|
|
20
|
+
type ColorPickerControlProps = ComponentPropsWithoutRef<"div">;
|
|
21
|
+
declare const ColorPickerControl: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
22
|
+
type ColorPickerTriggerProps = ComponentPropsWithoutRef<typeof Popover.Trigger>;
|
|
23
|
+
declare const ColorPickerTrigger: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react/internals/types").NativeButtonProps & Omit<import("@base-ui/react/internals/types").WithBaseUIEvent<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, "style" | "defaultChecked" | "defaultValue" | "className" | "color"> & {
|
|
24
|
+
className?: string | ((state: import("@base-ui/react").PopoverTriggerState) => string | undefined) | undefined;
|
|
25
|
+
render?: import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("@base-ui/react").ComponentRenderFn<import("@base-ui/react").HTMLProps, import("@base-ui/react").PopoverTriggerState> | undefined;
|
|
26
|
+
style?: import("react").CSSProperties | ((state: import("@base-ui/react").PopoverTriggerState) => React.CSSProperties | undefined) | undefined;
|
|
27
|
+
} & {
|
|
28
|
+
nativeButton?: boolean | undefined;
|
|
29
|
+
handle?: Popover.Handle<unknown> | undefined;
|
|
30
|
+
payload?: unknown;
|
|
31
|
+
id?: string | undefined;
|
|
32
|
+
openOnHover?: boolean | undefined;
|
|
33
|
+
delay?: number | undefined;
|
|
34
|
+
closeDelay?: number | undefined;
|
|
35
|
+
} & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
36
|
+
type ColorPickerPreviewProps = ComponentPropsWithoutRef<"span">;
|
|
37
|
+
declare const ColorPickerPreview: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
|
|
38
|
+
type ColorPickerValueProps = ComponentPropsWithoutRef<"span">;
|
|
39
|
+
declare const ColorPickerValue: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
|
|
40
|
+
declare const ColorPickerPortal: typeof Popover.Portal;
|
|
41
|
+
type ColorPickerPositionerProps = ComponentPropsWithoutRef<typeof Popover.Positioner>;
|
|
42
|
+
declare const ColorPickerPositioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").PopoverPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
43
|
+
type ColorPickerPopupProps = ComponentPropsWithoutRef<typeof Popover.Popup>;
|
|
44
|
+
declare const ColorPickerPopup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").PopoverPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
45
|
+
type ColorPickerPaletteProps = Omit<ComponentPropsWithoutRef<"div">, "onChange">;
|
|
46
|
+
declare const ColorPickerPalette: import("react").ForwardRefExoticComponent<ColorPickerPaletteProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
47
|
+
type ColorPickerHueProps = Omit<ComponentPropsWithoutRef<"input">, "max" | "min" | "onChange" | "step" | "type" | "value">;
|
|
48
|
+
declare const ColorPickerHue: import("react").ForwardRefExoticComponent<ColorPickerHueProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
49
|
+
type ColorPickerAlphaProps = Omit<ComponentPropsWithoutRef<"input">, "max" | "min" | "onChange" | "step" | "type" | "value">;
|
|
50
|
+
declare const ColorPickerAlpha: import("react").ForwardRefExoticComponent<ColorPickerAlphaProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
51
|
+
type ColorPickerSwatchesProps = ComponentPropsWithoutRef<"fieldset">;
|
|
52
|
+
declare const ColorPickerSwatches: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & import("react").RefAttributes<HTMLFieldSetElement>>;
|
|
53
|
+
interface ColorPickerSwatchProps extends ComponentPropsWithoutRef<"button"> {
|
|
54
|
+
color: string;
|
|
55
|
+
}
|
|
56
|
+
declare const ColorPickerSwatch: import("react").ForwardRefExoticComponent<ColorPickerSwatchProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
57
|
+
type ColorPickerInputProps = Omit<ComponentPropsWithoutRef<"input">, "onChange" | "type" | "value">;
|
|
58
|
+
declare const ColorPickerInput: import("react").ForwardRefExoticComponent<ColorPickerInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
59
|
+
type ColorPickerNativeInputProps = Omit<ComponentPropsWithoutRef<"input">, "onChange" | "type" | "value">;
|
|
60
|
+
declare const ColorPickerNativeInput: import("react").ForwardRefExoticComponent<ColorPickerNativeInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
61
|
+
declare const ColorPicker: {
|
|
62
|
+
Root: typeof ColorPickerRoot;
|
|
63
|
+
Label: import("react").ForwardRefExoticComponent<ColorPickerLabelProps & import("react").RefAttributes<HTMLLabelElement>>;
|
|
64
|
+
Control: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
65
|
+
Trigger: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react/internals/types").NativeButtonProps & Omit<import("@base-ui/react/internals/types").WithBaseUIEvent<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>>, "style" | "defaultChecked" | "defaultValue" | "className" | "color"> & {
|
|
66
|
+
className?: string | ((state: import("@base-ui/react").PopoverTriggerState) => string | undefined) | undefined;
|
|
67
|
+
render?: import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | import("@base-ui/react").ComponentRenderFn<import("@base-ui/react").HTMLProps, import("@base-ui/react").PopoverTriggerState> | undefined;
|
|
68
|
+
style?: import("react").CSSProperties | ((state: import("@base-ui/react").PopoverTriggerState) => React.CSSProperties | undefined) | undefined;
|
|
69
|
+
} & {
|
|
70
|
+
nativeButton?: boolean | undefined;
|
|
71
|
+
handle?: Popover.Handle<unknown> | undefined;
|
|
72
|
+
payload?: unknown;
|
|
73
|
+
id?: string | undefined;
|
|
74
|
+
openOnHover?: boolean | undefined;
|
|
75
|
+
delay?: number | undefined;
|
|
76
|
+
closeDelay?: number | undefined;
|
|
77
|
+
} & import("react").RefAttributes<HTMLElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
|
|
78
|
+
Preview: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
|
|
79
|
+
Value: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & import("react").RefAttributes<HTMLSpanElement>>;
|
|
80
|
+
Portal: import("react").ForwardRefExoticComponent<Omit<import("@base-ui/react").PopoverPortalProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
81
|
+
Positioner: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").PopoverPositionerProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
82
|
+
Popup: import("react").ForwardRefExoticComponent<Omit<Omit<import("@base-ui/react").PopoverPopupProps, "ref"> & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
|
|
83
|
+
Palette: import("react").ForwardRefExoticComponent<ColorPickerPaletteProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
84
|
+
Hue: import("react").ForwardRefExoticComponent<ColorPickerHueProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
85
|
+
Alpha: import("react").ForwardRefExoticComponent<ColorPickerAlphaProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
86
|
+
Swatches: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & import("react").RefAttributes<HTMLFieldSetElement>>;
|
|
87
|
+
Swatch: import("react").ForwardRefExoticComponent<ColorPickerSwatchProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
88
|
+
Input: import("react").ForwardRefExoticComponent<ColorPickerInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
89
|
+
NativeInput: import("react").ForwardRefExoticComponent<ColorPickerNativeInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
90
|
+
createHandle: typeof Popover.createHandle;
|
|
91
|
+
};
|
|
92
|
+
//#endregion
|
|
93
|
+
export { ColorPicker, ColorPickerAlpha, ColorPickerAlphaProps, ColorPickerControl, ColorPickerControlProps, ColorPickerHue, ColorPickerHueProps, ColorPickerInput, ColorPickerInputProps, ColorPickerLabel, ColorPickerLabelProps, ColorPickerNativeInput, ColorPickerNativeInputProps, ColorPickerPalette, ColorPickerPaletteProps, ColorPickerPopup, ColorPickerPopupProps, ColorPickerPortal, ColorPickerPositioner, ColorPickerPositionerProps, ColorPickerPreview, ColorPickerPreviewProps, ColorPickerRoot, ColorPickerRootProps, ColorPickerSwatch, ColorPickerSwatchProps, ColorPickerSwatches, ColorPickerSwatchesProps, ColorPickerTrigger, ColorPickerTriggerProps, ColorPickerValue, ColorPickerValueProps };
|
|
94
|
+
//# sourceMappingURL=color-picker.d.ts.map
|
|
@@ -0,0 +1,344 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cx } from "../../styled-system/css/cx.js";
|
|
3
|
+
import { withRecipeClassName } from "../base-ui.js";
|
|
4
|
+
import { colorPicker } from "../../styled-system/recipes/color-picker.js";
|
|
5
|
+
import { defaultColor, formatColor, parseColor } from "./color-utils.js";
|
|
6
|
+
import { createContext, forwardRef, useContext, useEffect, useId, useState } from "react";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import { Popover } from "@base-ui/react/popover";
|
|
9
|
+
//#region src/components/color-picker/color-picker.tsx
|
|
10
|
+
const ColorPickerContext = createContext(null);
|
|
11
|
+
function useColorPicker() {
|
|
12
|
+
const context = useContext(ColorPickerContext);
|
|
13
|
+
if (!context) throw new Error("ColorPicker parts must be rendered inside ColorPicker.Root.");
|
|
14
|
+
return context;
|
|
15
|
+
}
|
|
16
|
+
function ColorPickerRoot({ children, defaultValue = "#000000", disabled = false, format = "hex", id, name, onValueChange, showAlpha = false, swatches = [], value: controlledValue, ...popoverProps }) {
|
|
17
|
+
const generatedId = useId();
|
|
18
|
+
const inputId = id ?? generatedId;
|
|
19
|
+
const [uncontrolledColor, setUncontrolledColor] = useState(() => defaultColor(defaultValue));
|
|
20
|
+
const color = parseColor(controlledValue) ?? uncontrolledColor;
|
|
21
|
+
const formattedValue = formatColor(color, format, showAlpha);
|
|
22
|
+
const setColor = (nextColor) => {
|
|
23
|
+
setUncontrolledColor(nextColor);
|
|
24
|
+
onValueChange?.(formatColor(nextColor, format, showAlpha));
|
|
25
|
+
};
|
|
26
|
+
return /* @__PURE__ */ jsx(ColorPickerContext.Provider, {
|
|
27
|
+
value: {
|
|
28
|
+
color,
|
|
29
|
+
disabled,
|
|
30
|
+
format,
|
|
31
|
+
inputId,
|
|
32
|
+
setColor,
|
|
33
|
+
showAlpha,
|
|
34
|
+
swatches,
|
|
35
|
+
value: formattedValue
|
|
36
|
+
},
|
|
37
|
+
children: /* @__PURE__ */ jsxs(Popover.Root, {
|
|
38
|
+
...popoverProps,
|
|
39
|
+
children: [children, name ? /* @__PURE__ */ jsx("input", {
|
|
40
|
+
"aria-hidden": "true",
|
|
41
|
+
id: `${inputId}-value`,
|
|
42
|
+
name,
|
|
43
|
+
type: "hidden",
|
|
44
|
+
value: formattedValue
|
|
45
|
+
}) : null]
|
|
46
|
+
})
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
const ColorPickerLabel = forwardRef(function ColorPickerLabel({ children, className, htmlFor, ...props }, ref) {
|
|
50
|
+
const { inputId } = useColorPicker();
|
|
51
|
+
return /* @__PURE__ */ jsx("label", {
|
|
52
|
+
...props,
|
|
53
|
+
ref,
|
|
54
|
+
className: cx(colorPicker().label, className),
|
|
55
|
+
"data-slot": "color-picker-label",
|
|
56
|
+
htmlFor: htmlFor ?? inputId,
|
|
57
|
+
children
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
const ColorPickerControl = forwardRef(function ColorPickerControl({ className, ...props }, ref) {
|
|
61
|
+
return /* @__PURE__ */ jsx("div", {
|
|
62
|
+
...props,
|
|
63
|
+
ref,
|
|
64
|
+
className: cx(colorPicker().control, className),
|
|
65
|
+
"data-slot": "color-picker-control"
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
const ColorPickerTrigger = forwardRef(function ColorPickerTrigger({ className, disabled, ...props }, ref) {
|
|
69
|
+
const context = useColorPicker();
|
|
70
|
+
return /* @__PURE__ */ jsx(Popover.Trigger, {
|
|
71
|
+
...props,
|
|
72
|
+
ref,
|
|
73
|
+
className: withRecipeClassName(colorPicker().trigger, className),
|
|
74
|
+
"data-jaci-component": "color-picker",
|
|
75
|
+
"data-slot": "color-picker-trigger",
|
|
76
|
+
disabled: disabled ?? context.disabled,
|
|
77
|
+
id: props.id ?? context.inputId
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
const ColorPickerPreview = forwardRef(function ColorPickerPreview({ className, style, ...props }, ref) {
|
|
81
|
+
const { value } = useColorPicker();
|
|
82
|
+
return /* @__PURE__ */ jsx("span", {
|
|
83
|
+
...props,
|
|
84
|
+
ref,
|
|
85
|
+
"aria-label": props["aria-label"] ?? value,
|
|
86
|
+
className: cx(colorPicker().preview, className),
|
|
87
|
+
"data-slot": "color-picker-preview",
|
|
88
|
+
role: "img",
|
|
89
|
+
style: {
|
|
90
|
+
backgroundColor: value,
|
|
91
|
+
...style
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
const ColorPickerValue = forwardRef(function ColorPickerValue({ className, ...props }, ref) {
|
|
96
|
+
const { value } = useColorPicker();
|
|
97
|
+
return /* @__PURE__ */ jsx("span", {
|
|
98
|
+
...props,
|
|
99
|
+
ref,
|
|
100
|
+
className: cx(colorPicker().value, className),
|
|
101
|
+
"data-slot": "color-picker-value",
|
|
102
|
+
children: props.children ?? value
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
const ColorPickerPortal = Popover.Portal;
|
|
106
|
+
const ColorPickerPositioner = forwardRef(function ColorPickerPositioner({ className, ...props }, ref) {
|
|
107
|
+
return /* @__PURE__ */ jsx(Popover.Positioner, {
|
|
108
|
+
...props,
|
|
109
|
+
ref,
|
|
110
|
+
className: withRecipeClassName(colorPicker().positioner, className),
|
|
111
|
+
"data-slot": "color-picker-positioner"
|
|
112
|
+
});
|
|
113
|
+
});
|
|
114
|
+
const ColorPickerPopup = forwardRef(function ColorPickerPopup({ className, ...props }, ref) {
|
|
115
|
+
return /* @__PURE__ */ jsx(Popover.Popup, {
|
|
116
|
+
...props,
|
|
117
|
+
ref,
|
|
118
|
+
className: withRecipeClassName(colorPicker().popup, className),
|
|
119
|
+
"data-jaci-component": "color-picker",
|
|
120
|
+
"data-slot": "color-picker-popup"
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
function updateFromPoint(event, setColor, color) {
|
|
124
|
+
const rect = event.currentTarget.getBoundingClientRect();
|
|
125
|
+
const saturation = Math.round(Math.min(1, Math.max(0, (event.clientX - rect.left) / rect.width)) * 100);
|
|
126
|
+
const lightness = Math.round((1 - Math.min(1, Math.max(0, (event.clientY - rect.top) / rect.height))) * 100);
|
|
127
|
+
setColor({
|
|
128
|
+
...color,
|
|
129
|
+
lightness,
|
|
130
|
+
saturation
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
const ColorPickerPalette = forwardRef(function ColorPickerPalette({ className, onKeyDown, onPointerDown, style, ...props }, ref) {
|
|
134
|
+
const { color, setColor, value } = useColorPicker();
|
|
135
|
+
const background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${color.hue} 100% 50%))`;
|
|
136
|
+
return /* @__PURE__ */ jsx("div", {
|
|
137
|
+
...props,
|
|
138
|
+
ref,
|
|
139
|
+
"aria-label": props["aria-label"] ?? "Color saturation and lightness",
|
|
140
|
+
"aria-valuemax": 100,
|
|
141
|
+
"aria-valuemin": 0,
|
|
142
|
+
"aria-valuenow": Math.round(color.saturation),
|
|
143
|
+
"aria-valuetext": value,
|
|
144
|
+
className: cx(colorPicker().palette, className),
|
|
145
|
+
"data-slot": "color-picker-palette",
|
|
146
|
+
onKeyDown: (event) => {
|
|
147
|
+
const step = event.shiftKey ? 10 : 1;
|
|
148
|
+
if (event.key === "ArrowLeft" || event.key === "ArrowRight" || event.key === "ArrowUp" || event.key === "ArrowDown") {
|
|
149
|
+
event.preventDefault();
|
|
150
|
+
setColor({
|
|
151
|
+
...color,
|
|
152
|
+
saturation: event.key === "ArrowLeft" ? Math.max(0, color.saturation - step) : event.key === "ArrowRight" ? Math.min(100, color.saturation + step) : color.saturation,
|
|
153
|
+
lightness: event.key === "ArrowDown" ? Math.max(0, color.lightness - step) : event.key === "ArrowUp" ? Math.min(100, color.lightness + step) : color.lightness
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
onKeyDown?.(event);
|
|
157
|
+
},
|
|
158
|
+
onPointerDown: (event) => {
|
|
159
|
+
updateFromPoint(event, setColor, color);
|
|
160
|
+
onPointerDown?.(event);
|
|
161
|
+
},
|
|
162
|
+
role: "slider",
|
|
163
|
+
style: {
|
|
164
|
+
background,
|
|
165
|
+
...style
|
|
166
|
+
},
|
|
167
|
+
tabIndex: props.tabIndex ?? 0
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
const ColorPickerHue = forwardRef(function ColorPickerHue({ className, onInput, ...props }, ref) {
|
|
171
|
+
const { color, setColor } = useColorPicker();
|
|
172
|
+
return /* @__PURE__ */ jsx("input", {
|
|
173
|
+
...props,
|
|
174
|
+
ref,
|
|
175
|
+
"aria-label": props["aria-label"] ?? "Hue",
|
|
176
|
+
className: cx(colorPicker().hue, className),
|
|
177
|
+
"data-slot": "color-picker-hue",
|
|
178
|
+
max: 360,
|
|
179
|
+
min: 0,
|
|
180
|
+
onInput: (event) => {
|
|
181
|
+
setColor({
|
|
182
|
+
...color,
|
|
183
|
+
hue: Number(event.currentTarget.value)
|
|
184
|
+
});
|
|
185
|
+
onInput?.(event);
|
|
186
|
+
},
|
|
187
|
+
step: 1,
|
|
188
|
+
type: "range",
|
|
189
|
+
value: color.hue
|
|
190
|
+
});
|
|
191
|
+
});
|
|
192
|
+
const ColorPickerAlpha = forwardRef(function ColorPickerAlpha({ className, onInput, style, ...props }, ref) {
|
|
193
|
+
const { color, setColor, showAlpha } = useColorPicker();
|
|
194
|
+
if (!showAlpha) return null;
|
|
195
|
+
return /* @__PURE__ */ jsx("input", {
|
|
196
|
+
...props,
|
|
197
|
+
ref,
|
|
198
|
+
"aria-label": props["aria-label"] ?? "Opacity",
|
|
199
|
+
className: cx(colorPicker().alpha, className),
|
|
200
|
+
"data-slot": "color-picker-alpha",
|
|
201
|
+
max: 1,
|
|
202
|
+
min: 0,
|
|
203
|
+
onInput: (event) => {
|
|
204
|
+
setColor({
|
|
205
|
+
...color,
|
|
206
|
+
alpha: Number(event.currentTarget.value)
|
|
207
|
+
});
|
|
208
|
+
onInput?.(event);
|
|
209
|
+
},
|
|
210
|
+
step: .01,
|
|
211
|
+
style: {
|
|
212
|
+
...style,
|
|
213
|
+
background: `linear-gradient(to right, transparent, ${formatColor({
|
|
214
|
+
...color,
|
|
215
|
+
alpha: 1
|
|
216
|
+
}, "rgb")})`
|
|
217
|
+
},
|
|
218
|
+
type: "range",
|
|
219
|
+
value: color.alpha
|
|
220
|
+
});
|
|
221
|
+
});
|
|
222
|
+
const ColorPickerSwatches = forwardRef(function ColorPickerSwatches({ children, className, ...props }, ref) {
|
|
223
|
+
const { swatches } = useColorPicker();
|
|
224
|
+
return /* @__PURE__ */ jsx("fieldset", {
|
|
225
|
+
...props,
|
|
226
|
+
ref,
|
|
227
|
+
className: cx(colorPicker().swatches, className),
|
|
228
|
+
"data-slot": "color-picker-swatches",
|
|
229
|
+
children: children ?? swatches.map((color) => /* @__PURE__ */ jsx(ColorPickerSwatch, { color }, color))
|
|
230
|
+
});
|
|
231
|
+
});
|
|
232
|
+
const ColorPickerSwatch = forwardRef(function ColorPickerSwatch({ children, className, color, style, ...props }, ref) {
|
|
233
|
+
const context = useColorPicker();
|
|
234
|
+
const parsed = parseColor(color);
|
|
235
|
+
const selected = parsed && formatColor(parsed, context.format, context.showAlpha) === context.value;
|
|
236
|
+
return /* @__PURE__ */ jsx("button", {
|
|
237
|
+
...props,
|
|
238
|
+
ref,
|
|
239
|
+
"aria-label": props["aria-label"] ?? color,
|
|
240
|
+
"aria-pressed": selected || void 0,
|
|
241
|
+
className: cx(colorPicker().swatch, className),
|
|
242
|
+
"data-selected": selected || void 0,
|
|
243
|
+
"data-slot": "color-picker-swatch",
|
|
244
|
+
onClick: (event) => {
|
|
245
|
+
if (parsed) context.setColor(parsed);
|
|
246
|
+
props.onClick?.(event);
|
|
247
|
+
},
|
|
248
|
+
style: {
|
|
249
|
+
backgroundColor: color,
|
|
250
|
+
...style
|
|
251
|
+
},
|
|
252
|
+
type: "button",
|
|
253
|
+
children
|
|
254
|
+
});
|
|
255
|
+
});
|
|
256
|
+
const ColorPickerInput = forwardRef(function ColorPickerInput({ className, onBlur, onKeyDown, ...props }, ref) {
|
|
257
|
+
const { format, setColor, showAlpha, value } = useColorPicker();
|
|
258
|
+
const [draft, setDraft] = useState(value);
|
|
259
|
+
const [invalid, setInvalid] = useState(false);
|
|
260
|
+
useEffect(() => setDraft(value), [value]);
|
|
261
|
+
const commit = () => {
|
|
262
|
+
const parsed = parseColor(draft);
|
|
263
|
+
if (!parsed) {
|
|
264
|
+
setInvalid(true);
|
|
265
|
+
setDraft(value);
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
setInvalid(false);
|
|
269
|
+
setColor(parsed);
|
|
270
|
+
setDraft(formatColor(parsed, format, showAlpha));
|
|
271
|
+
};
|
|
272
|
+
return /* @__PURE__ */ jsx("input", {
|
|
273
|
+
...props,
|
|
274
|
+
ref,
|
|
275
|
+
"aria-label": props["aria-label"] ?? "Color value",
|
|
276
|
+
"aria-invalid": invalid || void 0,
|
|
277
|
+
className: cx(colorPicker().input, className),
|
|
278
|
+
"data-slot": "color-picker-input",
|
|
279
|
+
onBlur: (event) => {
|
|
280
|
+
commit();
|
|
281
|
+
onBlur?.(event);
|
|
282
|
+
},
|
|
283
|
+
onChange: (event) => {
|
|
284
|
+
setDraft(event.currentTarget.value);
|
|
285
|
+
setInvalid(false);
|
|
286
|
+
},
|
|
287
|
+
onKeyDown: (event) => {
|
|
288
|
+
if (event.key === "Enter") {
|
|
289
|
+
event.preventDefault();
|
|
290
|
+
commit();
|
|
291
|
+
}
|
|
292
|
+
onKeyDown?.(event);
|
|
293
|
+
},
|
|
294
|
+
type: "text",
|
|
295
|
+
value: draft
|
|
296
|
+
});
|
|
297
|
+
});
|
|
298
|
+
const ColorPickerNativeInput = forwardRef(function ColorPickerNativeInput({ className, onInput, ...props }, ref) {
|
|
299
|
+
const { color, setColor, showAlpha } = useColorPicker();
|
|
300
|
+
const value = formatColor({
|
|
301
|
+
...color,
|
|
302
|
+
alpha: 1
|
|
303
|
+
}, "hex");
|
|
304
|
+
return /* @__PURE__ */ jsx("input", {
|
|
305
|
+
...props,
|
|
306
|
+
ref,
|
|
307
|
+
"aria-label": props["aria-label"] ?? "Choose a color",
|
|
308
|
+
className: cx(colorPicker().nativeInput, className),
|
|
309
|
+
"data-slot": "color-picker-native-input",
|
|
310
|
+
onInput: (event) => {
|
|
311
|
+
const parsed = parseColor(event.currentTarget.value);
|
|
312
|
+
if (parsed) setColor({
|
|
313
|
+
...parsed,
|
|
314
|
+
alpha: showAlpha ? color.alpha : 1
|
|
315
|
+
});
|
|
316
|
+
onInput?.(event);
|
|
317
|
+
},
|
|
318
|
+
type: "color",
|
|
319
|
+
value: value.slice(0, 7)
|
|
320
|
+
});
|
|
321
|
+
});
|
|
322
|
+
const ColorPicker = {
|
|
323
|
+
Root: ColorPickerRoot,
|
|
324
|
+
Label: ColorPickerLabel,
|
|
325
|
+
Control: ColorPickerControl,
|
|
326
|
+
Trigger: ColorPickerTrigger,
|
|
327
|
+
Preview: ColorPickerPreview,
|
|
328
|
+
Value: ColorPickerValue,
|
|
329
|
+
Portal: ColorPickerPortal,
|
|
330
|
+
Positioner: ColorPickerPositioner,
|
|
331
|
+
Popup: ColorPickerPopup,
|
|
332
|
+
Palette: ColorPickerPalette,
|
|
333
|
+
Hue: ColorPickerHue,
|
|
334
|
+
Alpha: ColorPickerAlpha,
|
|
335
|
+
Swatches: ColorPickerSwatches,
|
|
336
|
+
Swatch: ColorPickerSwatch,
|
|
337
|
+
Input: ColorPickerInput,
|
|
338
|
+
NativeInput: ColorPickerNativeInput,
|
|
339
|
+
createHandle: Popover.createHandle
|
|
340
|
+
};
|
|
341
|
+
//#endregion
|
|
342
|
+
export { ColorPicker, ColorPickerAlpha, ColorPickerControl, ColorPickerHue, ColorPickerInput, ColorPickerLabel, ColorPickerNativeInput, ColorPickerPalette, ColorPickerPopup, ColorPickerPortal, ColorPickerPositioner, ColorPickerPreview, ColorPickerRoot, ColorPickerSwatch, ColorPickerSwatches, ColorPickerTrigger, ColorPickerValue };
|
|
343
|
+
|
|
344
|
+
//# sourceMappingURL=color-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"color-picker.js","names":["BasePopover"],"sources":["../../../src/components/color-picker/color-picker.tsx"],"sourcesContent":["\"use client\";\n\nimport { Popover as BasePopover } from \"@base-ui/react/popover\";\nimport { createContext, forwardRef, useContext, useEffect, useId, useState } from \"react\";\nimport type { ComponentPropsWithoutRef, PointerEvent, ReactNode } from \"react\";\nimport type { PopoverRoot as BasePopoverRoot } from \"@base-ui/react/popover\";\n\nimport { cx } from \"../../styled-system/css\";\nimport { colorPicker } from \"../../styled-system/recipes\";\nimport { withRecipeClassName } from \"../base-ui\";\nimport { defaultColor, formatColor, parseColor } from \"./color-utils\";\nimport type { ColorFormat, ColorModel } from \"./color-utils\";\n\nexport type { ColorFormat, ColorModel } from \"./color-utils\";\nexport { defaultColor, formatColor, parseColor } from \"./color-utils\";\n\ninterface ColorPickerContextValue {\n color: ColorModel;\n disabled: boolean;\n format: ColorFormat;\n inputId: string;\n setColor: (color: ColorModel) => void;\n showAlpha: boolean;\n swatches: string[];\n value: string;\n}\n\nconst ColorPickerContext = createContext<ColorPickerContextValue | null>(null);\n\nfunction useColorPicker() {\n const context = useContext(ColorPickerContext);\n if (!context) throw new Error(\"ColorPicker parts must be rendered inside ColorPicker.Root.\");\n return context;\n}\n\nexport interface ColorPickerRootProps extends Omit<BasePopoverRoot.Props, \"children\"> {\n children?: ReactNode;\n defaultValue?: string;\n disabled?: boolean;\n format?: ColorFormat;\n id?: string;\n name?: string;\n onValueChange?: (value: string) => void;\n showAlpha?: boolean;\n swatches?: string[];\n value?: string;\n}\n\nexport function ColorPickerRoot({\n children,\n defaultValue = \"#000000\",\n disabled = false,\n format = \"hex\",\n id,\n name,\n onValueChange,\n showAlpha = false,\n swatches = [],\n value: controlledValue,\n ...popoverProps\n}: ColorPickerRootProps) {\n const generatedId = useId();\n const inputId = id ?? generatedId;\n const [uncontrolledColor, setUncontrolledColor] = useState<ColorModel>(() =>\n defaultColor(defaultValue),\n );\n const parsedControlled = parseColor(controlledValue);\n const color = parsedControlled ?? uncontrolledColor;\n const formattedValue = formatColor(color, format, showAlpha);\n const setColor = (nextColor: ColorModel) => {\n setUncontrolledColor(nextColor);\n onValueChange?.(formatColor(nextColor, format, showAlpha));\n };\n\n return (\n <ColorPickerContext.Provider\n value={{\n color,\n disabled,\n format,\n inputId,\n setColor,\n showAlpha,\n swatches,\n value: formattedValue,\n }}\n >\n <BasePopover.Root {...popoverProps}>\n {children}\n {name ? (\n <input\n aria-hidden=\"true\"\n id={`${inputId}-value`}\n name={name}\n type=\"hidden\"\n value={formattedValue}\n />\n ) : null}\n </BasePopover.Root>\n </ColorPickerContext.Provider>\n );\n}\n\nexport interface ColorPickerLabelProps extends ComponentPropsWithoutRef<\"label\"> {}\nexport const ColorPickerLabel = forwardRef<HTMLLabelElement, ColorPickerLabelProps>(\n function ColorPickerLabel({ children, className, htmlFor, ...props }, ref) {\n const { inputId } = useColorPicker();\n return (\n <label\n {...props}\n ref={ref}\n className={cx(colorPicker().label, className)}\n data-slot=\"color-picker-label\"\n htmlFor={htmlFor ?? inputId}\n >\n {children}\n </label>\n );\n },\n);\n\nexport type ColorPickerControlProps = ComponentPropsWithoutRef<\"div\">;\nexport const ColorPickerControl = forwardRef<HTMLDivElement, ColorPickerControlProps>(\n function ColorPickerControl({ className, ...props }, ref) {\n return (\n <div\n {...props}\n ref={ref}\n className={cx(colorPicker().control, className)}\n data-slot=\"color-picker-control\"\n />\n );\n },\n);\n\nexport type ColorPickerTriggerProps = ComponentPropsWithoutRef<typeof BasePopover.Trigger>;\nexport const ColorPickerTrigger = forwardRef<HTMLButtonElement, ColorPickerTriggerProps>(\n function ColorPickerTrigger({ className, disabled, ...props }, ref) {\n const context = useColorPicker();\n return (\n <BasePopover.Trigger\n {...props}\n ref={ref}\n className={withRecipeClassName(colorPicker().trigger, className)}\n data-jaci-component=\"color-picker\"\n data-slot=\"color-picker-trigger\"\n disabled={disabled ?? context.disabled}\n id={props.id ?? context.inputId}\n />\n );\n },\n);\n\nexport type ColorPickerPreviewProps = ComponentPropsWithoutRef<\"span\">;\nexport const ColorPickerPreview = forwardRef<HTMLSpanElement, ColorPickerPreviewProps>(\n function ColorPickerPreview({ className, style, ...props }, ref) {\n const { value } = useColorPicker();\n return (\n <span\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? value}\n className={cx(colorPicker().preview, className)}\n data-slot=\"color-picker-preview\"\n role=\"img\"\n style={{ backgroundColor: value, ...style }}\n />\n );\n },\n);\n\nexport type ColorPickerValueProps = ComponentPropsWithoutRef<\"span\">;\nexport const ColorPickerValue = forwardRef<HTMLSpanElement, ColorPickerValueProps>(\n function ColorPickerValue({ className, ...props }, ref) {\n const { value } = useColorPicker();\n return (\n <span\n {...props}\n ref={ref}\n className={cx(colorPicker().value, className)}\n data-slot=\"color-picker-value\"\n >\n {props.children ?? value}\n </span>\n );\n },\n);\n\nexport const ColorPickerPortal: typeof BasePopover.Portal = BasePopover.Portal;\nexport type ColorPickerPositionerProps = ComponentPropsWithoutRef<typeof BasePopover.Positioner>;\nexport const ColorPickerPositioner = forwardRef<HTMLDivElement, ColorPickerPositionerProps>(\n function ColorPickerPositioner({ className, ...props }, ref) {\n return (\n <BasePopover.Positioner\n {...props}\n ref={ref}\n className={withRecipeClassName(colorPicker().positioner, className)}\n data-slot=\"color-picker-positioner\"\n />\n );\n },\n);\n\nexport type ColorPickerPopupProps = ComponentPropsWithoutRef<typeof BasePopover.Popup>;\nexport const ColorPickerPopup = forwardRef<HTMLDivElement, ColorPickerPopupProps>(\n function ColorPickerPopup({ className, ...props }, ref) {\n return (\n <BasePopover.Popup\n {...props}\n ref={ref}\n className={withRecipeClassName(colorPicker().popup, className)}\n data-jaci-component=\"color-picker\"\n data-slot=\"color-picker-popup\"\n />\n );\n },\n);\n\nfunction updateFromPoint(\n event: PointerEvent<HTMLDivElement>,\n setColor: (color: ColorModel) => void,\n color: ColorModel,\n) {\n const rect = event.currentTarget.getBoundingClientRect();\n const saturation = Math.round(\n Math.min(1, Math.max(0, (event.clientX - rect.left) / rect.width)) * 100,\n );\n const lightness = Math.round(\n (1 - Math.min(1, Math.max(0, (event.clientY - rect.top) / rect.height))) * 100,\n );\n setColor({ ...color, lightness, saturation });\n}\n\nexport type ColorPickerPaletteProps = Omit<ComponentPropsWithoutRef<\"div\">, \"onChange\">;\nexport const ColorPickerPalette = forwardRef<HTMLDivElement, ColorPickerPaletteProps>(\n function ColorPickerPalette({ className, onKeyDown, onPointerDown, style, ...props }, ref) {\n const { color, setColor, value } = useColorPicker();\n const background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${color.hue} 100% 50%))`;\n return (\n <div\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? \"Color saturation and lightness\"}\n aria-valuemax={100}\n aria-valuemin={0}\n aria-valuenow={Math.round(color.saturation)}\n aria-valuetext={value}\n className={cx(colorPicker().palette, className)}\n data-slot=\"color-picker-palette\"\n onKeyDown={(event) => {\n const step = event.shiftKey ? 10 : 1;\n if (\n event.key === \"ArrowLeft\" ||\n event.key === \"ArrowRight\" ||\n event.key === \"ArrowUp\" ||\n event.key === \"ArrowDown\"\n ) {\n event.preventDefault();\n setColor({\n ...color,\n saturation:\n event.key === \"ArrowLeft\"\n ? Math.max(0, color.saturation - step)\n : event.key === \"ArrowRight\"\n ? Math.min(100, color.saturation + step)\n : color.saturation,\n lightness:\n event.key === \"ArrowDown\"\n ? Math.max(0, color.lightness - step)\n : event.key === \"ArrowUp\"\n ? Math.min(100, color.lightness + step)\n : color.lightness,\n });\n }\n onKeyDown?.(event);\n }}\n onPointerDown={(event) => {\n updateFromPoint(event, setColor, color);\n onPointerDown?.(event);\n }}\n role=\"slider\"\n style={{ background, ...style }}\n tabIndex={props.tabIndex ?? 0}\n />\n );\n },\n);\n\nexport type ColorPickerHueProps = Omit<\n ComponentPropsWithoutRef<\"input\">,\n \"max\" | \"min\" | \"onChange\" | \"step\" | \"type\" | \"value\"\n>;\nexport const ColorPickerHue = forwardRef<HTMLInputElement, ColorPickerHueProps>(\n function ColorPickerHue({ className, onInput, ...props }, ref) {\n const { color, setColor } = useColorPicker();\n return (\n <input\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? \"Hue\"}\n className={cx(colorPicker().hue, className)}\n data-slot=\"color-picker-hue\"\n max={360}\n min={0}\n onInput={(event) => {\n setColor({ ...color, hue: Number(event.currentTarget.value) });\n onInput?.(event);\n }}\n step={1}\n type=\"range\"\n value={color.hue}\n />\n );\n },\n);\n\nexport type ColorPickerAlphaProps = Omit<\n ComponentPropsWithoutRef<\"input\">,\n \"max\" | \"min\" | \"onChange\" | \"step\" | \"type\" | \"value\"\n>;\nexport const ColorPickerAlpha = forwardRef<HTMLInputElement, ColorPickerAlphaProps>(\n function ColorPickerAlpha({ className, onInput, style, ...props }, ref) {\n const { color, setColor, showAlpha } = useColorPicker();\n if (!showAlpha) return null;\n return (\n <input\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? \"Opacity\"}\n className={cx(colorPicker().alpha, className)}\n data-slot=\"color-picker-alpha\"\n max={1}\n min={0}\n onInput={(event) => {\n setColor({ ...color, alpha: Number(event.currentTarget.value) });\n onInput?.(event);\n }}\n step={0.01}\n style={{\n ...style,\n background: `linear-gradient(to right, transparent, ${formatColor({ ...color, alpha: 1 }, \"rgb\")})`,\n }}\n type=\"range\"\n value={color.alpha}\n />\n );\n },\n);\n\nexport type ColorPickerSwatchesProps = ComponentPropsWithoutRef<\"fieldset\">;\nexport const ColorPickerSwatches = forwardRef<HTMLFieldSetElement, ColorPickerSwatchesProps>(\n function ColorPickerSwatches({ children, className, ...props }, ref) {\n const { swatches } = useColorPicker();\n return (\n <fieldset\n {...props}\n ref={ref}\n className={cx(colorPicker().swatches, className)}\n data-slot=\"color-picker-swatches\"\n >\n {children ?? swatches.map((color) => <ColorPickerSwatch color={color} key={color} />)}\n </fieldset>\n );\n },\n);\n\nexport interface ColorPickerSwatchProps extends ComponentPropsWithoutRef<\"button\"> {\n color: string;\n}\nexport const ColorPickerSwatch = forwardRef<HTMLButtonElement, ColorPickerSwatchProps>(\n function ColorPickerSwatch({ children, className, color, style, ...props }, ref) {\n const context = useColorPicker();\n const parsed = parseColor(color);\n const selected =\n parsed && formatColor(parsed, context.format, context.showAlpha) === context.value;\n return (\n <button\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? color}\n aria-pressed={selected || undefined}\n className={cx(colorPicker().swatch, className)}\n data-selected={selected || undefined}\n data-slot=\"color-picker-swatch\"\n onClick={(event) => {\n if (parsed) context.setColor(parsed);\n props.onClick?.(event);\n }}\n style={{ backgroundColor: color, ...style }}\n type=\"button\"\n >\n {children}\n </button>\n );\n },\n);\n\nexport type ColorPickerInputProps = Omit<\n ComponentPropsWithoutRef<\"input\">,\n \"onChange\" | \"type\" | \"value\"\n>;\nexport const ColorPickerInput = forwardRef<HTMLInputElement, ColorPickerInputProps>(\n function ColorPickerInput({ className, onBlur, onKeyDown, ...props }, ref) {\n const { format, setColor, showAlpha, value } = useColorPicker();\n const [draft, setDraft] = useState(value);\n const [invalid, setInvalid] = useState(false);\n useEffect(() => setDraft(value), [value]);\n const commit = () => {\n const parsed = parseColor(draft);\n if (!parsed) {\n setInvalid(true);\n setDraft(value);\n return;\n }\n setInvalid(false);\n setColor(parsed);\n setDraft(formatColor(parsed, format, showAlpha));\n };\n return (\n <input\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? \"Color value\"}\n aria-invalid={invalid || undefined}\n className={cx(colorPicker().input, className)}\n data-slot=\"color-picker-input\"\n onBlur={(event) => {\n commit();\n onBlur?.(event);\n }}\n onChange={(event) => {\n setDraft(event.currentTarget.value);\n setInvalid(false);\n }}\n onKeyDown={(event) => {\n if (event.key === \"Enter\") {\n event.preventDefault();\n commit();\n }\n onKeyDown?.(event);\n }}\n type=\"text\"\n value={draft}\n />\n );\n },\n);\n\nexport type ColorPickerNativeInputProps = Omit<\n ComponentPropsWithoutRef<\"input\">,\n \"onChange\" | \"type\" | \"value\"\n>;\nexport const ColorPickerNativeInput = forwardRef<HTMLInputElement, ColorPickerNativeInputProps>(\n function ColorPickerNativeInput({ className, onInput, ...props }, ref) {\n const { color, setColor, showAlpha } = useColorPicker();\n const value = formatColor({ ...color, alpha: 1 }, \"hex\");\n return (\n <input\n {...props}\n ref={ref}\n aria-label={props[\"aria-label\"] ?? \"Choose a color\"}\n className={cx(colorPicker().nativeInput, className)}\n data-slot=\"color-picker-native-input\"\n onInput={(event) => {\n const parsed = parseColor(event.currentTarget.value);\n if (parsed) setColor({ ...parsed, alpha: showAlpha ? color.alpha : 1 });\n onInput?.(event);\n }}\n type=\"color\"\n value={value.slice(0, 7)}\n />\n );\n },\n);\n\nexport const ColorPicker = {\n Root: ColorPickerRoot,\n Label: ColorPickerLabel,\n Control: ColorPickerControl,\n Trigger: ColorPickerTrigger,\n Preview: ColorPickerPreview,\n Value: ColorPickerValue,\n Portal: ColorPickerPortal,\n Positioner: ColorPickerPositioner,\n Popup: ColorPickerPopup,\n Palette: ColorPickerPalette,\n Hue: ColorPickerHue,\n Alpha: ColorPickerAlpha,\n Swatches: ColorPickerSwatches,\n Swatch: ColorPickerSwatch,\n Input: ColorPickerInput,\n NativeInput: ColorPickerNativeInput,\n createHandle: BasePopover.createHandle,\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
//#region src/components/color-picker/color-utils.ts
|
|
2
|
+
const clamp = (value, min, max) => Math.min(max, Math.max(min, value));
|
|
3
|
+
function parseNumber(value, min, max) {
|
|
4
|
+
const parsed = Number.parseFloat(value);
|
|
5
|
+
return Number.isFinite(parsed) ? clamp(parsed, min, max) : null;
|
|
6
|
+
}
|
|
7
|
+
function parseAlpha(value) {
|
|
8
|
+
if (value === void 0) return 1;
|
|
9
|
+
if (value.trim().endsWith("%")) return parseNumber(value, 0, 100) === null ? null : parseNumber(value, 0, 100) / 100;
|
|
10
|
+
return parseNumber(value, 0, 1);
|
|
11
|
+
}
|
|
12
|
+
function parseHex(value) {
|
|
13
|
+
const hex = value.slice(1);
|
|
14
|
+
if (![
|
|
15
|
+
3,
|
|
16
|
+
4,
|
|
17
|
+
6,
|
|
18
|
+
8
|
|
19
|
+
].includes(hex.length) || !/^[\da-f]+$/i.test(hex)) return null;
|
|
20
|
+
const expanded = hex.length <= 4 ? hex.split("").map((part) => `${part}${part}`).join("") : hex;
|
|
21
|
+
const red = Number.parseInt(expanded.slice(0, 2), 16) / 255;
|
|
22
|
+
const green = Number.parseInt(expanded.slice(2, 4), 16) / 255;
|
|
23
|
+
const blue = Number.parseInt(expanded.slice(4, 6), 16) / 255;
|
|
24
|
+
const alpha = expanded.length === 8 ? Number.parseInt(expanded.slice(6, 8), 16) / 255 : 1;
|
|
25
|
+
return rgbToHsl(red * 255, green * 255, blue * 255, alpha);
|
|
26
|
+
}
|
|
27
|
+
function parseRgb(value) {
|
|
28
|
+
const match = value.match(/^rgba?\(\s*([^,\s]+)[,\s]+([^,\s]+)[,\s]+([^,\s]+)(?:\s*[,/]\s*([^\s]+))?\s*\)$/i);
|
|
29
|
+
if (!match) return null;
|
|
30
|
+
const redValue = match[1];
|
|
31
|
+
const greenValue = match[2];
|
|
32
|
+
const blueValue = match[3];
|
|
33
|
+
if (!redValue || !greenValue || !blueValue) return null;
|
|
34
|
+
const channels = [
|
|
35
|
+
redValue,
|
|
36
|
+
greenValue,
|
|
37
|
+
blueValue
|
|
38
|
+
].map((channel) => {
|
|
39
|
+
if (channel.endsWith("%")) {
|
|
40
|
+
const percentage = parseNumber(channel, 0, 100);
|
|
41
|
+
return percentage === null ? null : percentage / 100 * 255;
|
|
42
|
+
}
|
|
43
|
+
return parseNumber(channel, 0, 255);
|
|
44
|
+
});
|
|
45
|
+
const alpha = parseAlpha(match[4]);
|
|
46
|
+
if (channels.some((channel) => channel === null) || alpha === null) return null;
|
|
47
|
+
return rgbToHsl(channels[0], channels[1], channels[2], alpha);
|
|
48
|
+
}
|
|
49
|
+
function parseHsl(value) {
|
|
50
|
+
const match = value.match(/^hsla?\(\s*([^,\s]+)(?:deg)?[,\s]+([^,\s]+)[,\s]+([^,\s]+)(?:\s*[,/]\s*([^\s]+))?\s*\)$/i);
|
|
51
|
+
if (!match) return null;
|
|
52
|
+
const hueValue = match[1];
|
|
53
|
+
const saturationValue = match[2];
|
|
54
|
+
const lightnessValue = match[3];
|
|
55
|
+
if (!hueValue || !saturationValue || !lightnessValue) return null;
|
|
56
|
+
const hue = parseNumber(hueValue.replace(/deg$/i, ""), -360, 360);
|
|
57
|
+
const saturation = parseNumber(saturationValue, 0, 100);
|
|
58
|
+
const lightness = parseNumber(lightnessValue, 0, 100);
|
|
59
|
+
const alpha = parseAlpha(match[4]);
|
|
60
|
+
if (hue === null || saturation === null || lightness === null || alpha === null) return null;
|
|
61
|
+
if (!saturationValue.endsWith("%") || !lightnessValue.endsWith("%")) return null;
|
|
62
|
+
return {
|
|
63
|
+
alpha,
|
|
64
|
+
hue: (hue + 360) % 360,
|
|
65
|
+
lightness,
|
|
66
|
+
saturation
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function rgbToHsl(red, green, blue, alpha = 1) {
|
|
70
|
+
const r = red / 255;
|
|
71
|
+
const g = green / 255;
|
|
72
|
+
const b = blue / 255;
|
|
73
|
+
const max = Math.max(r, g, b);
|
|
74
|
+
const min = Math.min(r, g, b);
|
|
75
|
+
const delta = max - min;
|
|
76
|
+
let hue = 0;
|
|
77
|
+
const lightness = (max + min) / 2;
|
|
78
|
+
const saturation = delta === 0 ? 0 : delta / (1 - Math.abs(2 * lightness - 1));
|
|
79
|
+
if (delta !== 0) if (max === r) hue = 60 * ((g - b) / delta % 6);
|
|
80
|
+
else if (max === g) hue = 60 * ((b - r) / delta + 2);
|
|
81
|
+
else hue = 60 * ((r - g) / delta + 4);
|
|
82
|
+
return {
|
|
83
|
+
alpha: clamp(alpha, 0, 1),
|
|
84
|
+
hue: (hue + 360) % 360,
|
|
85
|
+
lightness: lightness * 100,
|
|
86
|
+
saturation: saturation * 100
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
function hslToRgb({ hue, lightness, saturation }) {
|
|
90
|
+
const h = hue / 360;
|
|
91
|
+
const s = saturation / 100;
|
|
92
|
+
const l = lightness / 100;
|
|
93
|
+
const chroma = (1 - Math.abs(2 * l - 1)) * s;
|
|
94
|
+
const segment = h * 6;
|
|
95
|
+
const x = chroma * (1 - Math.abs(segment % 2 - 1));
|
|
96
|
+
const [r, g, b] = segment < 1 ? [
|
|
97
|
+
chroma,
|
|
98
|
+
x,
|
|
99
|
+
0
|
|
100
|
+
] : segment < 2 ? [
|
|
101
|
+
x,
|
|
102
|
+
chroma,
|
|
103
|
+
0
|
|
104
|
+
] : segment < 3 ? [
|
|
105
|
+
0,
|
|
106
|
+
chroma,
|
|
107
|
+
x
|
|
108
|
+
] : segment < 4 ? [
|
|
109
|
+
0,
|
|
110
|
+
x,
|
|
111
|
+
chroma
|
|
112
|
+
] : segment < 5 ? [
|
|
113
|
+
x,
|
|
114
|
+
0,
|
|
115
|
+
chroma
|
|
116
|
+
] : [
|
|
117
|
+
chroma,
|
|
118
|
+
0,
|
|
119
|
+
x
|
|
120
|
+
];
|
|
121
|
+
const match = l - chroma / 2;
|
|
122
|
+
return {
|
|
123
|
+
blue: Math.round((b + match) * 255),
|
|
124
|
+
green: Math.round((g + match) * 255),
|
|
125
|
+
red: Math.round((r + match) * 255)
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
function parseColor(value) {
|
|
129
|
+
if (!value) return null;
|
|
130
|
+
const normalized = value.trim();
|
|
131
|
+
if (normalized.startsWith("#")) return parseHex(normalized);
|
|
132
|
+
if (/^rgba?/i.test(normalized)) return parseRgb(normalized);
|
|
133
|
+
if (/^hsla?/i.test(normalized)) return parseHsl(normalized);
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
function formatAlpha(alpha) {
|
|
137
|
+
return Number(alpha.toFixed(3)).toString();
|
|
138
|
+
}
|
|
139
|
+
function formatColor(color, format, showAlpha = false) {
|
|
140
|
+
const rgb = hslToRgb(color);
|
|
141
|
+
if (format === "hex") return `#${[
|
|
142
|
+
rgb.red,
|
|
143
|
+
rgb.green,
|
|
144
|
+
rgb.blue
|
|
145
|
+
].map((channel) => channel.toString(16).padStart(2, "0")).join("")}${showAlpha ? Math.round(color.alpha * 255).toString(16).padStart(2, "0") : ""}`;
|
|
146
|
+
if (format === "rgb") return showAlpha ? `rgba(${rgb.red}, ${rgb.green}, ${rgb.blue}, ${formatAlpha(color.alpha)})` : `rgb(${rgb.red}, ${rgb.green}, ${rgb.blue})`;
|
|
147
|
+
return showAlpha ? `hsla(${Math.round(color.hue)}, ${Math.round(color.saturation)}%, ${Math.round(color.lightness)}%, ${formatAlpha(color.alpha)})` : `hsl(${Math.round(color.hue)}, ${Math.round(color.saturation)}%, ${Math.round(color.lightness)}%)`;
|
|
148
|
+
}
|
|
149
|
+
function defaultColor(value) {
|
|
150
|
+
return parseColor(value) ?? {
|
|
151
|
+
alpha: 1,
|
|
152
|
+
hue: 0,
|
|
153
|
+
lightness: 0,
|
|
154
|
+
saturation: 0
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
//#endregion
|
|
158
|
+
exports.defaultColor = defaultColor;
|
|
159
|
+
exports.formatColor = formatColor;
|
|
160
|
+
exports.parseColor = parseColor;
|
|
161
|
+
|
|
162
|
+
//# sourceMappingURL=color-utils.cjs.map
|