@genome-spy/app 1.1.1 → 1.3.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.
Files changed (96) hide show
  1. package/dist/{SharedReadCache-Ey5QIiPM.js → SharedReadCache-9sT2aIxW.js} +6 -12
  2. package/dist/__vite-browser-external-Dgu_Ldik.js +7 -0
  3. package/dist/{agentApi-sPuuT0KS.js → agentApi-BclFF9zB.js} +9981 -8914
  4. package/dist/agentApi.es.js +6783 -5135
  5. package/dist/agentShared.es.js +433 -460
  6. package/dist/arrayUtils-Bm7QnzhN.js +1306 -0
  7. package/dist/{blosc-JROzDOnd.js → blosc-C-W97QwH.js} +3 -3
  8. package/dist/{canvas2d-iDK4BC5j.js → canvas2d-8MSf70d4.js} +141 -134
  9. package/dist/{canvas2d-MXaFeZnP.js → canvas2d-BwGNI_Rx.js} +147 -141
  10. package/dist/clipOptions-SrrxeAEU.js +4316 -0
  11. package/dist/clipOptions-clBEbkjv.js +4326 -0
  12. package/dist/{layoutResult-D50MSHXR.js → color-jETn8xK_.js} +29 -10
  13. package/dist/color-uTRRsy8i.js +116 -0
  14. package/dist/{componentStyles-DGtQXvwc.js → componentStyles-C7FbjS-a.js} +1 -1
  15. package/dist/{viewIdentityRegistry-BIYd4TE0.js → containerView-BItRtKqu.js} +28 -31
  16. package/dist/{viewIdentityRegistry-BDKkEjXl.js → containerView-CWa6ZIJW.js} +28 -31
  17. package/dist/{debug-DbigmdrK.js → debug-23s-jja_.js} +10 -9
  18. package/dist/{debug-BlqDxTw3.js → debug-CWRxvAss.js} +9 -10
  19. package/dist/dialog.es.js +1 -1
  20. package/dist/dist-CmY6iewb.js +1501 -0
  21. package/dist/dist-D6xbz5Ks.js +1501 -0
  22. package/dist/{esm-CjkeZi__.js → esm-BFwBAnbO.js} +25 -25
  23. package/dist/esm-BUkWqSr2.js +299 -0
  24. package/dist/{esm-C-6g-SkZ.js → esm-C0xXMLsR.js} +37 -41
  25. package/dist/{esm-CJeszW-t.js → esm-C2xhhXs0.js} +7 -7
  26. package/dist/esm-C6erfjPM.js +252 -0
  27. package/dist/{esm-DFHFX1sH.js → esm-CVjC7qA4.js} +34 -38
  28. package/dist/esm-CqY5ezGz.js +1249 -0
  29. package/dist/esm-DfMIJ_N2.js +1522 -0
  30. package/dist/esm-Dls41IbZ.js +787 -0
  31. package/dist/{esm-Bv7Frz7C.js → esm-DzQDfrsZ.js} +7 -10
  32. package/dist/esm-aGLCvYRP.js +238 -0
  33. package/dist/{esm-VFJeyk9i.js → esm-nzwgJFGz.js} +40 -36
  34. package/dist/figWigMetadataSourceAdapter-8Kf_vZRf.js +36 -0
  35. package/dist/figWigMetadataSourceAdapter-DdDMZpYO.js +36 -0
  36. package/dist/flowNode-BSjy0Wz3.js +1306 -0
  37. package/dist/flowOutput-D5qpxWe0.js +183 -0
  38. package/dist/index.es.js +4766 -5522
  39. package/dist/index.js +1089 -685
  40. package/dist/inflate-BdC5KvHn.js +886 -0
  41. package/dist/{lz4-CUYSbVey.js → lz4-BLPgBOlE.js} +1 -1
  42. package/dist/markUtils-RaatLEa-.js +78 -0
  43. package/dist/{metadataChannels-DV62inJh.js → metadataChannels-DLSmx7kU.js} +6 -3
  44. package/dist/metadataUtils-DxEPe0vj.js +879 -0
  45. package/dist/order-BnKzKjt4.js +1151 -0
  46. package/dist/order-BpJnq_nV.js +1150 -0
  47. package/dist/{parquetRead-0hFIa3Cc.js → parquetRead-D-yY8njE.js} +3 -11
  48. package/dist/{rasterExport-B62RmAK1.js → rasterExport-B-WrX1pa.js} +5 -5
  49. package/dist/{rasterExport-DQH3hVg_.js → rasterExport-C_vx4Jwd.js} +4 -4
  50. package/dist/{rasterization-B05bDo5e.js → rasterization-QktH8Sn2.js} +26 -19
  51. package/dist/rectangle-BAdoDPXu.js +194 -0
  52. package/dist/{rectangle-DE98gIxF.js → rectangle-DZTR6NFQ.js} +10 -1
  53. package/dist/renderCanvas2D-CsRO78Pq.js +291 -0
  54. package/dist/{renderCanvas2D-Bdv-B4wj.js → renderCanvas2D-Y7pkRzbC.js} +98 -92
  55. package/dist/{rolldown-runtime-DF993M8W.js → rolldown-runtime-DeIk2rA4.js} +1 -1
  56. package/dist/{indexer-DbFTKGlm.js → scaleNull-CVzag4z8.js} +2 -12
  57. package/dist/{indexer-En7gpvLN.js → scaleNull-Pbz7QGnl.js} +2 -12
  58. package/dist/{scalePosition-ByvlXaML.js → scalePosition-CRXa0rCC.js} +8 -1
  59. package/dist/schema.json +33403 -16929
  60. package/dist/style.css +1 -1
  61. package/dist/{svg-N3tj05-e.js → svg-BBMtLgtM.js} +445 -362
  62. package/dist/{svg-DHsq1RpV.js → svg-JjWL6U-T.js} +464 -381
  63. package/dist/{svgRasterizer-CYVDlt5z.js → svgRasterizer-6OcftuoI.js} +3 -3
  64. package/dist/{svgRasterizer-CvCBlxLj.js → svgRasterizer-DkNRaCPs.js} +4 -4
  65. package/dist/tableMetadataSourceAdapter-CUNwLsdi.js +291 -0
  66. package/dist/tableMetadataSourceAdapter-DQrEXCo6.js +1283 -0
  67. package/dist/url-DeOdSRrv.js +183 -0
  68. package/dist/viewError-B0TMfOpB.js +33 -0
  69. package/dist/viewError-D9aO90cI.js +33 -0
  70. package/dist/{viewSelectors-DDLW-byr.js → viewSelectors-DkFvo33d.js} +914 -752
  71. package/dist/{viewSelectors-j-F9XwsE.js → viewSelectors-lM93fHAq.js} +942 -780
  72. package/dist/viewUtils-0SJOewM6.js +6195 -0
  73. package/dist/webgl-CXIO3OQz.js +5782 -0
  74. package/dist/webgl-Pdvfhio5.js +5783 -0
  75. package/package.json +7 -5
  76. package/src/agentApi/index.d.ts +3 -2
  77. package/src/agentShared/index.d.ts +2 -0
  78. package/src/appTypes.d.ts +1 -6
  79. package/src/embedTypes.d.ts +36 -1
  80. package/src/index.d.ts +6 -0
  81. package/src/spec/sampleView.d.ts +68 -13
  82. package/src/spec/view.d.ts +44 -5
  83. package/src/state/paramProvenanceTypes.d.ts +25 -2
  84. package/src/state.d.ts +14 -52
  85. package/dist/clipOptions-B5PibDq3.js +0 -2923
  86. package/dist/clipOptions-Cba4I0AO.js +0 -2903
  87. package/dist/esm-Dndm-NaA.js +0 -1193
  88. package/dist/order-B4uR9Q04.js +0 -1062
  89. package/dist/order-BSPy5DI8.js +0 -1062
  90. package/dist/renderCanvas2D-ChdoHGrU.js +0 -285
  91. package/dist/vega-scale-Byaw1K8O.js +0 -2446
  92. package/dist/vega-scale-Ctz_wa3z.js +0 -2443
  93. package/dist/viewError-BiR9VCgL.js +0 -29
  94. package/dist/viewUtils-JX6CMEYH.js +0 -6664
  95. package/dist/webgl-DdmOwEH0.js +0 -5544
  96. package/dist/webgl-Dw8xqZpX.js +0 -5544
@@ -1,2923 +0,0 @@
1
- //#region ../../node_modules/vega-util/build/vega-util.js
2
- function e(e, t, n) {
3
- return e.fields = t || [], e.fname = n, e;
4
- }
5
- function t(e) {
6
- return e == null ? null : e.fname;
7
- }
8
- function n(e) {
9
- return e == null ? null : e.fields;
10
- }
11
- function r(e) {
12
- return e.length === 1 ? i(e[0]) : a(e);
13
- }
14
- var i = (e) => function(t) {
15
- return t[e];
16
- }, a = (e) => {
17
- let t = e.length;
18
- return function(n) {
19
- for (let r = 0; r < t; ++r) n = n[e[r]];
20
- return n;
21
- };
22
- };
23
- function o(e) {
24
- throw Error(e);
25
- }
26
- function s(e) {
27
- let t = [], n = e.length, r = null, i = 0, a = "", s, c, l;
28
- e += "";
29
- function u() {
30
- t.push(a + e.substring(s, c)), a = "", s = c + 1;
31
- }
32
- for (s = c = 0; c < n; ++c) if (l = e[c], l === "\\") a += e.substring(s, c++), s = c;
33
- else if (l === r) u(), r = null, i = -1;
34
- else if (r) continue;
35
- else s === i && l === "\"" || s === i && l === "'" ? (s = c + 1, r = l) : l === "." && !i ? c > s ? u() : s = c + 1 : l === "[" ? (c > s && u(), i = s = c + 1) : l === "]" && (i || o("Access path missing open bracket: " + e), i > 0 && u(), i = 0, s = c + 1);
36
- return i && o("Access path missing closing bracket: " + e), r && o("Access path missing closing quote: " + e), c > s && (c++, u()), t;
37
- }
38
- function c(t, n, i) {
39
- let a = s(t);
40
- return t = a.length === 1 ? a[0] : t, e((i && i.get || r)(a), [t], n || t);
41
- }
42
- c("id");
43
- var l = e((e) => e, [], "identity");
44
- e(() => 0, [], "zero"), e(() => 1, [], "one"), e(() => !0, [], "true"), e(() => !1, [], "false"), [...Object.getOwnPropertyNames(Object.prototype).filter((e) => typeof Object.prototype[e] == "function")];
45
- var u = Array.isArray;
46
- function d(e) {
47
- return e === Object(e);
48
- }
49
- function f(e) {
50
- return e[e.length - 1];
51
- }
52
- function p(e) {
53
- return e == null || e === "" ? null : +e;
54
- }
55
- var m = (e) => (t) => e * Math.exp(t), ee = (e) => (t) => Math.log(e * t), te = (e) => (t) => Math.sign(t) * Math.log1p(Math.abs(t / e)), h = (e) => (t) => Math.sign(t) * Math.expm1(Math.abs(t)) * e, g = (e) => (t) => t < 0 ? -((-t) ** +e) : t ** +e;
56
- function _(e, t, n, r) {
57
- let i = n(e[0]), a = n(f(e)), o = (a - i) * t;
58
- return [r(i - o), r(a - o)];
59
- }
60
- function ne(e, t) {
61
- return _(e, t, p, l);
62
- }
63
- function re(e, t) {
64
- var n = Math.sign(e[0]);
65
- return _(e, t, ee(n), m(n));
66
- }
67
- function ie(e, t, n) {
68
- return _(e, t, g(n), g(1 / n));
69
- }
70
- function ae(e, t, n, r, i) {
71
- let a = r(e[0]), o = r(f(e)), s = t == null ? (a + o) / 2 : r(t);
72
- return [i(s + (a - s) * n), i(s + (o - s) * n)];
73
- }
74
- function v(e, t, n) {
75
- return ae(e, t, n, p, l);
76
- }
77
- function oe(e, t, n) {
78
- let r = Math.sign(e[0]);
79
- return ae(e, t, n, ee(r), m(r));
80
- }
81
- function y(e, t, n, r) {
82
- return ae(e, t, n, g(r), g(1 / r));
83
- }
84
- function se(e, t, n, r) {
85
- return ae(e, t, n, te(r), h(r));
86
- }
87
- function ce(e) {
88
- return e == null ? [] : u(e) ? e : [e];
89
- }
90
- function le(e, t, n) {
91
- let r = e[0], i = e[1], a;
92
- return i < r && (a = i, i = r, r = a), a = i - r, a >= n - t ? [t, n] : [r = Math.min(Math.max(r, t), n - a), r + a];
93
- }
94
- function ue(e) {
95
- return typeof e == "function";
96
- }
97
- var de = "descending";
98
- function fe(t, r, i) {
99
- i ||= {}, r = ce(r) || [];
100
- let a = [], o = [], s = {}, l = i.comparator || me;
101
- return ce(t).forEach((e, t) => {
102
- e != null && (a.push(r[t] === de ? -1 : 1), o.push(e = ue(e) ? e : c(e, null, i)), (n(e) || []).forEach((e) => s[e] = 1));
103
- }), o.length === 0 ? null : e(l(o, a), Object.keys(s));
104
- }
105
- var pe = (e, t) => (e < t || e == null) && t != null ? -1 : (e > t || t == null) && e != null ? 1 : (t = t instanceof Date ? +t : t, (e = e instanceof Date ? +e : e) !== e && t === t ? -1 : +(t !== t && e === e)), me = (e, t) => e.length === 1 ? he(e[0], t[0]) : ge(e, t, e.length), he = (e, t) => function(n, r) {
106
- return pe(e(n), e(r)) * t;
107
- }, ge = (e, t, n) => (t.push(0), function(r, i) {
108
- let a, o = 0, s = -1;
109
- for (; o === 0 && ++s < n;) a = e[s], o = pe(a(r), a(i));
110
- return o * t[s];
111
- });
112
- function _e(e, t, n, r) {
113
- let i = t[0], a = t[t.length - 1], o;
114
- return i > a && (o = i, i = a, a = o), n = n === void 0 || n, r = r === void 0 || r, (n ? i <= e : i < e) && (r ? e <= a : e < a);
115
- }
116
- function ve(e) {
117
- return typeof e == "boolean";
118
- }
119
- function ye(e) {
120
- return typeof e == "number";
121
- }
122
- function be(e) {
123
- return Object.prototype.toString.call(e) === "[object RegExp]";
124
- }
125
- function b(e) {
126
- return typeof e == "string";
127
- }
128
- function xe(e, t) {
129
- let n = e[0], r = f(e), i = +t;
130
- return i ? i === 1 ? r : n + i * (r - n) : n;
131
- }
132
- function Se(e) {
133
- return e && f(e) - e[0] || 0;
134
- }
135
- function Ce(e) {
136
- return u(e) ? `[${e.map((e) => e === null ? "null" : Ce(e))}]` : d(e) || b(e) ? JSON.stringify(e).replaceAll("\u2028", "\\u2028").replaceAll("\u2029", "\\u2029") : e;
137
- }
138
- function we(e) {
139
- let t = {}, n = e.length;
140
- for (let r = 0; r < n; ++r) t[e[r]] = !0;
141
- return t;
142
- }
143
- //#endregion
144
- //#region ../../node_modules/internmap/src/index.js
145
- var Te = class extends Map {
146
- constructor(e, t = ke) {
147
- if (super(), Object.defineProperties(this, {
148
- _intern: { value: /* @__PURE__ */ new Map() },
149
- _key: { value: t }
150
- }), e != null) for (let [t, n] of e) this.set(t, n);
151
- }
152
- get(e) {
153
- return super.get(Ee(this, e));
154
- }
155
- has(e) {
156
- return super.has(Ee(this, e));
157
- }
158
- set(e, t) {
159
- return super.set(De(this, e), t);
160
- }
161
- delete(e) {
162
- return super.delete(Oe(this, e));
163
- }
164
- };
165
- function Ee({ _intern: e, _key: t }, n) {
166
- let r = t(n);
167
- return e.has(r) ? e.get(r) : n;
168
- }
169
- function De({ _intern: e, _key: t }, n) {
170
- let r = t(n);
171
- return e.has(r) ? e.get(r) : (e.set(r, n), n);
172
- }
173
- function Oe({ _intern: e, _key: t }, n) {
174
- let r = t(n);
175
- return e.has(r) && (n = e.get(r), e.delete(r)), n;
176
- }
177
- function ke(e) {
178
- return typeof e == "object" && e ? e.valueOf() : e;
179
- }
180
- //#endregion
181
- //#region ../../node_modules/d3-array/src/ticks.js
182
- var Ae = Math.sqrt(50), je = Math.sqrt(10), Me = Math.sqrt(2);
183
- function Ne(e, t, n) {
184
- let r = (t - e) / Math.max(0, n), i = Math.floor(Math.log10(r)), a = r / 10 ** i, o = a >= Ae ? 10 : a >= je ? 5 : a >= Me ? 2 : 1, s, c, l;
185
- return i < 0 ? (l = 10 ** -i / o, s = Math.round(e * l), c = Math.round(t * l), s / l < e && ++s, c / l > t && --c, l = -l) : (l = 10 ** i * o, s = Math.round(e / l), c = Math.round(t / l), s * l < e && ++s, c * l > t && --c), c < s && .5 <= n && n < 2 ? Ne(e, t, n * 2) : [
186
- s,
187
- c,
188
- l
189
- ];
190
- }
191
- function Pe(e, t, n) {
192
- if (t = +t, e = +e, n = +n, !(n > 0)) return [];
193
- if (e === t) return [e];
194
- let r = t < e, [i, a, o] = r ? Ne(t, e, n) : Ne(e, t, n);
195
- if (!(a >= i)) return [];
196
- let s = a - i + 1, c = Array(s);
197
- if (r) {
198
- if (o < 0) for (let e = 0; e < s; ++e) c[e] = (a - e) / -o;
199
- else for (let e = 0; e < s; ++e) c[e] = (a - e) * o;
200
- } else if (o < 0) for (let e = 0; e < s; ++e) c[e] = (i + e) / -o;
201
- else for (let e = 0; e < s; ++e) c[e] = (i + e) * o;
202
- return c;
203
- }
204
- function Fe(e, t, n) {
205
- return t = +t, e = +e, n = +n, Ne(e, t, n)[2];
206
- }
207
- function Ie(e, t, n) {
208
- t = +t, e = +e, n = +n;
209
- let r = t < e, i = r ? Fe(t, e, n) : Fe(e, t, n);
210
- return (r ? -1 : 1) * (i < 0 ? 1 / -i : i);
211
- }
212
- //#endregion
213
- //#region ../../node_modules/d3-array/src/range.js
214
- function Le(e, t, n) {
215
- e = +e, t = +t, n = (i = arguments.length) < 2 ? (t = e, e = 0, 1) : i < 3 ? 1 : +n;
216
- for (var r = -1, i = Math.max(0, Math.ceil((t - e) / n)) | 0, a = Array(i); ++r < i;) a[r] = e + r * n;
217
- return a;
218
- }
219
- //#endregion
220
- //#region ../../node_modules/d3-format/src/formatDecimal.js
221
- function Re(e) {
222
- return Math.abs(e = Math.round(e)) >= 1e21 ? e.toLocaleString("en").replace(/,/g, "") : e.toString(10);
223
- }
224
- function ze(e, t) {
225
- if (!isFinite(e) || e === 0) return null;
226
- var n = (e = t ? e.toExponential(t - 1) : e.toExponential()).indexOf("e"), r = e.slice(0, n);
227
- return [r.length > 1 ? r[0] + r.slice(2) : r, +e.slice(n + 1)];
228
- }
229
- //#endregion
230
- //#region ../../node_modules/d3-format/src/exponent.js
231
- function Be(e) {
232
- return e = ze(Math.abs(e)), e ? e[1] : NaN;
233
- }
234
- //#endregion
235
- //#region ../../node_modules/d3-format/src/formatGroup.js
236
- function Ve(e, t) {
237
- return function(n, r) {
238
- for (var i = n.length, a = [], o = 0, s = e[0], c = 0; i > 0 && s > 0 && (c + s + 1 > r && (s = Math.max(1, r - c)), a.push(n.substring(i -= s, i + s)), !((c += s + 1) > r));) s = e[o = (o + 1) % e.length];
239
- return a.reverse().join(t);
240
- };
241
- }
242
- //#endregion
243
- //#region ../../node_modules/d3-format/src/formatNumerals.js
244
- function He(e) {
245
- return function(t) {
246
- return t.replace(/[0-9]/g, function(t) {
247
- return e[+t];
248
- });
249
- };
250
- }
251
- //#endregion
252
- //#region ../../node_modules/d3-format/src/formatSpecifier.js
253
- var Ue = /^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;
254
- function We(e) {
255
- if (!(t = Ue.exec(e))) throw Error("invalid format: " + e);
256
- var t;
257
- return new Ge({
258
- fill: t[1],
259
- align: t[2],
260
- sign: t[3],
261
- symbol: t[4],
262
- zero: t[5],
263
- width: t[6],
264
- comma: t[7],
265
- precision: t[8] && t[8].slice(1),
266
- trim: t[9],
267
- type: t[10]
268
- });
269
- }
270
- We.prototype = Ge.prototype;
271
- function Ge(e) {
272
- this.fill = e.fill === void 0 ? " " : e.fill + "", this.align = e.align === void 0 ? ">" : e.align + "", this.sign = e.sign === void 0 ? "-" : e.sign + "", this.symbol = e.symbol === void 0 ? "" : e.symbol + "", this.zero = !!e.zero, this.width = e.width === void 0 ? void 0 : +e.width, this.comma = !!e.comma, this.precision = e.precision === void 0 ? void 0 : +e.precision, this.trim = !!e.trim, this.type = e.type === void 0 ? "" : e.type + "";
273
- }
274
- Ge.prototype.toString = function() {
275
- return this.fill + this.align + this.sign + this.symbol + (this.zero ? "0" : "") + (this.width === void 0 ? "" : Math.max(1, this.width | 0)) + (this.comma ? "," : "") + (this.precision === void 0 ? "" : "." + Math.max(0, this.precision | 0)) + (this.trim ? "~" : "") + this.type;
276
- };
277
- //#endregion
278
- //#region ../../node_modules/d3-format/src/formatTrim.js
279
- function Ke(e) {
280
- out: for (var t = e.length, n = 1, r = -1, i; n < t; ++n) switch (e[n]) {
281
- case ".":
282
- r = i = n;
283
- break;
284
- case "0":
285
- r === 0 && (r = n), i = n;
286
- break;
287
- default:
288
- if (!+e[n]) break out;
289
- r > 0 && (r = 0);
290
- }
291
- return r > 0 ? e.slice(0, r) + e.slice(i + 1) : e;
292
- }
293
- //#endregion
294
- //#region ../../node_modules/d3-format/src/formatPrefixAuto.js
295
- var qe;
296
- function Je(e, t) {
297
- var n = ze(e, t);
298
- if (!n) return qe = void 0, e.toPrecision(t);
299
- var r = n[0], i = n[1], a = i - (qe = Math.max(-8, Math.min(8, Math.floor(i / 3))) * 3) + 1, o = r.length;
300
- return a === o ? r : a > o ? r + Array(a - o + 1).join("0") : a > 0 ? r.slice(0, a) + "." + r.slice(a) : "0." + Array(1 - a).join("0") + ze(e, Math.max(0, t + a - 1))[0];
301
- }
302
- //#endregion
303
- //#region ../../node_modules/d3-format/src/formatRounded.js
304
- function Ye(e, t) {
305
- var n = ze(e, t);
306
- if (!n) return e + "";
307
- var r = n[0], i = n[1];
308
- return i < 0 ? "0." + Array(-i).join("0") + r : r.length > i + 1 ? r.slice(0, i + 1) + "." + r.slice(i + 1) : r + Array(i - r.length + 2).join("0");
309
- }
310
- //#endregion
311
- //#region ../../node_modules/d3-format/src/formatTypes.js
312
- var Xe = {
313
- "%": (e, t) => (e * 100).toFixed(t),
314
- b: (e) => Math.round(e).toString(2),
315
- c: (e) => e + "",
316
- d: Re,
317
- e: (e, t) => e.toExponential(t),
318
- f: (e, t) => e.toFixed(t),
319
- g: (e, t) => e.toPrecision(t),
320
- o: (e) => Math.round(e).toString(8),
321
- p: (e, t) => Ye(e * 100, t),
322
- r: Ye,
323
- s: Je,
324
- X: (e) => Math.round(e).toString(16).toUpperCase(),
325
- x: (e) => Math.round(e).toString(16)
326
- };
327
- //#endregion
328
- //#region ../../node_modules/d3-format/src/identity.js
329
- function Ze(e) {
330
- return e;
331
- }
332
- //#endregion
333
- //#region ../../node_modules/d3-format/src/locale.js
334
- var Qe = Array.prototype.map, $e = [
335
- "y",
336
- "z",
337
- "a",
338
- "f",
339
- "p",
340
- "n",
341
- "µ",
342
- "m",
343
- "",
344
- "k",
345
- "M",
346
- "G",
347
- "T",
348
- "P",
349
- "E",
350
- "Z",
351
- "Y"
352
- ];
353
- function et(e) {
354
- var t = e.grouping === void 0 || e.thousands === void 0 ? Ze : Ve(Qe.call(e.grouping, Number), e.thousands + ""), n = e.currency === void 0 ? "" : e.currency[0] + "", r = e.currency === void 0 ? "" : e.currency[1] + "", i = e.decimal === void 0 ? "." : e.decimal + "", a = e.numerals === void 0 ? Ze : He(Qe.call(e.numerals, String)), o = e.percent === void 0 ? "%" : e.percent + "", s = e.minus === void 0 ? "−" : e.minus + "", c = e.nan === void 0 ? "NaN" : e.nan + "";
355
- function l(e, l) {
356
- e = We(e);
357
- var u = e.fill, d = e.align, f = e.sign, p = e.symbol, m = e.zero, ee = e.width, te = e.comma, h = e.precision, g = e.trim, _ = e.type;
358
- _ === "n" ? (te = !0, _ = "g") : Xe[_] || (h === void 0 && (h = 12), g = !0, _ = "g"), (m || u === "0" && d === "=") && (m = !0, u = "0", d = "=");
359
- var ne = (l && l.prefix !== void 0 ? l.prefix : "") + (p === "$" ? n : p === "#" && /[boxX]/.test(_) ? "0" + _.toLowerCase() : ""), re = (p === "$" ? r : /[%p]/.test(_) ? o : "") + (l && l.suffix !== void 0 ? l.suffix : ""), ie = Xe[_], ae = /[defgprs%]/.test(_);
360
- h = h === void 0 ? 6 : /[gprs]/.test(_) ? Math.max(1, Math.min(21, h)) : Math.max(0, Math.min(20, h));
361
- function v(e) {
362
- var n = ne, r = re, o, l, p;
363
- if (_ === "c") r = ie(e) + r, e = "";
364
- else {
365
- e = +e;
366
- var v = e < 0 || 1 / e < 0;
367
- if (e = isNaN(e) ? c : ie(Math.abs(e), h), g && (e = Ke(e)), v && +e == 0 && f !== "+" && (v = !1), n = (v ? f === "(" ? f : s : f === "-" || f === "(" ? "" : f) + n, r = (_ === "s" && !isNaN(e) && qe !== void 0 ? $e[8 + qe / 3] : "") + r + (v && f === "(" ? ")" : ""), ae) {
368
- for (o = -1, l = e.length; ++o < l;) if (p = e.charCodeAt(o), 48 > p || p > 57) {
369
- r = (p === 46 ? i + e.slice(o + 1) : e.slice(o)) + r, e = e.slice(0, o);
370
- break;
371
- }
372
- }
373
- }
374
- te && !m && (e = t(e, Infinity));
375
- var oe = n.length + e.length + r.length, y = oe < ee ? Array(ee - oe + 1).join(u) : "";
376
- switch (te && m && (e = t(y + e, y.length ? ee - r.length : Infinity), y = ""), d) {
377
- case "<":
378
- e = n + e + r + y;
379
- break;
380
- case "=":
381
- e = n + y + e + r;
382
- break;
383
- case "^":
384
- e = y.slice(0, oe = y.length >> 1) + n + e + r + y.slice(oe);
385
- break;
386
- default: e = y + n + e + r;
387
- }
388
- return a(e);
389
- }
390
- return v.toString = function() {
391
- return e + "";
392
- }, v;
393
- }
394
- function u(e, t) {
395
- var n = Math.max(-8, Math.min(8, Math.floor(Be(t) / 3))) * 3, r = 10 ** -n, i = l((e = We(e), e.type = "f", e), { suffix: $e[8 + n / 3] });
396
- return function(e) {
397
- return i(r * e);
398
- };
399
- }
400
- return {
401
- format: l,
402
- formatPrefix: u
403
- };
404
- }
405
- //#endregion
406
- //#region ../../node_modules/d3-format/src/defaultLocale.js
407
- var tt, nt, rt;
408
- it({
409
- thousands: ",",
410
- grouping: [3],
411
- currency: ["$", ""]
412
- });
413
- function it(e) {
414
- return tt = et(e), nt = tt.format, rt = tt.formatPrefix, tt;
415
- }
416
- //#endregion
417
- //#region ../core/src/utils/arrayUtils.js
418
- function at(e, t) {
419
- return e.length == t.length && e.every((n, r) => e[r] === t[r]);
420
- }
421
- function ot(e) {
422
- return Array.isArray(e) ? e : e === void 0 ? [] : [e];
423
- }
424
- function st(e) {
425
- return e[e.length - 1];
426
- }
427
- function ct(e, t, n) {
428
- if (t < 0 || t >= e.length) throw Error("Source index out of range.");
429
- if (n < 0 || n > e.length - 1) throw Error("Destination index out of range.");
430
- let [r] = e.splice(t, 1);
431
- e.splice(n, 0, r);
432
- }
433
- //#endregion
434
- //#region ../core/src/data/sideInputBinding.js
435
- var lt = class {
436
- #e;
437
- #t;
438
- #n = !1;
439
- #r = !0;
440
- #i = [];
441
- constructor(e) {
442
- this.#e = e, this.#t = Array.from(new Set(e.dataDependencies), (e) => ({
443
- collector: e,
444
- consumed: -1
445
- }));
446
- for (let t of this.#t) this.#i.push(t.collector.observe(() => {
447
- e.parent && e.completed && !this.isReady() && e.areDataDependenciesAvailable() && e.requestRepropagate();
448
- }));
449
- }
450
- dispose() {
451
- for (let e of this.#i) e();
452
- this.#i.length = 0;
453
- }
454
- reset() {
455
- this.#n = !1, this.#r = !0;
456
- for (let e of this.#t) e.consumed = -1;
457
- }
458
- consume() {
459
- if (!this.#e.areDataDependenciesAvailable()) this.#r = !1;
460
- else if (!this.#n) {
461
- for (let e of this.#t) e.consumed = e.collector.dataRevision;
462
- this.#n = !0;
463
- }
464
- }
465
- complete() {
466
- this.#n || this.consume();
467
- }
468
- isReady() {
469
- return this.#r && this.#n && this.#e.areDataDependenciesAvailable() && this.#t.every(({ collector: e, consumed: t }) => e.dataRevision === t);
470
- }
471
- }, ut = class {
472
- stats = {
473
- count: 0,
474
- first: null
475
- };
476
- #e = !1;
477
- #t = !1;
478
- #n = [];
479
- #r;
480
- #i;
481
- paramRuntimeProvider = null;
482
- get behavior() {
483
- return 0;
484
- }
485
- get domainSensitiveScaleChannels() {
486
- return [];
487
- }
488
- get dataDependencies() {
489
- return [];
490
- }
491
- isDataReady() {
492
- return this.completed && !this.disposed && (!this.#i || this.#i.isReady());
493
- }
494
- areDataDependenciesAvailable() {
495
- return this.dataDependencies.every((e) => e.completed && !e.disposed);
496
- }
497
- consumeDataDependencies() {
498
- this.#i?.consume();
499
- }
500
- get label() {
501
- return `(${this.constructor.name})`;
502
- }
503
- constructor(e) {
504
- this.paramRuntimeProvider = e, this.children = [], this.parent = void 0, this.completed = !1;
505
- }
506
- get disposed() {
507
- return this.#t;
508
- }
509
- getDebugState() {
510
- let e = this;
511
- return {
512
- label: this.label,
513
- children: this.children.slice(),
514
- parent: this.parent,
515
- stats: {
516
- count: this.stats.count,
517
- first: this.stats.first
518
- },
519
- completed: this.completed,
520
- initialized: this.#e,
521
- disposed: this.#t,
522
- params: "params" in e ? structuredClone(e.params) : void 0,
523
- view: dt(e, this.paramRuntimeProvider),
524
- domainSensitiveScaleChannels: this.domainSensitiveScaleChannels
525
- };
526
- }
527
- reset() {
528
- this.#i?.reset(), this.completed = !1;
529
- for (let e of this.children) e.reset();
530
- this.stats.count = 0, this.stats.first = null;
531
- }
532
- initialize() {}
533
- initializeOnce() {
534
- this.#e ||= (this.dataDependencies.length && (this.#i = new lt(this)), this.initialize(), !0);
535
- }
536
- #a() {
537
- this._propagate = Function("children", "stats", Le(this.children.length).map((e) => `const child${e} = children[${e}];`).join("\n") + `return function propagate(datum) {
538
- if (stats.count === 0) {
539
- stats.first = structuredClone(datum);
540
- }
541
- stats.count++;
542
- ${Le(this.children.length).map((e) => `child${e}.handle(datum);`).join("\n")}
543
- };`)(this.children, this.stats);
544
- }
545
- setParent(e) {
546
- this.parent = e;
547
- }
548
- addChild(e) {
549
- if (e.parent) throw Error("Cannot add the child! It already has a parent.");
550
- return this.children.push(e), e.setParent(this), this.#a(), this;
551
- }
552
- adopt(e) {
553
- e.parent && e.parent.removeChild(e), this.addChild(e);
554
- }
555
- adoptChildrenOf(e) {
556
- for (let t of e.children.slice()) this.adopt(t);
557
- }
558
- insertAsParent(e) {
559
- if (this.isRoot()) throw Error("Cannot insert a new parent for a root node!");
560
- e.parent = this.parent, this.parent.children[this.parent.children.indexOf(this)] = e, this.parent.#a(), this.parent = void 0, e.addChild(this);
561
- }
562
- removeChild(e) {
563
- let t = this.children.indexOf(e);
564
- if (t > -1) this.children.splice(t, 1), e.parent = void 0, this.#a();
565
- else throw Error("Trying to remove an unknown child node!");
566
- }
567
- excise() {
568
- if (this.isRoot()) throw Error("Cannot excise root node!");
569
- if (this.isTerminal()) this.parent.removeChild(this);
570
- else if (this.children.length == 1) {
571
- let e = this.children[0];
572
- e.setParent(this.parent), this.parent.children[this.parent.children.indexOf(this)] = e, this.parent.#a(), this.setParent(void 0), this.children.length = 0;
573
- } else throw Error("Cannot excise a node that has multiple children!");
574
- }
575
- isRoot() {
576
- return !this.parent;
577
- }
578
- isBranching() {
579
- return this.children.length > 1;
580
- }
581
- isTerminal() {
582
- return this.children.length == 0;
583
- }
584
- visit(e) {
585
- e(this);
586
- for (let t of this.children) t.visit(e);
587
- e.afterChildren && e.afterChildren(this);
588
- }
589
- subtreeToString(e = 0) {
590
- let t = this.children.map((t) => t.subtreeToString(e + 1)).join("");
591
- return `${" ".repeat(e * 2)}* ${this.label}${"identifier" in this && this.identifier ? ": " + this.identifier : ""} \n${t}`;
592
- }
593
- handle(e) {
594
- this._propagate(e);
595
- }
596
- complete() {
597
- this.#i?.complete(), this.completed = !0;
598
- for (let e of this.children) e.complete();
599
- }
600
- registerDisposer(e) {
601
- this.#t ? e() : this.#n.push(e);
602
- }
603
- dispose() {
604
- if (!this.#t) {
605
- this.#t = !0, this.#i?.dispose();
606
- for (let e of this.#n) e();
607
- this.#n.length = 0;
608
- }
609
- }
610
- disposeSubtree() {
611
- let e = () => void 0;
612
- e.afterChildren = (e) => {
613
- e.dispose();
614
- }, this.visit(e);
615
- }
616
- beginBatch(e) {
617
- for (let t of this.children) t.beginBatch(e);
618
- }
619
- get paramRuntime() {
620
- if (this.paramRuntimeProvider && this.paramRuntimeProvider.paramRuntime) return this.paramRuntimeProvider.paramRuntime;
621
- if (!this.parent) throw Error("Cannot find paramRuntime!");
622
- return this.parent.paramRuntime;
623
- }
624
- get replaySource() {
625
- if (!this.parent) throw Error("Cannot replay data: no upstream replay source.");
626
- return this.parent.replaySource;
627
- }
628
- get replaysSynchronously() {
629
- return !1;
630
- }
631
- requestRepropagate() {
632
- let e = this.replaySource, t = this.paramRuntime.updateScheduler;
633
- e.#r ||= () => {
634
- e.disposed || (e.replaysSynchronously && e.visit((e) => {
635
- e.#r && t.cancelUpdate(e.#r);
636
- }), e.repropagate());
637
- };
638
- let n = 0;
639
- for (let t = e.parent; t; t = t.parent) n++;
640
- t.requestUpdate(e.#r, n, void 0, () => e.#o());
641
- }
642
- #o() {
643
- let e = /* @__PURE__ */ new Set();
644
- return this.visit((t) => {
645
- for (let n of t.dataDependencies) for (let t = n.parent; t; t = t.parent) t !== this && t.#r && e.add(t.#r);
646
- }), e;
647
- }
648
- repropagate() {
649
- if (this.parent) this.parent.repropagate();
650
- else throw Error("Cannot repropagate data, no FlowNode with stored data found!");
651
- }
652
- _propagate(e) {}
653
- };
654
- function dt(e, t) {
655
- if ("view" in e) return e.view;
656
- if (t && "getPathString" in t) return t;
657
- }
658
- function ft(e) {
659
- let t = /* @__PURE__ */ new Set();
660
- for (; e;) {
661
- for (let n of e.domainSensitiveScaleChannels) t.add(n);
662
- e = e.parent;
663
- }
664
- return t;
665
- }
666
- function pt(e) {
667
- return e.type == "file";
668
- }
669
- function mt(e) {
670
- return e.type == "facet";
671
- }
672
- //#endregion
673
- //#region ../core/src/data/transforms/transform.js
674
- var ht = class extends ut {
675
- #e;
676
- #t;
677
- #n = 0;
678
- #r = 0;
679
- #i;
680
- #a = [];
681
- constructor(e, t) {
682
- super(t), this.#e = e.type;
683
- let n = e.debounce;
684
- if (n !== void 0) {
685
- if (!Number.isFinite(n) || n < 0) throw Error(`The debounce for the ${e.type} transform must be a non-negative finite number.`);
686
- this.#t = n, this.registerDisposer(() => clearTimeout(this.#i));
687
- }
688
- }
689
- complete() {
690
- let e = this.#n;
691
- super.complete(), this.#r = e, e == this.#n && (clearTimeout(this.#i), this.#i = void 0);
692
- }
693
- reset() {
694
- this.#s(), super.reset();
695
- }
696
- beginBatch(e) {
697
- this.#s(), super.beginBatch(e);
698
- }
699
- requestReactiveRepropagate() {
700
- if (this.#n++, this.#t === void 0) {
701
- this.requestRepropagate();
702
- return;
703
- }
704
- clearTimeout(this.#i), this.#i = void 0, this.completed && (this.#i = setTimeout(this.#o, this.#t));
705
- }
706
- #o = () => {
707
- this.#i = void 0, !this.disposed && this.completed && this.#r != this.#n && (this.requestRepropagate(), this.paramRuntime.flushNow());
708
- };
709
- get label() {
710
- return this.#e;
711
- }
712
- watchExprRef(e, t) {
713
- if (W(e)) {
714
- let n = e;
715
- return this.paramRuntime.watchExpression(n.expr, t, {
716
- scopeOwned: !1,
717
- registerDisposer: (e) => this.registerDisposer(e)
718
- });
719
- }
720
- return (() => e);
721
- }
722
- watchSnapshottedExpression(e) {
723
- let t, n;
724
- return t = this.paramRuntime.watchExpression(e, () => {
725
- n.refresh(), this.requestReactiveRepropagate();
726
- }, {
727
- scopeOwned: !1,
728
- registerDisposer: (e) => this.registerDisposer(e)
729
- }), n = t.createSnapshotEvaluator(), this.#a.push(n.refresh), n;
730
- }
731
- #s() {
732
- for (let e of this.#a) e();
733
- }
734
- }, x = "__uniqueId", gt = 1e4, _t = [null], vt = class extends ht {
735
- get behavior() {
736
- return 2;
737
- }
738
- constructor(e) {
739
- super(e), this.params = e, this._blocks = [], this._usedBlocks = 0, this._id = -1;
740
- }
741
- initialize() {}
742
- reset() {
743
- super.reset(), this._usedBlocks = 0, this._id = -1;
744
- }
745
- handle(e) {
746
- e[x] = this.#e(), this._propagate(e);
747
- }
748
- #e() {
749
- return ++this._id % 1e4 == 0 && (this._id = this.#t() * gt), this._id;
750
- }
751
- #t() {
752
- return this._usedBlocks < this._blocks.length ? this._blocks[this._usedBlocks++] : this.#n();
753
- }
754
- #n() {
755
- let e = _t.length;
756
- return _t[e] = this, this._blocks.push(e), this._usedBlocks++, e;
757
- }
758
- };
759
- //#endregion
760
- //#region ../core/src/utils/field.js
761
- function yt(t, n = t) {
762
- return /^[A-Za-z0-9_]+$/.test(t) ? e(Function("validator", `
763
- let validated = !validator;
764
- return function accessField(datum) {
765
- if (!validated) {
766
- validator(datum);
767
- validated = true;
768
- }
769
- return datum[${JSON.stringify(t)}];
770
- }`)(function(e) {
771
- t in e || bt(e, t);
772
- }), [t], n) : c(t);
773
- }
774
- function bt(e, t) {
775
- throw Error(`Invalid field "${t}". Available fields or properties: ${Object.keys(e).join(", ")}`);
776
- }
777
- //#endregion
778
- //#region ../core/src/selection/selectionPredicateTree.js
779
- function xt(e, t) {
780
- if (!("test" in e) || !("ref" in e.test)) return e;
781
- let n = e.test.ref;
782
- if (!Object.hasOwn(t, n)) throw Error(`Unknown predicate "${n}" in unit view.`);
783
- return {
784
- ...e,
785
- test: t[n]
786
- };
787
- }
788
- function St(e) {
789
- let t = "test" in e ? e.test : {
790
- param: e.param,
791
- ...e.empty === void 0 ? {} : { empty: e.empty },
792
- ...e.project === void 0 ? {} : { project: e.project }
793
- }, n = (e) => {
794
- if (!e || typeof e != "object" || Array.isArray(e)) throw Error("Selection predicate must be an object.");
795
- let t = e, r = [
796
- "param",
797
- "and",
798
- "or",
799
- "not"
800
- ].filter((e) => e in t);
801
- if (r.length !== 1) throw Error("Selection predicate must have exactly one operator.");
802
- let i = r[0];
803
- if (i === "param") {
804
- if (typeof t.param == "string") {
805
- if (Object.keys(t).some((e) => ![
806
- "param",
807
- "empty",
808
- "project"
809
- ].includes(e)) || typeof (t.empty ?? !0) != "boolean") throw Error("Invalid selection parameter predicate.");
810
- if (t.project !== void 0) {
811
- let e = t.project;
812
- if (!e || typeof e != "object" || Array.isArray(e) || Object.keys(e).length === 0 || Object.entries(e).some(([e, t]) => !["x", "y"].includes(e) || t !== e && t !== e + "2")) throw Error("Invalid interval selection projection.");
813
- }
814
- return {
815
- param: pa(t.param),
816
- empty: t.empty ?? !0,
817
- ...t.project ? { project: { ...t.project } } : {}
818
- };
819
- }
820
- if (!t.param || typeof t.param != "object" || Object.keys(t.param).length !== 1 || !Array.isArray(t.param.or) || Object.keys(t).some((e) => !["param", "empty"].includes(e)) || typeof (t.empty ?? !0) != "boolean") throw Error("Invalid flat selection union.");
821
- if (t.param.or.length === 0) throw Error("Selection test \"or\" must be a nonempty array.");
822
- let e = Array.from(new Set(t.param.or.map(pa))), n = e.map((e) => ({ selectionActive: e })), r = e.map((e, t) => ({ all: [{
823
- param: e,
824
- empty: !0
825
- }, n[t]] }));
826
- return { any: t.empty === !1 ? r : [...r, { not: { any: n } }] };
827
- }
828
- if (Object.keys(t).length !== 1) throw Error("Selection predicate operators cannot be mixed.");
829
- if (i === "not") return { not: n(t.not) };
830
- let a = t[i];
831
- if (!Array.isArray(a) || a.length === 0) throw Error(`Selection test "${i}" must be a nonempty array.`);
832
- let o = a.map(n);
833
- return i === "and" ? { all: o } : { any: o };
834
- };
835
- return n(t);
836
- }
837
- function Ct(e) {
838
- let t = /* @__PURE__ */ new Set(), n = (e) => {
839
- if ("param" in e) t.add(e.param);
840
- else if ("selectionActive" in e) t.add(typeof e.selectionActive == "string" ? e.selectionActive : e.selectionActive.param);
841
- else if ("not" in e) n(e.not);
842
- else for (let t of "all" in e ? e.all : e.any) n(t);
843
- };
844
- return n(e), Array.from(t);
845
- }
846
- function wt(e) {
847
- let t = /* @__PURE__ */ new Map(), n = (e) => {
848
- if ("param" in e) t.set(e.param, { selectionActive: {
849
- param: e.param,
850
- type: e.type,
851
- components: e.projections?.map(({ component: e }) => e) ?? []
852
- } });
853
- else if ("selectionActive" in e) t.set(e.selectionActive.param, e);
854
- else if ("not" in e) n(e.not);
855
- else for (let t of "all" in e ? e.all : e.any) n(t);
856
- };
857
- return n(e), { all: [e, { any: Array.from(t.values()) }] };
858
- }
859
- function Tt(e) {
860
- if ("param" in e) return e.empty;
861
- if ("selectionActive" in e) return !1;
862
- if ("not" in e) return !Tt(e.not);
863
- let t = "all" in e ? e.all : e.any;
864
- return "all" in e ? t.every(Tt) : t.some(Tt);
865
- }
866
- function Et(e, t, n, r, i) {
867
- let a = (e) => {
868
- let t = n.findSelectionCapability?.(e);
869
- if (t) return t;
870
- let r = n.findValue(e);
871
- if (!r || ![
872
- "single",
873
- "multi",
874
- "interval"
875
- ].includes(r.type)) throw Error(`Selection parameter "${e}" was not found.`);
876
- return {
877
- type: r.type,
878
- components: r.type === "interval" ? Object.keys(r.intervals).map((e) => ({ component: e })) : []
879
- };
880
- }, o = t, s = (e) => {
881
- let t = o[e];
882
- if (t && "field" in t) return t.field;
883
- if (t && "condition" in t) return (Array.isArray(t.condition) ? t.condition : [t.condition]).find((e) => "field" in e)?.field;
884
- }, c = (e) => {
885
- if ("all" in e) return { all: e.all.map(c) };
886
- if ("any" in e) return { any: e.any.map(c) };
887
- if ("not" in e) return { not: c(e.not) };
888
- let t = "param" in e ? e.param : e.selectionActive, n = a(t);
889
- if ("selectionActive" in e) return { selectionActive: {
890
- param: t,
891
- type: n.type,
892
- components: n.components.map(({ component: e }) => e)
893
- } };
894
- if (e.project && n.type !== "interval") throw Error(`Selection "${t}" is not an interval selection; project is invalid.`);
895
- if (n.type !== "interval") return {
896
- param: t,
897
- type: n.type,
898
- empty: e.empty
899
- };
900
- let l = n.components.map(({ component: e }) => e);
901
- if (e.project && (Object.keys(e.project).length !== l.length || l.some((t) => !(t in e.project)))) throw Error(`Selection "${t}" project must cover its declared components: ${l.join(", ")}.`);
902
- let u = n.components.map(({ component: n, type: a }) => {
903
- let c = e.project?.[n] ?? n;
904
- if (![
905
- "x",
906
- "x2",
907
- "y",
908
- "y2"
909
- ].includes(c)) throw Error(`Selection "${t}" has unsupported component "${n}".`);
910
- let l = o[c];
911
- if (e.project && (!l || !("field" in l))) throw Error(`Selection "${t}" project target "${c}" must be an unconditional field encoding.`);
912
- let u = s(c);
913
- if (!u) throw Error(`Selection "${t}" has no field for "${c}".`);
914
- if (e.project) {
915
- let e = i?.(c) ?? ("type" in l ? l.type : void 0) ?? ("type" in o[n] ? o[n].type : void 0);
916
- if (![
917
- "quantitative",
918
- "index",
919
- "locus"
920
- ].includes(a) || e !== a) throw Error(`Selection "${t}" project target "${c}" must have matching quantitative, index, or locus type (${a} vs ${e}).`);
921
- }
922
- let d = n + "2", f = e.project ? void 0 : s(d);
923
- return {
924
- component: n,
925
- input: c,
926
- field: u,
927
- ...f && f !== u ? {
928
- secondaryInput: d,
929
- secondaryField: f,
930
- hitTest: r
931
- } : {}
932
- };
933
- });
934
- return {
935
- param: t,
936
- type: "interval",
937
- empty: e.empty,
938
- projections: u
939
- };
940
- };
941
- return c(e);
942
- }
943
- function Dt(e, t) {
944
- if ("all" in e || "any" in e) {
945
- let n = ("all" in e ? e.all : e.any).map((e) => Dt(e, t));
946
- return "all" in e ? (e) => n.every((t) => t(e)) : (e) => n.some((t) => t(e));
947
- }
948
- if ("not" in e) {
949
- let n = Dt(e.not, t);
950
- return (e) => !n(e);
951
- }
952
- if ("selectionActive" in e) {
953
- let { param: n } = e.selectionActive;
954
- return () => Ot(t(n));
955
- }
956
- let { param: n, type: r, empty: i } = e;
957
- if (r === "single") return (e) => {
958
- let r = t(n);
959
- return r.uniqueId == null ? i : r.uniqueId === e[x];
960
- };
961
- if (r === "multi") return (e) => {
962
- let r = t(n);
963
- return r.data.size === 0 ? i : r.data.has(e[x]);
964
- };
965
- let a = e.projections.map((e) => ({
966
- ...e,
967
- read: yt(e.field),
968
- readSecondary: e.secondaryField ? yt(e.secondaryField) : void 0
969
- }));
970
- return (e) => {
971
- let r = t(n);
972
- if (!Ot(r)) return i;
973
- for (let t of a) {
974
- let n = r.intervals[t.component], i = t.read(e), a = t.readSecondary?.(e), [o, s] = n;
975
- if (!(a === void 0 ? o <= i && i < s : t.hitTest === "endpoints" ? o <= i && i < s || o <= a && a < s : t.hitTest === "encloses" ? o <= Math.min(i, a) && Math.max(i, a) <= s : o < Math.max(i, a) && Math.min(i, a) < s)) return !1;
976
- }
977
- return !0;
978
- };
979
- }
980
- function Ot(e) {
981
- if (e.type === "single") return e.uniqueId != null;
982
- if (e.type === "multi") return e.data.size !== 0;
983
- if (e.type === "interval") return Object.values(e.intervals).every((e) => !!e);
984
- throw Error(`Unsupported selection type: ${e.type}`);
985
- }
986
- //#endregion
987
- //#region ../core/src/encoder/accessor.js
988
- function kt(e, t, n) {
989
- if (!e) throw Error("Cannot create an accessor without a channel.");
990
- function r(n) {
991
- let r = n;
992
- return r.fields ??= [], r.constant = r.fields.length === 0, r.channelDef = t, r.channel = e, r.sourceKey = Mt(t), r.scaleChannel = ((Kt(t) && t.resolutionChannel) ?? (_n(e) && e)) || void 0, r.scaleChannel !== void 0 && (r.domainKeyBase = Nt({
993
- scaleChannel: r.scaleChannel,
994
- source: jt(t)
995
- }).domainKeyBase), r.equals = (e) => e ? r === e || r.sourceKey !== void 0 && r.sourceKey === e.sourceKey : !1, r.asNumberAccessor = () => r, r;
996
- }
997
- function i(e) {
998
- if (W(e)) {
999
- let t = r(n.createExpression(e.expr));
1000
- if (t.fields.length > 0) throw Error("Expression in DatumDef/ValueDef cannot access data fields: " + e.expr);
1001
- return t;
1002
- }
1003
- {
1004
- let t = e;
1005
- return r(() => t);
1006
- }
1007
- }
1008
- if (S(t)) try {
1009
- return r(yt(t.field));
1010
- } catch (e) {
1011
- throw Error(`Invalid field definition: ${e.message}`, { cause: e });
1012
- }
1013
- if (Zt(t)) return r(n.createExpression(t.expr));
1014
- if (C(t)) return i(t.datum);
1015
- if (Gt(t)) return i(t.value);
1016
- throw Error(`Invalid channel definition: "${e}": ${JSON.stringify(t)}! The channel definition must contain one of the following properties: "field", "datum", "value" or "expr".`);
1017
- }
1018
- function At(e) {
1019
- return e.scaleChannel !== void 0;
1020
- }
1021
- function jt(e) {
1022
- if (S(e)) return {
1023
- kind: "field",
1024
- value: e.field
1025
- };
1026
- if (Zt(e)) return {
1027
- kind: "expr",
1028
- value: e.expr
1029
- };
1030
- if (C(e)) return {
1031
- kind: "datum",
1032
- value: e.datum
1033
- };
1034
- if (Gt(e)) return {
1035
- kind: "value",
1036
- value: e.value
1037
- };
1038
- throw Error("Cannot derive a domain key from channel definition: " + JSON.stringify(e));
1039
- }
1040
- function Mt(e) {
1041
- let t = jt(e);
1042
- return t.kind === "datum" || t.kind === "value" ? "constant|" + It(t.value) : t.kind + "|" + Ft(t);
1043
- }
1044
- function Nt({ scaleChannel: e, source: t, type: n }) {
1045
- if (!e) throw Error("Cannot build a domain key without a scale channel.");
1046
- let r = e + "|" + t.kind + "|" + Ft(t);
1047
- return {
1048
- domainKeyBase: r,
1049
- domainKey: n ? n + "|" + r : void 0
1050
- };
1051
- }
1052
- function Pt(e, t) {
1053
- let { domainKey: n, domainKeyBase: r } = Nt({
1054
- scaleChannel: e.scaleChannel,
1055
- source: jt(e.channelDef),
1056
- type: t
1057
- });
1058
- if (!n) throw Error("Cannot finalize a domain key without a resolved type.");
1059
- return e.domainKeyBase = r, e.domainKey = n, n;
1060
- }
1061
- function Ft(e) {
1062
- switch (e.kind) {
1063
- case "field":
1064
- case "expr": return e.value;
1065
- case "datum":
1066
- case "value": return It(e.value);
1067
- default: throw Error("Unknown domain key source.");
1068
- }
1069
- }
1070
- function It(e) {
1071
- return W(e) ? "expr:" + e.expr : e === void 0 ? "undefined" : JSON.stringify(e);
1072
- }
1073
- //#endregion
1074
- //#region ../core/src/encoder/encoder.js
1075
- function Lt(e, t, n, r = "intersects", i) {
1076
- let a, o, s = Ct(e), c = () => (a ??= Et(e, t, n, r, i), a);
1077
- return s.every((e) => n.findValue(e)) && c(), Object.defineProperty((e) => !s.some((e) => !n.findValue(e)) && (o ??= Dt(c(), (e) => n.findValue(e)), o(e)), "selection", { get: c });
1078
- }
1079
- function Rt(e, t, n, r, i = "intersects", a) {
1080
- let o = Qt(t) || $t(t) ? Array.isArray(t.condition) ? t.condition : [t.condition] : [], s = [...o, t], c = s.map((t, c) => {
1081
- let l = o[c], u = kt(e, t, r), d = l ? Xi(l) : void 0;
1082
- return {
1083
- accessor: u,
1084
- predicate: d ? Lt(d, n, r, i, a) : va(c === s.length - 1)
1085
- };
1086
- });
1087
- if (c.filter((e) => !e.accessor.constant).length > 1) throw Error("Only one accessor can be non-constant. Channel: " + e);
1088
- return c;
1089
- }
1090
- function zt(e, t) {
1091
- let n = {}, r = (t) => e.getScaleResolution(t)?.getScale(), i = (t, n) => {
1092
- let r = e.getScaleResolution(t);
1093
- e.paramRuntime.operation("encoder scale", [r.getMappingRef()], () => r.getScale(), n);
1094
- };
1095
- for (let [a, o] of Object.entries(t)) {
1096
- if (!o) continue;
1097
- let s = a;
1098
- Bt(s) || (n[s] = Ut(Rt(s, o, t, e.paramRuntime, e.mark.defaultHitTestMode, (t) => e.getScaleResolution(t)?.type), r, i));
1099
- }
1100
- return n;
1101
- }
1102
- function Bt(e) {
1103
- return e === "key" || e === "search" || e === "tooltip" || e === "order";
1104
- }
1105
- function Vt(e) {
1106
- return e.branches.map((e) => e.accessor);
1107
- }
1108
- function Ht(e) {
1109
- return e.branches.find((e) => !e.accessor.constant)?.accessor;
1110
- }
1111
- function Ut(e, t, n) {
1112
- if (e.length === 1) {
1113
- let r = Wt(e[0].accessor, t, n);
1114
- return Object.assign(r, { branches: e });
1115
- }
1116
- let r = e.map((e) => e.predicate), i = e.map((e) => Wt(e.accessor, t, n)), a = Object.assign((e) => {
1117
- for (let t = 0; t < i.length; t++) if (r[t](e)) return i[t](e);
1118
- }, {
1119
- constant: !1,
1120
- branches: e,
1121
- channelDef: e.at(-1).accessor.channelDef
1122
- });
1123
- return Object.defineProperty(a, "scale", {
1124
- enumerable: !0,
1125
- get: () => i.find((e) => e.scale)?.scale
1126
- });
1127
- }
1128
- function Wt(e, t, n) {
1129
- let { channel: r, scaleChannel: i, channelDef: a } = e, o = e.scaleChannel ? t(i) : void 0;
1130
- if (i && !o) throw Error(`Missing scale! "${r}": ${JSON.stringify(a)}`);
1131
- let s = Object.assign(o ? (t) => o(e(t)) : (t) => e(t), {
1132
- scale: o,
1133
- constant: e.constant,
1134
- branches: [{
1135
- accessor: e,
1136
- predicate: va(!0)
1137
- }],
1138
- channelDef: a
1139
- });
1140
- return o && n?.(i, (e) => {
1141
- o = e, s.scale = e;
1142
- }), s;
1143
- }
1144
- function Gt(e) {
1145
- return e && "value" in e;
1146
- }
1147
- function S(e) {
1148
- return e && "field" in e;
1149
- }
1150
- function C(e) {
1151
- return e && "datum" in e;
1152
- }
1153
- function Kt(e) {
1154
- return S(e) || C(e) || Zt(e) || Xt(e);
1155
- }
1156
- function qt(e) {
1157
- if ($t(e)) {
1158
- let t = e.condition;
1159
- return (Array.isArray(t) ? t : [t]).find((e) => Kt(e));
1160
- }
1161
- if (Kt(e)) return e;
1162
- }
1163
- function Jt(e) {
1164
- let t = e && qt(e);
1165
- return t != null && t.type != "quantitative" && t.scale !== null;
1166
- }
1167
- function Yt(e, t) {
1168
- let n = e.mark.encoding[t];
1169
- if (Array.isArray(n)) throw Error("Not a channel def with scale!");
1170
- {
1171
- let e = qt(n);
1172
- if (e) return e;
1173
- }
1174
- throw Error("Not a channel def with scale!");
1175
- }
1176
- function Xt(e) {
1177
- return e && "chrom" in e;
1178
- }
1179
- function Zt(e) {
1180
- return e && "expr" in e;
1181
- }
1182
- function Qt(e) {
1183
- return (S(e) || C(e)) && "condition" in e;
1184
- }
1185
- function $t(e) {
1186
- return Gt(e) && "condition" in e;
1187
- }
1188
- var en = ["x", "y"], tn = ["x2", "y2"], nn = ["xOffset", "yOffset"], rn = [...en, ...tn];
1189
- function an(e) {
1190
- return en.includes(e);
1191
- }
1192
- function on(e) {
1193
- return rn.includes(e);
1194
- }
1195
- function sn(e) {
1196
- return nn.includes(e);
1197
- }
1198
- function cn(e) {
1199
- return mn(e) == "x" ? "xOffset" : "yOffset";
1200
- }
1201
- function ln(e, t, n) {
1202
- return t ?? (n ? 0 : e);
1203
- }
1204
- var un = {
1205
- x: "x2",
1206
- y: "y2"
1207
- }, dn = Object.fromEntries(Object.entries(un).map((e) => [e[1], e[0]]));
1208
- function fn(e) {
1209
- return e in dn;
1210
- }
1211
- function pn(e) {
1212
- let t = un[e];
1213
- if (t) return t;
1214
- throw Error(`${e} has no secondary channel!`);
1215
- }
1216
- function mn(e) {
1217
- return dn[e] ?? e;
1218
- }
1219
- function hn(e) {
1220
- return [
1221
- "color",
1222
- "fill",
1223
- "stroke"
1224
- ].includes(mn(e));
1225
- }
1226
- function gn(e) {
1227
- return ["shape", "direction"].includes(e);
1228
- }
1229
- function _n(e) {
1230
- return [
1231
- "x",
1232
- "y",
1233
- "x2",
1234
- "y2",
1235
- "xOffset",
1236
- "yOffset",
1237
- "color",
1238
- "fill",
1239
- "stroke",
1240
- "opacity",
1241
- "fillOpacity",
1242
- "strokeOpacity",
1243
- "strokeWidth",
1244
- "size",
1245
- "shape",
1246
- "direction",
1247
- "angle",
1248
- "dx",
1249
- "dy",
1250
- "sample"
1251
- ].includes(e);
1252
- }
1253
- function vn(e) {
1254
- switch (e) {
1255
- case "shape": return [
1256
- "circle",
1257
- "square",
1258
- "cross",
1259
- "diamond",
1260
- "triangle-up",
1261
- "triangle-right",
1262
- "triangle-down",
1263
- "triangle-left",
1264
- "tick-up",
1265
- "tick-right",
1266
- "tick-down",
1267
- "tick-left",
1268
- "x",
1269
- "+"
1270
- ];
1271
- case "direction": return [
1272
- "forward",
1273
- "reverse",
1274
- "both"
1275
- ];
1276
- }
1277
- }
1278
- function yn(e) {
1279
- if (!gn(e)) throw Error("Not a discrete channel: " + e);
1280
- let t = new Map(vn(e).map((e, t) => [e, t]));
1281
- return (n) => {
1282
- let r = t.get(n);
1283
- if (r !== void 0) return r;
1284
- throw Error(`Invalid value for "${e}" channel: ${n}`);
1285
- };
1286
- }
1287
- //#endregion
1288
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/accessor.js
1289
- function w(e, t, n) {
1290
- return Object.assign(e, {
1291
- fields: t || [],
1292
- fname: n
1293
- });
1294
- }
1295
- //#endregion
1296
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/getter.js
1297
- function bn(e) {
1298
- return e.length === 1 ? xn(e[0]) : Sn(e);
1299
- }
1300
- var xn = (e) => function(t) {
1301
- return t[e];
1302
- }, Sn = (e) => {
1303
- let t = e.length;
1304
- return function(n) {
1305
- for (let r = 0; r < t; ++r) n = n[e[r]];
1306
- return n;
1307
- };
1308
- };
1309
- //#endregion
1310
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/error.js
1311
- function T(e) {
1312
- throw Error(e);
1313
- }
1314
- //#endregion
1315
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/splitAccessPath.js
1316
- function Cn(e) {
1317
- let t = [], n = e.length, r = null, i = 0, a = "", o, s, c;
1318
- e += "";
1319
- function l() {
1320
- t.push(a + e.substring(o, s)), a = "", o = s + 1;
1321
- }
1322
- for (o = s = 0; s < n; ++s) if (c = e[s], c === "\\") a += e.substring(o, s++), o = s;
1323
- else if (c === r) l(), r = null, i = -1;
1324
- else if (r) continue;
1325
- else o === i && c === "\"" || o === i && c === "'" ? (o = s + 1, r = c) : c === "." && !i ? s > o ? l() : o = s + 1 : c === "[" ? (s > o && l(), i = o = s + 1) : c === "]" && (i || T("Access path missing open bracket: " + e), i > 0 && l(), i = 0, o = s + 1);
1326
- return i && T("Access path missing closing bracket: " + e), r && T("Access path missing closing quote: " + e), s > o && (s++, l()), t;
1327
- }
1328
- //#endregion
1329
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/field.js
1330
- function wn(e, t, n) {
1331
- let r = Cn(e), i = r.length === 1 ? r[0] : e;
1332
- return w((n && n.get || bn)(r), [i], t || i);
1333
- }
1334
- wn("id"), w((e) => e, [], "identity"), w(() => 0, [], "zero"), w(() => 1, [], "one"), w(() => !0, [], "true"), w(() => !1, [], "false");
1335
- //#endregion
1336
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/interpreter.js
1337
- var Tn = /* @__PURE__ */ new Set([
1338
- ...Object.getOwnPropertyNames(Object.prototype).filter((e) => typeof Object.prototype[e] == "function"),
1339
- "__proto__",
1340
- "then"
1341
- ]);
1342
- Array.isArray;
1343
- //#endregion
1344
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/isFunction.js
1345
- function En(e) {
1346
- return typeof e == "function";
1347
- }
1348
- //#endregion
1349
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/hasOwnProperty.js
1350
- function Dn(e, t) {
1351
- return Object.hasOwn(e, t);
1352
- }
1353
- //#endregion
1354
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/isString.js
1355
- function On(e) {
1356
- return typeof e == "string";
1357
- }
1358
- //#endregion
1359
- //#region ../../node_modules/vega-expression/node_modules/vega-util/build/toSet.js
1360
- function kn(e) {
1361
- let t = {}, n = e.length;
1362
- for (let r = 0; r < n; ++r) t[e[r] + ""] = !0;
1363
- return t;
1364
- }
1365
- //#endregion
1366
- //#region ../../node_modules/vega-expression/build/vega-expression.js
1367
- var An = "RawCode", jn = "Literal", Mn = "Property", Nn = "Identifier", Pn = "ArrayExpression", Fn = "BinaryExpression", In = "CallExpression", Ln = "ConditionalExpression", Rn = "LogicalExpression", zn = "MemberExpression", Bn = "ObjectExpression", Vn = "UnaryExpression";
1368
- function E(e) {
1369
- this.type = e;
1370
- }
1371
- E.prototype.visit = function(e) {
1372
- let t, n, r;
1373
- if (e(this)) return 1;
1374
- for (t = Hn(this), n = 0, r = t.length; n < r; ++n) if (t[n].visit(e)) return 1;
1375
- };
1376
- function Hn(e) {
1377
- switch (e.type) {
1378
- case Pn: return e.elements;
1379
- case Fn:
1380
- case Rn: return [e.left, e.right];
1381
- case In: return [e.callee].concat(e.arguments);
1382
- case Ln: return [
1383
- e.test,
1384
- e.consequent,
1385
- e.alternate
1386
- ];
1387
- case zn: return [e.object, e.property];
1388
- case Bn: return e.properties;
1389
- case Mn: return [e.key, e.value];
1390
- case Vn: return [e.argument];
1391
- case Nn:
1392
- case jn:
1393
- case An:
1394
- default: return [];
1395
- }
1396
- }
1397
- var D, O, k, A, j, Un = 1, Wn = 2, M = 3, N = 4, Gn = 5, P = 6, F = 7, Kn = 8, qn = 9;
1398
- D = {}, D[Un] = "Boolean", D[Wn] = "<end>", D[M] = "Identifier", D[N] = "Keyword", D[Gn] = "Null", D[P] = "Numeric", D[F] = "Punctuator", D[Kn] = "String", D[qn] = "RegularExpression";
1399
- var Jn = "ArrayExpression", Yn = "BinaryExpression", Xn = "CallExpression", Zn = "ConditionalExpression", Qn = "Identifier", $n = "Literal", er = "LogicalExpression", tr = "MemberExpression", nr = "ObjectExpression", rr = "Property", ir = "UnaryExpression", I = "Unexpected token %0", ar = "Unexpected number", or = "Unexpected string", sr = "Unexpected identifier", cr = "Unexpected reserved word", lr = "Unexpected end of input", ur = "Invalid regular expression", dr = "Invalid regular expression: missing /", fr = "Octal literals are not allowed in strict mode.", pr = "Duplicate data property in object literal not allowed in strict mode", L = "ILLEGAL", mr = "Disabled.", hr = /* @__PURE__ */ RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"), gr = /* @__PURE__ */ RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0-\\u08B2\\u08E4-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2D\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]");
1400
- function _r(e, t) {
1401
- /* istanbul ignore next */
1402
- if (!e) throw Error("ASSERT: " + t);
1403
- }
1404
- function R(e) {
1405
- return e >= 48 && e <= 57;
1406
- }
1407
- function vr(e) {
1408
- return "0123456789abcdefABCDEF".includes(e);
1409
- }
1410
- function yr(e) {
1411
- return "01234567".includes(e);
1412
- }
1413
- function br(e) {
1414
- return e === 32 || e === 9 || e === 11 || e === 12 || e === 160 || e >= 5760 && [
1415
- 5760,
1416
- 6158,
1417
- 8192,
1418
- 8193,
1419
- 8194,
1420
- 8195,
1421
- 8196,
1422
- 8197,
1423
- 8198,
1424
- 8199,
1425
- 8200,
1426
- 8201,
1427
- 8202,
1428
- 8239,
1429
- 8287,
1430
- 12288,
1431
- 65279
1432
- ].includes(e);
1433
- }
1434
- function xr(e) {
1435
- return e === 10 || e === 13 || e === 8232 || e === 8233;
1436
- }
1437
- function Sr(e) {
1438
- return e === 36 || e === 95 || e >= 65 && e <= 90 || e >= 97 && e <= 122 || e === 92 || e >= 128 && hr.test(String.fromCharCode(e));
1439
- }
1440
- function Cr(e) {
1441
- return e === 36 || e === 95 || e >= 65 && e <= 90 || e >= 97 && e <= 122 || e >= 48 && e <= 57 || e === 92 || e >= 128 && gr.test(String.fromCharCode(e));
1442
- }
1443
- var wr = {
1444
- if: 1,
1445
- in: 1,
1446
- do: 1,
1447
- var: 1,
1448
- for: 1,
1449
- new: 1,
1450
- try: 1,
1451
- let: 1,
1452
- this: 1,
1453
- else: 1,
1454
- case: 1,
1455
- void: 1,
1456
- with: 1,
1457
- enum: 1,
1458
- while: 1,
1459
- break: 1,
1460
- catch: 1,
1461
- throw: 1,
1462
- const: 1,
1463
- yield: 1,
1464
- class: 1,
1465
- super: 1,
1466
- return: 1,
1467
- typeof: 1,
1468
- delete: 1,
1469
- switch: 1,
1470
- export: 1,
1471
- import: 1,
1472
- public: 1,
1473
- static: 1,
1474
- default: 1,
1475
- finally: 1,
1476
- extends: 1,
1477
- package: 1,
1478
- private: 1,
1479
- function: 1,
1480
- continue: 1,
1481
- debugger: 1,
1482
- interface: 1,
1483
- protected: 1,
1484
- instanceof: 1,
1485
- implements: 1
1486
- };
1487
- function Tr() {
1488
- for (; k < A;) {
1489
- let e = O.charCodeAt(k);
1490
- if (br(e) || xr(e)) ++k;
1491
- else break;
1492
- }
1493
- }
1494
- function Er(e) {
1495
- var t, n, r, i = 0;
1496
- for (n = e === "u" ? 4 : 2, t = 0; t < n; ++t) k < A && vr(O[k]) ? (r = O[k++], i = i * 16 + "0123456789abcdef".indexOf(r.toLowerCase())) : B({}, I, L);
1497
- return String.fromCharCode(i);
1498
- }
1499
- function Dr() {
1500
- var e = O[k], t = 0, n, r;
1501
- for (e === "}" && B({}, I, L); k < A && (e = O[k++], vr(e));) t = t * 16 + "0123456789abcdef".indexOf(e.toLowerCase());
1502
- return (t > 1114111 || e !== "}") && B({}, I, L), t <= 65535 ? String.fromCharCode(t) : (n = (t - 65536 >> 10) + 55296, r = (t - 65536 & 1023) + 56320, String.fromCharCode(n, r));
1503
- }
1504
- function Or() {
1505
- var e = O.charCodeAt(k++), t = String.fromCharCode(e);
1506
- for (e === 92 && (O.charCodeAt(k) !== 117 && B({}, I, L), ++k, e = Er("u"), (!e || e === "\\" || !Sr(e.charCodeAt(0))) && B({}, I, L), t = e); k < A && (e = O.charCodeAt(k), Cr(e));) ++k, t += String.fromCharCode(e), e === 92 && (t = t.substr(0, t.length - 1), O.charCodeAt(k) !== 117 && B({}, I, L), ++k, e = Er("u"), (!e || e === "\\" || !Cr(e.charCodeAt(0))) && B({}, I, L), t += e);
1507
- return t;
1508
- }
1509
- function kr() {
1510
- for (var e = k++, t; k < A;) {
1511
- if (t = O.charCodeAt(k), t === 92) return k = e, Or();
1512
- if (Cr(t)) ++k;
1513
- else break;
1514
- }
1515
- return O.slice(e, k);
1516
- }
1517
- function Ar() {
1518
- var e = k, t = O.charCodeAt(k) === 92 ? Or() : kr();
1519
- return {
1520
- type: t.length === 1 ? M : wr.hasOwnProperty(t) ? N : t === "null" ? Gn : t === "true" || t === "false" ? Un : M,
1521
- value: t,
1522
- start: e,
1523
- end: k
1524
- };
1525
- }
1526
- function jr() {
1527
- var e = k, t = O.charCodeAt(k), n, r = O[k], i, a, o;
1528
- switch (t) {
1529
- case 46:
1530
- case 40:
1531
- case 41:
1532
- case 59:
1533
- case 44:
1534
- case 123:
1535
- case 125:
1536
- case 91:
1537
- case 93:
1538
- case 58:
1539
- case 63:
1540
- case 126: return ++k, {
1541
- type: F,
1542
- value: String.fromCharCode(t),
1543
- start: e,
1544
- end: k
1545
- };
1546
- default: if (n = O.charCodeAt(k + 1), n === 61) switch (t) {
1547
- case 43:
1548
- case 45:
1549
- case 47:
1550
- case 60:
1551
- case 62:
1552
- case 94:
1553
- case 124:
1554
- case 37:
1555
- case 38:
1556
- case 42: return k += 2, {
1557
- type: F,
1558
- value: String.fromCharCode(t) + String.fromCharCode(n),
1559
- start: e,
1560
- end: k
1561
- };
1562
- case 33:
1563
- case 61: return k += 2, O.charCodeAt(k) === 61 && ++k, {
1564
- type: F,
1565
- value: O.slice(e, k),
1566
- start: e,
1567
- end: k
1568
- };
1569
- }
1570
- }
1571
- if (o = O.substr(k, 4), o === ">>>=") return k += 4, {
1572
- type: F,
1573
- value: o,
1574
- start: e,
1575
- end: k
1576
- };
1577
- if (a = o.substr(0, 3), a === ">>>" || a === "<<=" || a === ">>=") return k += 3, {
1578
- type: F,
1579
- value: a,
1580
- start: e,
1581
- end: k
1582
- };
1583
- if (i = a.substr(0, 2), r === i[1] && "+-<>&|".includes(r) || i === "=>") return k += 2, {
1584
- type: F,
1585
- value: i,
1586
- start: e,
1587
- end: k
1588
- };
1589
- if (i === "//" && B({}, I, L), "<>=!+-*%&|^/".includes(r)) return ++k, {
1590
- type: F,
1591
- value: r,
1592
- start: e,
1593
- end: k
1594
- };
1595
- B({}, I, L);
1596
- }
1597
- function Mr(e) {
1598
- let t = "";
1599
- for (; k < A && vr(O[k]);) t += O[k++];
1600
- return t.length === 0 && B({}, I, L), Sr(O.charCodeAt(k)) && B({}, I, L), {
1601
- type: P,
1602
- value: parseInt("0x" + t, 16),
1603
- start: e,
1604
- end: k
1605
- };
1606
- }
1607
- function Nr(e) {
1608
- let t = "0" + O[k++];
1609
- for (; k < A && yr(O[k]);) t += O[k++];
1610
- return (Sr(O.charCodeAt(k)) || R(O.charCodeAt(k))) && B({}, I, L), {
1611
- type: P,
1612
- value: parseInt(t, 8),
1613
- octal: !0,
1614
- start: e,
1615
- end: k
1616
- };
1617
- }
1618
- function Pr() {
1619
- var e, t, n = O[k];
1620
- if (_r(R(n.charCodeAt(0)) || n === ".", "Numeric literal must start with a decimal digit or a decimal point"), t = k, e = "", n !== ".") {
1621
- if (e = O[k++], n = O[k], e === "0") {
1622
- if (n === "x" || n === "X") return ++k, Mr(t);
1623
- if (yr(n)) return Nr(t);
1624
- n && R(n.charCodeAt(0)) && B({}, I, L);
1625
- }
1626
- for (; R(O.charCodeAt(k));) e += O[k++];
1627
- n = O[k];
1628
- }
1629
- if (n === ".") {
1630
- for (e += O[k++]; R(O.charCodeAt(k));) e += O[k++];
1631
- n = O[k];
1632
- }
1633
- if (n === "e" || n === "E") {
1634
- if (e += O[k++], n = O[k], (n === "+" || n === "-") && (e += O[k++]), R(O.charCodeAt(k))) for (; R(O.charCodeAt(k));) e += O[k++];
1635
- else B({}, I, L);
1636
- }
1637
- return Sr(O.charCodeAt(k)) && B({}, I, L), {
1638
- type: P,
1639
- value: parseFloat(e),
1640
- start: t,
1641
- end: k
1642
- };
1643
- }
1644
- function Fr() {
1645
- var e = "", t, n, r, i, a = !1;
1646
- for (t = O[k], _r(t === "'" || t === "\"", "String literal must starts with a quote"), n = k, ++k; k < A;) {
1647
- if (r = O[k++], r === t) {
1648
- t = "";
1649
- break;
1650
- }
1651
- if (r === "\\") {
1652
- if (r = O[k++], !r || !xr(r.charCodeAt(0))) switch (r) {
1653
- case "u":
1654
- case "x":
1655
- O[k] === "{" ? (++k, e += Dr()) : e += Er(r);
1656
- break;
1657
- case "n":
1658
- e += "\n";
1659
- break;
1660
- case "r":
1661
- e += "\r";
1662
- break;
1663
- case "t":
1664
- e += " ";
1665
- break;
1666
- case "b":
1667
- e += "\b";
1668
- break;
1669
- case "f":
1670
- e += "\f";
1671
- break;
1672
- case "v":
1673
- e += "\v";
1674
- break;
1675
- default: yr(r) ? (i = "01234567".indexOf(r), i !== 0 && (a = !0), k < A && yr(O[k]) && (a = !0, i = i * 8 + "01234567".indexOf(O[k++]), "0123".includes(r) && k < A && yr(O[k]) && (i = i * 8 + "01234567".indexOf(O[k++]))), e += String.fromCharCode(i)) : e += r;
1676
- }
1677
- else r === "\r" && O[k] === "\n" && ++k;
1678
- } else if (xr(r.charCodeAt(0))) break;
1679
- else e += r;
1680
- }
1681
- return t !== "" && B({}, I, L), {
1682
- type: Kn,
1683
- value: e,
1684
- octal: a,
1685
- start: n,
1686
- end: k
1687
- };
1688
- }
1689
- function Ir(e, t) {
1690
- let n = e;
1691
- t.includes("u") && (n = n.replace(/\\u\{([0-9a-fA-F]+)\}/g, (e, t) => {
1692
- if (parseInt(t, 16) <= 1114111) return "x";
1693
- B({}, ur);
1694
- }).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, "x"));
1695
- try {
1696
- new RegExp(n);
1697
- } catch {
1698
- B({}, ur);
1699
- }
1700
- try {
1701
- return new RegExp(e, t);
1702
- } catch {
1703
- return null;
1704
- }
1705
- }
1706
- function Lr() {
1707
- var e = O[k], t, n, r, i;
1708
- for (_r(e === "/", "Regular expression literal must start with a slash"), t = O[k++], n = !1, r = !1; k < A;) if (e = O[k++], t += e, e === "\\") e = O[k++], xr(e.charCodeAt(0)) && B({}, dr), t += e;
1709
- else if (xr(e.charCodeAt(0))) B({}, dr);
1710
- else if (n) e === "]" && (n = !1);
1711
- else if (e === "/") {
1712
- r = !0;
1713
- break;
1714
- } else e === "[" && (n = !0);
1715
- return r || B({}, dr), i = t.substr(1, t.length - 2), {
1716
- value: i,
1717
- literal: t
1718
- };
1719
- }
1720
- function Rr() {
1721
- for (var e, t = "", n = ""; k < A && (e = O[k], Cr(e.charCodeAt(0)));) ++k, e === "\\" && k < A ? B({}, I, L) : (n += e, t += e);
1722
- return n.search(/[^gimuy]/g) >= 0 && B({}, ur, n), {
1723
- value: n,
1724
- literal: t
1725
- };
1726
- }
1727
- function zr() {
1728
- var e, t, n, r;
1729
- return j = null, Tr(), e = k, t = Lr(), n = Rr(), r = Ir(t.value, n.value), {
1730
- literal: t.literal + n.literal,
1731
- value: r,
1732
- regex: {
1733
- pattern: t.value,
1734
- flags: n.value
1735
- },
1736
- start: e,
1737
- end: k
1738
- };
1739
- }
1740
- function Br(e) {
1741
- return e.type === M || e.type === N || e.type === Un || e.type === Gn;
1742
- }
1743
- function Vr() {
1744
- if (Tr(), k >= A) return {
1745
- type: Wn,
1746
- start: k,
1747
- end: k
1748
- };
1749
- let e = O.charCodeAt(k);
1750
- return Sr(e) ? Ar() : e === 40 || e === 41 || e === 59 ? jr() : e === 39 || e === 34 ? Fr() : e === 46 ? R(O.charCodeAt(k + 1)) ? Pr() : jr() : R(e) ? Pr() : jr();
1751
- }
1752
- function z() {
1753
- let e = j;
1754
- return k = e.end, j = Vr(), k = e.end, e;
1755
- }
1756
- function Hr() {
1757
- let e = k;
1758
- j = Vr(), k = e;
1759
- }
1760
- function Ur(e) {
1761
- let t = new E(Jn);
1762
- return t.elements = e, t;
1763
- }
1764
- function Wr(e, t, n) {
1765
- let r = new E(e === "||" || e === "&&" ? er : Yn);
1766
- return r.operator = e, r.left = t, r.right = n, r;
1767
- }
1768
- function Gr(e, t) {
1769
- let n = new E(Xn);
1770
- return n.callee = e, n.arguments = t, n;
1771
- }
1772
- function Kr(e, t, n) {
1773
- let r = new E(Zn);
1774
- return r.test = e, r.consequent = t, r.alternate = n, r;
1775
- }
1776
- function qr(e) {
1777
- let t = new E(Qn);
1778
- return t.name = e, t;
1779
- }
1780
- function Jr(e) {
1781
- let t = new E($n);
1782
- return t.value = e.value, t.raw = O.slice(e.start, e.end), e.regex && (t.raw === "//" && (t.raw = "/(?:)/"), t.regex = e.regex), t;
1783
- }
1784
- function Yr(e, t, n) {
1785
- let r = new E(tr);
1786
- return r.computed = e === "[", r.object = t, r.property = n, r.computed || (n.member = !0), r;
1787
- }
1788
- function Xr(e) {
1789
- let t = new E(nr);
1790
- return t.properties = e, t;
1791
- }
1792
- function Zr(e, t, n) {
1793
- let r = new E(rr);
1794
- return r.key = t, r.value = n, r.kind = e, r;
1795
- }
1796
- function Qr(e, t) {
1797
- let n = new E(ir);
1798
- return n.operator = e, n.argument = t, n.prefix = !0, n;
1799
- }
1800
- function B(e, t) {
1801
- var n, r = Array.prototype.slice.call(arguments, 2), i = t.replace(/%(\d)/g, (e, t) => (_r(t < r.length, "Message reference must be in range"), r[t]));
1802
- throw n = Error(i), n.index = k, n.description = i, n;
1803
- }
1804
- function $r(e) {
1805
- e.type === Wn && B(e, lr), e.type === P && B(e, ar), e.type === Kn && B(e, or), e.type === M && B(e, sr), e.type === N && B(e, cr), B(e, I, e.value);
1806
- }
1807
- function V(e) {
1808
- let t = z();
1809
- (t.type !== F || t.value !== e) && $r(t);
1810
- }
1811
- function H(e) {
1812
- return j.type === F && j.value === e;
1813
- }
1814
- function ei(e) {
1815
- return j.type === N && j.value === e;
1816
- }
1817
- function ti() {
1818
- let e = [];
1819
- for (k = j.start, V("["); !H("]");) H(",") ? (z(), e.push(null)) : (e.push(U()), H("]") || V(","));
1820
- return z(), Ur(e);
1821
- }
1822
- function ni() {
1823
- k = j.start;
1824
- let e = z();
1825
- return e.type === Kn || e.type === P ? (e.octal && B(e, fr), Jr(e)) : qr(e.value);
1826
- }
1827
- function ri() {
1828
- var e, t, n, r;
1829
- if (k = j.start, e = j, e.type === M) return n = ni(), V(":"), r = U(), Zr("init", n, r);
1830
- if (e.type === Wn || e.type === F) $r(e);
1831
- else return t = ni(), V(":"), r = U(), Zr("init", t, r);
1832
- }
1833
- function ii() {
1834
- var e = [], t, n, r, i = {}, a = String;
1835
- for (k = j.start, V("{"); !H("}");) t = ri(), n = t.key.type === Qn ? t.key.name : a(t.key.value), r = "$" + n, Object.prototype.hasOwnProperty.call(i, r) ? B({}, pr) : i[r] = !0, e.push(t), H("}") || V(",");
1836
- return V("}"), Xr(e);
1837
- }
1838
- function ai() {
1839
- V("(");
1840
- let e = _i();
1841
- return V(")"), e;
1842
- }
1843
- var oi = { if: 1 };
1844
- function si() {
1845
- var e, t, n;
1846
- if (H("(")) return ai();
1847
- if (H("[")) return ti();
1848
- if (H("{")) return ii();
1849
- if (e = j.type, k = j.start, e === M || oi[j.value]) n = qr(z().value);
1850
- else if (e === Kn || e === P) j.octal && B(j, fr), n = Jr(z());
1851
- else if (e === N) throw Error(mr);
1852
- else e === Un ? (t = z(), t.value = t.value === "true", n = Jr(t)) : e === Gn ? (t = z(), t.value = null, n = Jr(t)) : H("/") || H("/=") ? (n = Jr(zr()), Hr()) : $r(z());
1853
- return n;
1854
- }
1855
- function ci() {
1856
- let e = [];
1857
- if (V("("), !H(")")) for (; k < A && (e.push(U()), !H(")"));) V(",");
1858
- return V(")"), e;
1859
- }
1860
- function li() {
1861
- k = j.start;
1862
- let e = z();
1863
- return Br(e) || $r(e), qr(e.value);
1864
- }
1865
- function ui() {
1866
- return V("."), li();
1867
- }
1868
- function di() {
1869
- V("[");
1870
- let e = _i();
1871
- return V("]"), e;
1872
- }
1873
- function fi() {
1874
- for (var e = si(), t, n;;) if (H(".")) n = ui(), e = Yr(".", e, n);
1875
- else if (H("(")) t = ci(), e = Gr(e, t);
1876
- else if (H("[")) n = di(), e = Yr("[", e, n);
1877
- else break;
1878
- return e;
1879
- }
1880
- function pi() {
1881
- let e = fi();
1882
- if (j.type === F && (H("++") || H("--"))) throw Error(mr);
1883
- return e;
1884
- }
1885
- function mi() {
1886
- var e, t;
1887
- if (j.type !== F && j.type !== N) t = pi();
1888
- else if (H("++") || H("--")) throw Error(mr);
1889
- else if (H("+") || H("-") || H("~") || H("!")) e = z(), t = mi(), t = Qr(e.value, t);
1890
- else if (ei("delete") || ei("void") || ei("typeof")) throw Error(mr);
1891
- else t = pi();
1892
- return t;
1893
- }
1894
- function hi(e) {
1895
- let t = 0;
1896
- if (e.type !== F && e.type !== N) return 0;
1897
- switch (e.value) {
1898
- case "||":
1899
- t = 1;
1900
- break;
1901
- case "&&":
1902
- t = 2;
1903
- break;
1904
- case "|":
1905
- t = 3;
1906
- break;
1907
- case "^":
1908
- t = 4;
1909
- break;
1910
- case "&":
1911
- t = 5;
1912
- break;
1913
- case "==":
1914
- case "!=":
1915
- case "===":
1916
- case "!==":
1917
- t = 6;
1918
- break;
1919
- case "<":
1920
- case ">":
1921
- case "<=":
1922
- case ">=":
1923
- case "instanceof":
1924
- case "in":
1925
- t = 7;
1926
- break;
1927
- case "<<":
1928
- case ">>":
1929
- case ">>>":
1930
- t = 8;
1931
- break;
1932
- case "+":
1933
- case "-":
1934
- t = 9;
1935
- break;
1936
- case "*":
1937
- case "/":
1938
- case "%": t = 11;
1939
- }
1940
- return t;
1941
- }
1942
- function gi() {
1943
- var e = j, t, n, r, i, a, o, s, c = mi(), l;
1944
- if (r = j, i = hi(r), i === 0) return c;
1945
- for (r.prec = i, z(), t = [e, j], o = mi(), a = [
1946
- c,
1947
- r,
1948
- o
1949
- ]; (i = hi(j)) > 0;) {
1950
- for (; a.length > 2 && i <= a[a.length - 2].prec;) o = a.pop(), s = a.pop().value, c = a.pop(), t.pop(), n = Wr(s, c, o), a.push(n);
1951
- r = z(), r.prec = i, a.push(r), t.push(j), n = mi(), a.push(n);
1952
- }
1953
- for (l = a.length - 1, n = a[l], t.pop(); l > 1;) t.pop(), n = Wr(a[l - 1].value, a[l - 2], n), l -= 2;
1954
- return n;
1955
- }
1956
- function U() {
1957
- var e = gi(), t, n;
1958
- return H("?") && (z(), t = U(), V(":"), n = U(), e = Kr(e, t, n)), e;
1959
- }
1960
- function _i() {
1961
- let e = U();
1962
- if (H(",")) throw Error(mr);
1963
- return e;
1964
- }
1965
- function vi(e) {
1966
- O = e, k = 0, A = O.length, j = null, Hr();
1967
- let t = _i();
1968
- if (j.type !== Wn) throw Error("Unexpect token after expression.");
1969
- return t;
1970
- }
1971
- var yi = {
1972
- NaN: "NaN",
1973
- E: "Math.E",
1974
- LN2: "Math.LN2",
1975
- LN10: "Math.LN10",
1976
- LOG2E: "Math.LOG2E",
1977
- LOG10E: "Math.LOG10E",
1978
- PI: "Math.PI",
1979
- SQRT1_2: "Math.SQRT1_2",
1980
- SQRT2: "Math.SQRT2",
1981
- MIN_VALUE: "Number.MIN_VALUE",
1982
- MAX_VALUE: "Number.MAX_VALUE"
1983
- };
1984
- function bi(e) {
1985
- function t(t, n, r, i) {
1986
- let a = e(n[0]);
1987
- return r && (a = r + "(" + a + ")", r.lastIndexOf("new ", 0) === 0 && (a = "(" + a + ")")), a + "." + t + (i < 0 ? "" : i === 0 ? "()" : "(" + n.slice(1).map(e).join(",") + ")");
1988
- }
1989
- function n(e, n, r) {
1990
- return (i) => t(e, i, n, r);
1991
- }
1992
- let r = "new Date", i = "String", a = "RegExp";
1993
- return {
1994
- isNaN: "Number.isNaN",
1995
- isFinite: "Number.isFinite",
1996
- abs: "Math.abs",
1997
- acos: "Math.acos",
1998
- asin: "Math.asin",
1999
- atan: "Math.atan",
2000
- atan2: "Math.atan2",
2001
- ceil: "Math.ceil",
2002
- cos: "Math.cos",
2003
- exp: "Math.exp",
2004
- floor: "Math.floor",
2005
- hypot: "Math.hypot",
2006
- log: "Math.log",
2007
- max: "Math.max",
2008
- min: "Math.min",
2009
- pow: "Math.pow",
2010
- random: "Math.random",
2011
- round: "Math.round",
2012
- sin: "Math.sin",
2013
- sqrt: "Math.sqrt",
2014
- tan: "Math.tan",
2015
- clamp: function(t) {
2016
- t.length < 3 && T("Missing arguments to clamp function."), t.length > 3 && T("Too many arguments to clamp function.");
2017
- let n = t.map(e);
2018
- return "Math.max(" + n[1] + ", Math.min(" + n[2] + "," + n[0] + "))";
2019
- },
2020
- now: "Date.now",
2021
- utc: "Date.UTC",
2022
- datetime: r,
2023
- date: n("getDate", r, 0),
2024
- day: n("getDay", r, 0),
2025
- year: n("getFullYear", r, 0),
2026
- month: n("getMonth", r, 0),
2027
- hours: n("getHours", r, 0),
2028
- minutes: n("getMinutes", r, 0),
2029
- seconds: n("getSeconds", r, 0),
2030
- milliseconds: n("getMilliseconds", r, 0),
2031
- time: n("getTime", r, 0),
2032
- timezoneoffset: n("getTimezoneOffset", r, 0),
2033
- utcdate: n("getUTCDate", r, 0),
2034
- utcday: n("getUTCDay", r, 0),
2035
- utcyear: n("getUTCFullYear", r, 0),
2036
- utcmonth: n("getUTCMonth", r, 0),
2037
- utchours: n("getUTCHours", r, 0),
2038
- utcminutes: n("getUTCMinutes", r, 0),
2039
- utcseconds: n("getUTCSeconds", r, 0),
2040
- utcmilliseconds: n("getUTCMilliseconds", r, 0),
2041
- length: n("length", null, -1),
2042
- parseFloat: "parseFloat",
2043
- parseInt: "parseInt",
2044
- upper: n("toUpperCase", i, 0),
2045
- lower: n("toLowerCase", i, 0),
2046
- substring: n("substring", i),
2047
- split: n("split", i),
2048
- trim: n("trim", i, 0),
2049
- btoa: "btoa",
2050
- atob: "atob",
2051
- encodeURIComponent: "encodeURIComponent",
2052
- regexp: a,
2053
- test: n("test", a),
2054
- if: function(t) {
2055
- t.length < 3 && T("Missing arguments to if function."), t.length > 3 && T("Too many arguments to if function.");
2056
- let n = t.map(e);
2057
- return "(" + n[0] + "?" + n[1] + ":" + n[2] + ")";
2058
- }
2059
- };
2060
- }
2061
- function xi(e) {
2062
- let t = e && e.length - 1;
2063
- return t && (e[0] === "\"" && e[t] === "\"" || e[0] === "'" && e[t] === "'") ? e.slice(1, -1) : e;
2064
- }
2065
- function Si(e) {
2066
- e ||= {};
2067
- let t = e.allowed ? kn(e.allowed) : {}, n = e.forbidden ? kn(e.forbidden) : {}, r = e.constants || yi, i = (e.functions || bi)(d), a = e.globalvar, o = e.fieldvar, s = En(a) ? a : (e) => `${a}["${e}"]`, c = {}, l = {}, u = 0;
2068
- function d(e) {
2069
- if (On(e)) return e;
2070
- let t = f[e.type];
2071
- return t ?? T("Unsupported type: " + e.type), t(e);
2072
- }
2073
- let f = {
2074
- Literal: (e) => e.raw,
2075
- Identifier: (e) => {
2076
- let i = e.name;
2077
- return u > 0 ? i : Dn(n, i) ? T("Illegal identifier: " + i) : Dn(r, i) ? r[i] : Dn(t, i) ? i : (c[i] = 1, s(i));
2078
- },
2079
- MemberExpression: (e) => {
2080
- let t = !e.computed, n = d(e.object);
2081
- t && (u += 1);
2082
- let r = d(e.property);
2083
- return n === o && (l[xi(r)] = 1), t && --u, n + (t ? "." + r : "[" + r + "]");
2084
- },
2085
- CallExpression: (e) => {
2086
- e.callee.type !== "Identifier" && T("Illegal callee type: " + e.callee.type);
2087
- let t = e.callee.name, n = e.arguments, r = Dn(i, t) && i[t];
2088
- return r || T("Unrecognized function: " + t), En(r) ? r(n) : r + "(" + n.map(d).join(",") + ")";
2089
- },
2090
- ArrayExpression: (e) => "[" + e.elements.map(d).join(",") + "]",
2091
- BinaryExpression: (e) => "(" + d(e.left) + " " + e.operator + " " + d(e.right) + ")",
2092
- UnaryExpression: (e) => "(" + e.operator + d(e.argument) + ")",
2093
- ConditionalExpression: (e) => "(" + d(e.test) + "?" + d(e.consequent) + ":" + d(e.alternate) + ")",
2094
- LogicalExpression: (e) => "(" + d(e.left) + e.operator + d(e.right) + ")",
2095
- ObjectExpression: (e) => {
2096
- for (let t of e.properties) {
2097
- let e = t.key.type === "Literal" ? String(t.key.value) : t.key.name;
2098
- Tn.has(e) && T("Illegal property: " + e);
2099
- }
2100
- return "{" + e.properties.map(d).join(",") + "}";
2101
- },
2102
- Property: (e) => {
2103
- u += 1;
2104
- let t = d(e.key);
2105
- return --u, t + ":" + d(e.value);
2106
- }
2107
- };
2108
- function p(e) {
2109
- let t = {
2110
- code: d(e),
2111
- globals: Object.keys(c),
2112
- fields: Object.keys(l)
2113
- };
2114
- return c = {}, l = {}, t;
2115
- }
2116
- return p.functions = i, p.constants = r, p;
2117
- }
2118
- //#endregion
2119
- //#region ../core/src/utils/smoothstep.js
2120
- function Ci(e, t, n) {
2121
- return n = (n - e) / (t - e), n = Math.max(0, Math.min(1, n)), n * n * (3 - 2 * n);
2122
- }
2123
- //#endregion
2124
- //#region ../core/src/utils/clamp.js
2125
- function wi(e, t = 0, n = 1) {
2126
- return Math.max(t, Math.min(n, e));
2127
- }
2128
- //#endregion
2129
- //#region ../core/src/utils/linearstep.js
2130
- function Ti(e, t, n) {
2131
- return wi((n - e) / (t - e), 0, 1);
2132
- }
2133
- //#endregion
2134
- //#region ../core/src/utils/expression.js
2135
- function Ei(e) {
2136
- return u(e) || ArrayBuffer.isView(e) ? e : null;
2137
- }
2138
- function Di(e) {
2139
- return Ei(e) || (b(e) ? e : null);
2140
- }
2141
- var Oi = {
2142
- clamp: wi,
2143
- tickStep: Ie,
2144
- format(e, t) {
2145
- return nt(t)(e);
2146
- },
2147
- join(e, t) {
2148
- return Ei(e).join(t);
2149
- },
2150
- indexof(e, t, n) {
2151
- return Di(e).indexOf(t, n);
2152
- },
2153
- inrange: _e,
2154
- lastindexof(e, t, n) {
2155
- return Di(e).lastIndexOf(t, n);
2156
- },
2157
- reverse(e) {
2158
- return b(e) ? Array.from(e).reverse().join("") : Ei(e).slice().reverse();
2159
- },
2160
- slice(e, t, n) {
2161
- return Di(e).slice(t, n);
2162
- },
2163
- mapHasKey(e, t) {
2164
- return e.has(t);
2165
- },
2166
- isArray: u,
2167
- isBoolean: ve,
2168
- isDefined(e) {
2169
- return e !== void 0;
2170
- },
2171
- isNumber: ye,
2172
- isObject: d,
2173
- isRegExp: be,
2174
- isString: b,
2175
- isValid(e) {
2176
- return e != null && e === e;
2177
- },
2178
- lerp: xe,
2179
- linearstep: Ti,
2180
- replace(e, t, n) {
2181
- return String(e).replace(t, n);
2182
- },
2183
- sort(e) {
2184
- return Ei(e).slice().sort(pe);
2185
- },
2186
- center(e) {
2187
- let t = Ei(e);
2188
- return (t[0] + t[t.length - 1]) / 2;
2189
- },
2190
- span(e) {
2191
- return Se(e);
2192
- },
2193
- smoothstep: Ci
2194
- };
2195
- function ki(e) {
2196
- let t = !1, n = Li(e, {}, { resolveScaleResolution: () => (t = !0, {
2197
- channel: "analysis",
2198
- getDomainRef: () => void 0,
2199
- getMappingRef: () => void 0,
2200
- getConfigurationRef: () => void 0,
2201
- getZoomLevelRef: () => void 0
2202
- }) });
2203
- return {
2204
- usesScaleHelper: t,
2205
- globals: n.globals
2206
- };
2207
- }
2208
- function Ai(e, t) {
2209
- let n = bi(e);
2210
- for (let e in Oi) n[e] = `this.${e}`;
2211
- for (let r of [
2212
- "scale",
2213
- "invert",
2214
- "domain",
2215
- "range",
2216
- "bandwidth",
2217
- "linearize",
2218
- "zoomLevel"
2219
- ]) n[r] = (n) => ji(e, t, r, n);
2220
- return n;
2221
- }
2222
- function ji(e, t, n, r) {
2223
- if (n === "zoomLevel" && r.length === 0) {
2224
- let e = [];
2225
- for (let r of ["x", "y"]) {
2226
- let i = t.resolveScaleResolution?.(r);
2227
- if (i) {
2228
- let a = t.getScaleHelper(n, r, i);
2229
- e.push(`${t.globalvar}["${a.codeName}"]()`);
2230
- }
2231
- }
2232
- return `Math.sqrt(${e.join("*") || "1"})`;
2233
- }
2234
- if (r.length === 0) throw Error(`Scale helper "${n}" requires a literal channel name.`);
2235
- if ((n === "scale" || n === "invert" || n === "linearize") && r.length < 2) throw Error(`Scale helper "${n}" requires a channel name and a value.`);
2236
- if (n === "zoomLevel" && r.length > 1) throw Error("Scale helper \"zoomLevel\" accepts zero arguments or one literal channel name.");
2237
- let i = Mi(r[0]);
2238
- if (!i) throw Error(`Scale helper "${n}" requires a literal channel name.`);
2239
- let a = t.resolveScaleResolution?.(i);
2240
- if (!a) throw Error(`Unknown scale channel "${i}" in expression helper "${n}".`);
2241
- let o = t.getScaleHelper(n, i, a), s = r.slice(1).map((t) => e(t)).join(",");
2242
- return `${t.globalvar}["${o.codeName}"](${s})`;
2243
- }
2244
- function Mi(e) {
2245
- return e?.type === "Literal" && typeof e.value == "string" ? e.value : void 0;
2246
- }
2247
- function Ni(e, t) {
2248
- let n = (n) => Fi(t, e, n);
2249
- if (e === "domain") return () => n(() => t.getDomain());
2250
- if (e === "range") return () => n(() => t.getScale().range());
2251
- if (e === "bandwidth") return () => n(() => {
2252
- let e = t.getScale();
2253
- if (typeof e.bandwidth != "function") throw Error(`Scale channel "${t.channel}" does not support bandwidth().`);
2254
- return e.bandwidth();
2255
- });
2256
- if (e === "scale") return (e) => n(() => t.getScale()(e));
2257
- if (e === "invert") return (e) => n(() => t.getScale().invert(e));
2258
- if (e === "linearize") return (e) => n(() => e == null ? null : typeof t.fromComplex == "function" ? t.fromComplex(e) : e);
2259
- if (e === "zoomLevel") return () => n(() => t.getZoomLevel());
2260
- throw Error("Unknown scale helper: " + e);
2261
- }
2262
- var Pi = /* @__PURE__ */ new WeakSet();
2263
- function Fi(e, t, n) {
2264
- if (Pi.has(e)) throw Error(`Scale helper cycle detected while evaluating ${t}("${e.channel}").`);
2265
- Pi.add(e);
2266
- try {
2267
- return n();
2268
- } finally {
2269
- Pi.delete(e);
2270
- }
2271
- }
2272
- function Ii(e, t) {
2273
- return e === "domain" ? t.getDomainRef() : e === "linearize" ? t.getConfigurationRef() : e === "zoomLevel" ? t.getZoomLevelRef() : t.getMappingRef();
2274
- }
2275
- function Li(e, t = {}, n = {}) {
2276
- try {
2277
- let r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Set(), o = 1, s = {
2278
- ...n,
2279
- globalvar: "globalObject",
2280
- globalObject: t,
2281
- getScaleHelper(e, n, s) {
2282
- let c = e + ":" + n, l = i.get(c);
2283
- if (l) return l;
2284
- let u = r.get(c);
2285
- u || (u = Ii(e, s), r.set(c, u));
2286
- let d = "__scale_helper_" + o++, f = {
2287
- codeName: d,
2288
- dependency: u
2289
- };
2290
- return i.set(c, f), e === "zoomLevel" && a.add(s), t[d] = Ni(e, s), f;
2291
- }
2292
- }, c = Si({
2293
- forbidden: [],
2294
- allowed: ["datum", "undefined"],
2295
- globalvar: "globalObject",
2296
- fieldvar: "datum",
2297
- functions: (e) => Ai(e, s)
2298
- })(vi(e)), l = Function("datum", "globalObject", `"use strict";
2299
- try {
2300
- return (${c.code});
2301
- } catch (e) {
2302
- throw new Error("Error evaluating expression: " + ${JSON.stringify(e)} + ", " + e.message, e);
2303
- }`).bind(Oi), u = (e) => l(e, t);
2304
- return u.createEvaluator = (e) => (t) => l(t, e), u.fields = c.fields, u.globals = c.globals, u.code = c.code, u.scaleDependencies = Array.from(new Set(r.values())), u.zoomLevelResolutions = Array.from(a), u;
2305
- } catch (t) {
2306
- throw Error(`Invalid expression: ${e}, ${t.message}`, { cause: t });
2307
- }
2308
- }
2309
- var Ri = Si({
2310
- forbidden: [],
2311
- allowed: ["event"],
2312
- globalvar: "globalObject"
2313
- });
2314
- function zi(e) {
2315
- try {
2316
- let t = Ri(vi(e));
2317
- return Function("event", "globalObject", `"use strict";
2318
- try {
2319
- return !!(${t.code});
2320
- } catch (e) {
2321
- throw new Error("Error evaluating expression: " + ${JSON.stringify(e)} + ", " + e.message, e);
2322
- }`);
2323
- } catch (t) {
2324
- throw Error(`Invalid expression: ${e}, ${t.message}`, { cause: t });
2325
- }
2326
- }
2327
- //#endregion
2328
- //#region ../core/src/utils/interactionConfig.js
2329
- function Bi(e) {
2330
- if (typeof e == "string") {
2331
- let t = e.match(/^([a-zA-Z]+)(?:\[(.+)\])?$/);
2332
- if (!t) throw Error(`Invalid event type string: ${e}`);
2333
- let [, n, r] = t, i = { type: n };
2334
- return r && (i.filter = r), i;
2335
- }
2336
- return e;
2337
- }
2338
- function Vi(e) {
2339
- return e?.filter ? zi(e.filter) : () => !0;
2340
- }
2341
- function Hi(e, t, n) {
2342
- if (!t.includes(e.type)) throw Error(n);
2343
- return e;
2344
- }
2345
- //#endregion
2346
- //#region ../core/src/selection/selection.js
2347
- function Ui(e) {
2348
- return {
2349
- type: "single",
2350
- datum: e,
2351
- uniqueId: e?.[x]
2352
- };
2353
- }
2354
- function Wi(e) {
2355
- return e ??= [], {
2356
- type: "multi",
2357
- data: new Map(e.map((e) => [e[x], e]))
2358
- };
2359
- }
2360
- function Gi(e, t) {
2361
- if (!t || t.length === 0) return;
2362
- let n = t.map((e) => yt(e)), r = (e) => n.map((t) => t(e));
2363
- if (ea(e)) return e.datum ? [r(e.datum)] : [];
2364
- if (ta(e)) return [...e.data.values()].map(r);
2365
- throw Error(`Expected a point selection, got: ${JSON.stringify(e)}`);
2366
- }
2367
- function Ki(e, t, n, r) {
2368
- if (!t || t.length === 0) return;
2369
- if (e === "single" && n.length > 1) throw Error("Single point selections expect at most one key tuple.");
2370
- let i = [], a = [];
2371
- for (let e of n) {
2372
- let n = r(t, e);
2373
- n ? i.push(n) : a.push(e);
2374
- }
2375
- return {
2376
- selection: e === "single" ? Ui(i[0] ?? null) : Wi(i),
2377
- unresolved: a
2378
- };
2379
- }
2380
- function qi(e) {
2381
- return {
2382
- type: "interval",
2383
- intervals: Object.fromEntries(e.map((e) => [e, null]))
2384
- };
2385
- }
2386
- function Ji(e, { add: t, remove: n, toggle: r }) {
2387
- let i = e.data;
2388
- for (let e of t ?? []) i.set(e[x], e);
2389
- for (let e of n ?? []) i.delete(e[x]);
2390
- for (let e of r ?? []) {
2391
- let t = e[x];
2392
- i.has(t) ? i.delete(t) : i.set(t, e);
2393
- }
2394
- return {
2395
- type: "multi",
2396
- data: i
2397
- };
2398
- }
2399
- function Yi(e, t) {
2400
- let n = !!(e.empty ?? !0), r = pa(e.param), i = e.fields ?? {};
2401
- if (ea(t)) return `${r}.uniqueId == null ? ${n} : ${r}.uniqueId === datum[${JSON.stringify(x)}]`;
2402
- if (ta(t)) return `${r}.data.size == 0 ? ${n} : mapHasKey(${r}.data, datum[${JSON.stringify(x)}])`;
2403
- if ($i(t)) {
2404
- let a = Object.keys(t.intervals), o = Object.keys(i).filter(an);
2405
- if (o.length === 0) throw Error("Filtering using interval selections requires at least one primary positional channel in the config! " + JSON.stringify(e));
2406
- if (o.some((e) => !a.includes(e))) throw Error(`Selection channels (${a.join(", ")}) do not match the fields: ${JSON.stringify(e)}!`);
2407
- let s = (e) => `datum[${JSON.stringify(e)}]`;
2408
- return a.map((e) => {
2409
- let t = pn(e), a = i[e], o = i[t] ?? i[e], c = `${r}.intervals.${e}[0] <= ${s(o)}`, l = `${s(a)} <= ${r}.intervals.${e}[1]`;
2410
- return `(${r}.intervals.${e} ? (${c} && ${l}) : ${n})`;
2411
- }).join(" && ");
2412
- }
2413
- throw Error(`Unrecognized selection type : ${JSON.stringify(t)}`);
2414
- }
2415
- function Xi(e) {
2416
- if ("param" in e || "test" in e) return St(e);
2417
- }
2418
- function Zi(e) {
2419
- return e?.selection ? Ct(e.selection) : [];
2420
- }
2421
- function Qi(e) {
2422
- let t = Object.values(e).flatMap((e) => e.branches.flatMap(({ predicate: e }) => e.selection ? [e.selection] : [])), n = /* @__PURE__ */ new Set();
2423
- return t.filter((e) => {
2424
- let t = JSON.stringify(e);
2425
- return !n.has(t) && (n.add(t), !0);
2426
- });
2427
- }
2428
- function $i(e) {
2429
- return e.type === "interval";
2430
- }
2431
- function ea(e) {
2432
- return e.type === "single";
2433
- }
2434
- function ta(e) {
2435
- return e.type === "multi";
2436
- }
2437
- function na(e) {
2438
- let t = typeof e == "string" ? { type: e } : { ...e };
2439
- return t.on = t.on ? Bi(t.on) : ra(t) ? { type: "click" } : void 0, t.clear = t.clear === !1 ? void 0 : t.clear === !0 || t.clear == null ? { type: "dblclick" } : Bi(t.clear), ra(t) && t.on.type === "click" && t.toggle === void 0 && (t.toggle = !0), t;
2440
- }
2441
- function ra(e) {
2442
- return e && e.type == "point";
2443
- }
2444
- function ia(e) {
2445
- return e && e.type == "interval";
2446
- }
2447
- function aa(e) {
2448
- if (ea(e)) return e.uniqueId != null;
2449
- if (ta(e)) return e.data.size > 0;
2450
- if ($i(e)) return oa(e);
2451
- throw Error(`Unsupported selection type: ${e.type}`);
2452
- }
2453
- function oa(e) {
2454
- return Object.values(e.intervals).some((e) => e && e.length === 2);
2455
- }
2456
- function sa(e, t) {
2457
- return Object.entries(e.intervals).every(([e, n]) => (e == "x" || e == "y") && n && n[0] <= t[e] && n[1] >= t[e]);
2458
- }
2459
- //#endregion
2460
- //#region ../core/src/ruler/rulerValue.js
2461
- function ca(e = ["x"], t = {}) {
2462
- let n = {};
2463
- for (let r of e) n[r] = t[r] ?? null;
2464
- return {
2465
- type: "ruler",
2466
- values: n
2467
- };
2468
- }
2469
- //#endregion
2470
- //#region ../core/src/paramRuntime/paramUtils.js
2471
- function W(e) {
2472
- return typeof e == "object" && !!e && "expr" in e && b(e.expr);
2473
- }
2474
- function la(e) {
2475
- if (W(e)) throw Error("ExprRef " + JSON.stringify(e) + " not allowed here. Expected a scalar value.");
2476
- return e;
2477
- }
2478
- function ua(e) {
2479
- return ("expr" in e || "bind" in e) && !("select" in e) && !("ruler" in e);
2480
- }
2481
- function da(e) {
2482
- return !("expr" in e || "bind" in e) && "select" in e;
2483
- }
2484
- function fa(e) {
2485
- return !("expr" in e || "bind" in e || "select" in e) && "ruler" in e;
2486
- }
2487
- function pa(e) {
2488
- if (!/^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(e)) throw Error("Invalid parameter name: " + e + ". Must be a valid JavaScript identifier.");
2489
- return e;
2490
- }
2491
- function ma(e, t, n) {
2492
- if ("select" in e) {
2493
- let t = na(e.select);
2494
- if (ra(t)) return t.toggle ? Wi() : Ui(null);
2495
- if (ia(t)) {
2496
- if (!t.encodings) throw Error("Interval selection \"" + e.name + "\" must have encodings defined!");
2497
- return qi(t.encodings);
2498
- }
2499
- throw Error("Unknown selection config for parameter \"" + e.name + "\".");
2500
- }
2501
- if ("ruler" in e) return ca(e.ruler.encodings, e.value);
2502
- if ("expr" in e) {
2503
- let r = n ?? t?.createExpression(e.expr);
2504
- if (!r) throw Error("Cannot evaluate expression for parameter \"" + e.name + "\".");
2505
- return r(null);
2506
- }
2507
- return "value" in e ? e.value : null;
2508
- }
2509
- function ha(e, t, n, r, i = []) {
2510
- let a = { ...t }, o = [];
2511
- for (let [r, i] of Object.entries(t)) if (W(i)) {
2512
- let t = e.createExpression(i.expr), s = o.push({
2513
- key: r,
2514
- fn: t
2515
- }) - 1;
2516
- Object.defineProperty(a, r, {
2517
- enumerable: !0,
2518
- get: n ? () => c.get()[s] : () => t(null)
2519
- });
2520
- } else a[r] = i;
2521
- if (!n) return a;
2522
- for (let { key: t, expr: n } of i) o.push({
2523
- key: t,
2524
- fn: e.createExpression(n.expr)
2525
- });
2526
- if (!o.length) return a;
2527
- let s = Array.from(new Set(o.flatMap(({ fn: e }) => e.dependencies))), c = e.computed("expression properties", s, () => o.map(({ fn: e }) => e(null)), { equals: ga }), l = c.get(), u = e.effect([c], () => {
2528
- let e = c.get(), t = new Set(o.filter((t, n) => l[n] !== e[n]).map(({ key: e }) => e));
2529
- l = e, n(t);
2530
- });
2531
- return r?.(c.dispose), r?.(u), a;
2532
- }
2533
- function ga(e, t) {
2534
- return e.every((e, n) => e === t[n]);
2535
- }
2536
- function _a(e, t, n, r) {
2537
- if (!W(t)) return t;
2538
- let i = () => {
2539
- throw Error(n);
2540
- }, a = e.watchExpression ? e.watchExpression(t.expr, i, {
2541
- scopeOwned: !1,
2542
- registerDisposer: r
2543
- }) : e.createExpression(t.expr);
2544
- if (!e.watchExpression) {
2545
- let e = a.subscribe(i);
2546
- r?.(e);
2547
- }
2548
- return a();
2549
- }
2550
- function va(e) {
2551
- return Object.assign(() => e, {
2552
- dependencies: [],
2553
- subscribe: () => () => void 0,
2554
- invalidate: () => void 0,
2555
- identifier: () => "constant",
2556
- fields: [],
2557
- globals: [],
2558
- code: JSON.stringify(e)
2559
- });
2560
- }
2561
- //#endregion
2562
- //#region ../../node_modules/d3-color/src/define.js
2563
- function ya(e, t, n) {
2564
- e.prototype = t.prototype = n, n.constructor = e;
2565
- }
2566
- function ba(e, t) {
2567
- var n = Object.create(e.prototype);
2568
- for (var r in t) n[r] = t[r];
2569
- return n;
2570
- }
2571
- //#endregion
2572
- //#region ../../node_modules/d3-color/src/color.js
2573
- function G() {}
2574
- var K = .7, xa = 1 / K, q = "\\s*([+-]?\\d+)\\s*", Sa = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*", J = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*", Ca = /^#([0-9a-f]{3,8})$/, wa = RegExp(`^rgb\\(${q},${q},${q}\\)$`), Ta = RegExp(`^rgb\\(${J},${J},${J}\\)$`), Ea = RegExp(`^rgba\\(${q},${q},${q},${Sa}\\)$`), Da = RegExp(`^rgba\\(${J},${J},${J},${Sa}\\)$`), Oa = RegExp(`^hsl\\(${Sa},${J},${J}\\)$`), ka = RegExp(`^hsla\\(${Sa},${J},${J},${Sa}\\)$`), Aa = {
2575
- aliceblue: 15792383,
2576
- antiquewhite: 16444375,
2577
- aqua: 65535,
2578
- aquamarine: 8388564,
2579
- azure: 15794175,
2580
- beige: 16119260,
2581
- bisque: 16770244,
2582
- black: 0,
2583
- blanchedalmond: 16772045,
2584
- blue: 255,
2585
- blueviolet: 9055202,
2586
- brown: 10824234,
2587
- burlywood: 14596231,
2588
- cadetblue: 6266528,
2589
- chartreuse: 8388352,
2590
- chocolate: 13789470,
2591
- coral: 16744272,
2592
- cornflowerblue: 6591981,
2593
- cornsilk: 16775388,
2594
- crimson: 14423100,
2595
- cyan: 65535,
2596
- darkblue: 139,
2597
- darkcyan: 35723,
2598
- darkgoldenrod: 12092939,
2599
- darkgray: 11119017,
2600
- darkgreen: 25600,
2601
- darkgrey: 11119017,
2602
- darkkhaki: 12433259,
2603
- darkmagenta: 9109643,
2604
- darkolivegreen: 5597999,
2605
- darkorange: 16747520,
2606
- darkorchid: 10040012,
2607
- darkred: 9109504,
2608
- darksalmon: 15308410,
2609
- darkseagreen: 9419919,
2610
- darkslateblue: 4734347,
2611
- darkslategray: 3100495,
2612
- darkslategrey: 3100495,
2613
- darkturquoise: 52945,
2614
- darkviolet: 9699539,
2615
- deeppink: 16716947,
2616
- deepskyblue: 49151,
2617
- dimgray: 6908265,
2618
- dimgrey: 6908265,
2619
- dodgerblue: 2003199,
2620
- firebrick: 11674146,
2621
- floralwhite: 16775920,
2622
- forestgreen: 2263842,
2623
- fuchsia: 16711935,
2624
- gainsboro: 14474460,
2625
- ghostwhite: 16316671,
2626
- gold: 16766720,
2627
- goldenrod: 14329120,
2628
- gray: 8421504,
2629
- green: 32768,
2630
- greenyellow: 11403055,
2631
- grey: 8421504,
2632
- honeydew: 15794160,
2633
- hotpink: 16738740,
2634
- indianred: 13458524,
2635
- indigo: 4915330,
2636
- ivory: 16777200,
2637
- khaki: 15787660,
2638
- lavender: 15132410,
2639
- lavenderblush: 16773365,
2640
- lawngreen: 8190976,
2641
- lemonchiffon: 16775885,
2642
- lightblue: 11393254,
2643
- lightcoral: 15761536,
2644
- lightcyan: 14745599,
2645
- lightgoldenrodyellow: 16448210,
2646
- lightgray: 13882323,
2647
- lightgreen: 9498256,
2648
- lightgrey: 13882323,
2649
- lightpink: 16758465,
2650
- lightsalmon: 16752762,
2651
- lightseagreen: 2142890,
2652
- lightskyblue: 8900346,
2653
- lightslategray: 7833753,
2654
- lightslategrey: 7833753,
2655
- lightsteelblue: 11584734,
2656
- lightyellow: 16777184,
2657
- lime: 65280,
2658
- limegreen: 3329330,
2659
- linen: 16445670,
2660
- magenta: 16711935,
2661
- maroon: 8388608,
2662
- mediumaquamarine: 6737322,
2663
- mediumblue: 205,
2664
- mediumorchid: 12211667,
2665
- mediumpurple: 9662683,
2666
- mediumseagreen: 3978097,
2667
- mediumslateblue: 8087790,
2668
- mediumspringgreen: 64154,
2669
- mediumturquoise: 4772300,
2670
- mediumvioletred: 13047173,
2671
- midnightblue: 1644912,
2672
- mintcream: 16121850,
2673
- mistyrose: 16770273,
2674
- moccasin: 16770229,
2675
- navajowhite: 16768685,
2676
- navy: 128,
2677
- oldlace: 16643558,
2678
- olive: 8421376,
2679
- olivedrab: 7048739,
2680
- orange: 16753920,
2681
- orangered: 16729344,
2682
- orchid: 14315734,
2683
- palegoldenrod: 15657130,
2684
- palegreen: 10025880,
2685
- paleturquoise: 11529966,
2686
- palevioletred: 14381203,
2687
- papayawhip: 16773077,
2688
- peachpuff: 16767673,
2689
- peru: 13468991,
2690
- pink: 16761035,
2691
- plum: 14524637,
2692
- powderblue: 11591910,
2693
- purple: 8388736,
2694
- rebeccapurple: 6697881,
2695
- red: 16711680,
2696
- rosybrown: 12357519,
2697
- royalblue: 4286945,
2698
- saddlebrown: 9127187,
2699
- salmon: 16416882,
2700
- sandybrown: 16032864,
2701
- seagreen: 3050327,
2702
- seashell: 16774638,
2703
- sienna: 10506797,
2704
- silver: 12632256,
2705
- skyblue: 8900331,
2706
- slateblue: 6970061,
2707
- slategray: 7372944,
2708
- slategrey: 7372944,
2709
- snow: 16775930,
2710
- springgreen: 65407,
2711
- steelblue: 4620980,
2712
- tan: 13808780,
2713
- teal: 32896,
2714
- thistle: 14204888,
2715
- tomato: 16737095,
2716
- turquoise: 4251856,
2717
- violet: 15631086,
2718
- wheat: 16113331,
2719
- white: 16777215,
2720
- whitesmoke: 16119285,
2721
- yellow: 16776960,
2722
- yellowgreen: 10145074
2723
- };
2724
- ya(G, Fa, {
2725
- copy(e) {
2726
- return Object.assign(new this.constructor(), this, e);
2727
- },
2728
- displayable() {
2729
- return this.rgb().displayable();
2730
- },
2731
- hex: ja,
2732
- formatHex: ja,
2733
- formatHex8: Ma,
2734
- formatHsl: Na,
2735
- formatRgb: Pa,
2736
- toString: Pa
2737
- });
2738
- function ja() {
2739
- return this.rgb().formatHex();
2740
- }
2741
- function Ma() {
2742
- return this.rgb().formatHex8();
2743
- }
2744
- function Na() {
2745
- return Ga(this).formatHsl();
2746
- }
2747
- function Pa() {
2748
- return this.rgb().formatRgb();
2749
- }
2750
- function Fa(e) {
2751
- var t, n;
2752
- return e = (e + "").trim().toLowerCase(), (t = Ca.exec(e)) ? (n = t[1].length, t = parseInt(t[1], 16), n === 6 ? Ia(t) : n === 3 ? new Y(t >> 8 & 15 | t >> 4 & 240, t >> 4 & 15 | t & 240, (t & 15) << 4 | t & 15, 1) : n === 8 ? La(t >> 24 & 255, t >> 16 & 255, t >> 8 & 255, (t & 255) / 255) : n === 4 ? La(t >> 12 & 15 | t >> 8 & 240, t >> 8 & 15 | t >> 4 & 240, t >> 4 & 15 | t & 240, ((t & 15) << 4 | t & 15) / 255) : null) : (t = wa.exec(e)) ? new Y(t[1], t[2], t[3], 1) : (t = Ta.exec(e)) ? new Y(t[1] * 255 / 100, t[2] * 255 / 100, t[3] * 255 / 100, 1) : (t = Ea.exec(e)) ? La(t[1], t[2], t[3], t[4]) : (t = Da.exec(e)) ? La(t[1] * 255 / 100, t[2] * 255 / 100, t[3] * 255 / 100, t[4]) : (t = Oa.exec(e)) ? Wa(t[1], t[2] / 100, t[3] / 100, 1) : (t = ka.exec(e)) ? Wa(t[1], t[2] / 100, t[3] / 100, t[4]) : Aa.hasOwnProperty(e) ? Ia(Aa[e]) : e === "transparent" ? new Y(NaN, NaN, NaN, 0) : null;
2753
- }
2754
- function Ia(e) {
2755
- return new Y(e >> 16 & 255, e >> 8 & 255, e & 255, 1);
2756
- }
2757
- function La(e, t, n, r) {
2758
- return r <= 0 && (e = t = n = NaN), new Y(e, t, n, r);
2759
- }
2760
- function Ra(e) {
2761
- return e instanceof G || (e = Fa(e)), e ? (e = e.rgb(), new Y(e.r, e.g, e.b, e.opacity)) : new Y();
2762
- }
2763
- function za(e, t, n, r) {
2764
- return arguments.length === 1 ? Ra(e) : new Y(e, t, n, r ?? 1);
2765
- }
2766
- function Y(e, t, n, r) {
2767
- this.r = +e, this.g = +t, this.b = +n, this.opacity = +r;
2768
- }
2769
- ya(Y, za, ba(G, {
2770
- brighter(e) {
2771
- return e = e == null ? xa : xa ** +e, new Y(this.r * e, this.g * e, this.b * e, this.opacity);
2772
- },
2773
- darker(e) {
2774
- return e = e == null ? K : K ** +e, new Y(this.r * e, this.g * e, this.b * e, this.opacity);
2775
- },
2776
- rgb() {
2777
- return this;
2778
- },
2779
- clamp() {
2780
- return new Y(X(this.r), X(this.g), X(this.b), Ua(this.opacity));
2781
- },
2782
- displayable() {
2783
- return -.5 <= this.r && this.r < 255.5 && -.5 <= this.g && this.g < 255.5 && -.5 <= this.b && this.b < 255.5 && 0 <= this.opacity && this.opacity <= 1;
2784
- },
2785
- hex: Ba,
2786
- formatHex: Ba,
2787
- formatHex8: Va,
2788
- formatRgb: Ha,
2789
- toString: Ha
2790
- }));
2791
- function Ba() {
2792
- return `#${Z(this.r)}${Z(this.g)}${Z(this.b)}`;
2793
- }
2794
- function Va() {
2795
- return `#${Z(this.r)}${Z(this.g)}${Z(this.b)}${Z((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;
2796
- }
2797
- function Ha() {
2798
- let e = Ua(this.opacity);
2799
- return `${e === 1 ? "rgb(" : "rgba("}${X(this.r)}, ${X(this.g)}, ${X(this.b)}${e === 1 ? ")" : `, ${e})`}`;
2800
- }
2801
- function Ua(e) {
2802
- return isNaN(e) ? 1 : Math.max(0, Math.min(1, e));
2803
- }
2804
- function X(e) {
2805
- return Math.max(0, Math.min(255, Math.round(e) || 0));
2806
- }
2807
- function Z(e) {
2808
- return e = X(e), (e < 16 ? "0" : "") + e.toString(16);
2809
- }
2810
- function Wa(e, t, n, r) {
2811
- return r <= 0 ? e = t = n = NaN : n <= 0 || n >= 1 ? e = t = NaN : t <= 0 && (e = NaN), new Q(e, t, n, r);
2812
- }
2813
- function Ga(e) {
2814
- if (e instanceof Q) return new Q(e.h, e.s, e.l, e.opacity);
2815
- if (e instanceof G || (e = Fa(e)), !e) return new Q();
2816
- if (e instanceof Q) return e;
2817
- e = e.rgb();
2818
- var t = e.r / 255, n = e.g / 255, r = e.b / 255, i = Math.min(t, n, r), a = Math.max(t, n, r), o = NaN, s = a - i, c = (a + i) / 2;
2819
- return s ? (o = t === a ? (n - r) / s + (n < r) * 6 : n === a ? (r - t) / s + 2 : (t - n) / s + 4, s /= c < .5 ? a + i : 2 - a - i, o *= 60) : s = c > 0 && c < 1 ? 0 : o, new Q(o, s, c, e.opacity);
2820
- }
2821
- function Ka(e, t, n, r) {
2822
- return arguments.length === 1 ? Ga(e) : new Q(e, t, n, r ?? 1);
2823
- }
2824
- function Q(e, t, n, r) {
2825
- this.h = +e, this.s = +t, this.l = +n, this.opacity = +r;
2826
- }
2827
- ya(Q, Ka, ba(G, {
2828
- brighter(e) {
2829
- return e = e == null ? xa : xa ** +e, new Q(this.h, this.s, this.l * e, this.opacity);
2830
- },
2831
- darker(e) {
2832
- return e = e == null ? K : K ** +e, new Q(this.h, this.s, this.l * e, this.opacity);
2833
- },
2834
- rgb() {
2835
- var e = this.h % 360 + (this.h < 0) * 360, t = isNaN(e) || isNaN(this.s) ? 0 : this.s, n = this.l, r = n + (n < .5 ? n : 1 - n) * t, i = 2 * n - r;
2836
- return new Y(Ya(e >= 240 ? e - 240 : e + 120, i, r), Ya(e, i, r), Ya(e < 120 ? e + 240 : e - 120, i, r), this.opacity);
2837
- },
2838
- clamp() {
2839
- return new Q(qa(this.h), Ja(this.s), Ja(this.l), Ua(this.opacity));
2840
- },
2841
- displayable() {
2842
- return (0 <= this.s && this.s <= 1 || isNaN(this.s)) && 0 <= this.l && this.l <= 1 && 0 <= this.opacity && this.opacity <= 1;
2843
- },
2844
- formatHsl() {
2845
- let e = Ua(this.opacity);
2846
- return `${e === 1 ? "hsl(" : "hsla("}${qa(this.h)}, ${Ja(this.s) * 100}%, ${Ja(this.l) * 100}%${e === 1 ? ")" : `, ${e})`}`;
2847
- }
2848
- }));
2849
- function qa(e) {
2850
- return e = (e || 0) % 360, e < 0 ? e + 360 : e;
2851
- }
2852
- function Ja(e) {
2853
- return Math.max(0, Math.min(1, e || 0));
2854
- }
2855
- function Ya(e, t, n) {
2856
- return (e < 60 ? t + (n - t) * e / 60 : e < 180 ? n : e < 240 ? t + (n - t) * (240 - e) / 60 : t) * 255;
2857
- }
2858
- //#endregion
2859
- //#region ../core/src/view/renderingContext/clipOptions.js
2860
- function Xa(e) {
2861
- if (e.clip) return e.clip;
2862
- if (e.clipRect) return {
2863
- rect: e.clipRect,
2864
- clipX: !0,
2865
- clipY: !0
2866
- };
2867
- }
2868
- function Za(e, t) {
2869
- return e === t ? !0 : !e || !t ? !1 : e.clipX === t.clipX && e.clipY === t.clipY && e.rect.equals(t.rect);
2870
- }
2871
- function $(e, t, n) {
2872
- return t || n ? {
2873
- rect: e,
2874
- clipX: t,
2875
- clipY: n
2876
- } : void 0;
2877
- }
2878
- function Qa(e, t) {
2879
- return t ? t.clipX && t.clipY ? e.intersect(t.rect) : t.clipX ? e.intersectX(t.rect) : t.clipY ? e.intersectY(t.rect) : e : e;
2880
- }
2881
- function $a(e, t) {
2882
- if (!e) return t;
2883
- if (!t) return e;
2884
- let n = e.clipX || t.clipX, r = e.clipY || t.clipY, i = e.clipX && t.clipX ? e.rect.intersectX(t.rect) : t.clipX ? t.rect : e.rect, a = e.clipY && t.clipY ? e.rect.intersectY(t.rect) : t.clipY ? t.rect : e.rect;
2885
- return $(e.rect.modify({
2886
- x: () => i.x,
2887
- y: () => a.y,
2888
- width: () => i.width,
2889
- height: () => a.height
2890
- }), n, r);
2891
- }
2892
- function eo(e, t) {
2893
- if (e === !0) return $(t, !0, !0);
2894
- if (e === "x") return $(t, !0, !1);
2895
- if (e === "y") return $(t, !1, !0);
2896
- }
2897
- function to(e) {
2898
- let t = e.mark;
2899
- if (t) {
2900
- let e = t.properties.clip;
2901
- return {
2902
- clipX: e === !0 || e === "x",
2903
- clipY: e === !0 || e === "y"
2904
- };
2905
- }
2906
- let n = !1, r = !0, i = !0;
2907
- return e.visit((e) => {
2908
- let t = e.mark;
2909
- if (t) {
2910
- n = !0;
2911
- let e = t.properties.clip;
2912
- r &&= e === !0 || e === "x", i &&= e === !0 || e === "y";
2913
- }
2914
- }), {
2915
- clipX: n && r,
2916
- clipY: n && i
2917
- };
2918
- }
2919
- function no(e, t, n) {
2920
- if (t !== "never") return $a(e, eo(t, n));
2921
- }
2922
- //#endregion
2923
- export { Ti as $, Fe as $t, Qi as A, At, ra as B, ut as Bt, ua as C, oe as Cn, an as Ct, la as D, ln as Dt, pa as E, en as Et, Zi as F, Tt as Ft, Ki as G, ct as Gt, ea as H, mt as Ht, oa as I, yt as It, Bi as J, nt as Jt, sa as K, st as Kt, $i as L, vt as Lt, Wi as M, xt as Mt, Ui as N, Ct as Nt, ca as O, kt as Ot, Gi as P, St as Pt, Li as Q, Le as Qt, ia as R, x as Rt, da as S, v as Sn, on as St, _a as T, se as Tn, Gt as Tt, Yi as U, pt as Ut, aa as V, ft as Vt, Xi as W, ot as Wt, Hi as X, We as Xt, Vi as Y, rt as Yt, ki as Z, Be as Zt, ba as _, ie as _n, gn as _t, to as a, le as an, Yt as at, W as b, s as bn, Jt as bt, G as c, u as cn, Ht as ct, Fa as d, ye as dn, pn as dt, Ie as en, wi as et, K as f, d as fn, Kt as ft, ya as g, re as gn, C as gt, Ra as h, ne as hn, hn as ht, $ as i, t as in, qt as it, qi as j, wt as jt, na as k, Pt as kt, Y as l, ve as ln, cn as lt, za as m, xe as mn, Xt as mt, Za as n, Te as nn, zt as nt, Xa as o, fe as on, yn as ot, Ka as p, b as pn, _n as pt, Ji as q, at as qt, $a as r, Ce as rn, Lt as rt, no as s, o as sn, Vt as st, Qa as t, Pe as tn, Ci as tt, xa as u, ue as un, mn as ut, ha as v, f as vn, Zt as vt, va as w, y as wn, fn as wt, fa as x, we as xn, sn as xt, ma as y, Se as yn, S as yt, ta as z, ht as zt };