@tempots/std 0.9.6 → 0.10.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.
Files changed (89) hide show
  1. package/README.md +1 -3
  2. package/array.cjs +1 -0
  3. package/array.d.ts +49 -0
  4. package/array.js +223 -0
  5. package/bigint.cjs +1 -0
  6. package/bigint.d.ts +18 -0
  7. package/bigint.js +96 -0
  8. package/boolean.cjs +1 -0
  9. package/boolean.d.ts +23 -0
  10. package/boolean.js +44 -0
  11. package/domain.cjs +1 -0
  12. package/domain.d.ts +22 -0
  13. package/domain.js +1 -0
  14. package/equal.cjs +1 -0
  15. package/equal.d.ts +3 -0
  16. package/equal.js +68 -0
  17. package/function.cjs +1 -0
  18. package/function.d.ts +20 -0
  19. package/function.js +29 -0
  20. package/index.cjs +1 -0
  21. package/index.d.ts +0 -0
  22. package/index.js +1 -0
  23. package/maybe.cjs +1 -0
  24. package/maybe.d.ts +9 -0
  25. package/maybe.js +9 -0
  26. package/number.cjs +1 -0
  27. package/number.d.ts +101 -0
  28. package/number.js +103 -0
  29. package/object.cjs +1 -0
  30. package/object.d.ts +8 -0
  31. package/object.js +30 -0
  32. package/package.json +55 -25
  33. package/regexp.cjs +1 -0
  34. package/regexp.d.ts +10 -0
  35. package/regexp.js +14 -0
  36. package/string.cjs +3 -0
  37. package/string.d.ts +312 -0
  38. package/string.js +396 -0
  39. package/src/arrays.ts +0 -296
  40. package/src/async-result.ts +0 -103
  41. package/src/bigint.ts +0 -111
  42. package/src/booleans.ts +0 -73
  43. package/src/colors/cmyk.ts +0 -84
  44. package/src/colors/convert.ts +0 -1093
  45. package/src/colors/hsl.ts +0 -73
  46. package/src/colors/hsla.ts +0 -45
  47. package/src/colors/hsluv.ts +0 -73
  48. package/src/colors/hsv.ts +0 -75
  49. package/src/colors/lab.ts +0 -69
  50. package/src/colors/lch.ts +0 -53
  51. package/src/colors/luv.ts +0 -56
  52. package/src/colors/rgb.ts +0 -55
  53. package/src/colors/rgba.ts +0 -53
  54. package/src/colors/srgb.ts +0 -72
  55. package/src/colors/xyz.ts +0 -52
  56. package/src/edit.ts +0 -29
  57. package/src/equals.ts +0 -116
  58. package/src/functions.ts +0 -108
  59. package/src/json.ts +0 -52
  60. package/src/match.ts +0 -88
  61. package/src/maybe.ts +0 -32
  62. package/src/memoize.ts +0 -9
  63. package/src/newtype.ts +0 -59
  64. package/src/numbers.ts +0 -222
  65. package/src/objects.ts +0 -47
  66. package/src/ord.ts +0 -79
  67. package/src/reg-exps.ts +0 -48
  68. package/src/result.ts +0 -140
  69. package/src/strings.ts +0 -768
  70. package/src/types/assert.ts +0 -96
  71. package/src/types/differentiate.ts +0 -89
  72. package/src/types/functions.ts +0 -114
  73. package/src/types/generic.ts +0 -42
  74. package/src/types/objects.ts +0 -212
  75. package/src/types/tuples.ts +0 -244
  76. package/src/types/utility.ts +0 -3
  77. package/src/uuid.ts +0 -61
  78. package/src/validation.ts +0 -69
  79. package/test/arrays.spec.ts +0 -410
  80. package/test/colors.spec.ts +0 -406
  81. package/test/commmon.ts +0 -9
  82. package/test/equals.spec.ts +0 -165
  83. package/test/functions.spec.ts +0 -9
  84. package/test/index.d.ts +0 -20
  85. package/test/objects.spec.ts +0 -22
  86. package/test/reg-exps.spec.ts +0 -33
  87. package/test/strings.spec.ts +0 -333
  88. package/test/uuid.spec.ts +0 -35
  89. package/tsconfig.json +0 -19
@@ -1,1093 +0,0 @@
1
- import { CMYK } from './cmyk'
2
- import { HSL } from './hsl'
3
- import { HSLuv } from './hsluv'
4
- import { HSV } from './hsv'
5
- import { LAB } from './lab'
6
- import { LCH } from './lch'
7
- import { LUV } from './luv'
8
- import { RGB } from './rgb'
9
- import { SRGB } from './srgb'
10
- import { XYZ } from './xyz'
11
-
12
- const kappa = 24389 / 27
13
- const epsilon = 216 / 24389
14
-
15
- const mR0 = 3.240969941904521
16
- const mR1 = -1.537383177570093
17
- const mR2 = -0.498610760293
18
- const mG0 = -0.96924363628087
19
- const mG1 = 1.87596750150772
20
- const mG2 = 0.041555057407175
21
- const mB0 = 0.055630079696993
22
- const mB1 = -0.20397695888897
23
- const mB2 = 1.056971514242878
24
-
25
- export const WHITE_REFERENCE: [number, number, number] = [0.95047, 1, 1.08883]
26
-
27
- function distanceFromOriginAngle (
28
- slope: number,
29
- intercept: number,
30
- angle: number
31
- ): number {
32
- const d = intercept / (Math.sin(angle) - slope * Math.cos(angle))
33
- if (d < 0) {
34
- return Infinity
35
- } else {
36
- return d
37
- }
38
- }
39
-
40
- function calculateBoundingLines (
41
- l: number
42
- ): [
43
- number,
44
- number,
45
- number,
46
- number,
47
- number,
48
- number,
49
- number,
50
- number,
51
- number,
52
- number,
53
- number,
54
- number
55
- ] {
56
- const sub1 = (l + 16) ** 3 / 1560896
57
- const sub2 = sub1 > epsilon ? sub1 : l / kappa
58
- const s1r = sub2 * (284517 * mR0 - 94839 * mR2)
59
- const s2r = sub2 * (838422 * mR2 + 769860 * mR1 + 731718 * mR0)
60
- const s3r = sub2 * (632260 * mR2 - 126452 * mR1)
61
- const s1g = sub2 * (284517 * mG0 - 94839 * mG2)
62
- const s2g = sub2 * (838422 * mG2 + 769860 * mG1 + 731718 * mG0)
63
- const s3g = sub2 * (632260 * mG2 - 126452 * mG1)
64
- const s1b = sub2 * (284517 * mB0 - 94839 * mB2)
65
- const s2b = sub2 * (838422 * mB2 + 769860 * mB1 + 731718 * mB0)
66
- const s3b = sub2 * (632260 * mB2 - 126452 * mB1)
67
- const r0s = s1r / s3r
68
- const r0i = (s2r * l) / s3r
69
- const r1s = s1r / (s3r + 126452)
70
- const r1i = ((s2r - 769860) * l) / (s3r + 126452)
71
- const g0s = s1g / s3g
72
- const g0i = (s2g * l) / s3g
73
- const g1s = s1g / (s3g + 126452)
74
- const g1i = ((s2g - 769860) * l) / (s3g + 126452)
75
- const b0s = s1b / s3b
76
- const b0i = (s2b * l) / s3b
77
- const b1s = s1b / (s3b + 126452)
78
- const b1i = ((s2b - 769860) * l) / (s3b + 126452)
79
- return [r0s, r0i, r1s, r1i, g0s, g0i, g1s, g1i, b0s, b0i, b1s, b1i]
80
- }
81
-
82
- function calcMaxChromaHsluv (
83
- h: number,
84
- r0s: number,
85
- r0i: number,
86
- r1s: number,
87
- r1i: number,
88
- g0s: number,
89
- g0i: number,
90
- g1s: number,
91
- g1i: number,
92
- b0s: number,
93
- b0i: number,
94
- b1s: number,
95
- b1i: number
96
- ): number {
97
- const hueRad = (h / 180) * Math.PI
98
- const r0 = distanceFromOriginAngle(r0s, r0i, hueRad)
99
- const r1 = distanceFromOriginAngle(r1s, r1i, hueRad)
100
- const g0 = distanceFromOriginAngle(g0s, g0i, hueRad)
101
- const g1 = distanceFromOriginAngle(g1s, g1i, hueRad)
102
- const b0 = distanceFromOriginAngle(b0s, b0i, hueRad)
103
- const b1 = distanceFromOriginAngle(b1s, b1i, hueRad)
104
- return Math.min(r0, r1, g0, g1, b0, b1)
105
- }
106
-
107
- export const Direct = {
108
- cmyk2rgb ([c, m, y, k]: [c: number, m: number, y: number, k: number]): [
109
- number,
110
- number,
111
- number
112
- ] {
113
- const r = (1 - c) * (1 - k)
114
- const g = (1 - m) * (1 - k)
115
- const b = (1 - y) * (1 - k)
116
- return [r, g, b]
117
- },
118
- hsl2hsv ([h, s, l]: [h: number, s: number, l: number]): [
119
- number,
120
- number,
121
- number
122
- ] {
123
- const v = l < 0.5 ? l * (1 + s) : l + s - l * s
124
- const m = l + l - v
125
- const sv = v !== 0 ? (v - m) / v : 0
126
- return [h, sv, v]
127
- },
128
- hsv2hsl ([h, s, v]: [h: number, s: number, v: number]): [
129
- number,
130
- number,
131
- number
132
- ] {
133
- const l = ((2 - s) * v) / 2
134
- if (l === 0) {
135
- return [h, 0, l]
136
- } else if (l === 1) {
137
- return [h, 0, l]
138
- } else if (l < 0.5) {
139
- return [h, (s * v) / (l * 2), l]
140
- } else {
141
- return [h, (s * v) / (2 - l * 2), l]
142
- }
143
- },
144
- hsl2rgb ([h, s, l]: [h: number, s: number, l: number]): [
145
- number,
146
- number,
147
- number
148
- ] {
149
- const a = s * Math.min(l, 1 - l)
150
- const f = (n: number, k = (n + h / 30) % 12): number =>
151
- l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1)
152
- return [f(0), f(8), f(4)]
153
- },
154
- lab2lch ([l, a, b]: [l: number, a: number, b: number]): [
155
- number,
156
- number,
157
- number
158
- ] {
159
- const h = (Math.atan2(b, a) * 180) / Math.PI
160
- if (h > 0) {
161
- return [l, Math.sqrt(a * a + b * b), h]
162
- } else {
163
- return [l, Math.sqrt(a * a + b * b), h + 360]
164
- }
165
- },
166
- lab2xyz (
167
- [l, a, b]: [l: number, a: number, b: number],
168
- [rx, ry, rz]: [number, number, number]
169
- ): [number, number, number] {
170
- const fy = (l + 16) / 116
171
- const fx = a / 500 + fy
172
- const fz = fy - b / 200
173
- const x = rx * (fx ** 3 > epsilon ? fx ** 3 : (116 * fx - 16) / kappa)
174
- const y = ry * (l > kappa * epsilon ? ((l + 16) / 116) ** 3 : l / kappa)
175
- const z = rz * (fz ** 3 > epsilon ? fz ** 3 : (116 * fz - 16) / kappa)
176
- return [x * 100, y * 100, z * 100]
177
- },
178
- lch2lab ([l, c, h]: [l: number, c: number, h: number]): [
179
- number,
180
- number,
181
- number
182
- ] {
183
- const hrad = (h * Math.PI) / 180
184
- return [l, c * Math.cos(hrad), c * Math.sin(hrad)]
185
- },
186
- luv2xyz (
187
- [l, u, v]: [l: number, u: number, v: number],
188
- [rx, ry, rz]: [number, number, number]
189
- ): [number, number, number] {
190
- if (l === 0) {
191
- return [0, 0, 0]
192
- }
193
- const u0 = (4 * rx) / (rx + 15 * ry + 3 * rz)
194
- const v0 = (9 * ry) / (rx + 15 * ry + 3 * rz)
195
- const a = (1 / 3) * ((52 * l) / (u + 13 * l * u0) - 1)
196
- const y = l > kappa * epsilon ? ((l + 16) / 116) ** 3 : l / kappa
197
- const b = -5 * y
198
- const c = -1 / 3
199
- const d = y * ((39 * l) / (v + 13 * l * v0) - 5)
200
- const x = (d - b) / (a - c)
201
- const z = x * a + b
202
- return [x * 100, y * 100, z * 100]
203
- },
204
- rgb2cmyk ([r, g, b]: [r: number, g: number, b: number]): [
205
- number,
206
- number,
207
- number,
208
- number
209
- ] {
210
- const k = 1 - Math.max(r, g, b)
211
- const c = (1 - r - k) / (1 - k)
212
- const m = (1 - g - k) / (1 - k)
213
- const y = (1 - b - k) / (1 - k)
214
- return [c, m, y, k]
215
- },
216
- rgb2hsl ([r, g, b]: [r: number, g: number, b: number]): [
217
- number,
218
- number,
219
- number
220
- ] {
221
- const a = Math.max(r, g, b)
222
- const n = a - Math.min(r, g, b)
223
- const f = 1 - Math.abs(a + a - n - 1)
224
- const h =
225
- n === 0 ? 0 : (a === r ? (g - b) / n : a === g ? 2 + (b - r) / n : 4 + (r - g) / n)
226
- return [60 * (h < 0 ? h + 6 : h), f !== 0 ? n / f : 0, (a + a - n) / 2]
227
- },
228
- rgb2xyz ([r, g, b]: [r: number, g: number, b: number]): [
229
- number,
230
- number,
231
- number
232
- ] {
233
- if (r > 0.04045) {
234
- r = Math.pow((r + 0.055) / 1.055, 2.4)
235
- } else {
236
- r = r / 12.92
237
- }
238
- if (g > 0.04045) {
239
- g = Math.pow((g + 0.055) / 1.055, 2.4)
240
- } else {
241
- g = g / 12.92
242
- }
243
- if (b > 0.04045) {
244
- b = Math.pow((b + 0.055) / 1.055, 2.4)
245
- } else {
246
- b = b / 12.92
247
- }
248
- return [
249
- (r * 0.4124564 + g * 0.3575761 + b * 0.1804375) * 100,
250
- (r * 0.2126729 + g * 0.7151522 + b * 0.072175) * 100,
251
- (r * 0.0193339 + g * 0.119192 + b * 0.9503041) * 100
252
- ]
253
- },
254
- xyz2lab (
255
- [x, y, z]: [number, number, number],
256
- [rx, ry, rz]: [number, number, number]
257
- ): [number, number, number] {
258
- const f = (t: number): number =>
259
- t > epsilon ? Math.pow(t, 1 / 3) : (116 * t - 16) / kappa
260
- const l = 116 * f(y / ry / 100) - 16
261
- const a = 500 * (f(x / rx / 100) - f(y / ry / 100))
262
- const b = 200 * (f(y / ry / 100) - f(z / rz / 100))
263
- return [l, a, b]
264
- },
265
- xyz2luv (
266
- [x, y, z]: [number, number, number],
267
- [rx, ry, rz]: [number, number, number]
268
- ): [number, number, number] {
269
- x /= 100
270
- y /= 100
271
- z /= 100
272
- const yr = y / ry
273
- const up = (4 * x) / (x + 15 * y + 3 * z)
274
- const vp = (9 * y) / (x + 15 * y + 3 * z)
275
- const upr = (4 * rx) / (rx + 15 * ry + 3 * rz)
276
- const vpr = (9 * ry) / (rx + 15 * ry + 3 * rz)
277
- const l = yr > epsilon ? 116 * Math.pow(yr, 1 / 3) - 16 : kappa * yr
278
- const u = 13 * l * (up - upr)
279
- const v = 13 * l * (vp - vpr)
280
- return [l, u, v]
281
- },
282
- xyz2rgb ([x, y, z]: [number, number, number]): [number, number, number] {
283
- function adj (v: number): number {
284
- if (Math.abs(v) < 0.0031308) {
285
- return 12.92 * v
286
- }
287
- return 1.055 * Math.pow(v, 0.41666) - 0.055
288
- }
289
-
290
- x /= 100
291
- y /= 100
292
- z /= 100
293
-
294
- const r = adj(x * 3.2404542 + y * -1.5371385 + z * -0.4985314)
295
- const g = adj(x * -0.969266 + y * 1.8760108 + z * 0.041556)
296
- const b = adj(x * 0.0556434 + y * -0.2040259 + z * 1.0572252)
297
- return [r, g, b]
298
- },
299
- hsluv2lch: ([h, s, l]: [number, number, number]): [
300
- number,
301
- number,
302
- number
303
- ] => {
304
- let lchL = 0
305
- let lchC = 0
306
- if (l > 99.9999999) {
307
- lchL = 100
308
- } else if (l >= 0.00000001) {
309
- lchL = l
310
- const [r0s, r0i, r1s, r1i, g0s, g0i, g1s, g1i, b0s, b0i, b1s, b1i] =
311
- calculateBoundingLines(l)
312
- const max = calcMaxChromaHsluv(
313
- h,
314
- r0s,
315
- r0i,
316
- r1s,
317
- r1i,
318
- g0s,
319
- g0i,
320
- g1s,
321
- g1i,
322
- b0s,
323
- b0i,
324
- b1s,
325
- b1i
326
- )
327
- lchC = (max / 100) * s
328
- }
329
- return [lchL, lchC, h]
330
- },
331
- lch2hsluv: ([l, c, h]: [number, number, number]): [
332
- number,
333
- number,
334
- number
335
- ] => {
336
- let hsluvS = 0
337
- let hsluvL = 0
338
- if (l > 99.9999999) {
339
- hsluvL = 100
340
- } else if (l >= 0.00000001) {
341
- hsluvL = l
342
- const [r0s, r0i, r1s, r1i, g0s, g0i, g1s, g1i, b0s, b0i, b1s, b1i] =
343
- calculateBoundingLines(l)
344
- const max = calcMaxChromaHsluv(
345
- h,
346
- r0s,
347
- r0i,
348
- r1s,
349
- r1i,
350
- g0s,
351
- g0i,
352
- g1s,
353
- g1i,
354
- b0s,
355
- b0i,
356
- b1s,
357
- b1i
358
- )
359
- hsluvS = (c / max) * 100
360
- hsluvL = l
361
- }
362
- return [h, hsluvS, hsluvL]
363
- }
364
- }
365
-
366
- export const Channel = {
367
- ...Direct,
368
- cmyk2hsl: (cmyk: [number, number, number, number]) => {
369
- const rgb = Channel.cmyk2rgb(cmyk)
370
- return Channel.rgb2hsl(rgb)
371
- },
372
- cmyk2hsluv: (
373
- cmyk: [number, number, number, number],
374
- whiteReference: [number, number, number]
375
- ) => {
376
- const lch = Channel.cmyk2lch(cmyk, whiteReference)
377
- return Channel.lch2hsluv(lch)
378
- },
379
- cmyk2hsv: (cmyk: [number, number, number, number]) => {
380
- const rgb = Channel.cmyk2rgb(cmyk)
381
- return Channel.rgb2hsv(rgb)
382
- },
383
- cmyk2lab: (
384
- cmyk: [number, number, number, number],
385
- whiteReference: [number, number, number]
386
- ) => {
387
- const rgb = Channel.cmyk2rgb(cmyk)
388
- return Channel.rgb2lab(rgb, whiteReference)
389
- },
390
- cmyk2lch: (
391
- cmyk: [number, number, number, number],
392
- whiteReference: [number, number, number]
393
- ) => {
394
- const rgb = Channel.cmyk2rgb(cmyk)
395
- return Channel.rgb2lch(rgb, whiteReference)
396
- },
397
- cmyk2luv: (
398
- cmyk: [number, number, number, number],
399
- whiteReference: [number, number, number]
400
- ) => {
401
- const rgb = Channel.cmyk2rgb(cmyk)
402
- return Channel.rgb2luv(rgb, whiteReference)
403
- },
404
- cmyk2xyz: (cmyk: [number, number, number, number]) => {
405
- const rgb = Channel.cmyk2rgb(cmyk)
406
- return Channel.rgb2xyz(rgb)
407
- },
408
- hsl2cmyk: (hsl: [number, number, number]) => {
409
- const rgb = Channel.hsl2rgb(hsl)
410
- return Channel.rgb2cmyk(rgb)
411
- },
412
- hsl2lab: (
413
- hsl: [number, number, number],
414
- whiteReference: [number, number, number]
415
- ) => {
416
- const rgb = Channel.hsl2rgb(hsl)
417
- return Channel.rgb2lab(rgb, whiteReference)
418
- },
419
- hsl2hsluv: (
420
- hsl: [number, number, number],
421
- whiteReference: [number, number, number]
422
- ) => {
423
- const lch = Channel.hsl2lch(hsl, whiteReference)
424
- return Channel.lch2hsluv(lch)
425
- },
426
- hsl2lch: (
427
- hsl: [number, number, number],
428
- whiteReference: [number, number, number]
429
- ) => {
430
- const rgb = Channel.hsl2rgb(hsl)
431
- return Channel.rgb2lch(rgb, whiteReference)
432
- },
433
- hsl2luv: (
434
- hsl: [number, number, number],
435
- whiteReference: [number, number, number]
436
- ) => {
437
- const rgb = Channel.hsl2rgb(hsl)
438
- return Channel.rgb2luv(rgb, whiteReference)
439
- },
440
- hsl2xyz: (hsl: [number, number, number]) => {
441
- const rgb = Channel.hsl2rgb(hsl)
442
- return Channel.rgb2xyz(rgb)
443
- },
444
- hsluv2cmyk: (
445
- hsluv: [number, number, number],
446
- whiteReference: [number, number, number]
447
- ) => {
448
- const lch = Channel.hsluv2lch(hsluv)
449
- return Channel.lch2cmyk(lch, whiteReference)
450
- },
451
- hsluv2hsl: (
452
- hsluv: [number, number, number],
453
- whiteReference: [number, number, number]
454
- ) => {
455
- const lch = Channel.hsluv2lch(hsluv)
456
- return Channel.lch2hsl(lch, whiteReference)
457
- },
458
- hsluv2lab: (hsluv: [number, number, number]) => {
459
- const lch = Channel.hsluv2lch(hsluv)
460
- return Channel.lch2lab(lch)
461
- },
462
- hsluv2luv (
463
- hsluv: [number, number, number],
464
- whiteReference: [number, number, number]
465
- ) {
466
- const lch = Channel.hsluv2lch(hsluv)
467
- return Channel.lch2luv(lch, whiteReference)
468
- },
469
- hsluv2hsv (
470
- hsluv: [number, number, number],
471
- whiteReference: [number, number, number]
472
- ) {
473
- const lch = Channel.hsluv2lch(hsluv)
474
- return Channel.lch2hsv(lch, whiteReference)
475
- },
476
- hsluv2rgb (
477
- hsluv: [number, number, number],
478
- whiteReference: [number, number, number]
479
- ) {
480
- const lch = Channel.hsluv2lch(hsluv)
481
- return Channel.lch2rgb(lch, whiteReference)
482
- },
483
- hsluv2xyz: (
484
- hsluv: [number, number, number],
485
- whiteReference: [number, number, number]
486
- ) => {
487
- const lch = Channel.hsluv2lch(hsluv)
488
- return Channel.lch2xyz(lch, whiteReference)
489
- },
490
- hsv2cmyk: (hsv: [number, number, number]) => {
491
- const hsl = Channel.hsv2hsl(hsv)
492
- return Channel.hsl2cmyk(hsl)
493
- },
494
- hsv2hsluv: (
495
- hsv: [number, number, number],
496
- whiteReference: [number, number, number]
497
- ) => {
498
- const hsl = Channel.hsv2hsl(hsv)
499
- return Channel.hsl2hsluv(hsl, whiteReference)
500
- },
501
- hsv2lab: (
502
- hsv: [number, number, number],
503
- whiteReference: [number, number, number]
504
- ) => {
505
- const rgb = Channel.hsv2rgb(hsv)
506
- return Channel.rgb2lab(rgb, whiteReference)
507
- },
508
- hsv2lch: (
509
- hsv: [number, number, number],
510
- whiteReference: [number, number, number]
511
- ) => {
512
- const rgb = Channel.hsv2rgb(hsv)
513
- return Channel.rgb2lch(rgb, whiteReference)
514
- },
515
- hsv2luv: (
516
- hsv: [number, number, number],
517
- whiteReference: [number, number, number]
518
- ) => {
519
- const rgb = Channel.hsv2rgb(hsv)
520
- return Channel.rgb2luv(rgb, whiteReference)
521
- },
522
- hsv2rgb: (hsv: [number, number, number]) => {
523
- const hsl = Channel.hsv2hsl(hsv)
524
- return Channel.hsl2rgb(hsl)
525
- },
526
- hsv2xyz: (hsv: [number, number, number]) => {
527
- const hsl = Channel.hsv2hsl(hsv)
528
- return Channel.hsl2xyz(hsl)
529
- },
530
- lab2cmyk: (
531
- lab: [number, number, number],
532
- whiteReference: [number, number, number]
533
- ) => {
534
- const rgb = Channel.lab2rgb(lab, whiteReference)
535
- return Channel.rgb2cmyk(rgb)
536
- },
537
- lab2hsl: (
538
- lab: [number, number, number],
539
- whiteReference: [number, number, number]
540
- ) => {
541
- const rgb = Channel.lab2rgb(lab, whiteReference)
542
- return Channel.rgb2hsl(rgb)
543
- },
544
- lab2hsluv: (lab: [number, number, number]) => {
545
- const lch = Channel.lab2lch(lab)
546
- return Channel.lch2hsluv(lch)
547
- },
548
- lab2hsv: (
549
- lab: [number, number, number],
550
- whiteReference: [number, number, number]
551
- ) => {
552
- const rgb = Channel.lab2rgb(lab, whiteReference)
553
- return Channel.rgb2hsv(rgb)
554
- },
555
- lab2luv: (
556
- lab: [number, number, number],
557
- whiteReference: [number, number, number]
558
- ) => {
559
- const rgb = Channel.lab2rgb(lab, whiteReference)
560
- return Channel.rgb2luv(rgb, whiteReference)
561
- },
562
- lab2rgb: (
563
- lab: [number, number, number],
564
- whiteReference: [number, number, number]
565
- ) => {
566
- const xyz = Channel.lab2xyz(lab, whiteReference)
567
- return Channel.xyz2rgb(xyz)
568
- },
569
- lch2cmyk: (
570
- lch: [number, number, number],
571
- whiteReference: [number, number, number]
572
- ) => {
573
- const rgb = Channel.lch2rgb(lch, whiteReference)
574
- return Channel.rgb2cmyk(rgb)
575
- },
576
- lch2hsl: (
577
- lch: [number, number, number],
578
- whiteReference: [number, number, number]
579
- ) => {
580
- const rgb = Channel.lch2rgb(lch, whiteReference)
581
- return Channel.rgb2hsl(rgb)
582
- },
583
- lch2hsv: (
584
- lch: [number, number, number],
585
- whiteReference: [number, number, number]
586
- ) => {
587
- const rgb = Channel.lch2rgb(lch, whiteReference)
588
- return Channel.rgb2hsv(rgb)
589
- },
590
- lch2luv: (
591
- lch: [number, number, number],
592
- whiteReference: [number, number, number]
593
- ) => {
594
- const rgb = Channel.lch2rgb(lch, whiteReference)
595
- return Channel.rgb2luv(rgb, whiteReference)
596
- },
597
- lch2rgb: (
598
- lch: [number, number, number],
599
- whiteReference: [number, number, number]
600
- ) => {
601
- const xyz = Channel.lch2xyz(lch, whiteReference)
602
- return Channel.xyz2rgb(xyz)
603
- },
604
- lch2xyz: (
605
- lch: [number, number, number],
606
- whiteReference: [number, number, number]
607
- ) => {
608
- const lab = Channel.lch2lab(lch)
609
- return Channel.lab2xyz(lab, whiteReference)
610
- },
611
- luv2cmyk: (
612
- luv: [number, number, number],
613
- whiteReference: [number, number, number]
614
- ) => {
615
- const rgb = Channel.luv2rgb(luv, whiteReference)
616
- return Channel.rgb2cmyk(rgb)
617
- },
618
- luv2hsl: (
619
- luv: [number, number, number],
620
- whiteReference: [number, number, number]
621
- ) => {
622
- const rgb = Channel.luv2rgb(luv, whiteReference)
623
- return Channel.rgb2hsl(rgb)
624
- },
625
- luv2hsluv: (
626
- luv: [number, number, number],
627
- whiteReference: [number, number, number]
628
- ) => {
629
- const lch = Channel.luv2lch(luv, whiteReference)
630
- return Channel.lch2hsluv(lch)
631
- },
632
- luv2hsv: (
633
- luv: [number, number, number],
634
- whiteReference: [number, number, number]
635
- ) => {
636
- const rgb = Channel.luv2rgb(luv, whiteReference)
637
- return Channel.rgb2hsv(rgb)
638
- },
639
- luv2lab: (
640
- luv: [number, number, number],
641
- whiteReference: [number, number, number]
642
- ) => {
643
- const rgb = Channel.luv2rgb(luv, whiteReference)
644
- return Channel.rgb2lab(rgb, whiteReference)
645
- },
646
- luv2lch: (
647
- luv: [number, number, number],
648
- whiteReference: [number, number, number]
649
- ) => {
650
- const rgb = Channel.luv2rgb(luv, whiteReference)
651
- return Channel.rgb2lch(rgb, whiteReference)
652
- },
653
- luv2rgb: (
654
- luv: [number, number, number],
655
- whiteReference: [number, number, number]
656
- ) => {
657
- const xyz = Channel.luv2xyz(luv, whiteReference)
658
- return Channel.xyz2rgb(xyz)
659
- },
660
- rgb2hsluv: (
661
- rgb: [number, number, number],
662
- whiteReference: [number, number, number]
663
- ) => {
664
- const luv = Channel.rgb2luv(rgb, whiteReference)
665
- return Channel.luv2hsluv(luv, whiteReference)
666
- },
667
- rgb2hsv: (rgb: [number, number, number]) => {
668
- const hsl = Channel.rgb2hsl(rgb)
669
- return Channel.hsl2hsv(hsl)
670
- },
671
- rgb2lab: (
672
- rgb: [number, number, number],
673
- whiteReference: [number, number, number]
674
- ) => {
675
- const xyz = Channel.rgb2xyz(rgb)
676
- return Channel.xyz2lab(xyz, whiteReference)
677
- },
678
- rgb2lch: (
679
- rgb: [number, number, number],
680
- whiteReference: [number, number, number]
681
- ) => {
682
- const lab = Channel.rgb2lab(rgb, whiteReference)
683
- return Channel.lab2lch(lab)
684
- },
685
- rgb2luv: (
686
- rgb: [number, number, number],
687
- whiteReference: [number, number, number]
688
- ) => {
689
- const xyz = Direct.rgb2xyz(rgb)
690
- return Direct.xyz2luv(xyz, whiteReference)
691
- },
692
- xyz2cmyk: (xyz: [number, number, number]) => {
693
- const rgb = Channel.xyz2rgb(xyz)
694
- return Channel.rgb2cmyk(rgb)
695
- },
696
- xyz2hsl: (xyz: [number, number, number]) => {
697
- const rgb = Channel.xyz2rgb(xyz)
698
- return Channel.rgb2hsl(rgb)
699
- },
700
- xyz2hsluv: (
701
- xyz: [number, number, number],
702
- whiteReference: [number, number, number]
703
- ) => {
704
- const luv = Channel.xyz2luv(xyz, whiteReference)
705
- return Channel.luv2hsluv(luv, whiteReference)
706
- },
707
- xyz2hsv: (xyz: [number, number, number]) => {
708
- const rgb = Channel.xyz2rgb(xyz)
709
- return Channel.rgb2hsv(rgb)
710
- },
711
- xyz2lch: (
712
- xyz: [number, number, number],
713
- whiteReference: [number, number, number]
714
- ) => {
715
- const lab = Channel.xyz2lab(xyz, whiteReference)
716
- return Channel.lab2lch(lab)
717
- }
718
- }
719
-
720
- export function cmyk2luv (cmyk: CMYK, whiteReference = WHITE_REFERENCE): LUV {
721
- return LUV.ofChannels(Channel.cmyk2luv(cmyk.toChannels(), whiteReference))
722
- }
723
-
724
- export function cmyk2hsl (cmyk: CMYK): HSL {
725
- return HSL.ofChannels(Channel.cmyk2hsl(cmyk.toChannels()))
726
- }
727
-
728
- export function cmyk2hsluv (
729
- cmyk: CMYK,
730
- whiteReference = WHITE_REFERENCE
731
- ): HSLuv {
732
- return HSLuv.ofChannels(Channel.cmyk2hsluv(cmyk.toChannels(), whiteReference))
733
- }
734
-
735
- export function cmyk2hsv (cmyk: CMYK): HSV {
736
- return HSV.ofChannels(Channel.cmyk2hsv(cmyk.toChannels()))
737
- }
738
-
739
- export function cmyk2lab (cmyk: CMYK, whiteReference = WHITE_REFERENCE): LAB {
740
- return LAB.ofChannels(Channel.cmyk2lab(cmyk.toChannels(), whiteReference))
741
- }
742
-
743
- export function cmyk2lch (cmyk: CMYK, whiteReference = WHITE_REFERENCE): LCH {
744
- return LCH.ofChannels(Channel.cmyk2lch(cmyk.toChannels(), whiteReference))
745
- }
746
-
747
- export function cmyk2rgb (cmyk: CMYK): RGB {
748
- return RGB.ofChannels(Channel.cmyk2rgb(cmyk.toChannels()))
749
- }
750
-
751
- export function cmyk2srgb (cmyk: CMYK): SRGB {
752
- return SRGB.ofChannels(Channel.cmyk2rgb(cmyk.toChannels()))
753
- }
754
-
755
- export function cmyk2xyz (cmyk: CMYK): XYZ {
756
- return XYZ.ofChannels(Channel.cmyk2xyz(cmyk.toChannels()))
757
- }
758
-
759
- export function hsl2cmyk (hsl: HSL): CMYK {
760
- return CMYK.ofChannels(Channel.hsl2cmyk(hsl.toChannels()))
761
- }
762
-
763
- export function hsl2hsluv (hsl: HSL, whiteReference = WHITE_REFERENCE): HSLuv {
764
- return HSLuv.ofChannels(Channel.hsl2hsluv(hsl.toChannels(), whiteReference))
765
- }
766
-
767
- export function hsl2luv (hsl: HSL, whiteReference = WHITE_REFERENCE): LUV {
768
- return LUV.ofChannels(Channel.hsl2luv(hsl.toChannels(), whiteReference))
769
- }
770
-
771
- export function hsl2hsv (hsl: HSL): HSV {
772
- return HSV.ofChannels(Channel.hsl2hsv(hsl.toChannels()))
773
- }
774
-
775
- export function hsl2lab (hsl: HSL, whiteReference = WHITE_REFERENCE): LAB {
776
- return LAB.ofChannels(Channel.hsl2lab(hsl.toChannels(), whiteReference))
777
- }
778
-
779
- export function hsl2lch (hsl: HSL, whiteReference = WHITE_REFERENCE): LCH {
780
- return LCH.ofChannels(Channel.hsl2lch(hsl.toChannels(), whiteReference))
781
- }
782
-
783
- export function hsl2rgb (hsl: HSL): RGB {
784
- return RGB.ofChannels(Channel.hsl2rgb(hsl.toChannels()))
785
- }
786
-
787
- export function hsl2srgb (hsl: HSL): SRGB {
788
- return SRGB.ofChannels(Channel.hsl2rgb(hsl.toChannels()))
789
- }
790
-
791
- export function hsl2xyz (hsl: HSL): XYZ {
792
- return XYZ.ofChannels(Channel.hsl2xyz(hsl.toChannels()))
793
- }
794
-
795
- export function hsluv2cmyk (
796
- hsluv: HSLuv,
797
- whiteReference = WHITE_REFERENCE
798
- ): CMYK {
799
- return CMYK.ofChannels(Channel.hsluv2cmyk(hsluv.toChannels(), whiteReference))
800
- }
801
-
802
- export function hsluv2hsl (hsluv: HSLuv, whiteReference = WHITE_REFERENCE): HSL {
803
- return HSL.ofChannels(Channel.hsluv2hsl(hsluv.toChannels(), whiteReference))
804
- }
805
-
806
- export function hsluv2luv (hsluv: HSLuv, whiteReference = WHITE_REFERENCE): LUV {
807
- return LUV.ofChannels(Channel.hsluv2luv(hsluv.toChannels(), whiteReference))
808
- }
809
-
810
- export function hsluv2hsv (hsluv: HSLuv, whiteReference = WHITE_REFERENCE): HSV {
811
- return HSV.ofChannels(Channel.hsluv2hsv(hsluv.toChannels(), whiteReference))
812
- }
813
-
814
- export function hsluv2lab (hsluv: HSLuv): LAB {
815
- return LAB.ofChannels(Channel.hsluv2lab(hsluv.toChannels()))
816
- }
817
-
818
- export function hsluv2lch (hsluv: HSLuv): LCH {
819
- return LCH.ofChannels(Channel.hsluv2lch(hsluv.toChannels()))
820
- }
821
-
822
- export function hsluv2rgb (hsluv: HSLuv, whiteReference = WHITE_REFERENCE): RGB {
823
- return RGB.ofChannels(Channel.hsluv2rgb(hsluv.toChannels(), whiteReference))
824
- }
825
-
826
- export function hsluv2srgb (
827
- hsluv: HSLuv,
828
- whiteReference = WHITE_REFERENCE
829
- ): SRGB {
830
- return SRGB.ofChannels(Channel.hsluv2rgb(hsluv.toChannels(), whiteReference))
831
- }
832
-
833
- export function hsluv2xyz (hsluv: HSLuv, whiteReference = WHITE_REFERENCE): XYZ {
834
- return XYZ.ofChannels(Channel.hsluv2xyz(hsluv.toChannels(), whiteReference))
835
- }
836
-
837
- export function hsv2cmyk (hsv: HSV): CMYK {
838
- return CMYK.ofChannels(Channel.hsv2cmyk(hsv.toChannels()))
839
- }
840
-
841
- export function hsv2hsl (hsv: HSV): HSL {
842
- return HSL.ofChannels(Channel.hsv2hsl(hsv.toChannels()))
843
- }
844
-
845
- export function hsv2hsluv (hsv: HSV, whiteReference = WHITE_REFERENCE): HSLuv {
846
- return HSLuv.ofChannels(Channel.hsv2hsluv(hsv.toChannels(), whiteReference))
847
- }
848
-
849
- export function hsv2lab (hsv: HSV, whiteReference = WHITE_REFERENCE): LAB {
850
- return LAB.ofChannels(Channel.hsv2lab(hsv.toChannels(), whiteReference))
851
- }
852
-
853
- export function hsv2lch (hsv: HSV, whiteReference = WHITE_REFERENCE): LCH {
854
- return LCH.ofChannels(Channel.hsv2lch(hsv.toChannels(), whiteReference))
855
- }
856
-
857
- export function hsv2luv (hsv: HSV, whiteReference = WHITE_REFERENCE): LUV {
858
- return LUV.ofChannels(Channel.hsv2luv(hsv.toChannels(), whiteReference))
859
- }
860
-
861
- export function hsv2rgb (hsv: HSV): RGB {
862
- return RGB.ofChannels(Channel.hsv2rgb(hsv.toChannels()))
863
- }
864
-
865
- export function hsv2srgb (hsv: HSV): SRGB {
866
- return SRGB.ofChannels(Channel.hsv2rgb(hsv.toChannels()))
867
- }
868
-
869
- export function hsv2xyz (hsv: HSV): XYZ {
870
- return XYZ.ofChannels(Channel.hsv2xyz(hsv.toChannels()))
871
- }
872
-
873
- export function lab2cmyk (lab: LAB, whiteReference = WHITE_REFERENCE): CMYK {
874
- return CMYK.ofChannels(Channel.lab2cmyk(lab.toChannels(), whiteReference))
875
- }
876
-
877
- export function lab2hsl (lab: LAB, whiteReference = WHITE_REFERENCE): HSL {
878
- return HSL.ofChannels(Channel.lab2hsl(lab.toChannels(), whiteReference))
879
- }
880
-
881
- export function lab2hsluv (lab: LAB): HSLuv {
882
- return HSLuv.ofChannels(Channel.lab2hsluv(lab.toChannels()))
883
- }
884
-
885
- export function lab2hsv (lab: LAB, whiteReference = WHITE_REFERENCE): HSV {
886
- return HSV.ofChannels(Channel.lab2hsv(lab.toChannels(), whiteReference))
887
- }
888
-
889
- export function lab2lch (lab: LAB): LCH {
890
- return LCH.ofChannels(Channel.lab2lch(lab.toChannels()))
891
- }
892
-
893
- export function lab2luv (lab: LAB, whiteReference = WHITE_REFERENCE): LUV {
894
- return LUV.ofChannels(Channel.lab2luv(lab.toChannels(), whiteReference))
895
- }
896
-
897
- export function lab2rgb (lab: LAB, whiteReference = WHITE_REFERENCE): RGB {
898
- return RGB.ofChannels(Channel.lab2rgb(lab.toChannels(), whiteReference))
899
- }
900
-
901
- export function lab2srgb (lab: LAB, whiteReference = WHITE_REFERENCE): SRGB {
902
- return SRGB.ofChannels(Channel.lab2rgb(lab.toChannels(), whiteReference))
903
- }
904
-
905
- export function lab2xyz (lab: LAB, whiteReference = WHITE_REFERENCE): XYZ {
906
- return XYZ.ofChannels(Channel.lab2xyz(lab.toChannels(), whiteReference))
907
- }
908
-
909
- export function lch2cmyk (lch: LCH, whiteReference = WHITE_REFERENCE): CMYK {
910
- return CMYK.ofChannels(Channel.lch2cmyk(lch.toChannels(), whiteReference))
911
- }
912
-
913
- export function lch2hsl (lch: LCH, whiteReference = WHITE_REFERENCE): HSL {
914
- return HSL.ofChannels(Channel.lch2hsl(lch.toChannels(), whiteReference))
915
- }
916
-
917
- export function lch2hsluv (lch: LCH): HSLuv {
918
- const c = Channel.lch2hsluv(lch.toChannels())
919
- return HSLuv.ofChannels(c)
920
- }
921
-
922
- export function lch2hsv (lch: LCH, whiteReference = WHITE_REFERENCE): HSV {
923
- return HSV.ofChannels(Channel.lch2hsv(lch.toChannels(), whiteReference))
924
- }
925
-
926
- export function lch2lab (lch: LCH): LAB {
927
- return LAB.ofChannels(Channel.lch2lab(lch.toChannels()))
928
- }
929
-
930
- export function lch2luv (lch: LCH, whiteReference = WHITE_REFERENCE): LUV {
931
- return LUV.ofChannels(Channel.lch2luv(lch.toChannels(), whiteReference))
932
- }
933
-
934
- export function lch2rgb (lch: LCH, whiteReference = WHITE_REFERENCE): RGB {
935
- return RGB.ofChannels(Channel.lch2rgb(lch.toChannels(), whiteReference))
936
- }
937
-
938
- export function lch2srgb (lch: LCH, whiteReference = WHITE_REFERENCE): SRGB {
939
- return SRGB.ofChannels(Channel.lch2rgb(lch.toChannels(), whiteReference))
940
- }
941
-
942
- export function lch2xyz (lch: LCH, whiteReference = WHITE_REFERENCE): XYZ {
943
- return XYZ.ofChannels(Channel.lch2xyz(lch.toChannels(), whiteReference))
944
- }
945
-
946
- export function luv2cmyk (luv: LUV, whiteReference = WHITE_REFERENCE): CMYK {
947
- return CMYK.ofChannels(Channel.luv2cmyk(luv.toChannels(), whiteReference))
948
- }
949
-
950
- export function luv2hsl (luv: LUV, whiteReference = WHITE_REFERENCE): HSL {
951
- return HSL.ofChannels(Channel.luv2hsl(luv.toChannels(), whiteReference))
952
- }
953
-
954
- export function luv2hsluv (luv: LUV, whiteReference = WHITE_REFERENCE): HSLuv {
955
- return HSLuv.ofChannels(Channel.luv2hsluv(luv.toChannels(), whiteReference))
956
- }
957
-
958
- export function luv2hsv (luv: LUV, whiteReference = WHITE_REFERENCE): HSV {
959
- return HSV.ofChannels(Channel.luv2hsv(luv.toChannels(), whiteReference))
960
- }
961
-
962
- export function luv2lab (luv: LUV, whiteReference = WHITE_REFERENCE): LAB {
963
- return LAB.ofChannels(Channel.luv2lab(luv.toChannels(), whiteReference))
964
- }
965
-
966
- export function luv2lch (luv: LUV, whiteReference = WHITE_REFERENCE): LCH {
967
- return LCH.ofChannels(Channel.luv2lch(luv.toChannels(), whiteReference))
968
- }
969
-
970
- export function luv2rgb (luv: LUV, whiteReference = WHITE_REFERENCE): RGB {
971
- return RGB.ofChannels(Channel.luv2rgb(luv.toChannels(), whiteReference))
972
- }
973
-
974
- export function luv2srgb (luv: LUV, whiteReference = WHITE_REFERENCE): SRGB {
975
- return SRGB.ofChannels(Channel.luv2rgb(luv.toChannels(), whiteReference))
976
- }
977
-
978
- export function luv2xyz (luv: LUV, whiteReference = WHITE_REFERENCE): XYZ {
979
- return XYZ.ofChannels(Channel.luv2xyz(luv.toChannels(), whiteReference))
980
- }
981
-
982
- export function rgb2cmyk (rgb: RGB): CMYK {
983
- return CMYK.ofChannels(Channel.rgb2cmyk(rgb.toChannels()))
984
- }
985
-
986
- export function rgb2hsl (rgb: RGB): HSL {
987
- return HSL.ofChannels(Channel.rgb2hsl(rgb.toChannels()))
988
- }
989
-
990
- export function rgb2hsluv (rgb: RGB, whiteReference = WHITE_REFERENCE): HSLuv {
991
- return HSLuv.ofChannels(Channel.rgb2hsluv(rgb.toChannels(), whiteReference))
992
- }
993
-
994
- export function rgb2hsv (rgb: RGB): HSV {
995
- return HSV.ofChannels(Channel.rgb2hsv(rgb.toChannels()))
996
- }
997
-
998
- export function rgb2lab (rgb: RGB, whiteReference = WHITE_REFERENCE): LAB {
999
- return LAB.ofChannels(Channel.rgb2lab(rgb.toChannels(), whiteReference))
1000
- }
1001
-
1002
- export function rgb2lch (rgb: RGB, whiteReference = WHITE_REFERENCE): LCH {
1003
- return LCH.ofChannels(Channel.rgb2lch(rgb.toChannels(), whiteReference))
1004
- }
1005
-
1006
- export function rgb2luv (rgb: RGB, whiteReference = WHITE_REFERENCE): LUV {
1007
- return LUV.ofChannels(Channel.rgb2luv(rgb.toChannels(), whiteReference))
1008
- }
1009
-
1010
- export function rgb2srgb (rgb: RGB): SRGB {
1011
- const srgb = rgb.toChannels()
1012
- return SRGB.ofChannels(srgb)
1013
- }
1014
-
1015
- export function rgb2xyz (rgb: RGB): XYZ {
1016
- return XYZ.ofChannels(Channel.rgb2xyz(rgb.toChannels()))
1017
- }
1018
-
1019
- export function srgb2cmyk (srgb: SRGB): CMYK {
1020
- return CMYK.ofChannels(Channel.rgb2cmyk(srgb.toChannels()))
1021
- }
1022
-
1023
- export function srgb2hsv (srgb: SRGB): HSV {
1024
- return HSV.ofChannels(Channel.rgb2hsv(srgb.toChannels()))
1025
- }
1026
-
1027
- export function srgb2hsl (srgb: SRGB): HSL {
1028
- return HSL.ofChannels(Channel.rgb2hsl(srgb.toChannels()))
1029
- }
1030
-
1031
- export function srgb2hsluv (
1032
- srgb: SRGB,
1033
- whiteReference = WHITE_REFERENCE
1034
- ): HSLuv {
1035
- return HSLuv.ofChannels(Channel.rgb2hsluv(srgb.toChannels(), whiteReference))
1036
- }
1037
-
1038
- export function srgb2lab (srgb: SRGB, whiteReference = WHITE_REFERENCE): LAB {
1039
- return LAB.ofChannels(Channel.rgb2lab(srgb.toChannels(), whiteReference))
1040
- }
1041
-
1042
- export function srgb2lch (srgb: SRGB, whiteReference = WHITE_REFERENCE): LCH {
1043
- return LCH.ofChannels(Channel.rgb2lch(srgb.toChannels(), whiteReference))
1044
- }
1045
-
1046
- export function srgb2luv (srgb: SRGB, whiteReference = WHITE_REFERENCE): LUV {
1047
- return LUV.ofChannels(Channel.rgb2luv(srgb.toChannels(), whiteReference))
1048
- }
1049
-
1050
- export function srgb2rgb (srgb: SRGB): RGB {
1051
- const rgb = srgb.toChannels()
1052
- return RGB.ofChannels(rgb)
1053
- }
1054
-
1055
- export function srgb2xyz (srgb: SRGB): XYZ {
1056
- return XYZ.ofChannels(Channel.rgb2xyz(srgb.toChannels()))
1057
- }
1058
-
1059
- export function xyz2cmyk (xyz: XYZ): CMYK {
1060
- return CMYK.ofChannels(Channel.xyz2cmyk(xyz.toChannels()))
1061
- }
1062
-
1063
- export function xyz2hsl (xyz: XYZ): HSL {
1064
- return HSL.ofChannels(Channel.xyz2hsl(xyz.toChannels()))
1065
- }
1066
-
1067
- export function xyz2hsluv (xyz: XYZ, whiteReference = WHITE_REFERENCE): HSLuv {
1068
- return HSLuv.ofChannels(Channel.xyz2hsluv(xyz.toChannels(), whiteReference))
1069
- }
1070
-
1071
- export function xyz2hsv (xyz: XYZ): HSV {
1072
- return HSV.ofChannels(Channel.xyz2hsv(xyz.toChannels()))
1073
- }
1074
-
1075
- export function xyz2lab (xyz: XYZ, whiteReference = WHITE_REFERENCE): LAB {
1076
- return LAB.ofChannels(Channel.xyz2lab(xyz.toChannels(), whiteReference))
1077
- }
1078
-
1079
- export function xyz2lch (xyz: XYZ, whiteReference = WHITE_REFERENCE): LCH {
1080
- return LCH.ofChannels(Channel.xyz2lch(xyz.toChannels(), whiteReference))
1081
- }
1082
-
1083
- export function xyz2luv (xyz: XYZ, whiteReference = WHITE_REFERENCE): LUV {
1084
- return LUV.ofChannels(Channel.xyz2luv(xyz.toChannels(), whiteReference))
1085
- }
1086
-
1087
- export function xyz2rgb (xyz: XYZ): RGB {
1088
- return RGB.ofChannels(Channel.xyz2rgb(xyz.toChannels()))
1089
- }
1090
-
1091
- export function xyz2srgb (xyz: XYZ): SRGB {
1092
- return SRGB.ofChannels(Channel.xyz2rgb(xyz.toChannels()))
1093
- }