@saasquatch/mint-components 1.5.0-6 → 1.5.0-7

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 (50) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/mint-components.cjs.js +1 -1
  3. package/dist/cjs/{sqm-brand_31.cjs.entry.js → sqm-brand_38.cjs.entry.js} +406 -3265
  4. package/dist/collection/collection-manifest.json +9 -2
  5. package/dist/collection/components/sqm-brand/sqm-brand.js +2 -2
  6. package/dist/collection/components/sqm-referral-table/ReferralTable.stories.js +1 -0
  7. package/dist/collection/components/sqm-referral-table/ReferralTableCell.stories.js +1 -0
  8. package/dist/collection/components/sqm-referral-table/ReferralTableRewardsCell.stories.js +1 -0
  9. package/dist/collection/components/sqm-rewards-table/UseRewardsTable.stories.js +4 -1
  10. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-date-cell.js +43 -0
  11. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-rewards-cell.js +161 -0
  12. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-source-cell.js +81 -0
  13. package/dist/collection/components/sqm-rewards-table/cells/sqm-rewards-table-status-cell.js +84 -0
  14. package/dist/collection/components/sqm-rewards-table/columns/RewardTableColumn.js +1 -0
  15. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-date-column.js +130 -0
  16. package/dist/collection/components/sqm-rewards-table/{sqm-rewards-table-column.js → columns/sqm-rewards-table-reward-column.js} +5 -7
  17. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-source-column.js +145 -0
  18. package/dist/collection/components/sqm-rewards-table/columns/sqm-rewards-table-status-column.js +117 -0
  19. package/dist/collection/components/sqm-rewards-table/useRewardsTable.js +32 -6
  20. package/dist/collection/components/sqm-share-button/sqm-share-button.js +1 -1
  21. package/dist/collection/components/sqm-stencilbook/AutoColor.js +40 -45
  22. package/dist/esm/loader.js +1 -1
  23. package/dist/esm/mint-components.js +1 -1
  24. package/dist/esm/{sqm-brand_31.entry.js → sqm-brand_38.entry.js} +400 -3266
  25. package/dist/esm-es5/loader.js +1 -1
  26. package/dist/esm-es5/mint-components.js +1 -1
  27. package/dist/esm-es5/sqm-brand_38.entry.js +1 -0
  28. package/dist/mint-components/mint-components.esm.js +1 -1
  29. package/dist/mint-components/p-12071042.system.entry.js +1 -0
  30. package/dist/mint-components/p-a88a08bb.system.js +1 -1
  31. package/dist/mint-components/p-b90574e5.entry.js +372 -0
  32. package/dist/types/components/sqm-brand/sqm-brand.d.ts +2 -2
  33. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-date-cell.d.ts +7 -0
  34. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-rewards-cell.d.ts +5 -0
  35. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-source-cell.d.ts +4 -0
  36. package/dist/types/components/sqm-rewards-table/cells/sqm-rewards-table-status-cell.d.ts +6 -0
  37. package/dist/types/components/sqm-rewards-table/columns/RewardTableColumn.d.ts +5 -0
  38. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-date-column.d.ts +25 -0
  39. package/dist/types/components/sqm-rewards-table/{sqm-rewards-table-column.d.ts → columns/sqm-rewards-table-reward-column.d.ts} +2 -3
  40. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-source-column.d.ts +23 -0
  41. package/dist/types/components/sqm-rewards-table/columns/sqm-rewards-table-status-column.d.ts +19 -0
  42. package/dist/types/components/sqm-rewards-table/useRewardsTable.d.ts +0 -33
  43. package/dist/types/components/sqm-stencilbook/AutoColor.d.ts +0 -8
  44. package/dist/types/components.d.ts +178 -10
  45. package/dist/types/saasquatch.d.ts +34 -0
  46. package/grapesjs/grapesjs.js +1 -1
  47. package/package.json +2 -3
  48. package/dist/esm-es5/sqm-brand_31.entry.js +0 -58
  49. package/dist/mint-components/p-8d6bb835.system.entry.js +0 -58
  50. package/dist/mint-components/p-90a4bcd0.entry.js +0 -398
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h as h$1, c as Host, d as getAssetPath } from './index-17b4da69.js';
2
- import { c as createCommonjsModule, a as commonjsGlobal, m as h, e as useEffect, j as useState, f as useRef, n as d$2, y as y$1, b as browser, u as useReducer, k as useMemo } from './extends-3a3f9fe2.js';
2
+ import { m as h, e as useEffect, j as useState, f as useRef, n as d$2, y as y$1, b as browser, u as useReducer, c as createCommonjsModule, a as commonjsGlobal, k as useMemo } from './extends-3a3f9fe2.js';
3
3
  import { i as intl, a as insertCSS } from './global-e0e25c22.js';
4
4
  import { u as useCallback } from './use-callback-b38a1523.js';
5
5
  import { d as dist, n as ne$1, c as cn, D as De, j as j$1, a as sn, b as mn, H as He, $ as $e, S as S$1, V as Ve, M as M$1, p as pn, v as vn, x as x$1, e as D$1, Y, z as ze, A as A$1 } from './index.module-eb50a8d2.js';
@@ -44,3231 +44,46 @@ function buildFontsCssUrl(...fonts) {
44
44
  return `https://fonts.googleapis.com/css2?${queryString}`;
45
45
  }
46
46
 
47
- var chroma = createCommonjsModule(function (module, exports) {
48
- /**
49
- * chroma.js - JavaScript library for color conversions
50
- *
51
- * Copyright (c) 2011-2019, Gregor Aisch
52
- * All rights reserved.
53
- *
54
- * Redistribution and use in source and binary forms, with or without
55
- * modification, are permitted provided that the following conditions are met:
56
- *
57
- * 1. Redistributions of source code must retain the above copyright notice, this
58
- * list of conditions and the following disclaimer.
59
- *
60
- * 2. Redistributions in binary form must reproduce the above copyright notice,
61
- * this list of conditions and the following disclaimer in the documentation
62
- * and/or other materials provided with the distribution.
63
- *
64
- * 3. The name Gregor Aisch may not be used to endorse or promote products
65
- * derived from this software without specific prior written permission.
66
- *
67
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
68
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
69
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
70
- * DISCLAIMED. IN NO EVENT SHALL GREGOR AISCH OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
71
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
72
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
73
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
74
- * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
75
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
76
- * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
77
- *
78
- * -------------------------------------------------------
79
- *
80
- * chroma.js includes colors from colorbrewer2.org, which are released under
81
- * the following license:
82
- *
83
- * Copyright (c) 2002 Cynthia Brewer, Mark Harrower,
84
- * and The Pennsylvania State University.
85
- *
86
- * Licensed under the Apache License, Version 2.0 (the "License");
87
- * you may not use this file except in compliance with the License.
88
- * You may obtain a copy of the License at
89
- * http://www.apache.org/licenses/LICENSE-2.0
90
- *
91
- * Unless required by applicable law or agreed to in writing,
92
- * software distributed under the License is distributed on an
93
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
94
- * either express or implied. See the License for the specific
95
- * language governing permissions and limitations under the License.
96
- *
97
- * ------------------------------------------------------
98
- *
99
- * Named colors are taken from X11 Color Names.
100
- * http://www.w3.org/TR/css3-color/#svg-color
101
- *
102
- * @preserve
103
- */
104
-
105
- (function (global, factory) {
106
- module.exports = factory() ;
107
- }(commonjsGlobal, (function () {
108
- var limit = function (x, min, max) {
109
- if ( min === void 0 ) min=0;
110
- if ( max === void 0 ) max=1;
111
-
112
- return x < min ? min : x > max ? max : x;
113
- };
114
-
115
- var clip_rgb = function (rgb) {
116
- rgb._clipped = false;
117
- rgb._unclipped = rgb.slice(0);
118
- for (var i=0; i<=3; i++) {
119
- if (i < 3) {
120
- if (rgb[i] < 0 || rgb[i] > 255) { rgb._clipped = true; }
121
- rgb[i] = limit(rgb[i], 0, 255);
122
- } else if (i === 3) {
123
- rgb[i] = limit(rgb[i], 0, 1);
124
- }
125
- }
126
- return rgb;
127
- };
128
-
129
- // ported from jQuery's $.type
130
- var classToType = {};
131
- for (var i = 0, list = ['Boolean', 'Number', 'String', 'Function', 'Array', 'Date', 'RegExp', 'Undefined', 'Null']; i < list.length; i += 1) {
132
- var name = list[i];
133
-
134
- classToType[("[object " + name + "]")] = name.toLowerCase();
135
- }
136
- var type = function(obj) {
137
- return classToType[Object.prototype.toString.call(obj)] || "object";
138
- };
139
-
140
- var unpack = function (args, keyOrder) {
141
- if ( keyOrder === void 0 ) keyOrder=null;
142
-
143
- // if called with more than 3 arguments, we return the arguments
144
- if (args.length >= 3) { return Array.prototype.slice.call(args); }
145
- // with less than 3 args we check if first arg is object
146
- // and use the keyOrder string to extract and sort properties
147
- if (type(args[0]) == 'object' && keyOrder) {
148
- return keyOrder.split('')
149
- .filter(function (k) { return args[0][k] !== undefined; })
150
- .map(function (k) { return args[0][k]; });
151
- }
152
- // otherwise we just return the first argument
153
- // (which we suppose is an array of args)
154
- return args[0];
155
- };
156
-
157
- var last = function (args) {
158
- if (args.length < 2) { return null; }
159
- var l = args.length-1;
160
- if (type(args[l]) == 'string') { return args[l].toLowerCase(); }
161
- return null;
162
- };
163
-
164
- var PI = Math.PI;
165
-
166
- var utils = {
167
- clip_rgb: clip_rgb,
168
- limit: limit,
169
- type: type,
170
- unpack: unpack,
171
- last: last,
172
- PI: PI,
173
- TWOPI: PI*2,
174
- PITHIRD: PI/3,
175
- DEG2RAD: PI / 180,
176
- RAD2DEG: 180 / PI
177
- };
178
-
179
- var input = {
180
- format: {},
181
- autodetect: []
182
- };
183
-
184
- var last$1 = utils.last;
185
- var clip_rgb$1 = utils.clip_rgb;
186
- var type$1 = utils.type;
187
-
188
-
189
- var Color = function Color() {
190
- var args = [], len = arguments.length;
191
- while ( len-- ) args[ len ] = arguments[ len ];
192
-
193
- var me = this;
194
- if (type$1(args[0]) === 'object' &&
195
- args[0].constructor &&
196
- args[0].constructor === this.constructor) {
197
- // the argument is already a Color instance
198
- return args[0];
199
- }
200
-
201
- // last argument could be the mode
202
- var mode = last$1(args);
203
- var autodetect = false;
204
-
205
- if (!mode) {
206
- autodetect = true;
207
- if (!input.sorted) {
208
- input.autodetect = input.autodetect.sort(function (a,b) { return b.p - a.p; });
209
- input.sorted = true;
210
- }
211
- // auto-detect format
212
- for (var i = 0, list = input.autodetect; i < list.length; i += 1) {
213
- var chk = list[i];
214
-
215
- mode = chk.test.apply(chk, args);
216
- if (mode) { break; }
217
- }
218
- }
219
-
220
- if (input.format[mode]) {
221
- var rgb = input.format[mode].apply(null, autodetect ? args : args.slice(0,-1));
222
- me._rgb = clip_rgb$1(rgb);
223
- } else {
224
- throw new Error('unknown format: '+args);
225
- }
226
-
227
- // add alpha channel
228
- if (me._rgb.length === 3) { me._rgb.push(1); }
229
- };
230
-
231
- Color.prototype.toString = function toString () {
232
- if (type$1(this.hex) == 'function') { return this.hex(); }
233
- return ("[" + (this._rgb.join(',')) + "]");
234
- };
235
-
236
- var Color_1 = Color;
237
-
238
- var chroma = function () {
239
- var args = [], len = arguments.length;
240
- while ( len-- ) args[ len ] = arguments[ len ];
241
-
242
- return new (Function.prototype.bind.apply( chroma.Color, [ null ].concat( args) ));
243
- };
244
-
245
- chroma.Color = Color_1;
246
- chroma.version = '2.1.2';
247
-
248
- var chroma_1 = chroma;
249
-
250
- var unpack$1 = utils.unpack;
251
- var max = Math.max;
252
-
253
- var rgb2cmyk = function () {
254
- var args = [], len = arguments.length;
255
- while ( len-- ) args[ len ] = arguments[ len ];
256
-
257
- var ref = unpack$1(args, 'rgb');
258
- var r = ref[0];
259
- var g = ref[1];
260
- var b = ref[2];
261
- r = r / 255;
262
- g = g / 255;
263
- b = b / 255;
264
- var k = 1 - max(r,max(g,b));
265
- var f = k < 1 ? 1 / (1-k) : 0;
266
- var c = (1-r-k) * f;
267
- var m = (1-g-k) * f;
268
- var y = (1-b-k) * f;
269
- return [c,m,y,k];
270
- };
271
-
272
- var rgb2cmyk_1 = rgb2cmyk;
273
-
274
- var unpack$2 = utils.unpack;
275
-
276
- var cmyk2rgb = function () {
277
- var args = [], len = arguments.length;
278
- while ( len-- ) args[ len ] = arguments[ len ];
279
-
280
- args = unpack$2(args, 'cmyk');
281
- var c = args[0];
282
- var m = args[1];
283
- var y = args[2];
284
- var k = args[3];
285
- var alpha = args.length > 4 ? args[4] : 1;
286
- if (k === 1) { return [0,0,0,alpha]; }
287
- return [
288
- c >= 1 ? 0 : 255 * (1-c) * (1-k), // r
289
- m >= 1 ? 0 : 255 * (1-m) * (1-k), // g
290
- y >= 1 ? 0 : 255 * (1-y) * (1-k), // b
291
- alpha
292
- ];
293
- };
294
-
295
- var cmyk2rgb_1 = cmyk2rgb;
296
-
297
- var unpack$3 = utils.unpack;
298
- var type$2 = utils.type;
299
-
300
-
301
-
302
- Color_1.prototype.cmyk = function() {
303
- return rgb2cmyk_1(this._rgb);
304
- };
305
-
306
- chroma_1.cmyk = function () {
307
- var args = [], len = arguments.length;
308
- while ( len-- ) args[ len ] = arguments[ len ];
309
-
310
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['cmyk']) ));
311
- };
312
-
313
- input.format.cmyk = cmyk2rgb_1;
314
-
315
- input.autodetect.push({
316
- p: 2,
317
- test: function () {
318
- var args = [], len = arguments.length;
319
- while ( len-- ) args[ len ] = arguments[ len ];
320
-
321
- args = unpack$3(args, 'cmyk');
322
- if (type$2(args) === 'array' && args.length === 4) {
323
- return 'cmyk';
324
- }
325
- }
326
- });
327
-
328
- var unpack$4 = utils.unpack;
329
- var last$2 = utils.last;
330
- var rnd = function (a) { return Math.round(a*100)/100; };
331
-
332
- /*
333
- * supported arguments:
334
- * - hsl2css(h,s,l)
335
- * - hsl2css(h,s,l,a)
336
- * - hsl2css([h,s,l], mode)
337
- * - hsl2css([h,s,l,a], mode)
338
- * - hsl2css({h,s,l,a}, mode)
339
- */
340
- var hsl2css = function () {
341
- var args = [], len = arguments.length;
342
- while ( len-- ) args[ len ] = arguments[ len ];
343
-
344
- var hsla = unpack$4(args, 'hsla');
345
- var mode = last$2(args) || 'lsa';
346
- hsla[0] = rnd(hsla[0] || 0);
347
- hsla[1] = rnd(hsla[1]*100) + '%';
348
- hsla[2] = rnd(hsla[2]*100) + '%';
349
- if (mode === 'hsla' || (hsla.length > 3 && hsla[3]<1)) {
350
- hsla[3] = hsla.length > 3 ? hsla[3] : 1;
351
- mode = 'hsla';
352
- } else {
353
- hsla.length = 3;
354
- }
355
- return (mode + "(" + (hsla.join(',')) + ")");
356
- };
357
-
358
- var hsl2css_1 = hsl2css;
359
-
360
- var unpack$5 = utils.unpack;
361
-
362
- /*
363
- * supported arguments:
364
- * - rgb2hsl(r,g,b)
365
- * - rgb2hsl(r,g,b,a)
366
- * - rgb2hsl([r,g,b])
367
- * - rgb2hsl([r,g,b,a])
368
- * - rgb2hsl({r,g,b,a})
369
- */
370
- var rgb2hsl = function () {
371
- var args = [], len = arguments.length;
372
- while ( len-- ) args[ len ] = arguments[ len ];
373
-
374
- args = unpack$5(args, 'rgba');
375
- var r = args[0];
376
- var g = args[1];
377
- var b = args[2];
378
-
379
- r /= 255;
380
- g /= 255;
381
- b /= 255;
382
-
383
- var min = Math.min(r, g, b);
384
- var max = Math.max(r, g, b);
385
-
386
- var l = (max + min) / 2;
387
- var s, h;
388
-
389
- if (max === min){
390
- s = 0;
391
- h = Number.NaN;
392
- } else {
393
- s = l < 0.5 ? (max - min) / (max + min) : (max - min) / (2 - max - min);
394
- }
395
-
396
- if (r == max) { h = (g - b) / (max - min); }
397
- else if (g == max) { h = 2 + (b - r) / (max - min); }
398
- else if (b == max) { h = 4 + (r - g) / (max - min); }
399
-
400
- h *= 60;
401
- if (h < 0) { h += 360; }
402
- if (args.length>3 && args[3]!==undefined) { return [h,s,l,args[3]]; }
403
- return [h,s,l];
404
- };
405
-
406
- var rgb2hsl_1 = rgb2hsl;
407
-
408
- var unpack$6 = utils.unpack;
409
- var last$3 = utils.last;
410
-
411
-
412
- var round = Math.round;
413
-
414
- /*
415
- * supported arguments:
416
- * - rgb2css(r,g,b)
417
- * - rgb2css(r,g,b,a)
418
- * - rgb2css([r,g,b], mode)
419
- * - rgb2css([r,g,b,a], mode)
420
- * - rgb2css({r,g,b,a}, mode)
421
- */
422
- var rgb2css = function () {
423
- var args = [], len = arguments.length;
424
- while ( len-- ) args[ len ] = arguments[ len ];
425
-
426
- var rgba = unpack$6(args, 'rgba');
427
- var mode = last$3(args) || 'rgb';
428
- if (mode.substr(0,3) == 'hsl') {
429
- return hsl2css_1(rgb2hsl_1(rgba), mode);
430
- }
431
- rgba[0] = round(rgba[0]);
432
- rgba[1] = round(rgba[1]);
433
- rgba[2] = round(rgba[2]);
434
- if (mode === 'rgba' || (rgba.length > 3 && rgba[3]<1)) {
435
- rgba[3] = rgba.length > 3 ? rgba[3] : 1;
436
- mode = 'rgba';
437
- }
438
- return (mode + "(" + (rgba.slice(0,mode==='rgb'?3:4).join(',')) + ")");
439
- };
440
-
441
- var rgb2css_1 = rgb2css;
442
-
443
- var unpack$7 = utils.unpack;
444
- var round$1 = Math.round;
445
-
446
- var hsl2rgb = function () {
447
- var assign;
448
-
449
- var args = [], len = arguments.length;
450
- while ( len-- ) args[ len ] = arguments[ len ];
451
- args = unpack$7(args, 'hsl');
452
- var h = args[0];
453
- var s = args[1];
454
- var l = args[2];
455
- var r,g,b;
456
- if (s === 0) {
457
- r = g = b = l*255;
458
- } else {
459
- var t3 = [0,0,0];
460
- var c = [0,0,0];
461
- var t2 = l < 0.5 ? l * (1+s) : l+s-l*s;
462
- var t1 = 2 * l - t2;
463
- var h_ = h / 360;
464
- t3[0] = h_ + 1/3;
465
- t3[1] = h_;
466
- t3[2] = h_ - 1/3;
467
- for (var i=0; i<3; i++) {
468
- if (t3[i] < 0) { t3[i] += 1; }
469
- if (t3[i] > 1) { t3[i] -= 1; }
470
- if (6 * t3[i] < 1)
471
- { c[i] = t1 + (t2 - t1) * 6 * t3[i]; }
472
- else if (2 * t3[i] < 1)
473
- { c[i] = t2; }
474
- else if (3 * t3[i] < 2)
475
- { c[i] = t1 + (t2 - t1) * ((2 / 3) - t3[i]) * 6; }
476
- else
477
- { c[i] = t1; }
478
- }
479
- (assign = [round$1(c[0]*255),round$1(c[1]*255),round$1(c[2]*255)], r = assign[0], g = assign[1], b = assign[2]);
480
- }
481
- if (args.length > 3) {
482
- // keep alpha channel
483
- return [r,g,b,args[3]];
484
- }
485
- return [r,g,b,1];
486
- };
487
-
488
- var hsl2rgb_1 = hsl2rgb;
489
-
490
- var RE_RGB = /^rgb\(\s*(-?\d+),\s*(-?\d+)\s*,\s*(-?\d+)\s*\)$/;
491
- var RE_RGBA = /^rgba\(\s*(-?\d+),\s*(-?\d+)\s*,\s*(-?\d+)\s*,\s*([01]|[01]?\.\d+)\)$/;
492
- var RE_RGB_PCT = /^rgb\(\s*(-?\d+(?:\.\d+)?)%,\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*\)$/;
493
- var RE_RGBA_PCT = /^rgba\(\s*(-?\d+(?:\.\d+)?)%,\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/;
494
- var RE_HSL = /^hsl\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*\)$/;
495
- var RE_HSLA = /^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/;
496
-
497
- var round$2 = Math.round;
498
-
499
- var css2rgb = function (css) {
500
- css = css.toLowerCase().trim();
501
- var m;
502
-
503
- if (input.format.named) {
504
- try {
505
- return input.format.named(css);
506
- } catch (e) {
507
- // eslint-disable-next-line
508
- }
509
- }
510
-
511
- // rgb(250,20,0)
512
- if ((m = css.match(RE_RGB))) {
513
- var rgb = m.slice(1,4);
514
- for (var i=0; i<3; i++) {
515
- rgb[i] = +rgb[i];
516
- }
517
- rgb[3] = 1; // default alpha
518
- return rgb;
519
- }
520
-
521
- // rgba(250,20,0,0.4)
522
- if ((m = css.match(RE_RGBA))) {
523
- var rgb$1 = m.slice(1,5);
524
- for (var i$1=0; i$1<4; i$1++) {
525
- rgb$1[i$1] = +rgb$1[i$1];
526
- }
527
- return rgb$1;
528
- }
529
-
530
- // rgb(100%,0%,0%)
531
- if ((m = css.match(RE_RGB_PCT))) {
532
- var rgb$2 = m.slice(1,4);
533
- for (var i$2=0; i$2<3; i$2++) {
534
- rgb$2[i$2] = round$2(rgb$2[i$2] * 2.55);
535
- }
536
- rgb$2[3] = 1; // default alpha
537
- return rgb$2;
538
- }
539
-
540
- // rgba(100%,0%,0%,0.4)
541
- if ((m = css.match(RE_RGBA_PCT))) {
542
- var rgb$3 = m.slice(1,5);
543
- for (var i$3=0; i$3<3; i$3++) {
544
- rgb$3[i$3] = round$2(rgb$3[i$3] * 2.55);
545
- }
546
- rgb$3[3] = +rgb$3[3];
547
- return rgb$3;
548
- }
549
-
550
- // hsl(0,100%,50%)
551
- if ((m = css.match(RE_HSL))) {
552
- var hsl = m.slice(1,4);
553
- hsl[1] *= 0.01;
554
- hsl[2] *= 0.01;
555
- var rgb$4 = hsl2rgb_1(hsl);
556
- rgb$4[3] = 1;
557
- return rgb$4;
558
- }
559
-
560
- // hsla(0,100%,50%,0.5)
561
- if ((m = css.match(RE_HSLA))) {
562
- var hsl$1 = m.slice(1,4);
563
- hsl$1[1] *= 0.01;
564
- hsl$1[2] *= 0.01;
565
- var rgb$5 = hsl2rgb_1(hsl$1);
566
- rgb$5[3] = +m[4]; // default alpha = 1
567
- return rgb$5;
568
- }
569
- };
570
-
571
- css2rgb.test = function (s) {
572
- return RE_RGB.test(s) ||
573
- RE_RGBA.test(s) ||
574
- RE_RGB_PCT.test(s) ||
575
- RE_RGBA_PCT.test(s) ||
576
- RE_HSL.test(s) ||
577
- RE_HSLA.test(s);
578
- };
579
-
580
- var css2rgb_1 = css2rgb;
581
-
582
- var type$3 = utils.type;
583
-
584
-
585
-
586
-
587
- Color_1.prototype.css = function(mode) {
588
- return rgb2css_1(this._rgb, mode);
589
- };
590
-
591
- chroma_1.css = function () {
592
- var args = [], len = arguments.length;
593
- while ( len-- ) args[ len ] = arguments[ len ];
594
-
595
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['css']) ));
596
- };
597
-
598
- input.format.css = css2rgb_1;
599
-
600
- input.autodetect.push({
601
- p: 5,
602
- test: function (h) {
603
- var rest = [], len = arguments.length - 1;
604
- while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];
605
-
606
- if (!rest.length && type$3(h) === 'string' && css2rgb_1.test(h)) {
607
- return 'css';
608
- }
609
- }
610
- });
611
-
612
- var unpack$8 = utils.unpack;
613
-
614
- input.format.gl = function () {
615
- var args = [], len = arguments.length;
616
- while ( len-- ) args[ len ] = arguments[ len ];
617
-
618
- var rgb = unpack$8(args, 'rgba');
619
- rgb[0] *= 255;
620
- rgb[1] *= 255;
621
- rgb[2] *= 255;
622
- return rgb;
623
- };
624
-
625
- chroma_1.gl = function () {
626
- var args = [], len = arguments.length;
627
- while ( len-- ) args[ len ] = arguments[ len ];
628
-
629
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['gl']) ));
630
- };
631
-
632
- Color_1.prototype.gl = function() {
633
- var rgb = this._rgb;
634
- return [rgb[0]/255, rgb[1]/255, rgb[2]/255, rgb[3]];
635
- };
636
-
637
- var unpack$9 = utils.unpack;
638
-
639
- var rgb2hcg = function () {
640
- var args = [], len = arguments.length;
641
- while ( len-- ) args[ len ] = arguments[ len ];
642
-
643
- var ref = unpack$9(args, 'rgb');
644
- var r = ref[0];
645
- var g = ref[1];
646
- var b = ref[2];
647
- var min = Math.min(r, g, b);
648
- var max = Math.max(r, g, b);
649
- var delta = max - min;
650
- var c = delta * 100 / 255;
651
- var _g = min / (255 - delta) * 100;
652
- var h;
653
- if (delta === 0) {
654
- h = Number.NaN;
655
- } else {
656
- if (r === max) { h = (g - b) / delta; }
657
- if (g === max) { h = 2+(b - r) / delta; }
658
- if (b === max) { h = 4+(r - g) / delta; }
659
- h *= 60;
660
- if (h < 0) { h += 360; }
661
- }
662
- return [h, c, _g];
663
- };
664
-
665
- var rgb2hcg_1 = rgb2hcg;
666
-
667
- var unpack$a = utils.unpack;
668
- var floor = Math.floor;
669
-
670
- /*
671
- * this is basically just HSV with some minor tweaks
672
- *
673
- * hue.. [0..360]
674
- * chroma .. [0..1]
675
- * grayness .. [0..1]
676
- */
677
-
678
- var hcg2rgb = function () {
679
- var assign, assign$1, assign$2, assign$3, assign$4, assign$5;
680
-
681
- var args = [], len = arguments.length;
682
- while ( len-- ) args[ len ] = arguments[ len ];
683
- args = unpack$a(args, 'hcg');
684
- var h = args[0];
685
- var c = args[1];
686
- var _g = args[2];
687
- var r,g,b;
688
- _g = _g * 255;
689
- var _c = c * 255;
690
- if (c === 0) {
691
- r = g = b = _g;
692
- } else {
693
- if (h === 360) { h = 0; }
694
- if (h > 360) { h -= 360; }
695
- if (h < 0) { h += 360; }
696
- h /= 60;
697
- var i = floor(h);
698
- var f = h - i;
699
- var p = _g * (1 - c);
700
- var q = p + _c * (1 - f);
701
- var t = p + _c * f;
702
- var v = p + _c;
703
- switch (i) {
704
- case 0: (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]); break
705
- case 1: (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]); break
706
- case 2: (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]); break
707
- case 3: (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]); break
708
- case 4: (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]); break
709
- case 5: (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]); break
710
- }
711
- }
712
- return [r, g, b, args.length > 3 ? args[3] : 1];
713
- };
714
-
715
- var hcg2rgb_1 = hcg2rgb;
716
-
717
- var unpack$b = utils.unpack;
718
- var type$4 = utils.type;
719
-
720
-
721
-
722
-
723
-
724
-
725
- Color_1.prototype.hcg = function() {
726
- return rgb2hcg_1(this._rgb);
727
- };
728
-
729
- chroma_1.hcg = function () {
730
- var args = [], len = arguments.length;
731
- while ( len-- ) args[ len ] = arguments[ len ];
732
-
733
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hcg']) ));
734
- };
735
-
736
- input.format.hcg = hcg2rgb_1;
737
-
738
- input.autodetect.push({
739
- p: 1,
740
- test: function () {
741
- var args = [], len = arguments.length;
742
- while ( len-- ) args[ len ] = arguments[ len ];
743
-
744
- args = unpack$b(args, 'hcg');
745
- if (type$4(args) === 'array' && args.length === 3) {
746
- return 'hcg';
747
- }
748
- }
749
- });
750
-
751
- var unpack$c = utils.unpack;
752
- var last$4 = utils.last;
753
- var round$3 = Math.round;
754
-
755
- var rgb2hex = function () {
756
- var args = [], len = arguments.length;
757
- while ( len-- ) args[ len ] = arguments[ len ];
758
-
759
- var ref = unpack$c(args, 'rgba');
760
- var r = ref[0];
761
- var g = ref[1];
762
- var b = ref[2];
763
- var a = ref[3];
764
- var mode = last$4(args) || 'auto';
765
- if (a === undefined) { a = 1; }
766
- if (mode === 'auto') {
767
- mode = a < 1 ? 'rgba' : 'rgb';
768
- }
769
- r = round$3(r);
770
- g = round$3(g);
771
- b = round$3(b);
772
- var u = r << 16 | g << 8 | b;
773
- var str = "000000" + u.toString(16); //#.toUpperCase();
774
- str = str.substr(str.length - 6);
775
- var hxa = '0' + round$3(a * 255).toString(16);
776
- hxa = hxa.substr(hxa.length - 2);
777
- switch (mode.toLowerCase()) {
778
- case 'rgba': return ("#" + str + hxa);
779
- case 'argb': return ("#" + hxa + str);
780
- default: return ("#" + str);
781
- }
782
- };
783
-
784
- var rgb2hex_1 = rgb2hex;
785
-
786
- var RE_HEX = /^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/;
787
- var RE_HEXA = /^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/;
788
-
789
- var hex2rgb = function (hex) {
790
- if (hex.match(RE_HEX)) {
791
- // remove optional leading #
792
- if (hex.length === 4 || hex.length === 7) {
793
- hex = hex.substr(1);
794
- }
795
- // expand short-notation to full six-digit
796
- if (hex.length === 3) {
797
- hex = hex.split('');
798
- hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];
799
- }
800
- var u = parseInt(hex, 16);
801
- var r = u >> 16;
802
- var g = u >> 8 & 0xFF;
803
- var b = u & 0xFF;
804
- return [r,g,b,1];
805
- }
806
-
807
- // match rgba hex format, eg #FF000077
808
- if (hex.match(RE_HEXA)) {
809
- if (hex.length === 5 || hex.length === 9) {
810
- // remove optional leading #
811
- hex = hex.substr(1);
812
- }
813
- // expand short-notation to full eight-digit
814
- if (hex.length === 4) {
815
- hex = hex.split('');
816
- hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2]+hex[3]+hex[3];
817
- }
818
- var u$1 = parseInt(hex, 16);
819
- var r$1 = u$1 >> 24 & 0xFF;
820
- var g$1 = u$1 >> 16 & 0xFF;
821
- var b$1 = u$1 >> 8 & 0xFF;
822
- var a = Math.round((u$1 & 0xFF) / 0xFF * 100) / 100;
823
- return [r$1,g$1,b$1,a];
824
- }
825
-
826
- // we used to check for css colors here
827
- // if _input.css? and rgb = _input.css hex
828
- // return rgb
829
-
830
- throw new Error(("unknown hex color: " + hex));
831
- };
832
-
833
- var hex2rgb_1 = hex2rgb;
834
-
835
- var type$5 = utils.type;
836
-
837
-
838
-
839
-
840
- Color_1.prototype.hex = function(mode) {
841
- return rgb2hex_1(this._rgb, mode);
842
- };
843
-
844
- chroma_1.hex = function () {
845
- var args = [], len = arguments.length;
846
- while ( len-- ) args[ len ] = arguments[ len ];
847
-
848
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hex']) ));
849
- };
850
-
851
- input.format.hex = hex2rgb_1;
852
- input.autodetect.push({
853
- p: 4,
854
- test: function (h) {
855
- var rest = [], len = arguments.length - 1;
856
- while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];
857
-
858
- if (!rest.length && type$5(h) === 'string' && [3,4,5,6,7,8,9].indexOf(h.length) >= 0) {
859
- return 'hex';
860
- }
861
- }
862
- });
863
-
864
- var unpack$d = utils.unpack;
865
- var TWOPI = utils.TWOPI;
866
- var min = Math.min;
867
- var sqrt = Math.sqrt;
868
- var acos = Math.acos;
869
-
870
- var rgb2hsi = function () {
871
- var args = [], len = arguments.length;
872
- while ( len-- ) args[ len ] = arguments[ len ];
873
-
874
- /*
875
- borrowed from here:
876
- http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/rgb2hsi.cpp
877
- */
878
- var ref = unpack$d(args, 'rgb');
879
- var r = ref[0];
880
- var g = ref[1];
881
- var b = ref[2];
882
- r /= 255;
883
- g /= 255;
884
- b /= 255;
885
- var h;
886
- var min_ = min(r,g,b);
887
- var i = (r+g+b) / 3;
888
- var s = i > 0 ? 1 - min_/i : 0;
889
- if (s === 0) {
890
- h = NaN;
891
- } else {
892
- h = ((r-g)+(r-b)) / 2;
893
- h /= sqrt((r-g)*(r-g) + (r-b)*(g-b));
894
- h = acos(h);
895
- if (b > g) {
896
- h = TWOPI - h;
897
- }
898
- h /= TWOPI;
899
- }
900
- return [h*360,s,i];
901
- };
902
-
903
- var rgb2hsi_1 = rgb2hsi;
904
-
905
- var unpack$e = utils.unpack;
906
- var limit$1 = utils.limit;
907
- var TWOPI$1 = utils.TWOPI;
908
- var PITHIRD = utils.PITHIRD;
909
- var cos = Math.cos;
910
-
911
- /*
912
- * hue [0..360]
913
- * saturation [0..1]
914
- * intensity [0..1]
915
- */
916
- var hsi2rgb = function () {
917
- var args = [], len = arguments.length;
918
- while ( len-- ) args[ len ] = arguments[ len ];
919
-
920
- /*
921
- borrowed from here:
922
- http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/hsi2rgb.cpp
923
- */
924
- args = unpack$e(args, 'hsi');
925
- var h = args[0];
926
- var s = args[1];
927
- var i = args[2];
928
- var r,g,b;
929
-
930
- if (isNaN(h)) { h = 0; }
931
- if (isNaN(s)) { s = 0; }
932
- // normalize hue
933
- if (h > 360) { h -= 360; }
934
- if (h < 0) { h += 360; }
935
- h /= 360;
936
- if (h < 1/3) {
937
- b = (1-s)/3;
938
- r = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;
939
- g = 1 - (b+r);
940
- } else if (h < 2/3) {
941
- h -= 1/3;
942
- r = (1-s)/3;
943
- g = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;
944
- b = 1 - (r+g);
945
- } else {
946
- h -= 2/3;
947
- g = (1-s)/3;
948
- b = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;
949
- r = 1 - (g+b);
950
- }
951
- r = limit$1(i*r*3);
952
- g = limit$1(i*g*3);
953
- b = limit$1(i*b*3);
954
- return [r*255, g*255, b*255, args.length > 3 ? args[3] : 1];
955
- };
956
-
957
- var hsi2rgb_1 = hsi2rgb;
958
-
959
- var unpack$f = utils.unpack;
960
- var type$6 = utils.type;
961
-
962
-
963
-
964
-
965
-
966
-
967
- Color_1.prototype.hsi = function() {
968
- return rgb2hsi_1(this._rgb);
969
- };
970
-
971
- chroma_1.hsi = function () {
972
- var args = [], len = arguments.length;
973
- while ( len-- ) args[ len ] = arguments[ len ];
974
-
975
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsi']) ));
976
- };
977
-
978
- input.format.hsi = hsi2rgb_1;
979
-
980
- input.autodetect.push({
981
- p: 2,
982
- test: function () {
983
- var args = [], len = arguments.length;
984
- while ( len-- ) args[ len ] = arguments[ len ];
985
-
986
- args = unpack$f(args, 'hsi');
987
- if (type$6(args) === 'array' && args.length === 3) {
988
- return 'hsi';
989
- }
990
- }
991
- });
992
-
993
- var unpack$g = utils.unpack;
994
- var type$7 = utils.type;
995
-
996
-
997
-
998
-
999
-
1000
-
1001
- Color_1.prototype.hsl = function() {
1002
- return rgb2hsl_1(this._rgb);
1003
- };
1004
-
1005
- chroma_1.hsl = function () {
1006
- var args = [], len = arguments.length;
1007
- while ( len-- ) args[ len ] = arguments[ len ];
1008
-
1009
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsl']) ));
1010
- };
1011
-
1012
- input.format.hsl = hsl2rgb_1;
1013
-
1014
- input.autodetect.push({
1015
- p: 2,
1016
- test: function () {
1017
- var args = [], len = arguments.length;
1018
- while ( len-- ) args[ len ] = arguments[ len ];
1019
-
1020
- args = unpack$g(args, 'hsl');
1021
- if (type$7(args) === 'array' && args.length === 3) {
1022
- return 'hsl';
1023
- }
1024
- }
1025
- });
1026
-
1027
- var unpack$h = utils.unpack;
1028
- var min$1 = Math.min;
1029
- var max$1 = Math.max;
1030
-
1031
- /*
1032
- * supported arguments:
1033
- * - rgb2hsv(r,g,b)
1034
- * - rgb2hsv([r,g,b])
1035
- * - rgb2hsv({r,g,b})
1036
- */
1037
- var rgb2hsl$1 = function () {
1038
- var args = [], len = arguments.length;
1039
- while ( len-- ) args[ len ] = arguments[ len ];
1040
-
1041
- args = unpack$h(args, 'rgb');
1042
- var r = args[0];
1043
- var g = args[1];
1044
- var b = args[2];
1045
- var min_ = min$1(r, g, b);
1046
- var max_ = max$1(r, g, b);
1047
- var delta = max_ - min_;
1048
- var h,s,v;
1049
- v = max_ / 255.0;
1050
- if (max_ === 0) {
1051
- h = Number.NaN;
1052
- s = 0;
1053
- } else {
1054
- s = delta / max_;
1055
- if (r === max_) { h = (g - b) / delta; }
1056
- if (g === max_) { h = 2+(b - r) / delta; }
1057
- if (b === max_) { h = 4+(r - g) / delta; }
1058
- h *= 60;
1059
- if (h < 0) { h += 360; }
1060
- }
1061
- return [h, s, v]
1062
- };
1063
-
1064
- var rgb2hsv = rgb2hsl$1;
1065
-
1066
- var unpack$i = utils.unpack;
1067
- var floor$1 = Math.floor;
1068
-
1069
- var hsv2rgb = function () {
1070
- var assign, assign$1, assign$2, assign$3, assign$4, assign$5;
1071
-
1072
- var args = [], len = arguments.length;
1073
- while ( len-- ) args[ len ] = arguments[ len ];
1074
- args = unpack$i(args, 'hsv');
1075
- var h = args[0];
1076
- var s = args[1];
1077
- var v = args[2];
1078
- var r,g,b;
1079
- v *= 255;
1080
- if (s === 0) {
1081
- r = g = b = v;
1082
- } else {
1083
- if (h === 360) { h = 0; }
1084
- if (h > 360) { h -= 360; }
1085
- if (h < 0) { h += 360; }
1086
- h /= 60;
1087
-
1088
- var i = floor$1(h);
1089
- var f = h - i;
1090
- var p = v * (1 - s);
1091
- var q = v * (1 - s * f);
1092
- var t = v * (1 - s * (1 - f));
1093
-
1094
- switch (i) {
1095
- case 0: (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]); break
1096
- case 1: (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]); break
1097
- case 2: (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]); break
1098
- case 3: (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]); break
1099
- case 4: (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]); break
1100
- case 5: (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]); break
1101
- }
1102
- }
1103
- return [r,g,b,args.length > 3?args[3]:1];
1104
- };
1105
-
1106
- var hsv2rgb_1 = hsv2rgb;
1107
-
1108
- var unpack$j = utils.unpack;
1109
- var type$8 = utils.type;
1110
-
1111
-
1112
-
1113
-
1114
-
1115
-
1116
- Color_1.prototype.hsv = function() {
1117
- return rgb2hsv(this._rgb);
1118
- };
1119
-
1120
- chroma_1.hsv = function () {
1121
- var args = [], len = arguments.length;
1122
- while ( len-- ) args[ len ] = arguments[ len ];
1123
-
1124
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsv']) ));
1125
- };
1126
-
1127
- input.format.hsv = hsv2rgb_1;
1128
-
1129
- input.autodetect.push({
1130
- p: 2,
1131
- test: function () {
1132
- var args = [], len = arguments.length;
1133
- while ( len-- ) args[ len ] = arguments[ len ];
1134
-
1135
- args = unpack$j(args, 'hsv');
1136
- if (type$8(args) === 'array' && args.length === 3) {
1137
- return 'hsv';
1138
- }
1139
- }
1140
- });
1141
-
1142
- var labConstants = {
1143
- // Corresponds roughly to RGB brighter/darker
1144
- Kn: 18,
1145
-
1146
- // D65 standard referent
1147
- Xn: 0.950470,
1148
- Yn: 1,
1149
- Zn: 1.088830,
1150
-
1151
- t0: 0.137931034, // 4 / 29
1152
- t1: 0.206896552, // 6 / 29
1153
- t2: 0.12841855, // 3 * t1 * t1
1154
- t3: 0.008856452, // t1 * t1 * t1
1155
- };
1156
-
1157
- var unpack$k = utils.unpack;
1158
- var pow = Math.pow;
1159
-
1160
- var rgb2lab = function () {
1161
- var args = [], len = arguments.length;
1162
- while ( len-- ) args[ len ] = arguments[ len ];
1163
-
1164
- var ref = unpack$k(args, 'rgb');
1165
- var r = ref[0];
1166
- var g = ref[1];
1167
- var b = ref[2];
1168
- var ref$1 = rgb2xyz(r,g,b);
1169
- var x = ref$1[0];
1170
- var y = ref$1[1];
1171
- var z = ref$1[2];
1172
- var l = 116 * y - 16;
1173
- return [l < 0 ? 0 : l, 500 * (x - y), 200 * (y - z)];
1174
- };
1175
-
1176
- var rgb_xyz = function (r) {
1177
- if ((r /= 255) <= 0.04045) { return r / 12.92; }
1178
- return pow((r + 0.055) / 1.055, 2.4);
1179
- };
1180
-
1181
- var xyz_lab = function (t) {
1182
- if (t > labConstants.t3) { return pow(t, 1 / 3); }
1183
- return t / labConstants.t2 + labConstants.t0;
1184
- };
1185
-
1186
- var rgb2xyz = function (r,g,b) {
1187
- r = rgb_xyz(r);
1188
- g = rgb_xyz(g);
1189
- b = rgb_xyz(b);
1190
- var x = xyz_lab((0.4124564 * r + 0.3575761 * g + 0.1804375 * b) / labConstants.Xn);
1191
- var y = xyz_lab((0.2126729 * r + 0.7151522 * g + 0.0721750 * b) / labConstants.Yn);
1192
- var z = xyz_lab((0.0193339 * r + 0.1191920 * g + 0.9503041 * b) / labConstants.Zn);
1193
- return [x,y,z];
1194
- };
1195
-
1196
- var rgb2lab_1 = rgb2lab;
1197
-
1198
- var unpack$l = utils.unpack;
1199
- var pow$1 = Math.pow;
1200
-
1201
- /*
1202
- * L* [0..100]
1203
- * a [-100..100]
1204
- * b [-100..100]
1205
- */
1206
- var lab2rgb = function () {
1207
- var args = [], len = arguments.length;
1208
- while ( len-- ) args[ len ] = arguments[ len ];
1209
-
1210
- args = unpack$l(args, 'lab');
1211
- var l = args[0];
1212
- var a = args[1];
1213
- var b = args[2];
1214
- var x,y,z, r,g,b_;
1215
-
1216
- y = (l + 16) / 116;
1217
- x = isNaN(a) ? y : y + a / 500;
1218
- z = isNaN(b) ? y : y - b / 200;
1219
-
1220
- y = labConstants.Yn * lab_xyz(y);
1221
- x = labConstants.Xn * lab_xyz(x);
1222
- z = labConstants.Zn * lab_xyz(z);
1223
-
1224
- r = xyz_rgb(3.2404542 * x - 1.5371385 * y - 0.4985314 * z); // D65 -> sRGB
1225
- g = xyz_rgb(-0.9692660 * x + 1.8760108 * y + 0.0415560 * z);
1226
- b_ = xyz_rgb(0.0556434 * x - 0.2040259 * y + 1.0572252 * z);
1227
-
1228
- return [r,g,b_,args.length > 3 ? args[3] : 1];
1229
- };
1230
-
1231
- var xyz_rgb = function (r) {
1232
- return 255 * (r <= 0.00304 ? 12.92 * r : 1.055 * pow$1(r, 1 / 2.4) - 0.055)
1233
- };
1234
-
1235
- var lab_xyz = function (t) {
1236
- return t > labConstants.t1 ? t * t * t : labConstants.t2 * (t - labConstants.t0)
1237
- };
1238
-
1239
- var lab2rgb_1 = lab2rgb;
1240
-
1241
- var unpack$m = utils.unpack;
1242
- var type$9 = utils.type;
1243
-
1244
-
1245
-
1246
-
1247
-
1248
-
1249
- Color_1.prototype.lab = function() {
1250
- return rgb2lab_1(this._rgb);
1251
- };
1252
-
1253
- chroma_1.lab = function () {
1254
- var args = [], len = arguments.length;
1255
- while ( len-- ) args[ len ] = arguments[ len ];
1256
-
1257
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['lab']) ));
1258
- };
1259
-
1260
- input.format.lab = lab2rgb_1;
1261
-
1262
- input.autodetect.push({
1263
- p: 2,
1264
- test: function () {
1265
- var args = [], len = arguments.length;
1266
- while ( len-- ) args[ len ] = arguments[ len ];
1267
-
1268
- args = unpack$m(args, 'lab');
1269
- if (type$9(args) === 'array' && args.length === 3) {
1270
- return 'lab';
1271
- }
1272
- }
1273
- });
1274
-
1275
- var unpack$n = utils.unpack;
1276
- var RAD2DEG = utils.RAD2DEG;
1277
- var sqrt$1 = Math.sqrt;
1278
- var atan2 = Math.atan2;
1279
- var round$4 = Math.round;
1280
-
1281
- var lab2lch = function () {
1282
- var args = [], len = arguments.length;
1283
- while ( len-- ) args[ len ] = arguments[ len ];
1284
-
1285
- var ref = unpack$n(args, 'lab');
1286
- var l = ref[0];
1287
- var a = ref[1];
1288
- var b = ref[2];
1289
- var c = sqrt$1(a * a + b * b);
1290
- var h = (atan2(b, a) * RAD2DEG + 360) % 360;
1291
- if (round$4(c*10000) === 0) { h = Number.NaN; }
1292
- return [l, c, h];
1293
- };
1294
-
1295
- var lab2lch_1 = lab2lch;
1296
-
1297
- var unpack$o = utils.unpack;
1298
-
1299
-
1300
-
1301
- var rgb2lch = function () {
1302
- var args = [], len = arguments.length;
1303
- while ( len-- ) args[ len ] = arguments[ len ];
1304
-
1305
- var ref = unpack$o(args, 'rgb');
1306
- var r = ref[0];
1307
- var g = ref[1];
1308
- var b = ref[2];
1309
- var ref$1 = rgb2lab_1(r,g,b);
1310
- var l = ref$1[0];
1311
- var a = ref$1[1];
1312
- var b_ = ref$1[2];
1313
- return lab2lch_1(l,a,b_);
1314
- };
1315
-
1316
- var rgb2lch_1 = rgb2lch;
1317
-
1318
- var unpack$p = utils.unpack;
1319
- var DEG2RAD = utils.DEG2RAD;
1320
- var sin = Math.sin;
1321
- var cos$1 = Math.cos;
1322
-
1323
- var lch2lab = function () {
1324
- var args = [], len = arguments.length;
1325
- while ( len-- ) args[ len ] = arguments[ len ];
1326
-
1327
- /*
1328
- Convert from a qualitative parameter h and a quantitative parameter l to a 24-bit pixel.
1329
- These formulas were invented by David Dalrymple to obtain maximum contrast without going
1330
- out of gamut if the parameters are in the range 0-1.
1331
-
1332
- A saturation multiplier was added by Gregor Aisch
1333
- */
1334
- var ref = unpack$p(args, 'lch');
1335
- var l = ref[0];
1336
- var c = ref[1];
1337
- var h = ref[2];
1338
- if (isNaN(h)) { h = 0; }
1339
- h = h * DEG2RAD;
1340
- return [l, cos$1(h) * c, sin(h) * c]
1341
- };
1342
-
1343
- var lch2lab_1 = lch2lab;
1344
-
1345
- var unpack$q = utils.unpack;
1346
-
1347
-
1348
-
1349
- var lch2rgb = function () {
1350
- var args = [], len = arguments.length;
1351
- while ( len-- ) args[ len ] = arguments[ len ];
1352
-
1353
- args = unpack$q(args, 'lch');
1354
- var l = args[0];
1355
- var c = args[1];
1356
- var h = args[2];
1357
- var ref = lch2lab_1 (l,c,h);
1358
- var L = ref[0];
1359
- var a = ref[1];
1360
- var b_ = ref[2];
1361
- var ref$1 = lab2rgb_1 (L,a,b_);
1362
- var r = ref$1[0];
1363
- var g = ref$1[1];
1364
- var b = ref$1[2];
1365
- return [r, g, b, args.length > 3 ? args[3] : 1];
1366
- };
1367
-
1368
- var lch2rgb_1 = lch2rgb;
1369
-
1370
- var unpack$r = utils.unpack;
1371
-
1372
-
1373
- var hcl2rgb = function () {
1374
- var args = [], len = arguments.length;
1375
- while ( len-- ) args[ len ] = arguments[ len ];
1376
-
1377
- var hcl = unpack$r(args, 'hcl').reverse();
1378
- return lch2rgb_1.apply(void 0, hcl);
1379
- };
1380
-
1381
- var hcl2rgb_1 = hcl2rgb;
1382
-
1383
- var unpack$s = utils.unpack;
1384
- var type$a = utils.type;
1385
-
1386
-
1387
-
1388
-
1389
-
1390
-
1391
- Color_1.prototype.lch = function() { return rgb2lch_1(this._rgb); };
1392
- Color_1.prototype.hcl = function() { return rgb2lch_1(this._rgb).reverse(); };
1393
-
1394
- chroma_1.lch = function () {
1395
- var args = [], len = arguments.length;
1396
- while ( len-- ) args[ len ] = arguments[ len ];
1397
-
1398
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['lch']) ));
1399
- };
1400
- chroma_1.hcl = function () {
1401
- var args = [], len = arguments.length;
1402
- while ( len-- ) args[ len ] = arguments[ len ];
1403
-
1404
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hcl']) ));
1405
- };
1406
-
1407
- input.format.lch = lch2rgb_1;
1408
- input.format.hcl = hcl2rgb_1;
1409
-
1410
- ['lch','hcl'].forEach(function (m) { return input.autodetect.push({
1411
- p: 2,
1412
- test: function () {
1413
- var args = [], len = arguments.length;
1414
- while ( len-- ) args[ len ] = arguments[ len ];
1415
-
1416
- args = unpack$s(args, m);
1417
- if (type$a(args) === 'array' && args.length === 3) {
1418
- return m;
1419
- }
1420
- }
1421
- }); });
1422
-
1423
- /**
1424
- X11 color names
1425
-
1426
- http://www.w3.org/TR/css3-color/#svg-color
1427
- */
1428
-
1429
- var w3cx11 = {
1430
- aliceblue: '#f0f8ff',
1431
- antiquewhite: '#faebd7',
1432
- aqua: '#00ffff',
1433
- aquamarine: '#7fffd4',
1434
- azure: '#f0ffff',
1435
- beige: '#f5f5dc',
1436
- bisque: '#ffe4c4',
1437
- black: '#000000',
1438
- blanchedalmond: '#ffebcd',
1439
- blue: '#0000ff',
1440
- blueviolet: '#8a2be2',
1441
- brown: '#a52a2a',
1442
- burlywood: '#deb887',
1443
- cadetblue: '#5f9ea0',
1444
- chartreuse: '#7fff00',
1445
- chocolate: '#d2691e',
1446
- coral: '#ff7f50',
1447
- cornflower: '#6495ed',
1448
- cornflowerblue: '#6495ed',
1449
- cornsilk: '#fff8dc',
1450
- crimson: '#dc143c',
1451
- cyan: '#00ffff',
1452
- darkblue: '#00008b',
1453
- darkcyan: '#008b8b',
1454
- darkgoldenrod: '#b8860b',
1455
- darkgray: '#a9a9a9',
1456
- darkgreen: '#006400',
1457
- darkgrey: '#a9a9a9',
1458
- darkkhaki: '#bdb76b',
1459
- darkmagenta: '#8b008b',
1460
- darkolivegreen: '#556b2f',
1461
- darkorange: '#ff8c00',
1462
- darkorchid: '#9932cc',
1463
- darkred: '#8b0000',
1464
- darksalmon: '#e9967a',
1465
- darkseagreen: '#8fbc8f',
1466
- darkslateblue: '#483d8b',
1467
- darkslategray: '#2f4f4f',
1468
- darkslategrey: '#2f4f4f',
1469
- darkturquoise: '#00ced1',
1470
- darkviolet: '#9400d3',
1471
- deeppink: '#ff1493',
1472
- deepskyblue: '#00bfff',
1473
- dimgray: '#696969',
1474
- dimgrey: '#696969',
1475
- dodgerblue: '#1e90ff',
1476
- firebrick: '#b22222',
1477
- floralwhite: '#fffaf0',
1478
- forestgreen: '#228b22',
1479
- fuchsia: '#ff00ff',
1480
- gainsboro: '#dcdcdc',
1481
- ghostwhite: '#f8f8ff',
1482
- gold: '#ffd700',
1483
- goldenrod: '#daa520',
1484
- gray: '#808080',
1485
- green: '#008000',
1486
- greenyellow: '#adff2f',
1487
- grey: '#808080',
1488
- honeydew: '#f0fff0',
1489
- hotpink: '#ff69b4',
1490
- indianred: '#cd5c5c',
1491
- indigo: '#4b0082',
1492
- ivory: '#fffff0',
1493
- khaki: '#f0e68c',
1494
- laserlemon: '#ffff54',
1495
- lavender: '#e6e6fa',
1496
- lavenderblush: '#fff0f5',
1497
- lawngreen: '#7cfc00',
1498
- lemonchiffon: '#fffacd',
1499
- lightblue: '#add8e6',
1500
- lightcoral: '#f08080',
1501
- lightcyan: '#e0ffff',
1502
- lightgoldenrod: '#fafad2',
1503
- lightgoldenrodyellow: '#fafad2',
1504
- lightgray: '#d3d3d3',
1505
- lightgreen: '#90ee90',
1506
- lightgrey: '#d3d3d3',
1507
- lightpink: '#ffb6c1',
1508
- lightsalmon: '#ffa07a',
1509
- lightseagreen: '#20b2aa',
1510
- lightskyblue: '#87cefa',
1511
- lightslategray: '#778899',
1512
- lightslategrey: '#778899',
1513
- lightsteelblue: '#b0c4de',
1514
- lightyellow: '#ffffe0',
1515
- lime: '#00ff00',
1516
- limegreen: '#32cd32',
1517
- linen: '#faf0e6',
1518
- magenta: '#ff00ff',
1519
- maroon: '#800000',
1520
- maroon2: '#7f0000',
1521
- maroon3: '#b03060',
1522
- mediumaquamarine: '#66cdaa',
1523
- mediumblue: '#0000cd',
1524
- mediumorchid: '#ba55d3',
1525
- mediumpurple: '#9370db',
1526
- mediumseagreen: '#3cb371',
1527
- mediumslateblue: '#7b68ee',
1528
- mediumspringgreen: '#00fa9a',
1529
- mediumturquoise: '#48d1cc',
1530
- mediumvioletred: '#c71585',
1531
- midnightblue: '#191970',
1532
- mintcream: '#f5fffa',
1533
- mistyrose: '#ffe4e1',
1534
- moccasin: '#ffe4b5',
1535
- navajowhite: '#ffdead',
1536
- navy: '#000080',
1537
- oldlace: '#fdf5e6',
1538
- olive: '#808000',
1539
- olivedrab: '#6b8e23',
1540
- orange: '#ffa500',
1541
- orangered: '#ff4500',
1542
- orchid: '#da70d6',
1543
- palegoldenrod: '#eee8aa',
1544
- palegreen: '#98fb98',
1545
- paleturquoise: '#afeeee',
1546
- palevioletred: '#db7093',
1547
- papayawhip: '#ffefd5',
1548
- peachpuff: '#ffdab9',
1549
- peru: '#cd853f',
1550
- pink: '#ffc0cb',
1551
- plum: '#dda0dd',
1552
- powderblue: '#b0e0e6',
1553
- purple: '#800080',
1554
- purple2: '#7f007f',
1555
- purple3: '#a020f0',
1556
- rebeccapurple: '#663399',
1557
- red: '#ff0000',
1558
- rosybrown: '#bc8f8f',
1559
- royalblue: '#4169e1',
1560
- saddlebrown: '#8b4513',
1561
- salmon: '#fa8072',
1562
- sandybrown: '#f4a460',
1563
- seagreen: '#2e8b57',
1564
- seashell: '#fff5ee',
1565
- sienna: '#a0522d',
1566
- silver: '#c0c0c0',
1567
- skyblue: '#87ceeb',
1568
- slateblue: '#6a5acd',
1569
- slategray: '#708090',
1570
- slategrey: '#708090',
1571
- snow: '#fffafa',
1572
- springgreen: '#00ff7f',
1573
- steelblue: '#4682b4',
1574
- tan: '#d2b48c',
1575
- teal: '#008080',
1576
- thistle: '#d8bfd8',
1577
- tomato: '#ff6347',
1578
- turquoise: '#40e0d0',
1579
- violet: '#ee82ee',
1580
- wheat: '#f5deb3',
1581
- white: '#ffffff',
1582
- whitesmoke: '#f5f5f5',
1583
- yellow: '#ffff00',
1584
- yellowgreen: '#9acd32'
1585
- };
1586
-
1587
- var w3cx11_1 = w3cx11;
1588
-
1589
- var type$b = utils.type;
1590
-
1591
-
1592
-
1593
-
1594
-
1595
- Color_1.prototype.name = function() {
1596
- var hex = rgb2hex_1(this._rgb, 'rgb');
1597
- for (var i = 0, list = Object.keys(w3cx11_1); i < list.length; i += 1) {
1598
- var n = list[i];
1599
-
1600
- if (w3cx11_1[n] === hex) { return n.toLowerCase(); }
1601
- }
1602
- return hex;
1603
- };
1604
-
1605
- input.format.named = function (name) {
1606
- name = name.toLowerCase();
1607
- if (w3cx11_1[name]) { return hex2rgb_1(w3cx11_1[name]); }
1608
- throw new Error('unknown color name: '+name);
1609
- };
1610
-
1611
- input.autodetect.push({
1612
- p: 5,
1613
- test: function (h) {
1614
- var rest = [], len = arguments.length - 1;
1615
- while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];
1616
-
1617
- if (!rest.length && type$b(h) === 'string' && w3cx11_1[h.toLowerCase()]) {
1618
- return 'named';
1619
- }
1620
- }
1621
- });
1622
-
1623
- var unpack$t = utils.unpack;
1624
-
1625
- var rgb2num = function () {
1626
- var args = [], len = arguments.length;
1627
- while ( len-- ) args[ len ] = arguments[ len ];
1628
-
1629
- var ref = unpack$t(args, 'rgb');
1630
- var r = ref[0];
1631
- var g = ref[1];
1632
- var b = ref[2];
1633
- return (r << 16) + (g << 8) + b;
1634
- };
1635
-
1636
- var rgb2num_1 = rgb2num;
1637
-
1638
- var type$c = utils.type;
1639
-
1640
- var num2rgb = function (num) {
1641
- if (type$c(num) == "number" && num >= 0 && num <= 0xFFFFFF) {
1642
- var r = num >> 16;
1643
- var g = (num >> 8) & 0xFF;
1644
- var b = num & 0xFF;
1645
- return [r,g,b,1];
1646
- }
1647
- throw new Error("unknown num color: "+num);
1648
- };
1649
-
1650
- var num2rgb_1 = num2rgb;
1651
-
1652
- var type$d = utils.type;
1653
-
1654
-
1655
-
1656
- Color_1.prototype.num = function() {
1657
- return rgb2num_1(this._rgb);
1658
- };
1659
-
1660
- chroma_1.num = function () {
1661
- var args = [], len = arguments.length;
1662
- while ( len-- ) args[ len ] = arguments[ len ];
1663
-
1664
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['num']) ));
1665
- };
1666
-
1667
- input.format.num = num2rgb_1;
1668
-
1669
- input.autodetect.push({
1670
- p: 5,
1671
- test: function () {
1672
- var args = [], len = arguments.length;
1673
- while ( len-- ) args[ len ] = arguments[ len ];
1674
-
1675
- if (args.length === 1 && type$d(args[0]) === 'number' && args[0] >= 0 && args[0] <= 0xFFFFFF) {
1676
- return 'num';
1677
- }
1678
- }
1679
- });
1680
-
1681
- var unpack$u = utils.unpack;
1682
- var type$e = utils.type;
1683
- var round$5 = Math.round;
1684
-
1685
- Color_1.prototype.rgb = function(rnd) {
1686
- if ( rnd === void 0 ) rnd=true;
1687
-
1688
- if (rnd === false) { return this._rgb.slice(0,3); }
1689
- return this._rgb.slice(0,3).map(round$5);
1690
- };
1691
-
1692
- Color_1.prototype.rgba = function(rnd) {
1693
- if ( rnd === void 0 ) rnd=true;
1694
-
1695
- return this._rgb.slice(0,4).map(function (v,i) {
1696
- return i<3 ? (rnd === false ? v : round$5(v)) : v;
1697
- });
1698
- };
1699
-
1700
- chroma_1.rgb = function () {
1701
- var args = [], len = arguments.length;
1702
- while ( len-- ) args[ len ] = arguments[ len ];
1703
-
1704
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['rgb']) ));
1705
- };
1706
-
1707
- input.format.rgb = function () {
1708
- var args = [], len = arguments.length;
1709
- while ( len-- ) args[ len ] = arguments[ len ];
1710
-
1711
- var rgba = unpack$u(args, 'rgba');
1712
- if (rgba[3] === undefined) { rgba[3] = 1; }
1713
- return rgba;
1714
- };
1715
-
1716
- input.autodetect.push({
1717
- p: 3,
1718
- test: function () {
1719
- var args = [], len = arguments.length;
1720
- while ( len-- ) args[ len ] = arguments[ len ];
1721
-
1722
- args = unpack$u(args, 'rgba');
1723
- if (type$e(args) === 'array' && (args.length === 3 ||
1724
- args.length === 4 && type$e(args[3]) == 'number' && args[3] >= 0 && args[3] <= 1)) {
1725
- return 'rgb';
1726
- }
1727
- }
1728
- });
1729
-
1730
- /*
1731
- * Based on implementation by Neil Bartlett
1732
- * https://github.com/neilbartlett/color-temperature
1733
- */
1734
-
1735
- var log = Math.log;
1736
-
1737
- var temperature2rgb = function (kelvin) {
1738
- var temp = kelvin / 100;
1739
- var r,g,b;
1740
- if (temp < 66) {
1741
- r = 255;
1742
- g = -155.25485562709179 - 0.44596950469579133 * (g = temp-2) + 104.49216199393888 * log(g);
1743
- b = temp < 20 ? 0 : -254.76935184120902 + 0.8274096064007395 * (b = temp-10) + 115.67994401066147 * log(b);
1744
- } else {
1745
- r = 351.97690566805693 + 0.114206453784165 * (r = temp-55) - 40.25366309332127 * log(r);
1746
- g = 325.4494125711974 + 0.07943456536662342 * (g = temp-50) - 28.0852963507957 * log(g);
1747
- b = 255;
1748
- }
1749
- return [r,g,b,1];
1750
- };
1751
-
1752
- var temperature2rgb_1 = temperature2rgb;
1753
-
1754
- /*
1755
- * Based on implementation by Neil Bartlett
1756
- * https://github.com/neilbartlett/color-temperature
1757
- **/
1758
-
1759
-
1760
- var unpack$v = utils.unpack;
1761
- var round$6 = Math.round;
1762
-
1763
- var rgb2temperature = function () {
1764
- var args = [], len = arguments.length;
1765
- while ( len-- ) args[ len ] = arguments[ len ];
1766
-
1767
- var rgb = unpack$v(args, 'rgb');
1768
- var r = rgb[0], b = rgb[2];
1769
- var minTemp = 1000;
1770
- var maxTemp = 40000;
1771
- var eps = 0.4;
1772
- var temp;
1773
- while (maxTemp - minTemp > eps) {
1774
- temp = (maxTemp + minTemp) * 0.5;
1775
- var rgb$1 = temperature2rgb_1(temp);
1776
- if ((rgb$1[2] / rgb$1[0]) >= (b / r)) {
1777
- maxTemp = temp;
1778
- } else {
1779
- minTemp = temp;
1780
- }
1781
- }
1782
- return round$6(temp);
1783
- };
1784
-
1785
- var rgb2temperature_1 = rgb2temperature;
1786
-
1787
- Color_1.prototype.temp =
1788
- Color_1.prototype.kelvin =
1789
- Color_1.prototype.temperature = function() {
1790
- return rgb2temperature_1(this._rgb);
1791
- };
1792
-
1793
- chroma_1.temp =
1794
- chroma_1.kelvin =
1795
- chroma_1.temperature = function () {
1796
- var args = [], len = arguments.length;
1797
- while ( len-- ) args[ len ] = arguments[ len ];
1798
-
1799
- return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['temp']) ));
1800
- };
1801
-
1802
- input.format.temp =
1803
- input.format.kelvin =
1804
- input.format.temperature = temperature2rgb_1;
1805
-
1806
- var type$f = utils.type;
1807
-
1808
- Color_1.prototype.alpha = function(a, mutate) {
1809
- if ( mutate === void 0 ) mutate=false;
1810
-
1811
- if (a !== undefined && type$f(a) === 'number') {
1812
- if (mutate) {
1813
- this._rgb[3] = a;
1814
- return this;
1815
- }
1816
- return new Color_1([this._rgb[0], this._rgb[1], this._rgb[2], a], 'rgb');
1817
- }
1818
- return this._rgb[3];
1819
- };
1820
-
1821
- Color_1.prototype.clipped = function() {
1822
- return this._rgb._clipped || false;
1823
- };
1824
-
1825
- Color_1.prototype.darken = function(amount) {
1826
- if ( amount === void 0 ) amount=1;
1827
-
1828
- var me = this;
1829
- var lab = me.lab();
1830
- lab[0] -= labConstants.Kn * amount;
1831
- return new Color_1(lab, 'lab').alpha(me.alpha(), true);
1832
- };
1833
-
1834
- Color_1.prototype.brighten = function(amount) {
1835
- if ( amount === void 0 ) amount=1;
1836
-
1837
- return this.darken(-amount);
1838
- };
1839
-
1840
- Color_1.prototype.darker = Color_1.prototype.darken;
1841
- Color_1.prototype.brighter = Color_1.prototype.brighten;
1842
-
1843
- Color_1.prototype.get = function(mc) {
1844
- var ref = mc.split('.');
1845
- var mode = ref[0];
1846
- var channel = ref[1];
1847
- var src = this[mode]();
1848
- if (channel) {
1849
- var i = mode.indexOf(channel);
1850
- if (i > -1) { return src[i]; }
1851
- throw new Error(("unknown channel " + channel + " in mode " + mode));
1852
- } else {
1853
- return src;
1854
- }
1855
- };
1856
-
1857
- var type$g = utils.type;
1858
- var pow$2 = Math.pow;
1859
-
1860
- var EPS = 1e-7;
1861
- var MAX_ITER = 20;
1862
-
1863
- Color_1.prototype.luminance = function(lum) {
1864
- if (lum !== undefined && type$g(lum) === 'number') {
1865
- if (lum === 0) {
1866
- // return pure black
1867
- return new Color_1([0,0,0,this._rgb[3]], 'rgb');
1868
- }
1869
- if (lum === 1) {
1870
- // return pure white
1871
- return new Color_1([255,255,255,this._rgb[3]], 'rgb');
1872
- }
1873
- // compute new color using...
1874
- var cur_lum = this.luminance();
1875
- var mode = 'rgb';
1876
- var max_iter = MAX_ITER;
1877
-
1878
- var test = function (low, high) {
1879
- var mid = low.interpolate(high, 0.5, mode);
1880
- var lm = mid.luminance();
1881
- if (Math.abs(lum - lm) < EPS || !max_iter--) {
1882
- // close enough
1883
- return mid;
1884
- }
1885
- return lm > lum ? test(low, mid) : test(mid, high);
1886
- };
1887
-
1888
- var rgb = (cur_lum > lum ? test(new Color_1([0,0,0]), this) : test(this, new Color_1([255,255,255]))).rgb();
1889
- return new Color_1(rgb.concat( [this._rgb[3]]));
1890
- }
1891
- return rgb2luminance.apply(void 0, (this._rgb).slice(0,3));
1892
- };
1893
-
1894
-
1895
- var rgb2luminance = function (r,g,b) {
1896
- // relative luminance
1897
- // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
1898
- r = luminance_x(r);
1899
- g = luminance_x(g);
1900
- b = luminance_x(b);
1901
- return 0.2126 * r + 0.7152 * g + 0.0722 * b;
1902
- };
1903
-
1904
- var luminance_x = function (x) {
1905
- x /= 255;
1906
- return x <= 0.03928 ? x/12.92 : pow$2((x+0.055)/1.055, 2.4);
1907
- };
1908
-
1909
- var interpolator = {};
1910
-
1911
- var type$h = utils.type;
1912
-
1913
-
1914
- var mix = function (col1, col2, f) {
1915
- if ( f === void 0 ) f=0.5;
1916
- var rest = [], len = arguments.length - 3;
1917
- while ( len-- > 0 ) rest[ len ] = arguments[ len + 3 ];
1918
-
1919
- var mode = rest[0] || 'lrgb';
1920
- if (!interpolator[mode] && !rest.length) {
1921
- // fall back to the first supported mode
1922
- mode = Object.keys(interpolator)[0];
1923
- }
1924
- if (!interpolator[mode]) {
1925
- throw new Error(("interpolation mode " + mode + " is not defined"));
1926
- }
1927
- if (type$h(col1) !== 'object') { col1 = new Color_1(col1); }
1928
- if (type$h(col2) !== 'object') { col2 = new Color_1(col2); }
1929
- return interpolator[mode](col1, col2, f)
1930
- .alpha(col1.alpha() + f * (col2.alpha() - col1.alpha()));
1931
- };
1932
-
1933
- Color_1.prototype.mix =
1934
- Color_1.prototype.interpolate = function(col2, f) {
1935
- if ( f === void 0 ) f=0.5;
1936
- var rest = [], len = arguments.length - 2;
1937
- while ( len-- > 0 ) rest[ len ] = arguments[ len + 2 ];
1938
-
1939
- return mix.apply(void 0, [ this, col2, f ].concat( rest ));
1940
- };
1941
-
1942
- Color_1.prototype.premultiply = function(mutate) {
1943
- if ( mutate === void 0 ) mutate=false;
1944
-
1945
- var rgb = this._rgb;
1946
- var a = rgb[3];
1947
- if (mutate) {
1948
- this._rgb = [rgb[0]*a, rgb[1]*a, rgb[2]*a, a];
1949
- return this;
1950
- } else {
1951
- return new Color_1([rgb[0]*a, rgb[1]*a, rgb[2]*a, a], 'rgb');
1952
- }
1953
- };
1954
-
1955
- Color_1.prototype.saturate = function(amount) {
1956
- if ( amount === void 0 ) amount=1;
1957
-
1958
- var me = this;
1959
- var lch = me.lch();
1960
- lch[1] += labConstants.Kn * amount;
1961
- if (lch[1] < 0) { lch[1] = 0; }
1962
- return new Color_1(lch, 'lch').alpha(me.alpha(), true);
1963
- };
1964
-
1965
- Color_1.prototype.desaturate = function(amount) {
1966
- if ( amount === void 0 ) amount=1;
1967
-
1968
- return this.saturate(-amount);
1969
- };
1970
-
1971
- var type$i = utils.type;
1972
-
1973
- Color_1.prototype.set = function(mc, value, mutate) {
1974
- if ( mutate === void 0 ) mutate=false;
1975
-
1976
- var ref = mc.split('.');
1977
- var mode = ref[0];
1978
- var channel = ref[1];
1979
- var src = this[mode]();
1980
- if (channel) {
1981
- var i = mode.indexOf(channel);
1982
- if (i > -1) {
1983
- if (type$i(value) == 'string') {
1984
- switch(value.charAt(0)) {
1985
- case '+': src[i] += +value; break;
1986
- case '-': src[i] += +value; break;
1987
- case '*': src[i] *= +(value.substr(1)); break;
1988
- case '/': src[i] /= +(value.substr(1)); break;
1989
- default: src[i] = +value;
1990
- }
1991
- } else if (type$i(value) === 'number') {
1992
- src[i] = value;
1993
- } else {
1994
- throw new Error("unsupported value for Color.set");
1995
- }
1996
- var out = new Color_1(src, mode);
1997
- if (mutate) {
1998
- this._rgb = out._rgb;
1999
- return this;
2000
- }
2001
- return out;
2002
- }
2003
- throw new Error(("unknown channel " + channel + " in mode " + mode));
2004
- } else {
2005
- return src;
2006
- }
2007
- };
2008
-
2009
- var rgb$1 = function (col1, col2, f) {
2010
- var xyz0 = col1._rgb;
2011
- var xyz1 = col2._rgb;
2012
- return new Color_1(
2013
- xyz0[0] + f * (xyz1[0]-xyz0[0]),
2014
- xyz0[1] + f * (xyz1[1]-xyz0[1]),
2015
- xyz0[2] + f * (xyz1[2]-xyz0[2]),
2016
- 'rgb'
2017
- )
2018
- };
2019
-
2020
- // register interpolator
2021
- interpolator.rgb = rgb$1;
2022
-
2023
- var sqrt$2 = Math.sqrt;
2024
- var pow$3 = Math.pow;
2025
-
2026
- var lrgb = function (col1, col2, f) {
2027
- var ref = col1._rgb;
2028
- var x1 = ref[0];
2029
- var y1 = ref[1];
2030
- var z1 = ref[2];
2031
- var ref$1 = col2._rgb;
2032
- var x2 = ref$1[0];
2033
- var y2 = ref$1[1];
2034
- var z2 = ref$1[2];
2035
- return new Color_1(
2036
- sqrt$2(pow$3(x1,2) * (1-f) + pow$3(x2,2) * f),
2037
- sqrt$2(pow$3(y1,2) * (1-f) + pow$3(y2,2) * f),
2038
- sqrt$2(pow$3(z1,2) * (1-f) + pow$3(z2,2) * f),
2039
- 'rgb'
2040
- )
2041
- };
2042
-
2043
- // register interpolator
2044
- interpolator.lrgb = lrgb;
2045
-
2046
- var lab$1 = function (col1, col2, f) {
2047
- var xyz0 = col1.lab();
2048
- var xyz1 = col2.lab();
2049
- return new Color_1(
2050
- xyz0[0] + f * (xyz1[0]-xyz0[0]),
2051
- xyz0[1] + f * (xyz1[1]-xyz0[1]),
2052
- xyz0[2] + f * (xyz1[2]-xyz0[2]),
2053
- 'lab'
2054
- )
2055
- };
2056
-
2057
- // register interpolator
2058
- interpolator.lab = lab$1;
2059
-
2060
- var _hsx = function (col1, col2, f, m) {
2061
- var assign, assign$1;
2062
-
2063
- var xyz0, xyz1;
2064
- if (m === 'hsl') {
2065
- xyz0 = col1.hsl();
2066
- xyz1 = col2.hsl();
2067
- } else if (m === 'hsv') {
2068
- xyz0 = col1.hsv();
2069
- xyz1 = col2.hsv();
2070
- } else if (m === 'hcg') {
2071
- xyz0 = col1.hcg();
2072
- xyz1 = col2.hcg();
2073
- } else if (m === 'hsi') {
2074
- xyz0 = col1.hsi();
2075
- xyz1 = col2.hsi();
2076
- } else if (m === 'lch' || m === 'hcl') {
2077
- m = 'hcl';
2078
- xyz0 = col1.hcl();
2079
- xyz1 = col2.hcl();
2080
- }
2081
-
2082
- var hue0, hue1, sat0, sat1, lbv0, lbv1;
2083
- if (m.substr(0, 1) === 'h') {
2084
- (assign = xyz0, hue0 = assign[0], sat0 = assign[1], lbv0 = assign[2]);
2085
- (assign$1 = xyz1, hue1 = assign$1[0], sat1 = assign$1[1], lbv1 = assign$1[2]);
2086
- }
2087
-
2088
- var sat, hue, lbv, dh;
2089
-
2090
- if (!isNaN(hue0) && !isNaN(hue1)) {
2091
- // both colors have hue
2092
- if (hue1 > hue0 && hue1 - hue0 > 180) {
2093
- dh = hue1-(hue0+360);
2094
- } else if (hue1 < hue0 && hue0 - hue1 > 180) {
2095
- dh = hue1+360-hue0;
2096
- } else {
2097
- dh = hue1 - hue0;
2098
- }
2099
- hue = hue0 + f * dh;
2100
- } else if (!isNaN(hue0)) {
2101
- hue = hue0;
2102
- if ((lbv1 == 1 || lbv1 == 0) && m != 'hsv') { sat = sat0; }
2103
- } else if (!isNaN(hue1)) {
2104
- hue = hue1;
2105
- if ((lbv0 == 1 || lbv0 == 0) && m != 'hsv') { sat = sat1; }
2106
- } else {
2107
- hue = Number.NaN;
2108
- }
2109
-
2110
- if (sat === undefined) { sat = sat0 + f * (sat1 - sat0); }
2111
- lbv = lbv0 + f * (lbv1-lbv0);
2112
- return new Color_1([hue, sat, lbv], m);
2113
- };
2114
-
2115
- var lch$1 = function (col1, col2, f) {
2116
- return _hsx(col1, col2, f, 'lch');
2117
- };
2118
-
2119
- // register interpolator
2120
- interpolator.lch = lch$1;
2121
- interpolator.hcl = lch$1;
2122
-
2123
- var num$1 = function (col1, col2, f) {
2124
- var c1 = col1.num();
2125
- var c2 = col2.num();
2126
- return new Color_1(c1 + f * (c2-c1), 'num')
2127
- };
2128
-
2129
- // register interpolator
2130
- interpolator.num = num$1;
2131
-
2132
- var hcg$1 = function (col1, col2, f) {
2133
- return _hsx(col1, col2, f, 'hcg');
2134
- };
2135
-
2136
- // register interpolator
2137
- interpolator.hcg = hcg$1;
2138
-
2139
- var hsi$1 = function (col1, col2, f) {
2140
- return _hsx(col1, col2, f, 'hsi');
2141
- };
2142
-
2143
- // register interpolator
2144
- interpolator.hsi = hsi$1;
2145
-
2146
- var hsl$1 = function (col1, col2, f) {
2147
- return _hsx(col1, col2, f, 'hsl');
2148
- };
2149
-
2150
- // register interpolator
2151
- interpolator.hsl = hsl$1;
2152
-
2153
- var hsv$1 = function (col1, col2, f) {
2154
- return _hsx(col1, col2, f, 'hsv');
2155
- };
2156
-
2157
- // register interpolator
2158
- interpolator.hsv = hsv$1;
2159
-
2160
- var clip_rgb$2 = utils.clip_rgb;
2161
- var pow$4 = Math.pow;
2162
- var sqrt$3 = Math.sqrt;
2163
- var PI$1 = Math.PI;
2164
- var cos$2 = Math.cos;
2165
- var sin$1 = Math.sin;
2166
- var atan2$1 = Math.atan2;
2167
-
2168
- var average = function (colors, mode, weights) {
2169
- if ( mode === void 0 ) mode='lrgb';
2170
- if ( weights === void 0 ) weights=null;
2171
-
2172
- var l = colors.length;
2173
- if (!weights) { weights = Array.from(new Array(l)).map(function () { return 1; }); }
2174
- // normalize weights
2175
- var k = l / weights.reduce(function(a, b) { return a + b; });
2176
- weights.forEach(function (w,i) { weights[i] *= k; });
2177
- // convert colors to Color objects
2178
- colors = colors.map(function (c) { return new Color_1(c); });
2179
- if (mode === 'lrgb') {
2180
- return _average_lrgb(colors, weights)
2181
- }
2182
- var first = colors.shift();
2183
- var xyz = first.get(mode);
2184
- var cnt = [];
2185
- var dx = 0;
2186
- var dy = 0;
2187
- // initial color
2188
- for (var i=0; i<xyz.length; i++) {
2189
- xyz[i] = (xyz[i] || 0) * weights[0];
2190
- cnt.push(isNaN(xyz[i]) ? 0 : weights[0]);
2191
- if (mode.charAt(i) === 'h' && !isNaN(xyz[i])) {
2192
- var A = xyz[i] / 180 * PI$1;
2193
- dx += cos$2(A) * weights[0];
2194
- dy += sin$1(A) * weights[0];
2195
- }
2196
- }
2197
-
2198
- var alpha = first.alpha() * weights[0];
2199
- colors.forEach(function (c,ci) {
2200
- var xyz2 = c.get(mode);
2201
- alpha += c.alpha() * weights[ci+1];
2202
- for (var i=0; i<xyz.length; i++) {
2203
- if (!isNaN(xyz2[i])) {
2204
- cnt[i] += weights[ci+1];
2205
- if (mode.charAt(i) === 'h') {
2206
- var A = xyz2[i] / 180 * PI$1;
2207
- dx += cos$2(A) * weights[ci+1];
2208
- dy += sin$1(A) * weights[ci+1];
2209
- } else {
2210
- xyz[i] += xyz2[i] * weights[ci+1];
2211
- }
2212
- }
2213
- }
2214
- });
2215
-
2216
- for (var i$1=0; i$1<xyz.length; i$1++) {
2217
- if (mode.charAt(i$1) === 'h') {
2218
- var A$1 = atan2$1(dy / cnt[i$1], dx / cnt[i$1]) / PI$1 * 180;
2219
- while (A$1 < 0) { A$1 += 360; }
2220
- while (A$1 >= 360) { A$1 -= 360; }
2221
- xyz[i$1] = A$1;
2222
- } else {
2223
- xyz[i$1] = xyz[i$1]/cnt[i$1];
2224
- }
2225
- }
2226
- alpha /= l;
2227
- return (new Color_1(xyz, mode)).alpha(alpha > 0.99999 ? 1 : alpha, true);
2228
- };
2229
-
2230
-
2231
- var _average_lrgb = function (colors, weights) {
2232
- var l = colors.length;
2233
- var xyz = [0,0,0,0];
2234
- for (var i=0; i < colors.length; i++) {
2235
- var col = colors[i];
2236
- var f = weights[i] / l;
2237
- var rgb = col._rgb;
2238
- xyz[0] += pow$4(rgb[0],2) * f;
2239
- xyz[1] += pow$4(rgb[1],2) * f;
2240
- xyz[2] += pow$4(rgb[2],2) * f;
2241
- xyz[3] += rgb[3] * f;
2242
- }
2243
- xyz[0] = sqrt$3(xyz[0]);
2244
- xyz[1] = sqrt$3(xyz[1]);
2245
- xyz[2] = sqrt$3(xyz[2]);
2246
- if (xyz[3] > 0.9999999) { xyz[3] = 1; }
2247
- return new Color_1(clip_rgb$2(xyz));
2248
- };
2249
-
2250
- // minimal multi-purpose interface
2251
-
2252
- // @requires utils color analyze
2253
-
2254
-
2255
- var type$j = utils.type;
2256
-
2257
- var pow$5 = Math.pow;
2258
-
2259
- var scale = function(colors) {
2260
-
2261
- // constructor
2262
- var _mode = 'rgb';
2263
- var _nacol = chroma_1('#ccc');
2264
- var _spread = 0;
2265
- // const _fixed = false;
2266
- var _domain = [0, 1];
2267
- var _pos = [];
2268
- var _padding = [0,0];
2269
- var _classes = false;
2270
- var _colors = [];
2271
- var _out = false;
2272
- var _min = 0;
2273
- var _max = 1;
2274
- var _correctLightness = false;
2275
- var _colorCache = {};
2276
- var _useCache = true;
2277
- var _gamma = 1;
2278
-
2279
- // private methods
2280
-
2281
- var setColors = function(colors) {
2282
- colors = colors || ['#fff', '#000'];
2283
- if (colors && type$j(colors) === 'string' && chroma_1.brewer &&
2284
- chroma_1.brewer[colors.toLowerCase()]) {
2285
- colors = chroma_1.brewer[colors.toLowerCase()];
2286
- }
2287
- if (type$j(colors) === 'array') {
2288
- // handle single color
2289
- if (colors.length === 1) {
2290
- colors = [colors[0], colors[0]];
2291
- }
2292
- // make a copy of the colors
2293
- colors = colors.slice(0);
2294
- // convert to chroma classes
2295
- for (var c=0; c<colors.length; c++) {
2296
- colors[c] = chroma_1(colors[c]);
2297
- }
2298
- // auto-fill color position
2299
- _pos.length = 0;
2300
- for (var c$1=0; c$1<colors.length; c$1++) {
2301
- _pos.push(c$1/(colors.length-1));
2302
- }
2303
- }
2304
- resetCache();
2305
- return _colors = colors;
2306
- };
2307
-
2308
- var getClass = function(value) {
2309
- if (_classes != null) {
2310
- var n = _classes.length-1;
2311
- var i = 0;
2312
- while (i < n && value >= _classes[i]) {
2313
- i++;
2314
- }
2315
- return i-1;
2316
- }
2317
- return 0;
2318
- };
2319
-
2320
- var tMapLightness = function (t) { return t; };
2321
- var tMapDomain = function (t) { return t; };
2322
-
2323
- // const classifyValue = function(value) {
2324
- // let val = value;
2325
- // if (_classes.length > 2) {
2326
- // const n = _classes.length-1;
2327
- // const i = getClass(value);
2328
- // const minc = _classes[0] + ((_classes[1]-_classes[0]) * (0 + (_spread * 0.5))); // center of 1st class
2329
- // const maxc = _classes[n-1] + ((_classes[n]-_classes[n-1]) * (1 - (_spread * 0.5))); // center of last class
2330
- // val = _min + ((((_classes[i] + ((_classes[i+1] - _classes[i]) * 0.5)) - minc) / (maxc-minc)) * (_max - _min));
2331
- // }
2332
- // return val;
2333
- // };
2334
-
2335
- var getColor = function(val, bypassMap) {
2336
- var col, t;
2337
- if (bypassMap == null) { bypassMap = false; }
2338
- if (isNaN(val) || (val === null)) { return _nacol; }
2339
- if (!bypassMap) {
2340
- if (_classes && (_classes.length > 2)) {
2341
- // find the class
2342
- var c = getClass(val);
2343
- t = c / (_classes.length-2);
2344
- } else if (_max !== _min) {
2345
- // just interpolate between min/max
2346
- t = (val - _min) / (_max - _min);
2347
- } else {
2348
- t = 1;
2349
- }
2350
- } else {
2351
- t = val;
2352
- }
2353
-
2354
- // domain map
2355
- t = tMapDomain(t);
2356
-
2357
- if (!bypassMap) {
2358
- t = tMapLightness(t); // lightness correction
2359
- }
2360
-
2361
- if (_gamma !== 1) { t = pow$5(t, _gamma); }
2362
-
2363
- t = _padding[0] + (t * (1 - _padding[0] - _padding[1]));
2364
-
2365
- t = Math.min(1, Math.max(0, t));
2366
-
2367
- var k = Math.floor(t * 10000);
2368
-
2369
- if (_useCache && _colorCache[k]) {
2370
- col = _colorCache[k];
2371
- } else {
2372
- if (type$j(_colors) === 'array') {
2373
- //for i in [0.._pos.length-1]
2374
- for (var i=0; i<_pos.length; i++) {
2375
- var p = _pos[i];
2376
- if (t <= p) {
2377
- col = _colors[i];
2378
- break;
2379
- }
2380
- if ((t >= p) && (i === (_pos.length-1))) {
2381
- col = _colors[i];
2382
- break;
2383
- }
2384
- if (t > p && t < _pos[i+1]) {
2385
- t = (t-p)/(_pos[i+1]-p);
2386
- col = chroma_1.interpolate(_colors[i], _colors[i+1], t, _mode);
2387
- break;
2388
- }
2389
- }
2390
- } else if (type$j(_colors) === 'function') {
2391
- col = _colors(t);
2392
- }
2393
- if (_useCache) { _colorCache[k] = col; }
2394
- }
2395
- return col;
2396
- };
2397
-
2398
- var resetCache = function () { return _colorCache = {}; };
2399
-
2400
- setColors(colors);
2401
-
2402
- // public interface
2403
-
2404
- var f = function(v) {
2405
- var c = chroma_1(getColor(v));
2406
- if (_out && c[_out]) { return c[_out](); } else { return c; }
2407
- };
2408
-
2409
- f.classes = function(classes) {
2410
- if (classes != null) {
2411
- if (type$j(classes) === 'array') {
2412
- _classes = classes;
2413
- _domain = [classes[0], classes[classes.length-1]];
2414
- } else {
2415
- var d = chroma_1.analyze(_domain);
2416
- if (classes === 0) {
2417
- _classes = [d.min, d.max];
2418
- } else {
2419
- _classes = chroma_1.limits(d, 'e', classes);
2420
- }
2421
- }
2422
- return f;
2423
- }
2424
- return _classes;
2425
- };
2426
-
2427
-
2428
- f.domain = function(domain) {
2429
- if (!arguments.length) {
2430
- return _domain;
2431
- }
2432
- _min = domain[0];
2433
- _max = domain[domain.length-1];
2434
- _pos = [];
2435
- var k = _colors.length;
2436
- if ((domain.length === k) && (_min !== _max)) {
2437
- // update positions
2438
- for (var i = 0, list = Array.from(domain); i < list.length; i += 1) {
2439
- var d = list[i];
2440
-
2441
- _pos.push((d-_min) / (_max-_min));
2442
- }
2443
- } else {
2444
- for (var c=0; c<k; c++) {
2445
- _pos.push(c/(k-1));
2446
- }
2447
- if (domain.length > 2) {
2448
- // set domain map
2449
- var tOut = domain.map(function (d,i) { return i/(domain.length-1); });
2450
- var tBreaks = domain.map(function (d) { return (d - _min) / (_max - _min); });
2451
- if (!tBreaks.every(function (val, i) { return tOut[i] === val; })) {
2452
- tMapDomain = function (t) {
2453
- if (t <= 0 || t >= 1) { return t; }
2454
- var i = 0;
2455
- while (t >= tBreaks[i+1]) { i++; }
2456
- var f = (t - tBreaks[i]) / (tBreaks[i+1] - tBreaks[i]);
2457
- var out = tOut[i] + f * (tOut[i+1] - tOut[i]);
2458
- return out;
2459
- };
2460
- }
2461
-
2462
- }
2463
- }
2464
- _domain = [_min, _max];
2465
- return f;
2466
- };
2467
-
2468
- f.mode = function(_m) {
2469
- if (!arguments.length) {
2470
- return _mode;
2471
- }
2472
- _mode = _m;
2473
- resetCache();
2474
- return f;
2475
- };
2476
-
2477
- f.range = function(colors, _pos) {
2478
- setColors(colors);
2479
- return f;
2480
- };
2481
-
2482
- f.out = function(_o) {
2483
- _out = _o;
2484
- return f;
2485
- };
2486
-
2487
- f.spread = function(val) {
2488
- if (!arguments.length) {
2489
- return _spread;
2490
- }
2491
- _spread = val;
2492
- return f;
2493
- };
2494
-
2495
- f.correctLightness = function(v) {
2496
- if (v == null) { v = true; }
2497
- _correctLightness = v;
2498
- resetCache();
2499
- if (_correctLightness) {
2500
- tMapLightness = function(t) {
2501
- var L0 = getColor(0, true).lab()[0];
2502
- var L1 = getColor(1, true).lab()[0];
2503
- var pol = L0 > L1;
2504
- var L_actual = getColor(t, true).lab()[0];
2505
- var L_ideal = L0 + ((L1 - L0) * t);
2506
- var L_diff = L_actual - L_ideal;
2507
- var t0 = 0;
2508
- var t1 = 1;
2509
- var max_iter = 20;
2510
- while ((Math.abs(L_diff) > 1e-2) && (max_iter-- > 0)) {
2511
- (function() {
2512
- if (pol) { L_diff *= -1; }
2513
- if (L_diff < 0) {
2514
- t0 = t;
2515
- t += (t1 - t) * 0.5;
2516
- } else {
2517
- t1 = t;
2518
- t += (t0 - t) * 0.5;
2519
- }
2520
- L_actual = getColor(t, true).lab()[0];
2521
- return L_diff = L_actual - L_ideal;
2522
- })();
2523
- }
2524
- return t;
2525
- };
2526
- } else {
2527
- tMapLightness = function (t) { return t; };
2528
- }
2529
- return f;
2530
- };
2531
-
2532
- f.padding = function(p) {
2533
- if (p != null) {
2534
- if (type$j(p) === 'number') {
2535
- p = [p,p];
2536
- }
2537
- _padding = p;
2538
- return f;
2539
- } else {
2540
- return _padding;
2541
- }
2542
- };
2543
-
2544
- f.colors = function(numColors, out) {
2545
- // If no arguments are given, return the original colors that were provided
2546
- if (arguments.length < 2) { out = 'hex'; }
2547
- var result = [];
2548
-
2549
- if (arguments.length === 0) {
2550
- result = _colors.slice(0);
2551
-
2552
- } else if (numColors === 1) {
2553
- result = [f(0.5)];
2554
-
2555
- } else if (numColors > 1) {
2556
- var dm = _domain[0];
2557
- var dd = _domain[1] - dm;
2558
- result = __range__(0, numColors, false).map(function (i) { return f( dm + ((i/(numColors-1)) * dd) ); });
2559
-
2560
- } else { // returns all colors based on the defined classes
2561
- colors = [];
2562
- var samples = [];
2563
- if (_classes && (_classes.length > 2)) {
2564
- for (var i = 1, end = _classes.length, asc = 1 <= end; asc ? i < end : i > end; asc ? i++ : i--) {
2565
- samples.push((_classes[i-1]+_classes[i])*0.5);
2566
- }
2567
- } else {
2568
- samples = _domain;
2569
- }
2570
- result = samples.map(function (v) { return f(v); });
2571
- }
2572
-
2573
- if (chroma_1[out]) {
2574
- result = result.map(function (c) { return c[out](); });
2575
- }
2576
- return result;
2577
- };
2578
-
2579
- f.cache = function(c) {
2580
- if (c != null) {
2581
- _useCache = c;
2582
- return f;
2583
- } else {
2584
- return _useCache;
2585
- }
2586
- };
2587
-
2588
- f.gamma = function(g) {
2589
- if (g != null) {
2590
- _gamma = g;
2591
- return f;
2592
- } else {
2593
- return _gamma;
2594
- }
2595
- };
2596
-
2597
- f.nodata = function(d) {
2598
- if (d != null) {
2599
- _nacol = chroma_1(d);
2600
- return f;
2601
- } else {
2602
- return _nacol;
2603
- }
2604
- };
2605
-
2606
- return f;
2607
- };
2608
-
2609
- function __range__(left, right, inclusive) {
2610
- var range = [];
2611
- var ascending = left < right;
2612
- var end = !inclusive ? right : ascending ? right + 1 : right - 1;
2613
- for (var i = left; ascending ? i < end : i > end; ascending ? i++ : i--) {
2614
- range.push(i);
2615
- }
2616
- return range;
2617
- }
2618
-
2619
- //
2620
- // interpolates between a set of colors uzing a bezier spline
2621
- //
2622
-
2623
- // @requires utils lab
2624
-
2625
-
2626
-
2627
-
2628
- var bezier = function(colors) {
2629
- var assign, assign$1, assign$2;
2630
-
2631
- var I, lab0, lab1, lab2;
2632
- colors = colors.map(function (c) { return new Color_1(c); });
2633
- if (colors.length === 2) {
2634
- // linear interpolation
2635
- (assign = colors.map(function (c) { return c.lab(); }), lab0 = assign[0], lab1 = assign[1]);
2636
- I = function(t) {
2637
- var lab = ([0, 1, 2].map(function (i) { return lab0[i] + (t * (lab1[i] - lab0[i])); }));
2638
- return new Color_1(lab, 'lab');
2639
- };
2640
- } else if (colors.length === 3) {
2641
- // quadratic bezier interpolation
2642
- (assign$1 = colors.map(function (c) { return c.lab(); }), lab0 = assign$1[0], lab1 = assign$1[1], lab2 = assign$1[2]);
2643
- I = function(t) {
2644
- var lab = ([0, 1, 2].map(function (i) { return ((1-t)*(1-t) * lab0[i]) + (2 * (1-t) * t * lab1[i]) + (t * t * lab2[i]); }));
2645
- return new Color_1(lab, 'lab');
2646
- };
2647
- } else if (colors.length === 4) {
2648
- // cubic bezier interpolation
2649
- var lab3;
2650
- (assign$2 = colors.map(function (c) { return c.lab(); }), lab0 = assign$2[0], lab1 = assign$2[1], lab2 = assign$2[2], lab3 = assign$2[3]);
2651
- I = function(t) {
2652
- var lab = ([0, 1, 2].map(function (i) { return ((1-t)*(1-t)*(1-t) * lab0[i]) + (3 * (1-t) * (1-t) * t * lab1[i]) + (3 * (1-t) * t * t * lab2[i]) + (t*t*t * lab3[i]); }));
2653
- return new Color_1(lab, 'lab');
2654
- };
2655
- } else if (colors.length === 5) {
2656
- var I0 = bezier(colors.slice(0, 3));
2657
- var I1 = bezier(colors.slice(2, 5));
2658
- I = function(t) {
2659
- if (t < 0.5) {
2660
- return I0(t*2);
2661
- } else {
2662
- return I1((t-0.5)*2);
2663
- }
2664
- };
2665
- }
2666
- return I;
2667
- };
2668
-
2669
- var bezier_1 = function (colors) {
2670
- var f = bezier(colors);
2671
- f.scale = function () { return scale(f); };
2672
- return f;
2673
- };
2674
-
2675
- /*
2676
- * interpolates between a set of colors uzing a bezier spline
2677
- * blend mode formulas taken from http://www.venture-ware.com/kevin/coding/lets-learn-math-photoshop-blend-modes/
2678
- */
2679
-
2680
-
2681
-
2682
-
2683
- var blend = function (bottom, top, mode) {
2684
- if (!blend[mode]) {
2685
- throw new Error('unknown blend mode ' + mode);
2686
- }
2687
- return blend[mode](bottom, top);
2688
- };
2689
-
2690
- var blend_f = function (f) { return function (bottom,top) {
2691
- var c0 = chroma_1(top).rgb();
2692
- var c1 = chroma_1(bottom).rgb();
2693
- return chroma_1.rgb(f(c0, c1));
2694
- }; };
2695
-
2696
- var each = function (f) { return function (c0, c1) {
2697
- var out = [];
2698
- out[0] = f(c0[0], c1[0]);
2699
- out[1] = f(c0[1], c1[1]);
2700
- out[2] = f(c0[2], c1[2]);
2701
- return out;
2702
- }; };
2703
-
2704
- var normal = function (a) { return a; };
2705
- var multiply = function (a,b) { return a * b / 255; };
2706
- var darken$1 = function (a,b) { return a > b ? b : a; };
2707
- var lighten = function (a,b) { return a > b ? a : b; };
2708
- var screen = function (a,b) { return 255 * (1 - (1-a/255) * (1-b/255)); };
2709
- var overlay = function (a,b) { return b < 128 ? 2 * a * b / 255 : 255 * (1 - 2 * (1 - a / 255 ) * ( 1 - b / 255 )); };
2710
- var burn = function (a,b) { return 255 * (1 - (1 - b / 255) / (a/255)); };
2711
- var dodge = function (a,b) {
2712
- if (a === 255) { return 255; }
2713
- a = 255 * (b / 255) / (1 - a / 255);
2714
- return a > 255 ? 255 : a
2715
- };
2716
-
2717
- // # add = (a,b) ->
2718
- // # if (a + b > 255) then 255 else a + b
2719
-
2720
- blend.normal = blend_f(each(normal));
2721
- blend.multiply = blend_f(each(multiply));
2722
- blend.screen = blend_f(each(screen));
2723
- blend.overlay = blend_f(each(overlay));
2724
- blend.darken = blend_f(each(darken$1));
2725
- blend.lighten = blend_f(each(lighten));
2726
- blend.dodge = blend_f(each(dodge));
2727
- blend.burn = blend_f(each(burn));
2728
- // blend.add = blend_f(each(add));
2729
-
2730
- var blend_1 = blend;
2731
-
2732
- // cubehelix interpolation
2733
- // based on D.A. Green "A colour scheme for the display of astronomical intensity images"
2734
- // http://astron-soc.in/bulletin/11June/289392011.pdf
2735
-
2736
- var type$k = utils.type;
2737
- var clip_rgb$3 = utils.clip_rgb;
2738
- var TWOPI$2 = utils.TWOPI;
2739
- var pow$6 = Math.pow;
2740
- var sin$2 = Math.sin;
2741
- var cos$3 = Math.cos;
2742
-
2743
-
2744
- var cubehelix = function(start, rotations, hue, gamma, lightness) {
2745
- if ( start === void 0 ) start=300;
2746
- if ( rotations === void 0 ) rotations=-1.5;
2747
- if ( hue === void 0 ) hue=1;
2748
- if ( gamma === void 0 ) gamma=1;
2749
- if ( lightness === void 0 ) lightness=[0,1];
2750
-
2751
- var dh = 0, dl;
2752
- if (type$k(lightness) === 'array') {
2753
- dl = lightness[1] - lightness[0];
2754
- } else {
2755
- dl = 0;
2756
- lightness = [lightness, lightness];
2757
- }
2758
-
2759
- var f = function(fract) {
2760
- var a = TWOPI$2 * (((start+120)/360) + (rotations * fract));
2761
- var l = pow$6(lightness[0] + (dl * fract), gamma);
2762
- var h = dh !== 0 ? hue[0] + (fract * dh) : hue;
2763
- var amp = (h * l * (1-l)) / 2;
2764
- var cos_a = cos$3(a);
2765
- var sin_a = sin$2(a);
2766
- var r = l + (amp * ((-0.14861 * cos_a) + (1.78277* sin_a)));
2767
- var g = l + (amp * ((-0.29227 * cos_a) - (0.90649* sin_a)));
2768
- var b = l + (amp * (+1.97294 * cos_a));
2769
- return chroma_1(clip_rgb$3([r*255,g*255,b*255,1]));
2770
- };
2771
-
2772
- f.start = function(s) {
2773
- if ((s == null)) { return start; }
2774
- start = s;
2775
- return f;
2776
- };
2777
-
2778
- f.rotations = function(r) {
2779
- if ((r == null)) { return rotations; }
2780
- rotations = r;
2781
- return f;
2782
- };
2783
-
2784
- f.gamma = function(g) {
2785
- if ((g == null)) { return gamma; }
2786
- gamma = g;
2787
- return f;
2788
- };
2789
-
2790
- f.hue = function(h) {
2791
- if ((h == null)) { return hue; }
2792
- hue = h;
2793
- if (type$k(hue) === 'array') {
2794
- dh = hue[1] - hue[0];
2795
- if (dh === 0) { hue = hue[1]; }
2796
- } else {
2797
- dh = 0;
2798
- }
2799
- return f;
2800
- };
2801
-
2802
- f.lightness = function(h) {
2803
- if ((h == null)) { return lightness; }
2804
- if (type$k(h) === 'array') {
2805
- lightness = h;
2806
- dl = h[1] - h[0];
2807
- } else {
2808
- lightness = [h,h];
2809
- dl = 0;
2810
- }
2811
- return f;
2812
- };
2813
-
2814
- f.scale = function () { return chroma_1.scale(f); };
2815
-
2816
- f.hue(hue);
2817
-
2818
- return f;
2819
- };
2820
-
2821
- var digits = '0123456789abcdef';
2822
-
2823
- var floor$2 = Math.floor;
2824
- var random = Math.random;
2825
-
2826
- var random_1 = function () {
2827
- var code = '#';
2828
- for (var i=0; i<6; i++) {
2829
- code += digits.charAt(floor$2(random() * 16));
2830
- }
2831
- return new Color_1(code, 'hex');
2832
- };
2833
-
2834
- var log$1 = Math.log;
2835
- var pow$7 = Math.pow;
2836
- var floor$3 = Math.floor;
2837
- var abs = Math.abs;
2838
-
2839
-
2840
- var analyze = function (data, key) {
2841
- if ( key === void 0 ) key=null;
2842
-
2843
- var r = {
2844
- min: Number.MAX_VALUE,
2845
- max: Number.MAX_VALUE*-1,
2846
- sum: 0,
2847
- values: [],
2848
- count: 0
2849
- };
2850
- if (type(data) === 'object') {
2851
- data = Object.values(data);
2852
- }
2853
- data.forEach(function (val) {
2854
- if (key && type(val) === 'object') { val = val[key]; }
2855
- if (val !== undefined && val !== null && !isNaN(val)) {
2856
- r.values.push(val);
2857
- r.sum += val;
2858
- if (val < r.min) { r.min = val; }
2859
- if (val > r.max) { r.max = val; }
2860
- r.count += 1;
2861
- }
2862
- });
2863
-
2864
- r.domain = [r.min, r.max];
2865
-
2866
- r.limits = function (mode, num) { return limits(r, mode, num); };
2867
-
2868
- return r;
2869
- };
2870
-
2871
-
2872
- var limits = function (data, mode, num) {
2873
- if ( mode === void 0 ) mode='equal';
2874
- if ( num === void 0 ) num=7;
2875
-
2876
- if (type(data) == 'array') {
2877
- data = analyze(data);
2878
- }
2879
- var min = data.min;
2880
- var max = data.max;
2881
- var values = data.values.sort(function (a,b) { return a-b; });
2882
-
2883
- if (num === 1) { return [min,max]; }
2884
-
2885
- var limits = [];
2886
-
2887
- if (mode.substr(0,1) === 'c') { // continuous
2888
- limits.push(min);
2889
- limits.push(max);
2890
- }
2891
-
2892
- if (mode.substr(0,1) === 'e') { // equal interval
2893
- limits.push(min);
2894
- for (var i=1; i<num; i++) {
2895
- limits.push(min+((i/num)*(max-min)));
2896
- }
2897
- limits.push(max);
2898
- }
2899
-
2900
- else if (mode.substr(0,1) === 'l') { // log scale
2901
- if (min <= 0) {
2902
- throw new Error('Logarithmic scales are only possible for values > 0');
2903
- }
2904
- var min_log = Math.LOG10E * log$1(min);
2905
- var max_log = Math.LOG10E * log$1(max);
2906
- limits.push(min);
2907
- for (var i$1=1; i$1<num; i$1++) {
2908
- limits.push(pow$7(10, min_log + ((i$1/num) * (max_log - min_log))));
2909
- }
2910
- limits.push(max);
2911
- }
2912
-
2913
- else if (mode.substr(0,1) === 'q') { // quantile scale
2914
- limits.push(min);
2915
- for (var i$2=1; i$2<num; i$2++) {
2916
- var p = ((values.length-1) * i$2)/num;
2917
- var pb = floor$3(p);
2918
- if (pb === p) {
2919
- limits.push(values[pb]);
2920
- } else { // p > pb
2921
- var pr = p - pb;
2922
- limits.push((values[pb]*(1-pr)) + (values[pb+1]*pr));
2923
- }
2924
- }
2925
- limits.push(max);
2926
-
2927
- }
2928
-
2929
- else if (mode.substr(0,1) === 'k') { // k-means clustering
2930
- /*
2931
- implementation based on
2932
- http://code.google.com/p/figue/source/browse/trunk/figue.js#336
2933
- simplified for 1-d input values
2934
- */
2935
- var cluster;
2936
- var n = values.length;
2937
- var assignments = new Array(n);
2938
- var clusterSizes = new Array(num);
2939
- var repeat = true;
2940
- var nb_iters = 0;
2941
- var centroids = null;
2942
-
2943
- // get seed values
2944
- centroids = [];
2945
- centroids.push(min);
2946
- for (var i$3=1; i$3<num; i$3++) {
2947
- centroids.push(min + ((i$3/num) * (max-min)));
2948
- }
2949
- centroids.push(max);
2950
-
2951
- while (repeat) {
2952
- // assignment step
2953
- for (var j=0; j<num; j++) {
2954
- clusterSizes[j] = 0;
2955
- }
2956
- for (var i$4=0; i$4<n; i$4++) {
2957
- var value = values[i$4];
2958
- var mindist = Number.MAX_VALUE;
2959
- var best = (void 0);
2960
- for (var j$1=0; j$1<num; j$1++) {
2961
- var dist = abs(centroids[j$1]-value);
2962
- if (dist < mindist) {
2963
- mindist = dist;
2964
- best = j$1;
2965
- }
2966
- clusterSizes[best]++;
2967
- assignments[i$4] = best;
2968
- }
2969
- }
2970
-
2971
- // update centroids step
2972
- var newCentroids = new Array(num);
2973
- for (var j$2=0; j$2<num; j$2++) {
2974
- newCentroids[j$2] = null;
2975
- }
2976
- for (var i$5=0; i$5<n; i$5++) {
2977
- cluster = assignments[i$5];
2978
- if (newCentroids[cluster] === null) {
2979
- newCentroids[cluster] = values[i$5];
2980
- } else {
2981
- newCentroids[cluster] += values[i$5];
2982
- }
2983
- }
2984
- for (var j$3=0; j$3<num; j$3++) {
2985
- newCentroids[j$3] *= 1/clusterSizes[j$3];
2986
- }
2987
-
2988
- // check convergence
2989
- repeat = false;
2990
- for (var j$4=0; j$4<num; j$4++) {
2991
- if (newCentroids[j$4] !== centroids[j$4]) {
2992
- repeat = true;
2993
- break;
2994
- }
2995
- }
2996
-
2997
- centroids = newCentroids;
2998
- nb_iters++;
2999
-
3000
- if (nb_iters > 200) {
3001
- repeat = false;
3002
- }
3003
- }
3004
-
3005
- // finished k-means clustering
3006
- // the next part is borrowed from gabrielflor.it
3007
- var kClusters = {};
3008
- for (var j$5=0; j$5<num; j$5++) {
3009
- kClusters[j$5] = [];
3010
- }
3011
- for (var i$6=0; i$6<n; i$6++) {
3012
- cluster = assignments[i$6];
3013
- kClusters[cluster].push(values[i$6]);
3014
- }
3015
- var tmpKMeansBreaks = [];
3016
- for (var j$6=0; j$6<num; j$6++) {
3017
- tmpKMeansBreaks.push(kClusters[j$6][0]);
3018
- tmpKMeansBreaks.push(kClusters[j$6][kClusters[j$6].length-1]);
3019
- }
3020
- tmpKMeansBreaks = tmpKMeansBreaks.sort(function (a,b){ return a-b; });
3021
- limits.push(tmpKMeansBreaks[0]);
3022
- for (var i$7=1; i$7 < tmpKMeansBreaks.length; i$7+= 2) {
3023
- var v = tmpKMeansBreaks[i$7];
3024
- if (!isNaN(v) && (limits.indexOf(v) === -1)) {
3025
- limits.push(v);
3026
- }
3027
- }
3028
- }
3029
- return limits;
3030
- };
3031
-
3032
- var analyze_1 = {analyze: analyze, limits: limits};
3033
-
3034
- var contrast = function (a, b) {
3035
- // WCAG contrast ratio
3036
- // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef
3037
- a = new Color_1(a);
3038
- b = new Color_1(b);
3039
- var l1 = a.luminance();
3040
- var l2 = b.luminance();
3041
- return l1 > l2 ? (l1 + 0.05) / (l2 + 0.05) : (l2 + 0.05) / (l1 + 0.05);
3042
- };
3043
-
3044
- var sqrt$4 = Math.sqrt;
3045
- var atan2$2 = Math.atan2;
3046
- var abs$1 = Math.abs;
3047
- var cos$4 = Math.cos;
3048
- var PI$2 = Math.PI;
3049
-
3050
- var deltaE = function(a, b, L, C) {
3051
- if ( L === void 0 ) L=1;
3052
- if ( C === void 0 ) C=1;
3053
-
3054
- // Delta E (CMC)
3055
- // see http://www.brucelindbloom.com/index.html?Eqn_DeltaE_CMC.html
3056
- a = new Color_1(a);
3057
- b = new Color_1(b);
3058
- var ref = Array.from(a.lab());
3059
- var L1 = ref[0];
3060
- var a1 = ref[1];
3061
- var b1 = ref[2];
3062
- var ref$1 = Array.from(b.lab());
3063
- var L2 = ref$1[0];
3064
- var a2 = ref$1[1];
3065
- var b2 = ref$1[2];
3066
- var c1 = sqrt$4((a1 * a1) + (b1 * b1));
3067
- var c2 = sqrt$4((a2 * a2) + (b2 * b2));
3068
- var sl = L1 < 16.0 ? 0.511 : (0.040975 * L1) / (1.0 + (0.01765 * L1));
3069
- var sc = ((0.0638 * c1) / (1.0 + (0.0131 * c1))) + 0.638;
3070
- var h1 = c1 < 0.000001 ? 0.0 : (atan2$2(b1, a1) * 180.0) / PI$2;
3071
- while (h1 < 0) { h1 += 360; }
3072
- while (h1 >= 360) { h1 -= 360; }
3073
- var t = (h1 >= 164.0) && (h1 <= 345.0) ? (0.56 + abs$1(0.2 * cos$4((PI$2 * (h1 + 168.0)) / 180.0))) : (0.36 + abs$1(0.4 * cos$4((PI$2 * (h1 + 35.0)) / 180.0)));
3074
- var c4 = c1 * c1 * c1 * c1;
3075
- var f = sqrt$4(c4 / (c4 + 1900.0));
3076
- var sh = sc * (((f * t) + 1.0) - f);
3077
- var delL = L1 - L2;
3078
- var delC = c1 - c2;
3079
- var delA = a1 - a2;
3080
- var delB = b1 - b2;
3081
- var dH2 = ((delA * delA) + (delB * delB)) - (delC * delC);
3082
- var v1 = delL / (L * sl);
3083
- var v2 = delC / (C * sc);
3084
- var v3 = sh;
3085
- return sqrt$4((v1 * v1) + (v2 * v2) + (dH2 / (v3 * v3)));
3086
- };
3087
-
3088
- // simple Euclidean distance
3089
- var distance = function(a, b, mode) {
3090
- if ( mode === void 0 ) mode='lab';
3091
-
3092
- // Delta E (CIE 1976)
3093
- // see http://www.brucelindbloom.com/index.html?Equations.html
3094
- a = new Color_1(a);
3095
- b = new Color_1(b);
3096
- var l1 = a.get(mode);
3097
- var l2 = b.get(mode);
3098
- var sum_sq = 0;
3099
- for (var i in l1) {
3100
- var d = (l1[i] || 0) - (l2[i] || 0);
3101
- sum_sq += d*d;
3102
- }
3103
- return Math.sqrt(sum_sq);
3104
- };
3105
-
3106
- var valid = function () {
3107
- var args = [], len = arguments.length;
3108
- while ( len-- ) args[ len ] = arguments[ len ];
3109
-
3110
- try {
3111
- new (Function.prototype.bind.apply( Color_1, [ null ].concat( args) ));
3112
- return true;
3113
- } catch (e) {
3114
- return false;
3115
- }
3116
- };
3117
-
3118
- // some pre-defined color scales:
3119
-
3120
-
3121
-
3122
-
3123
- var scales = {
3124
- cool: function cool() { return scale([chroma_1.hsl(180,1,.9), chroma_1.hsl(250,.7,.4)]) },
3125
- hot: function hot() { return scale(['#000','#f00','#ff0','#fff']).mode('rgb') }
3126
- };
3127
-
3128
- /**
3129
- ColorBrewer colors for chroma.js
3130
-
3131
- Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The
3132
- Pennsylvania State University.
3133
-
3134
- Licensed under the Apache License, Version 2.0 (the "License");
3135
- you may not use this file except in compliance with the License.
3136
- You may obtain a copy of the License at
3137
- http://www.apache.org/licenses/LICENSE-2.0
3138
-
3139
- Unless required by applicable law or agreed to in writing, software distributed
3140
- under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
3141
- CONDITIONS OF ANY KIND, either express or implied. See the License for the
3142
- specific language governing permissions and limitations under the License.
3143
- */
3144
-
3145
- var colorbrewer = {
3146
- // sequential
3147
- OrRd: ['#fff7ec', '#fee8c8', '#fdd49e', '#fdbb84', '#fc8d59', '#ef6548', '#d7301f', '#b30000', '#7f0000'],
3148
- PuBu: ['#fff7fb', '#ece7f2', '#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', '#045a8d', '#023858'],
3149
- BuPu: ['#f7fcfd', '#e0ecf4', '#bfd3e6', '#9ebcda', '#8c96c6', '#8c6bb1', '#88419d', '#810f7c', '#4d004b'],
3150
- Oranges: ['#fff5eb', '#fee6ce', '#fdd0a2', '#fdae6b', '#fd8d3c', '#f16913', '#d94801', '#a63603', '#7f2704'],
3151
- BuGn: ['#f7fcfd', '#e5f5f9', '#ccece6', '#99d8c9', '#66c2a4', '#41ae76', '#238b45', '#006d2c', '#00441b'],
3152
- YlOrBr: ['#ffffe5', '#fff7bc', '#fee391', '#fec44f', '#fe9929', '#ec7014', '#cc4c02', '#993404', '#662506'],
3153
- YlGn: ['#ffffe5', '#f7fcb9', '#d9f0a3', '#addd8e', '#78c679', '#41ab5d', '#238443', '#006837', '#004529'],
3154
- Reds: ['#fff5f0', '#fee0d2', '#fcbba1', '#fc9272', '#fb6a4a', '#ef3b2c', '#cb181d', '#a50f15', '#67000d'],
3155
- RdPu: ['#fff7f3', '#fde0dd', '#fcc5c0', '#fa9fb5', '#f768a1', '#dd3497', '#ae017e', '#7a0177', '#49006a'],
3156
- Greens: ['#f7fcf5', '#e5f5e0', '#c7e9c0', '#a1d99b', '#74c476', '#41ab5d', '#238b45', '#006d2c', '#00441b'],
3157
- YlGnBu: ['#ffffd9', '#edf8b1', '#c7e9b4', '#7fcdbb', '#41b6c4', '#1d91c0', '#225ea8', '#253494', '#081d58'],
3158
- Purples: ['#fcfbfd', '#efedf5', '#dadaeb', '#bcbddc', '#9e9ac8', '#807dba', '#6a51a3', '#54278f', '#3f007d'],
3159
- GnBu: ['#f7fcf0', '#e0f3db', '#ccebc5', '#a8ddb5', '#7bccc4', '#4eb3d3', '#2b8cbe', '#0868ac', '#084081'],
3160
- Greys: ['#ffffff', '#f0f0f0', '#d9d9d9', '#bdbdbd', '#969696', '#737373', '#525252', '#252525', '#000000'],
3161
- YlOrRd: ['#ffffcc', '#ffeda0', '#fed976', '#feb24c', '#fd8d3c', '#fc4e2a', '#e31a1c', '#bd0026', '#800026'],
3162
- PuRd: ['#f7f4f9', '#e7e1ef', '#d4b9da', '#c994c7', '#df65b0', '#e7298a', '#ce1256', '#980043', '#67001f'],
3163
- Blues: ['#f7fbff', '#deebf7', '#c6dbef', '#9ecae1', '#6baed6', '#4292c6', '#2171b5', '#08519c', '#08306b'],
3164
- PuBuGn: ['#fff7fb', '#ece2f0', '#d0d1e6', '#a6bddb', '#67a9cf', '#3690c0', '#02818a', '#016c59', '#014636'],
3165
- Viridis: ['#440154', '#482777', '#3f4a8a', '#31678e', '#26838f', '#1f9d8a', '#6cce5a', '#b6de2b', '#fee825'],
3166
-
3167
- // diverging
3168
-
3169
- Spectral: ['#9e0142', '#d53e4f', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#e6f598', '#abdda4', '#66c2a5', '#3288bd', '#5e4fa2'],
3170
- RdYlGn: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#d9ef8b', '#a6d96a', '#66bd63', '#1a9850', '#006837'],
3171
- RdBu: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#f7f7f7', '#d1e5f0', '#92c5de', '#4393c3', '#2166ac', '#053061'],
3172
- PiYG: ['#8e0152', '#c51b7d', '#de77ae', '#f1b6da', '#fde0ef', '#f7f7f7', '#e6f5d0', '#b8e186', '#7fbc41', '#4d9221', '#276419'],
3173
- PRGn: ['#40004b', '#762a83', '#9970ab', '#c2a5cf', '#e7d4e8', '#f7f7f7', '#d9f0d3', '#a6dba0', '#5aae61', '#1b7837', '#00441b'],
3174
- RdYlBu: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee090', '#ffffbf', '#e0f3f8', '#abd9e9', '#74add1', '#4575b4', '#313695'],
3175
- BrBG: ['#543005', '#8c510a', '#bf812d', '#dfc27d', '#f6e8c3', '#f5f5f5', '#c7eae5', '#80cdc1', '#35978f', '#01665e', '#003c30'],
3176
- RdGy: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#ffffff', '#e0e0e0', '#bababa', '#878787', '#4d4d4d', '#1a1a1a'],
3177
- PuOr: ['#7f3b08', '#b35806', '#e08214', '#fdb863', '#fee0b6', '#f7f7f7', '#d8daeb', '#b2abd2', '#8073ac', '#542788', '#2d004b'],
3178
-
3179
- // qualitative
3180
-
3181
- Set2: ['#66c2a5', '#fc8d62', '#8da0cb', '#e78ac3', '#a6d854', '#ffd92f', '#e5c494', '#b3b3b3'],
3182
- Accent: ['#7fc97f', '#beaed4', '#fdc086', '#ffff99', '#386cb0', '#f0027f', '#bf5b17', '#666666'],
3183
- Set1: ['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ffff33', '#a65628', '#f781bf', '#999999'],
3184
- Set3: ['#8dd3c7', '#ffffb3', '#bebada', '#fb8072', '#80b1d3', '#fdb462', '#b3de69', '#fccde5', '#d9d9d9', '#bc80bd', '#ccebc5', '#ffed6f'],
3185
- Dark2: ['#1b9e77', '#d95f02', '#7570b3', '#e7298a', '#66a61e', '#e6ab02', '#a6761d', '#666666'],
3186
- Paired: ['#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#fdbf6f', '#ff7f00', '#cab2d6', '#6a3d9a', '#ffff99', '#b15928'],
3187
- Pastel2: ['#b3e2cd', '#fdcdac', '#cbd5e8', '#f4cae4', '#e6f5c9', '#fff2ae', '#f1e2cc', '#cccccc'],
3188
- Pastel1: ['#fbb4ae', '#b3cde3', '#ccebc5', '#decbe4', '#fed9a6', '#ffffcc', '#e5d8bd', '#fddaec', '#f2f2f2'],
3189
- };
3190
-
3191
- // add lowercase aliases for case-insensitive matches
3192
- for (var i$1 = 0, list$1 = Object.keys(colorbrewer); i$1 < list$1.length; i$1 += 1) {
3193
- var key = list$1[i$1];
3194
-
3195
- colorbrewer[key.toLowerCase()] = colorbrewer[key];
3196
- }
3197
-
3198
- var colorbrewer_1 = colorbrewer;
3199
-
3200
- // feel free to comment out anything to rollup
3201
- // a smaller chroma.js built
3202
-
3203
- // io --> convert colors
3204
-
3205
-
3206
-
3207
-
3208
-
3209
-
3210
-
3211
-
3212
-
3213
-
3214
-
3215
-
3216
-
3217
-
3218
-
3219
- // operators --> modify existing Colors
3220
-
3221
-
3222
-
3223
-
3224
-
3225
-
3226
-
3227
-
3228
-
3229
-
3230
- // interpolators
3231
-
3232
-
3233
-
3234
-
3235
-
3236
-
3237
-
3238
-
3239
-
3240
-
3241
- // generators -- > create new colors
3242
- chroma_1.average = average;
3243
- chroma_1.bezier = bezier_1;
3244
- chroma_1.blend = blend_1;
3245
- chroma_1.cubehelix = cubehelix;
3246
- chroma_1.mix = chroma_1.interpolate = mix;
3247
- chroma_1.random = random_1;
3248
- chroma_1.scale = scale;
3249
-
3250
- // other utility methods
3251
- chroma_1.analyze = analyze_1.analyze;
3252
- chroma_1.contrast = contrast;
3253
- chroma_1.deltaE = deltaE;
3254
- chroma_1.distance = distance;
3255
- chroma_1.limits = analyze_1.limits;
3256
- chroma_1.valid = valid;
3257
-
3258
- // scale
3259
- chroma_1.scales = scales;
3260
-
3261
- // colors
3262
- chroma_1.colors = w3cx11_1;
3263
- chroma_1.brewer = colorbrewer_1;
3264
-
3265
- var chroma_js = chroma_1;
3266
-
3267
- return chroma_js;
3268
-
3269
- })));
3270
- });
3271
-
47
+ function t(t,n,r){return Math.min(Math.max(t,r),n)}class n extends Error{constructor(t){super(`Failed to parse color: "${t}"`);}}function r(r){if("string"!=typeof r)throw new n(r);if("transparent"===r.trim().toLowerCase())return [0,0,0,0];let e=r.trim();e=u.test(r)?function(t){const r=t.toLowerCase().trim(),e=o[function(t){let n=5381,r=t.length;for(;r;)n=33*n^t.charCodeAt(--r);return (n>>>0)%2341}(r)];if(!e)throw new n(t);return `#${e}`}(r):r;const f=s.exec(e);if(f){const t=Array.from(f).slice(1);return [...t.slice(0,3).map(t=>parseInt(_(t,2),16)),parseInt(_(t[3]||"f",2),16)/255]}const p=i.exec(e);if(p){const t=Array.from(p).slice(1);return [...t.slice(0,3).map(t=>parseInt(t,16)),parseInt(t[3]||"ff",16)/255]}const z=a.exec(e);if(z){const t=Array.from(z).slice(1);return [...t.slice(0,3).map(t=>parseInt(t,10)),parseFloat(t[3]||"1")]}const h=c.exec(e);if(h){const[e,o,_,s]=Array.from(h).slice(1).map(parseFloat);if(t(0,100,o)!==o)throw new n(r);if(t(0,100,_)!==_)throw new n(r);return [...l(e,o,_),s||1]}throw new n(r)}const e=t=>parseInt(t.replace(/_/g,""),36),o="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((t,n)=>{const r=e(n.substring(0,3)),o=e(n.substring(3)).toString(16);let _="";for(let t=0;t<6-o.length;t++)_+="0";return t[r]=`${_}${o}`,t},{}),_=(t,n)=>Array.from(Array(n)).map(()=>t).join(""),s=new RegExp(`^#${_("([a-f0-9])",3)}([a-f0-9])?$`,"i"),i=new RegExp(`^#${_("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),a=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${_(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),c=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,u=/^[a-z]+$/i,f=t=>Math.round(255*t),l=(t,n,r)=>{let e=r/100;if(0===n)return [e,e,e].map(f);const o=(t%360+360)%360/60,_=(1-Math.abs(2*e-1))*(n/100),s=_*(1-Math.abs(o%2-1));let i=0,a=0,c=0;o>=0&&o<1?(i=_,a=s):o>=1&&o<2?(i=s,a=_):o>=2&&o<3?(a=_,c=s):o>=3&&o<4?(a=s,c=_):o>=4&&o<5?(i=s,c=_):o>=5&&o<6&&(i=_,c=s);const u=e-_/2;return [i+u,a+u,c+u].map(f)};function p(t){const[n,e,o,_]=r(t).map((t,n)=>3===n?t:t/255),s=Math.max(n,e,o),i=Math.min(n,e,o),a=(s+i)/2;if(s===i)return [0,0,a,_];const c=s-i;return [60*(n===s?(e-o)/c+(e<o?6:0):e===s?(o-n)/c+2:(n-e)/c+4),a>.5?c/(2-s-i):c/(s+i),a,_]}function z(n,r,e,o){return `hsla(${(n%360).toFixed()}, ${t(0,100,100*r).toFixed()}%, ${t(0,100,100*e).toFixed()}%, ${parseFloat(t(0,1,o).toFixed(3))})`}
48
+
49
+ const colorScale = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950];
50
+ const lScale = [
51
+ 0.95,
52
+ 0.84,
53
+ 0.73,
54
+ 0.62,
55
+ 0.49,
56
+ 0.35,
57
+ 0.23,
58
+ 0.15,
59
+ 0.1,
60
+ 0.05,
61
+ 0.02
62
+ ];
63
+ // https://github.com/ricokahler/color2k/blob/main/src/parseToRgba.ts
64
+ const hslaRegex = /^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i;
65
+ function niceParseToHsla(color) {
66
+ const normalizedColor = color.trim();
67
+ const hslaMatch = hslaRegex.exec(normalizedColor);
68
+ if (hslaMatch) {
69
+ const [h, s, l, a] = Array.from(hslaMatch).slice(1).map(parseFloat);
70
+ if (t(0, 100, s) !== s)
71
+ throw new n(color);
72
+ if (t(0, 100, l) !== l)
73
+ throw new n(color);
74
+ return [h, s, l, a || 1];
75
+ }
76
+ // Warning -- converts to RGB first, so is lossy
77
+ return p(color);
78
+ }
79
+ function generateScale(color, name = "primary") {
80
+ const [h, s, l, a] = niceParseToHsla(color);
81
+ return lScale
82
+ .map((l) => z(h, s, l, a))
83
+ .map((color, index) => {
84
+ return `--sl-color-${name}-${colorScale[index]}: ${color};\n`;
85
+ });
86
+ }
3272
87
  /**
3273
88
  * Generated a Shoelace color scale css string from a base color
3274
89
  *
@@ -3277,33 +92,7 @@ var chroma = createCommonjsModule(function (module, exports) {
3277
92
  * @returns
3278
93
  */
3279
94
  function autoColorScaleCss(color, name = "primary") {
3280
- if (!chroma.valid(color)) {
3281
- return "";
3282
- }
3283
- const { scale, colorScale } = makeColorScale(color);
3284
- return scale
3285
- .map((color, index) => `--sl-color-${name}-${colorScale[index]}: ${chroma(color).hex()};`)
3286
- .join("\n");
3287
- }
3288
- function makeColorScale(color) {
3289
- const colorScale = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950];
3290
- const hex = chroma(color).hex();
3291
- const scale = chroma
3292
- .scale([
3293
- chroma(hex).luminance(0.95),
3294
- chroma(hex).luminance(0.84),
3295
- chroma(hex).luminance(0.73),
3296
- chroma(hex).luminance(0.62),
3297
- chroma(hex).luminance(0.49),
3298
- chroma(hex).luminance(0.35),
3299
- chroma(hex).luminance(0.23),
3300
- chroma(hex).luminance(0.15),
3301
- chroma(hex).luminance(0.1),
3302
- chroma(hex).luminance(0.05),
3303
- chroma(hex).luminance(0.02),
3304
- ])
3305
- .colors(colorScale.length);
3306
- return { scale, colorScale };
95
+ return generateScale(color, name).join("\n");
3307
96
  }
3308
97
 
3309
98
  const BrandComponent = class {
@@ -19054,9 +15843,40 @@ const GET_REWARDS = gql `
19054
15843
  fuelTankType
19055
15844
  currency
19056
15845
  prettyValue
15846
+ prettyValueNumber: prettyValue(formatType: NUMBER_FORMATTED)
15847
+ prettyAvailableNumber: prettyAvailableValue(
15848
+ formatType: NUMBER_FORMATTED
15849
+ )
15850
+ prettyRedeemedNumber: prettyRedeemedCredit(
15851
+ formatType: NUMBER_FORMATTED
15852
+ )
19057
15853
  statuses
19058
15854
  globalRewardKey
19059
15855
  programRewardKey
15856
+ rewardSource
15857
+ prettyRedeemedCredit
15858
+ prettyAssignedCredit
15859
+ prettyAvailableValue
15860
+ exchangedRewardRedemptionTransaction {
15861
+ id
15862
+ creditRedeemed
15863
+ prettyRedeemedCredit
15864
+ unit
15865
+ dateRedeemed
15866
+ }
15867
+ referral {
15868
+ id
15869
+ referrerUser {
15870
+ id
15871
+ firstName
15872
+ lastName
15873
+ }
15874
+ referredUser {
15875
+ id
15876
+ firstName
15877
+ lastName
15878
+ }
15879
+ }
19060
15880
  rewardRedemptionTransactions {
19061
15881
  data {
19062
15882
  exchangedRewards {
@@ -19188,12 +16008,7 @@ async function tryMethod$1(c, callback) {
19188
16008
  catch (e) {
19189
16009
  // renderLabel did not return a promise, so this method probably doesn't exist
19190
16010
  // therefore, we IGNORE the label
19191
- if (callback.name === "renderReferrerCell") {
19192
- console.error("column does not have a renderReferrerCell method.");
19193
- }
19194
- else {
19195
- console.error("label promise failed", e);
19196
- }
16011
+ console.error("label promise failed", e);
19197
16012
  return h$1("span", null);
19198
16013
  }
19199
16014
  try {
@@ -19265,6 +16080,57 @@ function useRewardsTableDemo(props) {
19265
16080
  }, props.demoData || {}, { arrayMerge: (_, a) => a });
19266
16081
  }
19267
16082
 
16083
+ const RewardTableDateCell = class {
16084
+ constructor(hostRef) {
16085
+ registerInstance(this, hostRef);
16086
+ this.ignored = true;
16087
+ h(this);
16088
+ }
16089
+ disconnectedCallback() { }
16090
+ render() {
16091
+ var _a;
16092
+ // needs hook to use locale
16093
+ const date = !this.date
16094
+ ? "-"
16095
+ : (_a = luxon.DateTime.fromMillis(this.date)) === null || _a === void 0 ? void 0 : _a.toLocaleString(luxon.DateTime.DATE_MED);
16096
+ return h$1(TextSpanView, { type: "p" }, date);
16097
+ }
16098
+ };
16099
+
16100
+ const RewardTableDateColumn = class {
16101
+ constructor(hostRef) {
16102
+ registerInstance(this, hostRef);
16103
+ /**
16104
+ * @uiName Date Column Title
16105
+ */
16106
+ this.columnTitle = "Date received";
16107
+ /**
16108
+ * @uiName Date Displayed
16109
+ * @uiType string
16110
+ * @uiEnum ["dateGiven",
16111
+ * "dateExpires",
16112
+ * "dateCancelled",
16113
+ * "dateRedeemed",
16114
+ * "dateScheduledFor"]
16115
+ */
16116
+ this.dateShown = "dateGiven";
16117
+ h(this);
16118
+ }
16119
+ disconnectedCallback() { }
16120
+ async renderCell(data) {
16121
+ const reward = data === null || data === void 0 ? void 0 : data[0];
16122
+ // TODO - Validate `dateShown` against a set of known values
16123
+ return (h$1("sqm-rewards-table-date-cell", { date: reward[this.dateShown] }));
16124
+ }
16125
+ async renderLabel() {
16126
+ return this.columnTitle;
16127
+ }
16128
+ render() {
16129
+ useRequestRerender([this.dateShown, this.columnTitle]);
16130
+ return h$1(Host, { style: { display: "none" } });
16131
+ }
16132
+ };
16133
+
19268
16134
  const RewardsTableColumn = class {
19269
16135
  constructor(hostRef) {
19270
16136
  registerInstance(this, hostRef);
@@ -19282,8 +16148,270 @@ const RewardsTableColumn = class {
19282
16148
  //@ts-ignore
19283
16149
  async renderCell(data) {
19284
16150
  // TODO: Do the right thing with many rewards, pending rewards, canceled rewards
19285
- console.log({ data });
19286
- return (h$1("sqm-referral-table-rewards-cell", { rewards: data, hideDetails: this.hideDetails }));
16151
+ return (h$1("sqm-rewards-table-rewards-cell", { reward: data === null || data === void 0 ? void 0 : data[0], hideDetails: this.hideDetails }));
16152
+ }
16153
+ async renderLabel() {
16154
+ return this.columnTitle;
16155
+ }
16156
+ render() {
16157
+ useRequestRerender([this.columnTitle]);
16158
+ return h$1(Host, { style: { display: "none" } });
16159
+ }
16160
+ };
16161
+
16162
+ const RewardTableRewardsCell = class {
16163
+ constructor(hostRef) {
16164
+ registerInstance(this, hostRef);
16165
+ }
16166
+ // TODO: value function from portalv2
16167
+ render() {
16168
+ const style = {
16169
+ DetailsContainer: {
16170
+ width: "100%",
16171
+ display: "flex",
16172
+ "align-items": "center",
16173
+ "justify-content": "space-between",
16174
+ "margin-right": "var(--sl-spacing-small)",
16175
+ "flex-wrap": "wrap",
16176
+ },
16177
+ Details: {
16178
+ "padding-bottom": "var(--sl-spacing-small)",
16179
+ "max-width": "500px",
16180
+ "padding-right": "var(--sl-spacing-x-small)",
16181
+ "&::part(header)": {
16182
+ padding: "var(--sl-spacing-x-small)",
16183
+ cursor: `${this.hideDetails ? "default" : "pointer"}`,
16184
+ },
16185
+ "&::part(content)": {
16186
+ padding: "var(--sl-spacing-x-small) var(--sl-spacing-medium)",
16187
+ },
16188
+ "&::part(base)": {
16189
+ opacity: "1",
16190
+ },
16191
+ "&::part(summary-icon)": {
16192
+ display: `${this.hideDetails ? "none" : "flex"}`,
16193
+ },
16194
+ },
16195
+ BadgeContainer: {
16196
+ "& > :not(:last-child)": {
16197
+ "margin-right": "var(--sl-spacing-x-small)",
16198
+ },
16199
+ },
16200
+ BoldText: {
16201
+ "font-weight": "var(--sl-font-weight-semibold)",
16202
+ },
16203
+ StatusBadge: {
16204
+ paddingLeft: "var(--sl-spacing-xxx-small)",
16205
+ },
16206
+ };
16207
+ jss.setup(create());
16208
+ const sheet = jss.createStyleSheet(style);
16209
+ const styleString = sheet.toString();
16210
+ function RewardValue({ reward }) {
16211
+ var _a;
16212
+ const pimpedPrettyValue = reward.unit === "CENTS"
16213
+ ? reward.prettyValue.replace(/USD/gi, "$")
16214
+ : (_a = reward.prettyValue) !== null && _a !== void 0 ? _a : "-";
16215
+ if (reward.type === "CREDIT") {
16216
+ const progress = Math.round(((parseFloat(reward.prettyValueNumber) -
16217
+ parseFloat(reward.prettyRedeemedNumber)) /
16218
+ parseFloat(reward.prettyValueNumber)) *
16219
+ 100);
16220
+ const progressBarSubtext = reward.statuses.includes("EXPIRED") ||
16221
+ reward.statuses.includes("CANCELLED") ? (h$1("div", null, reward.prettyRedeemedCredit, " redeemed")) : (h$1("div", null, reward.prettyAvailableValue, " available"));
16222
+ const style = {
16223
+ Progress: {
16224
+ background: "#e0e0e0",
16225
+ borderRadius: "4px",
16226
+ height: "3px",
16227
+ width: "80px",
16228
+ marginTop: "6px",
16229
+ marginBottom: "6px",
16230
+ "&:after": {
16231
+ content: '""',
16232
+ display: "block",
16233
+ background: "#222222",
16234
+ borderRadius: "4px",
16235
+ width: `${progress}%`,
16236
+ height: "100%",
16237
+ },
16238
+ },
16239
+ Ellipsis: {
16240
+ position: "relative",
16241
+ margin: "-8px",
16242
+ bottom: "1px",
16243
+ left: "8px",
16244
+ },
16245
+ };
16246
+ jss.setup(create());
16247
+ const sheet = jss.createStyleSheet(style);
16248
+ const styleString = sheet.toString();
16249
+ return (h$1("div", null, h$1("style", { type: "text/css" }, styleString), h$1("div", { style: {
16250
+ display: "inline-block",
16251
+ verticalAlign: "top",
16252
+ maxWidth: "100%",
16253
+ // maxHeight: "35px",
16254
+ maxHeight: "60px",
16255
+ whiteSpace: "nowrap",
16256
+ overflow: "hidden",
16257
+ textOverflow: "ellipsis",
16258
+ } }, h$1("span", { style: { color: "#232323" } }, pimpedPrettyValue), " ", h$1("br", null), " ", h$1("div", { class: sheet.classes.Progress }), progressBarSubtext)));
16259
+ }
16260
+ return h$1("span", { style: { color: "#232323" } }, pimpedPrettyValue);
16261
+ }
16262
+ return (h$1("div", { style: { display: "contents" } }, h$1("style", { type: "text/css" }, styleString), h$1("div", { slot: "summary", class: sheet.classes.DetailsContainer }, h$1(TextSpanView, { type: "p" }, h$1("span", { class: sheet.classes.BoldText }, h$1(RewardValue, { reward: this.reward }))))));
16263
+ }
16264
+ };
16265
+
16266
+ const RewardTableSourceCell = class {
16267
+ constructor(hostRef) {
16268
+ registerInstance(this, hostRef);
16269
+ }
16270
+ render() {
16271
+ function capitalize(str) {
16272
+ if (typeof str !== "string") {
16273
+ console.error(`Cannot capitalize parameter of type ${typeof str}`);
16274
+ return null;
16275
+ }
16276
+ return str.toLowerCase().replace(/\b\w/g, (l) => l.toUpperCase());
16277
+ }
16278
+ function RewardSource({ reward }) {
16279
+ var _a, _b;
16280
+ const rewardSource = (_b = capitalize(((_a = reward.rewardSource) === null || _a === void 0 ? void 0 : _a.replace("_", " ")) || "")) !== null && _b !== void 0 ? _b : "-";
16281
+ return h$1("span", null, rewardSource);
16282
+ }
16283
+ const SOURCE_COLUMN_LENGTH = 21;
16284
+ function RewardExchangeBadge({ reward }) {
16285
+ var _a;
16286
+ const rewardExchange = (h$1("div", null, "Reward Exchange", h$1("br", null), (_a = reward.exchangedRewardRedemptionTransaction) === null || _a === void 0 ? void 0 :
16287
+ _a.prettyRedeemedCredit, " → ", reward.prettyValue));
16288
+ return reward.exchangedRewardRedemptionTransaction.prettyRedeemedCredit
16289
+ .length +
16290
+ reward.prettyValue.length <
16291
+ SOURCE_COLUMN_LENGTH ? (rewardExchange) : (h$1("div", { style: {
16292
+ display: "inline-block",
16293
+ verticalAlign: "top",
16294
+ maxWidth: "120px",
16295
+ whiteSpace: "nowrap",
16296
+ overflow: "hidden",
16297
+ textOverflow: "ellipsis",
16298
+ } }, rewardExchange));
16299
+ }
16300
+ // TODO: user type
16301
+ function getFullName(user) {
16302
+ if (!user)
16303
+ return "Deleted User";
16304
+ if (!user.firstName && !user.lastName)
16305
+ return "Anonymous User";
16306
+ if (!user.firstName)
16307
+ return `${user.lastName}`;
16308
+ if (!user.lastName)
16309
+ return `${user.firstName}`;
16310
+ return `${user.firstName} ${user.lastName}`;
16311
+ }
16312
+ const source = () => this.reward.rewardSource === "FRIEND_SIGNUP" ||
16313
+ this.reward.rewardSource === "REFERRED" ? (h$1("div", null, this.reward.rewardSource === "FRIEND_SIGNUP" && "Referral to", this.reward.rewardSource === "REFERRED" && "Referred by", h$1("br", null), h$1("b", null, getFullName(this.reward.referral.referredUser)))) : this.reward.exchangedRewardRedemptionTransaction ? (h$1(RewardExchangeBadge, { reward: this.reward })) : (h$1(RewardSource, { reward: this.reward }));
16314
+ return h$1(TextSpanView, { type: "p" }, source());
16315
+ }
16316
+ };
16317
+
16318
+ const RewardTableUserColumn = class {
16319
+ constructor(hostRef) {
16320
+ registerInstance(this, hostRef);
16321
+ /**
16322
+ * @uiName User Column Title
16323
+ */
16324
+ this.columnTitle = "Source";
16325
+ /**
16326
+ * @uiName Name displayed for anonymous users
16327
+ */
16328
+ this.anonymousUser = "Anonymous User";
16329
+ /**
16330
+ * @uiName Name displayed for deleted users
16331
+ */
16332
+ this.deletedUser = "Deleted User";
16333
+ h(this);
16334
+ }
16335
+ disconnectedCallback() { }
16336
+ async renderCell(data) {
16337
+ return (h$1("sqm-rewards-table-source-cell", { reward: data === null || data === void 0 ? void 0 : data[0] }));
16338
+ }
16339
+ async renderLabel() {
16340
+ return this.columnTitle;
16341
+ }
16342
+ render() {
16343
+ useRequestRerender([
16344
+ this.deletedUser,
16345
+ this.anonymousUser,
16346
+ this.columnTitle,
16347
+ ]);
16348
+ return h$1(Host, { style: { display: "none" } });
16349
+ }
16350
+ };
16351
+
16352
+ const RewardTableStatusCell = class {
16353
+ constructor(hostRef) {
16354
+ registerInstance(this, hostRef);
16355
+ }
16356
+ rewardStatus(reward) {
16357
+ if (reward.dateCancelled)
16358
+ return "CANCELLED";
16359
+ if (reward.statuses && reward.statuses.includes("EXPIRED"))
16360
+ return "EXPIRED";
16361
+ if (reward.statuses && reward.statuses.includes("PENDING"))
16362
+ return "PENDING";
16363
+ if (reward.type === "CREDIT") {
16364
+ if (reward.statuses.includes("REDEEMED"))
16365
+ return "REDEEMED";
16366
+ return "AVAILABLE";
16367
+ }
16368
+ if (reward.type === "PCT_DISCOUNT") {
16369
+ if (reward.statuses.includes("AVAILABLE"))
16370
+ return "AVAILABLE";
16371
+ }
16372
+ if (reward.type === "INTEGRATION" || reward.type === "FUELTANK") {
16373
+ if (reward.statuses && reward.statuses.includes("PENDING"))
16374
+ return "PENDING";
16375
+ if (reward.statuses && reward.statuses.includes("CANCELLED"))
16376
+ return "CANCELLED";
16377
+ if (reward.statuses.includes("AVAILABLE"))
16378
+ return "AVAILABLE";
16379
+ }
16380
+ return "";
16381
+ }
16382
+ render() {
16383
+ const rewardStatus = this.rewardStatus(this.reward);
16384
+ const statusText = intl.formatMessage({ id: "statusMessage", defaultMessage: this.statusText }, {
16385
+ status: rewardStatus,
16386
+ });
16387
+ const badgeType = rewardStatus === "AVAILABLE"
16388
+ ? "success"
16389
+ : rewardStatus === "REDEEMED"
16390
+ ? "primary"
16391
+ : rewardStatus === "PENDING"
16392
+ ? "warning"
16393
+ : "error";
16394
+ return (h$1("sl-badge", { type: badgeType, pill: true }, statusText));
16395
+ }
16396
+ };
16397
+
16398
+ const RewardTableStatusColumn = class {
16399
+ constructor(hostRef) {
16400
+ registerInstance(this, hostRef);
16401
+ /**
16402
+ * @uiName Column Title
16403
+ */
16404
+ this.columnTitle = "Status";
16405
+ /**
16406
+ * @uiName Expired Status Text
16407
+ */
16408
+ this.statusText = "{status, select, AVAILABLE {Available} PENDING {Pending} EXPIRED {Expired} REDEEMED {Redeemed} other {Not available} }";
16409
+ h(this);
16410
+ }
16411
+ disconnectedCallback() { }
16412
+ async renderCell(data) {
16413
+ const rewardData = data === null || data === void 0 ? void 0 : data[0];
16414
+ return (h$1("sqm-rewards-table-status-cell", { statusText: this.statusText, reward: rewardData }));
19287
16415
  }
19288
16416
  async renderLabel() {
19289
16417
  return this.columnTitle;
@@ -20345,7 +17473,7 @@ var StyleSheet = /*#__PURE__*/function () {
20345
17473
  return StyleSheet;
20346
17474
  }();
20347
17475
 
20348
- var e="-ms-";var r="-moz-";var a="-webkit-";var c="comm";var n="rule";var t="decl";var i="@import";var p="@keyframes";var k=Math.abs;var d=String.fromCharCode;function m(e,r){return (((r<<2^z(e,0))<<2^z(e,1))<<2^z(e,2))<<2^z(e,3)}function g(e){return e.trim()}function x(e,r){return (e=r.exec(e))?e[0]:e}function y(e,r,a){return e.replace(r,a)}function j(e,r){return e.indexOf(r)}function z(e,r){return e.charCodeAt(r)|0}function C(e,r,a){return e.slice(r,a)}function A(e){return e.length}function M(e){return e.length}function O(e,r){return r.push(e),e}function S(e,r){return e.map(r).join("")}var q=1;var B=1;var D=0;var E=0;var F=0;var G="";function H(e,r,a,c,n,t,s){return {value:e,root:r,parent:a,type:c,props:n,children:t,line:q,column:B,length:s,return:""}}function I(e,r,a){return H(e,r.root,r.parent,a,r.props,r.children,0)}function J(){return F}function K(){F=E>0?z(G,--E):0;if(B--,F===10)B=1,q--;return F}function L(){F=E<D?z(G,E++):0;if(B++,F===10)B=1,q++;return F}function N(){return z(G,E)}function P(){return E}function Q(e,r){return C(G,e,r)}function R(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function T(e){return q=B=1,D=A(G=e),E=0,[]}function U(e){return G="",e}function V(e){return g(Q(E-1,_(e===91?e+2:e===40?e+1:e)))}function X(e){while(F=N())if(F<33)L();else break;return R(e)>2||R(F)>3?"":" "}function Z(e,r){while(--r&&L())if(F<48||F>102||F>57&&F<65||F>70&&F<97)break;return Q(e,P()+(r<6&&N()==32&&L()==32))}function _(e){while(L())switch(F){case e:return E;case 34:case 39:return _(e===34||e===39?e:F);case 40:if(e===41)_(e);break;case 92:L();break}return E}function ee(e,r){while(L())if(e+F===47+10)break;else if(e+F===42+42&&N()===47)break;return "/*"+Q(r,E-1)+"*"+d(e===47?e:L())}function re(e){while(!R(N()))L();return Q(e,E)}function ae(e){return U(ce("",null,null,null,[""],e=T(e),0,[0],e))}function ce(e,r,a,c,n,t,s,u,i){var f=0;var o=0;var l=s;var v=0;var h=0;var p=0;var b=1;var w=1;var $=1;var k=0;var m="";var g=n;var x=t;var j=c;var z=m;while(w)switch(p=k,k=L()){case 34:case 39:case 91:case 40:z+=V(k);break;case 9:case 10:case 13:case 32:z+=X(p);break;case 92:z+=Z(P()-1,7);continue;case 47:switch(N()){case 42:case 47:O(te(ee(L(),P()),r,a),i);break;default:z+="/";}break;case 123*b:u[f++]=A(z)*$;case 125*b:case 59:case 0:switch(k){case 0:case 125:w=0;case 59+o:if(h>0&&A(z)-l)O(h>32?se(z+";",c,a,l-1):se(y(z," ","")+";",c,a,l-2),i);break;case 59:z+=";";default:O(j=ne(z,r,a,f,o,n,u,m,g=[],x=[],l),t);if(k===123)if(o===0)ce(z,r,j,j,g,t,l,u,x);else switch(v){case 100:case 109:case 115:ce(e,j,j,c&&O(ne(e,j,j,0,0,n,u,m,n,g=[],l),x),n,x,l,u,c?g:x);break;default:ce(z,j,j,j,[""],x,l,u,x);}}f=o=h=0,b=$=1,m=z="",l=s;break;case 58:l=1+A(z),h=p;default:if(b<1)if(k==123)--b;else if(k==125&&b++==0&&K()==125)continue;switch(z+=d(k),k*b){case 38:$=o>0?1:(z+="\f",-1);break;case 44:u[f++]=(A(z)-1)*$,$=1;break;case 64:if(N()===45)z+=V(L());v=N(),o=A(m=z+=re(P())),k++;break;case 45:if(p===45&&A(z)==2)b=0;}}return t}function ne(e,r,a,c,t,s,u,i,f,o,l){var v=t-1;var h=t===0?s:[""];var p=M(h);for(var b=0,w=0,$=0;b<c;++b)for(var d=0,m=C(e,v+1,v=k(w=u[b])),x=e;d<p;++d)if(x=g(w>0?h[d]+" "+m:y(m,/&\f/g,h[d])))f[$++]=x;return H(e,r,a,t===0?n:i,f,o,l)}function te(e,r,a){return H(e,r,a,c,d(J()),C(e,2,-2),0)}function se(e,r,a,c){return H(e,r,a,t,C(e,0,c),C(e,c+1,-1),c)}function ue(c,n){switch(m(c,n)){case 5103:return a+"print-"+c+c;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return a+c+c;case 5349:case 4246:case 4810:case 6968:case 2756:return a+c+r+c+e+c+c;case 6828:case 4268:return a+c+e+c+c;case 6165:return a+c+e+"flex-"+c+c;case 5187:return a+c+y(c,/(\w+).+(:[^]+)/,a+"box-$1$2"+e+"flex-$1$2")+c;case 5443:return a+c+e+"flex-item-"+y(c,/flex-|-self/,"")+c;case 4675:return a+c+e+"flex-line-pack"+y(c,/align-content|flex-|-self/,"")+c;case 5548:return a+c+e+y(c,"shrink","negative")+c;case 5292:return a+c+e+y(c,"basis","preferred-size")+c;case 6060:return a+"box-"+y(c,"-grow","")+a+c+e+y(c,"grow","positive")+c;case 4554:return a+y(c,/([^-])(transform)/g,"$1"+a+"$2")+c;case 6187:return y(y(y(c,/(zoom-|grab)/,a+"$1"),/(image-set)/,a+"$1"),c,"")+c;case 5495:case 3959:return y(c,/(image-set\([^]*)/,a+"$1"+"$`$1");case 4968:return y(y(c,/(.+:)(flex-)?(.*)/,a+"box-pack:$3"+e+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+a+c+c;case 4095:case 3583:case 4068:case 2532:return y(c,/(.+)-inline(.+)/,a+"$1$2")+c;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(A(c)-1-n>6)switch(z(c,n+1)){case 109:if(z(c,n+4)!==45)break;case 102:return y(c,/(.+:)(.+)-([^]+)/,"$1"+a+"$2-$3"+"$1"+r+(z(c,n+3)==108?"$3":"$2-$3"))+c;case 115:return ~j(c,"stretch")?ue(y(c,"stretch","fill-available"),n)+c:c}break;case 4949:if(z(c,n+1)!==115)break;case 6444:switch(z(c,A(c)-3-(~j(c,"!important")&&10))){case 107:return y(c,":",":"+a)+c;case 101:return y(c,/(.+:)([^;!]+)(;|!.+)?/,"$1"+a+(z(c,14)===45?"inline-":"")+"box$3"+"$1"+a+"$2$3"+"$1"+e+"$2box$3")+c}break;case 5936:switch(z(c,n+11)){case 114:return a+c+e+y(c,/[svh]\w+-[tblr]{2}/,"tb")+c;case 108:return a+c+e+y(c,/[svh]\w+-[tblr]{2}/,"tb-rl")+c;case 45:return a+c+e+y(c,/[svh]\w+-[tblr]{2}/,"lr")+c}return a+c+e+c+c}return c}function ie(e,r){var a="";var c=M(e);for(var n=0;n<c;n++)a+=r(e[n],n,e,r)||"";return a}function fe(e,r,a,s){switch(e.type){case i:case t:return e.return=e.return||e.value;case c:return "";case n:e.value=e.props.join(",");}return A(a=ie(e.children,s))?e.return=e.value+"{"+a+"}":""}function oe(e){var r=M(e);return function(a,c,n,t){var s="";for(var u=0;u<r;u++)s+=e[u](a,c,n,t)||"";return s}}function le(e){return function(r){if(!r.root)if(r=r.return)e(r);}}function ve(c,s,u,i){if(!c.return)switch(c.type){case t:c.return=ue(c.value,c.length);break;case p:return ie([I(y(c.value,"@","@"+a),c,"")],i);case n:if(c.length)return S(c.props,(function(n){switch(x(n,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return ie([I(y(n,/:(read-\w+)/,":"+r+"$1"),c,"")],i);case"::placeholder":return ie([I(y(n,/:(plac\w+)/,":"+a+"input-$1"),c,""),I(y(n,/:(plac\w+)/,":"+r+"$1"),c,""),I(y(n,/:(plac\w+)/,e+"input-$1"),c,"")],i)}return ""}))}}
17476
+ var e$1="-ms-";var r$1="-moz-";var a$1="-webkit-";var c$1="comm";var n$1="rule";var t$1="decl";var i$1="@import";var p$1="@keyframes";var k=Math.abs;var d=String.fromCharCode;function m(e,r){return (((r<<2^z$1(e,0))<<2^z$1(e,1))<<2^z$1(e,2))<<2^z$1(e,3)}function g(e){return e.trim()}function x(e,r){return (e=r.exec(e))?e[0]:e}function y(e,r,a){return e.replace(r,a)}function j(e,r){return e.indexOf(r)}function z$1(e,r){return e.charCodeAt(r)|0}function C(e,r,a){return e.slice(r,a)}function A(e){return e.length}function M(e){return e.length}function O(e,r){return r.push(e),e}function S(e,r){return e.map(r).join("")}var q=1;var B=1;var D=0;var E=0;var F=0;var G="";function H(e,r,a,c,n,t,s){return {value:e,root:r,parent:a,type:c,props:n,children:t,line:q,column:B,length:s,return:""}}function I(e,r,a){return H(e,r.root,r.parent,a,r.props,r.children,0)}function J(){return F}function K(){F=E>0?z$1(G,--E):0;if(B--,F===10)B=1,q--;return F}function L(){F=E<D?z$1(G,E++):0;if(B++,F===10)B=1,q++;return F}function N(){return z$1(G,E)}function P(){return E}function Q(e,r){return C(G,e,r)}function R(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function T(e){return q=B=1,D=A(G=e),E=0,[]}function U(e){return G="",e}function V(e){return g(Q(E-1,_$1(e===91?e+2:e===40?e+1:e)))}function X(e){while(F=N())if(F<33)L();else break;return R(e)>2||R(F)>3?"":" "}function Z(e,r){while(--r&&L())if(F<48||F>102||F>57&&F<65||F>70&&F<97)break;return Q(e,P()+(r<6&&N()==32&&L()==32))}function _$1(e){while(L())switch(F){case e:return E;case 34:case 39:return _$1(e===34||e===39?e:F);case 40:if(e===41)_$1(e);break;case 92:L();break}return E}function ee(e,r){while(L())if(e+F===47+10)break;else if(e+F===42+42&&N()===47)break;return "/*"+Q(r,E-1)+"*"+d(e===47?e:L())}function re(e){while(!R(N()))L();return Q(e,E)}function ae(e){return U(ce("",null,null,null,[""],e=T(e),0,[0],e))}function ce(e,r,a,c,n,t,s,u,i){var f=0;var o=0;var l=s;var v=0;var h=0;var p=0;var b=1;var w=1;var $=1;var k=0;var m="";var g=n;var x=t;var j=c;var z=m;while(w)switch(p=k,k=L()){case 34:case 39:case 91:case 40:z+=V(k);break;case 9:case 10:case 13:case 32:z+=X(p);break;case 92:z+=Z(P()-1,7);continue;case 47:switch(N()){case 42:case 47:O(te(ee(L(),P()),r,a),i);break;default:z+="/";}break;case 123*b:u[f++]=A(z)*$;case 125*b:case 59:case 0:switch(k){case 0:case 125:w=0;case 59+o:if(h>0&&A(z)-l)O(h>32?se(z+";",c,a,l-1):se(y(z," ","")+";",c,a,l-2),i);break;case 59:z+=";";default:O(j=ne(z,r,a,f,o,n,u,m,g=[],x=[],l),t);if(k===123)if(o===0)ce(z,r,j,j,g,t,l,u,x);else switch(v){case 100:case 109:case 115:ce(e,j,j,c&&O(ne(e,j,j,0,0,n,u,m,n,g=[],l),x),n,x,l,u,c?g:x);break;default:ce(z,j,j,j,[""],x,l,u,x);}}f=o=h=0,b=$=1,m=z="",l=s;break;case 58:l=1+A(z),h=p;default:if(b<1)if(k==123)--b;else if(k==125&&b++==0&&K()==125)continue;switch(z+=d(k),k*b){case 38:$=o>0?1:(z+="\f",-1);break;case 44:u[f++]=(A(z)-1)*$,$=1;break;case 64:if(N()===45)z+=V(L());v=N(),o=A(m=z+=re(P())),k++;break;case 45:if(p===45&&A(z)==2)b=0;}}return t}function ne(e,r,a,c,t,s,u,i,f,o,l){var v=t-1;var h=t===0?s:[""];var p=M(h);for(var b=0,w=0,$=0;b<c;++b)for(var d=0,m=C(e,v+1,v=k(w=u[b])),x=e;d<p;++d)if(x=g(w>0?h[d]+" "+m:y(m,/&\f/g,h[d])))f[$++]=x;return H(e,r,a,t===0?n$1:i,f,o,l)}function te(e,r,a){return H(e,r,a,c$1,d(J()),C(e,2,-2),0)}function se(e,r,a,c){return H(e,r,a,t$1,C(e,0,c),C(e,c+1,-1),c)}function ue(c,n){switch(m(c,n)){case 5103:return a$1+"print-"+c+c;case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return a$1+c+c;case 5349:case 4246:case 4810:case 6968:case 2756:return a$1+c+r$1+c+e$1+c+c;case 6828:case 4268:return a$1+c+e$1+c+c;case 6165:return a$1+c+e$1+"flex-"+c+c;case 5187:return a$1+c+y(c,/(\w+).+(:[^]+)/,a$1+"box-$1$2"+e$1+"flex-$1$2")+c;case 5443:return a$1+c+e$1+"flex-item-"+y(c,/flex-|-self/,"")+c;case 4675:return a$1+c+e$1+"flex-line-pack"+y(c,/align-content|flex-|-self/,"")+c;case 5548:return a$1+c+e$1+y(c,"shrink","negative")+c;case 5292:return a$1+c+e$1+y(c,"basis","preferred-size")+c;case 6060:return a$1+"box-"+y(c,"-grow","")+a$1+c+e$1+y(c,"grow","positive")+c;case 4554:return a$1+y(c,/([^-])(transform)/g,"$1"+a$1+"$2")+c;case 6187:return y(y(y(c,/(zoom-|grab)/,a$1+"$1"),/(image-set)/,a$1+"$1"),c,"")+c;case 5495:case 3959:return y(c,/(image-set\([^]*)/,a$1+"$1"+"$`$1");case 4968:return y(y(c,/(.+:)(flex-)?(.*)/,a$1+"box-pack:$3"+e$1+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+a$1+c+c;case 4095:case 3583:case 4068:case 2532:return y(c,/(.+)-inline(.+)/,a$1+"$1$2")+c;case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:if(A(c)-1-n>6)switch(z$1(c,n+1)){case 109:if(z$1(c,n+4)!==45)break;case 102:return y(c,/(.+:)(.+)-([^]+)/,"$1"+a$1+"$2-$3"+"$1"+r$1+(z$1(c,n+3)==108?"$3":"$2-$3"))+c;case 115:return ~j(c,"stretch")?ue(y(c,"stretch","fill-available"),n)+c:c}break;case 4949:if(z$1(c,n+1)!==115)break;case 6444:switch(z$1(c,A(c)-3-(~j(c,"!important")&&10))){case 107:return y(c,":",":"+a$1)+c;case 101:return y(c,/(.+:)([^;!]+)(;|!.+)?/,"$1"+a$1+(z$1(c,14)===45?"inline-":"")+"box$3"+"$1"+a$1+"$2$3"+"$1"+e$1+"$2box$3")+c}break;case 5936:switch(z$1(c,n+11)){case 114:return a$1+c+e$1+y(c,/[svh]\w+-[tblr]{2}/,"tb")+c;case 108:return a$1+c+e$1+y(c,/[svh]\w+-[tblr]{2}/,"tb-rl")+c;case 45:return a$1+c+e$1+y(c,/[svh]\w+-[tblr]{2}/,"lr")+c}return a$1+c+e$1+c+c}return c}function ie(e,r){var a="";var c=M(e);for(var n=0;n<c;n++)a+=r(e[n],n,e,r)||"";return a}function fe(e,r,a,s){switch(e.type){case i$1:case t$1:return e.return=e.return||e.value;case c$1:return "";case n$1:e.value=e.props.join(",");}return A(a=ie(e.children,s))?e.return=e.value+"{"+a+"}":""}function oe(e){var r=M(e);return function(a,c,n,t){var s="";for(var u=0;u<r;u++)s+=e[u](a,c,n,t)||"";return s}}function le(e){return function(r){if(!r.root)if(r=r.return)e(r);}}function ve(c,s,u,i){if(!c.return)switch(c.type){case t$1:c.return=ue(c.value,c.length);break;case p$1:return ie([I(y(c.value,"@","@"+a$1),c,"")],i);case n$1:if(c.length)return S(c.props,(function(n){switch(x(n,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return ie([I(y(n,/:(read-\w+)/,":"+r$1+"$1"),c,"")],i);case"::placeholder":return ie([I(y(n,/:(plac\w+)/,":"+a$1+"input-$1"),c,""),I(y(n,/:(plac\w+)/,":"+r$1+"$1"),c,""),I(y(n,/:(plac\w+)/,e$1+"input-$1"),c,"")],i)}return ""}))}}
20349
17477
 
20350
17478
  function memoize(fn) {
20351
17479
  var cache = Object.create(null);
@@ -21052,7 +18180,7 @@ var _createEmotion = createEmotion({
21052
18180
  }),
21053
18181
  css = _createEmotion.css;
21054
18182
 
21055
- function i$1(){return (i$1=Object.assign||function(n){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(n[r]=o[r]);}return n}).apply(this,arguments)}function s(n,t){return t||(t=n.slice(0)),n.raw=t,n}var a$1,l,u,c$1=css(a$1||(a$1=s(['\n width: 100vw;\n height: 100vh;\n\n .story-book-outer-div {\n .story-div {\n font-family: "Arial", sans-serif;\n font-size: 12px;\n }\n padding-bottom: 500px;\n }\n\n .story-div {\n position: fixed;\n box-sizing: border-box;\n top: 0;\n width: 250px;\n height: 100vh;\n z-index: 999;\n overflow-y: scroll;\n background: white;\n margin-bottom: 32px;\n }\n\n .header {\n padding: 24px 0 16px 16px;\n margin-bottom: 24px;\n color: white;\n background: #333;\n cursor: pointer;\n\n h2 {\n letter-spacing: 3px;\n font-weight: 400;\n }\n }\n\n .parentStoryList {\n list-style: none;\n padding-left: 16px;\n\n summary {\n margin-bottom: 4px;\n }\n }\n .parentStory {\n cursor: pointer;\n }\n .parentStory.selected {\n font-weight: bold;\n }\n\n .subStory {\n font-size: 12px;\n cursor: pointer;\n line-height: 1.5em;\n margin-top: 4px;\n\n a {\n display: block;\n padding: 4px 4px 4px 16px;\n }\n }\n .subStory:hover {\n background-color: #eee;\n }\n .subStory.selected {\n background-color: lightgreen;\n }\n\n .component {\n padding: 24px 16px;\n }\n\n h4.group-header {\n margin: 8px 0;\n text-transform: uppercase;\n font-weight: 600;\n font-size: 14px;\n color: #575757;\n }\n\n .group-wrapper {\n margin-bottom: 24px;\n }\n\n .dynamic-display-wrapper {\n position: fixed;\n display: flex;\n flex-direction: column;\n bottom: 0;\n left: 100%;\n padding: 16px;\n z-index: 1000;\n background: white;\n transform: translateX(-100%);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n\n & > :not(:first-child) {\n margin-top: 12px;\n }\n\n p {\n font-size: 12px;\n margin: 0;\n padding: 0;\n }\n\n .button-wrapper {\n display: flex;\n\n & > :not(:first-child) {\n margin-left: 12px;\n }\n }\n\n & button {\n border: 1px solid #eaeaea;\n background: white;\n border-radius: 4px;\n color: #777;\n padding: 4px 12px;\n justify-content: center;\n align-items: center;\n text-align: center;\n\n &.active {\n background: #555;\n border-color: #555;\n color: white;\n }\n }\n }\n'])));function p$1(n,t){var o,r=t.story.title.split("/"),e=r[1]?r[0]:"_";return i$1({},n,((o={})[e]=[].concat(n[e]||[],[{story:i$1({},t.story,{title:r[1]||r[0]}),subs:t.subs}]).sort(function(n,t){return n.story.title.localeCompare(t.story.title)}),o))}function d$1(n){return {story:n.default,subs:function(n,t){if(null==n)return {};var o,r,e={},i=Object.keys(n);for(r=0;r<i.length;r++)t.indexOf(o=i[r])>=0||(e[o]=n[o]);return e}(n,["default"])}}function f(a,f){var b=f.h,y=void 0===b?h$1:b,g=f.title,m=void 0===g?"Stencilbook":g,x=f.homepage,h=void 0===x?y("h3",null,"Select a story!"):x,v=f.addons,k=void 0===v?[]:v,w=useMemo(function(){return a.map(d$1).reduce(p$1,{_:[]})},a),S=useState(void 0),C=S[0],z=S[1],O=null==C?void 0:C.key,j=useState("desktop"),T=j[0],_=j[1],B=useState(!0),D=B[0],L=B[1],N=useState(!1),q=N[0],A=N[1],M=function(){return y("div",{class:"dynamic-display-wrapper"},y("div",{class:"button-wrapper"},y("button",{class:"desktop"===T?"active":"",onClick:function(){return _("desktop")}},"Desktop"),y("button",{class:"tablet"===T?"active":"",onClick:function(){return _("tablet")}},"Tablet"),y("button",{class:"mobile"===T?"active":"",onClick:function(){return _("mobile")}},"Mobile")),y("p",null,"Note: Currently doesn't test breakpoints, use the native tester for now"),y("hr",null),y("button",{class:q?"active":"",onClick:function(){return A(function(n){return !n})}},"Toggle Dark Background"),y("hr",null),y("button",{class:D?"active":"",onClick:function(){return L(function(n){return !n})}},"Toggle Sidebar"))},P="mobile"===T?"375px":"tablet"===T?"768px":"1124px",V=css(l||(l=s(["\n max-width: ",";\n margin-left: ",";\n "])),P,D?"250px":"0px"),X=css(u||(u=s(["\n display: none;\n "])));document.body.style.backgroundColor=q?"#232323":"#fafafa";var E=function(n){var t=n.selected,o=k.reduce(function(n,o){return function(){return y(o,{story:i$1({},t)},y(n,null))}},null==t?void 0:t.story);return y(o,null)},F=function(){return y("div",{class:"story-book-outer-div"},y("div",{class:"story-div "+(D?"":X)},y("div",{class:"header",onClick:function(){z(void 0);}},y("h2",null,m)),y("ul",{class:"parentStoryList"},Object.keys(w).sort().map(function(n){return y("div",{class:"group-wrapper"},"_"!==n&&y("h4",{class:"group-header"},n),w[n].map(function(t){return y("li",{class:"parentStory"},y("details",{style:{marginBottom:"10px"}},y("summary",{style:{outline:"none"}},t.story.title),t.subs&&Object.keys(t.subs).map(function(o){var e=n+"/"+o,i=t.subs[o],s=i.storyName||lodash_startcase(o);return y("div",{class:"subStory "+(O===e?"selected":"")},y("a",{onClick:function(){return function(n,t,o,r){z({key:t,story:n,parent:o,label:r});}(i,e,t.story,s)}},s))})))}))}))),y(M,null),y("div",{class:"component "+V},!O&&h,O&&y("div",null,y("h3",null,C.label),y(E,{selected:C}))))};return {class:c$1,children:y(F,null),View:F,selected:C}}
18183
+ function i$2(){return (i$2=Object.assign||function(n){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(n[r]=o[r]);}return n}).apply(this,arguments)}function s$1(n,t){return t||(t=n.slice(0)),n.raw=t,n}var a$2,l$1,u$1,c$2=css(a$2||(a$2=s$1(['\n width: 100vw;\n height: 100vh;\n\n .story-book-outer-div {\n .story-div {\n font-family: "Arial", sans-serif;\n font-size: 12px;\n }\n padding-bottom: 500px;\n }\n\n .story-div {\n position: fixed;\n box-sizing: border-box;\n top: 0;\n width: 250px;\n height: 100vh;\n z-index: 999;\n overflow-y: scroll;\n background: white;\n margin-bottom: 32px;\n }\n\n .header {\n padding: 24px 0 16px 16px;\n margin-bottom: 24px;\n color: white;\n background: #333;\n cursor: pointer;\n\n h2 {\n letter-spacing: 3px;\n font-weight: 400;\n }\n }\n\n .parentStoryList {\n list-style: none;\n padding-left: 16px;\n\n summary {\n margin-bottom: 4px;\n }\n }\n .parentStory {\n cursor: pointer;\n }\n .parentStory.selected {\n font-weight: bold;\n }\n\n .subStory {\n font-size: 12px;\n cursor: pointer;\n line-height: 1.5em;\n margin-top: 4px;\n\n a {\n display: block;\n padding: 4px 4px 4px 16px;\n }\n }\n .subStory:hover {\n background-color: #eee;\n }\n .subStory.selected {\n background-color: lightgreen;\n }\n\n .component {\n padding: 24px 16px;\n }\n\n h4.group-header {\n margin: 8px 0;\n text-transform: uppercase;\n font-weight: 600;\n font-size: 14px;\n color: #575757;\n }\n\n .group-wrapper {\n margin-bottom: 24px;\n }\n\n .dynamic-display-wrapper {\n position: fixed;\n display: flex;\n flex-direction: column;\n bottom: 0;\n left: 100%;\n padding: 16px;\n z-index: 1000;\n background: white;\n transform: translateX(-100%);\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);\n\n & > :not(:first-child) {\n margin-top: 12px;\n }\n\n p {\n font-size: 12px;\n margin: 0;\n padding: 0;\n }\n\n .button-wrapper {\n display: flex;\n\n & > :not(:first-child) {\n margin-left: 12px;\n }\n }\n\n & button {\n border: 1px solid #eaeaea;\n background: white;\n border-radius: 4px;\n color: #777;\n padding: 4px 12px;\n justify-content: center;\n align-items: center;\n text-align: center;\n\n &.active {\n background: #555;\n border-color: #555;\n color: white;\n }\n }\n }\n'])));function p$2(n,t){var o,r=t.story.title.split("/"),e=r[1]?r[0]:"_";return i$2({},n,((o={})[e]=[].concat(n[e]||[],[{story:i$2({},t.story,{title:r[1]||r[0]}),subs:t.subs}]).sort(function(n,t){return n.story.title.localeCompare(t.story.title)}),o))}function d$1(n){return {story:n.default,subs:function(n,t){if(null==n)return {};var o,r,e={},i=Object.keys(n);for(r=0;r<i.length;r++)t.indexOf(o=i[r])>=0||(e[o]=n[o]);return e}(n,["default"])}}function f$1(a,f){var b=f.h,y=void 0===b?h$1:b,g=f.title,m=void 0===g?"Stencilbook":g,x=f.homepage,h=void 0===x?y("h3",null,"Select a story!"):x,v=f.addons,k=void 0===v?[]:v,w=useMemo(function(){return a.map(d$1).reduce(p$2,{_:[]})},a),S=useState(void 0),C=S[0],z=S[1],O=null==C?void 0:C.key,j=useState("desktop"),T=j[0],_=j[1],B=useState(!0),D=B[0],L=B[1],N=useState(!1),q=N[0],A=N[1],M=function(){return y("div",{class:"dynamic-display-wrapper"},y("div",{class:"button-wrapper"},y("button",{class:"desktop"===T?"active":"",onClick:function(){return _("desktop")}},"Desktop"),y("button",{class:"tablet"===T?"active":"",onClick:function(){return _("tablet")}},"Tablet"),y("button",{class:"mobile"===T?"active":"",onClick:function(){return _("mobile")}},"Mobile")),y("p",null,"Note: Currently doesn't test breakpoints, use the native tester for now"),y("hr",null),y("button",{class:q?"active":"",onClick:function(){return A(function(n){return !n})}},"Toggle Dark Background"),y("hr",null),y("button",{class:D?"active":"",onClick:function(){return L(function(n){return !n})}},"Toggle Sidebar"))},P="mobile"===T?"375px":"tablet"===T?"768px":"1124px",V=css(l$1||(l$1=s$1(["\n max-width: ",";\n margin-left: ",";\n "])),P,D?"250px":"0px"),X=css(u$1||(u$1=s$1(["\n display: none;\n "])));document.body.style.backgroundColor=q?"#232323":"#fafafa";var E=function(n){var t=n.selected,o=k.reduce(function(n,o){return function(){return y(o,{story:i$2({},t)},y(n,null))}},null==t?void 0:t.story);return y(o,null)},F=function(){return y("div",{class:"story-book-outer-div"},y("div",{class:"story-div "+(D?"":X)},y("div",{class:"header",onClick:function(){z(void 0);}},y("h2",null,m)),y("ul",{class:"parentStoryList"},Object.keys(w).sort().map(function(n){return y("div",{class:"group-wrapper"},"_"!==n&&y("h4",{class:"group-header"},n),w[n].map(function(t){return y("li",{class:"parentStory"},y("details",{style:{marginBottom:"10px"}},y("summary",{style:{outline:"none"}},t.story.title),t.subs&&Object.keys(t.subs).map(function(o){var e=n+"/"+o,i=t.subs[o],s=i.storyName||lodash_startcase(o);return y("div",{class:"subStory "+(O===e?"selected":"")},y("a",{onClick:function(){return function(n,t,o,r){z({key:t,story:n,parent:o,label:r});}(i,e,t.story,s)}},s))})))}))}))),y(M,null),y("div",{class:"component "+V},!O&&h,O&&y("div",null,y("h3",null,C.label),y(E,{selected:C}))))};return {class:c$2,children:y(F,null),View:F,selected:C}}
21056
18184
 
21057
18185
  const ShareButton_stories = {
21058
18186
  title: "Components/Share Button",
@@ -22311,7 +19439,10 @@ const RewardsTableNoProgram = createHookStory(() => {
22311
19439
  setupGraphQL$7();
22312
19440
  A$1(undefined);
22313
19441
  return (h$1("sqm-rewards-table", null,
22314
- h$1("sqm-rewards-table-column", null)));
19442
+ h$1("sqm-rewards-table-reward-column", null),
19443
+ h$1("sqm-rewards-table-source-column", null),
19444
+ h$1("sqm-rewards-table-status-column", null),
19445
+ h$1("sqm-rewards-table-date-column", null)));
22315
19446
  });
22316
19447
 
22317
19448
  const UseRewardsTable = /*#__PURE__*/Object.freeze({
@@ -23805,6 +20936,7 @@ const baseReward = {
23805
20936
  dateScheduledFor: getDays(),
23806
20937
  dateExpires: getMonths(),
23807
20938
  dateCancelled: 134400,
20939
+ dateRedeemed: 0,
23808
20940
  fuelTankCode: "ABC",
23809
20941
  fuelTankType: "Code",
23810
20942
  currency: "null",
@@ -24056,6 +21188,7 @@ const baseReward$1 = {
24056
21188
  dateScheduledFor: 1628146800000,
24057
21189
  dateExpires: 1629010800000,
24058
21190
  dateCancelled: 134400,
21191
+ dateRedeemed: 0,
24059
21192
  fuelTankCode: "ABC",
24060
21193
  fuelTankType: "Code",
24061
21194
  currency: "null",
@@ -24545,6 +21678,7 @@ const rewardsData = {
24545
21678
  dateScheduledFor: 1628146800000,
24546
21679
  dateExpires: 1629010800000,
24547
21680
  dateCancelled: 134400,
21681
+ dateRedeemed: 0,
24548
21682
  fuelTankCode: "ABC",
24549
21683
  fuelTankType: "Code",
24550
21684
  currency: "null",
@@ -32491,7 +29625,7 @@ const StencilStorybook = class {
32491
29625
  }
32492
29626
  disconnectedCallback() { }
32493
29627
  render() {
32494
- const { class: Style, children } = f(stories, {
29628
+ const { class: Style, children } = f$1(stories, {
32495
29629
  h: h$1,
32496
29630
  title: "Mint Components",
32497
29631
  addons: [CucumberAddon, ShadowViewAddon, HookStoryAddon],
@@ -32746,4 +29880,4 @@ function useUserNameDemo(props) {
32746
29880
  }, props.demoData || {}, { arrayMerge: (_, a) => a });
32747
29881
  }
32748
29882
 
32749
- export { BrandComponent as sqm_brand, DividedLayout as sqm_divided_layout, EditProfile as sqm_edit_profile, FormMessage as sqm_form_message, SqmHookStoryContainer as sqm_hook_story_container, NavigationMenu as sqm_navigation_menu, PortalPasswordField as sqm_password_field, PortalChangePassword as sqm_portal_change_password, PortalFrame as sqm_portal_frame, PortalLogin as sqm_portal_login, PortalRegister as sqm_portal_register, ProgramMenu as sqm_program_menu, SqmReferralIframe as sqm_referral_iframe, ReferralTable as sqm_referral_table, ReferralTableCell as sqm_referral_table_cell, ReferralTableDateCell as sqm_referral_table_date_cell, ReferralTableRewardsCell as sqm_referral_table_rewards_cell, ReferralTableStatusCell as sqm_referral_table_status_cell, ReferralTableUserCell as sqm_referral_table_user_cell, SqmRewardExchangeList as sqm_reward_exchange_list, RewardsTable as sqm_rewards_table, RewardsTableColumn as sqm_rewards_table_column, SqmRouter as sqm_router, ShareButton as sqm_share_button, ShareLink as sqm_share_link, StencilStorybook as sqm_stencilbook, TableCell$1 as sqm_table_cell, TableRow as sqm_table_row, TaskCard$3 as sqm_task_card, Text as sqm_text, UserName$1 as sqm_user_name };
29883
+ export { BrandComponent as sqm_brand, DividedLayout as sqm_divided_layout, EditProfile as sqm_edit_profile, FormMessage as sqm_form_message, SqmHookStoryContainer as sqm_hook_story_container, NavigationMenu as sqm_navigation_menu, PortalPasswordField as sqm_password_field, PortalChangePassword as sqm_portal_change_password, PortalFrame as sqm_portal_frame, PortalLogin as sqm_portal_login, PortalRegister as sqm_portal_register, ProgramMenu as sqm_program_menu, SqmReferralIframe as sqm_referral_iframe, ReferralTable as sqm_referral_table, ReferralTableCell as sqm_referral_table_cell, ReferralTableDateCell as sqm_referral_table_date_cell, ReferralTableRewardsCell as sqm_referral_table_rewards_cell, ReferralTableStatusCell as sqm_referral_table_status_cell, ReferralTableUserCell as sqm_referral_table_user_cell, SqmRewardExchangeList as sqm_reward_exchange_list, RewardsTable as sqm_rewards_table, RewardTableDateCell as sqm_rewards_table_date_cell, RewardTableDateColumn as sqm_rewards_table_date_column, RewardsTableColumn as sqm_rewards_table_reward_column, RewardTableRewardsCell as sqm_rewards_table_rewards_cell, RewardTableSourceCell as sqm_rewards_table_source_cell, RewardTableUserColumn as sqm_rewards_table_source_column, RewardTableStatusCell as sqm_rewards_table_status_cell, RewardTableStatusColumn as sqm_rewards_table_status_column, SqmRouter as sqm_router, ShareButton as sqm_share_button, ShareLink as sqm_share_link, StencilStorybook as sqm_stencilbook, TableCell$1 as sqm_table_cell, TableRow as sqm_table_row, TaskCard$3 as sqm_task_card, Text as sqm_text, UserName$1 as sqm_user_name };