fsevents 1.0.9 → 1.0.10

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.

Potentially problematic release.


This version of fsevents might be problematic. Click here for more details.

@@ -1,594 +0,0 @@
1
- /* MIT license */
2
- var cssKeywords = require('./css-keywords');
3
-
4
- // NOTE: conversions should only return primitive values (i.e. arrays, or
5
- // values that give correct `typeof` results).
6
- // do not use box values types (i.e. Number(), String(), etc.)
7
-
8
- var reverseKeywords = {};
9
- for (var key in cssKeywords) {
10
- if (cssKeywords.hasOwnProperty(key)) {
11
- reverseKeywords[cssKeywords[key].join()] = key;
12
- }
13
- }
14
-
15
- var convert = module.exports = {
16
- rgb: {},
17
- hsl: {},
18
- hsv: {},
19
- hwb: {},
20
- cmyk: {},
21
- xyz: {},
22
- lab: {},
23
- lch: {},
24
- hex: {},
25
- keyword: {},
26
- ansi16: {},
27
- ansi256: {}
28
- };
29
-
30
- convert.rgb.hsl = function (rgb) {
31
- var r = rgb[0] / 255;
32
- var g = rgb[1] / 255;
33
- var b = rgb[2] / 255;
34
- var min = Math.min(r, g, b);
35
- var max = Math.max(r, g, b);
36
- var delta = max - min;
37
- var h;
38
- var s;
39
- var l;
40
-
41
- if (max === min) {
42
- h = 0;
43
- } else if (r === max) {
44
- h = (g - b) / delta;
45
- } else if (g === max) {
46
- h = 2 + (b - r) / delta;
47
- } else if (b === max) {
48
- h = 4 + (r - g) / delta;
49
- }
50
-
51
- h = Math.min(h * 60, 360);
52
-
53
- if (h < 0) {
54
- h += 360;
55
- }
56
-
57
- l = (min + max) / 2;
58
-
59
- if (max === min) {
60
- s = 0;
61
- } else if (l <= 0.5) {
62
- s = delta / (max + min);
63
- } else {
64
- s = delta / (2 - max - min);
65
- }
66
-
67
- return [h, s * 100, l * 100];
68
- };
69
-
70
- convert.rgb.hsv = function (rgb) {
71
- var r = rgb[0];
72
- var g = rgb[1];
73
- var b = rgb[2];
74
- var min = Math.min(r, g, b);
75
- var max = Math.max(r, g, b);
76
- var delta = max - min;
77
- var h;
78
- var s;
79
- var v;
80
-
81
- if (max === 0) {
82
- s = 0;
83
- } else {
84
- s = (delta / max * 1000) / 10;
85
- }
86
-
87
- if (max === min) {
88
- h = 0;
89
- } else if (r === max) {
90
- h = (g - b) / delta;
91
- } else if (g === max) {
92
- h = 2 + (b - r) / delta;
93
- } else if (b === max) {
94
- h = 4 + (r - g) / delta;
95
- }
96
-
97
- h = Math.min(h * 60, 360);
98
-
99
- if (h < 0) {
100
- h += 360;
101
- }
102
-
103
- v = ((max / 255) * 1000) / 10;
104
-
105
- return [h, s, v];
106
- };
107
-
108
- convert.rgb.hwb = function (rgb) {
109
- var r = rgb[0];
110
- var g = rgb[1];
111
- var b = rgb[2];
112
- var h = convert.rgb.hsl(rgb)[0];
113
- var w = 1 / 255 * Math.min(r, Math.min(g, b));
114
-
115
- b = 1 - 1 / 255 * Math.max(r, Math.max(g, b));
116
-
117
- return [h, w * 100, b * 100];
118
- };
119
-
120
- convert.rgb.cmyk = function (rgb) {
121
- var r = rgb[0] / 255;
122
- var g = rgb[1] / 255;
123
- var b = rgb[2] / 255;
124
- var c;
125
- var m;
126
- var y;
127
- var k;
128
-
129
- k = Math.min(1 - r, 1 - g, 1 - b);
130
- c = (1 - r - k) / (1 - k) || 0;
131
- m = (1 - g - k) / (1 - k) || 0;
132
- y = (1 - b - k) / (1 - k) || 0;
133
-
134
- return [c * 100, m * 100, y * 100, k * 100];
135
- };
136
-
137
- convert.rgb.keyword = function (rgb) {
138
- return reverseKeywords[rgb.join()];
139
- };
140
-
141
- convert.keyword.rgb = function (keyword) {
142
- return cssKeywords[keyword];
143
- };
144
-
145
- convert.rgb.xyz = function (rgb) {
146
- var r = rgb[0] / 255;
147
- var g = rgb[1] / 255;
148
- var b = rgb[2] / 255;
149
-
150
- // assume sRGB
151
- r = r > 0.04045 ? Math.pow(((r + 0.055) / 1.055), 2.4) : (r / 12.92);
152
- g = g > 0.04045 ? Math.pow(((g + 0.055) / 1.055), 2.4) : (g / 12.92);
153
- b = b > 0.04045 ? Math.pow(((b + 0.055) / 1.055), 2.4) : (b / 12.92);
154
-
155
- var x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805);
156
- var y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722);
157
- var z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505);
158
-
159
- return [x * 100, y * 100, z * 100];
160
- };
161
-
162
- convert.rgb.lab = function (rgb) {
163
- var xyz = convert.rgb.xyz(rgb);
164
- var x = xyz[0];
165
- var y = xyz[1];
166
- var z = xyz[2];
167
- var l;
168
- var a;
169
- var b;
170
-
171
- x /= 95.047;
172
- y /= 100;
173
- z /= 108.883;
174
-
175
- x = x > 0.008856 ? Math.pow(x, 1 / 3) : (7.787 * x) + (16 / 116);
176
- y = y > 0.008856 ? Math.pow(y, 1 / 3) : (7.787 * y) + (16 / 116);
177
- z = z > 0.008856 ? Math.pow(z, 1 / 3) : (7.787 * z) + (16 / 116);
178
-
179
- l = (116 * y) - 16;
180
- a = 500 * (x - y);
181
- b = 200 * (y - z);
182
-
183
- return [l, a, b];
184
- };
185
-
186
- convert.hsl.rgb = function (hsl) {
187
- var h = hsl[0] / 360;
188
- var s = hsl[1] / 100;
189
- var l = hsl[2] / 100;
190
- var t1;
191
- var t2;
192
- var t3;
193
- var rgb;
194
- var val;
195
-
196
- if (s === 0) {
197
- val = l * 255;
198
- return [val, val, val];
199
- }
200
-
201
- if (l < 0.5) {
202
- t2 = l * (1 + s);
203
- } else {
204
- t2 = l + s - l * s;
205
- }
206
-
207
- t1 = 2 * l - t2;
208
-
209
- rgb = [0, 0, 0];
210
- for (var i = 0; i < 3; i++) {
211
- t3 = h + 1 / 3 * -(i - 1);
212
- if (t3 < 0) {
213
- t3++;
214
- }
215
- if (t3 > 1) {
216
- t3--;
217
- }
218
-
219
- if (6 * t3 < 1) {
220
- val = t1 + (t2 - t1) * 6 * t3;
221
- } else if (2 * t3 < 1) {
222
- val = t2;
223
- } else if (3 * t3 < 2) {
224
- val = t1 + (t2 - t1) * (2 / 3 - t3) * 6;
225
- } else {
226
- val = t1;
227
- }
228
-
229
- rgb[i] = val * 255;
230
- }
231
-
232
- return rgb;
233
- };
234
-
235
- convert.hsl.hsv = function (hsl) {
236
- var h = hsl[0];
237
- var s = hsl[1] / 100;
238
- var l = hsl[2] / 100;
239
- var sv;
240
- var v;
241
-
242
- if (l === 0) {
243
- // no need to do calc on black
244
- // also avoids divide by 0 error
245
- return [0, 0, 0];
246
- }
247
-
248
- l *= 2;
249
- s *= (l <= 1) ? l : 2 - l;
250
- v = (l + s) / 2;
251
- sv = (2 * s) / (l + s);
252
-
253
- return [h, sv * 100, v * 100];
254
- };
255
-
256
- convert.hsv.rgb = function (hsv) {
257
- var h = hsv[0] / 60;
258
- var s = hsv[1] / 100;
259
- var v = hsv[2] / 100;
260
- var hi = Math.floor(h) % 6;
261
-
262
- var f = h - Math.floor(h);
263
- var p = 255 * v * (1 - s);
264
- var q = 255 * v * (1 - (s * f));
265
- var t = 255 * v * (1 - (s * (1 - f)));
266
- v *= 255;
267
-
268
- switch (hi) {
269
- case 0:
270
- return [v, t, p];
271
- case 1:
272
- return [q, v, p];
273
- case 2:
274
- return [p, v, t];
275
- case 3:
276
- return [p, q, v];
277
- case 4:
278
- return [t, p, v];
279
- case 5:
280
- return [v, p, q];
281
- }
282
- };
283
-
284
- convert.hsv.hsl = function (hsv) {
285
- var h = hsv[0];
286
- var s = hsv[1] / 100;
287
- var v = hsv[2] / 100;
288
- var sl;
289
- var l;
290
-
291
- l = (2 - s) * v;
292
- sl = s * v;
293
- sl /= (l <= 1) ? l : 2 - l;
294
- sl = sl || 0;
295
- l /= 2;
296
-
297
- return [h, sl * 100, l * 100];
298
- };
299
-
300
- // http://dev.w3.org/csswg/css-color/#hwb-to-rgb
301
- convert.hwb.rgb = function (hwb) {
302
- var h = hwb[0] / 360;
303
- var wh = hwb[1] / 100;
304
- var bl = hwb[2] / 100;
305
- var ratio = wh + bl;
306
- var i;
307
- var v;
308
- var f;
309
- var n;
310
-
311
- // wh + bl cant be > 1
312
- if (ratio > 1) {
313
- wh /= ratio;
314
- bl /= ratio;
315
- }
316
-
317
- i = Math.floor(6 * h);
318
- v = 1 - bl;
319
- f = 6 * h - i;
320
-
321
- if ((i & 0x01) !== 0) {
322
- f = 1 - f;
323
- }
324
-
325
- n = wh + f * (v - wh); // linear interpolation
326
-
327
- var r;
328
- var g;
329
- var b;
330
- switch (i) {
331
- default:
332
- case 6:
333
- case 0: r = v; g = n; b = wh; break;
334
- case 1: r = n; g = v; b = wh; break;
335
- case 2: r = wh; g = v; b = n; break;
336
- case 3: r = wh; g = n; b = v; break;
337
- case 4: r = n; g = wh; b = v; break;
338
- case 5: r = v; g = wh; b = n; break;
339
- }
340
-
341
- return [r * 255, g * 255, b * 255];
342
- };
343
-
344
- convert.cmyk.rgb = function (cmyk) {
345
- var c = cmyk[0] / 100;
346
- var m = cmyk[1] / 100;
347
- var y = cmyk[2] / 100;
348
- var k = cmyk[3] / 100;
349
- var r;
350
- var g;
351
- var b;
352
-
353
- r = 1 - Math.min(1, c * (1 - k) + k);
354
- g = 1 - Math.min(1, m * (1 - k) + k);
355
- b = 1 - Math.min(1, y * (1 - k) + k);
356
-
357
- return [r * 255, g * 255, b * 255];
358
- };
359
-
360
- convert.xyz.rgb = function (xyz) {
361
- var x = xyz[0] / 100;
362
- var y = xyz[1] / 100;
363
- var z = xyz[2] / 100;
364
- var r;
365
- var g;
366
- var b;
367
-
368
- r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986);
369
- g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415);
370
- b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570);
371
-
372
- // assume sRGB
373
- r = r > 0.0031308
374
- ? ((1.055 * Math.pow(r, 1.0 / 2.4)) - 0.055)
375
- : r *= 12.92;
376
-
377
- g = g > 0.0031308
378
- ? ((1.055 * Math.pow(g, 1.0 / 2.4)) - 0.055)
379
- : g *= 12.92;
380
-
381
- b = b > 0.0031308
382
- ? ((1.055 * Math.pow(b, 1.0 / 2.4)) - 0.055)
383
- : b *= 12.92;
384
-
385
- r = Math.min(Math.max(0, r), 1);
386
- g = Math.min(Math.max(0, g), 1);
387
- b = Math.min(Math.max(0, b), 1);
388
-
389
- return [r * 255, g * 255, b * 255];
390
- };
391
-
392
- convert.xyz.lab = function (xyz) {
393
- var x = xyz[0];
394
- var y = xyz[1];
395
- var z = xyz[2];
396
- var l;
397
- var a;
398
- var b;
399
-
400
- x /= 95.047;
401
- y /= 100;
402
- z /= 108.883;
403
-
404
- x = x > 0.008856 ? Math.pow(x, 1 / 3) : (7.787 * x) + (16 / 116);
405
- y = y > 0.008856 ? Math.pow(y, 1 / 3) : (7.787 * y) + (16 / 116);
406
- z = z > 0.008856 ? Math.pow(z, 1 / 3) : (7.787 * z) + (16 / 116);
407
-
408
- l = (116 * y) - 16;
409
- a = 500 * (x - y);
410
- b = 200 * (y - z);
411
-
412
- return [l, a, b];
413
- };
414
-
415
- convert.lab.xyz = function (lab) {
416
- var l = lab[0];
417
- var a = lab[1];
418
- var b = lab[2];
419
- var x;
420
- var y;
421
- var z;
422
- var y2;
423
-
424
- if (l <= 8) {
425
- y = (l * 100) / 903.3;
426
- y2 = (7.787 * (y / 100)) + (16 / 116);
427
- } else {
428
- y = 100 * Math.pow((l + 16) / 116, 3);
429
- y2 = Math.pow(y / 100, 1 / 3);
430
- }
431
-
432
- x = x / 95.047 <= 0.008856
433
- ? x = (95.047 * ((a / 500) + y2 - (16 / 116))) / 7.787
434
- : 95.047 * Math.pow((a / 500) + y2, 3);
435
- z = z / 108.883 <= 0.008859
436
- ? z = (108.883 * (y2 - (b / 200) - (16 / 116))) / 7.787
437
- : 108.883 * Math.pow(y2 - (b / 200), 3);
438
-
439
- return [x, y, z];
440
- };
441
-
442
- convert.lab.lch = function (lab) {
443
- var l = lab[0];
444
- var a = lab[1];
445
- var b = lab[2];
446
- var hr;
447
- var h;
448
- var c;
449
-
450
- hr = Math.atan2(b, a);
451
- h = hr * 360 / 2 / Math.PI;
452
-
453
- if (h < 0) {
454
- h += 360;
455
- }
456
-
457
- c = Math.sqrt(a * a + b * b);
458
-
459
- return [l, c, h];
460
- };
461
-
462
- convert.lch.lab = function (lch) {
463
- var l = lch[0];
464
- var c = lch[1];
465
- var h = lch[2];
466
- var a;
467
- var b;
468
- var hr;
469
-
470
- hr = h / 360 * 2 * Math.PI;
471
- a = c * Math.cos(hr);
472
- b = c * Math.sin(hr);
473
-
474
- return [l, a, b];
475
- };
476
-
477
- convert.rgb.ansi16 = function (args) {
478
- var r = args[0];
479
- var g = args[1];
480
- var b = args[2];
481
- var value = 1 in arguments ? arguments[1] : convert.rgb.hsv(args)[2]; // hsv -> ansi16 optimization
482
-
483
- value = Math.round(value / 50);
484
-
485
- if (value === 0) {
486
- return 30;
487
- }
488
-
489
- var ansi = 30
490
- + ((Math.round(b / 255) << 2)
491
- | (Math.round(g / 255) << 1)
492
- | Math.round(r / 255));
493
-
494
- if (value === 2) {
495
- ansi += 60;
496
- }
497
-
498
- return ansi;
499
- };
500
-
501
- convert.hsv.ansi16 = function (args) {
502
- // optimization here; we already know the value and don't need to get
503
- // it converted for us.
504
- return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]);
505
- };
506
-
507
- convert.rgb.ansi256 = function (args) {
508
- var r = args[0];
509
- var g = args[1];
510
- var b = args[2];
511
-
512
- // we use the extended greyscale palette here, with the exception of
513
- // black and white. normal palette only has 4 greyscale shades.
514
- if (r === g && g === b) {
515
- if (r < 8) {
516
- return 16;
517
- }
518
-
519
- if (r > 248) {
520
- return 231;
521
- }
522
-
523
- return Math.round(((r - 8) / 247) * 24) + 232;
524
- }
525
-
526
- var ansi = 16
527
- + (36 * Math.round(r / 255 * 5))
528
- + (6 * Math.round(g / 255 * 5))
529
- + Math.round(b / 255 * 5);
530
-
531
- return ansi;
532
- };
533
-
534
- convert.ansi16.rgb = function (args) {
535
- var color = args % 10;
536
-
537
- // handle greyscale
538
- if (color === 0 || color === 7) {
539
- if (args > 50) {
540
- color += 3.5;
541
- }
542
-
543
- color = color / 10.5 * 255;
544
-
545
- return [color, color, color];
546
- }
547
-
548
- var mult = (~~(args > 50) + 1) * 0.5;
549
- var r = ((color & 1) * mult) * 255;
550
- var g = (((color >> 1) & 1) * mult) * 255;
551
- var b = (((color >> 2) & 1) * mult) * 255;
552
-
553
- return [r, g, b];
554
- };
555
-
556
- convert.ansi256.rgb = function (args) {
557
- // handle greyscale
558
- if (args >= 232) {
559
- var c = (args - 232) * 10 + 8;
560
- return [c, c, c];
561
- }
562
-
563
- args -= 16;
564
-
565
- var rem;
566
- var r = Math.floor(args / 36) / 5 * 255;
567
- var g = Math.floor((rem = args % 36) / 6) / 5 * 255;
568
- var b = (rem % 6) / 5 * 255;
569
-
570
- return [r, g, b];
571
- };
572
-
573
- convert.rgb.hex = function (args) {
574
- var integer = ((Math.round(args[0]) & 0xFF) << 16)
575
- + ((Math.round(args[1]) & 0xFF) << 8)
576
- + (Math.round(args[2]) & 0xFF);
577
-
578
- var string = integer.toString(16).toUpperCase();
579
- return '000000'.substring(string.length) + string;
580
- };
581
-
582
- convert.hex.rgb = function (args) {
583
- var match = args.toString(16).match(/[a-f0-9]{6}/i);
584
- if (!match) {
585
- return [0, 0, 0];
586
- }
587
-
588
- var integer = parseInt(match[0], 16);
589
- var r = (integer >> 16) & 0xFF;
590
- var g = (integer >> 8) & 0xFF;
591
- var b = integer & 0xFF;
592
-
593
- return [r, g, b];
594
- };