@d3plus/color 3.0.16 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,6 @@
1
+ /**
2
+ Similar to d3.color.brighter, except that this also reduces saturation so that colors don't appear neon.
3
+ @param c A valid CSS color string.
4
+ @param i Strength of the lightening effect, from 0 to 1.
5
+ */
6
+ export default function (c: string, i?: number): string;
@@ -0,0 +1,8 @@
1
+ /**
2
+ Subtracts one color from another.
3
+ @param c1 The base color, a valid CSS color string.
4
+ @param c2 The color to remove from the base color, also a valid CSS color string.
5
+ @param o1 Value from 0 to 1 of the first color's opacity.
6
+ @param o2 Value from 0 to 1 of the first color's opacity.
7
+ */
8
+ export default function (c1: string, c2: string, o1?: number, o2?: number): string;
@@ -4,110 +4,6 @@
4
4
  Copyright (c) 2026 D3plus - https://d3plus.org
5
5
  @license MIT
6
6
  */
7
-
8
- (function (factory) {
9
- typeof define === 'function' && define.amd ? define(factory) :
10
- factory();
11
- })((function () { 'use strict';
12
-
13
- if (typeof window !== "undefined") {
14
- (function () {
15
- try {
16
- if (typeof SVGElement === 'undefined' || Boolean(SVGElement.prototype.innerHTML)) {
17
- return;
18
- }
19
- } catch (e) {
20
- return;
21
- }
22
-
23
- function serializeNode (node) {
24
- switch (node.nodeType) {
25
- case 1:
26
- return serializeElementNode(node);
27
- case 3:
28
- return serializeTextNode(node);
29
- case 8:
30
- return serializeCommentNode(node);
31
- }
32
- }
33
-
34
- function serializeTextNode (node) {
35
- return node.textContent.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
36
- }
37
-
38
- function serializeCommentNode (node) {
39
- return '<!--' + node.nodeValue + '-->'
40
- }
41
-
42
- function serializeElementNode (node) {
43
- var output = '';
44
-
45
- output += '<' + node.tagName;
46
-
47
- if (node.hasAttributes()) {
48
- [].forEach.call(node.attributes, function(attrNode) {
49
- output += ' ' + attrNode.name + '="' + attrNode.value + '"';
50
- });
51
- }
52
-
53
- output += '>';
54
-
55
- if (node.hasChildNodes()) {
56
- [].forEach.call(node.childNodes, function(childNode) {
57
- output += serializeNode(childNode);
58
- });
59
- }
60
-
61
- output += '</' + node.tagName + '>';
62
-
63
- return output;
64
- }
65
-
66
- Object.defineProperty(SVGElement.prototype, 'innerHTML', {
67
- get: function () {
68
- var output = '';
69
-
70
- [].forEach.call(this.childNodes, function(childNode) {
71
- output += serializeNode(childNode);
72
- });
73
-
74
- return output;
75
- },
76
- set: function (markup) {
77
- while (this.firstChild) {
78
- this.removeChild(this.firstChild);
79
- }
80
-
81
- try {
82
- var dXML = new DOMParser();
83
- dXML.async = false;
84
-
85
- var sXML = '<svg xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'>' + markup + '</svg>';
86
- var svgDocElement = dXML.parseFromString(sXML, 'text/xml').documentElement;
87
-
88
- [].forEach.call(svgDocElement.childNodes, function(childNode) {
89
- this.appendChild(this.ownerDocument.importNode(childNode, true));
90
- }.bind(this));
91
- } catch (e) {
92
- throw new Error('Error parsing markup string');
93
- }
94
- }
95
- });
96
-
97
- Object.defineProperty(SVGElement.prototype, 'innerSVG', {
98
- get: function () {
99
- return this.innerHTML;
100
- },
101
- set: function (markup) {
102
- this.innerHTML = markup;
103
- }
104
- });
105
-
106
- })();
107
- }
108
-
109
- }));
110
-
111
7
  (function (global, factory) {
112
8
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
113
9
  typeof define === 'function' && define.amd ? define('@d3plus/color', ['exports'], factory) :
@@ -455,24 +351,20 @@
455
351
  }
456
352
 
457
353
  /**
458
- @function colorAdd
459
- @desc Adds two colors together.
460
- @param {String} c1 The first color, a valid CSS color string.
461
- @param {String} c2 The second color, also a valid CSS color string.
462
- @param {String} [o1 = 1] Value from 0 to 1 of the first color's opacity.
463
- @param {String} [o2 = 1] Value from 0 to 1 of the first color's opacity.
464
- @returns {String}
354
+ Adds two colors together.
355
+ @param c1 The first color, a valid CSS color string.
356
+ @param c2 The second color, also a valid CSS color string.
357
+ @param o1 Value from 0 to 1 of the first color's opacity.
358
+ @param o2 Value from 0 to 1 of the first color's opacity.
465
359
  */ function add(c1, c2, o1 = 1, o2 = 1) {
466
- c1 = hsl(c1);
467
- c2 = hsl(c2);
468
- let d = Math.abs(c2.h * o2 - c1.h * o1);
360
+ const hsl1 = hsl(c1);
361
+ const hsl2 = hsl(c2);
362
+ let d = Math.abs(hsl2.h * o2 - hsl1.h * o1);
469
363
  if (d > 180) d -= 360;
470
- let h = (Math.min(c1.h, c2.h) + d / 2) % 360;
471
- const l = c1.l + (c2.l * o2 - c1.l * o1) / 2, s = c1.s + (c2.s * o2 - c1.s * o1) / 2;
472
- // a = o1 + (o2 - o1) / 2;
364
+ let h = (Math.min(hsl1.h, hsl2.h) + d / 2) % 360;
365
+ const l = hsl1.l + (hsl2.l * o2 - hsl1.l * o1) / 2, s = hsl1.s + (hsl2.s * o2 - hsl1.s * o1) / 2;
473
366
  if (h < 0) h += 360;
474
367
  return hsl(`hsl(${h},${s * 100}%,${l * 100}%)`).toString();
475
- // return hsl(`hsl(${h},${s * 100}%,${l * 100}%,${a})`).toString();
476
368
  }
477
369
 
478
370
  class InternMap extends Map {
@@ -760,9 +652,27 @@
760
652
 
761
653
  const { theme: openColor } = pkg;
762
654
  /**
763
- @namespace {Object} colorDefaults
764
- @desc A set of default color values used when assigning colors based on data.
765
- */ const defaults = {
655
+ * A set of default color values used when assigning colors based on data.
656
+ *
657
+ * @defaultValue
658
+ * ```
659
+ * {
660
+ * dark: "#495057",
661
+ * light: "#f8f9fa",
662
+ * missing: "#ced4da",
663
+ * off: "#c92a2a",
664
+ * on: "#2b8a3e",
665
+ * scale: d3.scaleOrdinal().range([
666
+ * "#364fc7", "#fab005", "#c92a2a",
667
+ * "#2b8a3e", "#fd7e14", "#862e9c",
668
+ * "#15aabf", "#e64980", "#82c91e",
669
+ * "#74c0fc", "#faa2c1", "#c0eb75",
670
+ * "#b197fc", "#c5f6fa", "#ffe8cc",
671
+ * "#d3f9d8", "#f3d9fa", "#ffe3e3"
672
+ * ])
673
+ * }
674
+ * ```
675
+ */ const defaults = {
766
676
  dark: openColor.colors.gray[700],
767
677
  light: openColor.colors.gray[50],
768
678
  missing: openColor.colors.gray[400],
@@ -789,89 +699,74 @@
789
699
  openColor.colors.red[100]
790
700
  ])
791
701
  };
792
- /**
793
- Returns a color based on a key, whether it is present in a user supplied object or in the default object.
794
- @returns {String}
795
- @private
796
- */ function getColor(k, u = {}) {
797
- return k in u ? u[k] : k in defaults ? defaults[k] : defaults.missing;
798
- }
799
702
 
800
703
  /**
801
- @function colorAssign
802
- @desc Assigns a color to a value using a predefined set of defaults.
803
- @param {String} c A valid CSS color string.
804
- @param {Object} [u = defaults] An object containing overrides of the default colors.
805
- @returns {String}
704
+ Assigns a color to a value using a predefined set of defaults.
705
+ @param c A valid CSS color string.
706
+ @param u An object containing overrides of the default colors.
806
707
  */ function assign(c, u = {}) {
807
708
  // If the value is null or undefined, set to grey.
808
709
  if ([
809
710
  null,
810
- void 0
811
- ].indexOf(c) >= 0) return getColor("missing", u);
812
- else if (c === true) return getColor("on", u);
813
- else if (c === false) return getColor("off", u);
814
- const p = color(c);
815
- // If the value is not a valid color string, use the color scale.
816
- if (!p) return getColor("scale", u)(c);
817
- return c.toString();
711
+ undefined
712
+ ].indexOf(c) >= 0) return u["missing"] || defaults["missing"];
713
+ else if (c === true) return u["on"] || defaults["on"];
714
+ else if (c === false) return u["off"] || defaults["off"];
715
+ else {
716
+ const p = color(c);
717
+ // If the value is not a valid color string, use the color scale.
718
+ if (!p) return (u["scale"] || defaults["scale"])(c);
719
+ return c;
720
+ }
818
721
  }
819
722
 
820
723
  /**
821
- @function colorContrast
822
- @desc A set of default color values used when assigning colors based on data.
823
- @param {String} c A valid CSS color string.
824
- @param {Object} [u = defaults] An object containing overrides of the default colors.
825
- @returns {String}
724
+ A set of default color values used when assigning colors based on data.
725
+ @param c A valid CSS color string.
726
+ @param u An object containing overrides of the default colors.
826
727
  */ function contrast(c, u = {}) {
827
- c = rgb(c);
828
- const yiq = (c.r * 299 + c.g * 587 + c.b * 114) / 1000;
829
- return yiq >= 128 ? getColor("dark", u) : getColor("light", u);
728
+ const rgbColor = rgb(c);
729
+ const yiq = (rgbColor.r * 299 + rgbColor.g * 587 + rgbColor.b * 114) / 1000;
730
+ return yiq >= 128 ? u["dark"] || defaults["dark"] : u["light"] || defaults["light"];
830
731
  }
831
732
 
832
733
  /**
833
- @function colorLegible
834
- @desc Darkens a color so that it will appear legible on a white background.
835
- @param {String} c A valid CSS color string.
836
- @returns {String}
734
+ Darkens a color so that it will appear legible on a white background.
735
+ @param c A valid CSS color string.
837
736
  */ function legible(c) {
838
- c = hsl(c);
839
- if (c.l > 0.45) {
840
- if (c.s > 0.8) c.s = 0.8;
841
- c.l = 0.45;
737
+ const hslColor = hsl(c);
738
+ if (hslColor.l > 0.45) {
739
+ if (hslColor.s > 0.8) hslColor.s = 0.8;
740
+ hslColor.l = 0.45;
842
741
  }
843
- return c.toString();
742
+ return hslColor.toString();
844
743
  }
845
744
 
846
745
  /**
847
- @function colorLighter
848
- @desc Similar to d3.color.brighter, except that this also reduces saturation so that colors don't appear neon.
849
- @param {String} c A valid CSS color string.
850
- @param {String} [i = 0.5] A value from 0 to 1 dictating the strength of the function.
851
- @returns {String}
746
+ Similar to d3.color.brighter, except that this also reduces saturation so that colors don't appear neon.
747
+ @param c A valid CSS color string.
748
+ @param i Strength of the lightening effect, from 0 to 1.
852
749
  */ function lighter(c, i = 0.5) {
853
- c = hsl(c);
854
- i *= 1 - c.l;
855
- c.l += i;
856
- c.s -= i;
857
- return c.toString();
750
+ const hslColor = hsl(c);
751
+ i *= 1 - hslColor.l;
752
+ hslColor.l += i;
753
+ hslColor.s -= i;
754
+ return hslColor.toString();
858
755
  }
859
756
 
860
757
  /**
861
- @function colorSubtract
862
- @desc Subtracts one color from another.
863
- @param {String} c1 The base color, a valid CSS color string.
864
- @param {String} c2 The color to remove from the base color, also a valid CSS color string.
865
- @param {String} [o1 = 1] Value from 0 to 1 of the first color's opacity.
866
- @param {String} [o2 = 1] Value from 0 to 1 of the first color's opacity.
867
- @returns {String}
758
+ Subtracts one color from another.
759
+ @param c1 The base color, a valid CSS color string.
760
+ @param c2 The color to remove from the base color, also a valid CSS color string.
761
+ @param o1 Value from 0 to 1 of the first color's opacity.
762
+ @param o2 Value from 0 to 1 of the first color's opacity.
868
763
  */ function subtract(c1, c2, o1 = 1, o2 = 1) {
869
- c1 = hsl(c1);
870
- c2 = hsl(c2);
871
- let d = c2.h * o2 - c1.h * o1;
764
+ const hsl1 = hsl(c1);
765
+ const hsl2 = hsl(c2);
766
+ let d = hsl2.h * o2 - hsl1.h * o1;
872
767
  if (Math.abs(d) > 180) d -= 360;
873
- let h = (c1.h - d) % 360;
874
- const l = c1.l - (c2.l * o2 - c1.l * o1) / 2, s = c1.s - (c2.s * o2 - c1.s * o1) / 2;
768
+ let h = (hsl1.h - d) % 360;
769
+ const l = hsl1.l - (hsl2.l * o2 - hsl1.l * o1) / 2, s = hsl1.s - (hsl2.s * o2 - hsl1.s * o1) / 2;
875
770
  // a = o1 - (o2 - o1) / 2;
876
771
  if (h < 0) h += 360;
877
772
  return hsl(`hsl(${h},${s * 100}%,${l * 100}%)`).toString();
@@ -1 +1 @@
1
- {"version":3,"file":"d3plus-color.full.js","sources":["../../../node_modules/d3-color/src/define.js","../../../node_modules/d3-color/src/color.js","../src/add.js","../../../node_modules/internmap/src/index.js","../../../node_modules/d3-scale/src/init.js","../../../node_modules/d3-scale/src/ordinal.js","../../../node_modules/open-color/open-color.js","../src/defaults.js","../src/assign.js","../src/contrast.js","../src/legible.js","../src/lighter.js","../src/subtract.js"],"sourcesContent":["export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(`^rgb\\\\(${reI},${reI},${reI}\\\\)$`),\n reRgbPercent = new RegExp(`^rgb\\\\(${reP},${reP},${reP}\\\\)$`),\n reRgbaInteger = new RegExp(`^rgba\\\\(${reI},${reI},${reI},${reN}\\\\)$`),\n reRgbaPercent = new RegExp(`^rgba\\\\(${reP},${reP},${reP},${reN}\\\\)$`),\n reHslPercent = new RegExp(`^hsl\\\\(${reN},${reP},${reP}\\\\)$`),\n reHslaPercent = new RegExp(`^hsla\\\\(${reN},${reP},${reP},${reN}\\\\)$`);\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHex8: color_formatHex8,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHex8() {\n return this.rgb().formatHex8();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb() {\n return this;\n },\n clamp() {\n return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));\n },\n displayable() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatHex8: rgb_formatHex8,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;\n}\n\nfunction rgb_formatHex8() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;\n}\n\nfunction rgb_formatRgb() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"rgb(\" : \"rgba(\"}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? \")\" : `, ${a})`}`;\n}\n\nfunction clampa(opacity) {\n return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));\n}\n\nfunction clampi(value) {\n return Math.max(0, Math.min(255, Math.round(value) || 0));\n}\n\nfunction hex(value) {\n value = clampi(value);\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n clamp() {\n return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));\n },\n displayable() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"hsl(\" : \"hsla(\"}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? \")\" : `, ${a})`}`;\n }\n}));\n\nfunction clamph(value) {\n value = (value || 0) % 360;\n return value < 0 ? value + 360 : value;\n}\n\nfunction clampt(value) {\n return Math.max(0, Math.min(1, value || 0));\n}\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {hsl} from \"d3-color\";\n\n/**\n @function colorAdd\n @desc Adds two colors together.\n @param {String} c1 The first color, a valid CSS color string.\n @param {String} c2 The second color, also a valid CSS color string.\n @param {String} [o1 = 1] Value from 0 to 1 of the first color's opacity.\n @param {String} [o2 = 1] Value from 0 to 1 of the first color's opacity.\n @returns {String}\n*/\nexport default function(c1, c2, o1 = 1, o2 = 1) {\n c1 = hsl(c1);\n c2 = hsl(c2);\n let d = Math.abs(c2.h * o2 - c1.h * o1);\n if (d > 180) d -= 360;\n let h = (Math.min(c1.h, c2.h) + d / 2) % 360;\n const l = c1.l + (c2.l * o2 - c1.l * o1) / 2,\n s = c1.s + (c2.s * o2 - c1.s * o1) / 2;\n // a = o1 + (o2 - o1) / 2;\n if (h < 0) h += 360;\n return hsl(`hsl(${h},${s * 100}%,${l * 100}%)`).toString();\n // return hsl(`hsl(${h},${s * 100}%,${l * 100}%,${a})`).toString();\n}\n","export class InternMap extends Map {\n constructor(entries, key = keyof) {\n super();\n Object.defineProperties(this, {_intern: {value: new Map()}, _key: {value: key}});\n if (entries != null) for (const [key, value] of entries) this.set(key, value);\n }\n get(key) {\n return super.get(intern_get(this, key));\n }\n has(key) {\n return super.has(intern_get(this, key));\n }\n set(key, value) {\n return super.set(intern_set(this, key), value);\n }\n delete(key) {\n return super.delete(intern_delete(this, key));\n }\n}\n\nexport class InternSet extends Set {\n constructor(values, key = keyof) {\n super();\n Object.defineProperties(this, {_intern: {value: new Map()}, _key: {value: key}});\n if (values != null) for (const value of values) this.add(value);\n }\n has(value) {\n return super.has(intern_get(this, value));\n }\n add(value) {\n return super.add(intern_set(this, value));\n }\n delete(value) {\n return super.delete(intern_delete(this, value));\n }\n}\n\nfunction intern_get({_intern, _key}, value) {\n const key = _key(value);\n return _intern.has(key) ? _intern.get(key) : value;\n}\n\nfunction intern_set({_intern, _key}, value) {\n const key = _key(value);\n if (_intern.has(key)) return _intern.get(key);\n _intern.set(key, value);\n return value;\n}\n\nfunction intern_delete({_intern, _key}, value) {\n const key = _key(value);\n if (_intern.has(key)) {\n value = _intern.get(key);\n _intern.delete(key);\n }\n return value;\n}\n\nfunction keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n","export function initRange(domain, range) {\n switch (arguments.length) {\n case 0: break;\n case 1: this.range(domain); break;\n default: this.range(range).domain(domain); break;\n }\n return this;\n}\n\nexport function initInterpolator(domain, interpolator) {\n switch (arguments.length) {\n case 0: break;\n case 1: {\n if (typeof domain === \"function\") this.interpolator(domain);\n else this.range(domain);\n break;\n }\n default: {\n this.domain(domain);\n if (typeof interpolator === \"function\") this.interpolator(interpolator);\n else this.range(interpolator);\n break;\n }\n }\n return this;\n}\n","import {InternMap} from \"d3-array\";\nimport {initRange} from \"./init.js\";\n\nexport const implicit = Symbol(\"implicit\");\n\nexport default function ordinal() {\n var index = new InternMap(),\n domain = [],\n range = [],\n unknown = implicit;\n\n function scale(d) {\n let i = index.get(d);\n if (i === undefined) {\n if (unknown !== implicit) return unknown;\n index.set(d, i = domain.push(d) - 1);\n }\n return range[i % range.length];\n }\n\n scale.domain = function(_) {\n if (!arguments.length) return domain.slice();\n domain = [], index = new InternMap();\n for (const value of _) {\n if (index.has(value)) continue;\n index.set(value, domain.push(value) - 1);\n }\n return scale;\n };\n\n scale.range = function(_) {\n return arguments.length ? (range = Array.from(_), scale) : range.slice();\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : unknown;\n };\n\n scale.copy = function() {\n return ordinal(domain, range).unknown(unknown);\n };\n\n initRange.apply(scale, arguments);\n\n return scale;\n}\n","/*\n *\n * 𝗖 𝗢 𝗟 𝗢 𝗥\n * v 1.9.1\n *\n * ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */\n\nmodule.exports = {\n theme: {\n colors: {\n white: \"#ffffff\",\n black: \"#000000\",\n gray: {\n 50: \"#f8f9fa\",\n 100: \"#f1f3f5\",\n 200: \"#e9ecef\",\n 300: \"#dee2e6\",\n 400: \"#ced4da\",\n 500: \"#adb5bd\",\n 600: \"#868e96\",\n 700: \"#495057\",\n 800: \"#343a40\",\n 900: \"#212529\",\n },\n red: {\n 50: \"#fff5f5\",\n 100: \"#ffe3e3\",\n 200: \"#ffc9c9\",\n 300: \"#ffa8a8\",\n 400: \"#ff8787\",\n 500: \"#ff6b6b\",\n 600: \"#fa5252\",\n 700: \"#f03e3e\",\n 800: \"#e03131\",\n 900: \"#c92a2a\",\n },\n pink: {\n 50: \"#fff0f6\",\n 100: \"#ffdeeb\",\n 200: \"#fcc2d7\",\n 300: \"#faa2c1\",\n 400: \"#f783ac\",\n 500: \"#f06595\",\n 600: \"#e64980\",\n 700: \"#d6336c\",\n 800: \"#c2255c\",\n 900: \"#a61e4d\",\n },\n grape: {\n 50: \"#f8f0fc\",\n 100: \"#f3d9fa\",\n 200: \"#eebefa\",\n 300: \"#e599f7\",\n 400: \"#da77f2\",\n 500: \"#cc5de8\",\n 600: \"#be4bdb\",\n 700: \"#ae3ec9\",\n 800: \"#9c36b5\",\n 900: \"#862e9c\",\n },\n violet: {\n 50: \"#f3f0ff\",\n 100: \"#e5dbff\",\n 200: \"#d0bfff\",\n 300: \"#b197fc\",\n 400: \"#9775fa\",\n 500: \"#845ef7\",\n 600: \"#7950f2\",\n 700: \"#7048e8\",\n 800: \"#6741d9\",\n 900: \"#5f3dc4\",\n },\n indigo: {\n 50: \"#edf2ff\",\n 100: \"#dbe4ff\",\n 200: \"#bac8ff\",\n 300: \"#91a7ff\",\n 400: \"#748ffc\",\n 500: \"#5c7cfa\",\n 600: \"#4c6ef5\",\n 700: \"#4263eb\",\n 800: \"#3b5bdb\",\n 900: \"#364fc7\",\n },\n blue: {\n 50: \"#e7f5ff\",\n 100: \"#d0ebff\",\n 200: \"#a5d8ff\",\n 300: \"#74c0fc\",\n 400: \"#4dabf7\",\n 500: \"#339af0\",\n 600: \"#228be6\",\n 700: \"#1c7ed6\",\n 800: \"#1971c2\",\n 900: \"#1864ab\",\n },\n cyan: {\n 50: \"#e3fafc\",\n 100: \"#c5f6fa\",\n 200: \"#99e9f2\",\n 300: \"#66d9e8\",\n 400: \"#3bc9db\",\n 500: \"#22b8cf\",\n 600: \"#15aabf\",\n 700: \"#1098ad\",\n 800: \"#0c8599\",\n 900: \"#0b7285\",\n },\n teal: {\n 50: \"#e6fcf5\",\n 100: \"#c3fae8\",\n 200: \"#96f2d7\",\n 300: \"#63e6be\",\n 400: \"#38d9a9\",\n 500: \"#20c997\",\n 600: \"#12b886\",\n 700: \"#0ca678\",\n 800: \"#099268\",\n 900: \"#087f5b\",\n },\n green: {\n 50: \"#ebfbee\",\n 100: \"#d3f9d8\",\n 200: \"#b2f2bb\",\n 300: \"#8ce99a\",\n 400: \"#69db7c\",\n 500: \"#51cf66\",\n 600: \"#40c057\",\n 700: \"#37b24d\",\n 800: \"#2f9e44\",\n 900: \"#2b8a3e\",\n },\n lime: {\n 50: \"#f4fce3\",\n 100: \"#e9fac8\",\n 200: \"#d8f5a2\",\n 300: \"#c0eb75\",\n 400: \"#a9e34b\",\n 500: \"#94d82d\",\n 600: \"#82c91e\",\n 700: \"#74b816\",\n 800: \"#66a80f\",\n 900: \"#5c940d\",\n },\n yellow: {\n 50: \"#fff9db\",\n 100: \"#fff3bf\",\n 200: \"#ffec99\",\n 300: \"#ffe066\",\n 400: \"#ffd43b\",\n 500: \"#fcc419\",\n 600: \"#fab005\",\n 700: \"#f59f00\",\n 800: \"#f08c00\",\n 900: \"#e67700\",\n },\n orange: {\n 50: \"#fff4e6\",\n 100: \"#ffe8cc\",\n 200: \"#ffd8a8\",\n 300: \"#ffc078\",\n 400: \"#ffa94d\",\n 500: \"#ff922b\",\n 600: \"#fd7e14\",\n 700: \"#f76707\",\n 800: \"#e8590c\",\n 900: \"#d9480f\",\n },\n },\n },\n plugins: [],\n};\n","import {scaleOrdinal} from \"d3-scale\";\nimport pkg from \"open-color/open-color.js\";\nconst {theme: openColor} = pkg;\n\n/**\n @namespace {Object} colorDefaults\n @desc A set of default color values used when assigning colors based on data.\n*/\nconst defaults = {\n dark: openColor.colors.gray[700],\n light: openColor.colors.gray[50],\n missing: openColor.colors.gray[400],\n off: openColor.colors.red[900],\n on: openColor.colors.green[900],\n scale: scaleOrdinal().range([\n openColor.colors.indigo[900],\n openColor.colors.yellow[600],\n openColor.colors.red[900],\n openColor.colors.green[900],\n openColor.colors.orange[600],\n openColor.colors.grape[900],\n openColor.colors.cyan[600],\n openColor.colors.pink[600],\n openColor.colors.lime[600],\n openColor.colors.blue[300],\n openColor.colors.pink[300],\n openColor.colors.lime[300],\n openColor.colors.violet[300],\n openColor.colors.cyan[100],\n openColor.colors.orange[100],\n openColor.colors.green[100],\n openColor.colors.grape[100],\n openColor.colors.red[100],\n ])\n};\n\n/**\n Returns a color based on a key, whether it is present in a user supplied object or in the default object.\n @returns {String}\n @private\n*/\nexport function getColor(k, u = {}) {\n return k in u ? u[k] : k in defaults ? defaults[k] : defaults.missing;\n}\n\nexport default defaults;\n","import {color} from \"d3-color\";\nimport {getColor} from \"./defaults.js\";\n\n/**\n @function colorAssign\n @desc Assigns a color to a value using a predefined set of defaults.\n @param {String} c A valid CSS color string.\n @param {Object} [u = defaults] An object containing overrides of the default colors.\n @returns {String}\n*/\nexport default function(c, u = {}) {\n\n // If the value is null or undefined, set to grey.\n if ([null, void 0].indexOf(c) >= 0) return getColor(\"missing\", u);\n // Else if the value is true, set to green.\n else if (c === true) return getColor(\"on\", u);\n // Else if the value is false, set to red.\n else if (c === false) return getColor(\"off\", u);\n\n const p = color(c);\n // If the value is not a valid color string, use the color scale.\n if (!p) return getColor(\"scale\", u)(c);\n\n return c.toString();\n\n}\n","import {getColor} from \"./defaults.js\";\nimport {rgb} from \"d3-color\";\n\n/**\n @function colorContrast\n @desc A set of default color values used when assigning colors based on data.\n @param {String} c A valid CSS color string.\n @param {Object} [u = defaults] An object containing overrides of the default colors.\n @returns {String}\n*/\nexport default function(c, u = {}) {\n c = rgb(c);\n const yiq = (c.r * 299 + c.g * 587 + c.b * 114) / 1000;\n return yiq >= 128 ? getColor(\"dark\", u) : getColor(\"light\", u);\n}\n","import {hsl} from \"d3-color\";\n\n/**\n @function colorLegible\n @desc Darkens a color so that it will appear legible on a white background.\n @param {String} c A valid CSS color string.\n @returns {String}\n*/\nexport default function(c) {\n c = hsl(c);\n if (c.l > 0.45) {\n if (c.s > 0.8) c.s = 0.8;\n c.l = 0.45;\n }\n return c.toString();\n}\n","import {hsl} from \"d3-color\";\n\n/**\n @function colorLighter\n @desc Similar to d3.color.brighter, except that this also reduces saturation so that colors don't appear neon.\n @param {String} c A valid CSS color string.\n @param {String} [i = 0.5] A value from 0 to 1 dictating the strength of the function.\n @returns {String}\n*/\nexport default function(c, i = 0.5) {\n c = hsl(c);\n i *= 1 - c.l;\n c.l += i;\n c.s -= i;\n return c.toString();\n}\n","import {hsl} from \"d3-color\";\n\n/**\n @function colorSubtract\n @desc Subtracts one color from another.\n @param {String} c1 The base color, a valid CSS color string.\n @param {String} c2 The color to remove from the base color, also a valid CSS color string.\n @param {String} [o1 = 1] Value from 0 to 1 of the first color's opacity.\n @param {String} [o2 = 1] Value from 0 to 1 of the first color's opacity.\n @returns {String}\n*/\nexport default function(c1, c2, o1 = 1, o2 = 1) {\n c1 = hsl(c1);\n c2 = hsl(c2);\n let d = c2.h * o2 - c1.h * o1;\n if (Math.abs(d) > 180) d -= 360;\n let h = (c1.h - d) % 360;\n const l = c1.l - (c2.l * o2 - c1.l * o1) / 2,\n s = c1.s - (c2.s * o2 - c1.s * o1) / 2;\n // a = o1 - (o2 - o1) / 2;\n if (h < 0) h += 360;\n return hsl(`hsl(${h},${s * 100}%,${l * 100}%)`).toString();\n // return hsl(`hsl(${h},${s * 100}%,${l * 100}%,${a})`).toString();\n}\n"],"names":["constructor","factory","prototype","extend","parent","definition","Object","create","key","Color","darker","brighter","reI","reN","reP","reHex","reRgbInteger","RegExp","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","define","color","copy","channels","assign","displayable","rgb","hex","color_formatHex","formatHex","formatHex8","color_formatHex8","formatHsl","color_formatHsl","formatRgb","color_formatRgb","toString","hslConvert","format","m","l","trim","toLowerCase","exec","length","parseInt","rgbn","Rgb","rgba","hsla","hasOwnProperty","NaN","n","r","g","b","a","rgbConvert","o","opacity","arguments","k","Math","pow","clamp","clampi","clampa","rgb_formatHex","rgb_formatHex8","rgb_formatRgb","isNaN","max","min","value","round","h","s","Hsl","hsl","m2","m1","hsl2rgb","clamph","clampt","c1","c2","o1","o2","d","abs","InternMap","Map","get","intern_get","has","set","intern_set","delete","intern_delete","entries","keyof","defineProperties","_intern","_key","valueOf","initRange","domain","range","implicit","Symbol","ordinal","index","unknown","scale","i","undefined","push","_","slice","Array","from","apply","module","theme","colors","grape","plugins","openColor","pkg","defaults","dark","light","missing","off","on","scaleOrdinal","getColor","u","c","indexOf","p","yiq"],"mappings":"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","x_google_ignoreList":[0,1,3,4,5,6]}
1
+ {"version":3,"file":"d3plus-color.full.js","sources":["../../../node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/define.js","../../../node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/color.js","../src/add.ts","../../../node_modules/.pnpm/internmap@2.0.3/node_modules/internmap/src/index.js","../../../node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/init.js","../../../node_modules/.pnpm/d3-scale@4.0.2/node_modules/d3-scale/src/ordinal.js","../../../node_modules/.pnpm/open-color@1.9.1/node_modules/open-color/open-color.js","../src/defaults.ts","../src/assign.ts","../src/contrast.ts","../src/legible.ts","../src/lighter.ts","../src/subtract.ts"],"sourcesContent":["export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(`^rgb\\\\(${reI},${reI},${reI}\\\\)$`),\n reRgbPercent = new RegExp(`^rgb\\\\(${reP},${reP},${reP}\\\\)$`),\n reRgbaInteger = new RegExp(`^rgba\\\\(${reI},${reI},${reI},${reN}\\\\)$`),\n reRgbaPercent = new RegExp(`^rgba\\\\(${reP},${reP},${reP},${reN}\\\\)$`),\n reHslPercent = new RegExp(`^hsl\\\\(${reN},${reP},${reP}\\\\)$`),\n reHslaPercent = new RegExp(`^hsla\\\\(${reN},${reP},${reP},${reN}\\\\)$`);\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHex8: color_formatHex8,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHex8() {\n return this.rgb().formatHex8();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb() {\n return this;\n },\n clamp() {\n return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));\n },\n displayable() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatHex8: rgb_formatHex8,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;\n}\n\nfunction rgb_formatHex8() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;\n}\n\nfunction rgb_formatRgb() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"rgb(\" : \"rgba(\"}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? \")\" : `, ${a})`}`;\n}\n\nfunction clampa(opacity) {\n return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));\n}\n\nfunction clampi(value) {\n return Math.max(0, Math.min(255, Math.round(value) || 0));\n}\n\nfunction hex(value) {\n value = clampi(value);\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n clamp() {\n return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));\n },\n displayable() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"hsl(\" : \"hsla(\"}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? \")\" : `, ${a})`}`;\n }\n}));\n\nfunction clamph(value) {\n value = (value || 0) % 360;\n return value < 0 ? value + 360 : value;\n}\n\nfunction clampt(value) {\n return Math.max(0, Math.min(1, value || 0));\n}\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","import {hsl} from \"d3-color\";\n\n/**\n Adds two colors together.\n @param c1 The first color, a valid CSS color string.\n @param c2 The second color, also a valid CSS color string.\n @param o1 Value from 0 to 1 of the first color's opacity.\n @param o2 Value from 0 to 1 of the first color's opacity.\n*/\nexport default function (\n c1: string,\n c2: string,\n o1: number = 1,\n o2: number = 1,\n): string {\n const hsl1 = hsl(c1);\n const hsl2 = hsl(c2);\n let d: number = Math.abs(hsl2.h * o2 - hsl1.h * o1);\n if (d > 180) d -= 360;\n let h: number = (Math.min(hsl1.h, hsl2.h) + d / 2) % 360;\n const l: number = hsl1.l + (hsl2.l * o2 - hsl1.l * o1) / 2,\n s: number = hsl1.s + (hsl2.s * o2 - hsl1.s * o1) / 2;\n if (h < 0) h += 360;\n return hsl(`hsl(${h},${s * 100}%,${l * 100}%)`).toString();\n}\n","export class InternMap extends Map {\n constructor(entries, key = keyof) {\n super();\n Object.defineProperties(this, {_intern: {value: new Map()}, _key: {value: key}});\n if (entries != null) for (const [key, value] of entries) this.set(key, value);\n }\n get(key) {\n return super.get(intern_get(this, key));\n }\n has(key) {\n return super.has(intern_get(this, key));\n }\n set(key, value) {\n return super.set(intern_set(this, key), value);\n }\n delete(key) {\n return super.delete(intern_delete(this, key));\n }\n}\n\nexport class InternSet extends Set {\n constructor(values, key = keyof) {\n super();\n Object.defineProperties(this, {_intern: {value: new Map()}, _key: {value: key}});\n if (values != null) for (const value of values) this.add(value);\n }\n has(value) {\n return super.has(intern_get(this, value));\n }\n add(value) {\n return super.add(intern_set(this, value));\n }\n delete(value) {\n return super.delete(intern_delete(this, value));\n }\n}\n\nfunction intern_get({_intern, _key}, value) {\n const key = _key(value);\n return _intern.has(key) ? _intern.get(key) : value;\n}\n\nfunction intern_set({_intern, _key}, value) {\n const key = _key(value);\n if (_intern.has(key)) return _intern.get(key);\n _intern.set(key, value);\n return value;\n}\n\nfunction intern_delete({_intern, _key}, value) {\n const key = _key(value);\n if (_intern.has(key)) {\n value = _intern.get(key);\n _intern.delete(key);\n }\n return value;\n}\n\nfunction keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n","export function initRange(domain, range) {\n switch (arguments.length) {\n case 0: break;\n case 1: this.range(domain); break;\n default: this.range(range).domain(domain); break;\n }\n return this;\n}\n\nexport function initInterpolator(domain, interpolator) {\n switch (arguments.length) {\n case 0: break;\n case 1: {\n if (typeof domain === \"function\") this.interpolator(domain);\n else this.range(domain);\n break;\n }\n default: {\n this.domain(domain);\n if (typeof interpolator === \"function\") this.interpolator(interpolator);\n else this.range(interpolator);\n break;\n }\n }\n return this;\n}\n","import {InternMap} from \"d3-array\";\nimport {initRange} from \"./init.js\";\n\nexport const implicit = Symbol(\"implicit\");\n\nexport default function ordinal() {\n var index = new InternMap(),\n domain = [],\n range = [],\n unknown = implicit;\n\n function scale(d) {\n let i = index.get(d);\n if (i === undefined) {\n if (unknown !== implicit) return unknown;\n index.set(d, i = domain.push(d) - 1);\n }\n return range[i % range.length];\n }\n\n scale.domain = function(_) {\n if (!arguments.length) return domain.slice();\n domain = [], index = new InternMap();\n for (const value of _) {\n if (index.has(value)) continue;\n index.set(value, domain.push(value) - 1);\n }\n return scale;\n };\n\n scale.range = function(_) {\n return arguments.length ? (range = Array.from(_), scale) : range.slice();\n };\n\n scale.unknown = function(_) {\n return arguments.length ? (unknown = _, scale) : unknown;\n };\n\n scale.copy = function() {\n return ordinal(domain, range).unknown(unknown);\n };\n\n initRange.apply(scale, arguments);\n\n return scale;\n}\n","/*\n *\n * 𝗖 𝗢 𝗟 𝗢 𝗥\n * v 1.9.1\n *\n * ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */\n\nmodule.exports = {\n theme: {\n colors: {\n white: \"#ffffff\",\n black: \"#000000\",\n gray: {\n 50: \"#f8f9fa\",\n 100: \"#f1f3f5\",\n 200: \"#e9ecef\",\n 300: \"#dee2e6\",\n 400: \"#ced4da\",\n 500: \"#adb5bd\",\n 600: \"#868e96\",\n 700: \"#495057\",\n 800: \"#343a40\",\n 900: \"#212529\",\n },\n red: {\n 50: \"#fff5f5\",\n 100: \"#ffe3e3\",\n 200: \"#ffc9c9\",\n 300: \"#ffa8a8\",\n 400: \"#ff8787\",\n 500: \"#ff6b6b\",\n 600: \"#fa5252\",\n 700: \"#f03e3e\",\n 800: \"#e03131\",\n 900: \"#c92a2a\",\n },\n pink: {\n 50: \"#fff0f6\",\n 100: \"#ffdeeb\",\n 200: \"#fcc2d7\",\n 300: \"#faa2c1\",\n 400: \"#f783ac\",\n 500: \"#f06595\",\n 600: \"#e64980\",\n 700: \"#d6336c\",\n 800: \"#c2255c\",\n 900: \"#a61e4d\",\n },\n grape: {\n 50: \"#f8f0fc\",\n 100: \"#f3d9fa\",\n 200: \"#eebefa\",\n 300: \"#e599f7\",\n 400: \"#da77f2\",\n 500: \"#cc5de8\",\n 600: \"#be4bdb\",\n 700: \"#ae3ec9\",\n 800: \"#9c36b5\",\n 900: \"#862e9c\",\n },\n violet: {\n 50: \"#f3f0ff\",\n 100: \"#e5dbff\",\n 200: \"#d0bfff\",\n 300: \"#b197fc\",\n 400: \"#9775fa\",\n 500: \"#845ef7\",\n 600: \"#7950f2\",\n 700: \"#7048e8\",\n 800: \"#6741d9\",\n 900: \"#5f3dc4\",\n },\n indigo: {\n 50: \"#edf2ff\",\n 100: \"#dbe4ff\",\n 200: \"#bac8ff\",\n 300: \"#91a7ff\",\n 400: \"#748ffc\",\n 500: \"#5c7cfa\",\n 600: \"#4c6ef5\",\n 700: \"#4263eb\",\n 800: \"#3b5bdb\",\n 900: \"#364fc7\",\n },\n blue: {\n 50: \"#e7f5ff\",\n 100: \"#d0ebff\",\n 200: \"#a5d8ff\",\n 300: \"#74c0fc\",\n 400: \"#4dabf7\",\n 500: \"#339af0\",\n 600: \"#228be6\",\n 700: \"#1c7ed6\",\n 800: \"#1971c2\",\n 900: \"#1864ab\",\n },\n cyan: {\n 50: \"#e3fafc\",\n 100: \"#c5f6fa\",\n 200: \"#99e9f2\",\n 300: \"#66d9e8\",\n 400: \"#3bc9db\",\n 500: \"#22b8cf\",\n 600: \"#15aabf\",\n 700: \"#1098ad\",\n 800: \"#0c8599\",\n 900: \"#0b7285\",\n },\n teal: {\n 50: \"#e6fcf5\",\n 100: \"#c3fae8\",\n 200: \"#96f2d7\",\n 300: \"#63e6be\",\n 400: \"#38d9a9\",\n 500: \"#20c997\",\n 600: \"#12b886\",\n 700: \"#0ca678\",\n 800: \"#099268\",\n 900: \"#087f5b\",\n },\n green: {\n 50: \"#ebfbee\",\n 100: \"#d3f9d8\",\n 200: \"#b2f2bb\",\n 300: \"#8ce99a\",\n 400: \"#69db7c\",\n 500: \"#51cf66\",\n 600: \"#40c057\",\n 700: \"#37b24d\",\n 800: \"#2f9e44\",\n 900: \"#2b8a3e\",\n },\n lime: {\n 50: \"#f4fce3\",\n 100: \"#e9fac8\",\n 200: \"#d8f5a2\",\n 300: \"#c0eb75\",\n 400: \"#a9e34b\",\n 500: \"#94d82d\",\n 600: \"#82c91e\",\n 700: \"#74b816\",\n 800: \"#66a80f\",\n 900: \"#5c940d\",\n },\n yellow: {\n 50: \"#fff9db\",\n 100: \"#fff3bf\",\n 200: \"#ffec99\",\n 300: \"#ffe066\",\n 400: \"#ffd43b\",\n 500: \"#fcc419\",\n 600: \"#fab005\",\n 700: \"#f59f00\",\n 800: \"#f08c00\",\n 900: \"#e67700\",\n },\n orange: {\n 50: \"#fff4e6\",\n 100: \"#ffe8cc\",\n 200: \"#ffd8a8\",\n 300: \"#ffc078\",\n 400: \"#ffa94d\",\n 500: \"#ff922b\",\n 600: \"#fd7e14\",\n 700: \"#f76707\",\n 800: \"#e8590c\",\n 900: \"#d9480f\",\n },\n },\n },\n plugins: [],\n};\n","import {ScaleOrdinal, scaleOrdinal} from \"d3-scale\";\n// @ts-ignore\nimport pkg from \"open-color/open-color.js\";\nconst {theme: openColor} = pkg;\n\nexport interface ColorDefaults {\n dark: string;\n light: string;\n missing: string;\n off: string;\n on: string;\n scale: ScaleOrdinal<string, string>;\n}\n\n/**\n * A set of default color values used when assigning colors based on data.\n *\n * @defaultValue\n * ```\n * {\n * dark: \"#495057\",\n * light: \"#f8f9fa\",\n * missing: \"#ced4da\",\n * off: \"#c92a2a\",\n * on: \"#2b8a3e\",\n * scale: d3.scaleOrdinal().range([\n * \"#364fc7\", \"#fab005\", \"#c92a2a\",\n * \"#2b8a3e\", \"#fd7e14\", \"#862e9c\",\n * \"#15aabf\", \"#e64980\", \"#82c91e\",\n * \"#74c0fc\", \"#faa2c1\", \"#c0eb75\",\n * \"#b197fc\", \"#c5f6fa\", \"#ffe8cc\",\n * \"#d3f9d8\", \"#f3d9fa\", \"#ffe3e3\"\n * ])\n * }\n * ```\n */\nconst defaults: ColorDefaults = {\n dark: openColor.colors.gray[700],\n light: openColor.colors.gray[50],\n missing: openColor.colors.gray[400],\n off: openColor.colors.red[900],\n on: openColor.colors.green[900],\n scale: scaleOrdinal<string>().range([\n openColor.colors.indigo[900],\n openColor.colors.yellow[600],\n openColor.colors.red[900],\n openColor.colors.green[900],\n openColor.colors.orange[600],\n openColor.colors.grape[900],\n openColor.colors.cyan[600],\n openColor.colors.pink[600],\n openColor.colors.lime[600],\n openColor.colors.blue[300],\n openColor.colors.pink[300],\n openColor.colors.lime[300],\n openColor.colors.violet[300],\n openColor.colors.cyan[100],\n openColor.colors.orange[100],\n openColor.colors.green[100],\n openColor.colors.grape[100],\n openColor.colors.red[100],\n ]),\n};\n\nexport default defaults;\n","import {color} from \"d3-color\";\nimport defaults, {ColorDefaults} from \"./defaults.js\";\n\n/**\n Assigns a color to a value using a predefined set of defaults.\n @param c A valid CSS color string.\n @param u An object containing overrides of the default colors.\n*/\nexport default function (\n c: string | boolean | null | undefined,\n u: Partial<ColorDefaults> = {},\n): string {\n // If the value is null or undefined, set to grey.\n if ([null, undefined].indexOf(c as null) >= 0)\n return u[\"missing\"] || defaults[\"missing\"];\n // Else if the value is true, set to green.\n else if (c === true) return u[\"on\"] || defaults[\"on\"];\n // Else if the value is false, set to red.\n else if (c === false) return u[\"off\"] || defaults[\"off\"];\n else {\n const p = color(c as string);\n // If the value is not a valid color string, use the color scale.\n if (!p) return (u[\"scale\"] || defaults[\"scale\"])(c as string);\n return c as string;\n }\n}\n","import defaults, {ColorDefaults} from \"./defaults.js\";\nimport {rgb} from \"d3-color\";\n\n/**\n A set of default color values used when assigning colors based on data.\n @param c A valid CSS color string.\n @param u An object containing overrides of the default colors.\n*/\nexport default function (c: string, u: Partial<ColorDefaults> = {}): string {\n const rgbColor = rgb(c);\n const yiq: number =\n (rgbColor.r * 299 + rgbColor.g * 587 + rgbColor.b * 114) / 1000;\n return yiq >= 128\n ? u[\"dark\"] || defaults[\"dark\"]\n : u[\"light\"] || defaults[\"light\"];\n}\n","import {hsl} from \"d3-color\";\n\n/**\n Darkens a color so that it will appear legible on a white background.\n @param c A valid CSS color string.\n*/\nexport default function (c: string): string {\n const hslColor = hsl(c);\n if (hslColor.l > 0.45) {\n if (hslColor.s > 0.8) hslColor.s = 0.8;\n hslColor.l = 0.45;\n }\n return hslColor.toString();\n}\n","import {hsl} from \"d3-color\";\n\n/**\n Similar to d3.color.brighter, except that this also reduces saturation so that colors don't appear neon.\n @param c A valid CSS color string.\n @param i Strength of the lightening effect, from 0 to 1.\n*/\nexport default function (c: string, i: number = 0.5): string {\n const hslColor = hsl(c);\n i *= 1 - hslColor.l;\n hslColor.l += i;\n hslColor.s -= i;\n return hslColor.toString();\n}\n","import {hsl} from \"d3-color\";\n\n/**\n Subtracts one color from another.\n @param c1 The base color, a valid CSS color string.\n @param c2 The color to remove from the base color, also a valid CSS color string.\n @param o1 Value from 0 to 1 of the first color's opacity.\n @param o2 Value from 0 to 1 of the first color's opacity.\n*/\nexport default function (\n c1: string,\n c2: string,\n o1: number = 1,\n o2: number = 1,\n): string {\n const hsl1 = hsl(c1);\n const hsl2 = hsl(c2);\n let d: number = hsl2.h * o2 - hsl1.h * o1;\n if (Math.abs(d) > 180) d -= 360;\n let h: number = (hsl1.h - d) % 360;\n const l: number = hsl1.l - (hsl2.l * o2 - hsl1.l * o1) / 2,\n s: number = hsl1.s - (hsl2.s * o2 - hsl1.s * o1) / 2;\n // a = o1 - (o2 - o1) / 2;\n if (h < 0) h += 360;\n return hsl(`hsl(${h},${s * 100}%,${l * 100}%)`).toString();\n // return hsl(`hsl(${h},${s * 100}%,${l * 100}%,${a})`).toString();\n}\n"],"names":["constructor","factory","prototype","extend","parent","definition","Object","create","key","Color","darker","brighter","reI","reN","reP","reHex","reRgbInteger","RegExp","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","define","color","copy","channels","assign","displayable","rgb","hex","color_formatHex","formatHex","formatHex8","color_formatHex8","formatHsl","color_formatHsl","formatRgb","color_formatRgb","toString","hslConvert","format","m","l","trim","toLowerCase","exec","length","parseInt","rgbn","Rgb","rgba","hsla","hasOwnProperty","NaN","n","r","g","b","a","rgbConvert","o","opacity","arguments","k","Math","pow","clamp","clampi","clampa","rgb_formatHex","rgb_formatHex8","rgb_formatRgb","isNaN","max","min","value","round","h","s","Hsl","hsl","m2","m1","hsl2rgb","clamph","clampt","c1","c2","o1","o2","hsl1","hsl2","d","abs","InternMap","Map","get","intern_get","has","set","intern_set","delete","intern_delete","entries","keyof","defineProperties","_intern","_key","valueOf","initRange","domain","range","implicit","Symbol","ordinal","index","unknown","scale","i","undefined","push","_","slice","Array","from","apply","module","theme","colors","grape","plugins","openColor","pkg","defaults","dark","light","missing","off","on","scaleOrdinal","c","u","indexOf","p","rgbColor","yiq","hslColor"],"mappings":"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","x_google_ignoreList":[0,1,3,4,5,6]}