color-bits 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/.claude/settings.local.json +9 -0
  2. package/README.md +30 -14
  3. package/benchmarks/compare-oklab.ts +44 -0
  4. package/benchmarks/compare-srgb.ts +59 -0
  5. package/benchmarks/compare.ts +46 -0
  6. package/benchmarks/parse.ts +41 -0
  7. package/build/conversion/channels.d.ts +61 -0
  8. package/build/conversion/channels.js +353 -0
  9. package/build/conversion/channels.js.map +1 -0
  10. package/build/{convert.d.ts → conversion/color-spaces.d.ts} +25 -23
  11. package/build/conversion/color-spaces.js +263 -0
  12. package/build/conversion/color-spaces.js.map +1 -0
  13. package/build/core/bits.d.ts +28 -0
  14. package/build/{core.js → core/bits.js} +25 -26
  15. package/build/core/bits.js.map +1 -0
  16. package/build/core/bytes.d.ts +5 -0
  17. package/build/core/bytes.js +12 -0
  18. package/build/core/bytes.js.map +1 -0
  19. package/build/css.d.ts +1 -0
  20. package/build/css.js +18 -0
  21. package/build/css.js.map +1 -0
  22. package/build/formatting/index.d.ts +27 -0
  23. package/build/{format.js → formatting/index.js} +13 -67
  24. package/build/formatting/index.js.map +1 -0
  25. package/build/index.d.ts +6 -4
  26. package/build/index.js +6 -4
  27. package/build/index.js.map +1 -1
  28. package/build/namedColors.d.ts +1 -0
  29. package/build/namedColors.js +18 -0
  30. package/build/namedColors.js.map +1 -0
  31. package/build/operations/adjust.d.ts +19 -0
  32. package/build/operations/adjust.js +40 -0
  33. package/build/operations/adjust.js.map +1 -0
  34. package/build/operations/blend.d.ts +9 -0
  35. package/build/operations/blend.js +19 -0
  36. package/build/operations/blend.js.map +1 -0
  37. package/build/operations/color-mix.d.ts +20 -0
  38. package/build/operations/color-mix.js +144 -0
  39. package/build/operations/color-mix.js.map +1 -0
  40. package/build/operations/luminance.d.ts +7 -0
  41. package/build/operations/luminance.js +20 -0
  42. package/build/operations/luminance.js.map +1 -0
  43. package/build/parsing/calc.d.ts +8 -0
  44. package/build/parsing/calc.js +205 -0
  45. package/build/parsing/calc.js.map +1 -0
  46. package/build/parsing/color-mix.d.ts +8 -0
  47. package/build/parsing/color-mix.js +70 -0
  48. package/build/parsing/color-mix.js.map +1 -0
  49. package/build/parsing/css.d.ts +23 -0
  50. package/build/parsing/css.js +115 -0
  51. package/build/parsing/css.js.map +1 -0
  52. package/build/parsing/fast.d.ts +19 -0
  53. package/build/parsing/fast.js +184 -0
  54. package/build/parsing/fast.js.map +1 -0
  55. package/build/parsing/named-colors.d.ts +12 -0
  56. package/build/parsing/named-colors.js +68 -0
  57. package/build/parsing/named-colors.js.map +1 -0
  58. package/build/parsing/relative.d.ts +9 -0
  59. package/build/parsing/relative.js +158 -0
  60. package/build/parsing/relative.js.map +1 -0
  61. package/build/parsing/tokenizer.d.ts +16 -0
  62. package/build/parsing/tokenizer.js +78 -0
  63. package/build/parsing/tokenizer.js.map +1 -0
  64. package/build/parsing/values.d.ts +41 -0
  65. package/build/parsing/values.js +139 -0
  66. package/build/parsing/values.js.map +1 -0
  67. package/package.json +30 -12
  68. package/benchmarks/index.ts +0 -35
  69. package/build/bit.d.ts +0 -3
  70. package/build/bit.js +0 -29
  71. package/build/bit.js.map +0 -1
  72. package/build/convert.js +0 -347
  73. package/build/convert.js.map +0 -1
  74. package/build/core.d.ts +0 -27
  75. package/build/core.js.map +0 -1
  76. package/build/format.d.ts +0 -27
  77. package/build/format.js.map +0 -1
  78. package/build/functions.d.ts +0 -33
  79. package/build/functions.js +0 -95
  80. package/build/functions.js.map +0 -1
  81. package/build/parse.d.ts +0 -17
  82. package/build/parse.js +0 -392
  83. package/build/parse.js.map +0 -1
package/build/convert.js DELETED
@@ -1,347 +0,0 @@
1
- "use strict";
2
- // Copyright 2022 The Chromium Authors. All rights reserved.
3
- // Use of this source code is governed by a BSD-style license that can be
4
- // found in the LICENSE file.
5
- //
6
- // Source: https://github.com/ChromeDevTools/devtools-frontend/blob/c51201e6ee70370f7f1ac8a1a49dca7d4561aeaa/front_end/core/common/ColorConverter.ts
7
- // License: https://github.com/ChromeDevTools/devtools-frontend/blob/c51201e6ee70370f7f1ac8a1a49dca7d4561aeaa/LICENSE
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.labToXyzd50 = labToXyzd50;
10
- exports.xyzd50ToLab = xyzd50ToLab;
11
- exports.oklabToXyzd65 = oklabToXyzd65;
12
- exports.xyzd65ToOklab = xyzd65ToOklab;
13
- exports.lchToLab = lchToLab;
14
- exports.labToLch = labToLch;
15
- exports.displayP3ToXyzd50 = displayP3ToXyzd50;
16
- exports.xyzd50ToDisplayP3 = xyzd50ToDisplayP3;
17
- exports.proPhotoToXyzd50 = proPhotoToXyzd50;
18
- exports.xyzd50ToProPhoto = xyzd50ToProPhoto;
19
- exports.adobeRGBToXyzd50 = adobeRGBToXyzd50;
20
- exports.xyzd50ToAdobeRGB = xyzd50ToAdobeRGB;
21
- exports.rec2020ToXyzd50 = rec2020ToXyzd50;
22
- exports.xyzd50ToRec2020 = xyzd50ToRec2020;
23
- exports.xyzd50ToD65 = xyzd50ToD65;
24
- exports.xyzd65ToD50 = xyzd65ToD50;
25
- exports.xyzd65TosRGBLinear = xyzd65TosRGBLinear;
26
- exports.xyzd50TosRGBLinear = xyzd50TosRGBLinear;
27
- exports.srgbLinearToXyzd50 = srgbLinearToXyzd50;
28
- exports.srgbToXyzd50 = srgbToXyzd50;
29
- exports.xyzd50ToSrgb = xyzd50ToSrgb;
30
- exports.oklchToXyzd50 = oklchToXyzd50;
31
- exports.xyzd50ToOklch = xyzd50ToOklch;
32
- /**
33
- * Implementation of this module and all the tests are heavily influenced by
34
- * https://source.chromium.org/chromium/chromium/src/+/main:ui/gfx/color_conversions.cc
35
- */
36
- // https://en.wikipedia.org/wiki/CIELAB_color_space#Converting_between_CIELAB_and_CIEXYZ_coordinates
37
- const D50_X = 0.9642;
38
- const D50_Y = 1.0;
39
- const D50_Z = 0.8251;
40
- function multiply(matrix, other) {
41
- const dst = [0, 0, 0];
42
- for (let row = 0; row < 3; ++row) {
43
- dst[row] = matrix[row][0] * other[0] + matrix[row][1] * other[1] +
44
- matrix[row][2] * other[2];
45
- }
46
- return dst;
47
- }
48
- // A transfer function mapping encoded values to linear values,
49
- // represented by this 7-parameter piecewise function:
50
- //
51
- // linear = sign(encoded) * (c*|encoded| + f) , 0 <= |encoded| < d
52
- // = sign(encoded) * ((a*|encoded| + b)^g + e), d <= |encoded|
53
- //
54
- // (A simple gamma transfer function sets g to gamma and a to 1.)
55
- class TransferFunction {
56
- g;
57
- a;
58
- b;
59
- c;
60
- d;
61
- e;
62
- f;
63
- constructor(g, a, b = 0, c = 0, d = 0, e = 0, f = 0) {
64
- this.g = g;
65
- this.a = a;
66
- this.b = b;
67
- this.c = c;
68
- this.d = d;
69
- this.e = e;
70
- this.f = f;
71
- }
72
- eval(val) {
73
- const sign = val < 0 ? -1.0 : 1.0;
74
- const abs = val * sign;
75
- // 0 <= |encoded| < d path
76
- if (abs < this.d) {
77
- return sign * (this.c * abs + this.f);
78
- }
79
- // d <= |encoded| path
80
- return sign * (Math.pow(this.a * abs + this.b, this.g) + this.e);
81
- }
82
- }
83
- const NAMED_TRANSFER_FN = {
84
- sRGB: new TransferFunction(2.4, (1 / 1.055), (0.055 / 1.055), (1 / 12.92), 0.04045, 0.0, 0.0),
85
- sRGB_INVERSE: new TransferFunction(0.416667, 1.13728, -0, 12.92, 0.0031308, -0.0549698, -0),
86
- proPhotoRGB: new TransferFunction(1.8, 1),
87
- proPhotoRGB_INVERSE: new TransferFunction(0.555556, 1, -0, 0, 0, 0, 0),
88
- k2Dot2: new TransferFunction(2.2, 1.0),
89
- k2Dot2_INVERSE: new TransferFunction(0.454545, 1),
90
- rec2020: new TransferFunction(2.22222, 0.909672, 0.0903276, 0.222222, 0.0812429, 0, 0),
91
- rec2020_INVERSE: new TransferFunction(0.45, 1.23439, -0, 4.5, 0.018054, -0.0993195, -0),
92
- };
93
- const NAMED_GAMUTS = {
94
- sRGB: [
95
- [0.436065674, 0.385147095, 0.143066406],
96
- [0.222488403, 0.716873169, 0.060607910],
97
- [0.013916016, 0.097076416, 0.714096069],
98
- ],
99
- sRGB_INVERSE: [
100
- [3.134112151374599, -1.6173924597114966, -0.4906334036481285],
101
- [-0.9787872938826594, 1.9162795854799963, 0.0334547139520088],
102
- [0.07198304248352326, -0.2289858493321844, 1.4053851325241447],
103
- ],
104
- displayP3: [
105
- [0.515102, 0.291965, 0.157153],
106
- [0.241182, 0.692236, 0.0665819],
107
- [-0.00104941, 0.0418818, 0.784378],
108
- ],
109
- displayP3_INVERSE: [
110
- [2.404045155982687, -0.9898986932663839, -0.3976317191366333],
111
- [-0.8422283799266768, 1.7988505115115485, 0.016048170293157416],
112
- [0.04818705979712955, -0.09737385156228891, 1.2735066448052303],
113
- ],
114
- adobeRGB: [
115
- [0.60974, 0.20528, 0.14919],
116
- [0.31111, 0.62567, 0.06322],
117
- [0.01947, 0.06087, 0.74457],
118
- ],
119
- adobeRGB_INVERSE: [
120
- [1.9625385510109137, -0.6106892546501431, -0.3413827467482388],
121
- [-0.9787580455521, 1.9161624707082339, 0.03341676594241408],
122
- [0.028696263137883395, -0.1406807819331586, 1.349252109991369],
123
- ],
124
- rec2020: [
125
- [0.673459, 0.165661, 0.125100],
126
- [0.279033, 0.675338, 0.0456288],
127
- [-0.00193139, 0.0299794, 0.797162],
128
- ],
129
- rec2020_INVERSE: [
130
- [1.647275201661012, -0.3936024771460771, -0.23598028884792507],
131
- [-0.6826176165196962, 1.647617775014935, 0.01281626807852422],
132
- [0.029662725298529837, -0.06291668721366285, 1.2533964313435522],
133
- ],
134
- xyz: [
135
- [1.0, 0.0, 0.0],
136
- [0.0, 1.0, 0.0],
137
- [0.0, 0.0, 1.0],
138
- ],
139
- };
140
- function degToRad(deg) {
141
- return deg * (Math.PI / 180);
142
- }
143
- function radToDeg(rad) {
144
- return rad * (180 / Math.PI);
145
- }
146
- function applyTransferFns(fn, r, g, b) {
147
- return [fn.eval(r), fn.eval(g), fn.eval(b)];
148
- }
149
- const OKLAB_TO_LMS_MATRIX = [
150
- [0.99999999845051981432, 0.39633779217376785678, 0.21580375806075880339],
151
- [1.0000000088817607767, -0.1055613423236563494, -0.063854174771705903402],
152
- [1.0000000546724109177, -0.089484182094965759684, -1.2914855378640917399],
153
- ];
154
- // Inverse of the OKLAB_TO_LMS_MATRIX
155
- const LMS_TO_OKLAB_MATRIX = [
156
- [0.2104542553, 0.7936177849999999, -0.0040720468],
157
- [1.9779984951000003, -2.4285922049999997, 0.4505937099000001],
158
- [0.025904037099999982, 0.7827717662, -0.8086757660000001],
159
- ];
160
- const XYZ_TO_LMS_MATRIX = [
161
- [0.8190224432164319, 0.3619062562801221, -0.12887378261216414],
162
- [0.0329836671980271, 0.9292868468965546, 0.03614466816999844],
163
- [0.048177199566046255, 0.26423952494422764, 0.6335478258136937],
164
- ];
165
- // Inverse of XYZ_TO_LMS_MATRIX
166
- const LMS_TO_XYZ_MATRIX = [
167
- [1.226879873374156, -0.5578149965554814, 0.2813910501772159],
168
- [-0.040575762624313734, 1.1122868293970596, -0.07171106666151703],
169
- [-0.07637294974672144, -0.4214933239627915, 1.586924024427242],
170
- ];
171
- const PRO_PHOTO_TO_XYZD50_MATRIX = [
172
- [0.7976700747153241, 0.13519395152800417, 0.03135596341127167],
173
- [0.28803902352472205, 0.7118744007923554, 0.00008661179538844252],
174
- [2.739876695467402e-7, -0.0000014405226518969991, 0.825211112593861],
175
- ];
176
- // Inverse of PRO_PHOTO_TO_XYZD50_MATRIX
177
- const XYZD50_TO_PRO_PHOTO_MATRIX = [
178
- [1.3459533710138858, -0.25561367037652133, -0.051116041522131374],
179
- [-0.544600415668951, 1.5081687311475767, 0.020535163968720935],
180
- [-0.0000013975622054109725, 0.000002717590904589903, 1.2118111696814942],
181
- ];
182
- const XYZD65_TO_XYZD50_MATRIX = [
183
- [1.0478573189120088, 0.022907374491829943, -0.050162247377152525],
184
- [0.029570500050499514, 0.9904755577034089, -0.017061518194840468],
185
- [-0.00924047197558879, 0.015052921526981566, 0.7519708530777581],
186
- ];
187
- // Inverse of XYZD65_TO_XYZD50_MATRIX
188
- const XYZD50_TO_XYZD65_MATRIX = [
189
- [0.9555366447632887, -0.02306009252137888, 0.06321844147263304],
190
- [-0.028315378228764922, 1.009951351591575, 0.021026001591792402],
191
- [0.012308773293784308, -0.02050053471777469, 1.3301947294775631],
192
- ];
193
- const XYZD65_TO_SRGB_MATRIX = [
194
- [3.2408089365140573, -1.5375788839307314, -0.4985609572551541],
195
- [-0.9692732213205414, 1.876110235238969, 0.041560501141251774],
196
- [0.05567030990267439, -0.2040007921971802, 1.0571046720577026],
197
- ];
198
- function labToXyzd50(l, a, b) {
199
- let y = (l + 16.0) / 116.0;
200
- let x = y + a / 500.0;
201
- let z = y - b / 200.0;
202
- function labInverseTransferFunction(t) {
203
- const delta = (24.0 / 116.0);
204
- if (t <= delta) {
205
- return (108.0 / 841.0) * (t - (16.0 / 116.0));
206
- }
207
- return t * t * t;
208
- }
209
- x = labInverseTransferFunction(x) * D50_X;
210
- y = labInverseTransferFunction(y) * D50_Y;
211
- z = labInverseTransferFunction(z) * D50_Z;
212
- return [x, y, z];
213
- }
214
- function xyzd50ToLab(x, y, z) {
215
- function labTransferFunction(t) {
216
- const deltaLimit = (24.0 / 116.0) * (24.0 / 116.0) * (24.0 / 116.0);
217
- if (t <= deltaLimit) {
218
- return (841.0 / 108.0) * t + (16.0 / 116.0);
219
- }
220
- return Math.pow(t, 1.0 / 3.0);
221
- }
222
- x = labTransferFunction(x / D50_X);
223
- y = labTransferFunction(y / D50_Y);
224
- z = labTransferFunction(z / D50_Z);
225
- const l = 116.0 * y - 16.0;
226
- const a = 500.0 * (x - y);
227
- const b = 200.0 * (y - z);
228
- return [l, a, b];
229
- }
230
- function oklabToXyzd65(l, a, b) {
231
- const labInput = [l, a, b];
232
- const lmsIntermediate = multiply(OKLAB_TO_LMS_MATRIX, labInput);
233
- lmsIntermediate[0] = lmsIntermediate[0] * lmsIntermediate[0] * lmsIntermediate[0];
234
- lmsIntermediate[1] = lmsIntermediate[1] * lmsIntermediate[1] * lmsIntermediate[1];
235
- lmsIntermediate[2] = lmsIntermediate[2] * lmsIntermediate[2] * lmsIntermediate[2];
236
- const xyzOutput = multiply(LMS_TO_XYZ_MATRIX, lmsIntermediate);
237
- return xyzOutput;
238
- }
239
- function xyzd65ToOklab(x, y, z) {
240
- const xyzInput = [x, y, z];
241
- const lmsIntermediate = multiply(XYZ_TO_LMS_MATRIX, xyzInput);
242
- lmsIntermediate[0] = Math.pow(lmsIntermediate[0], 1.0 / 3.0);
243
- lmsIntermediate[1] = Math.pow(lmsIntermediate[1], 1.0 / 3.0);
244
- lmsIntermediate[2] = Math.pow(lmsIntermediate[2], 1.0 / 3.0);
245
- const labOutput = multiply(LMS_TO_OKLAB_MATRIX, lmsIntermediate);
246
- return [labOutput[0], labOutput[1], labOutput[2]];
247
- }
248
- function lchToLab(l, c, h) {
249
- if (h === undefined) {
250
- return [l, 0, 0];
251
- }
252
- return [l, c * Math.cos(degToRad(h)), c * Math.sin(degToRad(h))];
253
- }
254
- function labToLch(l, a, b) {
255
- return [l, Math.sqrt(a * a + b * b), radToDeg(Math.atan2(b, a))];
256
- }
257
- function displayP3ToXyzd50(r, g, b) {
258
- const [mappedR, mappedG, mappedB] = applyTransferFns(NAMED_TRANSFER_FN.sRGB, r, g, b);
259
- const rgbInput = [mappedR, mappedG, mappedB];
260
- const xyzOutput = multiply(NAMED_GAMUTS.displayP3, rgbInput);
261
- return xyzOutput;
262
- }
263
- function xyzd50ToDisplayP3(x, y, z) {
264
- const xyzInput = [x, y, z];
265
- const rgbOutput = multiply(NAMED_GAMUTS.displayP3_INVERSE, xyzInput);
266
- return applyTransferFns(NAMED_TRANSFER_FN.sRGB_INVERSE, rgbOutput[0], rgbOutput[1], rgbOutput[2]);
267
- }
268
- function proPhotoToXyzd50(r, g, b) {
269
- const [mappedR, mappedG, mappedB] = applyTransferFns(NAMED_TRANSFER_FN.proPhotoRGB, r, g, b);
270
- const rgbInput = [mappedR, mappedG, mappedB];
271
- const xyzOutput = multiply(PRO_PHOTO_TO_XYZD50_MATRIX, rgbInput);
272
- return xyzOutput;
273
- }
274
- function xyzd50ToProPhoto(x, y, z) {
275
- const xyzInput = [x, y, z];
276
- const rgbOutput = multiply(XYZD50_TO_PRO_PHOTO_MATRIX, xyzInput);
277
- return applyTransferFns(NAMED_TRANSFER_FN.proPhotoRGB_INVERSE, rgbOutput[0], rgbOutput[1], rgbOutput[2]);
278
- }
279
- function adobeRGBToXyzd50(r, g, b) {
280
- const [mappedR, mappedG, mappedB] = applyTransferFns(NAMED_TRANSFER_FN.k2Dot2, r, g, b);
281
- const rgbInput = [mappedR, mappedG, mappedB];
282
- const xyzOutput = multiply(NAMED_GAMUTS.adobeRGB, rgbInput);
283
- return xyzOutput;
284
- }
285
- function xyzd50ToAdobeRGB(x, y, z) {
286
- const xyzInput = [x, y, z];
287
- const rgbOutput = multiply(NAMED_GAMUTS.adobeRGB_INVERSE, xyzInput);
288
- return applyTransferFns(NAMED_TRANSFER_FN.k2Dot2_INVERSE, rgbOutput[0], rgbOutput[1], rgbOutput[2]);
289
- }
290
- function rec2020ToXyzd50(r, g, b) {
291
- const [mappedR, mappedG, mappedB] = applyTransferFns(NAMED_TRANSFER_FN.rec2020, r, g, b);
292
- const rgbInput = [mappedR, mappedG, mappedB];
293
- const xyzOutput = multiply(NAMED_GAMUTS.rec2020, rgbInput);
294
- return xyzOutput;
295
- }
296
- function xyzd50ToRec2020(x, y, z) {
297
- const xyzInput = [x, y, z];
298
- const rgbOutput = multiply(NAMED_GAMUTS.rec2020_INVERSE, xyzInput);
299
- return applyTransferFns(NAMED_TRANSFER_FN.rec2020_INVERSE, rgbOutput[0], rgbOutput[1], rgbOutput[2]);
300
- }
301
- function xyzd50ToD65(x, y, z) {
302
- const xyzInput = [x, y, z];
303
- const xyzOutput = multiply(XYZD50_TO_XYZD65_MATRIX, xyzInput);
304
- return xyzOutput;
305
- }
306
- function xyzd65ToD50(x, y, z) {
307
- const xyzInput = [x, y, z];
308
- const xyzOutput = multiply(XYZD65_TO_XYZD50_MATRIX, xyzInput);
309
- return xyzOutput;
310
- }
311
- function xyzd65TosRGBLinear(x, y, z) {
312
- const xyzInput = [x, y, z];
313
- const rgbResult = multiply(XYZD65_TO_SRGB_MATRIX, xyzInput);
314
- return rgbResult;
315
- }
316
- function xyzd50TosRGBLinear(x, y, z) {
317
- const xyzInput = [x, y, z];
318
- const rgbResult = multiply(NAMED_GAMUTS.sRGB_INVERSE, xyzInput);
319
- return rgbResult;
320
- }
321
- function srgbLinearToXyzd50(r, g, b) {
322
- const rgbInput = [r, g, b];
323
- const xyzOutput = multiply(NAMED_GAMUTS.sRGB, rgbInput);
324
- return xyzOutput;
325
- }
326
- function srgbToXyzd50(r, g, b) {
327
- const [mappedR, mappedG, mappedB] = applyTransferFns(NAMED_TRANSFER_FN.sRGB, r, g, b);
328
- const rgbInput = [mappedR, mappedG, mappedB];
329
- const xyzOutput = multiply(NAMED_GAMUTS.sRGB, rgbInput);
330
- return xyzOutput;
331
- }
332
- function xyzd50ToSrgb(x, y, z) {
333
- const xyzInput = [x, y, z];
334
- const rgbOutput = multiply(NAMED_GAMUTS.sRGB_INVERSE, xyzInput);
335
- return applyTransferFns(NAMED_TRANSFER_FN.sRGB_INVERSE, rgbOutput[0], rgbOutput[1], rgbOutput[2]);
336
- }
337
- function oklchToXyzd50(lInput, c, h) {
338
- const [l, a, b] = lchToLab(lInput, c, h);
339
- const [x65, y65, z65] = oklabToXyzd65(l, a, b);
340
- return xyzd65ToD50(x65, y65, z65);
341
- }
342
- function xyzd50ToOklch(x, y, z) {
343
- const [x65, y65, z65] = xyzd50ToD65(x, y, z);
344
- const [l, a, b] = xyzd65ToOklab(x65, y65, z65);
345
- return labToLch(l, a, b);
346
- }
347
- //# sourceMappingURL=convert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"convert.js","sourceRoot":"","sources":["../src/convert.ts"],"names":[],"mappings":"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"}
package/build/core.d.ts DELETED
@@ -1,27 +0,0 @@
1
- export type Color = number;
2
- export declare const OFFSET_R = 24;
3
- export declare const OFFSET_G = 16;
4
- export declare const OFFSET_B = 8;
5
- export declare const OFFSET_A = 0;
6
- /**
7
- * Creates a new color from the given RGBA components.
8
- * Every component should be in the [0, 255] range.
9
- */
10
- export declare function newColor(r: number, g: number, b: number, a: number): number;
11
- /**
12
- * Creates a new color from the given number value, e.g. 0x599eff.
13
- */
14
- export declare function from(color: number): number;
15
- /**
16
- * Turns the color into its equivalent number representation.
17
- * This is essentially a cast from int32 to uint32.
18
- */
19
- export declare function toNumber(color: Color): number;
20
- export declare function getRed(c: Color): number;
21
- export declare function getGreen(c: Color): number;
22
- export declare function getBlue(c: Color): number;
23
- export declare function getAlpha(c: Color): number;
24
- export declare function setRed(c: Color, value: number): number;
25
- export declare function setGreen(c: Color, value: number): number;
26
- export declare function setBlue(c: Color, value: number): number;
27
- export declare function setAlpha(c: Color, value: number): number;
package/build/core.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,4BAOC;AAKD,oBAOC;AAMD,4BAEC;AAED,wBAA6D;AAC7D,4BAA+D;AAC/D,0BAA8D;AAC9D,4BAA+D;AAE/D,wBAAmF;AACnF,4BAAqF;AACrF,0BAAoF;AACpF,4BAAqF;AApDrF,2CAA4B;AAE5B,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;AAIjB,QAAA,QAAQ,GAAG,EAAE,CAAC;AACd,QAAA,QAAQ,GAAG,EAAE,CAAC;AACd,QAAA,QAAQ,GAAI,CAAC,CAAC;AACd,QAAA,QAAQ,GAAI,CAAC,CAAC;AAE3B;;;GAGG;AACH,SAAgB,QAAQ,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;IACjE,OAAO,CACL,CAAC,CAAC,IAAI,gBAAQ,CAAC;QACf,CAAC,CAAC,IAAI,gBAAQ,CAAC;QACf,CAAC,CAAC,IAAI,gBAAQ,CAAC;QACf,CAAC,CAAC,IAAI,gBAAQ,CAAC,CAChB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAC,KAAa;IAChC,OAAO,QAAQ,CACb,GAAG,CAAC,KAAK,EAAE,gBAAQ,CAAC,EACpB,GAAG,CAAC,KAAK,EAAE,gBAAQ,CAAC,EACpB,GAAG,CAAC,KAAK,EAAE,gBAAQ,CAAC,EACpB,GAAG,CAAC,KAAK,EAAE,gBAAQ,CAAC,CACrB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,QAAQ,CAAC,KAAY;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;AACrB,CAAC;AAED,SAAgB,MAAM,CAAC,CAAQ,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,CAAC,CAAC,CAAC,CAAC;AAC7D,SAAgB,QAAQ,CAAC,CAAQ,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,CAAC,CAAC,CAAC,CAAC;AAC/D,SAAgB,OAAO,CAAC,CAAQ,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,CAAC,CAAC,CAAC,CAAC;AAC9D,SAAgB,QAAQ,CAAC,CAAQ,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,CAAC,CAAC,CAAC,CAAC;AAE/D,SAAgB,MAAM,CAAC,CAAQ,EAAE,KAAa,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACnF,SAAgB,QAAQ,CAAC,CAAQ,EAAE,KAAa,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACrF,SAAgB,OAAO,CAAC,CAAQ,EAAE,KAAa,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACpF,SAAgB,QAAQ,CAAC,CAAQ,EAAE,KAAa,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,gBAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC"}
package/build/format.d.ts DELETED
@@ -1,27 +0,0 @@
1
- import type { Color } from './core';
2
- /** Format to a #RRGGBBAA string */
3
- export declare const format: typeof formatHEXA;
4
- /** Format to a #RRGGBBAA string */
5
- export declare function formatHEXA(color: Color): string;
6
- export declare function formatHEX(color: Color): string;
7
- export declare function formatRGBA(color: Color): string;
8
- export declare function toRGBA(color: Color): {
9
- r: number;
10
- g: number;
11
- b: number;
12
- a: number;
13
- };
14
- export declare function formatHSLA(color: Color): string;
15
- export declare function toHSLA(color: Color): {
16
- h: number;
17
- s: number;
18
- l: number;
19
- a: number;
20
- };
21
- export declare function formatHWBA(color: Color): string;
22
- export declare function toHWBA(color: Color): {
23
- h: number;
24
- w: number;
25
- b: number;
26
- a: number;
27
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import type { Color } from './core';
2
- /**
3
- * Modifies color alpha channel.
4
- * @param color - Color
5
- * @param value - Value in the range [0, 1]
6
- */
7
- export declare function alpha(color: Color, value: number): Color;
8
- /**
9
- * Darkens a color.
10
- * @param color - Color
11
- * @param coefficient - Multiplier in the range [0, 1]
12
- */
13
- export declare function darken(color: Color, coefficient: number): Color;
14
- /**
15
- * Lighten a color.
16
- * @param color - Color
17
- * @param coefficient - Multiplier in the range [0, 1]
18
- */
19
- export declare function lighten(color: Color, coefficient: number): Color;
20
- /**
21
- * Blend (aka mix) two colors together.
22
- * @param background The background color
23
- * @param overlay The overlay color that is affected by @opacity
24
- * @param opacity Opacity (alpha) for @overlay
25
- * @param [gamma=1.0] Gamma correction coefficient. `1.0` to match browser behavior, `2.2` for gamma-corrected blending.
26
- */
27
- export declare function blend(background: Color, overlay: Color, opacity: number, gamma?: number): number;
28
- /**
29
- * The relative brightness of any point in a color space, normalized to 0 for
30
- * darkest black and 1 for lightest white.
31
- * @returns The relative brightness of the color in the range 0 - 1, with 3 digits precision
32
- */
33
- export declare function getLuminance(color: Color): number;
@@ -1,95 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.alpha = alpha;
27
- exports.darken = darken;
28
- exports.lighten = lighten;
29
- exports.blend = blend;
30
- exports.getLuminance = getLuminance;
31
- const core = __importStar(require("./core"));
32
- const { getRed, getGreen, getBlue, getAlpha, setAlpha, newColor } = core;
33
- /**
34
- * Modifies color alpha channel.
35
- * @param color - Color
36
- * @param value - Value in the range [0, 1]
37
- */
38
- function alpha(color, value) {
39
- return setAlpha(color, Math.round(value * 255));
40
- }
41
- /**
42
- * Darkens a color.
43
- * @param color - Color
44
- * @param coefficient - Multiplier in the range [0, 1]
45
- */
46
- function darken(color, coefficient) {
47
- const r = getRed(color);
48
- const g = getGreen(color);
49
- const b = getBlue(color);
50
- const a = getAlpha(color);
51
- const factor = 1 - coefficient;
52
- return newColor(r * factor, g * factor, b * factor, a);
53
- }
54
- /**
55
- * Lighten a color.
56
- * @param color - Color
57
- * @param coefficient - Multiplier in the range [0, 1]
58
- */
59
- function lighten(color, coefficient) {
60
- const r = getRed(color);
61
- const g = getGreen(color);
62
- const b = getBlue(color);
63
- const a = getAlpha(color);
64
- return newColor(r + (255 - r) * coefficient, g + (255 - g) * coefficient, b + (255 - b) * coefficient, a);
65
- }
66
- /**
67
- * Blend (aka mix) two colors together.
68
- * @param background The background color
69
- * @param overlay The overlay color that is affected by @opacity
70
- * @param opacity Opacity (alpha) for @overlay
71
- * @param [gamma=1.0] Gamma correction coefficient. `1.0` to match browser behavior, `2.2` for gamma-corrected blending.
72
- */
73
- function blend(background, overlay, opacity, gamma = 1.0) {
74
- const blendChannel = (b, o) => Math.round((b ** (1 / gamma) * (1 - opacity) + o ** (1 / gamma) * opacity) ** gamma);
75
- const r = blendChannel(getRed(background), getRed(overlay));
76
- const g = blendChannel(getGreen(background), getGreen(overlay));
77
- const b = blendChannel(getBlue(background), getBlue(overlay));
78
- return newColor(r, g, b, 255);
79
- }
80
- /**
81
- * The relative brightness of any point in a color space, normalized to 0 for
82
- * darkest black and 1 for lightest white.
83
- * @returns The relative brightness of the color in the range 0 - 1, with 3 digits precision
84
- */
85
- function getLuminance(color) {
86
- const r = getRed(color) / 255;
87
- const g = getGreen(color) / 255;
88
- const b = getBlue(color) / 255;
89
- const apply = (v) => v <= 0.03928 ? v / 12.92 : ((v + 0.055) / 1.055) ** 2.4;
90
- const r1 = apply(r);
91
- const g1 = apply(g);
92
- const b1 = apply(b);
93
- return Math.round((0.2126 * r1 + 0.7152 * g1 + 0.0722 * b1) * 1000) / 1000;
94
- }
95
- //# sourceMappingURL=functions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
package/build/parse.d.ts DELETED
@@ -1,17 +0,0 @@
1
- import { Color } from './core';
2
- /**
3
- * Parse CSS color
4
- * @param color CSS color string: #xxx, #xxxxxx, #xxxxxxxx, rgb(), rgba(), hsl(), hsla(), color()
5
- */
6
- export declare function parse(color: string): Color;
7
- /**
8
- * Parse hexadecimal CSS color
9
- * @param color Hex color string: #xxx, #xxxxxx, #xxxxxxxx
10
- */
11
- export declare function parseHex(color: string): Color;
12
- /**
13
- * Parse CSS color
14
- * https://developer.mozilla.org/en-US/docs/Web/CSS/color_value
15
- * @param color CSS color string: rgb(), rgba(), hsl(), hsla(), color()
16
- */
17
- export declare function parseColor(color: string): Color;