toosoon-utils 1.0.6 → 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.
package/lib/colors.js CHANGED
@@ -1,18 +1,34 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hclToRgb = exports.rgbToHcl = exports.deltaE = exports.rgbToLab = exports.labToRgb = exports.hclToLab = exports.labToHcl = exports.hsbToRgb = exports.rgbToHsb = exports.hslToRgb = exports.rgbToHsl = exports.normalizeHslString = exports.darken = exports.lighten = exports.hexToRgb = exports.rgbToHexString = exports.rgbToHex = exports.normalizeHexString = void 0;
4
- var geometry_1 = require("./geometry");
5
- var maths_1 = require("./maths");
1
+ import { W3CX11 } from './constants';
2
+ import { toDegrees, toRadians } from './geometry';
3
+ import { clamp } from './maths';
4
+ /**
5
+ * Normalize a color representation into RGB
6
+ *
7
+ * @param {ColorRepresentation} color Color representation
8
+ * @returns {[number,number,number]} Normalized RGB color
9
+ */
10
+ export function normalizeColor(color) {
11
+ var _a;
12
+ if (typeof color === 'string') {
13
+ return hexToRgb((_a = W3CX11[color]) !== null && _a !== void 0 ? _a : color);
14
+ }
15
+ else if (typeof color === 'number') {
16
+ return hexToRgb(color);
17
+ }
18
+ else {
19
+ return color;
20
+ }
21
+ }
6
22
  // ******************************************
7
23
  // RGB & Hexadecimal color spaces
8
24
  // ******************************************
9
25
  /**
10
26
  * Normalize an hexadecimal string
11
27
  *
12
- * @param {string} hex Hexadecimal string
28
+ * @param {string} hex Hexadecimal string
13
29
  * @returns {string} Normalized hexadecimal string
14
30
  */
15
- function normalizeHexString(hex) {
31
+ export function normalizeHexString(hex) {
16
32
  var match;
17
33
  var result = '000000';
18
34
  hex = hex.toLocaleLowerCase();
@@ -30,7 +46,6 @@ function normalizeHexString(hex) {
30
46
  }
31
47
  return "#".concat(result);
32
48
  }
33
- exports.normalizeHexString = normalizeHexString;
34
49
  /**
35
50
  * Convert RGB to hexadecimal
36
51
  * Note: rgb values are contained in the interval [0, 1]
@@ -38,11 +53,10 @@ exports.normalizeHexString = normalizeHexString;
38
53
  * @param {[number, number, number]} rgb RGB color
39
54
  * @returns {number} Hexadecimal color
40
55
  */
41
- function rgbToHex(_a) {
56
+ export function rgbToHex(_a) {
42
57
  var r = _a[0], g = _a[1], b = _a[2];
43
58
  return ((r * 255) << 16) ^ ((g * 255) << 8) ^ ((b * 255) << 0);
44
59
  }
45
- exports.rgbToHex = rgbToHex;
46
60
  /**
47
61
  * Convert RGB to hexadecimal string
48
62
  * Note: rgb values are contained in the interval [0, 1]
@@ -50,15 +64,14 @@ exports.rgbToHex = rgbToHex;
50
64
  * @param {[number, number, number]} rgb RGB color
51
65
  * @returns {string} Hexadecimal string
52
66
  */
53
- function rgbToHexString(_a) {
67
+ export function rgbToHexString(_a) {
54
68
  var r = _a[0], g = _a[1], b = _a[2];
55
- var red = (0, maths_1.clamp)(Math.round(r * 255), 0, 255);
56
- var green = (0, maths_1.clamp)(Math.round(g * 255), 0, 255);
57
- var blue = (0, maths_1.clamp)(Math.round(b * 255), 0, 255);
58
- var result = (blue | (green << 8) | (red << 16) | (1 << 24)).toString(16).slice(1);
69
+ r = clamp(Math.round(r * 255), 0, 255);
70
+ g = clamp(Math.round(g * 255), 0, 255);
71
+ b = clamp(Math.round(b * 255), 0, 255);
72
+ var result = (b | (g << 8) | (r << 16) | (1 << 24)).toString(16).slice(1);
59
73
  return "#".concat(result);
60
74
  }
61
- exports.rgbToHexString = rgbToHexString;
62
75
  /**
63
76
  * Convert hexadecimal to RGB
64
77
  * Note: rgb values are contained in the interval [0, 1]
@@ -66,7 +79,7 @@ exports.rgbToHexString = rgbToHexString;
66
79
  * @param {(number|string)} hex Hexadecimal color
67
80
  * @returns {[number, number, number]} RGB color
68
81
  */
69
- function hexToRgb(hex) {
82
+ export function hexToRgb(hex) {
70
83
  if (typeof hex === 'number') {
71
84
  hex = Math.floor(hex);
72
85
  }
@@ -74,12 +87,11 @@ function hexToRgb(hex) {
74
87
  hex = normalizeHexString(hex).replace(/^#/, '');
75
88
  hex = parseInt(hex, 16);
76
89
  }
77
- var red = ((hex >> 16) & 255) / 255;
78
- var green = ((hex >> 8) & 255) / 255;
79
- var blue = (hex & 255) / 255;
80
- return [red, green, blue];
90
+ var r = ((hex >> 16) & 255) / 255;
91
+ var g = ((hex >> 8) & 255) / 255;
92
+ var b = (hex & 255) / 255;
93
+ return [r, g, b];
81
94
  }
82
- exports.hexToRgb = hexToRgb;
83
95
  /**
84
96
  * Lighten a color
85
97
  *
@@ -87,7 +99,7 @@ exports.hexToRgb = hexToRgb;
87
99
  * @param {number} [amount=0] Amount of the color offset
88
100
  * @returns {string} Computed hexadecimal
89
101
  */
90
- function lighten(hex, amount) {
102
+ export function lighten(hex, amount) {
91
103
  if (amount === void 0) { amount = 0; }
92
104
  var prefix = '';
93
105
  if (hex[0] === '#') {
@@ -95,19 +107,15 @@ function lighten(hex, amount) {
95
107
  prefix = '#';
96
108
  }
97
109
  var value = parseInt(hex, 16);
98
- var r = (value >> 16) + amount;
99
- r = (0, maths_1.clamp)(r, 0, 255);
100
- var b = ((value >> 8) & 0x00ff) + amount;
101
- b = (0, maths_1.clamp)(b, 0, 255);
102
- var g = (value & 0x0000ff) + amount;
103
- g = (0, maths_1.clamp)(g, 0, 255);
110
+ var r = clamp((value >> 16) + amount, 0, 255);
111
+ var b = clamp(((value >> 8) & 0x00ff) + amount, 0, 255);
112
+ var g = clamp((value & 0x0000ff) + amount, 0, 255);
104
113
  var result = g | (b << 8) | (r << 16);
105
114
  if (r === 0 && g === 0 && b === 0 && amount !== 0) {
106
115
  result = '000000';
107
116
  }
108
117
  return prefix + result.toString(16);
109
118
  }
110
- exports.lighten = lighten;
111
119
  /**
112
120
  * Darken a color
113
121
  *
@@ -115,11 +123,10 @@ exports.lighten = lighten;
115
123
  * @param {number} [amount=0] Amount of the color offset
116
124
  * @returns {string} Computed hexadecimal
117
125
  */
118
- function darken(hex, amount) {
126
+ export function darken(hex, amount) {
119
127
  if (amount === void 0) { amount = 0; }
120
128
  return lighten(hex, -amount);
121
129
  }
122
- exports.darken = darken;
123
130
  // ***************************************************
124
131
  // RGB & Hue-Saturation-Lightness (HSL) color spaces
125
132
  // ***************************************************
@@ -130,12 +137,11 @@ exports.darken = darken;
130
137
  * @param {string} hsl HSL string (format: 'hsl(360, 100%, 100%)')
131
138
  * @returns {[number, number, number]} Normalized HSL color
132
139
  */
133
- function normalizeHslString(hsl) {
140
+ export function normalizeHslString(hsl) {
134
141
  var _a, _b;
135
- var _c = (_b = (_a = hsl.match(/\d+/g)) === null || _a === void 0 ? void 0 : _a.map(Number)) !== null && _b !== void 0 ? _b : [0, 0, 0], hue = _c[0], saturation = _c[1], lightness = _c[2];
136
- return [hue, saturation / 100, lightness / 100];
142
+ var _c = (_b = (_a = hsl.match(/\d+/g)) === null || _a === void 0 ? void 0 : _a.map(Number)) !== null && _b !== void 0 ? _b : [0, 0, 0], h = _c[0], s = _c[1], l = _c[2];
143
+ return [h, s / 100, l / 100];
137
144
  }
138
- exports.normalizeHslString = normalizeHslString;
139
145
  /**
140
146
  * Convert RGB to HSL
141
147
  * Notes:
@@ -145,7 +151,7 @@ exports.normalizeHslString = normalizeHslString;
145
151
  * @param {[number, number, number]} rgb RGB color
146
152
  * @returns {[number, number, number]} HSL color
147
153
  */
148
- function rgbToHsl(_a) {
154
+ export function rgbToHsl(_a) {
149
155
  var r = _a[0], g = _a[1], b = _a[2];
150
156
  var l = Math.max(r, g, b);
151
157
  var s = l - Math.min(r, g, b);
@@ -156,7 +162,6 @@ function rgbToHsl(_a) {
156
162
  (2 * l - s) / 2
157
163
  ];
158
164
  }
159
- exports.rgbToHsl = rgbToHsl;
160
165
  /**
161
166
  * Convert HSL to RGB
162
167
  * Notes:
@@ -166,14 +171,13 @@ exports.rgbToHsl = rgbToHsl;
166
171
  * @param {[number, number, number]} hsl HSL color
167
172
  * @returns {[number, number, number]} RGB color
168
173
  */
169
- function hslToRgb(_a) {
174
+ export function hslToRgb(_a) {
170
175
  var h = _a[0], s = _a[1], l = _a[2];
171
176
  var a = s * Math.min(l, 1 - l);
172
177
  var k = function (v) { return (v + h / 30) % 12; };
173
178
  var f = function (v) { return l - a * Math.max(-1, Math.min(k(v) - 3, Math.min(9 - k(v), 1))); };
174
179
  return [f(0), f(8), f(4)];
175
180
  }
176
- exports.hslToRgb = hslToRgb;
177
181
  // ***************************************************
178
182
  // RGB & Hue-Saturation-Brightness (HSB) color spaces
179
183
  // ***************************************************
@@ -186,7 +190,7 @@ exports.hslToRgb = hslToRgb;
186
190
  * @param {[number, number, number]} rgb RGB color
187
191
  * @returns {[number, number, number]} HSB color
188
192
  */
189
- function rgbToHsb(_a) {
193
+ export function rgbToHsb(_a) {
190
194
  var r = _a[0], g = _a[1], b = _a[2];
191
195
  var max = Math.max(r, g, b);
192
196
  var min = Math.min(r, g, b);
@@ -194,7 +198,6 @@ function rgbToHsb(_a) {
194
198
  var h = delta === 0 ? 0 : delta && max === r ? (g - b) / delta : max === g ? 2 + (b - r) / delta : 4 + (r - g) / delta;
195
199
  return [60 * (h < 0 ? h + 6 : h), max && delta / max, max];
196
200
  }
197
- exports.rgbToHsb = rgbToHsb;
198
201
  /**
199
202
  * Convert HSB to RGB
200
203
  * Notes:
@@ -204,13 +207,12 @@ exports.rgbToHsb = rgbToHsb;
204
207
  * @param {[number, number, number]} hsb HSB color
205
208
  * @returns {[number, number, number]} RGB color
206
209
  */
207
- function hsbToRgb(_a) {
210
+ export function hsbToRgb(_a) {
208
211
  var h = _a[0], s = _a[1], b = _a[2];
209
212
  var k = function (v) { return (v + h / 60) % 6; };
210
213
  var f = function (v) { return b * (1 - s * Math.max(0, Math.min(k(v), 4 - k(v), 1))); };
211
214
  return [f(5), f(3), f(1)];
212
215
  }
213
- exports.hsbToRgb = hsbToRgb;
214
216
  // *********************************************
215
217
  // LAB & Hue-Chroma-Luminance (HCL) color spaces
216
218
  // *********************************************
@@ -221,13 +223,12 @@ exports.hsbToRgb = hsbToRgb;
221
223
  * @param {[number, number, number]} lab LAB color
222
224
  * @returns {[number, number, number]} HCL color
223
225
  */
224
- function labToHcl(_a) {
226
+ export function labToHcl(_a) {
225
227
  var l = _a[0], a = _a[1], b = _a[2];
226
228
  var c = Math.sqrt(a * a + b * b);
227
229
  var h = abToHue(a, b);
228
230
  return [h, c, l];
229
231
  }
230
- exports.labToHcl = labToHcl;
231
232
  /**
232
233
  * Convert HCL to LAB
233
234
  * -> http://www.brucelindbloom.com/index.html?Eqn_LCH_to_Lab.html
@@ -235,13 +236,12 @@ exports.labToHcl = labToHcl;
235
236
  * @param {[number, number, number]} hcl HCL color
236
237
  * @returns {[number, number, number]} LAB color space
237
238
  */
238
- function hclToLab(_a) {
239
+ export function hclToLab(_a) {
239
240
  var h = _a[0], c = _a[1], l = _a[2];
240
- var a = c * Math.cos((0, geometry_1.toRadians)(h));
241
- var b = c * Math.sin((0, geometry_1.toRadians)(h));
241
+ var a = c * Math.cos(toRadians(h));
242
+ var b = c * Math.sin(toRadians(h));
242
243
  return [l, a, b];
243
244
  }
244
- exports.hclToLab = hclToLab;
245
245
  /**
246
246
  * Convert A and B of LAB to Hue of LCH
247
247
  * -> https://stackoverflow.com/questions/53733379/conversion-of-cielab-to-cielchab-not-yielding-correct-result
@@ -273,7 +273,7 @@ function abToHue(a, b) {
273
273
  else if (a > 0 && b < 0) {
274
274
  xBias = 360;
275
275
  }
276
- return (0, geometry_1.toDegrees)(Math.atan(b / a)) + xBias;
276
+ return toDegrees(Math.atan(b / a)) + xBias;
277
277
  }
278
278
  // ******************************************
279
279
  // LAB & RGB color spaces
@@ -288,7 +288,7 @@ var f4 = function (v) { return (v > 0.008856 ? Math.pow(v, 1 / 3) : 7.787 * v +
288
288
  * @param {[number, number, number]} lab LAB color
289
289
  * @returns {[number, number, number]} RGB color
290
290
  */
291
- function labToRgb(_a) {
291
+ export function labToRgb(_a) {
292
292
  var l = _a[0], a = _a[1], b = _a[2];
293
293
  var y = (l + 16) / 116;
294
294
  var x = a / 500 + y;
@@ -297,19 +297,18 @@ function labToRgb(_a) {
297
297
  y = 1.0 * f1(y);
298
298
  z = 1.08883 * f1(z);
299
299
  return [
300
- (0, maths_1.clamp)(f2(x * 3.2406 + y * -1.5372 + z * -0.4986)),
301
- (0, maths_1.clamp)(f2(x * -0.9689 + y * 1.8758 + z * 0.0415)),
302
- (0, maths_1.clamp)(f2(x * 0.0557 + y * -0.204 + z * 1.057))
300
+ clamp(f2(x * 3.2406 + y * -1.5372 + z * -0.4986)),
301
+ clamp(f2(x * -0.9689 + y * 1.8758 + z * 0.0415)),
302
+ clamp(f2(x * 0.0557 + y * -0.204 + z * 1.057))
303
303
  ];
304
304
  }
305
- exports.labToRgb = labToRgb;
306
305
  /**
307
306
  * Converts RGB to LAB
308
307
  *
309
308
  * @param {[number, number, number]} rgb RGB color
310
309
  * @returns {[number, number, number]} LAB color
311
310
  */
312
- function rgbToLab(_a) {
311
+ export function rgbToLab(_a) {
313
312
  var r = _a[0], g = _a[1], b = _a[2];
314
313
  r = f3(r);
315
314
  g = f3(g);
@@ -319,7 +318,6 @@ function rgbToLab(_a) {
319
318
  var z = f4((r * 0.0193 + g * 0.1192 + b * 0.9505) / 1.08883);
320
319
  return [116 * y - 16, 500 * (x - y), 200 * (y - z)];
321
320
  }
322
- exports.rgbToLab = rgbToLab;
323
321
  /**
324
322
  * Get the delta from two LAB colors
325
323
  *
@@ -327,7 +325,7 @@ exports.rgbToLab = rgbToLab;
327
325
  * @param {[number, number, number]} labB Second LAB color
328
326
  * @returns {number} Delta
329
327
  */
330
- function deltaE(labA, labB) {
328
+ export function deltaE(labA, labB) {
331
329
  var deltaL = labA[0] - labB[0];
332
330
  var deltaA = labA[1] - labB[1];
333
331
  var deltaB = labA[2] - labB[2];
@@ -344,7 +342,6 @@ function deltaE(labA, labB) {
344
342
  var i = deltaLKlsl * deltaLKlsl + deltaCkcsc * deltaCkcsc + deltaHkhsh * deltaHkhsh;
345
343
  return i < 0 ? 0 : Math.sqrt(i);
346
344
  }
347
- exports.deltaE = deltaE;
348
345
  // *********************************************
349
346
  // RGB & Hue-Chroma-Luminance (HCL) color spaces
350
347
  // *********************************************
@@ -354,19 +351,17 @@ exports.deltaE = deltaE;
354
351
  * @param {[number, number, number]} rgb RGB color
355
352
  * @returns {[number, number, number]} HCL color
356
353
  */
357
- function rgbToHcl(_a) {
354
+ export function rgbToHcl(_a) {
358
355
  var r = _a[0], g = _a[1], b = _a[2];
359
356
  return labToHcl(rgbToLab([r, g, b]));
360
357
  }
361
- exports.rgbToHcl = rgbToHcl;
362
358
  /**
363
359
  * Converts HCL to RGB
364
360
  *
365
361
  * @param {[number, number, number]} hcl RGB color
366
362
  * @returns {[number, number, number]} RGB color
367
363
  */
368
- function hclToRgb(_a) {
364
+ export function hclToRgb(_a) {
369
365
  var h = _a[0], c = _a[1], l = _a[2];
370
366
  return labToRgb(hclToLab([h, c, l]));
371
367
  }
372
- exports.hclToRgb = hclToRgb;
@@ -4,159 +4,159 @@ export declare const TWO_PI: number;
4
4
  export declare const HALF_PI: number;
5
5
  export declare const QUARTER_PI: number;
6
6
  export declare const W3CX11: {
7
- aliceblue: string;
8
- antiquewhite: string;
9
- aqua: string;
10
- aquamarine: string;
11
- azure: string;
12
- beige: string;
13
- bisque: string;
14
- black: string;
15
- blanchedalmond: string;
16
- blue: string;
17
- blueviolet: string;
18
- brown: string;
19
- burlywood: string;
20
- cadetblue: string;
21
- chartreuse: string;
22
- chocolate: string;
23
- coral: string;
24
- cornflower: string;
25
- cornflowerblue: string;
26
- cornsilk: string;
27
- crimson: string;
28
- cyan: string;
29
- darkblue: string;
30
- darkcyan: string;
31
- darkgoldenrod: string;
32
- darkgray: string;
33
- darkgreen: string;
34
- darkgrey: string;
35
- darkkhaki: string;
36
- darkmagenta: string;
37
- darkolivegreen: string;
38
- darkorange: string;
39
- darkorchid: string;
40
- darkred: string;
41
- darksalmon: string;
42
- darkseagreen: string;
43
- darkslateblue: string;
44
- darkslategray: string;
45
- darkslategrey: string;
46
- darkturquoise: string;
47
- darkviolet: string;
48
- deeppink: string;
49
- deepskyblue: string;
50
- dimgray: string;
51
- dimgrey: string;
52
- dodgerblue: string;
53
- firebrick: string;
54
- floralwhite: string;
55
- forestgreen: string;
56
- fuchsia: string;
57
- gainsboro: string;
58
- ghostwhite: string;
59
- gold: string;
60
- goldenrod: string;
61
- gray: string;
62
- green: string;
63
- greenyellow: string;
64
- grey: string;
65
- honeydew: string;
66
- hotpink: string;
67
- indianred: string;
68
- indigo: string;
69
- ivory: string;
70
- khaki: string;
71
- laserlemon: string;
72
- lavender: string;
73
- lavenderblush: string;
74
- lawngreen: string;
75
- lemonchiffon: string;
76
- lightblue: string;
77
- lightcoral: string;
78
- lightcyan: string;
79
- lightgoldenrod: string;
80
- lightgoldenrodyellow: string;
81
- lightgray: string;
82
- lightgreen: string;
83
- lightgrey: string;
84
- lightpink: string;
85
- lightsalmon: string;
86
- lightseagreen: string;
87
- lightskyblue: string;
88
- lightslategray: string;
89
- lightslategrey: string;
90
- lightsteelblue: string;
91
- lightyellow: string;
92
- lime: string;
93
- limegreen: string;
94
- linen: string;
95
- magenta: string;
96
- maroon: string;
97
- maroon2: string;
98
- maroon3: string;
99
- mediumaquamarine: string;
100
- mediumblue: string;
101
- mediumorchid: string;
102
- mediumpurple: string;
103
- mediumseagreen: string;
104
- mediumslateblue: string;
105
- mediumspringgreen: string;
106
- mediumturquoise: string;
107
- mediumvioletred: string;
108
- midnightblue: string;
109
- mintcream: string;
110
- mistyrose: string;
111
- moccasin: string;
112
- navajowhite: string;
113
- navy: string;
114
- oldlace: string;
115
- olive: string;
116
- olivedrab: string;
117
- orange: string;
118
- orangered: string;
119
- orchid: string;
120
- palegoldenrod: string;
121
- palegreen: string;
122
- paleturquoise: string;
123
- palevioletred: string;
124
- papayawhip: string;
125
- peachpuff: string;
126
- peru: string;
127
- pink: string;
128
- plum: string;
129
- powderblue: string;
130
- purple: string;
131
- purple2: string;
132
- purple3: string;
133
- rebeccapurple: string;
134
- red: string;
135
- rosybrown: string;
136
- royalblue: string;
137
- saddlebrown: string;
138
- salmon: string;
139
- sandybrown: string;
140
- seagreen: string;
141
- seashell: string;
142
- sienna: string;
143
- silver: string;
144
- skyblue: string;
145
- slateblue: string;
146
- slategray: string;
147
- slategrey: string;
148
- snow: string;
149
- springgreen: string;
150
- steelblue: string;
151
- tan: string;
152
- teal: string;
153
- thistle: string;
154
- tomato: string;
155
- turquoise: string;
156
- violet: string;
157
- wheat: string;
158
- white: string;
159
- whitesmoke: string;
160
- yellow: string;
161
- yellowgreen: string;
7
+ aliceblue: number;
8
+ antiquewhite: number;
9
+ aqua: number;
10
+ aquamarine: number;
11
+ azure: number;
12
+ beige: number;
13
+ bisque: number;
14
+ black: number;
15
+ blanchedalmond: number;
16
+ blue: number;
17
+ blueviolet: number;
18
+ brown: number;
19
+ burlywood: number;
20
+ cadetblue: number;
21
+ chartreuse: number;
22
+ chocolate: number;
23
+ coral: number;
24
+ cornflower: number;
25
+ cornflowerblue: number;
26
+ cornsilk: number;
27
+ crimson: number;
28
+ cyan: number;
29
+ darkblue: number;
30
+ darkcyan: number;
31
+ darkgoldenrod: number;
32
+ darkgray: number;
33
+ darkgreen: number;
34
+ darkgrey: number;
35
+ darkkhaki: number;
36
+ darkmagenta: number;
37
+ darkolivegreen: number;
38
+ darkorange: number;
39
+ darkorchid: number;
40
+ darkred: number;
41
+ darksalmon: number;
42
+ darkseagreen: number;
43
+ darkslateblue: number;
44
+ darkslategray: number;
45
+ darkslategrey: number;
46
+ darkturquoise: number;
47
+ darkviolet: number;
48
+ deeppink: number;
49
+ deepskyblue: number;
50
+ dimgray: number;
51
+ dimgrey: number;
52
+ dodgerblue: number;
53
+ firebrick: number;
54
+ floralwhite: number;
55
+ forestgreen: number;
56
+ fuchsia: number;
57
+ gainsboro: number;
58
+ ghostwhite: number;
59
+ gold: number;
60
+ goldenrod: number;
61
+ gray: number;
62
+ green: number;
63
+ greenyellow: number;
64
+ grey: number;
65
+ honeydew: number;
66
+ hotpink: number;
67
+ indianred: number;
68
+ indigo: number;
69
+ ivory: number;
70
+ khaki: number;
71
+ laserlemon: number;
72
+ lavender: number;
73
+ lavenderblush: number;
74
+ lawngreen: number;
75
+ lemonchiffon: number;
76
+ lightblue: number;
77
+ lightcoral: number;
78
+ lightcyan: number;
79
+ lightgoldenrod: number;
80
+ lightgoldenrodyellow: number;
81
+ lightgray: number;
82
+ lightgreen: number;
83
+ lightgrey: number;
84
+ lightpink: number;
85
+ lightsalmon: number;
86
+ lightseagreen: number;
87
+ lightskyblue: number;
88
+ lightslategray: number;
89
+ lightslategrey: number;
90
+ lightsteelblue: number;
91
+ lightyellow: number;
92
+ lime: number;
93
+ limegreen: number;
94
+ linen: number;
95
+ magenta: number;
96
+ maroon: number;
97
+ maroon2: number;
98
+ maroon3: number;
99
+ mediumaquamarine: number;
100
+ mediumblue: number;
101
+ mediumorchid: number;
102
+ mediumpurple: number;
103
+ mediumseagreen: number;
104
+ mediumslateblue: number;
105
+ mediumspringgreen: number;
106
+ mediumturquoise: number;
107
+ mediumvioletred: number;
108
+ midnightblue: number;
109
+ mintcream: number;
110
+ mistyrose: number;
111
+ moccasin: number;
112
+ navajowhite: number;
113
+ navy: number;
114
+ oldlace: number;
115
+ olive: number;
116
+ olivedrab: number;
117
+ orange: number;
118
+ orangered: number;
119
+ orchid: number;
120
+ palegoldenrod: number;
121
+ palegreen: number;
122
+ paleturquoise: number;
123
+ palevioletred: number;
124
+ papayawhip: number;
125
+ peachpuff: number;
126
+ peru: number;
127
+ pink: number;
128
+ plum: number;
129
+ powderblue: number;
130
+ purple: number;
131
+ purple2: number;
132
+ purple3: number;
133
+ rebeccapurple: number;
134
+ red: number;
135
+ rosybrown: number;
136
+ royalblue: number;
137
+ saddlebrown: number;
138
+ salmon: number;
139
+ sandybrown: number;
140
+ seagreen: number;
141
+ seashell: number;
142
+ sienna: number;
143
+ silver: number;
144
+ skyblue: number;
145
+ slateblue: number;
146
+ slategray: number;
147
+ slategrey: number;
148
+ snow: number;
149
+ springgreen: number;
150
+ steelblue: number;
151
+ tan: number;
152
+ teal: number;
153
+ thistle: number;
154
+ tomato: number;
155
+ turquoise: number;
156
+ violet: number;
157
+ wheat: number;
158
+ white: number;
159
+ whitesmoke: number;
160
+ yellow: number;
161
+ yellowgreen: number;
162
162
  };