@choice-ui/react 1.7.6 → 1.7.7
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/dist/components/colors/dist/index.d.ts +878 -0
- package/dist/components/colors/scripts/build-worker.d.ts +1 -0
- package/dist/components/colors/src/check-color-contrast/check-color-contrast-boundary.d.ts +14 -0
- package/dist/components/colors/src/check-color-contrast/check-color-contrast-boundary.js +403 -0
- package/dist/components/colors/src/check-color-contrast/check-color-contrast-toolbar.d.ts +12 -0
- package/dist/components/colors/src/check-color-contrast/check-color-contrast-toolbar.js +285 -0
- package/dist/components/colors/src/check-color-contrast/index.d.ts +2 -0
- package/dist/components/colors/src/color-area/color-area.d.ts +24 -0
- package/dist/components/colors/src/color-area/color-area.js +228 -0
- package/dist/components/colors/src/color-area/index.d.ts +1 -0
- package/dist/components/colors/src/color-area/tv.d.ts +34 -0
- package/dist/components/colors/src/color-area/tv.js +22 -0
- package/dist/components/colors/src/color-channel-field/color-channel-field.d.ts +22 -0
- package/dist/components/colors/src/color-channel-field/color-channel-field.js +110 -0
- package/dist/components/colors/src/color-channel-field/color-channel-input.d.ts +20 -0
- package/dist/components/colors/src/color-channel-field/color-channel-input.js +261 -0
- package/dist/components/colors/src/color-channel-field/index.d.ts +1 -0
- package/dist/components/colors/src/color-channel-field/tv.d.ts +101 -0
- package/dist/components/colors/src/color-channel-field/tv.js +85 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-combined.d.ts +16 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-combined.js +54 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-control.d.ts +18 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-control.js +149 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-list.d.ts +20 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-list.js +111 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-slider.d.ts +18 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradient-slider.js +281 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradients-paint.d.ts +17 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradients-paint.js +162 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradients-toolbar.d.ts +10 -0
- package/dist/components/colors/src/color-gradients-paint/color-gradients-toolbar.js +62 -0
- package/dist/components/colors/src/color-gradients-paint/index.d.ts +3 -0
- package/dist/components/colors/src/color-image-paint/color-image-paint.d.ts +13 -0
- package/dist/components/colors/src/color-image-paint/color-image-paint.js +236 -0
- package/dist/components/colors/src/color-image-paint/color-image-toolbar.d.ts +9 -0
- package/dist/components/colors/src/color-image-paint/color-image-toolbar.js +52 -0
- package/dist/components/colors/src/color-image-paint/index.d.ts +1 -0
- package/dist/components/colors/src/color-image-paint/tv.d.ts +89 -0
- package/dist/components/colors/src/color-image-paint/tv.js +45 -0
- package/dist/components/colors/src/color-picker-content/color-picker-content.d.ts +18 -0
- package/dist/components/colors/src/color-picker-content/color-picker-content.js +58 -0
- package/dist/components/colors/src/color-picker-content/color-picker-custom-content.d.ts +16 -0
- package/dist/components/colors/src/color-picker-content/color-picker-custom-content.js +75 -0
- package/dist/components/colors/src/color-picker-content/index.d.ts +1 -0
- package/dist/components/colors/src/color-picker-content/paint-type-selector.d.ts +13 -0
- package/dist/components/colors/src/color-picker-content/paint-type-selector.js +50 -0
- package/dist/components/colors/src/color-picker-content/tv.d.ts +31 -0
- package/dist/components/colors/src/color-picker-content/tv.js +13 -0
- package/dist/components/colors/src/color-picker-popover/color-paints-type.d.ts +15 -0
- package/dist/components/colors/src/color-picker-popover/color-paints-type.js +56 -0
- package/dist/components/colors/src/color-picker-popover/color-picker-popover.d.ts +26 -0
- package/dist/components/colors/src/color-picker-popover/color-picker-popover.js +116 -0
- package/dist/components/colors/src/color-picker-popover/color-picker-tabs.d.ts +14 -0
- package/dist/components/colors/src/color-picker-popover/color-picker-tabs.js +47 -0
- package/dist/components/colors/src/color-picker-popover/color-picker-title.d.ts +14 -0
- package/dist/components/colors/src/color-picker-popover/color-picker-title.js +30 -0
- package/dist/components/colors/src/color-picker-popover/index.d.ts +3 -0
- package/dist/components/colors/src/color-picker-popover/tv.d.ts +37 -0
- package/dist/components/colors/src/color-slider/color-slider.d.ts +19 -0
- package/dist/components/colors/src/color-slider/color-slider.js +185 -0
- package/dist/components/colors/src/color-slider/index.d.ts +1 -0
- package/dist/components/colors/src/color-slider/tv.d.ts +31 -0
- package/dist/components/colors/src/color-slider/tv.js +21 -0
- package/dist/components/colors/src/color-solid-paint/color-native-picker.d.ts +8 -0
- package/dist/components/colors/src/color-solid-paint/color-native-picker.js +63 -0
- package/dist/components/colors/src/color-solid-paint/color-solid-paint.d.ts +25 -0
- package/dist/components/colors/src/color-solid-paint/color-solid-paint.js +295 -0
- package/dist/components/colors/src/color-solid-paint/index.d.ts +3 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-alpha-slider.d.ts +10 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-alpha-slider.js +20 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-area.d.ts +17 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-area.js +131 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-channel-field.d.ts +20 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-channel-field.js +147 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-hue-slider.d.ts +14 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-hue-slider.js +46 -0
- package/dist/components/colors/src/color-solid-paint/solid-paint-library-item.d.ts +8 -0
- package/dist/components/colors/src/color-solid-paint/tv.d.ts +79 -0
- package/dist/components/colors/src/color-solid-paint/tv.js +39 -0
- package/dist/components/colors/src/color-swatch/color-swatch.d.ts +15 -0
- package/dist/components/colors/src/color-swatch/color-swatch.js +111 -0
- package/dist/components/colors/src/color-swatch/index.d.ts +1 -0
- package/dist/components/colors/src/contents/color-space.d.ts +19 -0
- package/dist/components/colors/src/contents/color-space.js +16 -0
- package/dist/components/colors/src/contents/colors.d.ts +42 -0
- package/dist/components/colors/src/contents/colors.js +24 -0
- package/dist/components/colors/src/contents/index.d.ts +3 -0
- package/dist/components/colors/src/contents/translation.d.ts +100 -0
- package/dist/components/colors/src/contents/translation.js +94 -0
- package/dist/components/colors/src/context/colots-context.d.ts +24 -0
- package/dist/components/colors/src/context/colots-context.js +62 -0
- package/dist/components/colors/src/context/index.d.ts +1 -0
- package/dist/components/colors/src/fill-input/alpha-input.d.ts +12 -0
- package/dist/components/colors/src/fill-input/alpha-input.js +48 -0
- package/dist/components/colors/src/fill-input/color-input.d.ts +31 -0
- package/dist/components/colors/src/fill-input/color-input.js +115 -0
- package/dist/components/colors/src/fill-input/gradient-item.d.ts +25 -0
- package/dist/components/colors/src/fill-input/gradient-item.js +103 -0
- package/dist/components/colors/src/fill-input/image-item.d.ts +25 -0
- package/dist/components/colors/src/fill-input/image-item.js +89 -0
- package/dist/components/colors/src/fill-input/index.d.ts +5 -0
- package/dist/components/colors/src/fill-input/tv.d.ts +221 -0
- package/dist/components/colors/src/fill-input/tv.js +205 -0
- package/dist/components/colors/src/fill-input/variable-item.d.ts +22 -0
- package/dist/components/colors/src/fill-input/variable-item.js +105 -0
- package/dist/components/colors/src/hex-input/hex-input.d.ts +10 -0
- package/dist/components/colors/src/hex-input/hex-input.js +182 -0
- package/dist/components/colors/src/hex-input/index.d.ts +1 -0
- package/dist/components/colors/src/hex-input/tv.d.ts +1 -0
- package/dist/components/colors/src/hex-input/tv.js +12 -0
- package/dist/components/colors/src/hooks/index.d.ts +10 -0
- package/dist/components/colors/src/hooks/use-color-contrast-recommendation.d.ts +36 -0
- package/dist/components/colors/src/hooks/use-color-contrast-recommendation.js +502 -0
- package/dist/components/colors/src/hooks/use-color-parser.d.ts +10 -0
- package/dist/components/colors/src/hooks/use-color-parser.js +146 -0
- package/dist/components/colors/src/hooks/use-color-picker.d.ts +45 -0
- package/dist/components/colors/src/hooks/use-color-picker.js +117 -0
- package/dist/components/colors/src/hooks/use-color-profile.d.ts +2 -0
- package/dist/components/colors/src/hooks/use-color-profile.js +27 -0
- package/dist/components/colors/src/hooks/use-cursor.d.ts +1 -0
- package/dist/components/colors/src/hooks/use-cursor.js +25 -0
- package/dist/components/colors/src/hooks/use-features.d.ts +21 -0
- package/dist/components/colors/src/hooks/use-features.js +73 -0
- package/dist/components/colors/src/hooks/use-image-filter-style.d.ts +9 -0
- package/dist/components/colors/src/hooks/use-image-filter-style.js +25 -0
- package/dist/components/colors/src/hooks/use-image-processor.d.ts +10 -0
- package/dist/components/colors/src/hooks/use-image-processor.js +121 -0
- package/dist/components/colors/src/hooks/use-paint-state.d.ts +16 -0
- package/dist/components/colors/src/hooks/use-paint-state.js +37 -0
- package/dist/components/colors/src/hooks/use-rgb-color-handler.d.ts +21 -0
- package/dist/components/colors/src/hooks/use-rgb-color-handler.js +58 -0
- package/dist/components/colors/src/index.d.ts +38 -0
- package/dist/components/colors/src/libraries/components/virtualized-grid-row.d.ts +36 -0
- package/dist/components/colors/src/libraries/components/virtualized-grid-row.js +53 -0
- package/dist/components/colors/src/libraries/components/virtualized-header.d.ts +9 -0
- package/dist/components/colors/src/libraries/components/virtualized-header.js +30 -0
- package/dist/components/colors/src/libraries/hooks/index.d.ts +2 -0
- package/dist/components/colors/src/libraries/hooks/use-category-options.d.ts +11 -0
- package/dist/components/colors/src/libraries/hooks/use-category-options.js +27 -0
- package/dist/components/colors/src/libraries/hooks/use-palette-color.d.ts +19 -0
- package/dist/components/colors/src/libraries/hooks/use-palette-color.js +41 -0
- package/dist/components/colors/src/libraries/index.d.ts +8 -0
- package/dist/components/colors/src/libraries/libraries-content.d.ts +8 -0
- package/dist/components/colors/src/libraries/libraries-empty-content.d.ts +5 -0
- package/dist/components/colors/src/libraries/libraries-header.d.ts +18 -0
- package/dist/components/colors/src/libraries/libraries-header.js +111 -0
- package/dist/components/colors/src/libraries/libraries-search-empty-content.d.ts +1 -0
- package/dist/components/colors/src/libraries/libraries-search-input.d.ts +6 -0
- package/dist/components/colors/src/libraries/libraries.d.ts +42 -0
- package/dist/components/colors/src/libraries/libraries.js +461 -0
- package/dist/components/colors/src/libraries/library-color-swatch.d.ts +21 -0
- package/dist/components/colors/src/libraries/library-item/index.d.ts +4 -0
- package/dist/components/colors/src/libraries/library-item/library-item.d.ts +21 -0
- package/dist/components/colors/src/libraries/library-item/library-item.js +151 -0
- package/dist/components/colors/src/libraries/library-item/library-list-item.d.ts +6 -0
- package/dist/components/colors/src/libraries/library-item/style-items.d.ts +17 -0
- package/dist/components/colors/src/libraries/library-item/style-items.js +63 -0
- package/dist/components/colors/src/libraries/library-item/variable-items.d.ts +19 -0
- package/dist/components/colors/src/libraries/library-item/variable-items.js +47 -0
- package/dist/components/colors/src/libraries/tv.d.ts +198 -0
- package/dist/components/colors/src/libraries/tv.js +141 -0
- package/dist/components/colors/src/simple-color-picker/index.d.ts +1 -0
- package/dist/components/colors/src/simple-color-picker/simple-color-picker.d.ts +17 -0
- package/dist/components/colors/src/simple-color-picker/simple-color-picker.js +153 -0
- package/dist/components/colors/src/types/base.d.ts +5 -0
- package/dist/components/colors/src/types/colors.d.ts +139 -0
- package/dist/components/colors/src/types/effect.d.ts +18 -0
- package/dist/components/colors/src/types/fill.d.ts +15 -0
- package/dist/components/colors/src/types/fonts.d.ts +38 -0
- package/dist/components/colors/src/types/index.d.ts +7 -0
- package/dist/components/colors/src/types/libraries.d.ts +7 -0
- package/dist/components/colors/src/types/paint.d.ts +139 -0
- package/dist/components/colors/src/types/style.d.ts +51 -0
- package/dist/components/colors/src/types/testing-library.d.ts +0 -0
- package/dist/components/colors/src/types/util.d.ts +26 -0
- package/dist/components/colors/src/types/variable.d.ts +27 -0
- package/dist/components/colors/src/utils/background.d.ts +12 -0
- package/dist/components/colors/src/utils/background.js +216 -0
- package/dist/components/colors/src/utils/color-profile-storage.d.ts +29 -0
- package/dist/components/colors/src/utils/color.d.ts +20 -0
- package/dist/components/colors/src/utils/color.js +45 -0
- package/dist/components/colors/src/utils/colors-convert.d.ts +18 -0
- package/dist/components/colors/src/utils/colors-convert.js +138 -0
- package/dist/components/colors/src/utils/contrast-utils.d.ts +27 -0
- package/dist/components/colors/src/utils/contrast-utils.js +25 -0
- package/dist/components/colors/src/utils/cursor.d.ts +1 -0
- package/dist/components/colors/src/utils/index.d.ts +7 -0
- package/dist/components/colors/src/utils/math.d.ts +9 -0
- package/dist/components/colors/src/utils/position.d.ts +33 -0
- package/dist/components/colors/src/utils/position.js +60 -0
- package/dist/components/colors/src/utils/validate.d.ts +10 -0
- package/dist/components/colors/src/workers/boundary-calculator.worker.bundled.d.ts +2 -0
- package/dist/components/colors/src/workers/boundary-calculator.worker.bundled.js +36 -0
- package/dist/components/colors/src/workers/boundary-calculator.worker.d.ts +1 -0
- package/dist/components/colors/src/workers/index.d.ts +1 -0
- package/dist/components/colors/tsup.config.d.ts +2 -0
- package/dist/components/index.d.ts +1 -0
- package/dist/components/textarea/src/tv.d.ts +9 -3
- package/dist/components/textarea/src/tv.js +3 -1
- package/dist/components/toggle-button/dist/index.js +602 -0
- package/dist/index.js +69 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/index.js +119 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/Color.js +42 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/chroma.js +9 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/colors/colorbrewer.js +57 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/colors/w3cx11.js +159 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/average.js +82 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/bezier.js +68 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/blend.js +43 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/cubehelix.js +81 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/mix.js +20 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/random.js +13 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/generator/scale.js +325 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/_hsx.js +54 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/hcg.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/hsi.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/hsl.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/hsv.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/index.js +4 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/lab.js +17 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/lch.js +11 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/lrgb.js +17 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/num.js +12 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/oklab.js +17 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/oklch.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/interpolator/rgb.js +16 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/cmyk/cmyk2rgb.js +20 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/cmyk/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/cmyk/rgb2cmyk.js +18 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/css2rgb.js +169 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/hsl2css.js +20 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/index.js +23 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/lab2css.js +19 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/lch2css.js +19 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/oklab2css.js +17 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/oklch2css.js +17 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/css/rgb2css.js +53 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/gl/index.js +21 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hcg/hcg2rgb.js +48 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hcg/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hcg/rgb2hcg.js +24 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hex/hex2rgb.js +37 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hex/index.js +23 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hex/rgb2hex.js +31 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsi/hsi2rgb.js +36 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsi/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsi/rgb2hsi.js +28 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsl/hsl2rgb.js +35 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsl/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsl/rgb2hsl.js +29 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsv/hsv2rgb.js +46 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsv/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/hsv/rgb2hsv.js +27 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/input.js +7 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lab/index.js +28 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lab/lab-constants.js +106 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lab/lab2rgb.js +59 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lab/rgb2lab.js +51 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lch/hcl2rgb.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lch/index.js +35 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lch/lab2lch.js +13 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lch/lch2lab.js +12 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lch/lch2rgb.js +14 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/lch/rgb2lch.js +13 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/named/index.js +26 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/num/index.js +23 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/num/num2rgb.js +13 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/num/rgb2num.js +9 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/oklab/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/oklab/oklab2rgb.js +31 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/oklab/rgb2oklab.js +30 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/oklch/index.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/oklch/oklch2rgb.js +14 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/oklch/rgb2oklch.js +13 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/rgb/index.js +34 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/temp/index.js +16 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/temp/rgb2temperature.js +25 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/io/temp/temperature2rgb.js +18 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/alpha.js +12 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/clipped.js +4 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/darken.js +14 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/get.js +12 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/luminance.js +38 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/mix.js +5 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/premultiply.js +11 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/saturate.js +13 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/set.js +42 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/ops/shade.js +9 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/analyze.js +161 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/clip_rgb.js +17 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/contrast.js +12 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/contrastAPCA.js +43 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/delta-e.js +48 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/distance.js +16 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/index.js +24 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/last.js +10 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/limit.js +7 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/multiply-matrices.js +29 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/scales.js +16 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/type.js +20 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/unpack.js +11 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/utils/valid.js +12 -0
- package/dist/node_modules/.pnpm/chroma-js@3.2.0/node_modules/chroma-js/src/version.js +4 -0
- package/dist/node_modules/.pnpm/fuse.js@7.1.0/node_modules/fuse.js/dist/fuse.js +1317 -0
- package/dist/styles/components.css +40 -0
- package/dist/tailwind.css +1 -0
- package/package.json +32 -20
- package/dist/components/virtual-select/dist/index.d.ts +0 -48
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ChannelFieldSpace, PaintState, RGB } from '../types/colors';
|
|
2
|
+
import { ColorUpdateSource } from '../types/paint';
|
|
3
|
+
type Props = {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
className?: string;
|
|
6
|
+
colorSpace: ChannelFieldSpace;
|
|
7
|
+
containerWidth?: number;
|
|
8
|
+
onChangeEnd?: () => void;
|
|
9
|
+
onChangeStart?: () => void;
|
|
10
|
+
onColorChange?: (rgb: RGB) => void;
|
|
11
|
+
paintState: PaintState;
|
|
12
|
+
rgbColor: RGB;
|
|
13
|
+
setPaintState: (state: PaintState) => void;
|
|
14
|
+
updateSourceRef: React.MutableRefObject<ColorUpdateSource>;
|
|
15
|
+
};
|
|
16
|
+
export declare const SolidPaintArea: (props: Props) => import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
import tinycolor from "tinycolor2";
|
|
4
|
+
import { useEventCallback } from "usehooks-ts";
|
|
5
|
+
import { rgbaToRgb } from "../utils/colors-convert.js";
|
|
6
|
+
import { isEdgeValue } from "../utils/position.js";
|
|
7
|
+
import { ColorArea } from "../color-area/color-area.js";
|
|
8
|
+
import { COLOR_SPACES } from "../contents/color-space.js";
|
|
9
|
+
const SolidPaintArea = (props) => {
|
|
10
|
+
const {
|
|
11
|
+
paintState,
|
|
12
|
+
setPaintState,
|
|
13
|
+
colorSpace,
|
|
14
|
+
rgbColor,
|
|
15
|
+
containerWidth = 240,
|
|
16
|
+
className,
|
|
17
|
+
onColorChange,
|
|
18
|
+
onChangeEnd,
|
|
19
|
+
onChangeStart,
|
|
20
|
+
children,
|
|
21
|
+
updateSourceRef
|
|
22
|
+
} = props;
|
|
23
|
+
const { h, hsl_s, l, hsv_s, v } = paintState;
|
|
24
|
+
const type = useMemo(() => {
|
|
25
|
+
if (colorSpace === COLOR_SPACES.HSL) {
|
|
26
|
+
return "saturation-lightness";
|
|
27
|
+
} else {
|
|
28
|
+
return "saturation-brightness";
|
|
29
|
+
}
|
|
30
|
+
}, [colorSpace]);
|
|
31
|
+
const areaSize = useMemo(
|
|
32
|
+
() => ({
|
|
33
|
+
width: containerWidth,
|
|
34
|
+
height: containerWidth
|
|
35
|
+
}),
|
|
36
|
+
[containerWidth]
|
|
37
|
+
);
|
|
38
|
+
const position = useMemo(() => {
|
|
39
|
+
if (colorSpace === COLOR_SPACES.HSL) {
|
|
40
|
+
return {
|
|
41
|
+
x: hsl_s,
|
|
42
|
+
y: l
|
|
43
|
+
};
|
|
44
|
+
} else {
|
|
45
|
+
return {
|
|
46
|
+
x: hsv_s,
|
|
47
|
+
y: v
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
}, [colorSpace, hsl_s, hsv_s, l, v]);
|
|
51
|
+
const handleAreaChange = useEventCallback((position2) => {
|
|
52
|
+
const { x, y } = position2;
|
|
53
|
+
const isHsl = colorSpace === COLOR_SPACES.HSL;
|
|
54
|
+
const prevState = { ...paintState };
|
|
55
|
+
const updates = { ...prevState };
|
|
56
|
+
let newColor = null;
|
|
57
|
+
if (isHsl) {
|
|
58
|
+
updates.hsl_s = x;
|
|
59
|
+
if (isEdgeValue(y)) {
|
|
60
|
+
const isBlack = y < 0.5;
|
|
61
|
+
const l2 = isBlack ? 0 : 1;
|
|
62
|
+
updates.l = l2;
|
|
63
|
+
updates.v = isBlack ? 0 : 1;
|
|
64
|
+
updates.hsv_s = x;
|
|
65
|
+
newColor = tinycolor({
|
|
66
|
+
h,
|
|
67
|
+
s: x,
|
|
68
|
+
l: l2
|
|
69
|
+
});
|
|
70
|
+
} else {
|
|
71
|
+
updates.l = y;
|
|
72
|
+
newColor = tinycolor({
|
|
73
|
+
h,
|
|
74
|
+
s: x,
|
|
75
|
+
l: y
|
|
76
|
+
});
|
|
77
|
+
const hsv = newColor.toHsv();
|
|
78
|
+
updates.hsv_s = hsv.s;
|
|
79
|
+
updates.v = hsv.v;
|
|
80
|
+
}
|
|
81
|
+
} else {
|
|
82
|
+
updates.hsv_s = x;
|
|
83
|
+
if (isEdgeValue(y)) {
|
|
84
|
+
const isBlack = y < 0.5;
|
|
85
|
+
const v2 = isBlack ? 0 : 1;
|
|
86
|
+
updates.v = v2;
|
|
87
|
+
updates.l = isBlack ? 0 : 1;
|
|
88
|
+
newColor = tinycolor({
|
|
89
|
+
h,
|
|
90
|
+
s: x,
|
|
91
|
+
v: v2
|
|
92
|
+
});
|
|
93
|
+
} else {
|
|
94
|
+
updates.v = y;
|
|
95
|
+
newColor = tinycolor({
|
|
96
|
+
h,
|
|
97
|
+
s: x,
|
|
98
|
+
v: y
|
|
99
|
+
});
|
|
100
|
+
const hsl = newColor.toHsl();
|
|
101
|
+
updates.hsl_s = hsl.s;
|
|
102
|
+
updates.l = hsl.l;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
setPaintState(updates);
|
|
106
|
+
updateSourceRef.current = "internal";
|
|
107
|
+
const rgbColor2 = rgbaToRgb(newColor.toRgb());
|
|
108
|
+
onColorChange == null ? void 0 : onColorChange(rgbColor2);
|
|
109
|
+
});
|
|
110
|
+
return /* @__PURE__ */ jsx(
|
|
111
|
+
ColorArea,
|
|
112
|
+
{
|
|
113
|
+
position,
|
|
114
|
+
onChange: handleAreaChange,
|
|
115
|
+
type,
|
|
116
|
+
hue: h,
|
|
117
|
+
thumbColor: rgbColor,
|
|
118
|
+
areaSize,
|
|
119
|
+
className,
|
|
120
|
+
onChangeStart,
|
|
121
|
+
onChangeEnd: () => {
|
|
122
|
+
onChangeEnd == null ? void 0 : onChangeEnd();
|
|
123
|
+
updateSourceRef.current = "external";
|
|
124
|
+
},
|
|
125
|
+
children
|
|
126
|
+
}
|
|
127
|
+
);
|
|
128
|
+
};
|
|
129
|
+
export {
|
|
130
|
+
SolidPaintArea
|
|
131
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ColorChannelFieldProps } from '../color-channel-field';
|
|
2
|
+
import { ChannelFieldSpace, PaintState, RGB } from '../types/colors';
|
|
3
|
+
import { ColorChannelLabels, ColorUpdateSource } from '../types/paint';
|
|
4
|
+
type Props = {
|
|
5
|
+
alpha: number;
|
|
6
|
+
className: string;
|
|
7
|
+
colorSpace?: ChannelFieldSpace;
|
|
8
|
+
labels?: ColorChannelLabels;
|
|
9
|
+
onAlphaChange?: (value: number) => void;
|
|
10
|
+
onAlphaChangeEnd?: () => void;
|
|
11
|
+
onAlphaChangeStart?: () => void;
|
|
12
|
+
onColorChange?: (color: RGB) => void;
|
|
13
|
+
paintState: PaintState;
|
|
14
|
+
rgb: RGB;
|
|
15
|
+
setColorSpace?: (colorSpace: ChannelFieldSpace) => void;
|
|
16
|
+
setPaintState: (state: PaintState) => void;
|
|
17
|
+
updateSourceRef: React.MutableRefObject<ColorUpdateSource>;
|
|
18
|
+
} & Pick<ColorChannelFieldProps, "className" | "features">;
|
|
19
|
+
export declare const SolidPaintChannelField: (props: Props) => import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
import tinycolor from "tinycolor2";
|
|
4
|
+
import { useEventCallback } from "usehooks-ts";
|
|
5
|
+
import { isEdgeValue } from "../utils/position.js";
|
|
6
|
+
import { ColorChannelField } from "../color-channel-field/color-channel-field.js";
|
|
7
|
+
import { COLOR_SPACES } from "../contents/color-space.js";
|
|
8
|
+
const SolidPaintChannelField = (props) => {
|
|
9
|
+
const {
|
|
10
|
+
paintState,
|
|
11
|
+
setPaintState,
|
|
12
|
+
colorSpace,
|
|
13
|
+
setColorSpace,
|
|
14
|
+
rgb,
|
|
15
|
+
onColorChange,
|
|
16
|
+
alpha,
|
|
17
|
+
onAlphaChange,
|
|
18
|
+
onAlphaChangeEnd,
|
|
19
|
+
onAlphaChangeStart,
|
|
20
|
+
updateSourceRef,
|
|
21
|
+
labels,
|
|
22
|
+
...rest
|
|
23
|
+
} = props;
|
|
24
|
+
const { h, hsl_s, l, hsv_s, v } = paintState;
|
|
25
|
+
const { hsl, hsb } = useMemo(() => {
|
|
26
|
+
const isHsl = colorSpace === COLOR_SPACES.HSL;
|
|
27
|
+
const tc = isHsl ? tinycolor({ h, s: hsl_s, l }) : tinycolor({ h, s: hsv_s, v });
|
|
28
|
+
const { r, g, b } = tc.toRgb();
|
|
29
|
+
const rgb2 = { r, g, b };
|
|
30
|
+
const { h: h_hsl, s: s_hsl_out, l: l_hsl } = tc.toHsl();
|
|
31
|
+
const hsl2 = { h: h_hsl, s: s_hsl_out, l: l_hsl };
|
|
32
|
+
const hsb2 = { h, s: hsv_s, b: v };
|
|
33
|
+
if (isHsl) {
|
|
34
|
+
if (isEdgeValue(l)) {
|
|
35
|
+
return {
|
|
36
|
+
hsl: {
|
|
37
|
+
h,
|
|
38
|
+
s: hsl_s,
|
|
39
|
+
l: l < 0.5 ? 0 : 1
|
|
40
|
+
},
|
|
41
|
+
hsb: hsb2
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
if (isEdgeValue(hsl2.s)) {
|
|
45
|
+
return {
|
|
46
|
+
hsl: {
|
|
47
|
+
h,
|
|
48
|
+
s: hsl2.s,
|
|
49
|
+
l: hsl2.l
|
|
50
|
+
},
|
|
51
|
+
hsb: hsb2
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
const isGrayscale = rgb2.r === rgb2.g && rgb2.g === rgb2.b;
|
|
56
|
+
if (isGrayscale && !isEdgeValue(l)) {
|
|
57
|
+
return {
|
|
58
|
+
hsl: {
|
|
59
|
+
h,
|
|
60
|
+
s: hsl2.s,
|
|
61
|
+
l: hsl2.l
|
|
62
|
+
},
|
|
63
|
+
hsb: hsb2
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
return {
|
|
67
|
+
hsl: hsl2,
|
|
68
|
+
hsb: hsb2
|
|
69
|
+
};
|
|
70
|
+
}, [colorSpace, h, hsl_s, hsv_s, l, v]);
|
|
71
|
+
const handleHslChange = useEventCallback((hsl2) => {
|
|
72
|
+
const color = tinycolor(hsl2);
|
|
73
|
+
const prev = { ...paintState };
|
|
74
|
+
const updates = { ...prev };
|
|
75
|
+
updates.h = isEdgeValue(hsl2.s) ? prev.h : hsl2.h;
|
|
76
|
+
updates.hsl_s = hsl2.s;
|
|
77
|
+
updates.l = hsl2.l;
|
|
78
|
+
if (hsl2.l === 0) {
|
|
79
|
+
updates.v = 0;
|
|
80
|
+
} else if (hsl2.l === 1 && hsl2.s === 0) {
|
|
81
|
+
updates.hsv_s = 0;
|
|
82
|
+
updates.v = 1;
|
|
83
|
+
} else {
|
|
84
|
+
const hsv = color.toHsv();
|
|
85
|
+
updates.hsv_s = hsv.s;
|
|
86
|
+
updates.v = hsv.v;
|
|
87
|
+
}
|
|
88
|
+
setPaintState(updates);
|
|
89
|
+
updateSourceRef.current = "internal";
|
|
90
|
+
const rgbColor = color.toRgb();
|
|
91
|
+
onColorChange == null ? void 0 : onColorChange(rgbColor);
|
|
92
|
+
setTimeout(() => {
|
|
93
|
+
updateSourceRef.current = "external";
|
|
94
|
+
}, 0);
|
|
95
|
+
});
|
|
96
|
+
const handleHsbChange = useEventCallback((hsb2) => {
|
|
97
|
+
const color = tinycolor({
|
|
98
|
+
h: hsb2.h,
|
|
99
|
+
s: hsb2.s,
|
|
100
|
+
v: hsb2.b
|
|
101
|
+
});
|
|
102
|
+
const prev = { ...paintState };
|
|
103
|
+
const updates = { ...prev };
|
|
104
|
+
updates.h = isEdgeValue(hsb2.s) ? prev.h : hsb2.h;
|
|
105
|
+
updates.hsv_s = hsb2.s;
|
|
106
|
+
updates.v = hsb2.b;
|
|
107
|
+
if (hsb2.b === 0) {
|
|
108
|
+
updates.l = 0;
|
|
109
|
+
} else if (hsb2.b === 1 && hsb2.s === 0) {
|
|
110
|
+
updates.hsl_s = 0;
|
|
111
|
+
updates.l = 1;
|
|
112
|
+
} else {
|
|
113
|
+
const hsl2 = color.toHsl();
|
|
114
|
+
updates.hsl_s = hsl2.s;
|
|
115
|
+
updates.l = hsl2.l;
|
|
116
|
+
}
|
|
117
|
+
setPaintState(updates);
|
|
118
|
+
updateSourceRef.current = "internal";
|
|
119
|
+
const rgbColor = color.toRgb();
|
|
120
|
+
onColorChange == null ? void 0 : onColorChange(rgbColor);
|
|
121
|
+
setTimeout(() => {
|
|
122
|
+
updateSourceRef.current = "external";
|
|
123
|
+
}, 0);
|
|
124
|
+
});
|
|
125
|
+
return /* @__PURE__ */ jsx(
|
|
126
|
+
ColorChannelField,
|
|
127
|
+
{
|
|
128
|
+
colorSpace,
|
|
129
|
+
onChangeColorSpace: setColorSpace,
|
|
130
|
+
hsl,
|
|
131
|
+
hsb,
|
|
132
|
+
rgb,
|
|
133
|
+
alpha,
|
|
134
|
+
onHslChange: handleHslChange,
|
|
135
|
+
onRgbChange: onColorChange,
|
|
136
|
+
onHsbChange: handleHsbChange,
|
|
137
|
+
onAlphaChange,
|
|
138
|
+
onAlphaChangeEnd,
|
|
139
|
+
onAlphaChangeStart,
|
|
140
|
+
labels,
|
|
141
|
+
...rest
|
|
142
|
+
}
|
|
143
|
+
);
|
|
144
|
+
};
|
|
145
|
+
export {
|
|
146
|
+
SolidPaintChannelField
|
|
147
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ColorSliderProps } from '../color-slider';
|
|
2
|
+
import { RGB } from '../types/colors';
|
|
3
|
+
import { ColorUpdateSource } from '../types/paint';
|
|
4
|
+
type Props = Omit<ColorSliderProps, "position"> & {
|
|
5
|
+
color: RGB;
|
|
6
|
+
hue: number;
|
|
7
|
+
onChangeEnd?: () => void;
|
|
8
|
+
onChangeStart?: () => void;
|
|
9
|
+
onColorChange?: (color: RGB) => void;
|
|
10
|
+
setHue: (newHue: number) => void;
|
|
11
|
+
updateSourceRef: React.MutableRefObject<ColorUpdateSource>;
|
|
12
|
+
};
|
|
13
|
+
export declare const SolidPaintHueSlider: (props: Props) => import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import tinycolor from "tinycolor2";
|
|
3
|
+
import { useEventCallback } from "usehooks-ts";
|
|
4
|
+
import { hslToRgb } from "../utils/colors-convert.js";
|
|
5
|
+
import { ColorSlider } from "../color-slider/color-slider.js";
|
|
6
|
+
const SolidPaintHueSlider = (props) => {
|
|
7
|
+
const {
|
|
8
|
+
hue,
|
|
9
|
+
setHue,
|
|
10
|
+
color,
|
|
11
|
+
onColorChange,
|
|
12
|
+
trackSize,
|
|
13
|
+
onChangeStart,
|
|
14
|
+
onChangeEnd,
|
|
15
|
+
updateSourceRef
|
|
16
|
+
} = props;
|
|
17
|
+
const handleHueChange = useEventCallback((value) => {
|
|
18
|
+
const hslColor = tinycolor(color).toHsl();
|
|
19
|
+
const hueValue = value * 360;
|
|
20
|
+
const newHslColor = {
|
|
21
|
+
...hslColor,
|
|
22
|
+
h: hueValue
|
|
23
|
+
};
|
|
24
|
+
setHue(hueValue);
|
|
25
|
+
updateSourceRef.current = "internal";
|
|
26
|
+
const rgbColor = hslToRgb(newHslColor);
|
|
27
|
+
onColorChange == null ? void 0 : onColorChange(rgbColor);
|
|
28
|
+
});
|
|
29
|
+
return /* @__PURE__ */ jsx(
|
|
30
|
+
ColorSlider,
|
|
31
|
+
{
|
|
32
|
+
position: hue / 360,
|
|
33
|
+
onChange: handleHueChange,
|
|
34
|
+
type: "hue",
|
|
35
|
+
trackSize,
|
|
36
|
+
onChangeStart,
|
|
37
|
+
onChangeEnd: () => {
|
|
38
|
+
onChangeEnd == null ? void 0 : onChangeEnd();
|
|
39
|
+
updateSourceRef.current = "external";
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
);
|
|
43
|
+
};
|
|
44
|
+
export {
|
|
45
|
+
SolidPaintHueSlider
|
|
46
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
export declare const ColorSolidPaintTv: import('tailwind-variants').TVReturnType<{
|
|
2
|
+
presets: {
|
|
3
|
+
true: {
|
|
4
|
+
channelField: string;
|
|
5
|
+
};
|
|
6
|
+
false: {};
|
|
7
|
+
};
|
|
8
|
+
alpha: {
|
|
9
|
+
true: {
|
|
10
|
+
sliderContainer: string;
|
|
11
|
+
nativePicker: string;
|
|
12
|
+
};
|
|
13
|
+
false: {
|
|
14
|
+
sliderContainer: string;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
nativePicker: {
|
|
18
|
+
true: {
|
|
19
|
+
sliderContainer: string;
|
|
20
|
+
};
|
|
21
|
+
false: {};
|
|
22
|
+
};
|
|
23
|
+
}, {
|
|
24
|
+
sliderContainer: string;
|
|
25
|
+
nativePicker: string;
|
|
26
|
+
channelField: string;
|
|
27
|
+
}, undefined, {
|
|
28
|
+
presets: {
|
|
29
|
+
true: {
|
|
30
|
+
channelField: string;
|
|
31
|
+
};
|
|
32
|
+
false: {};
|
|
33
|
+
};
|
|
34
|
+
alpha: {
|
|
35
|
+
true: {
|
|
36
|
+
sliderContainer: string;
|
|
37
|
+
nativePicker: string;
|
|
38
|
+
};
|
|
39
|
+
false: {
|
|
40
|
+
sliderContainer: string;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
nativePicker: {
|
|
44
|
+
true: {
|
|
45
|
+
sliderContainer: string;
|
|
46
|
+
};
|
|
47
|
+
false: {};
|
|
48
|
+
};
|
|
49
|
+
}, {
|
|
50
|
+
sliderContainer: string;
|
|
51
|
+
nativePicker: string;
|
|
52
|
+
channelField: string;
|
|
53
|
+
}, import('tailwind-variants').TVReturnType<{
|
|
54
|
+
presets: {
|
|
55
|
+
true: {
|
|
56
|
+
channelField: string;
|
|
57
|
+
};
|
|
58
|
+
false: {};
|
|
59
|
+
};
|
|
60
|
+
alpha: {
|
|
61
|
+
true: {
|
|
62
|
+
sliderContainer: string;
|
|
63
|
+
nativePicker: string;
|
|
64
|
+
};
|
|
65
|
+
false: {
|
|
66
|
+
sliderContainer: string;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
nativePicker: {
|
|
70
|
+
true: {
|
|
71
|
+
sliderContainer: string;
|
|
72
|
+
};
|
|
73
|
+
false: {};
|
|
74
|
+
};
|
|
75
|
+
}, {
|
|
76
|
+
sliderContainer: string;
|
|
77
|
+
nativePicker: string;
|
|
78
|
+
channelField: string;
|
|
79
|
+
}, undefined, unknown, unknown, undefined>>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { tcv } from "../../../../shared/utils/tcx/tcx.js";
|
|
2
|
+
const ColorSolidPaintTv = tcv({
|
|
3
|
+
slots: {
|
|
4
|
+
sliderContainer: "grid items-center gap-2 p-4",
|
|
5
|
+
nativePicker: "",
|
|
6
|
+
channelField: "px-4"
|
|
7
|
+
},
|
|
8
|
+
variants: {
|
|
9
|
+
presets: {
|
|
10
|
+
true: {
|
|
11
|
+
channelField: "pb-4"
|
|
12
|
+
},
|
|
13
|
+
false: {}
|
|
14
|
+
},
|
|
15
|
+
alpha: {
|
|
16
|
+
true: {
|
|
17
|
+
sliderContainer: "",
|
|
18
|
+
nativePicker: "col-start-2 row-span-2 row-start-1 p-2"
|
|
19
|
+
},
|
|
20
|
+
false: {
|
|
21
|
+
sliderContainer: ""
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
nativePicker: {
|
|
25
|
+
true: {
|
|
26
|
+
sliderContainer: "grid-cols-[1fr_auto]"
|
|
27
|
+
},
|
|
28
|
+
false: {}
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
defaultVariants: {
|
|
32
|
+
alpha: true,
|
|
33
|
+
presets: true,
|
|
34
|
+
nativePicker: true
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
export {
|
|
38
|
+
ColorSolidPaintTv
|
|
39
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { HTMLProps } from 'react';
|
|
2
|
+
import { RGB } from '../types/colors';
|
|
3
|
+
import { LibrariesType } from '../types/libraries';
|
|
4
|
+
import { GradientPaint } from '../types/paint';
|
|
5
|
+
export interface ColorSwatchProps extends Omit<HTMLProps<HTMLDivElement>, "color"> {
|
|
6
|
+
alpha?: number;
|
|
7
|
+
children?: React.ReactNode;
|
|
8
|
+
className?: string;
|
|
9
|
+
color?: RGB;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
gradient?: GradientPaint;
|
|
12
|
+
size?: number;
|
|
13
|
+
type?: LibrariesType;
|
|
14
|
+
}
|
|
15
|
+
export declare const ColorSwatch: import('react').ForwardRefExoticComponent<Omit<ColorSwatchProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef, useMemo } from "react";
|
|
3
|
+
import { useColors } from "../context/colots-context.js";
|
|
4
|
+
import { getGradientString } from "../utils/color.js";
|
|
5
|
+
import { getColorSwatchBackground } from "../utils/background.js";
|
|
6
|
+
import { profileConvertString } from "../utils/colors-convert.js";
|
|
7
|
+
import { tcx } from "../../../../shared/utils/tcx/tcx.js";
|
|
8
|
+
const createColorStyle = (color, alpha, type, colorProfile) => {
|
|
9
|
+
const displayColor = profileConvertString(
|
|
10
|
+
{
|
|
11
|
+
r: color.r,
|
|
12
|
+
g: color.g,
|
|
13
|
+
b: color.b
|
|
14
|
+
},
|
|
15
|
+
colorProfile
|
|
16
|
+
);
|
|
17
|
+
if (alpha === 1) return displayColor;
|
|
18
|
+
const displayColorAlpha = profileConvertString(
|
|
19
|
+
{
|
|
20
|
+
r: color.r,
|
|
21
|
+
g: color.g,
|
|
22
|
+
b: color.b,
|
|
23
|
+
a: alpha
|
|
24
|
+
},
|
|
25
|
+
colorProfile
|
|
26
|
+
);
|
|
27
|
+
return `linear-gradient(
|
|
28
|
+
${type === "VARIABLE" ? "to right" : "45deg"},
|
|
29
|
+
${displayColor} 50%,
|
|
30
|
+
${displayColorAlpha} 50%
|
|
31
|
+
)`;
|
|
32
|
+
};
|
|
33
|
+
const ColorSwatch = forwardRef(
|
|
34
|
+
function ColorSwatch2(props, ref) {
|
|
35
|
+
const {
|
|
36
|
+
color,
|
|
37
|
+
alpha,
|
|
38
|
+
gradient,
|
|
39
|
+
size = 14,
|
|
40
|
+
className,
|
|
41
|
+
disabled,
|
|
42
|
+
children,
|
|
43
|
+
type = "VARIABLE",
|
|
44
|
+
style,
|
|
45
|
+
...rest
|
|
46
|
+
} = props;
|
|
47
|
+
const { colorProfile } = useColors();
|
|
48
|
+
const checkerboard = useMemo(() => getColorSwatchBackground(size, 3), [size]);
|
|
49
|
+
const gradientStyle = useMemo(() => {
|
|
50
|
+
if (!gradient) return null;
|
|
51
|
+
const stops = gradient.gradientStops;
|
|
52
|
+
const gradientType = gradient.type;
|
|
53
|
+
const transform = gradient.gradientTransform;
|
|
54
|
+
if (!stops || !gradientType || !transform) return null;
|
|
55
|
+
const processedStops = stops.map((stop) => ({
|
|
56
|
+
...stop,
|
|
57
|
+
color: {
|
|
58
|
+
...stop.color,
|
|
59
|
+
a: stop.alpha
|
|
60
|
+
}
|
|
61
|
+
}));
|
|
62
|
+
return {
|
|
63
|
+
stops: processedStops,
|
|
64
|
+
type: gradientType,
|
|
65
|
+
transform
|
|
66
|
+
};
|
|
67
|
+
}, [gradient]);
|
|
68
|
+
const backgroundStyle = useMemo(() => {
|
|
69
|
+
if (gradientStyle) {
|
|
70
|
+
return `${getGradientString(
|
|
71
|
+
gradientStyle.stops,
|
|
72
|
+
gradientStyle.type,
|
|
73
|
+
gradientStyle.transform,
|
|
74
|
+
colorProfile
|
|
75
|
+
)}, ${checkerboard}`;
|
|
76
|
+
}
|
|
77
|
+
if (!color) return "";
|
|
78
|
+
try {
|
|
79
|
+
const colorStyle = createColorStyle(color, alpha ?? 1, type, colorProfile);
|
|
80
|
+
return (alpha ?? 1) < 1 ? `${colorStyle}, ${checkerboard}` : colorStyle;
|
|
81
|
+
} catch (error) {
|
|
82
|
+
console.error(error);
|
|
83
|
+
return "";
|
|
84
|
+
}
|
|
85
|
+
}, [color, alpha, type, checkerboard, gradientStyle, colorProfile]);
|
|
86
|
+
const swatchStyle = useMemo(
|
|
87
|
+
() => ({
|
|
88
|
+
width: size,
|
|
89
|
+
height: size,
|
|
90
|
+
background: backgroundStyle,
|
|
91
|
+
...style
|
|
92
|
+
}),
|
|
93
|
+
[backgroundStyle, size, style]
|
|
94
|
+
);
|
|
95
|
+
return /* @__PURE__ */ jsx(
|
|
96
|
+
"div",
|
|
97
|
+
{
|
|
98
|
+
ref,
|
|
99
|
+
className: tcx("shadow-line shrink-0", disabled && "saturate-0", className),
|
|
100
|
+
style: swatchStyle,
|
|
101
|
+
"aria-disabled": disabled,
|
|
102
|
+
...rest,
|
|
103
|
+
children
|
|
104
|
+
}
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
);
|
|
108
|
+
ColorSwatch.displayName = "ColorSwatch";
|
|
109
|
+
export {
|
|
110
|
+
ColorSwatch
|
|
111
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './color-swatch';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export declare const COLOR_SPACES: {
|
|
2
|
+
readonly HEX: "hex";
|
|
3
|
+
readonly RGB: "rgb";
|
|
4
|
+
readonly HSL: "hsl";
|
|
5
|
+
readonly HSB: "hsb";
|
|
6
|
+
};
|
|
7
|
+
export declare const COLOR_SPACE_OPTIONS: ({
|
|
8
|
+
label: string;
|
|
9
|
+
value: "hex";
|
|
10
|
+
} | {
|
|
11
|
+
label: string;
|
|
12
|
+
value: "rgb";
|
|
13
|
+
} | {
|
|
14
|
+
label: string;
|
|
15
|
+
value: "hsl";
|
|
16
|
+
} | {
|
|
17
|
+
label: string;
|
|
18
|
+
value: "hsb";
|
|
19
|
+
})[];
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const COLOR_SPACES = {
|
|
2
|
+
HEX: "hex",
|
|
3
|
+
RGB: "rgb",
|
|
4
|
+
HSL: "hsl",
|
|
5
|
+
HSB: "hsb"
|
|
6
|
+
};
|
|
7
|
+
const COLOR_SPACE_OPTIONS = [
|
|
8
|
+
{ label: "HEX", value: COLOR_SPACES.HEX },
|
|
9
|
+
{ label: "RGB", value: COLOR_SPACES.RGB },
|
|
10
|
+
{ label: "HSL", value: COLOR_SPACES.HSL },
|
|
11
|
+
{ label: "HSB", value: COLOR_SPACES.HSB }
|
|
12
|
+
];
|
|
13
|
+
export {
|
|
14
|
+
COLOR_SPACES,
|
|
15
|
+
COLOR_SPACE_OPTIONS
|
|
16
|
+
};
|