@leafer-in/color 1.7.0 → 1.9.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/dist/color.esm.js CHANGED
@@ -1,251 +1,262 @@
1
- import { Plugin, ColorConvert } from '@leafer-ui/draw';
1
+ import { isUndefined, isString, isObject, Plugin, ColorConvert } from "@leafer-ui/draw";
2
2
 
3
3
  const colorNames = {
4
- transparent: 'FFF0',
5
- aliceblue: 'F0F8FF',
6
- antiquewhite: 'FAEBD7',
7
- aqua: '0FF',
8
- aquamarine: '7FFFD4',
9
- azure: 'F0FFFF',
10
- beige: 'F5F5DC',
11
- bisque: 'FFE4C4',
12
- black: '0',
13
- blanchedalmond: 'FFEBCD',
14
- blue: '00F',
15
- blueviolet: '8A2BE2',
16
- brown: 'A52A2A',
17
- burlywood: 'DEB887',
18
- cadetblue: '5F9EA0',
19
- chartreuse: '7FFF00',
20
- chocolate: 'D2691E',
21
- coral: 'FF7F50',
22
- cornflowerblue: '6495ED',
23
- cornsilk: 'FFF8DC',
24
- crimson: 'DC143C',
25
- cyan: '0FF',
26
- darkblue: '00008B',
27
- darkcyan: '008B8B',
28
- darkgoldenrod: 'B8860B',
29
- darkgray: 'A9',
30
- darkgreen: '006400',
31
- darkgrey: 'A9',
32
- darkkhaki: 'BDB76B',
33
- darkmagenta: '8B008B',
34
- darkolivegreen: '556B2F',
35
- darkorange: 'FF8C00',
36
- darkorchid: '9932CC',
37
- darkred: '8B0000',
38
- darksalmon: 'E9967A',
39
- darkseagreen: '8FBC8F',
40
- darkslateblue: '483D8B',
41
- darkslategray: '2F4F4F',
42
- darkslategrey: '2F4F4F',
43
- darkturquoise: '00CED1',
44
- darkviolet: '9400D3',
45
- deeppink: 'FF1493',
46
- deepskyblue: '00BFFF',
47
- dimgray: '69',
48
- dimgrey: '69',
49
- dodgerblue: '1E90FF',
50
- firebrick: 'B22222',
51
- floralwhite: 'FFFAF0',
52
- forestgreen: '228B22',
53
- fuchsia: 'F0F',
54
- gainsboro: 'DC',
55
- ghostwhite: 'F8F8FF',
56
- gold: 'FFD700',
57
- goldenrod: 'DAA520',
58
- gray: '80',
59
- green: '008000',
60
- greenyellow: 'ADFF2F',
61
- grey: '80',
62
- honeydew: 'F0FFF0',
63
- hotpink: 'FF69B4',
64
- indianred: 'CD5C5C',
65
- indigo: '4B0082',
66
- ivory: 'FFFFF0',
67
- khaki: 'F0E68C',
68
- lavender: 'E6E6FA',
69
- lavenderblush: 'FFF0F5',
70
- lawngreen: '7CFC00',
71
- lemonchiffon: 'FFFACD',
72
- lightblue: 'ADD8E6',
73
- lightcoral: 'F08080',
74
- lightcyan: 'E0FFFF',
75
- lightgoldenrodyellow: 'FAFAD2',
76
- lightgray: 'D3',
77
- lightgreen: '90EE90',
78
- lightgrey: 'D3',
79
- lightpink: 'FFB6C1',
80
- lightsalmon: 'FFA07A',
81
- lightseagreen: '20B2AA',
82
- lightskyblue: '87CEFA',
83
- lightslategray: '789',
84
- lightslategrey: '789',
85
- lightsteelblue: 'B0C4DE',
86
- lightyellow: 'FFFFE0',
87
- lime: '00FF00',
88
- limegreen: '32CD32',
89
- linen: 'FAF0E6',
90
- magenta: 'FF00FF',
91
- maroon: '800000',
92
- mediumaquamarine: '66CDAA',
93
- mediumblue: '0000CD',
94
- mediumorchid: 'BA55D3',
95
- mediumpurple: '9370DB',
96
- mediumseagreen: '3CB371',
97
- mediumslateblue: '7B68EE',
98
- mediumspringgreen: '00FA9A',
99
- mediumturquoise: '48D1CC',
100
- mediumvioletred: 'C71585',
101
- midnightblue: '191970',
102
- mintcream: 'F5FFFA',
103
- mistyrose: 'FFE4E1',
104
- moccasin: 'FFE4B5',
105
- navajowhite: 'FFDEAD',
106
- navy: '000080',
107
- oldlace: 'FDF5E6',
108
- olive: '808000',
109
- olivedrab: '6B8E23',
110
- orange: 'FFA500',
111
- orangered: 'FF4500',
112
- orchid: 'DA70D6',
113
- palegoldenrod: 'EEE8AA',
114
- palegreen: '98FB98',
115
- paleturquoise: 'AFEEEE',
116
- palevioletred: 'D87093',
117
- papayawhip: 'FFEFD5',
118
- peachpuff: 'FFDAB9',
119
- peru: 'CD853F',
120
- pink: 'FFC0CB',
121
- plum: 'DDA0DD',
122
- powderblue: 'B0E0E6',
123
- purple: '800080',
124
- rebeccapurple: '639',
125
- red: 'F00',
126
- rosybrown: 'BC8F8F',
127
- royalblue: '4169E1',
128
- saddlebrown: '8B4513',
129
- salmon: 'FA8072',
130
- sandybrown: 'F4A460',
131
- seagreen: '2E8B57',
132
- seashell: 'FFF5EE',
133
- sienna: 'A0522D',
134
- silver: 'C0',
135
- skyblue: '87CEEB',
136
- slateblue: '6A5ACD',
137
- slategray: '708090',
138
- slategrey: '708090',
139
- snow: 'FFFAFA',
140
- springgreen: '00FF7F',
141
- steelblue: '4682B4',
142
- tan: 'D2B48C',
143
- teal: '008080',
144
- thistle: 'D8BFD8',
145
- tomato: 'FF6347',
146
- turquoise: '40E0D0',
147
- violet: 'EE82EE',
148
- wheat: 'F5DEB3',
149
- white: 'F',
150
- whitesmoke: 'F5',
151
- yellow: 'FF0',
152
- yellowgreen: '9ACD32'
4
+ transparent: "FFF0",
5
+ aliceblue: "F0F8FF",
6
+ antiquewhite: "FAEBD7",
7
+ aqua: "0FF",
8
+ aquamarine: "7FFFD4",
9
+ azure: "F0FFFF",
10
+ beige: "F5F5DC",
11
+ bisque: "FFE4C4",
12
+ black: "0",
13
+ blanchedalmond: "FFEBCD",
14
+ blue: "00F",
15
+ blueviolet: "8A2BE2",
16
+ brown: "A52A2A",
17
+ burlywood: "DEB887",
18
+ cadetblue: "5F9EA0",
19
+ chartreuse: "7FFF00",
20
+ chocolate: "D2691E",
21
+ coral: "FF7F50",
22
+ cornflowerblue: "6495ED",
23
+ cornsilk: "FFF8DC",
24
+ crimson: "DC143C",
25
+ cyan: "0FF",
26
+ darkblue: "00008B",
27
+ darkcyan: "008B8B",
28
+ darkgoldenrod: "B8860B",
29
+ darkgray: "A9",
30
+ darkgreen: "006400",
31
+ darkgrey: "A9",
32
+ darkkhaki: "BDB76B",
33
+ darkmagenta: "8B008B",
34
+ darkolivegreen: "556B2F",
35
+ darkorange: "FF8C00",
36
+ darkorchid: "9932CC",
37
+ darkred: "8B0000",
38
+ darksalmon: "E9967A",
39
+ darkseagreen: "8FBC8F",
40
+ darkslateblue: "483D8B",
41
+ darkslategray: "2F4F4F",
42
+ darkslategrey: "2F4F4F",
43
+ darkturquoise: "00CED1",
44
+ darkviolet: "9400D3",
45
+ deeppink: "FF1493",
46
+ deepskyblue: "00BFFF",
47
+ dimgray: "69",
48
+ dimgrey: "69",
49
+ dodgerblue: "1E90FF",
50
+ firebrick: "B22222",
51
+ floralwhite: "FFFAF0",
52
+ forestgreen: "228B22",
53
+ fuchsia: "F0F",
54
+ gainsboro: "DC",
55
+ ghostwhite: "F8F8FF",
56
+ gold: "FFD700",
57
+ goldenrod: "DAA520",
58
+ gray: "80",
59
+ green: "008000",
60
+ greenyellow: "ADFF2F",
61
+ grey: "80",
62
+ honeydew: "F0FFF0",
63
+ hotpink: "FF69B4",
64
+ indianred: "CD5C5C",
65
+ indigo: "4B0082",
66
+ ivory: "FFFFF0",
67
+ khaki: "F0E68C",
68
+ lavender: "E6E6FA",
69
+ lavenderblush: "FFF0F5",
70
+ lawngreen: "7CFC00",
71
+ lemonchiffon: "FFFACD",
72
+ lightblue: "ADD8E6",
73
+ lightcoral: "F08080",
74
+ lightcyan: "E0FFFF",
75
+ lightgoldenrodyellow: "FAFAD2",
76
+ lightgray: "D3",
77
+ lightgreen: "90EE90",
78
+ lightgrey: "D3",
79
+ lightpink: "FFB6C1",
80
+ lightsalmon: "FFA07A",
81
+ lightseagreen: "20B2AA",
82
+ lightskyblue: "87CEFA",
83
+ lightslategray: "789",
84
+ lightslategrey: "789",
85
+ lightsteelblue: "B0C4DE",
86
+ lightyellow: "FFFFE0",
87
+ lime: "00FF00",
88
+ limegreen: "32CD32",
89
+ linen: "FAF0E6",
90
+ magenta: "FF00FF",
91
+ maroon: "800000",
92
+ mediumaquamarine: "66CDAA",
93
+ mediumblue: "0000CD",
94
+ mediumorchid: "BA55D3",
95
+ mediumpurple: "9370DB",
96
+ mediumseagreen: "3CB371",
97
+ mediumslateblue: "7B68EE",
98
+ mediumspringgreen: "00FA9A",
99
+ mediumturquoise: "48D1CC",
100
+ mediumvioletred: "C71585",
101
+ midnightblue: "191970",
102
+ mintcream: "F5FFFA",
103
+ mistyrose: "FFE4E1",
104
+ moccasin: "FFE4B5",
105
+ navajowhite: "FFDEAD",
106
+ navy: "000080",
107
+ oldlace: "FDF5E6",
108
+ olive: "808000",
109
+ olivedrab: "6B8E23",
110
+ orange: "FFA500",
111
+ orangered: "FF4500",
112
+ orchid: "DA70D6",
113
+ palegoldenrod: "EEE8AA",
114
+ palegreen: "98FB98",
115
+ paleturquoise: "AFEEEE",
116
+ palevioletred: "D87093",
117
+ papayawhip: "FFEFD5",
118
+ peachpuff: "FFDAB9",
119
+ peru: "CD853F",
120
+ pink: "FFC0CB",
121
+ plum: "DDA0DD",
122
+ powderblue: "B0E0E6",
123
+ purple: "800080",
124
+ rebeccapurple: "639",
125
+ red: "F00",
126
+ rosybrown: "BC8F8F",
127
+ royalblue: "4169E1",
128
+ saddlebrown: "8B4513",
129
+ salmon: "FA8072",
130
+ sandybrown: "F4A460",
131
+ seagreen: "2E8B57",
132
+ seashell: "FFF5EE",
133
+ sienna: "A0522D",
134
+ silver: "C0",
135
+ skyblue: "87CEEB",
136
+ slateblue: "6A5ACD",
137
+ slategray: "708090",
138
+ slategrey: "708090",
139
+ snow: "FFFAFA",
140
+ springgreen: "00FF7F",
141
+ steelblue: "4682B4",
142
+ tan: "D2B48C",
143
+ teal: "008080",
144
+ thistle: "D8BFD8",
145
+ tomato: "FF6347",
146
+ turquoise: "40E0D0",
147
+ violet: "EE82EE",
148
+ wheat: "F5DEB3",
149
+ white: "F",
150
+ whitesmoke: "F5",
151
+ yellow: "FF0",
152
+ yellowgreen: "9ACD32"
153
153
  };
154
154
 
155
155
  const rgbMatch = /^rgb\((\d+),\s*(\d+),\s*(\d+)/i;
156
+
156
157
  const rgbaMatch = /^rgba\((\d+),\s*(\d+),\s*(\d+),\s*(\d*\.?\d+)/i;
158
+
157
159
  const hslMatch = /^hsl\((\d+),\s*(\d+)%\s*,\s*(\d+)%/i;
160
+
158
161
  const hslaMatch = /^hsla\((\d+),\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d*\.?\d+)/i;
159
- const int = parseInt, float = parseFloat, { round } = Math;
162
+
163
+ const int = parseInt, float = parseFloat, {round: round} = Math;
164
+
160
165
  let cache = {}, totalCache = 0;
166
+
161
167
  function colorToRGBA(color, opacity) {
162
168
  let RGBA;
163
- let useOpacity = opacity !== undefined && opacity !== 1;
164
- if (typeof color === 'string') {
169
+ let useOpacity = !isUndefined(opacity) && opacity < 1;
170
+ if (isString(color)) {
165
171
  const cacheColor = cache[color];
166
172
  if (cacheColor) {
167
173
  RGBA = Object.assign({}, cacheColor);
168
- }
169
- else {
174
+ } else {
170
175
  switch (color[0]) {
171
- case '#':
172
- RGBA = hexToRGBA(color);
173
- break;
174
- case 'R':
175
- case 'r':
176
- if (color[4] === '(' && rgbaMatch.test(color))
177
- RGBA = rgbaToRGBA(color);
178
- else if (color[3] === '(' && rgbMatch.test(color))
179
- RGBA = rgbToRGBA(color);
180
- break;
181
- case 'H':
182
- case 'h':
183
- if (color[4] === '(' && hslaMatch.test(color))
184
- RGBA = hslaToRGBA(color);
185
- else if (color[3] === '(' && hslMatch.test(color))
186
- RGBA = hslToRGBA(color);
187
- break;
176
+ case "#":
177
+ RGBA = hexToRGBA(color);
178
+ break;
179
+
180
+ case "R":
181
+ case "r":
182
+ if (color[4] === "(" && rgbaMatch.test(color)) RGBA = rgbaToRGBA(color); else if (color[3] === "(" && rgbMatch.test(color)) RGBA = rgbToRGBA(color);
183
+ break;
184
+
185
+ case "H":
186
+ case "h":
187
+ if (color[4] === "(" && hslaMatch.test(color)) RGBA = hslaToRGBA(color); else if (color[3] === "(" && hslMatch.test(color)) RGBA = hslToRGBA(color);
188
+ break;
188
189
  }
189
190
  if (!RGBA) {
190
191
  const value = colorNames[color.toLowerCase()];
191
- if (value)
192
- RGBA = hexToRGBA('#' + value);
192
+ if (value) RGBA = hexToRGBA("#" + value);
193
193
  }
194
194
  if (RGBA) {
195
195
  totalCache++;
196
- if (totalCache > 10000)
197
- cache = {}, totalCache = 0;
196
+ if (totalCache > 1e4) cache = {}, totalCache = 0;
198
197
  cache[color] = Object.assign({}, RGBA);
199
198
  }
200
199
  }
201
- }
202
- else if (typeof color === 'object') {
203
- if (color.a === undefined)
204
- color.a = 1;
205
- if (useOpacity)
206
- color = Object.assign({}, color);
200
+ } else if (isObject(color)) {
201
+ if (isUndefined(color.a)) color.a = 1;
202
+ if (useOpacity) color = Object.assign({}, color);
207
203
  RGBA = color;
208
204
  }
209
- if (!RGBA)
210
- RGBA = { r: 255, g: 255, b: 255, a: 1 };
211
- if (useOpacity)
212
- RGBA.a *= opacity;
205
+ if (!RGBA) RGBA = {
206
+ r: 255,
207
+ g: 255,
208
+ b: 255,
209
+ a: 1
210
+ };
211
+ if (useOpacity) RGBA.a *= opacity;
213
212
  return RGBA;
214
213
  }
214
+
215
215
  function hexToRGBA(color) {
216
216
  let r, g, b, a = 1;
217
217
  switch (color.length) {
218
- case 9:
219
- r = int(color.slice(1, 3), 16);
220
- g = int(color.slice(3, 5), 16);
221
- b = int(color.slice(5, 7), 16);
222
- a = int(color.slice(7, 9), 16) / 255;
223
- break;
224
- case 7:
225
- r = int(color.slice(1, 3), 16);
226
- g = int(color.slice(3, 5), 16);
227
- b = int(color.slice(5, 7), 16);
228
- break;
229
- case 5:
230
- r = int(color[1] + color[1], 16);
231
- g = int(color[2] + color[2], 16);
232
- b = int(color[3] + color[3], 16);
233
- a = int(color[4] + color[4], 16) / 255;
234
- break;
235
- case 4:
236
- r = int(color[1] + color[1], 16);
237
- g = int(color[2] + color[2], 16);
238
- b = int(color[3] + color[3], 16);
239
- break;
240
- case 3:
241
- r = g = b = int(color[1] + color[2], 16);
242
- break;
243
- case 2:
244
- r = g = b = int(color[1] + color[1], 16);
245
- break;
218
+ case 9:
219
+ r = int(color.slice(1, 3), 16);
220
+ g = int(color.slice(3, 5), 16);
221
+ b = int(color.slice(5, 7), 16);
222
+ a = int(color.slice(7, 9), 16) / 255;
223
+ break;
224
+
225
+ case 7:
226
+ r = int(color.slice(1, 3), 16);
227
+ g = int(color.slice(3, 5), 16);
228
+ b = int(color.slice(5, 7), 16);
229
+ break;
230
+
231
+ case 5:
232
+ r = int(color[1] + color[1], 16);
233
+ g = int(color[2] + color[2], 16);
234
+ b = int(color[3] + color[3], 16);
235
+ a = int(color[4] + color[4], 16) / 255;
236
+ break;
237
+
238
+ case 4:
239
+ r = int(color[1] + color[1], 16);
240
+ g = int(color[2] + color[2], 16);
241
+ b = int(color[3] + color[3], 16);
242
+ break;
243
+
244
+ case 3:
245
+ r = g = b = int(color[1] + color[2], 16);
246
+ break;
247
+
248
+ case 2:
249
+ r = g = b = int(color[1] + color[1], 16);
250
+ break;
246
251
  }
247
- return { r, g, b, a };
252
+ return {
253
+ r: r,
254
+ g: g,
255
+ b: b,
256
+ a: a
257
+ };
248
258
  }
259
+
249
260
  function rgbToRGBA(color) {
250
261
  const match = rgbMatch.exec(color);
251
262
  return {
@@ -255,6 +266,7 @@ function rgbToRGBA(color) {
255
266
  a: 1
256
267
  };
257
268
  }
269
+
258
270
  function rgbaToRGBA(color) {
259
271
  const match = rgbaMatch.exec(color);
260
272
  return {
@@ -264,43 +276,47 @@ function rgbaToRGBA(color) {
264
276
  a: float(match[4])
265
277
  };
266
278
  }
279
+
267
280
  function hslToRGBA(color) {
268
281
  const match = hslMatch.exec(color);
269
282
  return hsla(float(match[1]), float(match[2]), float(match[3]), 1);
270
283
  }
284
+
271
285
  function hslaToRGBA(color) {
272
286
  const match = hslaMatch.exec(color);
273
287
  return hsla(float(match[1]), float(match[2]), float(match[3]), float(match[4]));
274
288
  }
275
- const n1 = 1 / 6, n2 = 0.5, n3 = 2 / 3, n4 = 1 / 3;
289
+
290
+ const n1 = 1 / 6, n2 = .5, n3 = 2 / 3, n4 = 1 / 3;
291
+
276
292
  function hue(p, q, t) {
277
- if (t < 0)
278
- t++;
279
- else if (t > 1)
280
- t--;
281
- if (t < n1)
282
- return p + (q - p) * 6 * t;
283
- if (t < n2)
284
- return q;
285
- if (t < n3)
286
- return p + (q - p) * (n3 - t) * 6;
293
+ if (t < 0) t++; else if (t > 1) t--;
294
+ if (t < n1) return p + (q - p) * 6 * t;
295
+ if (t < n2) return q;
296
+ if (t < n3) return p + (q - p) * (n3 - t) * 6;
287
297
  return p;
288
298
  }
299
+
289
300
  function hsla(h, s, l, a = 1) {
290
301
  let r, g, b;
291
302
  h /= 360, s /= 100, l /= 100;
292
303
  if (s === 0) {
293
304
  r = g = b = l;
294
- }
295
- else {
296
- let q = l < 0.5 ? l * (1 + s) : l + s - l * s;
305
+ } else {
306
+ let q = l < .5 ? l * (1 + s) : l + s - l * s;
297
307
  let p = 2 * l - q;
298
308
  r = hue(p, q, h + n4);
299
309
  g = hue(p, q, h);
300
310
  b = hue(p, q, h - n4);
301
311
  }
302
- return { r: round(r * 255), g: round(g * 255), b: round(b * 255), a };
312
+ return {
313
+ r: round(r * 255),
314
+ g: round(g * 255),
315
+ b: round(b * 255),
316
+ a: a
317
+ };
303
318
  }
304
319
 
305
- Plugin.add('color');
320
+ Plugin.add("color");
321
+
306
322
  ColorConvert.object = colorToRGBA;
@@ -1,2 +1,2 @@
1
- import{Plugin as e,ColorConvert as F}from"@leafer-ui/draw";const r={transparent:"FFF0",aliceblue:"F0F8FF",antiquewhite:"FAEBD7",aqua:"0FF",aquamarine:"7FFFD4",azure:"F0FFFF",beige:"F5F5DC",bisque:"FFE4C4",black:"0",blanchedalmond:"FFEBCD",blue:"00F",blueviolet:"8A2BE2",brown:"A52A2A",burlywood:"DEB887",cadetblue:"5F9EA0",chartreuse:"7FFF00",chocolate:"D2691E",coral:"FF7F50",cornflowerblue:"6495ED",cornsilk:"FFF8DC",crimson:"DC143C",cyan:"0FF",darkblue:"00008B",darkcyan:"008B8B",darkgoldenrod:"B8860B",darkgray:"A9",darkgreen:"006400",darkgrey:"A9",darkkhaki:"BDB76B",darkmagenta:"8B008B",darkolivegreen:"556B2F",darkorange:"FF8C00",darkorchid:"9932CC",darkred:"8B0000",darksalmon:"E9967A",darkseagreen:"8FBC8F",darkslateblue:"483D8B",darkslategray:"2F4F4F",darkslategrey:"2F4F4F",darkturquoise:"00CED1",darkviolet:"9400D3",deeppink:"FF1493",deepskyblue:"00BFFF",dimgray:"69",dimgrey:"69",dodgerblue:"1E90FF",firebrick:"B22222",floralwhite:"FFFAF0",forestgreen:"228B22",fuchsia:"F0F",gainsboro:"DC",ghostwhite:"F8F8FF",gold:"FFD700",goldenrod:"DAA520",gray:"80",green:"008000",greenyellow:"ADFF2F",grey:"80",honeydew:"F0FFF0",hotpink:"FF69B4",indianred:"CD5C5C",indigo:"4B0082",ivory:"FFFFF0",khaki:"F0E68C",lavender:"E6E6FA",lavenderblush:"FFF0F5",lawngreen:"7CFC00",lemonchiffon:"FFFACD",lightblue:"ADD8E6",lightcoral:"F08080",lightcyan:"E0FFFF",lightgoldenrodyellow:"FAFAD2",lightgray:"D3",lightgreen:"90EE90",lightgrey:"D3",lightpink:"FFB6C1",lightsalmon:"FFA07A",lightseagreen:"20B2AA",lightskyblue:"87CEFA",lightslategray:"789",lightslategrey:"789",lightsteelblue:"B0C4DE",lightyellow:"FFFFE0",lime:"00FF00",limegreen:"32CD32",linen:"FAF0E6",magenta:"FF00FF",maroon:"800000",mediumaquamarine:"66CDAA",mediumblue:"0000CD",mediumorchid:"BA55D3",mediumpurple:"9370DB",mediumseagreen:"3CB371",mediumslateblue:"7B68EE",mediumspringgreen:"00FA9A",mediumturquoise:"48D1CC",mediumvioletred:"C71585",midnightblue:"191970",mintcream:"F5FFFA",mistyrose:"FFE4E1",moccasin:"FFE4B5",navajowhite:"FFDEAD",navy:"000080",oldlace:"FDF5E6",olive:"808000",olivedrab:"6B8E23",orange:"FFA500",orangered:"FF4500",orchid:"DA70D6",palegoldenrod:"EEE8AA",palegreen:"98FB98",paleturquoise:"AFEEEE",palevioletred:"D87093",papayawhip:"FFEFD5",peachpuff:"FFDAB9",peru:"CD853F",pink:"FFC0CB",plum:"DDA0DD",powderblue:"B0E0E6",purple:"800080",rebeccapurple:"639",red:"F00",rosybrown:"BC8F8F",royalblue:"4169E1",saddlebrown:"8B4513",salmon:"FA8072",sandybrown:"F4A460",seagreen:"2E8B57",seashell:"FFF5EE",sienna:"A0522D",silver:"C0",skyblue:"87CEEB",slateblue:"6A5ACD",slategray:"708090",slategrey:"708090",snow:"FFFAFA",springgreen:"00FF7F",steelblue:"4682B4",tan:"D2B48C",teal:"008080",thistle:"D8BFD8",tomato:"FF6347",turquoise:"40E0D0",violet:"EE82EE",wheat:"F5DEB3",white:"F",whitesmoke:"F5",yellow:"FF0",yellowgreen:"9ACD32"},a=/^rgb\((\d+),\s*(\d+),\s*(\d+)/i,l=/^rgba\((\d+),\s*(\d+),\s*(\d+),\s*(\d*\.?\d+)/i,i=/^hsl\((\d+),\s*(\d+)%\s*,\s*(\d+)%/i,t=/^hsla\((\d+),\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d*\.?\d+)/i,n=parseInt,s=parseFloat,{round:o}=Math;let d={},g=0;function c(e){let F,r,a,l=1;switch(e.length){case 9:F=n(e.slice(1,3),16),r=n(e.slice(3,5),16),a=n(e.slice(5,7),16),l=n(e.slice(7,9),16)/255;break;case 7:F=n(e.slice(1,3),16),r=n(e.slice(3,5),16),a=n(e.slice(5,7),16);break;case 5:F=n(e[1]+e[1],16),r=n(e[2]+e[2],16),a=n(e[3]+e[3],16),l=n(e[4]+e[4],16)/255;break;case 4:F=n(e[1]+e[1],16),r=n(e[2]+e[2],16),a=n(e[3]+e[3],16);break;case 3:F=r=a=n(e[1]+e[2],16);break;case 2:F=r=a=n(e[1]+e[1],16)}return{r:F,g:r,b:a,a:l}}const u=1/6,b=.5,D=2/3,E=1/3;function h(e,F,r){return r<0?r++:r>1&&r--,r<u?e+6*(F-e)*r:r<b?F:r<D?e+(F-e)*(D-r)*6:e}function A(e,F,r,a=1){let l,i,t;if(e/=360,r/=100,0===(F/=100))l=i=t=r;else{let a=r<.5?r*(1+F):r+F-r*F,n=2*r-a;l=h(n,a,e+E),i=h(n,a,e),t=h(n,a,e-E)}return{r:o(255*l),g:o(255*i),b:o(255*t),a:a}}e.add("color"),F.object=function(e,F){let o,u=void 0!==F&&1!==F;if("string"==typeof e){const F=d[e];if(F)o=Object.assign({},F);else{switch(e[0]){case"#":o=c(e);break;case"R":case"r":"("===e[4]&&l.test(e)?o=function(e){const F=l.exec(e);return{r:n(F[1]),g:n(F[2]),b:n(F[3]),a:s(F[4])}}(e):"("===e[3]&&a.test(e)&&(o=function(e){const F=a.exec(e);return{r:n(F[1]),g:n(F[2]),b:n(F[3]),a:1}}(e));break;case"H":case"h":"("===e[4]&&t.test(e)?o=function(e){const F=t.exec(e);return A(s(F[1]),s(F[2]),s(F[3]),s(F[4]))}(e):"("===e[3]&&i.test(e)&&(o=function(e){const F=i.exec(e);return A(s(F[1]),s(F[2]),s(F[3]),1)}(e))}if(!o){const F=r[e.toLowerCase()];F&&(o=c("#"+F))}o&&(g++,g>1e4&&(d={},g=0),d[e]=Object.assign({},o))}}else"object"==typeof e&&(void 0===e.a&&(e.a=1),u&&(e=Object.assign({},e)),o=e);return o||(o={r:255,g:255,b:255,a:1}),u&&(o.a*=F),o};
1
+ import{isUndefined as e,isString as F,isObject as r,Plugin as a,ColorConvert as l}from"@leafer-ui/draw";const i={transparent:"FFF0",aliceblue:"F0F8FF",antiquewhite:"FAEBD7",aqua:"0FF",aquamarine:"7FFFD4",azure:"F0FFFF",beige:"F5F5DC",bisque:"FFE4C4",black:"0",blanchedalmond:"FFEBCD",blue:"00F",blueviolet:"8A2BE2",brown:"A52A2A",burlywood:"DEB887",cadetblue:"5F9EA0",chartreuse:"7FFF00",chocolate:"D2691E",coral:"FF7F50",cornflowerblue:"6495ED",cornsilk:"FFF8DC",crimson:"DC143C",cyan:"0FF",darkblue:"00008B",darkcyan:"008B8B",darkgoldenrod:"B8860B",darkgray:"A9",darkgreen:"006400",darkgrey:"A9",darkkhaki:"BDB76B",darkmagenta:"8B008B",darkolivegreen:"556B2F",darkorange:"FF8C00",darkorchid:"9932CC",darkred:"8B0000",darksalmon:"E9967A",darkseagreen:"8FBC8F",darkslateblue:"483D8B",darkslategray:"2F4F4F",darkslategrey:"2F4F4F",darkturquoise:"00CED1",darkviolet:"9400D3",deeppink:"FF1493",deepskyblue:"00BFFF",dimgray:"69",dimgrey:"69",dodgerblue:"1E90FF",firebrick:"B22222",floralwhite:"FFFAF0",forestgreen:"228B22",fuchsia:"F0F",gainsboro:"DC",ghostwhite:"F8F8FF",gold:"FFD700",goldenrod:"DAA520",gray:"80",green:"008000",greenyellow:"ADFF2F",grey:"80",honeydew:"F0FFF0",hotpink:"FF69B4",indianred:"CD5C5C",indigo:"4B0082",ivory:"FFFFF0",khaki:"F0E68C",lavender:"E6E6FA",lavenderblush:"FFF0F5",lawngreen:"7CFC00",lemonchiffon:"FFFACD",lightblue:"ADD8E6",lightcoral:"F08080",lightcyan:"E0FFFF",lightgoldenrodyellow:"FAFAD2",lightgray:"D3",lightgreen:"90EE90",lightgrey:"D3",lightpink:"FFB6C1",lightsalmon:"FFA07A",lightseagreen:"20B2AA",lightskyblue:"87CEFA",lightslategray:"789",lightslategrey:"789",lightsteelblue:"B0C4DE",lightyellow:"FFFFE0",lime:"00FF00",limegreen:"32CD32",linen:"FAF0E6",magenta:"FF00FF",maroon:"800000",mediumaquamarine:"66CDAA",mediumblue:"0000CD",mediumorchid:"BA55D3",mediumpurple:"9370DB",mediumseagreen:"3CB371",mediumslateblue:"7B68EE",mediumspringgreen:"00FA9A",mediumturquoise:"48D1CC",mediumvioletred:"C71585",midnightblue:"191970",mintcream:"F5FFFA",mistyrose:"FFE4E1",moccasin:"FFE4B5",navajowhite:"FFDEAD",navy:"000080",oldlace:"FDF5E6",olive:"808000",olivedrab:"6B8E23",orange:"FFA500",orangered:"FF4500",orchid:"DA70D6",palegoldenrod:"EEE8AA",palegreen:"98FB98",paleturquoise:"AFEEEE",palevioletred:"D87093",papayawhip:"FFEFD5",peachpuff:"FFDAB9",peru:"CD853F",pink:"FFC0CB",plum:"DDA0DD",powderblue:"B0E0E6",purple:"800080",rebeccapurple:"639",red:"F00",rosybrown:"BC8F8F",royalblue:"4169E1",saddlebrown:"8B4513",salmon:"FA8072",sandybrown:"F4A460",seagreen:"2E8B57",seashell:"FFF5EE",sienna:"A0522D",silver:"C0",skyblue:"87CEEB",slateblue:"6A5ACD",slategray:"708090",slategrey:"708090",snow:"FFFAFA",springgreen:"00FF7F",steelblue:"4682B4",tan:"D2B48C",teal:"008080",thistle:"D8BFD8",tomato:"FF6347",turquoise:"40E0D0",violet:"EE82EE",wheat:"F5DEB3",white:"F",whitesmoke:"F5",yellow:"FF0",yellowgreen:"9ACD32"},n=/^rgb\((\d+),\s*(\d+),\s*(\d+)/i,t=/^rgba\((\d+),\s*(\d+),\s*(\d+),\s*(\d*\.?\d+)/i,s=/^hsl\((\d+),\s*(\d+)%\s*,\s*(\d+)%/i,o=/^hsla\((\d+),\s*(\d+)%\s*,\s*(\d+)%\s*,\s*(\d*\.?\d+)/i,d=parseInt,g=parseFloat,{round:c}=Math;let u={},b=0;function D(e){let F,r,a,l=1;switch(e.length){case 9:F=d(e.slice(1,3),16),r=d(e.slice(3,5),16),a=d(e.slice(5,7),16),l=d(e.slice(7,9),16)/255;break;case 7:F=d(e.slice(1,3),16),r=d(e.slice(3,5),16),a=d(e.slice(5,7),16);break;case 5:F=d(e[1]+e[1],16),r=d(e[2]+e[2],16),a=d(e[3]+e[3],16),l=d(e[4]+e[4],16)/255;break;case 4:F=d(e[1]+e[1],16),r=d(e[2]+e[2],16),a=d(e[3]+e[3],16);break;case 3:F=r=a=d(e[1]+e[2],16);break;case 2:F=r=a=d(e[1]+e[1],16)}return{r:F,g:r,b:a,a:l}}const E=1/6,h=.5,A=2/3,B=1/3;function m(e,F,r){return r<0?r++:r>1&&r--,r<E?e+6*(F-e)*r:r<h?F:r<A?e+(F-e)*(A-r)*6:e}function k(e,F,r,a=1){let l,i,n;if(e/=360,r/=100,0===(F/=100))l=i=n=r;else{let a=r<.5?r*(1+F):r+F-r*F,t=2*r-a;l=m(t,a,e+B),i=m(t,a,e),n=m(t,a,e-B)}return{r:c(255*l),g:c(255*i),b:c(255*n),a:a}}a.add("color"),l.object=function(a,l){let c,E=!e(l)&&l<1;if(F(a)){const e=u[a];if(e)c=Object.assign({},e);else{switch(a[0]){case"#":c=D(a);break;case"R":case"r":"("===a[4]&&t.test(a)?c=function(e){const F=t.exec(e);return{r:d(F[1]),g:d(F[2]),b:d(F[3]),a:g(F[4])}}(a):"("===a[3]&&n.test(a)&&(c=function(e){const F=n.exec(e);return{r:d(F[1]),g:d(F[2]),b:d(F[3]),a:1}}(a));break;case"H":case"h":"("===a[4]&&o.test(a)?c=function(e){const F=o.exec(e);return k(g(F[1]),g(F[2]),g(F[3]),g(F[4]))}(a):"("===a[3]&&s.test(a)&&(c=function(e){const F=s.exec(e);return k(g(F[1]),g(F[2]),g(F[3]),1)}(a))}if(!c){const e=i[a.toLowerCase()];e&&(c=D("#"+e))}c&&(b++,b>1e4&&(u={},b=0),u[a]=Object.assign({},c))}}else r(a)&&(e(a.a)&&(a.a=1),E&&(a=Object.assign({},a)),c=a);return c||(c={r:255,g:255,b:255,a:1}),E&&(c.a*=l),c};
2
2
  //# sourceMappingURL=color.esm.min.js.map