color-elements 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +30 -15
- package/_build/copy-config.json +1 -1
- package/_build/eleventy.js +7 -2
- package/_build/filters-extra.js +1 -1
- package/_includes/component.njk +9 -1
- package/_includes/partials/_nav-links.njk +11 -4
- package/_redirects +8 -1
- package/assets/css/style.css +78 -1
- package/assets/js/index.js +6 -6
- package/data/components.json +12 -0
- package/debug.html +447 -0
- package/index.js +5 -1
- package/package.json +2 -1
- package/src/channel-picker/README.md +103 -0
- package/src/channel-picker/channel-picker.css +31 -0
- package/src/channel-picker/channel-picker.js +168 -0
- package/src/channel-picker/channel-picker.webp +0 -0
- package/src/channel-slider/README.md +50 -8
- package/src/channel-slider/channel-slider.css +47 -5
- package/src/channel-slider/channel-slider.js +74 -39
- package/src/channel-slider/channel-slider.webp +0 -0
- package/src/color-chart/README.md +129 -0
- package/src/color-chart/color-chart-global.css +97 -0
- package/src/color-chart/color-chart.css +112 -0
- package/src/color-chart/color-chart.js +441 -0
- package/src/color-chart/color-chart.webp +0 -0
- package/src/color-inline/README.md +42 -1
- package/src/color-inline/color-inline.css +11 -4
- package/src/color-inline/color-inline.js +56 -50
- package/src/color-inline/color-inline.webp +0 -0
- package/src/color-picker/README.md +107 -5
- package/src/color-picker/color-picker.css +21 -6
- package/src/color-picker/color-picker.js +147 -60
- package/src/color-picker/color-picker.webp +0 -0
- package/src/color-scale/README.md +75 -0
- package/src/color-scale/color-scale.css +40 -0
- package/src/color-scale/color-scale.js +164 -0
- package/src/color-scale/color-scale.webp +0 -0
- package/src/color-slider/README.md +31 -4
- package/src/color-slider/color-slider.css +17 -7
- package/src/color-slider/color-slider.js +80 -38
- package/src/color-slider/color-slider.webp +0 -0
- package/src/color-swatch/README.md +265 -6
- package/src/color-swatch/color-swatch.css +162 -27
- package/src/color-swatch/color-swatch.js +191 -217
- package/src/color-swatch/color-swatch.webp +0 -0
- package/src/common/color-element.js +86 -0
- package/src/common/dom.js +1 -1
- package/src/common/util.js +12 -99
- package/src/gamut-badge/README.md +145 -0
- package/src/gamut-badge/gamut-badge.css +78 -0
- package/src/gamut-badge/gamut-badge.js +121 -0
- package/src/gamut-badge/gamut-badge.webp +0 -0
- package/src/index.js.njk +1 -1
- package/src/space-picker/README.md +121 -0
- package/src/space-picker/space-picker.css +23 -0
- package/src/space-picker/space-picker.js +213 -0
- package/src/space-picker/space-picker.webp +0 -0
- package/_data/components.json +0 -8
- package/lib/README.md +0 -4
- package/lib/colorjs.io/LICENSE +0 -21
- package/lib/colorjs.io/README.json +0 -3
- package/lib/colorjs.io/README.md +0 -257
- package/lib/colorjs.io/colorjs.io/LICENSE +0 -21
- package/lib/colorjs.io/colorjs.io/README.json +0 -3
- package/lib/colorjs.io/colorjs.io/README.md +0 -257
- package/lib/colorjs.io/colorjs.io/dist/color-fn.cjs +0 -5437
- package/lib/colorjs.io/colorjs.io/dist/color-fn.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color-fn.legacy.cjs +0 -7048
- package/lib/colorjs.io/colorjs.io/dist/color-fn.legacy.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color-fn.legacy.min.cjs +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color-fn.legacy.min.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color-fn.min.cjs +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color-fn.min.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.cjs +0 -5759
- package/lib/colorjs.io/colorjs.io/dist/color.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.global.js +0 -5760
- package/lib/colorjs.io/colorjs.io/dist/color.global.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.global.legacy.js +0 -7400
- package/lib/colorjs.io/colorjs.io/dist/color.global.legacy.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.global.legacy.min.js +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color.global.legacy.min.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.global.min.js +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color.global.min.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.js +0 -5755
- package/lib/colorjs.io/colorjs.io/dist/color.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.cjs +0 -7399
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.js +0 -7395
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.min.cjs +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.min.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.min.js +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color.legacy.min.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.min.cjs +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color.min.cjs.map +0 -1
- package/lib/colorjs.io/colorjs.io/dist/color.min.js +0 -2
- package/lib/colorjs.io/colorjs.io/dist/color.min.js.map +0 -1
- package/lib/colorjs.io/colorjs.io/package.json +0 -113
- package/lib/colorjs.io/colorjs.io/src/CATs.js +0 -131
- package/lib/colorjs.io/colorjs.io/src/adapt.js +0 -62
- package/lib/colorjs.io/colorjs.io/src/angles.js +0 -44
- package/lib/colorjs.io/colorjs.io/src/chromaticity.js +0 -33
- package/lib/colorjs.io/colorjs.io/src/clone.js +0 -7
- package/lib/colorjs.io/colorjs.io/src/color.js +0 -201
- package/lib/colorjs.io/colorjs.io/src/contrast/APCA.js +0 -102
- package/lib/colorjs.io/colorjs.io/src/contrast/Lstar.js +0 -17
- package/lib/colorjs.io/colorjs.io/src/contrast/Michelson.js +0 -22
- package/lib/colorjs.io/colorjs.io/src/contrast/WCAG21.js +0 -20
- package/lib/colorjs.io/colorjs.io/src/contrast/Weber.js +0 -27
- package/lib/colorjs.io/colorjs.io/src/contrast/deltaPhi.js +0 -25
- package/lib/colorjs.io/colorjs.io/src/contrast/index.js +0 -6
- package/lib/colorjs.io/colorjs.io/src/contrast.js +0 -28
- package/lib/colorjs.io/colorjs.io/src/defaults.js +0 -12
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaE2000.js +0 -179
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaE76.js +0 -7
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaECMC.js +0 -114
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaEHCT.js +0 -51
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaEITP.js +0 -24
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaEJz.js +0 -43
- package/lib/colorjs.io/colorjs.io/src/deltaE/deltaEOK.js +0 -19
- package/lib/colorjs.io/colorjs.io/src/deltaE/index.js +0 -27
- package/lib/colorjs.io/colorjs.io/src/deltaE.js +0 -19
- package/lib/colorjs.io/colorjs.io/src/display.js +0 -83
- package/lib/colorjs.io/colorjs.io/src/distance.js +0 -21
- package/lib/colorjs.io/colorjs.io/src/equals.js +0 -10
- package/lib/colorjs.io/colorjs.io/src/get.js +0 -11
- package/lib/colorjs.io/colorjs.io/src/getAll.js +0 -20
- package/lib/colorjs.io/colorjs.io/src/getColor.js +0 -36
- package/lib/colorjs.io/colorjs.io/src/hooks.js +0 -37
- package/lib/colorjs.io/colorjs.io/src/inGamut.js +0 -25
- package/lib/colorjs.io/colorjs.io/src/index-fn.js +0 -28
- package/lib/colorjs.io/colorjs.io/src/index.js +0 -38
- package/lib/colorjs.io/colorjs.io/src/interpolation.js +0 -222
- package/lib/colorjs.io/colorjs.io/src/keywords.js +0 -158
- package/lib/colorjs.io/colorjs.io/src/luminance.js +0 -27
- package/lib/colorjs.io/colorjs.io/src/multiply-matrices.js +0 -44
- package/lib/colorjs.io/colorjs.io/src/parse.js +0 -198
- package/lib/colorjs.io/colorjs.io/src/rgbspace.js +0 -64
- package/lib/colorjs.io/colorjs.io/src/serialize.js +0 -86
- package/lib/colorjs.io/colorjs.io/src/set.js +0 -33
- package/lib/colorjs.io/colorjs.io/src/setAll.js +0 -12
- package/lib/colorjs.io/colorjs.io/src/space-accessors.js +0 -86
- package/lib/colorjs.io/colorjs.io/src/space.js +0 -440
- package/lib/colorjs.io/colorjs.io/src/spaces/a98rgb-linear.js +0 -28
- package/lib/colorjs.io/colorjs.io/src/spaces/a98rgb.js +0 -11
- package/lib/colorjs.io/colorjs.io/src/spaces/acescc.js +0 -76
- package/lib/colorjs.io/colorjs.io/src/spaces/acescg.js +0 -54
- package/lib/colorjs.io/colorjs.io/src/spaces/cam16.js +0 -362
- package/lib/colorjs.io/colorjs.io/src/spaces/hct.js +0 -157
- package/lib/colorjs.io/colorjs.io/src/spaces/hpluv.js +0 -130
- package/lib/colorjs.io/colorjs.io/src/spaces/hsl.js +0 -91
- package/lib/colorjs.io/colorjs.io/src/spaces/hsluv.js +0 -162
- package/lib/colorjs.io/colorjs.io/src/spaces/hsv.js +0 -65
- package/lib/colorjs.io/colorjs.io/src/spaces/hwb.js +0 -58
- package/lib/colorjs.io/colorjs.io/src/spaces/ictcp.js +0 -133
- package/lib/colorjs.io/colorjs.io/src/spaces/index-fn-hdr.js +0 -7
- package/lib/colorjs.io/colorjs.io/src/spaces/index-fn.js +0 -29
- package/lib/colorjs.io/colorjs.io/src/spaces/index.js +0 -8
- package/lib/colorjs.io/colorjs.io/src/spaces/jzazbz.js +0 -118
- package/lib/colorjs.io/colorjs.io/src/spaces/jzczhz.js +0 -53
- package/lib/colorjs.io/colorjs.io/src/spaces/lab-d65.js +0 -74
- package/lib/colorjs.io/colorjs.io/src/spaces/lab.js +0 -74
- package/lib/colorjs.io/colorjs.io/src/spaces/lch.js +0 -67
- package/lib/colorjs.io/colorjs.io/src/spaces/lchuv.js +0 -68
- package/lib/colorjs.io/colorjs.io/src/spaces/luv.js +0 -85
- package/lib/colorjs.io/colorjs.io/src/spaces/oklab.js +0 -74
- package/lib/colorjs.io/colorjs.io/src/spaces/oklch.js +0 -68
- package/lib/colorjs.io/colorjs.io/src/spaces/p3-linear.js +0 -22
- package/lib/colorjs.io/colorjs.io/src/spaces/p3.js +0 -13
- package/lib/colorjs.io/colorjs.io/src/spaces/prophoto-linear.js +0 -28
- package/lib/colorjs.io/colorjs.io/src/spaces/prophoto.js +0 -19
- package/lib/colorjs.io/colorjs.io/src/spaces/rec2020-linear.js +0 -27
- package/lib/colorjs.io/colorjs.io/src/spaces/rec2020.js +0 -31
- package/lib/colorjs.io/colorjs.io/src/spaces/rec2100-hlg.js +0 -49
- package/lib/colorjs.io/colorjs.io/src/spaces/rec2100-pq.js +0 -37
- package/lib/colorjs.io/colorjs.io/src/spaces/srgb-linear.js +0 -30
- package/lib/colorjs.io/colorjs.io/src/spaces/srgb.js +0 -127
- package/lib/colorjs.io/colorjs.io/src/spaces/xyz-abs-d65.js +0 -40
- package/lib/colorjs.io/colorjs.io/src/spaces/xyz-d50.js +0 -12
- package/lib/colorjs.io/colorjs.io/src/spaces/xyz-d65.js +0 -18
- package/lib/colorjs.io/colorjs.io/src/to.js +0 -26
- package/lib/colorjs.io/colorjs.io/src/toGamut.js +0 -310
- package/lib/colorjs.io/colorjs.io/src/util.js +0 -254
- package/lib/colorjs.io/colorjs.io/src/variations.js +0 -14
- package/lib/colorjs.io/colorjs.io/types/index.d.cts +0 -4
- package/lib/colorjs.io/colorjs.io/types/index.d.ts +0 -42
- package/lib/colorjs.io/colorjs.io/types/src/CATs.d.ts +0 -13
- package/lib/colorjs.io/colorjs.io/types/src/adapt.d.ts +0 -12
- package/lib/colorjs.io/colorjs.io/types/src/angles.d.ts +0 -7
- package/lib/colorjs.io/colorjs.io/types/src/chromaticity.d.ts +0 -7
- package/lib/colorjs.io/colorjs.io/types/src/clone.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/color.d.ts +0 -160
- package/lib/colorjs.io/colorjs.io/types/src/contrast/APCA.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/contrast/Lstar.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/contrast/Michelson.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/contrast/WCAG21.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/contrast/Weber.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/contrast/deltaPhi.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/contrast/index.d.ts +0 -11
- package/lib/colorjs.io/colorjs.io/types/src/contrast.d.ts +0 -12
- package/lib/colorjs.io/colorjs.io/types/src/defaults.d.ts +0 -2
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaE2000.d.ts +0 -11
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaE76.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaECMC.d.ts +0 -9
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaEHCT.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaEITP.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaEJz.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/deltaEOK.d.ts +0 -5
- package/lib/colorjs.io/colorjs.io/types/src/deltaE/index.d.ts +0 -14
- package/lib/colorjs.io/colorjs.io/types/src/deltaE.d.ts +0 -12
- package/lib/colorjs.io/colorjs.io/types/src/display.d.ts +0 -17
- package/lib/colorjs.io/colorjs.io/types/src/distance.d.ts +0 -8
- package/lib/colorjs.io/colorjs.io/types/src/equals.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/get.d.ts +0 -4
- package/lib/colorjs.io/colorjs.io/types/src/getAll.d.ts +0 -7
- package/lib/colorjs.io/colorjs.io/types/src/getColor.d.ts +0 -4
- package/lib/colorjs.io/colorjs.io/types/src/hooks.d.ts +0 -52
- package/lib/colorjs.io/colorjs.io/types/src/inGamut.d.ts +0 -8
- package/lib/colorjs.io/colorjs.io/types/src/index-fn.d.cts +0 -1
- package/lib/colorjs.io/colorjs.io/types/src/index-fn.d.ts +0 -63
- package/lib/colorjs.io/colorjs.io/types/src/index.d.ts +0 -125
- package/lib/colorjs.io/colorjs.io/types/src/interpolation.d.ts +0 -77
- package/lib/colorjs.io/colorjs.io/types/src/keywords.d.ts +0 -2
- package/lib/colorjs.io/colorjs.io/types/src/luminance.d.ts +0 -10
- package/lib/colorjs.io/colorjs.io/types/src/multiply-matrices.d.ts +0 -9
- package/lib/colorjs.io/colorjs.io/types/src/parse.d.ts +0 -16
- package/lib/colorjs.io/colorjs.io/types/src/rgbspace.d.ts +0 -10
- package/lib/colorjs.io/colorjs.io/types/src/serialize.d.ts +0 -13
- package/lib/colorjs.io/colorjs.io/types/src/set.d.ts +0 -18
- package/lib/colorjs.io/colorjs.io/types/src/setAll.d.ts +0 -14
- package/lib/colorjs.io/colorjs.io/types/src/space-accessors.d.ts +0 -1
- package/lib/colorjs.io/colorjs.io/types/src/space-coord-accessors.d.ts +0 -69
- package/lib/colorjs.io/colorjs.io/types/src/space.d.ts +0 -143
- package/lib/colorjs.io/colorjs.io/types/src/spaces/a98rgb-linear.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/a98rgb.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/acescc.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/acescg.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/hpluv.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/hsl.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/hsluv.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/hsv.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/hwb.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/ictcp.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/index-fn-hdr.d.ts +0 -9
- package/lib/colorjs.io/colorjs.io/types/src/spaces/index-fn.d.ts +0 -29
- package/lib/colorjs.io/colorjs.io/types/src/spaces/index.d.ts +0 -4
- package/lib/colorjs.io/colorjs.io/types/src/spaces/jzazbz.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/jzczhz.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/lab-d65.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/lab.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/lch.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/lchuv.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/luv.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/oklab.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/oklch.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/p3-linear.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/p3.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/prophoto-linear.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/prophoto.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/rec2020-linear.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/rec2020.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/rec2100-hlg.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/rec2100-pq.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/srgb-linear.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/srgb.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/xyz-abs-d65.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/xyz-d50.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/spaces/xyz-d65.d.ts +0 -3
- package/lib/colorjs.io/colorjs.io/types/src/to.d.ts +0 -14
- package/lib/colorjs.io/colorjs.io/types/src/toGamut.d.ts +0 -45
- package/lib/colorjs.io/colorjs.io/types/src/util.d.ts +0 -58
- package/lib/colorjs.io/colorjs.io/types/src/variations.d.ts +0 -5
- package/lib/colorjs.io/dist/color-fn.cjs +0 -5437
- package/lib/colorjs.io/dist/color-fn.cjs.map +0 -1
- package/lib/colorjs.io/dist/color-fn.legacy.cjs +0 -7048
- package/lib/colorjs.io/dist/color-fn.legacy.cjs.map +0 -1
- package/lib/colorjs.io/dist/color-fn.legacy.min.cjs +0 -2
- package/lib/colorjs.io/dist/color-fn.legacy.min.cjs.map +0 -1
- package/lib/colorjs.io/dist/color-fn.min.cjs +0 -2
- package/lib/colorjs.io/dist/color-fn.min.cjs.map +0 -1
- package/lib/colorjs.io/dist/color.cjs +0 -5759
- package/lib/colorjs.io/dist/color.cjs.map +0 -1
- package/lib/colorjs.io/dist/color.global.js +0 -5760
- package/lib/colorjs.io/dist/color.global.js.map +0 -1
- package/lib/colorjs.io/dist/color.global.legacy.js +0 -7400
- package/lib/colorjs.io/dist/color.global.legacy.js.map +0 -1
- package/lib/colorjs.io/dist/color.global.legacy.min.js +0 -2
- package/lib/colorjs.io/dist/color.global.legacy.min.js.map +0 -1
- package/lib/colorjs.io/dist/color.global.min.js +0 -2
- package/lib/colorjs.io/dist/color.global.min.js.map +0 -1
- package/lib/colorjs.io/dist/color.js +0 -5755
- package/lib/colorjs.io/dist/color.js.map +0 -1
- package/lib/colorjs.io/dist/color.legacy.cjs +0 -7399
- package/lib/colorjs.io/dist/color.legacy.cjs.map +0 -1
- package/lib/colorjs.io/dist/color.legacy.js +0 -7395
- package/lib/colorjs.io/dist/color.legacy.js.map +0 -1
- package/lib/colorjs.io/dist/color.legacy.min.cjs +0 -2
- package/lib/colorjs.io/dist/color.legacy.min.cjs.map +0 -1
- package/lib/colorjs.io/dist/color.legacy.min.js +0 -2
- package/lib/colorjs.io/dist/color.legacy.min.js.map +0 -1
- package/lib/colorjs.io/dist/color.min.cjs +0 -2
- package/lib/colorjs.io/dist/color.min.cjs.map +0 -1
- package/lib/colorjs.io/dist/color.min.js +0 -2
- package/lib/colorjs.io/dist/color.min.js.map +0 -1
- package/lib/colorjs.io/package.json +0 -113
- package/lib/colorjs.io/src/CATs.js +0 -131
- package/lib/colorjs.io/src/adapt.js +0 -62
- package/lib/colorjs.io/src/angles.js +0 -44
- package/lib/colorjs.io/src/chromaticity.js +0 -33
- package/lib/colorjs.io/src/clone.js +0 -7
- package/lib/colorjs.io/src/color.js +0 -201
- package/lib/colorjs.io/src/contrast/APCA.js +0 -102
- package/lib/colorjs.io/src/contrast/Lstar.js +0 -17
- package/lib/colorjs.io/src/contrast/Michelson.js +0 -22
- package/lib/colorjs.io/src/contrast/WCAG21.js +0 -20
- package/lib/colorjs.io/src/contrast/Weber.js +0 -27
- package/lib/colorjs.io/src/contrast/deltaPhi.js +0 -25
- package/lib/colorjs.io/src/contrast/index.js +0 -6
- package/lib/colorjs.io/src/contrast.js +0 -28
- package/lib/colorjs.io/src/defaults.js +0 -12
- package/lib/colorjs.io/src/deltaE/deltaE2000.js +0 -179
- package/lib/colorjs.io/src/deltaE/deltaE76.js +0 -7
- package/lib/colorjs.io/src/deltaE/deltaECMC.js +0 -114
- package/lib/colorjs.io/src/deltaE/deltaEHCT.js +0 -51
- package/lib/colorjs.io/src/deltaE/deltaEITP.js +0 -24
- package/lib/colorjs.io/src/deltaE/deltaEJz.js +0 -43
- package/lib/colorjs.io/src/deltaE/deltaEOK.js +0 -19
- package/lib/colorjs.io/src/deltaE/index.js +0 -27
- package/lib/colorjs.io/src/deltaE.js +0 -19
- package/lib/colorjs.io/src/display.js +0 -83
- package/lib/colorjs.io/src/distance.js +0 -21
- package/lib/colorjs.io/src/equals.js +0 -10
- package/lib/colorjs.io/src/get.js +0 -11
- package/lib/colorjs.io/src/getAll.js +0 -20
- package/lib/colorjs.io/src/getColor.js +0 -36
- package/lib/colorjs.io/src/hooks.js +0 -37
- package/lib/colorjs.io/src/inGamut.js +0 -25
- package/lib/colorjs.io/src/index-fn.js +0 -28
- package/lib/colorjs.io/src/index.js +0 -38
- package/lib/colorjs.io/src/interpolation.js +0 -222
- package/lib/colorjs.io/src/keywords.js +0 -158
- package/lib/colorjs.io/src/luminance.js +0 -27
- package/lib/colorjs.io/src/multiply-matrices.js +0 -44
- package/lib/colorjs.io/src/parse.js +0 -198
- package/lib/colorjs.io/src/rgbspace.js +0 -64
- package/lib/colorjs.io/src/serialize.js +0 -86
- package/lib/colorjs.io/src/set.js +0 -33
- package/lib/colorjs.io/src/setAll.js +0 -12
- package/lib/colorjs.io/src/space-accessors.js +0 -86
- package/lib/colorjs.io/src/space.js +0 -440
- package/lib/colorjs.io/src/spaces/a98rgb-linear.js +0 -28
- package/lib/colorjs.io/src/spaces/a98rgb.js +0 -11
- package/lib/colorjs.io/src/spaces/acescc.js +0 -76
- package/lib/colorjs.io/src/spaces/acescg.js +0 -54
- package/lib/colorjs.io/src/spaces/cam16.js +0 -362
- package/lib/colorjs.io/src/spaces/hct.js +0 -157
- package/lib/colorjs.io/src/spaces/hpluv.js +0 -130
- package/lib/colorjs.io/src/spaces/hsl.js +0 -91
- package/lib/colorjs.io/src/spaces/hsluv.js +0 -162
- package/lib/colorjs.io/src/spaces/hsv.js +0 -65
- package/lib/colorjs.io/src/spaces/hwb.js +0 -58
- package/lib/colorjs.io/src/spaces/ictcp.js +0 -133
- package/lib/colorjs.io/src/spaces/index-fn-hdr.js +0 -7
- package/lib/colorjs.io/src/spaces/index-fn.js +0 -29
- package/lib/colorjs.io/src/spaces/index.js +0 -8
- package/lib/colorjs.io/src/spaces/jzazbz.js +0 -118
- package/lib/colorjs.io/src/spaces/jzczhz.js +0 -53
- package/lib/colorjs.io/src/spaces/lab-d65.js +0 -74
- package/lib/colorjs.io/src/spaces/lab.js +0 -74
- package/lib/colorjs.io/src/spaces/lch.js +0 -67
- package/lib/colorjs.io/src/spaces/lchuv.js +0 -68
- package/lib/colorjs.io/src/spaces/luv.js +0 -85
- package/lib/colorjs.io/src/spaces/oklab.js +0 -74
- package/lib/colorjs.io/src/spaces/oklch.js +0 -68
- package/lib/colorjs.io/src/spaces/p3-linear.js +0 -22
- package/lib/colorjs.io/src/spaces/p3.js +0 -13
- package/lib/colorjs.io/src/spaces/prophoto-linear.js +0 -28
- package/lib/colorjs.io/src/spaces/prophoto.js +0 -19
- package/lib/colorjs.io/src/spaces/rec2020-linear.js +0 -27
- package/lib/colorjs.io/src/spaces/rec2020.js +0 -31
- package/lib/colorjs.io/src/spaces/rec2100-hlg.js +0 -49
- package/lib/colorjs.io/src/spaces/rec2100-pq.js +0 -37
- package/lib/colorjs.io/src/spaces/srgb-linear.js +0 -30
- package/lib/colorjs.io/src/spaces/srgb.js +0 -127
- package/lib/colorjs.io/src/spaces/xyz-abs-d65.js +0 -40
- package/lib/colorjs.io/src/spaces/xyz-d50.js +0 -12
- package/lib/colorjs.io/src/spaces/xyz-d65.js +0 -18
- package/lib/colorjs.io/src/to.js +0 -26
- package/lib/colorjs.io/src/toGamut.js +0 -310
- package/lib/colorjs.io/src/util.js +0 -254
- package/lib/colorjs.io/src/variations.js +0 -14
- package/lib/colorjs.io/types/index.d.cts +0 -4
- package/lib/colorjs.io/types/index.d.ts +0 -42
- package/lib/colorjs.io/types/src/CATs.d.ts +0 -13
- package/lib/colorjs.io/types/src/adapt.d.ts +0 -12
- package/lib/colorjs.io/types/src/angles.d.ts +0 -7
- package/lib/colorjs.io/types/src/chromaticity.d.ts +0 -7
- package/lib/colorjs.io/types/src/clone.d.ts +0 -3
- package/lib/colorjs.io/types/src/color.d.ts +0 -160
- package/lib/colorjs.io/types/src/contrast/APCA.d.ts +0 -5
- package/lib/colorjs.io/types/src/contrast/Lstar.d.ts +0 -5
- package/lib/colorjs.io/types/src/contrast/Michelson.d.ts +0 -5
- package/lib/colorjs.io/types/src/contrast/WCAG21.d.ts +0 -5
- package/lib/colorjs.io/types/src/contrast/Weber.d.ts +0 -5
- package/lib/colorjs.io/types/src/contrast/deltaPhi.d.ts +0 -5
- package/lib/colorjs.io/types/src/contrast/index.d.ts +0 -11
- package/lib/colorjs.io/types/src/contrast.d.ts +0 -12
- package/lib/colorjs.io/types/src/defaults.d.ts +0 -2
- package/lib/colorjs.io/types/src/deltaE/deltaE2000.d.ts +0 -11
- package/lib/colorjs.io/types/src/deltaE/deltaE76.d.ts +0 -5
- package/lib/colorjs.io/types/src/deltaE/deltaECMC.d.ts +0 -9
- package/lib/colorjs.io/types/src/deltaE/deltaEHCT.d.ts +0 -5
- package/lib/colorjs.io/types/src/deltaE/deltaEITP.d.ts +0 -5
- package/lib/colorjs.io/types/src/deltaE/deltaEJz.d.ts +0 -5
- package/lib/colorjs.io/types/src/deltaE/deltaEOK.d.ts +0 -5
- package/lib/colorjs.io/types/src/deltaE/index.d.ts +0 -14
- package/lib/colorjs.io/types/src/deltaE.d.ts +0 -12
- package/lib/colorjs.io/types/src/display.d.ts +0 -17
- package/lib/colorjs.io/types/src/distance.d.ts +0 -8
- package/lib/colorjs.io/types/src/equals.d.ts +0 -3
- package/lib/colorjs.io/types/src/get.d.ts +0 -4
- package/lib/colorjs.io/types/src/getAll.d.ts +0 -7
- package/lib/colorjs.io/types/src/getColor.d.ts +0 -4
- package/lib/colorjs.io/types/src/hooks.d.ts +0 -52
- package/lib/colorjs.io/types/src/inGamut.d.ts +0 -8
- package/lib/colorjs.io/types/src/index-fn.d.cts +0 -1
- package/lib/colorjs.io/types/src/index-fn.d.ts +0 -63
- package/lib/colorjs.io/types/src/index.d.ts +0 -125
- package/lib/colorjs.io/types/src/interpolation.d.ts +0 -77
- package/lib/colorjs.io/types/src/keywords.d.ts +0 -2
- package/lib/colorjs.io/types/src/luminance.d.ts +0 -10
- package/lib/colorjs.io/types/src/multiply-matrices.d.ts +0 -9
- package/lib/colorjs.io/types/src/parse.d.ts +0 -16
- package/lib/colorjs.io/types/src/rgbspace.d.ts +0 -10
- package/lib/colorjs.io/types/src/serialize.d.ts +0 -13
- package/lib/colorjs.io/types/src/set.d.ts +0 -18
- package/lib/colorjs.io/types/src/setAll.d.ts +0 -14
- package/lib/colorjs.io/types/src/space-accessors.d.ts +0 -1
- package/lib/colorjs.io/types/src/space-coord-accessors.d.ts +0 -69
- package/lib/colorjs.io/types/src/space.d.ts +0 -143
- package/lib/colorjs.io/types/src/spaces/a98rgb-linear.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/a98rgb.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/acescc.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/acescg.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/hpluv.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/hsl.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/hsluv.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/hsv.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/hwb.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/ictcp.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/index-fn-hdr.d.ts +0 -9
- package/lib/colorjs.io/types/src/spaces/index-fn.d.ts +0 -29
- package/lib/colorjs.io/types/src/spaces/index.d.ts +0 -4
- package/lib/colorjs.io/types/src/spaces/jzazbz.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/jzczhz.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/lab-d65.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/lab.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/lch.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/lchuv.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/luv.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/oklab.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/oklch.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/p3-linear.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/p3.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/prophoto-linear.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/prophoto.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/rec2020-linear.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/rec2020.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/rec2100-hlg.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/rec2100-pq.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/srgb-linear.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/srgb.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/xyz-abs-d65.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/xyz-d50.d.ts +0 -3
- package/lib/colorjs.io/types/src/spaces/xyz-d65.d.ts +0 -3
- package/lib/colorjs.io/types/src/to.d.ts +0 -14
- package/lib/colorjs.io/types/src/toGamut.d.ts +0 -45
- package/lib/colorjs.io/types/src/util.d.ts +0 -58
- package/lib/colorjs.io/types/src/variations.d.ts +0 -5
- package/src/color-gamut/README.md +0 -75
- package/src/color-gamut/color-gamut.css +0 -32
- package/src/color-gamut/color-gamut.js +0 -172
- package/src/common/color.js +0 -12
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Various utility functions
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
export {default as multiplyMatrices} from "./multiply-matrices.js";
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Check if a value is a string (including a String object)
|
|
9
|
-
* @param {*} str - Value to check
|
|
10
|
-
* @returns {boolean}
|
|
11
|
-
*/
|
|
12
|
-
export function isString (str) {
|
|
13
|
-
return type(str) === "string";
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* Determine the internal JavaScript [[Class]] of an object.
|
|
18
|
-
* @param {*} o - Value to check
|
|
19
|
-
* @returns {string}
|
|
20
|
-
*/
|
|
21
|
-
export function type (o) {
|
|
22
|
-
let str = Object.prototype.toString.call(o);
|
|
23
|
-
|
|
24
|
-
return (str.match(/^\[object\s+(.*?)\]$/)[1] || "").toLowerCase();
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export function serializeNumber (n, {precision, unit }) {
|
|
28
|
-
if (isNone(n)) {
|
|
29
|
-
return "none";
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return toPrecision(n, precision) + (unit ?? "");
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Check if a value corresponds to a none argument
|
|
37
|
-
* @param {*} n - Value to check
|
|
38
|
-
* @returns {boolean}
|
|
39
|
-
*/
|
|
40
|
-
export function isNone (n) {
|
|
41
|
-
return Number.isNaN(n) || (n instanceof Number && n?.none);
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Replace none values with 0
|
|
46
|
-
*/
|
|
47
|
-
export function skipNone (n) {
|
|
48
|
-
return isNone(n) ? 0 : n;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Round a number to a certain number of significant digits
|
|
53
|
-
* @param {number} n - The number to round
|
|
54
|
-
* @param {number} precision - Number of significant digits
|
|
55
|
-
*/
|
|
56
|
-
export function toPrecision (n, precision) {
|
|
57
|
-
if (n === 0) {
|
|
58
|
-
return 0;
|
|
59
|
-
}
|
|
60
|
-
let integer = ~~n;
|
|
61
|
-
let digits = 0;
|
|
62
|
-
if (integer && precision) {
|
|
63
|
-
digits = ~~Math.log10(Math.abs(integer)) + 1;
|
|
64
|
-
}
|
|
65
|
-
const multiplier = 10.0 ** (precision - digits);
|
|
66
|
-
return Math.floor(n * multiplier + 0.5) / multiplier;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
const angleFactor = {
|
|
70
|
-
deg: 1,
|
|
71
|
-
grad: 0.9,
|
|
72
|
-
rad: 180 / Math.PI,
|
|
73
|
-
turn: 360,
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
/**
|
|
77
|
-
* Parse a CSS function, regardless of its name and arguments
|
|
78
|
-
* @param String str String to parse
|
|
79
|
-
* @return {{name, args, rawArgs}}
|
|
80
|
-
*/
|
|
81
|
-
export function parseFunction (str) {
|
|
82
|
-
if (!str) {
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
str = str.trim();
|
|
87
|
-
|
|
88
|
-
const isFunctionRegex = /^([a-z]+)\((.+?)\)$/i;
|
|
89
|
-
const isNumberRegex = /^-?[\d.]+$/;
|
|
90
|
-
const unitValueRegex = /%|deg|g?rad|turn$/;
|
|
91
|
-
const singleArgument = /\/?\s*(none|[-\w.]+(?:%|deg|g?rad|turn)?)/g;
|
|
92
|
-
let parts = str.match(isFunctionRegex);
|
|
93
|
-
|
|
94
|
-
if (parts) {
|
|
95
|
-
// It is a function, parse args
|
|
96
|
-
let args = [];
|
|
97
|
-
parts[2].replace(singleArgument, ($0, rawArg) => {
|
|
98
|
-
let match = rawArg.match(unitValueRegex);
|
|
99
|
-
let arg = rawArg;
|
|
100
|
-
|
|
101
|
-
if (match) {
|
|
102
|
-
let unit = match[0];
|
|
103
|
-
// Drop unit from value
|
|
104
|
-
let unitlessArg = arg.slice(0, -unit.length);
|
|
105
|
-
|
|
106
|
-
if (unit === "%") {
|
|
107
|
-
// Convert percentages to 0-1 numbers
|
|
108
|
-
arg = new Number(unitlessArg / 100);
|
|
109
|
-
arg.type = "<percentage>";
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
// Multiply angle by appropriate factor for its unit
|
|
113
|
-
arg = new Number(unitlessArg * angleFactor[unit]);
|
|
114
|
-
arg.type = "<angle>";
|
|
115
|
-
arg.unit = unit;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
else if (isNumberRegex.test(arg)) {
|
|
119
|
-
// Convert numerical args to numbers
|
|
120
|
-
arg = new Number(arg);
|
|
121
|
-
arg.type = "<number>";
|
|
122
|
-
}
|
|
123
|
-
else if (arg === "none") {
|
|
124
|
-
arg = new Number(NaN);
|
|
125
|
-
arg.none = true;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
if ($0.startsWith("/")) {
|
|
129
|
-
// It's alpha
|
|
130
|
-
arg = arg instanceof Number ? arg : new Number(arg);
|
|
131
|
-
arg.alpha = true;
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
if (typeof arg === "object" && arg instanceof Number) {
|
|
135
|
-
arg.raw = rawArg;
|
|
136
|
-
}
|
|
137
|
-
|
|
138
|
-
args.push(arg);
|
|
139
|
-
});
|
|
140
|
-
|
|
141
|
-
return {
|
|
142
|
-
name: parts[1].toLowerCase(),
|
|
143
|
-
rawName: parts[1],
|
|
144
|
-
rawArgs: parts[2],
|
|
145
|
-
// An argument could be (as of css-color-4):
|
|
146
|
-
// a number, percentage, degrees (hue), ident (in color())
|
|
147
|
-
args,
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
export function last (arr) {
|
|
153
|
-
return arr[arr.length - 1];
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
export function interpolate (start, end, p) {
|
|
157
|
-
if (isNaN(start)) {
|
|
158
|
-
return end;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
if (isNaN(end)) {
|
|
162
|
-
return start;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
return start + (end - start) * p;
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
export function interpolateInv (start, end, value) {
|
|
169
|
-
return (value - start) / (end - start);
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
export function mapRange (from, to, value) {
|
|
173
|
-
return interpolate(to[0], to[1], interpolateInv(from[0], from[1], value));
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
export function parseCoordGrammar (coordGrammars) {
|
|
177
|
-
return coordGrammars.map(coordGrammar => {
|
|
178
|
-
return coordGrammar.split("|").map(type => {
|
|
179
|
-
type = type.trim();
|
|
180
|
-
let range = type.match(/^(<[a-z]+>)\[(-?[.\d]+),\s*(-?[.\d]+)\]?$/);
|
|
181
|
-
|
|
182
|
-
if (range) {
|
|
183
|
-
let ret = new String(range[1]);
|
|
184
|
-
ret.range = [+range[2], +range[3]];
|
|
185
|
-
return ret;
|
|
186
|
-
}
|
|
187
|
-
|
|
188
|
-
return type;
|
|
189
|
-
});
|
|
190
|
-
});
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
/**
|
|
194
|
-
* Clamp value between the minimum and maximum
|
|
195
|
-
* @param {number} min minimum value to return
|
|
196
|
-
* @param {number} val the value to return if it is between min and max
|
|
197
|
-
* @param {number} max maximum value to return
|
|
198
|
-
* @returns number
|
|
199
|
-
*/
|
|
200
|
-
export function clamp (min, val, max) {
|
|
201
|
-
return Math.max(Math.min(max, val), min);
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
/**
|
|
205
|
-
* Copy sign of one value to another.
|
|
206
|
-
* @param {number} - to number to copy sign to
|
|
207
|
-
* @param {number} - from number to copy sign from
|
|
208
|
-
* @returns number
|
|
209
|
-
*/
|
|
210
|
-
export function copySign (to, from) {
|
|
211
|
-
return Math.sign(to) === Math.sign(from) ? to : -to;
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
/**
|
|
215
|
-
* Perform pow on a signed number and copy sign to result
|
|
216
|
-
* @param {number} - base the base number
|
|
217
|
-
* @param {number} - exp the exponent
|
|
218
|
-
* @returns number
|
|
219
|
-
*/
|
|
220
|
-
export function spow (base, exp) {
|
|
221
|
-
return copySign(Math.abs(base) ** exp, base);
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
/**
|
|
225
|
-
* Perform a divide, but return zero if the numerator is zero
|
|
226
|
-
* @param {number} n - the numerator
|
|
227
|
-
* @param {number} d - the denominator
|
|
228
|
-
* @returns number
|
|
229
|
-
*/
|
|
230
|
-
export function zdiv (n, d) {
|
|
231
|
-
return (d === 0) ? 0 : n / d;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
/**
|
|
235
|
-
* Perform a bisect on a sorted list and locate the insertion point for
|
|
236
|
-
* a value in arr to maintain sorted order.
|
|
237
|
-
* @param {number[]} arr - array of sorted numbers
|
|
238
|
-
* @param {number} value - value to find insertion point for
|
|
239
|
-
* @param {number} lo - used to specify a the low end of a subset of the list
|
|
240
|
-
* @param {number} hi - used to specify a the high end of a subset of the list
|
|
241
|
-
* @returns number
|
|
242
|
-
*/
|
|
243
|
-
export function bisectLeft (arr, value, lo = 0, hi = arr.length) {
|
|
244
|
-
while (lo < hi) {
|
|
245
|
-
const mid = (lo + hi) >> 1;
|
|
246
|
-
if (arr[mid] < value) {
|
|
247
|
-
lo = mid + 1;
|
|
248
|
-
}
|
|
249
|
-
else {
|
|
250
|
-
hi = mid;
|
|
251
|
-
}
|
|
252
|
-
}
|
|
253
|
-
return lo;
|
|
254
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import ColorSpace from "./space.js";
|
|
2
|
-
import set from "./set.js";
|
|
3
|
-
|
|
4
|
-
export function lighten (color, amount = .25) {
|
|
5
|
-
let space = ColorSpace.get("oklch", "lch");
|
|
6
|
-
let lightness = [space, "l"];
|
|
7
|
-
return set(color, lightness, l => l * (1 + amount));
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export function darken (color, amount = .25) {
|
|
11
|
-
let space = ColorSpace.get("oklch", "lch");
|
|
12
|
-
let lightness = [space, "l"];
|
|
13
|
-
return set(color, lightness, l => l * (1 - amount));
|
|
14
|
-
}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
// Definitions by: Adam Thompson-Sharpe <https://github.com/MysteryBlokHed>
|
|
2
|
-
// Minimum TypeScript Version: 4.1
|
|
3
|
-
export { default } from "./src/index.js";
|
|
4
|
-
|
|
5
|
-
export type {
|
|
6
|
-
ColorConstructor,
|
|
7
|
-
ColorObject,
|
|
8
|
-
ColorTypes,
|
|
9
|
-
Coords,
|
|
10
|
-
DefineFunctionCode,
|
|
11
|
-
DefineFunctionOptions,
|
|
12
|
-
DefineFunctionHybrid,
|
|
13
|
-
PlainColorObject,
|
|
14
|
-
SpaceAccessor,
|
|
15
|
-
ToColorPrototype,
|
|
16
|
-
} from "./src/color.js";
|
|
17
|
-
|
|
18
|
-
export type { White } from "./src/adapt.js";
|
|
19
|
-
|
|
20
|
-
export type { CAT } from "./src/CATs.js";
|
|
21
|
-
|
|
22
|
-
export type { Display } from "./src/display.js";
|
|
23
|
-
|
|
24
|
-
export type {
|
|
25
|
-
Range,
|
|
26
|
-
RangeOptions,
|
|
27
|
-
MixOptions,
|
|
28
|
-
StepsOptions,
|
|
29
|
-
} from "./src/interpolation.js";
|
|
30
|
-
|
|
31
|
-
export type { Options as ParseOptions } from "./src/parse.js";
|
|
32
|
-
|
|
33
|
-
export type { RGBOptions } from "./src/rgbspace.js";
|
|
34
|
-
|
|
35
|
-
export type { Options as SerializeOptions } from "./src/serialize.js";
|
|
36
|
-
|
|
37
|
-
export type {
|
|
38
|
-
Format as SpaceFormat,
|
|
39
|
-
CoordMeta,
|
|
40
|
-
Ref,
|
|
41
|
-
Options as SpaceOptions,
|
|
42
|
-
} from "./src/space.js";
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { White } from "./adapt.js";
|
|
2
|
-
|
|
3
|
-
export interface CAT {
|
|
4
|
-
id: string;
|
|
5
|
-
toCone_M: number[][];
|
|
6
|
-
fromCone_M: number[][];
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export const CATs: Record<string, CAT>;
|
|
10
|
-
|
|
11
|
-
export function defineCAT (cat: CAT): void;
|
|
12
|
-
|
|
13
|
-
export function adapt (W1: White, W2: White, id?: string): number[];
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export type White = [number, number, number];
|
|
2
|
-
|
|
3
|
-
export const WHITES: Record<string, White>;
|
|
4
|
-
|
|
5
|
-
export function getWhite (name: string | White): White;
|
|
6
|
-
|
|
7
|
-
export default function adapt (
|
|
8
|
-
w1: White,
|
|
9
|
-
w2: White,
|
|
10
|
-
xyz: [number, number, number],
|
|
11
|
-
options?: { method?: string | undefined }
|
|
12
|
-
): void;
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
import { WHITES } from "./adapt.js";
|
|
2
|
-
import defaults from "./defaults.js";
|
|
3
|
-
import hooks from "./hooks.js";
|
|
4
|
-
import * as util from "./util.js";
|
|
5
|
-
import ColorSpace, { Ref } from "./space.js";
|
|
6
|
-
import SpaceAccessors from "./space-coord-accessors.js";
|
|
7
|
-
|
|
8
|
-
import {
|
|
9
|
-
to as toFn,
|
|
10
|
-
parse,
|
|
11
|
-
serialize,
|
|
12
|
-
inGamut as inGamutFn,
|
|
13
|
-
toGamut as toGamutFn,
|
|
14
|
-
distance as distanceFn,
|
|
15
|
-
equals as equalsFn,
|
|
16
|
-
get,
|
|
17
|
-
getAll as getAllFn,
|
|
18
|
-
setAll as setAllFn,
|
|
19
|
-
display,
|
|
20
|
-
} from "./index-fn.js";
|
|
21
|
-
|
|
22
|
-
export type { SpaceAccessor } from "./space-coord-accessors.js";
|
|
23
|
-
|
|
24
|
-
export type Coords = [number, number, number];
|
|
25
|
-
|
|
26
|
-
export interface ColorObject {
|
|
27
|
-
spaceId?: string | ColorSpace | undefined;
|
|
28
|
-
space?: string | ColorSpace | undefined;
|
|
29
|
-
coords: Coords;
|
|
30
|
-
alpha?: number | undefined;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export interface PlainColorObject {
|
|
34
|
-
space: ColorSpace;
|
|
35
|
-
coords: Coords;
|
|
36
|
-
alpha: number;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface ColorConstructor {
|
|
40
|
-
spaceId: string;
|
|
41
|
-
coords: Coords;
|
|
42
|
-
alpha: number | undefined;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export type ColorTypes = ColorObject | ColorConstructor | string | PlainColorObject;
|
|
46
|
-
|
|
47
|
-
export type DefineFunctionCode = (...args: any[]) => any;
|
|
48
|
-
|
|
49
|
-
export interface DefineFunctionOptions {
|
|
50
|
-
instance?: boolean | undefined;
|
|
51
|
-
returns?: "color" | "function<color>" | "array<color>" | undefined;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export type DefineFunctionHybrid = DefineFunctionCode & DefineFunctionOptions;
|
|
55
|
-
|
|
56
|
-
/** Remove the first element of an array type */
|
|
57
|
-
type RemoveFirstElement<T extends any[]> = T extends [any, ...infer R]
|
|
58
|
-
? R
|
|
59
|
-
: T[number][];
|
|
60
|
-
|
|
61
|
-
/** Convert a function to a prototype for Color */
|
|
62
|
-
export type ToColorPrototype<T extends (...args: any[]) => any> = T extends (
|
|
63
|
-
color: Color,
|
|
64
|
-
...args: infer A
|
|
65
|
-
) => infer R
|
|
66
|
-
? T extends { returns: "color" }
|
|
67
|
-
? (...args: A) => Color
|
|
68
|
-
: (...args: A) => R
|
|
69
|
-
: never;
|
|
70
|
-
|
|
71
|
-
/** Convert a function to a Color namespace property (returning a Color) */
|
|
72
|
-
export type ToColorNamespace<T extends (...args: any[]) => any> = T extends (
|
|
73
|
-
...args: infer A
|
|
74
|
-
) => infer R
|
|
75
|
-
? T extends { returns: "color" }
|
|
76
|
-
? (...args: A) => Color
|
|
77
|
-
: (...args: A) => R
|
|
78
|
-
: never;
|
|
79
|
-
|
|
80
|
-
declare namespace Color {
|
|
81
|
-
// Functions defined using Color.defineFunctions
|
|
82
|
-
export const getAll: ToColorNamespace<typeof getAllFn>;
|
|
83
|
-
export const setAll: ToColorNamespace<typeof setAllFn>;
|
|
84
|
-
export const to: ToColorNamespace<typeof toFn>;
|
|
85
|
-
export const equals: ToColorNamespace<typeof equalsFn>;
|
|
86
|
-
export const inGamut: ToColorNamespace<typeof inGamutFn>;
|
|
87
|
-
export const toGamut: ToColorNamespace<typeof toGamutFn>;
|
|
88
|
-
export const distance: ToColorNamespace<typeof distanceFn>;
|
|
89
|
-
// `get` is defined below as a static method on the Class,
|
|
90
|
-
// and `toString` is intentionally not overridden for the namespace
|
|
91
|
-
|
|
92
|
-
export { util, hooks, WHITES, ColorSpace as Space, parse, defaults };
|
|
93
|
-
export const spaces: typeof ColorSpace["registry"];
|
|
94
|
-
|
|
95
|
-
// Must be manually defined due to overloads
|
|
96
|
-
// These should always match the signature of the original function
|
|
97
|
-
export function set (color: ColorTypes, prop: Ref, value: number | ((coord: number) => number)): Color;
|
|
98
|
-
export function set (color: ColorTypes, props: Record<string, number | ((coord: number) => number)>): Color;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
declare class Color extends SpaceAccessors implements PlainColorObject {
|
|
102
|
-
constructor (color: ColorTypes);
|
|
103
|
-
constructor (space: string | ColorSpace, coords: Coords, alpha?: number);
|
|
104
|
-
|
|
105
|
-
// These signatures should always be the same as the constructor
|
|
106
|
-
static get (color: ColorTypes): Color;
|
|
107
|
-
static get (
|
|
108
|
-
space: string | ColorSpace,
|
|
109
|
-
coords: Coords,
|
|
110
|
-
alpha: number
|
|
111
|
-
): Color;
|
|
112
|
-
|
|
113
|
-
static defineFunction (name: string, code: DefineFunctionHybrid): void;
|
|
114
|
-
static defineFunction (
|
|
115
|
-
name: string,
|
|
116
|
-
code: DefineFunctionCode,
|
|
117
|
-
options: DefineFunctionOptions
|
|
118
|
-
): void;
|
|
119
|
-
|
|
120
|
-
static defineFunctions (objects: Record<string, DefineFunctionHybrid>): void;
|
|
121
|
-
|
|
122
|
-
static extend (
|
|
123
|
-
exports:
|
|
124
|
-
| { register: (color: typeof Color) => void }
|
|
125
|
-
| Record<string, DefineFunctionHybrid>
|
|
126
|
-
): void;
|
|
127
|
-
|
|
128
|
-
get space (): ColorSpace;
|
|
129
|
-
get spaceId (): string;
|
|
130
|
-
|
|
131
|
-
alpha: number;
|
|
132
|
-
coords: Coords;
|
|
133
|
-
|
|
134
|
-
clone (): this;
|
|
135
|
-
|
|
136
|
-
// Copy parameter types from display function, except for the first one
|
|
137
|
-
display (
|
|
138
|
-
...args: RemoveFirstElement<Parameters<typeof display>>
|
|
139
|
-
): string & { color: Color };
|
|
140
|
-
|
|
141
|
-
toJSON (): ColorConstructor;
|
|
142
|
-
|
|
143
|
-
// Functions defined using Color.defineFunctions
|
|
144
|
-
get: ToColorPrototype<typeof get>;
|
|
145
|
-
getAll: ToColorPrototype<typeof getAllFn>;
|
|
146
|
-
setAll: ToColorPrototype<typeof setAllFn>;
|
|
147
|
-
to: ToColorPrototype<typeof toFn>;
|
|
148
|
-
equals: ToColorPrototype<typeof equalsFn>;
|
|
149
|
-
inGamut: ToColorPrototype<typeof inGamutFn>;
|
|
150
|
-
toGamut: ToColorPrototype<typeof toGamutFn>;
|
|
151
|
-
distance: ToColorPrototype<typeof distanceFn>;
|
|
152
|
-
toString: ToColorPrototype<typeof serialize>;
|
|
153
|
-
|
|
154
|
-
// Must be manually defined due to overloads
|
|
155
|
-
// These should always match the signature of the original function
|
|
156
|
-
set (prop: Ref, value: number | ((coord: number) => number)): Color;
|
|
157
|
-
set (props: Record<string, number | ((coord: number) => number)>): Color;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
export default Color;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export type Algorithms =
|
|
2
|
-
keyof typeof import("./index.js") extends `contrast${infer Alg}`
|
|
3
|
-
? Alg
|
|
4
|
-
: string;
|
|
5
|
-
|
|
6
|
-
export { default as contrastWCAG21 } from "./WCAG21.js";
|
|
7
|
-
export { default as contrastAPCA } from "./APCA.js";
|
|
8
|
-
export { default as contrastMichelson } from "./Michelson.js";
|
|
9
|
-
export { default as contrastWeber } from "./Weber.js";
|
|
10
|
-
export { default as contrastLstar } from "./Lstar.js";
|
|
11
|
-
export { default as contrastDeltaPhi } from "./deltaPhi.js";
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ColorTypes } from "./color.js";
|
|
2
|
-
import { Algorithms } from "./contrast/index.js";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @param options Algorithm to use as well as any other options to pass to the contrast function
|
|
6
|
-
* @throws {TypeError} Unknown or unspecified algorithm
|
|
7
|
-
*/
|
|
8
|
-
export default function contrast (
|
|
9
|
-
background: ColorTypes,
|
|
10
|
-
foreground: ColorTypes,
|
|
11
|
-
options: Algorithms | ({ algorithm: Algorithms } & Record<string, any>)
|
|
12
|
-
): number;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export { default as deltaE76 } from "./deltaE76.js";
|
|
2
|
-
export { default as deltaECMC } from "./deltaECMC.js";
|
|
3
|
-
export { default as deltaE2000 } from "./deltaE2000.js";
|
|
4
|
-
export { default as deltaEJz } from "./deltaEJz.js";
|
|
5
|
-
export { default as deltaEITP } from "./deltaEITP.js";
|
|
6
|
-
export { default as deltaEOK } from "./deltaEOK.js";
|
|
7
|
-
export { default as deltaEHCT } from "./deltaEHCT.js";
|
|
8
|
-
|
|
9
|
-
declare const deltaEMethods: Omit<typeof import("./index.js"), "default">;
|
|
10
|
-
export default deltaEMethods;
|
|
11
|
-
|
|
12
|
-
export type Methods = keyof typeof deltaEMethods extends `deltaE${infer Method}`
|
|
13
|
-
? Method
|
|
14
|
-
: string;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { ColorTypes } from "./color.js";
|
|
2
|
-
import { Methods } from "./deltaE/index.js";
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* @param options deltaE method to use as well as any other options to pass to the deltaE function
|
|
6
|
-
* @throws {TypeError} Unknown or unspecified method
|
|
7
|
-
*/
|
|
8
|
-
export default function deltaE (
|
|
9
|
-
color1: ColorTypes,
|
|
10
|
-
color2: ColorTypes,
|
|
11
|
-
options: Methods | ({ method: Methods } & Record<string, any>)
|
|
12
|
-
): number;
|