@genome-spy/app 0.85.0 → 0.87.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 (58) hide show
  1. package/README.md +28 -0
  2. package/dist/{agentApi-Cz0hCnVp.js → agentApi-BZ1JCo1N.js} +7174 -8484
  3. package/dist/agentApi.es.js +3312 -3575
  4. package/dist/agentShared.es.js +14 -13
  5. package/dist/canvas2d-B_PnIof-.js +620 -0
  6. package/dist/canvas2d-Cafq5v-N.js +620 -0
  7. package/dist/{arrayUtils-LJpQOu-U.js → clipOptions-D6eh9T-_.js} +1060 -634
  8. package/dist/{paramUtils-BYI4rwyL.js → clipOptions-H68pJyEZ.js} +940 -514
  9. package/dist/{debug-CgDtmspT.js → debug-BGzgZmyk.js} +8 -8
  10. package/dist/{debug-BvCZWumf.js → debug-UYKZLNh4.js} +8 -8
  11. package/dist/index.es.js +2983 -2916
  12. package/dist/index.js +2006 -1997
  13. package/dist/indexer-Di57GyxX.js +72 -0
  14. package/dist/indexer-o6Hpg4nN.js +72 -0
  15. package/dist/layoutResult-D50MSHXR.js +97 -0
  16. package/dist/nativeText-D9SoxpaD.js +934 -0
  17. package/dist/nativeText-DAjvkrzc.js +934 -0
  18. package/dist/performanceProfiler-CPLEjApa.js +20 -0
  19. package/dist/rasterExport-DzldLv6E.js +44 -0
  20. package/dist/rasterExport-IAbJwi8F.js +44 -0
  21. package/dist/rasterImage-B4rPLaW9.js +18 -0
  22. package/dist/rasterization-CFogVB3B.js +50 -0
  23. package/dist/rectangle-DKnrAmKs.js +142 -0
  24. package/dist/renderCanvas2D-BJ93Ptqj.js +277 -0
  25. package/dist/renderCanvas2D-yJ1IrDcX.js +277 -0
  26. package/dist/schema.json +11685 -4428
  27. package/dist/{svg-yFj875aX.js → svg-BRpl2Xub.js} +412 -449
  28. package/dist/{svg-CCu8kYy2.js → svg-DJuqHIyc.js} +399 -436
  29. package/dist/svgRasterizer-CGZQ5njV.js +40 -0
  30. package/dist/svgRasterizer-PAoqLn1j.js +40 -0
  31. package/dist/vega-scale-BGC53c22.js +2403 -0
  32. package/dist/vega-scale-DdW2NzQ3.js +2403 -0
  33. package/dist/viewError-BiR9VCgL.js +29 -0
  34. package/dist/{viewIdentityRegistry-BUdkK9zT.js → viewIdentityRegistry-D4p067HU.js} +1 -1
  35. package/dist/{viewIdentityRegistry-D3oPbN4O.js → viewIdentityRegistry-Dc2hXYsO.js} +1 -1
  36. package/dist/viewSelectors-DNXnGwEW.js +2015 -0
  37. package/dist/viewSelectors-DYYlOt91.js +2015 -0
  38. package/dist/viewUtils-EdhZTPrJ.js +6448 -0
  39. package/dist/webgl-C53DwzVT.js +4127 -0
  40. package/dist/webgl-CdgNFlJk.js +4127 -0
  41. package/package.json +7 -6
  42. package/dist/bmFontMetrics-CuNB-kNN.js +0 -31
  43. package/dist/canvas2d-DoAXEiF9.js +0 -309
  44. package/dist/canvas2d-f5jl4A5D.js +0 -310
  45. package/dist/clipOptions-gqdb3fvW.js +0 -43
  46. package/dist/color-W5zffv-z.js +0 -335
  47. package/dist/framebufferReadback-CCLOjStu.js +0 -148
  48. package/dist/framebufferReadback-THWwFqs8.js +0 -1994
  49. package/dist/nativeText-DMO8gLt7.js +0 -806
  50. package/dist/nativeText-m5AUINMq.js +0 -806
  51. package/dist/twgl-full.module-DB2UdP1k.js +0 -1849
  52. package/dist/viewRenderingContext-HtpqwS_x.js +0 -120
  53. package/dist/viewSelectors-DGCspRN3.js +0 -4198
  54. package/dist/viewSelectors-U5oLCLHV.js +0 -4195
  55. package/dist/viewUtils-Dg4RA40Q.js +0 -7503
  56. package/dist/warning-DRGdb6BF.js +0 -59
  57. package/dist/webgl-Ci6ZhCCf.js +0 -54
  58. package/dist/webgl-Dpz8a3TI.js +0 -53
@@ -1,4195 +0,0 @@
1
- import { n as e } from "./rolldown-runtime-DF993M8W.js";
2
- import { $ as t, At as n, Ht as r, Mt as i, Ot as a, Rt as o, Ut as s, Vt as c, X as l, Y as u, Yt as d, f, gt as p, ht as m, it as h, jt as g, kt as ee, ot as te, r as _, vt as v, x as ne, xt as y, yt as re } from "./arrayUtils-LJpQOu-U.js";
3
- import { a as ie, c as ae, d as oe, i as se, l as ce, n as le, o as ue, r as de, s as fe, t as pe, u as me } from "./color-W5zffv-z.js";
4
- import { a as he, t as ge } from "./clipOptions-gqdb3fvW.js";
5
- //#region ../core/src/view/layout/flexLayout.js
6
- function _e(e, t, { spacing: n, devicePixelRatio: r, offset: i, reverse: a } = {}) {
7
- n ||= 0, i ||= 0;
8
- let o = Oe(e, t, n), s = 0, c = 0;
9
- for (let t = 0; t < e.length; t++) s += o[t], b(e[t]) || c++;
10
- let l = s + Math.max(0, c - 1) * n, u = r === void 0 ? (e) => e : (e) => Math.round(e * r) / r, d = 0, f = [], p = (e) => {
11
- let t = d;
12
- if (!t) return;
13
- let r = (e ? n : 0) * (a ? -1 : 1);
14
- m -= r;
15
- for (let e = 0; e < t; e++) f.push({
16
- location: m + (e + 1) / (t + 1) * r,
17
- size: 0
18
- });
19
- m += r, d = 0;
20
- }, m = a ? Math.max(t, l) : 0 + i;
21
- if (e.length == 1 && b(e[0])) return [{
22
- location: m,
23
- size: 0
24
- }];
25
- for (let t = 0; t < e.length; t++) {
26
- let r = e[t];
27
- if (b(r)) d++;
28
- else {
29
- p(f.length > 0);
30
- let e = o[t];
31
- a && (m -= e), f.push({
32
- location: u(m),
33
- size: u(e)
34
- }), a ? m -= n : m += e + n;
35
- }
36
- }
37
- return m += a ? n : -n, p(!1), f;
38
- }
39
- function ve(e, { spacing: t } = { spacing: 0 }) {
40
- let n = 0;
41
- for (let r of e) n += Me(r) + (b(r) ? 0 : t);
42
- return Math.max(0, n - t);
43
- }
44
- function ye(e, t, { spacing: n = 0 } = {}) {
45
- let r = [], i = [], a = 0, o = 0;
46
- for (let [s, c] of e.entries()) {
47
- let e = Me(c), l = !b(c), u = o && l ? n : 0;
48
- i.length && a + u + e > t && (r.push(i), i = [], a = 0, o = 0), i.push(s), a += (o && l ? n : 0) + e, o += +!!l;
49
- }
50
- return i.length && r.push(i), r;
51
- }
52
- function be(e) {
53
- let t = 0, n = 0, r = 0, i, a = !0;
54
- for (let o of e) {
55
- t = Math.max(t, o.px ?? 0), n = Math.max(n, o.grow ?? 0), r = Math.max(r, Me(o));
56
- let e = Ne(o);
57
- e === void 0 ? a = !1 : i = i === void 0 ? e : Math.max(i, e);
58
- }
59
- return Ie({
60
- px: t,
61
- grow: n,
62
- minPx: r,
63
- maxPx: a ? i : void 0
64
- });
65
- }
66
- function xe(e) {
67
- let t = {
68
- px: 0,
69
- grow: 0,
70
- minPx: 0,
71
- maxPx: 0
72
- }, n = !0;
73
- for (let r of e) {
74
- t.px += x(r.px), t.grow += x(r.grow), t.minPx += Me(r);
75
- let e = Ne(r);
76
- e === void 0 ? n = !1 : t.maxPx += e;
77
- }
78
- return n || delete t.maxPx, Ie(t);
79
- }
80
- var Se = class e {
81
- constructor(e, t) {
82
- this.width = e, this.height = t;
83
- }
84
- addPadding(e) {
85
- return this.#e(e.width, e.height);
86
- }
87
- subtractPadding(e) {
88
- return this.#e(-e.width, -e.height);
89
- }
90
- #e(t, n) {
91
- return new e(Fe(this.width, t), Fe(this.height, n));
92
- }
93
- isGrowing() {
94
- return !!(this.width.grow || this.height.grow);
95
- }
96
- }, Ce = Object.freeze({
97
- px: 0,
98
- grow: 0
99
- }), we = new Se(Ce, Ce);
100
- function b(e) {
101
- return !e.px && !e.grow && !e.minPx;
102
- }
103
- function Te(e, t) {
104
- return !e || !t ? !1 : e.px === t.px && e.grow === t.grow && e.minPx === t.minPx && e.maxPx === t.maxPx;
105
- }
106
- function x(e) {
107
- return e || 0;
108
- }
109
- function Ee(e) {
110
- return e && (c(e.px) || c(e.grow) || c(e.minPx) || c(e.maxPx));
111
- }
112
- function De(e) {
113
- if (Dc(e)) throw Error("parseSizeDef does not accept step-based sizes.");
114
- if (Ee(e)) return Ae(e), Ie(e);
115
- if (c(e)) return {
116
- px: e,
117
- grow: 0
118
- };
119
- if (e === "container" || !e) return {
120
- px: 0,
121
- grow: 1
122
- };
123
- throw Error(`Invalid sizeDef: ${e}`);
124
- }
125
- function Oe(e, t, n) {
126
- let r = !1;
127
- for (let t of e) Ae(t), r ||= Pe(t);
128
- if (!r) return ke(e, t, n);
129
- let i = Array(e.length).fill(0), a = [];
130
- for (let t = 0; t < e.length; t++) b(e[t]) || a.push(t);
131
- let o = Math.max(0, a.length - 1) * n, s = Math.max(0, t - o), c = /* @__PURE__ */ new Set();
132
- for (let t of a) {
133
- let n = e[t];
134
- x(n.grow) || (i[t] = je(x(n.px), n), c.add(t));
135
- }
136
- for (;;) {
137
- let t = 0, n = 0, r = 0;
138
- for (let o of a) c.has(o) ? r += i[o] : (t += x(e[o].px), n += x(e[o].grow));
139
- if (!n) {
140
- for (let t of a) c.has(t) || (i[t] = je(x(e[t].px), e[t]), c.add(t));
141
- break;
142
- }
143
- let o = Math.max(0, s - r - t), l = 0, u = [], d = [];
144
- for (let t of a) {
145
- if (c.has(t)) continue;
146
- let r = e[t], a = x(r.px) + x(r.grow) / n * o, s = je(a, r);
147
- i[t] = s;
148
- let f = s - a;
149
- l += f, f > 0 ? u.push(t) : f < 0 && d.push(t);
150
- }
151
- if (!u.length && !d.length) break;
152
- if (l > 0) for (let e of u) c.add(e);
153
- else if (l < 0) for (let e of d) c.add(e);
154
- else for (let e of a) c.add(e);
155
- }
156
- return i;
157
- }
158
- function ke(e, t, n) {
159
- let r = 0, i = 0;
160
- for (let t of e) r += x(t.px) + (b(t) ? 0 : n), i += x(t.grow);
161
- r -= n;
162
- let a = Math.max(0, t - r), o = Array(e.length);
163
- for (let t = 0; t < e.length; t++) {
164
- let n = e[t];
165
- o[t] = b(n) ? 0 : x(n.px) + (i ? x(n.grow) / i * a : 0);
166
- }
167
- return o;
168
- }
169
- function Ae(e) {
170
- if (e.minPx !== void 0 && e.maxPx !== void 0 && e.minPx > e.maxPx) throw Error("SizeDef minPx cannot be greater than maxPx.");
171
- }
172
- function je(e, t) {
173
- return Math.min(Math.max(e, t.minPx ?? 0), t.maxPx ?? Infinity);
174
- }
175
- function Me(e) {
176
- return je(x(e.px), e);
177
- }
178
- function Ne(e) {
179
- return e.maxPx ?? (x(e.grow) ? void 0 : Me(e));
180
- }
181
- function Pe(e) {
182
- return e.minPx !== void 0 || e.maxPx !== void 0;
183
- }
184
- function Fe(e, t) {
185
- return Ie({
186
- px: (e.px ?? 0) + t,
187
- grow: e.grow,
188
- minPx: e.minPx === void 0 ? void 0 : Math.max(0, e.minPx + t),
189
- maxPx: e.maxPx === void 0 ? void 0 : Math.max(0, e.maxPx + t)
190
- });
191
- }
192
- function Ie(e) {
193
- let t = {}, n = e.px !== void 0, r = e.grow !== void 0, i = Pe(e);
194
- return e.px ? t.px = e.px : e.px === 0 && (t.px = 0), e.grow ? t.grow = e.grow : e.grow === 0 ? t.grow = 0 : !n && !r && i && (t.grow = 1), e.minPx && e.minPx > x(e.px) && (t.minPx = e.minPx), e.maxPx !== void 0 && (x(t.grow) || e.maxPx < x(e.px)) && (t.maxPx = e.maxPx), t;
195
- }
196
- //#endregion
197
- //#region ../core/src/view/layout/padding.js
198
- var Le = class e {
199
- constructor(e, t, n, r) {
200
- this.top = e || 0, this.right = t || 0, this.bottom = n || 0, this.left = r || 0;
201
- }
202
- get width() {
203
- return this.left + this.right;
204
- }
205
- get height() {
206
- return this.top + this.bottom;
207
- }
208
- expand(t) {
209
- return t <= 0 ? this : new e(this.top + t, this.right + t, this.bottom + t, this.left + t);
210
- }
211
- add(t) {
212
- return new e(this.top + t.top, this.right + t.right, this.bottom + t.bottom, this.left + t.left);
213
- }
214
- subtract(t) {
215
- return new e(this.top - t.top, this.right - t.right, this.bottom - t.bottom, this.left - t.left);
216
- }
217
- union(t) {
218
- return new e(Math.max(this.top, t.top), Math.max(this.right, t.right), Math.max(this.bottom, t.bottom), Math.max(this.left, t.left));
219
- }
220
- getHorizontal() {
221
- return new e(0, this.right, 0, this.left);
222
- }
223
- getVertical() {
224
- return new e(this.top, 0, this.bottom, 0);
225
- }
226
- get horizontalTotal() {
227
- return this.left + this.right;
228
- }
229
- get verticalTotal() {
230
- return this.top + this.bottom;
231
- }
232
- static createFromConfig(e) {
233
- return typeof e == "number" ? this.createUniformPadding(e) : e ? this.createFromRecord(e) : ze;
234
- }
235
- static createFromRecord(t) {
236
- return new e(t.top, t.right, t.bottom, t.left);
237
- }
238
- static zero() {
239
- return ze;
240
- }
241
- static createUniformPadding(t) {
242
- return new e(t, t, t, t);
243
- }
244
- };
245
- function Re(e, t) {
246
- return t ? new Le(t.top === !1 ? 0 : e.top, t.right === !1 ? 0 : e.right, t.bottom === !1 ? 0 : e.bottom, t.left === !1 ? 0 : e.left) : e;
247
- }
248
- var ze = Le.createUniformPadding(0);
249
- Object.freeze(ze);
250
- //#endregion
251
- //#region ../core/src/utils/propertyCacher.js
252
- var Be = Symbol("cacheMap");
253
- function Ve(e, t, n) {
254
- let r = Ge(e).get(t);
255
- return r === void 0 && (r = n(t), Ge(e).set(t, r)), r;
256
- }
257
- function He(e, t) {
258
- Ge(e).delete(t);
259
- }
260
- function Ue(e, t) {
261
- let n = Ge(e);
262
- for (let e of n.keys()) e.startsWith(t) && n.delete(e);
263
- Ge(e).delete(t);
264
- }
265
- function We(e) {
266
- e[Be] = /* @__PURE__ */ new Map();
267
- }
268
- function Ge(e) {
269
- return e[Be] || We(e), e[Be];
270
- }
271
- //#endregion
272
- //#region ../../node_modules/d3-array/src/ascending.js
273
- function S(e, t) {
274
- return e == null || t == null ? NaN : e < t ? -1 : e > t ? 1 : e >= t ? 0 : NaN;
275
- }
276
- //#endregion
277
- //#region ../../node_modules/d3-array/src/descending.js
278
- function Ke(e, t) {
279
- return e == null || t == null ? NaN : t < e ? -1 : t > e ? 1 : t >= e ? 0 : NaN;
280
- }
281
- //#endregion
282
- //#region ../../node_modules/d3-array/src/bisector.js
283
- function qe(e) {
284
- let t, n, r;
285
- e.length === 2 ? (t = e === S || e === Ke ? e : Je, n = e, r = e) : (t = S, n = (t, n) => S(e(t), n), r = (t, n) => e(t) - n);
286
- function i(e, r, i = 0, a = e.length) {
287
- if (i < a) {
288
- if (t(r, r) !== 0) return a;
289
- do {
290
- let t = i + a >>> 1;
291
- n(e[t], r) < 0 ? i = t + 1 : a = t;
292
- } while (i < a);
293
- }
294
- return i;
295
- }
296
- function a(e, r, i = 0, a = e.length) {
297
- if (i < a) {
298
- if (t(r, r) !== 0) return a;
299
- do {
300
- let t = i + a >>> 1;
301
- n(e[t], r) <= 0 ? i = t + 1 : a = t;
302
- } while (i < a);
303
- }
304
- return i;
305
- }
306
- function o(e, t, n = 0, a = e.length) {
307
- let o = i(e, t, n, a - 1);
308
- return o > n && r(e[o - 1], t) > -r(e[o], t) ? o - 1 : o;
309
- }
310
- return {
311
- left: i,
312
- center: o,
313
- right: a
314
- };
315
- }
316
- function Je() {
317
- return 0;
318
- }
319
- //#endregion
320
- //#region ../../node_modules/d3-array/src/number.js
321
- function Ye(e) {
322
- return e === null ? NaN : +e;
323
- }
324
- function* Xe(e, t) {
325
- if (t === void 0) for (let t of e) t != null && (t = +t) >= t && (yield t);
326
- else {
327
- let n = -1;
328
- for (let r of e) (r = t(r, ++n, e)) != null && (r = +r) >= r && (yield r);
329
- }
330
- }
331
- //#endregion
332
- //#region ../../node_modules/d3-array/src/bisect.js
333
- var Ze = qe(S), C = Ze.right, Qe = Ze.left;
334
- qe(Ye).center;
335
- //#endregion
336
- //#region ../../node_modules/d3-array/src/permute.js
337
- function $e(e, t) {
338
- return Array.from(t, (t) => e[t]);
339
- }
340
- //#endregion
341
- //#region ../../node_modules/d3-array/src/sort.js
342
- function et(e, ...t) {
343
- if (typeof e[Symbol.iterator] != "function") throw TypeError("values is not iterable");
344
- e = Array.from(e);
345
- let [n] = t;
346
- if (n && n.length !== 2 || t.length > 1) {
347
- let r = Uint32Array.from(e, (e, t) => t);
348
- return t.length > 1 ? (t = t.map((t) => e.map(t)), r.sort((e, n) => {
349
- for (let r of t) {
350
- let t = nt(r[e], r[n]);
351
- if (t) return t;
352
- }
353
- })) : (n = e.map(n), r.sort((e, t) => nt(n[e], n[t]))), $e(e, r);
354
- }
355
- return e.sort(tt(n));
356
- }
357
- function tt(e = S) {
358
- if (e === S) return nt;
359
- if (typeof e != "function") throw TypeError("compare is not a function");
360
- return (t, n) => {
361
- let r = e(t, n);
362
- return r || r === 0 ? r : (e(n, n) === 0) - (e(t, t) === 0);
363
- };
364
- }
365
- function nt(e, t) {
366
- return (e == null || !(e >= e)) - (t == null || !(t >= t)) || (e < t ? -1 : +(e > t));
367
- }
368
- //#endregion
369
- //#region ../../node_modules/d3-array/src/ticks.js
370
- var rt = Math.sqrt(50), it = Math.sqrt(10), at = Math.sqrt(2);
371
- function ot(e, t, n) {
372
- let r = (t - e) / Math.max(0, n), i = Math.floor(Math.log10(r)), a = r / 10 ** i, o = a >= rt ? 10 : a >= it ? 5 : a >= at ? 2 : 1, s, c, l;
373
- 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 ? ot(e, t, n * 2) : [
374
- s,
375
- c,
376
- l
377
- ];
378
- }
379
- function st(e, t, n) {
380
- if (t = +t, e = +e, n = +n, !(n > 0)) return [];
381
- if (e === t) return [e];
382
- let r = t < e, [i, a, o] = r ? ot(t, e, n) : ot(e, t, n);
383
- if (!(a >= i)) return [];
384
- let s = a - i + 1, c = Array(s);
385
- if (r) if (o < 0) for (let e = 0; e < s; ++e) c[e] = (a - e) / -o;
386
- else for (let e = 0; e < s; ++e) c[e] = (a - e) * o;
387
- else if (o < 0) for (let e = 0; e < s; ++e) c[e] = (i + e) / -o;
388
- else for (let e = 0; e < s; ++e) c[e] = (i + e) * o;
389
- return c;
390
- }
391
- function ct(e, t, n) {
392
- return t = +t, e = +e, n = +n, ot(e, t, n)[2];
393
- }
394
- function lt(e, t, n) {
395
- t = +t, e = +e, n = +n;
396
- let r = t < e, i = r ? ct(t, e, n) : ct(e, t, n);
397
- return (r ? -1 : 1) * (i < 0 ? 1 / -i : i);
398
- }
399
- //#endregion
400
- //#region ../../node_modules/d3-array/src/max.js
401
- function ut(e, t) {
402
- let n;
403
- if (t === void 0) for (let t of e) t != null && (n < t || n === void 0 && t >= t) && (n = t);
404
- else {
405
- let r = -1;
406
- for (let i of e) (i = t(i, ++r, e)) != null && (n < i || n === void 0 && i >= i) && (n = i);
407
- }
408
- return n;
409
- }
410
- //#endregion
411
- //#region ../../node_modules/d3-array/src/min.js
412
- function dt(e, t) {
413
- let n;
414
- if (t === void 0) for (let t of e) t != null && (n > t || n === void 0 && t >= t) && (n = t);
415
- else {
416
- let r = -1;
417
- for (let i of e) (i = t(i, ++r, e)) != null && (n > i || n === void 0 && i >= i) && (n = i);
418
- }
419
- return n;
420
- }
421
- //#endregion
422
- //#region ../../node_modules/d3-array/src/quickselect.js
423
- function ft(e, t, n = 0, r = Infinity, i) {
424
- if (t = Math.floor(t), n = Math.floor(Math.max(0, n)), r = Math.floor(Math.min(e.length - 1, r)), !(n <= t && t <= r)) return e;
425
- for (i = i === void 0 ? nt : tt(i); r > n;) {
426
- if (r - n > 600) {
427
- let a = r - n + 1, o = t - n + 1, s = Math.log(a), c = .5 * Math.exp(2 * s / 3), l = .5 * Math.sqrt(s * c * (a - c) / a) * (o - a / 2 < 0 ? -1 : 1), u = Math.max(n, Math.floor(t - o * c / a + l)), d = Math.min(r, Math.floor(t + (a - o) * c / a + l));
428
- ft(e, t, u, d, i);
429
- }
430
- let a = e[t], o = n, s = r;
431
- for (pt(e, n, t), i(e[r], a) > 0 && pt(e, n, r); o < s;) {
432
- for (pt(e, o, s), ++o, --s; i(e[o], a) < 0;) ++o;
433
- for (; i(e[s], a) > 0;) --s;
434
- }
435
- i(e[n], a) === 0 ? pt(e, n, s) : (++s, pt(e, s, r)), s <= t && (n = s + 1), t <= s && (r = s - 1);
436
- }
437
- return e;
438
- }
439
- function pt(e, t, n) {
440
- let r = e[t];
441
- e[t] = e[n], e[n] = r;
442
- }
443
- //#endregion
444
- //#region ../../node_modules/d3-array/src/quantile.js
445
- function mt(e, t, n) {
446
- if (e = Float64Array.from(Xe(e, n)), !(!(r = e.length) || isNaN(t = +t))) {
447
- if (t <= 0 || r < 2) return dt(e);
448
- if (t >= 1) return ut(e);
449
- var r, i = (r - 1) * t, a = Math.floor(i), o = ut(ft(e, a).subarray(0, a + 1));
450
- return o + (dt(e.subarray(a + 1)) - o) * (i - a);
451
- }
452
- }
453
- function ht(e, t, n = Ye) {
454
- if (!(!(r = e.length) || isNaN(t = +t))) {
455
- if (t <= 0 || r < 2) return +n(e[0], 0, e);
456
- if (t >= 1) return +n(e[r - 1], r - 1, e);
457
- var r, i = (r - 1) * t, a = Math.floor(i), o = +n(e[a], a, e);
458
- return o + (+n(e[a + 1], a + 1, e) - o) * (i - a);
459
- }
460
- }
461
- //#endregion
462
- //#region ../../node_modules/d3-scale/src/init.js
463
- function w(e, t) {
464
- switch (arguments.length) {
465
- case 0: break;
466
- case 1:
467
- this.range(e);
468
- break;
469
- default:
470
- this.range(t).domain(e);
471
- break;
472
- }
473
- return this;
474
- }
475
- function T(e, t) {
476
- switch (arguments.length) {
477
- case 0: break;
478
- case 1:
479
- typeof e == "function" ? this.interpolator(e) : this.range(e);
480
- break;
481
- default:
482
- this.domain(e), typeof t == "function" ? this.interpolator(t) : this.range(t);
483
- break;
484
- }
485
- return this;
486
- }
487
- //#endregion
488
- //#region ../../node_modules/d3-scale/src/ordinal.js
489
- var gt = Symbol("implicit");
490
- function _t() {
491
- var e = new oe(), t = [], n = [], r = gt;
492
- function i(i) {
493
- let a = e.get(i);
494
- if (a === void 0) {
495
- if (r !== gt) return r;
496
- e.set(i, a = t.push(i) - 1);
497
- }
498
- return n[a % n.length];
499
- }
500
- return i.domain = function(n) {
501
- if (!arguments.length) return t.slice();
502
- t = [], e = new oe();
503
- for (let r of n) e.has(r) || e.set(r, t.push(r) - 1);
504
- return i;
505
- }, i.range = function(e) {
506
- return arguments.length ? (n = Array.from(e), i) : n.slice();
507
- }, i.unknown = function(e) {
508
- return arguments.length ? (r = e, i) : r;
509
- }, i.copy = function() {
510
- return _t(t, n).unknown(r);
511
- }, w.apply(i, arguments), i;
512
- }
513
- //#endregion
514
- //#region ../../node_modules/d3-color/src/math.js
515
- var vt = Math.PI / 180, yt = 180 / Math.PI, bt = 18, xt = .96422, St = 1, Ct = .82521, wt = 4 / 29, Tt = 6 / 29, Et = 3 * Tt * Tt, Dt = Tt * Tt * Tt;
516
- function Ot(e) {
517
- if (e instanceof E) return new E(e.l, e.a, e.b, e.opacity);
518
- if (e instanceof D) return It(e);
519
- e instanceof le || (e = ae(e));
520
- var t = Nt(e.r), n = Nt(e.g), r = Nt(e.b), i = At((.2225045 * t + .7168786 * n + .0606169 * r) / St), a, o;
521
- return t === n && n === r ? a = o = i : (a = At((.4360747 * t + .3850649 * n + .1430804 * r) / xt), o = At((.0139322 * t + .0971045 * n + .7141733 * r) / Ct)), new E(116 * i - 16, 500 * (a - i), 200 * (i - o), e.opacity);
522
- }
523
- function kt(e, t, n, r) {
524
- return arguments.length === 1 ? Ot(e) : new E(e, t, n, r ?? 1);
525
- }
526
- function E(e, t, n, r) {
527
- this.l = +e, this.a = +t, this.b = +n, this.opacity = +r;
528
- }
529
- ce(E, kt, me(pe, {
530
- brighter(e) {
531
- return new E(this.l + bt * (e ?? 1), this.a, this.b, this.opacity);
532
- },
533
- darker(e) {
534
- return new E(this.l - bt * (e ?? 1), this.a, this.b, this.opacity);
535
- },
536
- rgb() {
537
- var e = (this.l + 16) / 116, t = isNaN(this.a) ? e : e + this.a / 500, n = isNaN(this.b) ? e : e - this.b / 200;
538
- return t = xt * jt(t), e = St * jt(e), n = Ct * jt(n), new le(Mt(3.1338561 * t - 1.6168667 * e - .4906146 * n), Mt(-.9787684 * t + 1.9161415 * e + .033454 * n), Mt(.0719453 * t - .2289914 * e + 1.4052427 * n), this.opacity);
539
- }
540
- }));
541
- function At(e) {
542
- return e > Dt ? e ** (1 / 3) : e / Et + wt;
543
- }
544
- function jt(e) {
545
- return e > Tt ? e * e * e : Et * (e - wt);
546
- }
547
- function Mt(e) {
548
- return 255 * (e <= .0031308 ? 12.92 * e : 1.055 * e ** (1 / 2.4) - .055);
549
- }
550
- function Nt(e) {
551
- return (e /= 255) <= .04045 ? e / 12.92 : ((e + .055) / 1.055) ** 2.4;
552
- }
553
- function Pt(e) {
554
- if (e instanceof D) return new D(e.h, e.c, e.l, e.opacity);
555
- if (e instanceof E || (e = Ot(e)), e.a === 0 && e.b === 0) return new D(NaN, 0 < e.l && e.l < 100 ? 0 : NaN, e.l, e.opacity);
556
- var t = Math.atan2(e.b, e.a) * yt;
557
- return new D(t < 0 ? t + 360 : t, Math.sqrt(e.a * e.a + e.b * e.b), e.l, e.opacity);
558
- }
559
- function Ft(e, t, n, r) {
560
- return arguments.length === 1 ? Pt(e) : new D(e, t, n, r ?? 1);
561
- }
562
- function D(e, t, n, r) {
563
- this.h = +e, this.c = +t, this.l = +n, this.opacity = +r;
564
- }
565
- function It(e) {
566
- if (isNaN(e.h)) return new E(e.l, 0, 0, e.opacity);
567
- var t = e.h * vt;
568
- return new E(e.l, Math.cos(t) * e.c, Math.sin(t) * e.c, e.opacity);
569
- }
570
- ce(D, Ft, me(pe, {
571
- brighter(e) {
572
- return new D(this.h, this.c, this.l + bt * (e ?? 1), this.opacity);
573
- },
574
- darker(e) {
575
- return new D(this.h, this.c, this.l - bt * (e ?? 1), this.opacity);
576
- },
577
- rgb() {
578
- return It(this).rgb();
579
- }
580
- }));
581
- //#endregion
582
- //#region ../../node_modules/d3-color/src/cubehelix.js
583
- var Lt = -.14861, Rt = 1.78277, zt = -.29227, Bt = -.90649, Vt = 1.97294, Ht = Vt * Bt, Ut = Vt * Rt, Wt = Rt * zt - Bt * Lt;
584
- function Gt(e) {
585
- if (e instanceof qt) return new qt(e.h, e.s, e.l, e.opacity);
586
- e instanceof le || (e = ae(e));
587
- var t = e.r / 255, n = e.g / 255, r = e.b / 255, i = (Wt * r + Ht * t - Ut * n) / (Wt + Ht - Ut), a = r - i, o = (Vt * (n - i) - zt * a) / Bt, s = Math.sqrt(o * o + a * a) / (Vt * i * (1 - i)), c = s ? Math.atan2(o, a) * yt - 120 : NaN;
588
- return new qt(c < 0 ? c + 360 : c, s, i, e.opacity);
589
- }
590
- function Kt(e, t, n, r) {
591
- return arguments.length === 1 ? Gt(e) : new qt(e, t, n, r ?? 1);
592
- }
593
- function qt(e, t, n, r) {
594
- this.h = +e, this.s = +t, this.l = +n, this.opacity = +r;
595
- }
596
- ce(qt, Kt, me(pe, {
597
- brighter(e) {
598
- return e = e == null ? de : de ** +e, new qt(this.h, this.s, this.l * e, this.opacity);
599
- },
600
- darker(e) {
601
- return e = e == null ? ie : ie ** +e, new qt(this.h, this.s, this.l * e, this.opacity);
602
- },
603
- rgb() {
604
- var e = isNaN(this.h) ? 0 : (this.h + 120) * vt, t = +this.l, n = isNaN(this.s) ? 0 : this.s * t * (1 - t), r = Math.cos(e), i = Math.sin(e);
605
- return new le(255 * (t + n * (Lt * r + Rt * i)), 255 * (t + n * (zt * r + Bt * i)), 255 * (t + Vt * r * n), this.opacity);
606
- }
607
- }));
608
- //#endregion
609
- //#region ../../node_modules/d3-interpolate/src/basis.js
610
- function Jt(e, t, n, r, i) {
611
- var a = e * e, o = a * e;
612
- return ((1 - 3 * e + 3 * a - o) * t + (4 - 6 * a + 3 * o) * n + (1 + 3 * e + 3 * a - 3 * o) * r + o * i) / 6;
613
- }
614
- function Yt(e) {
615
- var t = e.length - 1;
616
- return function(n) {
617
- var r = n <= 0 ? n = 0 : n >= 1 ? (n = 1, t - 1) : Math.floor(n * t), i = e[r], a = e[r + 1], o = r > 0 ? e[r - 1] : 2 * i - a, s = r < t - 1 ? e[r + 2] : 2 * a - i;
618
- return Jt((n - r / t) * t, o, i, a, s);
619
- };
620
- }
621
- //#endregion
622
- //#region ../../node_modules/d3-interpolate/src/basisClosed.js
623
- function Xt(e) {
624
- var t = e.length;
625
- return function(n) {
626
- var r = Math.floor(((n %= 1) < 0 ? ++n : n) * t), i = e[(r + t - 1) % t], a = e[r % t], o = e[(r + 1) % t], s = e[(r + 2) % t];
627
- return Jt((n - r / t) * t, i, a, o, s);
628
- };
629
- }
630
- //#endregion
631
- //#region ../../node_modules/d3-interpolate/src/constant.js
632
- var Zt = (e) => () => e;
633
- //#endregion
634
- //#region ../../node_modules/d3-interpolate/src/color.js
635
- function Qt(e, t) {
636
- return function(n) {
637
- return e + n * t;
638
- };
639
- }
640
- function $t(e, t, n) {
641
- return e **= +n, t = t ** +n - e, n = 1 / n, function(r) {
642
- return (e + r * t) ** +n;
643
- };
644
- }
645
- function en(e, t) {
646
- var n = t - e;
647
- return n ? Qt(e, n > 180 || n < -180 ? n - 360 * Math.round(n / 360) : n) : Zt(isNaN(e) ? t : e);
648
- }
649
- function tn(e) {
650
- return (e = +e) == 1 ? O : function(t, n) {
651
- return n - t ? $t(t, n, e) : Zt(isNaN(t) ? n : t);
652
- };
653
- }
654
- function O(e, t) {
655
- var n = t - e;
656
- return n ? Qt(e, n) : Zt(isNaN(e) ? t : e);
657
- }
658
- //#endregion
659
- //#region ../../node_modules/d3-interpolate/src/rgb.js
660
- var nn = (function e(t) {
661
- var n = tn(t);
662
- function r(e, t) {
663
- var r = n((e = fe(e)).r, (t = fe(t)).r), i = n(e.g, t.g), a = n(e.b, t.b), o = O(e.opacity, t.opacity);
664
- return function(t) {
665
- return e.r = r(t), e.g = i(t), e.b = a(t), e.opacity = o(t), e + "";
666
- };
667
- }
668
- return r.gamma = e, r;
669
- })(1);
670
- function rn(e) {
671
- return function(t) {
672
- var n = t.length, r = Array(n), i = Array(n), a = Array(n), o, s;
673
- for (o = 0; o < n; ++o) s = fe(t[o]), r[o] = s.r || 0, i[o] = s.g || 0, a[o] = s.b || 0;
674
- return r = e(r), i = e(i), a = e(a), s.opacity = 1, function(e) {
675
- return s.r = r(e), s.g = i(e), s.b = a(e), s + "";
676
- };
677
- };
678
- }
679
- var an = rn(Yt), on = rn(Xt);
680
- //#endregion
681
- //#region ../../node_modules/d3-interpolate/src/numberArray.js
682
- function sn(e, t) {
683
- t ||= [];
684
- var n = e ? Math.min(t.length, e.length) : 0, r = t.slice(), i;
685
- return function(a) {
686
- for (i = 0; i < n; ++i) r[i] = e[i] * (1 - a) + t[i] * a;
687
- return r;
688
- };
689
- }
690
- function cn(e) {
691
- return ArrayBuffer.isView(e) && !(e instanceof DataView);
692
- }
693
- //#endregion
694
- //#region ../../node_modules/d3-interpolate/src/array.js
695
- function ln(e, t) {
696
- return (cn(t) ? sn : un)(e, t);
697
- }
698
- function un(e, t) {
699
- var n = t ? t.length : 0, r = e ? Math.min(n, e.length) : 0, i = Array(r), a = Array(n), o;
700
- for (o = 0; o < r; ++o) i[o] = A(e[o], t[o]);
701
- for (; o < n; ++o) a[o] = t[o];
702
- return function(e) {
703
- for (o = 0; o < r; ++o) a[o] = i[o](e);
704
- return a;
705
- };
706
- }
707
- //#endregion
708
- //#region ../../node_modules/d3-interpolate/src/date.js
709
- function dn(e, t) {
710
- var n = /* @__PURE__ */ new Date();
711
- return e = +e, t = +t, function(r) {
712
- return n.setTime(e * (1 - r) + t * r), n;
713
- };
714
- }
715
- //#endregion
716
- //#region ../../node_modules/d3-interpolate/src/number.js
717
- function k(e, t) {
718
- return e = +e, t = +t, function(n) {
719
- return e * (1 - n) + t * n;
720
- };
721
- }
722
- //#endregion
723
- //#region ../../node_modules/d3-interpolate/src/object.js
724
- function fn(e, t) {
725
- var n = {}, r = {}, i;
726
- for (i in (typeof e != "object" || !e) && (e = {}), (typeof t != "object" || !t) && (t = {}), t) i in e ? n[i] = A(e[i], t[i]) : r[i] = t[i];
727
- return function(e) {
728
- for (i in n) r[i] = n[i](e);
729
- return r;
730
- };
731
- }
732
- //#endregion
733
- //#region ../../node_modules/d3-interpolate/src/string.js
734
- var pn = /[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g, mn = new RegExp(pn.source, "g");
735
- function hn(e) {
736
- return function() {
737
- return e;
738
- };
739
- }
740
- function gn(e) {
741
- return function(t) {
742
- return e(t) + "";
743
- };
744
- }
745
- function _n(e, t) {
746
- var n = pn.lastIndex = mn.lastIndex = 0, r, i, a, o = -1, s = [], c = [];
747
- for (e += "", t += ""; (r = pn.exec(e)) && (i = mn.exec(t));) (a = i.index) > n && (a = t.slice(n, a), s[o] ? s[o] += a : s[++o] = a), (r = r[0]) === (i = i[0]) ? s[o] ? s[o] += i : s[++o] = i : (s[++o] = null, c.push({
748
- i: o,
749
- x: k(r, i)
750
- })), n = mn.lastIndex;
751
- return n < t.length && (a = t.slice(n), s[o] ? s[o] += a : s[++o] = a), s.length < 2 ? c[0] ? gn(c[0].x) : hn(t) : (t = c.length, function(e) {
752
- for (var n = 0, r; n < t; ++n) s[(r = c[n]).i] = r.x(e);
753
- return s.join("");
754
- });
755
- }
756
- //#endregion
757
- //#region ../../node_modules/d3-interpolate/src/value.js
758
- function A(e, t) {
759
- var n = typeof t, r;
760
- return t == null || n === "boolean" ? Zt(t) : (n === "number" ? k : n === "string" ? (r = se(t)) ? (t = r, nn) : _n : t instanceof se ? nn : t instanceof Date ? dn : cn(t) ? sn : Array.isArray(t) ? un : typeof t.valueOf != "function" && typeof t.toString != "function" || isNaN(t) ? fn : k)(e, t);
761
- }
762
- //#endregion
763
- //#region ../../node_modules/d3-interpolate/src/discrete.js
764
- function vn(e) {
765
- var t = e.length;
766
- return function(n) {
767
- return e[Math.max(0, Math.min(t - 1, Math.floor(n * t)))];
768
- };
769
- }
770
- //#endregion
771
- //#region ../../node_modules/d3-interpolate/src/hue.js
772
- function yn(e, t) {
773
- var n = en(+e, +t);
774
- return function(e) {
775
- var t = n(e);
776
- return t - 360 * Math.floor(t / 360);
777
- };
778
- }
779
- //#endregion
780
- //#region ../../node_modules/d3-interpolate/src/round.js
781
- function bn(e, t) {
782
- return e = +e, t = +t, function(n) {
783
- return Math.round(e * (1 - n) + t * n);
784
- };
785
- }
786
- //#endregion
787
- //#region ../../node_modules/d3-interpolate/src/transform/decompose.js
788
- var xn = 180 / Math.PI, Sn = {
789
- translateX: 0,
790
- translateY: 0,
791
- rotate: 0,
792
- skewX: 0,
793
- scaleX: 1,
794
- scaleY: 1
795
- };
796
- function Cn(e, t, n, r, i, a) {
797
- var o, s, c;
798
- return (o = Math.sqrt(e * e + t * t)) && (e /= o, t /= o), (c = e * n + t * r) && (n -= e * c, r -= t * c), (s = Math.sqrt(n * n + r * r)) && (n /= s, r /= s, c /= s), e * r < t * n && (e = -e, t = -t, c = -c, o = -o), {
799
- translateX: i,
800
- translateY: a,
801
- rotate: Math.atan2(t, e) * xn,
802
- skewX: Math.atan(c) * xn,
803
- scaleX: o,
804
- scaleY: s
805
- };
806
- }
807
- //#endregion
808
- //#region ../../node_modules/d3-interpolate/src/transform/parse.js
809
- var wn;
810
- function Tn(e) {
811
- let t = new (typeof DOMMatrix == "function" ? DOMMatrix : WebKitCSSMatrix)(e + "");
812
- return t.isIdentity ? Sn : Cn(t.a, t.b, t.c, t.d, t.e, t.f);
813
- }
814
- function En(e) {
815
- return e == null || (wn ||= document.createElementNS("http://www.w3.org/2000/svg", "g"), wn.setAttribute("transform", e), !(e = wn.transform.baseVal.consolidate())) ? Sn : (e = e.matrix, Cn(e.a, e.b, e.c, e.d, e.e, e.f));
816
- }
817
- //#endregion
818
- //#region ../../node_modules/d3-interpolate/src/transform/index.js
819
- function Dn(e, t, n, r) {
820
- function i(e) {
821
- return e.length ? e.pop() + " " : "";
822
- }
823
- function a(e, r, i, a, o, s) {
824
- if (e !== i || r !== a) {
825
- var c = o.push("translate(", null, t, null, n);
826
- s.push({
827
- i: c - 4,
828
- x: k(e, i)
829
- }, {
830
- i: c - 2,
831
- x: k(r, a)
832
- });
833
- } else (i || a) && o.push("translate(" + i + t + a + n);
834
- }
835
- function o(e, t, n, a) {
836
- e === t ? t && n.push(i(n) + "rotate(" + t + r) : (e - t > 180 ? t += 360 : t - e > 180 && (e += 360), a.push({
837
- i: n.push(i(n) + "rotate(", null, r) - 2,
838
- x: k(e, t)
839
- }));
840
- }
841
- function s(e, t, n, a) {
842
- e === t ? t && n.push(i(n) + "skewX(" + t + r) : a.push({
843
- i: n.push(i(n) + "skewX(", null, r) - 2,
844
- x: k(e, t)
845
- });
846
- }
847
- function c(e, t, n, r, a, o) {
848
- if (e !== n || t !== r) {
849
- var s = a.push(i(a) + "scale(", null, ",", null, ")");
850
- o.push({
851
- i: s - 4,
852
- x: k(e, n)
853
- }, {
854
- i: s - 2,
855
- x: k(t, r)
856
- });
857
- } else (n !== 1 || r !== 1) && a.push(i(a) + "scale(" + n + "," + r + ")");
858
- }
859
- return function(t, n) {
860
- var r = [], i = [];
861
- return t = e(t), n = e(n), a(t.translateX, t.translateY, n.translateX, n.translateY, r, i), o(t.rotate, n.rotate, r, i), s(t.skewX, n.skewX, r, i), c(t.scaleX, t.scaleY, n.scaleX, n.scaleY, r, i), t = n = null, function(e) {
862
- for (var t = -1, n = i.length, a; ++t < n;) r[(a = i[t]).i] = a.x(e);
863
- return r.join("");
864
- };
865
- };
866
- }
867
- var On = Dn(Tn, "px, ", "px)", "deg)"), kn = Dn(En, ", ", ")", ")"), An = 1e-12;
868
- function jn(e) {
869
- return ((e = Math.exp(e)) + 1 / e) / 2;
870
- }
871
- function Mn(e) {
872
- return ((e = Math.exp(e)) - 1 / e) / 2;
873
- }
874
- function Nn(e) {
875
- return ((e = Math.exp(2 * e)) - 1) / (e + 1);
876
- }
877
- var Pn = (function e(t, n, r) {
878
- function i(e, i) {
879
- var a = e[0], o = e[1], s = e[2], c = i[0], l = i[1], u = i[2], d = c - a, f = l - o, p = d * d + f * f, m, h;
880
- if (p < An) h = Math.log(u / s) / t, m = function(e) {
881
- return [
882
- a + e * d,
883
- o + e * f,
884
- s * Math.exp(t * e * h)
885
- ];
886
- };
887
- else {
888
- var g = Math.sqrt(p), ee = (u * u - s * s + r * p) / (2 * s * n * g), te = (u * u - s * s - r * p) / (2 * u * n * g), _ = Math.log(Math.sqrt(ee * ee + 1) - ee);
889
- h = (Math.log(Math.sqrt(te * te + 1) - te) - _) / t, m = function(e) {
890
- var r = e * h, i = jn(_), c = s / (n * g) * (i * Nn(t * r + _) - Mn(_));
891
- return [
892
- a + c * d,
893
- o + c * f,
894
- s * i / jn(t * r + _)
895
- ];
896
- };
897
- }
898
- return m.duration = h * 1e3 * t / Math.SQRT2, m;
899
- }
900
- return i.rho = function(t) {
901
- var n = Math.max(.001, +t), r = n * n;
902
- return e(n, r, r * r);
903
- }, i;
904
- })(Math.SQRT2, 2, 4);
905
- //#endregion
906
- //#region ../../node_modules/d3-interpolate/src/hsl.js
907
- function Fn(e) {
908
- return function(t, n) {
909
- var r = e((t = ue(t)).h, (n = ue(n)).h), i = O(t.s, n.s), a = O(t.l, n.l), o = O(t.opacity, n.opacity);
910
- return function(e) {
911
- return t.h = r(e), t.s = i(e), t.l = a(e), t.opacity = o(e), t + "";
912
- };
913
- };
914
- }
915
- var In = Fn(en), Ln = Fn(O);
916
- //#endregion
917
- //#region ../../node_modules/d3-interpolate/src/lab.js
918
- function Rn(e, t) {
919
- var n = O((e = kt(e)).l, (t = kt(t)).l), r = O(e.a, t.a), i = O(e.b, t.b), a = O(e.opacity, t.opacity);
920
- return function(t) {
921
- return e.l = n(t), e.a = r(t), e.b = i(t), e.opacity = a(t), e + "";
922
- };
923
- }
924
- //#endregion
925
- //#region ../../node_modules/d3-interpolate/src/hcl.js
926
- function zn(e) {
927
- return function(t, n) {
928
- var r = e((t = Ft(t)).h, (n = Ft(n)).h), i = O(t.c, n.c), a = O(t.l, n.l), o = O(t.opacity, n.opacity);
929
- return function(e) {
930
- return t.h = r(e), t.c = i(e), t.l = a(e), t.opacity = o(e), t + "";
931
- };
932
- };
933
- }
934
- var Bn = zn(en), Vn = zn(O);
935
- //#endregion
936
- //#region ../../node_modules/d3-interpolate/src/cubehelix.js
937
- function Hn(e) {
938
- return (function t(n) {
939
- n = +n;
940
- function r(t, r) {
941
- var i = e((t = Kt(t)).h, (r = Kt(r)).h), a = O(t.s, r.s), o = O(t.l, r.l), s = O(t.opacity, r.opacity);
942
- return function(e) {
943
- return t.h = i(e), t.s = a(e), t.l = o(e ** +n), t.opacity = s(e), t + "";
944
- };
945
- }
946
- return r.gamma = t, r;
947
- })(1);
948
- }
949
- var Un = Hn(en), Wn = Hn(O);
950
- //#endregion
951
- //#region ../../node_modules/d3-interpolate/src/piecewise.js
952
- function Gn(e, t) {
953
- t === void 0 && (t = e, e = A);
954
- for (var n = 0, r = t.length - 1, i = t[0], a = Array(r < 0 ? 0 : r); n < r;) a[n] = e(i, i = t[++n]);
955
- return function(e) {
956
- var t = Math.max(0, Math.min(r - 1, Math.floor(e *= r)));
957
- return a[t](e - t);
958
- };
959
- }
960
- //#endregion
961
- //#region ../../node_modules/d3-interpolate/src/quantize.js
962
- function Kn(e, t) {
963
- for (var n = Array(t), r = 0; r < t; ++r) n[r] = e(r / (t - 1));
964
- return n;
965
- }
966
- //#endregion
967
- //#region ../../node_modules/d3-interpolate/src/index.js
968
- var qn = /* @__PURE__ */ e({
969
- interpolate: () => A,
970
- interpolateArray: () => ln,
971
- interpolateBasis: () => Yt,
972
- interpolateBasisClosed: () => Xt,
973
- interpolateCubehelix: () => Un,
974
- interpolateCubehelixLong: () => Wn,
975
- interpolateDate: () => dn,
976
- interpolateDiscrete: () => vn,
977
- interpolateHcl: () => Bn,
978
- interpolateHclLong: () => Vn,
979
- interpolateHsl: () => In,
980
- interpolateHslLong: () => Ln,
981
- interpolateHue: () => yn,
982
- interpolateLab: () => Rn,
983
- interpolateNumber: () => k,
984
- interpolateNumberArray: () => sn,
985
- interpolateObject: () => fn,
986
- interpolateRgb: () => nn,
987
- interpolateRgbBasis: () => an,
988
- interpolateRgbBasisClosed: () => on,
989
- interpolateRound: () => bn,
990
- interpolateString: () => _n,
991
- interpolateTransformCss: () => On,
992
- interpolateTransformSvg: () => kn,
993
- interpolateZoom: () => Pn,
994
- piecewise: () => Gn,
995
- quantize: () => Kn
996
- });
997
- //#endregion
998
- //#region ../../node_modules/d3-scale/src/constant.js
999
- function Jn(e) {
1000
- return function() {
1001
- return e;
1002
- };
1003
- }
1004
- //#endregion
1005
- //#region ../../node_modules/d3-scale/src/number.js
1006
- function Yn(e) {
1007
- return +e;
1008
- }
1009
- //#endregion
1010
- //#region ../../node_modules/d3-scale/src/continuous.js
1011
- var Xn = [0, 1];
1012
- function j(e) {
1013
- return e;
1014
- }
1015
- function Zn(e, t) {
1016
- return (t -= e = +e) ? function(n) {
1017
- return (n - e) / t;
1018
- } : Jn(isNaN(t) ? NaN : .5);
1019
- }
1020
- function Qn(e, t) {
1021
- var n;
1022
- return e > t && (n = e, e = t, t = n), function(n) {
1023
- return Math.max(e, Math.min(t, n));
1024
- };
1025
- }
1026
- function $n(e, t, n) {
1027
- var r = e[0], i = e[1], a = t[0], o = t[1];
1028
- return i < r ? (r = Zn(i, r), a = n(o, a)) : (r = Zn(r, i), a = n(a, o)), function(e) {
1029
- return a(r(e));
1030
- };
1031
- }
1032
- function er(e, t, n) {
1033
- var r = Math.min(e.length, t.length) - 1, i = Array(r), a = Array(r), o = -1;
1034
- for (e[r] < e[0] && (e = e.slice().reverse(), t = t.slice().reverse()); ++o < r;) i[o] = Zn(e[o], e[o + 1]), a[o] = n(t[o], t[o + 1]);
1035
- return function(t) {
1036
- var n = C(e, t, 1, r) - 1;
1037
- return a[n](i[n](t));
1038
- };
1039
- }
1040
- function tr(e, t) {
1041
- return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown());
1042
- }
1043
- function nr() {
1044
- var e = Xn, t = Xn, n = A, r, i, a, o = j, s, c, l;
1045
- function u() {
1046
- var n = Math.min(e.length, t.length);
1047
- return o !== j && (o = Qn(e[0], e[n - 1])), s = n > 2 ? er : $n, c = l = null, d;
1048
- }
1049
- function d(i) {
1050
- return i == null || isNaN(i = +i) ? a : (c ||= s(e.map(r), t, n))(r(o(i)));
1051
- }
1052
- return d.invert = function(n) {
1053
- return o(i((l ||= s(t, e.map(r), k))(n)));
1054
- }, d.domain = function(t) {
1055
- return arguments.length ? (e = Array.from(t, Yn), u()) : e.slice();
1056
- }, d.range = function(e) {
1057
- return arguments.length ? (t = Array.from(e), u()) : t.slice();
1058
- }, d.rangeRound = function(e) {
1059
- return t = Array.from(e), n = bn, u();
1060
- }, d.clamp = function(e) {
1061
- return arguments.length ? (o = e ? !0 : j, u()) : o !== j;
1062
- }, d.interpolate = function(e) {
1063
- return arguments.length ? (n = e, u()) : n;
1064
- }, d.unknown = function(e) {
1065
- return arguments.length ? (a = e, d) : a;
1066
- }, function(e, t) {
1067
- return r = e, i = t, u();
1068
- };
1069
- }
1070
- function rr() {
1071
- return nr()(j, j);
1072
- }
1073
- //#endregion
1074
- //#region ../../node_modules/d3-format/src/precisionFixed.js
1075
- function ir(e) {
1076
- return Math.max(0, -g(Math.abs(e)));
1077
- }
1078
- //#endregion
1079
- //#region ../../node_modules/d3-format/src/precisionPrefix.js
1080
- function ar(e, t) {
1081
- return Math.max(0, Math.max(-8, Math.min(8, Math.floor(g(t) / 3))) * 3 - g(Math.abs(e)));
1082
- }
1083
- //#endregion
1084
- //#region ../../node_modules/d3-format/src/precisionRound.js
1085
- function or(e, t) {
1086
- return e = Math.abs(e), t = Math.abs(t) - e, Math.max(0, g(t) - g(e)) + 1;
1087
- }
1088
- //#endregion
1089
- //#region ../../node_modules/d3-scale/src/tickFormat.js
1090
- function sr(e, t, r, i) {
1091
- var o = lt(e, t, r), s;
1092
- switch (i = n(i ?? ",f"), i.type) {
1093
- case "s":
1094
- var c = Math.max(Math.abs(e), Math.abs(t));
1095
- return i.precision == null && !isNaN(s = ar(o, c)) && (i.precision = s), ee(i, c);
1096
- case "":
1097
- case "e":
1098
- case "g":
1099
- case "p":
1100
- case "r":
1101
- i.precision == null && !isNaN(s = or(o, Math.max(Math.abs(e), Math.abs(t)))) && (i.precision = s - (i.type === "e"));
1102
- break;
1103
- case "f":
1104
- case "%":
1105
- i.precision == null && !isNaN(s = ir(o)) && (i.precision = s - (i.type === "%") * 2);
1106
- break;
1107
- }
1108
- return a(i);
1109
- }
1110
- //#endregion
1111
- //#region ../../node_modules/d3-scale/src/linear.js
1112
- function M(e) {
1113
- var t = e.domain;
1114
- return e.ticks = function(e) {
1115
- var n = t();
1116
- return st(n[0], n[n.length - 1], e ?? 10);
1117
- }, e.tickFormat = function(e, n) {
1118
- var r = t();
1119
- return sr(r[0], r[r.length - 1], e ?? 10, n);
1120
- }, e.nice = function(n) {
1121
- n ??= 10;
1122
- var r = t(), i = 0, a = r.length - 1, o = r[i], s = r[a], c, l, u = 10;
1123
- for (s < o && (l = o, o = s, s = l, l = i, i = a, a = l); u-- > 0;) {
1124
- if (l = ct(o, s, n), l === c) return r[i] = o, r[a] = s, t(r);
1125
- if (l > 0) o = Math.floor(o / l) * l, s = Math.ceil(s / l) * l;
1126
- else if (l < 0) o = Math.ceil(o * l) / l, s = Math.floor(s * l) / l;
1127
- else break;
1128
- c = l;
1129
- }
1130
- return e;
1131
- }, e;
1132
- }
1133
- function cr() {
1134
- var e = rr();
1135
- return e.copy = function() {
1136
- return tr(e, cr());
1137
- }, w.apply(e, arguments), M(e);
1138
- }
1139
- //#endregion
1140
- //#region ../../node_modules/d3-scale/src/identity.js
1141
- function lr(e) {
1142
- var t;
1143
- function n(e) {
1144
- return e == null || isNaN(e = +e) ? t : e;
1145
- }
1146
- return n.invert = n, n.domain = n.range = function(t) {
1147
- return arguments.length ? (e = Array.from(t, Yn), n) : e.slice();
1148
- }, n.unknown = function(e) {
1149
- return arguments.length ? (t = e, n) : t;
1150
- }, n.copy = function() {
1151
- return lr(e).unknown(t);
1152
- }, e = arguments.length ? Array.from(e, Yn) : [0, 1], M(n);
1153
- }
1154
- //#endregion
1155
- //#region ../../node_modules/d3-scale/src/nice.js
1156
- function ur(e, t) {
1157
- e = e.slice();
1158
- var n = 0, r = e.length - 1, i = e[n], a = e[r], o;
1159
- return a < i && (o = n, n = r, r = o, o = i, i = a, a = o), e[n] = t.floor(i), e[r] = t.ceil(a), e;
1160
- }
1161
- //#endregion
1162
- //#region ../../node_modules/d3-scale/src/log.js
1163
- function dr(e) {
1164
- return Math.log(e);
1165
- }
1166
- function fr(e) {
1167
- return Math.exp(e);
1168
- }
1169
- function pr(e) {
1170
- return -Math.log(-e);
1171
- }
1172
- function mr(e) {
1173
- return -Math.exp(-e);
1174
- }
1175
- function hr(e) {
1176
- return isFinite(e) ? +("1e" + e) : e < 0 ? 0 : e;
1177
- }
1178
- function gr(e) {
1179
- return e === 10 ? hr : e === Math.E ? Math.exp : (t) => e ** +t;
1180
- }
1181
- function _r(e) {
1182
- return e === Math.E ? Math.log : e === 10 && Math.log10 || e === 2 && Math.log2 || (e = Math.log(e), (t) => Math.log(t) / e);
1183
- }
1184
- function vr(e) {
1185
- return (t, n) => -e(-t, n);
1186
- }
1187
- function yr(e) {
1188
- let t = e(dr, fr), r = t.domain, i = 10, o, s;
1189
- function c() {
1190
- return o = _r(i), s = gr(i), r()[0] < 0 ? (o = vr(o), s = vr(s), e(pr, mr)) : e(dr, fr), t;
1191
- }
1192
- return t.base = function(e) {
1193
- return arguments.length ? (i = +e, c()) : i;
1194
- }, t.domain = function(e) {
1195
- return arguments.length ? (r(e), c()) : r();
1196
- }, t.ticks = (e) => {
1197
- let t = r(), n = t[0], a = t[t.length - 1], c = a < n;
1198
- c && ([n, a] = [a, n]);
1199
- let l = o(n), u = o(a), d, f, p = e == null ? 10 : +e, m = [];
1200
- if (!(i % 1) && u - l < p) {
1201
- if (l = Math.floor(l), u = Math.ceil(u), n > 0) {
1202
- for (; l <= u; ++l) for (d = 1; d < i; ++d) if (f = l < 0 ? d / s(-l) : d * s(l), !(f < n)) {
1203
- if (f > a) break;
1204
- m.push(f);
1205
- }
1206
- } else for (; l <= u; ++l) for (d = i - 1; d >= 1; --d) if (f = l > 0 ? d / s(-l) : d * s(l), !(f < n)) {
1207
- if (f > a) break;
1208
- m.push(f);
1209
- }
1210
- m.length * 2 < p && (m = st(n, a, p));
1211
- } else m = st(l, u, Math.min(u - l, p)).map(s);
1212
- return c ? m.reverse() : m;
1213
- }, t.tickFormat = (e, r) => {
1214
- if (e ??= 10, r ??= i === 10 ? "s" : ",", typeof r != "function" && (!(i % 1) && (r = n(r)).precision == null && (r.trim = !0), r = a(r)), e === Infinity) return r;
1215
- let c = Math.max(1, i * e / t.ticks().length);
1216
- return (e) => {
1217
- let t = e / s(Math.round(o(e)));
1218
- return t * i < i - .5 && (t *= i), t <= c ? r(e) : "";
1219
- };
1220
- }, t.nice = () => r(ur(r(), {
1221
- floor: (e) => s(Math.floor(o(e))),
1222
- ceil: (e) => s(Math.ceil(o(e)))
1223
- })), t;
1224
- }
1225
- function br() {
1226
- let e = yr(nr()).domain([1, 10]);
1227
- return e.copy = () => tr(e, br()).base(e.base()), w.apply(e, arguments), e;
1228
- }
1229
- //#endregion
1230
- //#region ../../node_modules/d3-scale/src/symlog.js
1231
- function xr(e) {
1232
- return function(t) {
1233
- return Math.sign(t) * Math.log1p(Math.abs(t / e));
1234
- };
1235
- }
1236
- function Sr(e) {
1237
- return function(t) {
1238
- return Math.sign(t) * Math.expm1(Math.abs(t)) * e;
1239
- };
1240
- }
1241
- function Cr(e) {
1242
- var t = 1, n = e(xr(t), Sr(t));
1243
- return n.constant = function(n) {
1244
- return arguments.length ? e(xr(t = +n), Sr(t)) : t;
1245
- }, M(n);
1246
- }
1247
- function wr() {
1248
- var e = Cr(nr());
1249
- return e.copy = function() {
1250
- return tr(e, wr()).constant(e.constant());
1251
- }, w.apply(e, arguments);
1252
- }
1253
- //#endregion
1254
- //#region ../../node_modules/d3-scale/src/pow.js
1255
- function Tr(e) {
1256
- return function(t) {
1257
- return t < 0 ? -((-t) ** +e) : t ** +e;
1258
- };
1259
- }
1260
- function Er(e) {
1261
- return e < 0 ? -Math.sqrt(-e) : Math.sqrt(e);
1262
- }
1263
- function Dr(e) {
1264
- return e < 0 ? -e * e : e * e;
1265
- }
1266
- function Or(e) {
1267
- var t = e(j, j), n = 1;
1268
- function r() {
1269
- return n === 1 ? e(j, j) : n === .5 ? e(Er, Dr) : e(Tr(n), Tr(1 / n));
1270
- }
1271
- return t.exponent = function(e) {
1272
- return arguments.length ? (n = +e, r()) : n;
1273
- }, M(t);
1274
- }
1275
- function kr() {
1276
- var e = Or(nr());
1277
- return e.copy = function() {
1278
- return tr(e, kr()).exponent(e.exponent());
1279
- }, w.apply(e, arguments), e;
1280
- }
1281
- function Ar() {
1282
- return kr.apply(null, arguments).exponent(.5);
1283
- }
1284
- //#endregion
1285
- //#region ../../node_modules/d3-scale/src/quantile.js
1286
- function jr() {
1287
- var e = [], t = [], n = [], r;
1288
- function i() {
1289
- var r = 0, i = Math.max(1, t.length);
1290
- for (n = Array(i - 1); ++r < i;) n[r - 1] = ht(e, r / i);
1291
- return a;
1292
- }
1293
- function a(e) {
1294
- return e == null || isNaN(e = +e) ? r : t[C(n, e)];
1295
- }
1296
- return a.invertExtent = function(r) {
1297
- var i = t.indexOf(r);
1298
- return i < 0 ? [NaN, NaN] : [i > 0 ? n[i - 1] : e[0], i < n.length ? n[i] : e[e.length - 1]];
1299
- }, a.domain = function(t) {
1300
- if (!arguments.length) return e.slice();
1301
- e = [];
1302
- for (let n of t) n != null && !isNaN(n = +n) && e.push(n);
1303
- return e.sort(S), i();
1304
- }, a.range = function(e) {
1305
- return arguments.length ? (t = Array.from(e), i()) : t.slice();
1306
- }, a.unknown = function(e) {
1307
- return arguments.length ? (r = e, a) : r;
1308
- }, a.quantiles = function() {
1309
- return n.slice();
1310
- }, a.copy = function() {
1311
- return jr().domain(e).range(t).unknown(r);
1312
- }, w.apply(a, arguments);
1313
- }
1314
- //#endregion
1315
- //#region ../../node_modules/d3-scale/src/quantize.js
1316
- function Mr() {
1317
- var e = 0, t = 1, n = 1, r = [.5], i = [0, 1], a;
1318
- function o(e) {
1319
- return e != null && e <= e ? i[C(r, e, 0, n)] : a;
1320
- }
1321
- function s() {
1322
- var i = -1;
1323
- for (r = Array(n); ++i < n;) r[i] = ((i + 1) * t - (i - n) * e) / (n + 1);
1324
- return o;
1325
- }
1326
- return o.domain = function(n) {
1327
- return arguments.length ? ([e, t] = n, e = +e, t = +t, s()) : [e, t];
1328
- }, o.range = function(e) {
1329
- return arguments.length ? (n = (i = Array.from(e)).length - 1, s()) : i.slice();
1330
- }, o.invertExtent = function(a) {
1331
- var o = i.indexOf(a);
1332
- return o < 0 ? [NaN, NaN] : o < 1 ? [e, r[0]] : o >= n ? [r[n - 1], t] : [r[o - 1], r[o]];
1333
- }, o.unknown = function(e) {
1334
- return arguments.length && (a = e), o;
1335
- }, o.thresholds = function() {
1336
- return r.slice();
1337
- }, o.copy = function() {
1338
- return Mr().domain([e, t]).range(i).unknown(a);
1339
- }, w.apply(M(o), arguments);
1340
- }
1341
- //#endregion
1342
- //#region ../../node_modules/d3-scale/src/threshold.js
1343
- function Nr() {
1344
- var e = [.5], t = [0, 1], n, r = 1;
1345
- function i(i) {
1346
- return i != null && i <= i ? t[C(e, i, 0, r)] : n;
1347
- }
1348
- return i.domain = function(n) {
1349
- return arguments.length ? (e = Array.from(n), r = Math.min(e.length, t.length - 1), i) : e.slice();
1350
- }, i.range = function(n) {
1351
- return arguments.length ? (t = Array.from(n), r = Math.min(e.length, t.length - 1), i) : t.slice();
1352
- }, i.invertExtent = function(n) {
1353
- var r = t.indexOf(n);
1354
- return [e[r - 1], e[r]];
1355
- }, i.unknown = function(e) {
1356
- return arguments.length ? (n = e, i) : n;
1357
- }, i.copy = function() {
1358
- return Nr().domain(e).range(t).unknown(n);
1359
- }, w.apply(i, arguments);
1360
- }
1361
- //#endregion
1362
- //#region ../../node_modules/d3-time/src/interval.js
1363
- var Pr = /* @__PURE__ */ new Date(), Fr = /* @__PURE__ */ new Date();
1364
- function N(e, t, n, r) {
1365
- function i(t) {
1366
- return e(t = arguments.length === 0 ? /* @__PURE__ */ new Date() : /* @__PURE__ */ new Date(+t)), t;
1367
- }
1368
- return i.floor = (t) => (e(t = /* @__PURE__ */ new Date(+t)), t), i.ceil = (n) => (e(n = /* @__PURE__ */ new Date(n - 1)), t(n, 1), e(n), n), i.round = (e) => {
1369
- let t = i(e), n = i.ceil(e);
1370
- return e - t < n - e ? t : n;
1371
- }, i.offset = (e, n) => (t(e = /* @__PURE__ */ new Date(+e), n == null ? 1 : Math.floor(n)), e), i.range = (n, r, a) => {
1372
- let o = [];
1373
- if (n = i.ceil(n), a = a == null ? 1 : Math.floor(a), !(n < r) || !(a > 0)) return o;
1374
- let s;
1375
- do
1376
- o.push(s = /* @__PURE__ */ new Date(+n)), t(n, a), e(n);
1377
- while (s < n && n < r);
1378
- return o;
1379
- }, i.filter = (n) => N((t) => {
1380
- if (t >= t) for (; e(t), !n(t);) t.setTime(t - 1);
1381
- }, (e, r) => {
1382
- if (e >= e) if (r < 0) for (; ++r <= 0;) for (; t(e, -1), !n(e););
1383
- else for (; --r >= 0;) for (; t(e, 1), !n(e););
1384
- }), n && (i.count = (t, r) => (Pr.setTime(+t), Fr.setTime(+r), e(Pr), e(Fr), Math.floor(n(Pr, Fr))), i.every = (e) => (e = Math.floor(e), !isFinite(e) || !(e > 0) ? null : e > 1 ? i.filter(r ? (t) => r(t) % e === 0 : (t) => i.count(0, t) % e === 0) : i)), i;
1385
- }
1386
- //#endregion
1387
- //#region ../../node_modules/d3-time/src/millisecond.js
1388
- var Ir = N(() => {}, (e, t) => {
1389
- e.setTime(+e + t);
1390
- }, (e, t) => t - e);
1391
- Ir.every = (e) => (e = Math.floor(e), !isFinite(e) || !(e > 0) ? null : e > 1 ? N((t) => {
1392
- t.setTime(Math.floor(t / e) * e);
1393
- }, (t, n) => {
1394
- t.setTime(+t + n * e);
1395
- }, (t, n) => (n - t) / e) : Ir), Ir.range;
1396
- //#endregion
1397
- //#region ../../node_modules/d3-time/src/duration.js
1398
- var P = 1e3, F = P * 60, I = F * 60, L = I * 24, Lr = L * 7, Rr = L * 30, zr = L * 365, R = N((e) => {
1399
- e.setTime(e - e.getMilliseconds());
1400
- }, (e, t) => {
1401
- e.setTime(+e + t * P);
1402
- }, (e, t) => (t - e) / P, (e) => e.getUTCSeconds());
1403
- R.range;
1404
- //#endregion
1405
- //#region ../../node_modules/d3-time/src/minute.js
1406
- var Br = N((e) => {
1407
- e.setTime(e - e.getMilliseconds() - e.getSeconds() * P);
1408
- }, (e, t) => {
1409
- e.setTime(+e + t * F);
1410
- }, (e, t) => (t - e) / F, (e) => e.getMinutes());
1411
- Br.range;
1412
- var Vr = N((e) => {
1413
- e.setUTCSeconds(0, 0);
1414
- }, (e, t) => {
1415
- e.setTime(+e + t * F);
1416
- }, (e, t) => (t - e) / F, (e) => e.getUTCMinutes());
1417
- Vr.range;
1418
- //#endregion
1419
- //#region ../../node_modules/d3-time/src/hour.js
1420
- var Hr = N((e) => {
1421
- e.setTime(e - e.getMilliseconds() - e.getSeconds() * P - e.getMinutes() * F);
1422
- }, (e, t) => {
1423
- e.setTime(+e + t * I);
1424
- }, (e, t) => (t - e) / I, (e) => e.getHours());
1425
- Hr.range;
1426
- var Ur = N((e) => {
1427
- e.setUTCMinutes(0, 0, 0);
1428
- }, (e, t) => {
1429
- e.setTime(+e + t * I);
1430
- }, (e, t) => (t - e) / I, (e) => e.getUTCHours());
1431
- Ur.range;
1432
- //#endregion
1433
- //#region ../../node_modules/d3-time/src/day.js
1434
- var z = N((e) => e.setHours(0, 0, 0, 0), (e, t) => e.setDate(e.getDate() + t), (e, t) => (t - e - (t.getTimezoneOffset() - e.getTimezoneOffset()) * F) / L, (e) => e.getDate() - 1);
1435
- z.range;
1436
- var B = N((e) => {
1437
- e.setUTCHours(0, 0, 0, 0);
1438
- }, (e, t) => {
1439
- e.setUTCDate(e.getUTCDate() + t);
1440
- }, (e, t) => (t - e) / L, (e) => e.getUTCDate() - 1);
1441
- B.range;
1442
- var Wr = N((e) => {
1443
- e.setUTCHours(0, 0, 0, 0);
1444
- }, (e, t) => {
1445
- e.setUTCDate(e.getUTCDate() + t);
1446
- }, (e, t) => (t - e) / L, (e) => Math.floor(e / L));
1447
- Wr.range;
1448
- //#endregion
1449
- //#region ../../node_modules/d3-time/src/week.js
1450
- function V(e) {
1451
- return N((t) => {
1452
- t.setDate(t.getDate() - (t.getDay() + 7 - e) % 7), t.setHours(0, 0, 0, 0);
1453
- }, (e, t) => {
1454
- e.setDate(e.getDate() + t * 7);
1455
- }, (e, t) => (t - e - (t.getTimezoneOffset() - e.getTimezoneOffset()) * F) / Lr);
1456
- }
1457
- var Gr = V(0), Kr = V(1), qr = V(2), Jr = V(3), Yr = V(4), Xr = V(5), Zr = V(6);
1458
- Gr.range, Kr.range, qr.range, Jr.range, Yr.range, Xr.range, Zr.range;
1459
- function H(e) {
1460
- return N((t) => {
1461
- t.setUTCDate(t.getUTCDate() - (t.getUTCDay() + 7 - e) % 7), t.setUTCHours(0, 0, 0, 0);
1462
- }, (e, t) => {
1463
- e.setUTCDate(e.getUTCDate() + t * 7);
1464
- }, (e, t) => (t - e) / Lr);
1465
- }
1466
- var Qr = H(0), $r = H(1), ei = H(2), ti = H(3), ni = H(4), ri = H(5), ii = H(6);
1467
- Qr.range, $r.range, ei.range, ti.range, ni.range, ri.range, ii.range;
1468
- //#endregion
1469
- //#region ../../node_modules/d3-time/src/month.js
1470
- var ai = N((e) => {
1471
- e.setDate(1), e.setHours(0, 0, 0, 0);
1472
- }, (e, t) => {
1473
- e.setMonth(e.getMonth() + t);
1474
- }, (e, t) => t.getMonth() - e.getMonth() + (t.getFullYear() - e.getFullYear()) * 12, (e) => e.getMonth());
1475
- ai.range;
1476
- var oi = N((e) => {
1477
- e.setUTCDate(1), e.setUTCHours(0, 0, 0, 0);
1478
- }, (e, t) => {
1479
- e.setUTCMonth(e.getUTCMonth() + t);
1480
- }, (e, t) => t.getUTCMonth() - e.getUTCMonth() + (t.getUTCFullYear() - e.getUTCFullYear()) * 12, (e) => e.getUTCMonth());
1481
- oi.range;
1482
- //#endregion
1483
- //#region ../../node_modules/d3-time/src/year.js
1484
- var U = N((e) => {
1485
- e.setMonth(0, 1), e.setHours(0, 0, 0, 0);
1486
- }, (e, t) => {
1487
- e.setFullYear(e.getFullYear() + t);
1488
- }, (e, t) => t.getFullYear() - e.getFullYear(), (e) => e.getFullYear());
1489
- U.every = (e) => !isFinite(e = Math.floor(e)) || !(e > 0) ? null : N((t) => {
1490
- t.setFullYear(Math.floor(t.getFullYear() / e) * e), t.setMonth(0, 1), t.setHours(0, 0, 0, 0);
1491
- }, (t, n) => {
1492
- t.setFullYear(t.getFullYear() + n * e);
1493
- }), U.range;
1494
- var W = N((e) => {
1495
- e.setUTCMonth(0, 1), e.setUTCHours(0, 0, 0, 0);
1496
- }, (e, t) => {
1497
- e.setUTCFullYear(e.getUTCFullYear() + t);
1498
- }, (e, t) => t.getUTCFullYear() - e.getUTCFullYear(), (e) => e.getUTCFullYear());
1499
- W.every = (e) => !isFinite(e = Math.floor(e)) || !(e > 0) ? null : N((t) => {
1500
- t.setUTCFullYear(Math.floor(t.getUTCFullYear() / e) * e), t.setUTCMonth(0, 1), t.setUTCHours(0, 0, 0, 0);
1501
- }, (t, n) => {
1502
- t.setUTCFullYear(t.getUTCFullYear() + n * e);
1503
- }), W.range;
1504
- //#endregion
1505
- //#region ../../node_modules/d3-time/src/ticks.js
1506
- function si(e, t, n, r, i, a) {
1507
- let o = [
1508
- [
1509
- R,
1510
- 1,
1511
- P
1512
- ],
1513
- [
1514
- R,
1515
- 5,
1516
- 5 * P
1517
- ],
1518
- [
1519
- R,
1520
- 15,
1521
- 15 * P
1522
- ],
1523
- [
1524
- R,
1525
- 30,
1526
- 30 * P
1527
- ],
1528
- [
1529
- a,
1530
- 1,
1531
- F
1532
- ],
1533
- [
1534
- a,
1535
- 5,
1536
- 5 * F
1537
- ],
1538
- [
1539
- a,
1540
- 15,
1541
- 15 * F
1542
- ],
1543
- [
1544
- a,
1545
- 30,
1546
- 30 * F
1547
- ],
1548
- [
1549
- i,
1550
- 1,
1551
- I
1552
- ],
1553
- [
1554
- i,
1555
- 3,
1556
- 3 * I
1557
- ],
1558
- [
1559
- i,
1560
- 6,
1561
- 6 * I
1562
- ],
1563
- [
1564
- i,
1565
- 12,
1566
- 12 * I
1567
- ],
1568
- [
1569
- r,
1570
- 1,
1571
- L
1572
- ],
1573
- [
1574
- r,
1575
- 2,
1576
- 2 * L
1577
- ],
1578
- [
1579
- n,
1580
- 1,
1581
- Lr
1582
- ],
1583
- [
1584
- t,
1585
- 1,
1586
- Rr
1587
- ],
1588
- [
1589
- t,
1590
- 3,
1591
- 3 * Rr
1592
- ],
1593
- [
1594
- e,
1595
- 1,
1596
- zr
1597
- ]
1598
- ];
1599
- function s(e, t, n) {
1600
- let r = t < e;
1601
- r && ([e, t] = [t, e]);
1602
- let i = n && typeof n.range == "function" ? n : c(e, t, n), a = i ? i.range(e, +t + 1) : [];
1603
- return r ? a.reverse() : a;
1604
- }
1605
- function c(t, n, r) {
1606
- let i = Math.abs(n - t) / r, a = qe(([, , e]) => e).right(o, i);
1607
- if (a === o.length) return e.every(lt(t / zr, n / zr, r));
1608
- if (a === 0) return Ir.every(Math.max(lt(t, n, r), 1));
1609
- let [s, c] = o[i / o[a - 1][2] < o[a][2] / i ? a - 1 : a];
1610
- return s.every(c);
1611
- }
1612
- return [s, c];
1613
- }
1614
- var [ci, li] = si(W, oi, Qr, Wr, Ur, Vr), [ui, di] = si(U, ai, Gr, z, Hr, Br);
1615
- //#endregion
1616
- //#region ../../node_modules/d3-time-format/src/locale.js
1617
- function fi(e) {
1618
- if (0 <= e.y && e.y < 100) {
1619
- var t = new Date(-1, e.m, e.d, e.H, e.M, e.S, e.L);
1620
- return t.setFullYear(e.y), t;
1621
- }
1622
- return new Date(e.y, e.m, e.d, e.H, e.M, e.S, e.L);
1623
- }
1624
- function pi(e) {
1625
- if (0 <= e.y && e.y < 100) {
1626
- var t = new Date(Date.UTC(-1, e.m, e.d, e.H, e.M, e.S, e.L));
1627
- return t.setUTCFullYear(e.y), t;
1628
- }
1629
- return new Date(Date.UTC(e.y, e.m, e.d, e.H, e.M, e.S, e.L));
1630
- }
1631
- function mi(e, t, n) {
1632
- return {
1633
- y: e,
1634
- m: t,
1635
- d: n,
1636
- H: 0,
1637
- M: 0,
1638
- S: 0,
1639
- L: 0
1640
- };
1641
- }
1642
- function hi(e) {
1643
- var t = e.dateTime, n = e.date, r = e.time, i = e.periods, a = e.days, o = e.shortDays, s = e.months, c = e.shortMonths, l = bi(i), u = xi(i), d = bi(a), f = xi(a), p = bi(o), m = xi(o), h = bi(s), g = xi(s), ee = bi(c), te = xi(c), _ = {
1644
- a: pe,
1645
- A: me,
1646
- b: he,
1647
- B: ge,
1648
- c: null,
1649
- d: Hi,
1650
- e: Hi,
1651
- f: qi,
1652
- g: ia,
1653
- G: oa,
1654
- H: Ui,
1655
- I: Wi,
1656
- j: Gi,
1657
- L: Ki,
1658
- m: Ji,
1659
- M: Yi,
1660
- p: _e,
1661
- q: ve,
1662
- Q: ka,
1663
- s: Aa,
1664
- S: Xi,
1665
- u: Zi,
1666
- U: Qi,
1667
- V: ea,
1668
- w: ta,
1669
- W: na,
1670
- x: null,
1671
- X: null,
1672
- y: ra,
1673
- Y: aa,
1674
- Z: sa,
1675
- "%": Oa
1676
- }, v = {
1677
- a: ye,
1678
- A: be,
1679
- b: xe,
1680
- B: Se,
1681
- c: null,
1682
- d: ca,
1683
- e: ca,
1684
- f: pa,
1685
- g: wa,
1686
- G: Ea,
1687
- H: la,
1688
- I: ua,
1689
- j: da,
1690
- L: fa,
1691
- m: ma,
1692
- M: ha,
1693
- p: Ce,
1694
- q: we,
1695
- Q: ka,
1696
- s: Aa,
1697
- S: ga,
1698
- u: _a,
1699
- U: va,
1700
- V: ba,
1701
- w: xa,
1702
- W: Sa,
1703
- x: null,
1704
- X: null,
1705
- y: Ca,
1706
- Y: Ta,
1707
- Z: Da,
1708
- "%": Oa
1709
- }, ne = {
1710
- a: oe,
1711
- A: se,
1712
- b: ce,
1713
- B: le,
1714
- c: ue,
1715
- d: Mi,
1716
- e: Mi,
1717
- f: Ri,
1718
- g: Oi,
1719
- G: Di,
1720
- H: Pi,
1721
- I: Pi,
1722
- j: Ni,
1723
- L: Li,
1724
- m: ji,
1725
- M: Fi,
1726
- p: ae,
1727
- q: Ai,
1728
- Q: Bi,
1729
- s: Vi,
1730
- S: Ii,
1731
- u: Ci,
1732
- U: wi,
1733
- V: Ti,
1734
- w: Si,
1735
- W: Ei,
1736
- x: de,
1737
- X: fe,
1738
- y: Oi,
1739
- Y: Di,
1740
- Z: ki,
1741
- "%": zi
1742
- };
1743
- _.x = y(n, _), _.X = y(r, _), _.c = y(t, _), v.x = y(n, v), v.X = y(r, v), v.c = y(t, v);
1744
- function y(e, t) {
1745
- return function(n) {
1746
- var r = [], i = -1, a = 0, o = e.length, s, c, l;
1747
- for (n instanceof Date || (n = /* @__PURE__ */ new Date(+n)); ++i < o;) e.charCodeAt(i) === 37 && (r.push(e.slice(a, i)), (c = gi[s = e.charAt(++i)]) == null ? c = s === "e" ? " " : "0" : s = e.charAt(++i), (l = t[s]) && (s = l(n, c)), r.push(s), a = i + 1);
1748
- return r.push(e.slice(a, i)), r.join("");
1749
- };
1750
- }
1751
- function re(e, t) {
1752
- return function(n) {
1753
- var r = mi(1900, void 0, 1), i = ie(r, e, n += "", 0), a, o;
1754
- if (i != n.length) return null;
1755
- if ("Q" in r) return new Date(r.Q);
1756
- if ("s" in r) return new Date(r.s * 1e3 + ("L" in r ? r.L : 0));
1757
- if (t && !("Z" in r) && (r.Z = 0), "p" in r && (r.H = r.H % 12 + r.p * 12), r.m === void 0 && (r.m = "q" in r ? r.q : 0), "V" in r) {
1758
- if (r.V < 1 || r.V > 53) return null;
1759
- "w" in r || (r.w = 1), "Z" in r ? (a = pi(mi(r.y, 0, 1)), o = a.getUTCDay(), a = o > 4 || o === 0 ? $r.ceil(a) : $r(a), a = B.offset(a, (r.V - 1) * 7), r.y = a.getUTCFullYear(), r.m = a.getUTCMonth(), r.d = a.getUTCDate() + (r.w + 6) % 7) : (a = fi(mi(r.y, 0, 1)), o = a.getDay(), a = o > 4 || o === 0 ? Kr.ceil(a) : Kr(a), a = z.offset(a, (r.V - 1) * 7), r.y = a.getFullYear(), r.m = a.getMonth(), r.d = a.getDate() + (r.w + 6) % 7);
1760
- } else ("W" in r || "U" in r) && ("w" in r || (r.w = "u" in r ? r.u % 7 : +("W" in r)), o = "Z" in r ? pi(mi(r.y, 0, 1)).getUTCDay() : fi(mi(r.y, 0, 1)).getDay(), r.m = 0, r.d = "W" in r ? (r.w + 6) % 7 + r.W * 7 - (o + 5) % 7 : r.w + r.U * 7 - (o + 6) % 7);
1761
- return "Z" in r ? (r.H += r.Z / 100 | 0, r.M += r.Z % 100, pi(r)) : fi(r);
1762
- };
1763
- }
1764
- function ie(e, t, n, r) {
1765
- for (var i = 0, a = t.length, o = n.length, s, c; i < a;) {
1766
- if (r >= o) return -1;
1767
- if (s = t.charCodeAt(i++), s === 37) {
1768
- if (s = t.charAt(i++), c = ne[s in gi ? t.charAt(i++) : s], !c || (r = c(e, n, r)) < 0) return -1;
1769
- } else if (s != n.charCodeAt(r++)) return -1;
1770
- }
1771
- return r;
1772
- }
1773
- function ae(e, t, n) {
1774
- var r = l.exec(t.slice(n));
1775
- return r ? (e.p = u.get(r[0].toLowerCase()), n + r[0].length) : -1;
1776
- }
1777
- function oe(e, t, n) {
1778
- var r = p.exec(t.slice(n));
1779
- return r ? (e.w = m.get(r[0].toLowerCase()), n + r[0].length) : -1;
1780
- }
1781
- function se(e, t, n) {
1782
- var r = d.exec(t.slice(n));
1783
- return r ? (e.w = f.get(r[0].toLowerCase()), n + r[0].length) : -1;
1784
- }
1785
- function ce(e, t, n) {
1786
- var r = ee.exec(t.slice(n));
1787
- return r ? (e.m = te.get(r[0].toLowerCase()), n + r[0].length) : -1;
1788
- }
1789
- function le(e, t, n) {
1790
- var r = h.exec(t.slice(n));
1791
- return r ? (e.m = g.get(r[0].toLowerCase()), n + r[0].length) : -1;
1792
- }
1793
- function ue(e, n, r) {
1794
- return ie(e, t, n, r);
1795
- }
1796
- function de(e, t, r) {
1797
- return ie(e, n, t, r);
1798
- }
1799
- function fe(e, t, n) {
1800
- return ie(e, r, t, n);
1801
- }
1802
- function pe(e) {
1803
- return o[e.getDay()];
1804
- }
1805
- function me(e) {
1806
- return a[e.getDay()];
1807
- }
1808
- function he(e) {
1809
- return c[e.getMonth()];
1810
- }
1811
- function ge(e) {
1812
- return s[e.getMonth()];
1813
- }
1814
- function _e(e) {
1815
- return i[+(e.getHours() >= 12)];
1816
- }
1817
- function ve(e) {
1818
- return 1 + ~~(e.getMonth() / 3);
1819
- }
1820
- function ye(e) {
1821
- return o[e.getUTCDay()];
1822
- }
1823
- function be(e) {
1824
- return a[e.getUTCDay()];
1825
- }
1826
- function xe(e) {
1827
- return c[e.getUTCMonth()];
1828
- }
1829
- function Se(e) {
1830
- return s[e.getUTCMonth()];
1831
- }
1832
- function Ce(e) {
1833
- return i[+(e.getUTCHours() >= 12)];
1834
- }
1835
- function we(e) {
1836
- return 1 + ~~(e.getUTCMonth() / 3);
1837
- }
1838
- return {
1839
- format: function(e) {
1840
- var t = y(e += "", _);
1841
- return t.toString = function() {
1842
- return e;
1843
- }, t;
1844
- },
1845
- parse: function(e) {
1846
- var t = re(e += "", !1);
1847
- return t.toString = function() {
1848
- return e;
1849
- }, t;
1850
- },
1851
- utcFormat: function(e) {
1852
- var t = y(e += "", v);
1853
- return t.toString = function() {
1854
- return e;
1855
- }, t;
1856
- },
1857
- utcParse: function(e) {
1858
- var t = re(e += "", !0);
1859
- return t.toString = function() {
1860
- return e;
1861
- }, t;
1862
- }
1863
- };
1864
- }
1865
- var gi = {
1866
- "-": "",
1867
- _: " ",
1868
- 0: "0"
1869
- }, G = /^\s*\d+/, _i = /^%/, vi = /[\\^$*+?|[\]().{}]/g;
1870
- function K(e, t, n) {
1871
- var r = e < 0 ? "-" : "", i = (r ? -e : e) + "", a = i.length;
1872
- return r + (a < n ? Array(n - a + 1).join(t) + i : i);
1873
- }
1874
- function yi(e) {
1875
- return e.replace(vi, "\\$&");
1876
- }
1877
- function bi(e) {
1878
- return RegExp("^(?:" + e.map(yi).join("|") + ")", "i");
1879
- }
1880
- function xi(e) {
1881
- return new Map(e.map((e, t) => [e.toLowerCase(), t]));
1882
- }
1883
- function Si(e, t, n) {
1884
- var r = G.exec(t.slice(n, n + 1));
1885
- return r ? (e.w = +r[0], n + r[0].length) : -1;
1886
- }
1887
- function Ci(e, t, n) {
1888
- var r = G.exec(t.slice(n, n + 1));
1889
- return r ? (e.u = +r[0], n + r[0].length) : -1;
1890
- }
1891
- function wi(e, t, n) {
1892
- var r = G.exec(t.slice(n, n + 2));
1893
- return r ? (e.U = +r[0], n + r[0].length) : -1;
1894
- }
1895
- function Ti(e, t, n) {
1896
- var r = G.exec(t.slice(n, n + 2));
1897
- return r ? (e.V = +r[0], n + r[0].length) : -1;
1898
- }
1899
- function Ei(e, t, n) {
1900
- var r = G.exec(t.slice(n, n + 2));
1901
- return r ? (e.W = +r[0], n + r[0].length) : -1;
1902
- }
1903
- function Di(e, t, n) {
1904
- var r = G.exec(t.slice(n, n + 4));
1905
- return r ? (e.y = +r[0], n + r[0].length) : -1;
1906
- }
1907
- function Oi(e, t, n) {
1908
- var r = G.exec(t.slice(n, n + 2));
1909
- return r ? (e.y = +r[0] + (+r[0] > 68 ? 1900 : 2e3), n + r[0].length) : -1;
1910
- }
1911
- function ki(e, t, n) {
1912
- var r = /^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n, n + 6));
1913
- return r ? (e.Z = r[1] ? 0 : -(r[2] + (r[3] || "00")), n + r[0].length) : -1;
1914
- }
1915
- function Ai(e, t, n) {
1916
- var r = G.exec(t.slice(n, n + 1));
1917
- return r ? (e.q = r[0] * 3 - 3, n + r[0].length) : -1;
1918
- }
1919
- function ji(e, t, n) {
1920
- var r = G.exec(t.slice(n, n + 2));
1921
- return r ? (e.m = r[0] - 1, n + r[0].length) : -1;
1922
- }
1923
- function Mi(e, t, n) {
1924
- var r = G.exec(t.slice(n, n + 2));
1925
- return r ? (e.d = +r[0], n + r[0].length) : -1;
1926
- }
1927
- function Ni(e, t, n) {
1928
- var r = G.exec(t.slice(n, n + 3));
1929
- return r ? (e.m = 0, e.d = +r[0], n + r[0].length) : -1;
1930
- }
1931
- function Pi(e, t, n) {
1932
- var r = G.exec(t.slice(n, n + 2));
1933
- return r ? (e.H = +r[0], n + r[0].length) : -1;
1934
- }
1935
- function Fi(e, t, n) {
1936
- var r = G.exec(t.slice(n, n + 2));
1937
- return r ? (e.M = +r[0], n + r[0].length) : -1;
1938
- }
1939
- function Ii(e, t, n) {
1940
- var r = G.exec(t.slice(n, n + 2));
1941
- return r ? (e.S = +r[0], n + r[0].length) : -1;
1942
- }
1943
- function Li(e, t, n) {
1944
- var r = G.exec(t.slice(n, n + 3));
1945
- return r ? (e.L = +r[0], n + r[0].length) : -1;
1946
- }
1947
- function Ri(e, t, n) {
1948
- var r = G.exec(t.slice(n, n + 6));
1949
- return r ? (e.L = Math.floor(r[0] / 1e3), n + r[0].length) : -1;
1950
- }
1951
- function zi(e, t, n) {
1952
- var r = _i.exec(t.slice(n, n + 1));
1953
- return r ? n + r[0].length : -1;
1954
- }
1955
- function Bi(e, t, n) {
1956
- var r = G.exec(t.slice(n));
1957
- return r ? (e.Q = +r[0], n + r[0].length) : -1;
1958
- }
1959
- function Vi(e, t, n) {
1960
- var r = G.exec(t.slice(n));
1961
- return r ? (e.s = +r[0], n + r[0].length) : -1;
1962
- }
1963
- function Hi(e, t) {
1964
- return K(e.getDate(), t, 2);
1965
- }
1966
- function Ui(e, t) {
1967
- return K(e.getHours(), t, 2);
1968
- }
1969
- function Wi(e, t) {
1970
- return K(e.getHours() % 12 || 12, t, 2);
1971
- }
1972
- function Gi(e, t) {
1973
- return K(1 + z.count(U(e), e), t, 3);
1974
- }
1975
- function Ki(e, t) {
1976
- return K(e.getMilliseconds(), t, 3);
1977
- }
1978
- function qi(e, t) {
1979
- return Ki(e, t) + "000";
1980
- }
1981
- function Ji(e, t) {
1982
- return K(e.getMonth() + 1, t, 2);
1983
- }
1984
- function Yi(e, t) {
1985
- return K(e.getMinutes(), t, 2);
1986
- }
1987
- function Xi(e, t) {
1988
- return K(e.getSeconds(), t, 2);
1989
- }
1990
- function Zi(e) {
1991
- var t = e.getDay();
1992
- return t === 0 ? 7 : t;
1993
- }
1994
- function Qi(e, t) {
1995
- return K(Gr.count(U(e) - 1, e), t, 2);
1996
- }
1997
- function $i(e) {
1998
- var t = e.getDay();
1999
- return t >= 4 || t === 0 ? Yr(e) : Yr.ceil(e);
2000
- }
2001
- function ea(e, t) {
2002
- return e = $i(e), K(Yr.count(U(e), e) + (U(e).getDay() === 4), t, 2);
2003
- }
2004
- function ta(e) {
2005
- return e.getDay();
2006
- }
2007
- function na(e, t) {
2008
- return K(Kr.count(U(e) - 1, e), t, 2);
2009
- }
2010
- function ra(e, t) {
2011
- return K(e.getFullYear() % 100, t, 2);
2012
- }
2013
- function ia(e, t) {
2014
- return e = $i(e), K(e.getFullYear() % 100, t, 2);
2015
- }
2016
- function aa(e, t) {
2017
- return K(e.getFullYear() % 1e4, t, 4);
2018
- }
2019
- function oa(e, t) {
2020
- var n = e.getDay();
2021
- return e = n >= 4 || n === 0 ? Yr(e) : Yr.ceil(e), K(e.getFullYear() % 1e4, t, 4);
2022
- }
2023
- function sa(e) {
2024
- var t = e.getTimezoneOffset();
2025
- return (t > 0 ? "-" : (t *= -1, "+")) + K(t / 60 | 0, "0", 2) + K(t % 60, "0", 2);
2026
- }
2027
- function ca(e, t) {
2028
- return K(e.getUTCDate(), t, 2);
2029
- }
2030
- function la(e, t) {
2031
- return K(e.getUTCHours(), t, 2);
2032
- }
2033
- function ua(e, t) {
2034
- return K(e.getUTCHours() % 12 || 12, t, 2);
2035
- }
2036
- function da(e, t) {
2037
- return K(1 + B.count(W(e), e), t, 3);
2038
- }
2039
- function fa(e, t) {
2040
- return K(e.getUTCMilliseconds(), t, 3);
2041
- }
2042
- function pa(e, t) {
2043
- return fa(e, t) + "000";
2044
- }
2045
- function ma(e, t) {
2046
- return K(e.getUTCMonth() + 1, t, 2);
2047
- }
2048
- function ha(e, t) {
2049
- return K(e.getUTCMinutes(), t, 2);
2050
- }
2051
- function ga(e, t) {
2052
- return K(e.getUTCSeconds(), t, 2);
2053
- }
2054
- function _a(e) {
2055
- var t = e.getUTCDay();
2056
- return t === 0 ? 7 : t;
2057
- }
2058
- function va(e, t) {
2059
- return K(Qr.count(W(e) - 1, e), t, 2);
2060
- }
2061
- function ya(e) {
2062
- var t = e.getUTCDay();
2063
- return t >= 4 || t === 0 ? ni(e) : ni.ceil(e);
2064
- }
2065
- function ba(e, t) {
2066
- return e = ya(e), K(ni.count(W(e), e) + (W(e).getUTCDay() === 4), t, 2);
2067
- }
2068
- function xa(e) {
2069
- return e.getUTCDay();
2070
- }
2071
- function Sa(e, t) {
2072
- return K($r.count(W(e) - 1, e), t, 2);
2073
- }
2074
- function Ca(e, t) {
2075
- return K(e.getUTCFullYear() % 100, t, 2);
2076
- }
2077
- function wa(e, t) {
2078
- return e = ya(e), K(e.getUTCFullYear() % 100, t, 2);
2079
- }
2080
- function Ta(e, t) {
2081
- return K(e.getUTCFullYear() % 1e4, t, 4);
2082
- }
2083
- function Ea(e, t) {
2084
- var n = e.getUTCDay();
2085
- return e = n >= 4 || n === 0 ? ni(e) : ni.ceil(e), K(e.getUTCFullYear() % 1e4, t, 4);
2086
- }
2087
- function Da() {
2088
- return "+0000";
2089
- }
2090
- function Oa() {
2091
- return "%";
2092
- }
2093
- function ka(e) {
2094
- return +e;
2095
- }
2096
- function Aa(e) {
2097
- return Math.floor(e / 1e3);
2098
- }
2099
- //#endregion
2100
- //#region ../../node_modules/d3-time-format/src/defaultLocale.js
2101
- var ja, Ma, Na, Pa, Fa;
2102
- Ia({
2103
- dateTime: "%x, %X",
2104
- date: "%-m/%-d/%Y",
2105
- time: "%-I:%M:%S %p",
2106
- periods: ["AM", "PM"],
2107
- days: [
2108
- "Sunday",
2109
- "Monday",
2110
- "Tuesday",
2111
- "Wednesday",
2112
- "Thursday",
2113
- "Friday",
2114
- "Saturday"
2115
- ],
2116
- shortDays: [
2117
- "Sun",
2118
- "Mon",
2119
- "Tue",
2120
- "Wed",
2121
- "Thu",
2122
- "Fri",
2123
- "Sat"
2124
- ],
2125
- months: [
2126
- "January",
2127
- "February",
2128
- "March",
2129
- "April",
2130
- "May",
2131
- "June",
2132
- "July",
2133
- "August",
2134
- "September",
2135
- "October",
2136
- "November",
2137
- "December"
2138
- ],
2139
- shortMonths: [
2140
- "Jan",
2141
- "Feb",
2142
- "Mar",
2143
- "Apr",
2144
- "May",
2145
- "Jun",
2146
- "Jul",
2147
- "Aug",
2148
- "Sep",
2149
- "Oct",
2150
- "Nov",
2151
- "Dec"
2152
- ]
2153
- });
2154
- function Ia(e) {
2155
- return ja = hi(e), Ma = ja.format, Na = ja.parse, Pa = ja.utcFormat, Fa = ja.utcParse, ja;
2156
- }
2157
- //#endregion
2158
- //#region ../../node_modules/d3-scale/src/time.js
2159
- function La(e) {
2160
- return new Date(e);
2161
- }
2162
- function Ra(e) {
2163
- return e instanceof Date ? +e : +/* @__PURE__ */ new Date(+e);
2164
- }
2165
- function za(e, t, n, r, i, a, o, s, c, l) {
2166
- var u = rr(), d = u.invert, f = u.domain, p = l(".%L"), m = l(":%S"), h = l("%I:%M"), g = l("%I %p"), ee = l("%a %d"), te = l("%b %d"), _ = l("%B"), v = l("%Y");
2167
- function ne(e) {
2168
- return (c(e) < e ? p : s(e) < e ? m : o(e) < e ? h : a(e) < e ? g : r(e) < e ? i(e) < e ? ee : te : n(e) < e ? _ : v)(e);
2169
- }
2170
- return u.invert = function(e) {
2171
- return new Date(d(e));
2172
- }, u.domain = function(e) {
2173
- return arguments.length ? f(Array.from(e, Ra)) : f().map(La);
2174
- }, u.ticks = function(t) {
2175
- var n = f();
2176
- return e(n[0], n[n.length - 1], t ?? 10);
2177
- }, u.tickFormat = function(e, t) {
2178
- return t == null ? ne : l(t);
2179
- }, u.nice = function(e) {
2180
- var n = f();
2181
- return (!e || typeof e.range != "function") && (e = t(n[0], n[n.length - 1], e ?? 10)), e ? f(ur(n, e)) : u;
2182
- }, u.copy = function() {
2183
- return tr(u, za(e, t, n, r, i, a, o, s, c, l));
2184
- }, u;
2185
- }
2186
- function Ba() {
2187
- return w.apply(za(ui, di, U, ai, Gr, z, Hr, Br, R, Ma).domain([new Date(2e3, 0, 1), new Date(2e3, 0, 2)]), arguments);
2188
- }
2189
- //#endregion
2190
- //#region ../../node_modules/d3-scale/src/utcTime.js
2191
- function Va() {
2192
- return w.apply(za(ci, li, W, oi, Qr, B, Ur, Vr, R, Pa).domain([Date.UTC(2e3, 0, 1), Date.UTC(2e3, 0, 2)]), arguments);
2193
- }
2194
- //#endregion
2195
- //#region ../../node_modules/d3-scale/src/sequential.js
2196
- function Ha() {
2197
- var e = 0, t = 1, n, r, i, a, o = j, s = !1, c;
2198
- function l(e) {
2199
- return e == null || isNaN(e = +e) ? c : o(i === 0 ? .5 : (e = (a(e) - n) * i, s ? Math.max(0, Math.min(1, e)) : e));
2200
- }
2201
- l.domain = function(o) {
2202
- return arguments.length ? ([e, t] = o, n = a(e = +e), r = a(t = +t), i = n === r ? 0 : 1 / (r - n), l) : [e, t];
2203
- }, l.clamp = function(e) {
2204
- return arguments.length ? (s = !!e, l) : s;
2205
- }, l.interpolator = function(e) {
2206
- return arguments.length ? (o = e, l) : o;
2207
- };
2208
- function u(e) {
2209
- return function(t) {
2210
- var n, r;
2211
- return arguments.length ? ([n, r] = t, o = e(n, r), l) : [o(0), o(1)];
2212
- };
2213
- }
2214
- return l.range = u(A), l.rangeRound = u(bn), l.unknown = function(e) {
2215
- return arguments.length ? (c = e, l) : c;
2216
- }, function(o) {
2217
- return a = o, n = o(e), r = o(t), i = n === r ? 0 : 1 / (r - n), l;
2218
- };
2219
- }
2220
- function q(e, t) {
2221
- return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown());
2222
- }
2223
- function Ua() {
2224
- var e = M(Ha()(j));
2225
- return e.copy = function() {
2226
- return q(e, Ua());
2227
- }, T.apply(e, arguments);
2228
- }
2229
- function Wa() {
2230
- var e = yr(Ha()).domain([1, 10]);
2231
- return e.copy = function() {
2232
- return q(e, Wa()).base(e.base());
2233
- }, T.apply(e, arguments);
2234
- }
2235
- function Ga() {
2236
- var e = Cr(Ha());
2237
- return e.copy = function() {
2238
- return q(e, Ga()).constant(e.constant());
2239
- }, T.apply(e, arguments);
2240
- }
2241
- function Ka() {
2242
- var e = Or(Ha());
2243
- return e.copy = function() {
2244
- return q(e, Ka()).exponent(e.exponent());
2245
- }, T.apply(e, arguments);
2246
- }
2247
- function qa() {
2248
- return Ka.apply(null, arguments).exponent(.5);
2249
- }
2250
- //#endregion
2251
- //#region ../../node_modules/d3-scale/src/diverging.js
2252
- function Ja() {
2253
- var e = 0, t = .5, n = 1, r = 1, i, a, o, s, c, l = j, u, d = !1, f;
2254
- function p(e) {
2255
- return isNaN(e = +e) ? f : (e = .5 + ((e = +u(e)) - a) * (r * e < r * a ? s : c), l(d ? Math.max(0, Math.min(1, e)) : e));
2256
- }
2257
- p.domain = function(l) {
2258
- return arguments.length ? ([e, t, n] = l, i = u(e = +e), a = u(t = +t), o = u(n = +n), s = i === a ? 0 : .5 / (a - i), c = a === o ? 0 : .5 / (o - a), r = a < i ? -1 : 1, p) : [
2259
- e,
2260
- t,
2261
- n
2262
- ];
2263
- }, p.clamp = function(e) {
2264
- return arguments.length ? (d = !!e, p) : d;
2265
- }, p.interpolator = function(e) {
2266
- return arguments.length ? (l = e, p) : l;
2267
- };
2268
- function m(e) {
2269
- return function(t) {
2270
- var n, r, i;
2271
- return arguments.length ? ([n, r, i] = t, l = Gn(e, [
2272
- n,
2273
- r,
2274
- i
2275
- ]), p) : [
2276
- l(0),
2277
- l(.5),
2278
- l(1)
2279
- ];
2280
- };
2281
- }
2282
- return p.range = m(A), p.rangeRound = m(bn), p.unknown = function(e) {
2283
- return arguments.length ? (f = e, p) : f;
2284
- }, function(l) {
2285
- return u = l, i = l(e), a = l(t), o = l(n), s = i === a ? 0 : .5 / (a - i), c = a === o ? 0 : .5 / (o - a), r = a < i ? -1 : 1, p;
2286
- };
2287
- }
2288
- function Ya() {
2289
- var e = M(Ja()(j));
2290
- return e.copy = function() {
2291
- return q(e, Ya());
2292
- }, T.apply(e, arguments);
2293
- }
2294
- function Xa() {
2295
- var e = yr(Ja()).domain([
2296
- .1,
2297
- 1,
2298
- 10
2299
- ]);
2300
- return e.copy = function() {
2301
- return q(e, Xa()).base(e.base());
2302
- }, T.apply(e, arguments);
2303
- }
2304
- function Za() {
2305
- var e = Cr(Ja());
2306
- return e.copy = function() {
2307
- return q(e, Za()).constant(e.constant());
2308
- }, T.apply(e, arguments);
2309
- }
2310
- function Qa() {
2311
- var e = Or(Ja());
2312
- return e.copy = function() {
2313
- return q(e, Qa()).exponent(e.exponent());
2314
- }, T.apply(e, arguments);
2315
- }
2316
- function $a() {
2317
- return Qa.apply(null, arguments).exponent(.5);
2318
- }
2319
- //#endregion
2320
- //#region ../../node_modules/vega-util/build/peek.js
2321
- function eo(e) {
2322
- return e[e.length - 1];
2323
- }
2324
- //#endregion
2325
- //#region ../../node_modules/vega-util/build/toNumber.js
2326
- function to(e) {
2327
- return e == null || e === "" ? null : +e;
2328
- }
2329
- //#endregion
2330
- //#region ../core/src/utils/url.js
2331
- var no = /^([A-Za-z]+:)?\/\//;
2332
- function ro(e, t) {
2333
- if (t && no.test(t)) return t;
2334
- let n = typeof e == "function" ? e() : e;
2335
- if (!n) return t;
2336
- if (!t) return n;
2337
- if (/[#?]/.test(n)) throw Error(`Cannot append to a url with query or hash. Append: ${t}, base: ${n}`);
2338
- return ao(n) + t;
2339
- }
2340
- function io(e, t, n = oo()) {
2341
- let r = typeof e == "function" ? e() : e;
2342
- if (!t) return r;
2343
- try {
2344
- if (r) {
2345
- let e = n ? new URL(r, n).href : new URL(r).href;
2346
- return new URL(t, e).href;
2347
- } else if (n) return new URL(t, n).href;
2348
- } catch {}
2349
- return ro(r, t);
2350
- }
2351
- function ao(e) {
2352
- let t = e.replace(/[^/]*$/, "");
2353
- return t === "" ? void 0 : t.endsWith("://") ? e + "/" : t;
2354
- }
2355
- function oo() {
2356
- if (typeof document < "u" && document.baseURI) return document.baseURI;
2357
- if (typeof window < "u" && window.location?.href) return window.location.href;
2358
- }
2359
- //#endregion
2360
- //#region ../../node_modules/d3-scale-chromatic/src/colors.js
2361
- function J(e) {
2362
- for (var t = e.length / 6 | 0, n = Array(t), r = 0; r < t;) n[r] = "#" + e.slice(r * 6, ++r * 6);
2363
- return n;
2364
- }
2365
- //#endregion
2366
- //#region ../../node_modules/d3-scale-chromatic/src/categorical/category10.js
2367
- var so = J("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"), co = J("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"), lo = J("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"), uo = J("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"), fo = J("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"), po = J("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"), mo = J("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"), ho = J("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"), go = J("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"), _o = J("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"), vo = "year", yo = "quarter", bo = "month", xo = "week", So = "date", Co = "dayofyear", wo = "hours", To = "minutes", Eo = "seconds", Do = "milliseconds";
2368
- [
2369
- vo,
2370
- yo,
2371
- bo,
2372
- xo,
2373
- So,
2374
- "day",
2375
- Co,
2376
- wo,
2377
- To,
2378
- Eo,
2379
- Do
2380
- ].reduce((e, t, n) => (e[t] = 1 + n, e), {}), `${vo}${bo}`, `${vo}${bo}${So}`, `${wo}${To}`;
2381
- var Oo = {
2382
- [vo]: U,
2383
- [yo]: ai.every(3),
2384
- [bo]: ai,
2385
- [xo]: Gr,
2386
- [So]: z,
2387
- day: z,
2388
- [Co]: z,
2389
- [wo]: Hr,
2390
- [To]: Br,
2391
- [Eo]: R,
2392
- [Do]: Ir
2393
- }, ko = {
2394
- [vo]: W,
2395
- [yo]: oi.every(3),
2396
- [bo]: oi,
2397
- [xo]: Qr,
2398
- [So]: B,
2399
- day: B,
2400
- [Co]: B,
2401
- [wo]: Ur,
2402
- [To]: Vr,
2403
- [Eo]: R,
2404
- [Do]: Ir
2405
- };
2406
- function Ao(e) {
2407
- return Oo[e];
2408
- }
2409
- function jo(e) {
2410
- return ko[e];
2411
- }
2412
- var Mo = 1e3, No = Mo * 60, Po = No * 60, Fo = Po * 24;
2413
- Fo * 7;
2414
- var Io = Fo * 30;
2415
- Fo * 365, [
2416
- vo,
2417
- bo,
2418
- So,
2419
- wo,
2420
- To,
2421
- Eo,
2422
- Do
2423
- ].slice(0, -1).slice(0, -1).slice(0, -1).slice(0, -1), 5 * Mo, 15 * Mo, 30 * Mo, 5 * No, 15 * No, 30 * No, 3 * Po, 6 * Po, 12 * Po, 3 * Io;
2424
- //#endregion
2425
- //#region ../../node_modules/vega-scale/build/vega-scale.js
2426
- function Lo(e, t, n) {
2427
- let r = e - t + n * 2;
2428
- return e ? r > 0 ? r : 1 : 0;
2429
- }
2430
- var Ro = "identity", zo = "linear", Bo = "sqrt", Vo = "symlog", Ho = "time", Uo = "sequential", Wo = "diverging", Go = "quantile", Ko = "quantize", qo = "threshold", Jo = "ordinal", Yo = "point", Xo = "band", Zo = "bin-ordinal", Y = "continuous", Qo = "discrete", $o = "discretizing", X = "interpolating", es = "temporal";
2431
- function ts(e) {
2432
- return function(t) {
2433
- let n = t[0], r = t[1], i;
2434
- return r < n && (i = n, n = r, r = i), [e.invert(n), e.invert(r)];
2435
- };
2436
- }
2437
- function ns(e) {
2438
- return function(t) {
2439
- let n = e.range(), r = t[0], i = t[1], a = -1, o, s, c, l;
2440
- for (i < r && (s = r, r = i, i = s), c = 0, l = n.length; c < l; ++c) n[c] >= r && n[c] <= i && (a < 0 && (a = c), o = c);
2441
- if (!(a < 0)) return r = e.invertExtent(n[a]), i = e.invertExtent(n[o]), [r[0] === void 0 ? r[1] : r[0], i[1] === void 0 ? i[0] : i[1]];
2442
- };
2443
- }
2444
- function rs() {
2445
- let e = _t().unknown(void 0), t = e.domain, n = e.range, r = [0, 1], a, o, s = !1, c = 0, l = 0, u = .5;
2446
- delete e.unknown;
2447
- function d() {
2448
- let e = t().length, d = r[1] < r[0], f = r[1 - d], p = Lo(e, c, l), m = r[d - 0];
2449
- a = (f - m) / (p || 1), s && (a = Math.floor(a)), m += (f - m - a * (e - c)) * u, o = a * (1 - c), s && (m = Math.round(m), o = Math.round(o));
2450
- let h = i(e).map((e) => m + a * e);
2451
- return n(d ? h.reverse() : h);
2452
- }
2453
- return e.domain = function(e) {
2454
- return arguments.length ? (t(e), d()) : t();
2455
- }, e.range = function(e) {
2456
- return arguments.length ? (r = [+e[0], +e[1]], d()) : r.slice();
2457
- }, e.rangeRound = function(e) {
2458
- return r = [+e[0], +e[1]], s = !0, d();
2459
- }, e.bandwidth = function() {
2460
- return o;
2461
- }, e.step = function() {
2462
- return a;
2463
- }, e.round = function(e) {
2464
- return arguments.length ? (s = !!e, d()) : s;
2465
- }, e.padding = function(e) {
2466
- return arguments.length ? (l = Math.max(0, Math.min(1, e)), c = l, d()) : c;
2467
- }, e.paddingInner = function(e) {
2468
- return arguments.length ? (c = Math.max(0, Math.min(1, e)), d()) : c;
2469
- }, e.paddingOuter = function(e) {
2470
- return arguments.length ? (l = Math.max(0, Math.min(1, e)), d()) : l;
2471
- }, e.align = function(e) {
2472
- return arguments.length ? (u = Math.max(0, Math.min(1, e)), d()) : u;
2473
- }, e.invertRange = function(e) {
2474
- if (e[0] == null || e[1] == null) return;
2475
- let i = r[1] < r[0], a = i ? n().reverse() : n(), s = a.length - 1, c = +e[0], l = +e[1], u, d, f;
2476
- if (!(c !== c || l !== l) && (l < c && (f = c, c = l, l = f), !(l < a[0] || c > r[1 - i]))) return u = Math.max(0, C(a, c) - 1), d = c === l ? u : C(a, l) - 1, c - a[u] > o + 1e-10 && ++u, i && (f = u, u = s - d, d = s - f), u > d ? void 0 : t().slice(u, d + 1);
2477
- }, e.invert = function(t) {
2478
- let n = e.invertRange([t, t]);
2479
- return n && n[0];
2480
- }, e.copy = function() {
2481
- return rs().domain(t()).range(r).round(s).paddingInner(c).paddingOuter(l).align(u);
2482
- }, d();
2483
- }
2484
- function is(e) {
2485
- let t = e.copy;
2486
- return e.padding = e.paddingOuter, delete e.paddingInner, e.copy = function() {
2487
- return is(t());
2488
- }, e;
2489
- }
2490
- function as() {
2491
- return is(rs().paddingInner(1));
2492
- }
2493
- var os = Array.prototype.map;
2494
- function ss(e) {
2495
- return os.call(e, to);
2496
- }
2497
- var cs = Array.prototype.slice;
2498
- function ls() {
2499
- let e = [], t = [];
2500
- function n(n) {
2501
- return n == null || n !== n ? void 0 : t[(C(e, n) - 1) % t.length];
2502
- }
2503
- return n.domain = function(t) {
2504
- return arguments.length ? (e = ss(t), n) : e.slice();
2505
- }, n.range = function(e) {
2506
- return arguments.length ? (t = cs.call(e), n) : t.slice();
2507
- }, n.tickFormat = function(t, n) {
2508
- return sr(e[0], eo(e), t ?? 10, n);
2509
- }, n.copy = function() {
2510
- return ls().domain(n.domain()).range(n.range());
2511
- }, n;
2512
- }
2513
- var us = /* @__PURE__ */ new Map(), ds = Symbol("vega_scale");
2514
- function fs(e) {
2515
- return e[ds] = !0, e;
2516
- }
2517
- function ps(e, n, r) {
2518
- let i = function() {
2519
- let t = n();
2520
- return t.invertRange ||= t.invert ? ts(t) : t.invertExtent ? ns(t) : void 0, t.type = e, fs(t);
2521
- };
2522
- return i.metadata = t(h(r)), i;
2523
- }
2524
- function Z(e, t, n) {
2525
- return arguments.length > 1 ? (us.set(e, ps(e, t, n)), this) : ms(e) ? us.get(e) : void 0;
2526
- }
2527
- Z(Ro, lr), Z(zo, cr, Y), Z("log", br, [Y, "log"]), Z("pow", kr, Y), Z(Bo, Ar, Y), Z(Vo, wr, Y), Z(Ho, Ba, [Y, es]), Z("utc", Va, [Y, es]), Z(Uo, Ua, [Y, X]), Z(`${Uo}-${zo}`, Ua, [Y, X]), Z(`${Uo}-log`, Wa, [
2528
- Y,
2529
- X,
2530
- "log"
2531
- ]), Z(`${Uo}-pow`, Ka, [Y, X]), Z(`${Uo}-${Bo}`, qa, [Y, X]), Z(`${Uo}-${Vo}`, Ga, [Y, X]), Z(`${Wo}-${zo}`, Ya, [Y, X]), Z(`${Wo}-log`, Xa, [
2532
- Y,
2533
- X,
2534
- "log"
2535
- ]), Z(`${Wo}-pow`, Qa, [Y, X]), Z(`${Wo}-${Bo}`, $a, [Y, X]), Z(`${Wo}-${Vo}`, Za, [Y, X]), Z(Go, jr, [$o, Go]), Z(Ko, Mr, $o), Z(qo, Nr, $o), Z(Zo, ls, [Qo, $o]), Z(Jo, _t, Qo), Z(Xo, rs, Qo), Z(Yo, as, Qo);
2536
- function ms(e) {
2537
- return us.has(e);
2538
- }
2539
- function hs(e, t) {
2540
- let n = us.get(e);
2541
- return n && n.metadata[t];
2542
- }
2543
- function gs(e) {
2544
- return hs(e, Y);
2545
- }
2546
- function _s(e) {
2547
- return hs(e, Qo);
2548
- }
2549
- function vs(e) {
2550
- return hs(e, $o);
2551
- }
2552
- function ys(e) {
2553
- return hs(e, "log");
2554
- }
2555
- function bs(e) {
2556
- return hs(e, X);
2557
- }
2558
- function xs(e, t) {
2559
- let n = t[0], r = eo(t) - n;
2560
- return function(t) {
2561
- return e(n + t * r);
2562
- };
2563
- }
2564
- function Ss(e, t, n) {
2565
- return Gn(ws(t || "rgb", n), e);
2566
- }
2567
- function Cs(e, t) {
2568
- let n = Array(t), r = t + 1;
2569
- for (let i = 0; i < t;) n[i] = e(++i / r);
2570
- return n;
2571
- }
2572
- function ws(e, t) {
2573
- let n = qn[Ts(e)];
2574
- return t != null && n && n.gamma ? n.gamma(t) : n;
2575
- }
2576
- function Ts(e) {
2577
- return "interpolate" + e.toLowerCase().split("-").map((e) => e[0].toUpperCase() + e.slice(1)).join("");
2578
- }
2579
- var Es = {
2580
- blues: "cfe1f2bed8eca8cee58fc1de74b2d75ba3cf4592c63181bd206fb2125ca40a4a90",
2581
- greens: "d3eecdc0e6baabdda594d3917bc77d60ba6c46ab5e329a512089430e7735036429",
2582
- greys: "e2e2e2d4d4d4c4c4c4b1b1b19d9d9d8888887575756262624d4d4d3535351e1e1e",
2583
- oranges: "fdd8b3fdc998fdb87bfda55efc9244f87f2cf06b18e4580bd14904b93d029f3303",
2584
- purples: "e2e1efd4d4e8c4c5e0b4b3d6a3a0cc928ec3827cb97566ae684ea25c3696501f8c",
2585
- reds: "fdc9b4fcb49afc9e80fc8767fa7051f6573fec3f2fdc2a25c81b1db21218970b13",
2586
- blueGreen: "d5efedc1e8e0a7ddd18bd2be70c6a958ba9144ad77319c5d2089460e7736036429",
2587
- bluePurple: "ccddecbad0e4a8c2dd9ab0d4919cc98d85be8b6db28a55a6873c99822287730f71",
2588
- greenBlue: "d3eecec5e8c3b1e1bb9bd8bb82cec269c2ca51b2cd3c9fc7288abd1675b10b60a1",
2589
- orangeRed: "fddcaffdcf9bfdc18afdad77fb9562f67d53ee6545e24932d32d1ebf130da70403",
2590
- purpleBlue: "dbdaebc8cee4b1c3de97b7d87bacd15b9fc93a90c01e7fb70b70ab056199045281",
2591
- purpleBlueGreen: "dbd8eac8cee4b0c3de93b7d872acd1549fc83892bb1c88a3097f8702736b016353",
2592
- purpleRed: "dcc9e2d3b3d7ce9eccd186c0da6bb2e14da0e23189d91e6fc61159ab07498f023a",
2593
- redPurple: "fccfccfcbec0faa9b8f98faff571a5ec539ddb3695c41b8aa908808d0179700174",
2594
- yellowGreen: "e4f4acd1eca0b9e2949ed68880c97c62bb6e47aa5e3297502083440e723b036034",
2595
- yellowOrangeBrown: "feeaa1fedd84fecc63feb746fca031f68921eb7215db5e0bc54c05ab3d038f3204",
2596
- yellowOrangeRed: "fee087fed16ffebd59fea849fd903efc7335f9522bee3423de1b20ca0b22af0225",
2597
- blueOrange: "134b852f78b35da2cb9dcae1d2e5eff2f0ebfce0bafbbf74e8932fc5690d994a07",
2598
- brownBlueGreen: "704108a0651ac79548e3c78af3e6c6eef1eac9e9e48ed1c74da79e187a72025147",
2599
- purpleGreen: "5b1667834792a67fb6c9aed3e6d6e8eff0efd9efd5aedda971bb75368e490e5e29",
2600
- purpleOrange: "4114696647968f83b7b9b4d6dadbebf3eeeafce0bafbbf74e8932fc5690d994a07",
2601
- redBlue: "8c0d25bf363adf745ef4ae91fbdbc9f2efeed2e5ef9dcae15da2cb2f78b3134b85",
2602
- redGrey: "8c0d25bf363adf745ef4ae91fcdccbfaf4f1e2e2e2c0c0c0969696646464343434",
2603
- yellowGreenBlue: "eff9bddbf1b4bde5b594d5b969c5be45b4c22c9ec02182b82163aa23479c1c3185",
2604
- redYellowBlue: "a50026d4322cf16e43fcac64fedd90faf8c1dcf1ecabd6e875abd04a74b4313695",
2605
- redYellowGreen: "a50026d4322cf16e43fcac63fedd8df9f7aed7ee8ea4d86e64bc6122964f006837",
2606
- pinkYellowGreen: "8e0152c0267edd72adf0b3d6faddedf5f3efe1f2cab6de8780bb474f9125276419",
2607
- spectral: "9e0142d13c4bf0704afcac63fedd8dfbf8b0e0f3a1a9dda269bda94288b55e4fa2",
2608
- viridis: "440154470e61481a6c482575472f7d443a834144873d4e8a39568c35608d31688e2d708e2a788e27818e23888e21918d1f988b1fa08822a8842ab07f35b77943bf7154c56866cc5d7ad1518fd744a5db36bcdf27d2e21be9e51afde725",
2609
- magma: "0000040404130b0924150e3720114b2c11603b0f704a107957157e651a80721f817f24828c29819a2e80a8327db6377ac43c75d1426fde4968e95462f1605df76f5cfa7f5efc8f65fe9f6dfeaf78febf84fece91fddea0fcedaffcfdbf",
2610
- inferno: "0000040403130c0826170c3b240c4f330a5f420a68500d6c5d126e6b176e781c6d86216b932667a12b62ae305cbb3755c73e4cd24644dd513ae65c30ed6925f3771af8850ffb9506fca50afcb519fac62df6d645f2e661f3f484fcffa4",
2611
- plasma: "0d088723069033059742039d5002a25d01a66a00a87801a88405a7900da49c179ea72198b12a90ba3488c33d80cb4779d35171da5a69e16462e76e5bed7953f2834cf68f44fa9a3dfca636fdb32ffec029fcce25f9dc24f5ea27f0f921",
2612
- cividis: "00205100235800265d002961012b65042e670831690d346b11366c16396d1c3c6e213f6e26426e2c456e31476e374a6e3c4d6e42506e47536d4c566d51586e555b6e5a5e6e5e616e62646f66676f6a6a706e6d717270717573727976737c79747f7c75827f758682768985778c8877908b78938e789691789a94789e9778a19b78a59e77a9a177aea575b2a874b6ab73bbaf71c0b26fc5b66dc9b96acebd68d3c065d8c462ddc85fe2cb5ce7cf58ebd355f0d652f3da4ff7de4cfae249fce647",
2613
- rainbow: "6e40aa883eb1a43db3bf3cafd83fa4ee4395fe4b83ff576eff6659ff7847ff8c38f3a130e2b72fcfcc36bee044aff05b8ff4576ff65b52f6673af27828ea8d1ddfa319d0b81cbecb23abd82f96e03d82e14c6edb5a5dd0664dbf6e40aa",
2614
- sinebow: "ff4040fc582af47218e78d0bd5a703bfbf00a7d5038de70b72f41858fc2a40ff402afc5818f4720be78d03d5a700bfbf03a7d50b8de71872f42a58fc4040ff582afc7218f48d0be7a703d5bf00bfd503a7e70b8df41872fc2a58ff4040",
2615
- turbo: "23171b32204a3e2a71453493493eae4b49c54a53d7485ee44569ee4074f53c7ff8378af93295f72e9ff42ba9ef28b3e926bce125c5d925cdcf27d5c629dcbc2de3b232e9a738ee9d3ff39347f68950f9805afc7765fd6e70fe667cfd5e88fc5795fb51a1f84badf545b9f140c5ec3cd0e637dae034e4d931ecd12ef4c92bfac029ffb626ffad24ffa223ff9821ff8d1fff821dff771cfd6c1af76118f05616e84b14df4111d5380fcb2f0dc0260ab61f07ac1805a313029b0f00950c00910b00",
2616
- browns: "eedbbdecca96e9b97ae4a865dc9856d18954c7784cc0673fb85536ad44339f3632",
2617
- tealBlues: "bce4d89dd3d181c3cb65b3c245a2b9368fae347da0306a932c5985",
2618
- teals: "bbdfdfa2d4d58ac9c975bcbb61b0af4da5a43799982b8b8c1e7f7f127273006667",
2619
- warmGreys: "dcd4d0cec5c1c0b8b4b3aaa7a59c9998908c8b827f7e7673726866665c5a59504e",
2620
- goldGreen: "f4d166d5ca60b6c35c98bb597cb25760a6564b9c533f8f4f33834a257740146c36",
2621
- goldOrange: "f4d166f8be5cf8aa4cf5983bf3852aef701be2621fd65322c54923b142239e3a26",
2622
- goldRed: "f4d166f6be59f9aa51fc964ef6834bee734ae56249db5247cf4244c43141b71d3e",
2623
- lightGreyRed: "efe9e6e1dad7d5cbc8c8bdb9bbaea9cd967ddc7b43e15f19df4011dc000b",
2624
- lightGreyTeal: "e4eaead6dcddc8ced2b7c2c7a6b4bc64b0bf22a6c32295c11f85be1876bc",
2625
- lightMulti: "e0f1f2c4e9d0b0de9fd0e181f6e072f6c053f3993ef77440ef4a3c",
2626
- lightOrange: "f2e7daf7d5baf9c499fab184fa9c73f68967ef7860e8645bde515bd43d5b",
2627
- lightTealBlue: "e3e9e0c0dccf9aceca7abfc859afc0389fb9328dad2f7ca0276b95255988",
2628
- darkBlue: "3232322d46681a5c930074af008cbf05a7ce25c0dd38daed50f3faffffff",
2629
- darkGold: "3c3c3c584b37725e348c7631ae8b2bcfa424ecc31ef9de30fff184ffffff",
2630
- darkGreen: "3a3a3a215748006f4d048942489e4276b340a6c63dd2d836ffeb2cffffaa",
2631
- darkMulti: "3737371f5287197d8c29a86995ce3fffe800ffffff",
2632
- darkRed: "3434347036339e3c38cc4037e75d1eec8620eeab29f0ce32ffeb2c"
2633
- }, Ds = {
2634
- accent: co,
2635
- category10: so,
2636
- category20: "1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",
2637
- category20b: "393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6",
2638
- category20c: "3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9",
2639
- dark2: lo,
2640
- observable10: uo,
2641
- paired: fo,
2642
- pastel1: po,
2643
- pastel2: mo,
2644
- set1: ho,
2645
- set2: go,
2646
- set3: _o,
2647
- tableau10: "4c78a8f58518e4575672b7b254a24beeca3bb279a2ff9da69d755dbab0ac",
2648
- tableau20: "4c78a89ecae9f58518ffbf7954a24b88d27ab79a20f2cf5b43989483bcb6e45756ff9d9879706ebab0acd67195fcbfd2b279a2d6a5c99e765fd8b5a5"
2649
- };
2650
- function Os(e) {
2651
- if (te(e)) return e;
2652
- let t = e.length / 6 | 0, n = Array(t);
2653
- for (let r = 0; r < t;) n[r] = "#" + e.slice(r * 6, ++r * 6);
2654
- return n;
2655
- }
2656
- function ks(e, t) {
2657
- for (let n in e) js(n, t(e[n]));
2658
- }
2659
- var As = {};
2660
- ks(Ds, Os), ks(Es, (e) => Ss(Os(e)));
2661
- function js(e, t) {
2662
- return e &&= e.toLowerCase(), arguments.length > 1 ? (As[e] = t, this) : As[e];
2663
- }
2664
- //#endregion
2665
- //#region ../core/src/view/viewError.js
2666
- var Q = class extends Error {
2667
- constructor(e, t) {
2668
- super(e), this.name = "ViewError", this.view = t;
2669
- }
2670
- }, Ms = class {
2671
- constructor(e = Infinity, t = Float64Array, n = Uint32Array) {
2672
- let r = e !== Infinity;
2673
- this.ids = r ? new n(e) : [], this.values = r ? new t(e) : [], this.capacity = e, this.length = 0;
2674
- }
2675
- clear() {
2676
- this.length = 0;
2677
- }
2678
- push(e, t) {
2679
- if (this.length === this.capacity) throw RangeError("Queue is at capacity.");
2680
- let n = this.length++;
2681
- for (; n > 0;) {
2682
- let e = n - 1 >> 1, r = this.values[e];
2683
- if (t >= r) break;
2684
- this.ids[n] = this.ids[e], this.values[n] = r, n = e;
2685
- }
2686
- this.ids[n] = e, this.values[n] = t;
2687
- }
2688
- pop() {
2689
- if (this.length === 0) return;
2690
- let e = this.ids, t = this.values, n = e[0], r = --this.length;
2691
- if (r > 0) {
2692
- let n = e[r], i = t[r], a = 0, o = r >> 1;
2693
- for (; a < o;) {
2694
- let n = (a << 1) + 1, o = n + 1, s = n + (o < r & +(t[o] < t[n]));
2695
- if (t[s] >= i) break;
2696
- e[a] = e[s], t[a] = t[s], a = s;
2697
- }
2698
- e[a] = n, t[a] = i;
2699
- }
2700
- return n;
2701
- }
2702
- peek() {
2703
- return this.length > 0 ? this.ids[0] : void 0;
2704
- }
2705
- peekValue() {
2706
- return this.length > 0 ? this.values[0] : void 0;
2707
- }
2708
- shrink() {
2709
- Array.isArray(this.ids) && (this.ids.length = this.length), Array.isArray(this.values) && (this.values.length = this.length);
2710
- }
2711
- }, Ns = Symbol("runtimeNode"), Ps = 1e6;
2712
- function Fs(e) {
2713
- return e ? (t, n) => {
2714
- e.addDisposer(t, n);
2715
- } : () => void 0;
2716
- }
2717
- function Is(e, t) {
2718
- let n = {
2719
- id: e.id,
2720
- name: e.name,
2721
- kind: e.kind,
2722
- get() {
2723
- return e.value;
2724
- },
2725
- subscribe(t) {
2726
- return e.listeners.add(t), () => {
2727
- e.listeners.delete(t);
2728
- };
2729
- }
2730
- };
2731
- return Object.defineProperty(n, Ns, {
2732
- enumerable: !1,
2733
- configurable: !1,
2734
- writable: !1,
2735
- value: e
2736
- }), t ? Object.assign(n, { set(e) {
2737
- t(e);
2738
- } }) : n;
2739
- }
2740
- function Ls(e) {
2741
- let t = e[Ns];
2742
- if (!t) throw Error("ParamRef is not bound to this graph runtime. Expected runtime-created ref.");
2743
- return t;
2744
- }
2745
- function Rs(e) {
2746
- return typeof e.rank == "number" ? e.rank : Ls(e).rank;
2747
- }
2748
- function zs(e) {
2749
- for (let t of e) t();
2750
- }
2751
- var Bs = class {
2752
- #e = 1;
2753
- #t = 1;
2754
- #n = 0;
2755
- #r = !1;
2756
- #i = !1;
2757
- #a = /* @__PURE__ */ new Set();
2758
- #o = /* @__PURE__ */ new Set();
2759
- #s = new Ms();
2760
- #c = new Ms();
2761
- #l = /* @__PURE__ */ new Set();
2762
- #u;
2763
- constructor(e = {}) {
2764
- this.#u = Fs(e.lifecycleRegistry);
2765
- }
2766
- createWritable(e, t, n, r, i = {}) {
2767
- let a = "n" + this.#e++, o = i.notify ?? !0, s = {
2768
- id: a,
2769
- name: t,
2770
- kind: n,
2771
- value: r,
2772
- rank: 0,
2773
- disposed: !1,
2774
- listeners: /* @__PURE__ */ new Set(),
2775
- subscribe(e) {
2776
- return s.listeners.add(e), () => {
2777
- s.listeners.delete(e);
2778
- };
2779
- }
2780
- };
2781
- return this.#u(e, () => {
2782
- s.disposed = !0, s.listeners.clear();
2783
- }), Is(s, (e) => {
2784
- if (s.disposed) throw Error("Cannot set disposed parameter \"" + t + "\" (" + a + ").");
2785
- e !== s.value && (s.value = e, o && (zs(s.listeners), this.#m()));
2786
- });
2787
- }
2788
- computed(e, t, n, r) {
2789
- let i = n.reduce((e, t) => Math.max(e, Rs(t)), 0), a = {
2790
- id: "n" + this.#e++,
2791
- name: t,
2792
- kind: "derived",
2793
- rank: i + 1,
2794
- value: r(),
2795
- disposed: !1,
2796
- listeners: /* @__PURE__ */ new Set(),
2797
- fn: r,
2798
- subscribe(e) {
2799
- return a.listeners.add(e), () => {
2800
- a.listeners.delete(e);
2801
- };
2802
- }
2803
- }, o = n.map((e) => e.subscribe(() => {
2804
- a.disposed || (this.#d(a), e.propagation === "sync" && this.flushNow());
2805
- }));
2806
- return this.#u(e, () => {
2807
- a.disposed || (a.disposed = !0, o.forEach((e) => e()), a.listeners.clear(), this.#a.delete(a));
2808
- }), Is(a);
2809
- }
2810
- effect(e, t, n) {
2811
- let r = t.reduce((e, t) => Math.max(e, Rs(t)), 0), i = {
2812
- id: "n" + this.#e++,
2813
- rank: r + 1,
2814
- disposed: !1,
2815
- fn: n
2816
- }, a = () => {
2817
- i.disposed || this.#f(i);
2818
- }, o = t.map((e) => e.subscribe(a)), s = () => {
2819
- i.disposed || (i.disposed = !0, o.forEach((e) => e()), this.#o.delete(i));
2820
- };
2821
- return this.#u(e, s), s;
2822
- }
2823
- runInTransaction(e) {
2824
- this.#n += 1;
2825
- try {
2826
- return e();
2827
- } finally {
2828
- --this.#n, this.#n === 0 && this.#m();
2829
- }
2830
- }
2831
- flushNow() {
2832
- if (!(this.#n > 0 || this.#i)) {
2833
- this.#r = !1, this.#i = !0;
2834
- try {
2835
- let e = !0;
2836
- for (; e;) {
2837
- for (e = !1; this.#s.length > 0;) {
2838
- e = !0;
2839
- let t = this.#s.pop();
2840
- if (this.#a.delete(t), t.disposed) continue;
2841
- let n = t.value, r = t.fn();
2842
- r !== n && (t.value = r, zs(t.listeners));
2843
- }
2844
- for (; this.#c.length > 0;) {
2845
- e = !0;
2846
- let t = this.#c.pop();
2847
- this.#o.delete(t), !t.disposed && t.fn();
2848
- }
2849
- }
2850
- } finally {
2851
- this.#i = !1, this.#g();
2852
- }
2853
- }
2854
- }
2855
- whenPropagated(e = {}) {
2856
- if (this.#h()) return Promise.resolve();
2857
- let { signal: t, timeoutMs: n } = e;
2858
- return t?.aborted ? Promise.reject(/* @__PURE__ */ Error("whenPropagated aborted")) : new Promise((e, r) => {
2859
- let i = {
2860
- resolve: e,
2861
- reject: r
2862
- };
2863
- t && (i.abortHandler = () => {
2864
- this.#l.delete(i), r(/* @__PURE__ */ Error("whenPropagated aborted"));
2865
- }, t.addEventListener("abort", i.abortHandler, { once: !0 })), n != null && (i.timeoutId = setTimeout(() => {
2866
- this.#l.delete(i), i.abortHandler && t?.removeEventListener("abort", i.abortHandler), r(/* @__PURE__ */ Error("whenPropagated timeout after " + n + " ms"));
2867
- }, n)), this.#l.add(i);
2868
- });
2869
- }
2870
- #d(e) {
2871
- this.#a.has(e) || (this.#a.add(e), this.#s.push(e, this.#p(e.rank)), this.#m());
2872
- }
2873
- #f(e) {
2874
- this.#o.has(e) || (this.#o.add(e), this.#c.push(e, this.#p(e.rank)), this.#m());
2875
- }
2876
- #p(e) {
2877
- let t = this.#t % Ps;
2878
- return this.#t += 1, e * Ps + t;
2879
- }
2880
- #m() {
2881
- this.#n > 0 || this.#r || this.#i || (this.#r = !0, queueMicrotask(() => {
2882
- this.flushNow();
2883
- }));
2884
- }
2885
- #h() {
2886
- return this.#n === 0 && !this.#r && !this.#i && this.#s.length === 0 && this.#c.length === 0 && this.#a.size === 0 && this.#o.size === 0;
2887
- }
2888
- #g() {
2889
- if (this.#h()) {
2890
- for (let e of this.#l) e.timeoutId && clearTimeout(e.timeoutId), e.resolve();
2891
- this.#l.clear();
2892
- }
2893
- }
2894
- }, Vs = class {
2895
- #e = 1;
2896
- #t = /* @__PURE__ */ new Map();
2897
- createOwner(e, t) {
2898
- let n = e + ":" + t + ":" + this.#e++;
2899
- return this.#t.set(n, /* @__PURE__ */ new Set()), n;
2900
- }
2901
- addDisposer(e, t) {
2902
- let n = this.#t.get(e);
2903
- if (!n) throw Error("Unknown owner: " + e);
2904
- n.add(t);
2905
- }
2906
- disposeOwner(e) {
2907
- let t = this.#t.get(e);
2908
- if (t) {
2909
- for (let e of t) e();
2910
- t.clear(), this.#t.delete(e);
2911
- }
2912
- }
2913
- }, Hs = class {
2914
- #e = 1;
2915
- #t = /* @__PURE__ */ new Map();
2916
- createRootScope(e) {
2917
- let t = "scope:" + this.#e++;
2918
- return this.#t.set(t, {
2919
- params: /* @__PURE__ */ new Map(),
2920
- ownerId: e
2921
- }), t;
2922
- }
2923
- createChildScope(e, t) {
2924
- if (!this.#t.has(t)) throw Error("Unknown parent scope: " + t);
2925
- let n = "scope:" + this.#e++;
2926
- return this.#t.set(n, {
2927
- parentScope: t,
2928
- params: /* @__PURE__ */ new Map(),
2929
- ownerId: e
2930
- }), n;
2931
- }
2932
- getOwnerId(e) {
2933
- let t = this.#t.get(e);
2934
- if (!t) throw Error("Unknown scope: " + e);
2935
- return t.ownerId;
2936
- }
2937
- clearScope(e) {
2938
- let t = this.#t.get(e);
2939
- if (!t) throw Error("Unknown scope: " + e);
2940
- t.params.clear();
2941
- }
2942
- register(e, t, n) {
2943
- y(t);
2944
- let r = this.#t.get(e);
2945
- if (!r) throw Error("Unknown scope: " + e);
2946
- if (r.params.has(t)) throw Error("Parameter \"" + t + "\" already exists in scope " + e);
2947
- return r.params.set(t, n), n;
2948
- }
2949
- resolve(e, t) {
2950
- y(t);
2951
- let n = e;
2952
- for (; n;) {
2953
- let e = this.#t.get(n);
2954
- if (!e) throw Error("Unknown scope: " + n);
2955
- let r = e.params.get(t);
2956
- if (r) return r;
2957
- n = e.parentScope;
2958
- }
2959
- }
2960
- };
2961
- //#endregion
2962
- //#region ../core/src/paramRuntime/expressionCompiler.js
2963
- function Us(e, t = {}, n = {}) {
2964
- return l(e, t, n);
2965
- }
2966
- //#endregion
2967
- //#region ../core/src/paramRuntime/expressionRef.js
2968
- function Ws(e, t, n = {}) {
2969
- let r = {}, i = Us(e, r, n), a = /* @__PURE__ */ new Map();
2970
- for (let n of i.globals) {
2971
- if (a.has(n)) continue;
2972
- let i = t(n);
2973
- if (!i) throw Error("Unknown variable \"" + n + "\" in expression: " + e);
2974
- a.set(n, i), Object.defineProperty(r, n, {
2975
- enumerable: !0,
2976
- get() {
2977
- return i.get();
2978
- }
2979
- });
2980
- }
2981
- let o = /* @__PURE__ */ new Set();
2982
- return i.subscribe = (e) => {
2983
- let t = [];
2984
- for (let n of a.values()) t.push(n.subscribe(e));
2985
- for (let n of i.scaleDependencies ?? []) t.push(n.subscribe(e));
2986
- let n = !0, r = () => {
2987
- n && (n = !1, o.delete(r), t.forEach((e) => e()));
2988
- };
2989
- return o.add(r), r;
2990
- }, i.invalidate = () => {
2991
- for (let e of o) e();
2992
- o.clear();
2993
- }, i.identifier = () => i.code + "|" + Array.from(a.values()).map((e) => e.id).concat((i.scaleDependencies ?? []).map((e) => e.id)).join(","), {
2994
- expression: i,
2995
- dependencies: Array.from(a.values()).concat(i.scaleDependencies ?? [])
2996
- };
2997
- }
2998
- //#endregion
2999
- //#region ../core/src/paramRuntime/paramRuntime.js
3000
- var Gs = class {
3001
- #e = new Vs();
3002
- #t = new Bs({ lifecycleRegistry: this.#e });
3003
- #n = new Hs();
3004
- createScope(e) {
3005
- let t = this.#e.createOwner("scope", e ?? "root");
3006
- return e ? this.#n.createChildScope(t, e) : this.#n.createRootScope(t);
3007
- }
3008
- disposeScope(e) {
3009
- let t = this.#n.getOwnerId(e);
3010
- this.#e.disposeOwner(t), this.#n.clearScope(e);
3011
- }
3012
- addScopeDisposer(e, t) {
3013
- let n = this.#n.getOwnerId(e);
3014
- this.#e.addDisposer(n, t);
3015
- }
3016
- registerBase(e, t, n, r) {
3017
- let i = this.#n.getOwnerId(e), a = this.#t.createWritable(i, t, "base", n, r);
3018
- return this.#n.register(e, t, a);
3019
- }
3020
- registerSelection(e, t, n, r) {
3021
- let i = this.#n.getOwnerId(e), a = this.#t.createWritable(i, t, "selection", n, r);
3022
- return this.#n.register(e, t, a);
3023
- }
3024
- registerDerived(e, t, n, r) {
3025
- let { expression: i, dependencies: a } = Ws(n, (t) => this.resolve(e, t), r), o = this.#n.getOwnerId(e), s = this.#t.computed(o, t, a, () => i(null));
3026
- return this.#n.register(e, t, s);
3027
- }
3028
- createExpression(e, t, n) {
3029
- let { expression: r } = Ws(t, (t) => this.resolve(e, t), n);
3030
- return r;
3031
- }
3032
- resolve(e, t) {
3033
- return this.#n.resolve(e, t);
3034
- }
3035
- runInTransaction(e) {
3036
- return this.#t.runInTransaction(e);
3037
- }
3038
- flushNow() {
3039
- this.#t.flushNow();
3040
- }
3041
- whenPropagated(e) {
3042
- return this.#t.whenPropagated(e);
3043
- }
3044
- }, Ks = (e) => new Promise((t) => setTimeout(t, e));
3045
- function qs() {
3046
- return { canceled: !1 };
3047
- }
3048
- function Js(e) {
3049
- let t = e.requestAnimationFrame || window.requestAnimationFrame, n = e.signal, r = e.cancelToken, i = () => new Promise((i, a) => {
3050
- if (r?.canceled) return i();
3051
- if (n?.aborted) return a("aborted");
3052
- let o = performance.now(), s = o + (e.duration || 1e3), c = typeof e.from == "number" ? e.from : 0, l = typeof e.to == "number" ? e.to : 1, u = e.easingFunction || ((e) => e), d = (e) => (e - o) / (s - o), f = (e) => e * (l - c) + c, p = (e) => Math.max(0, Math.min(1, e)), m = (o) => {
3053
- if (r?.canceled) {
3054
- i();
3055
- return;
3056
- }
3057
- n?.aborted ? a("aborted") : (e.onUpdate(f(u(p(d(o))))), o < s ? t(m) : (e.onUpdate(f(u(1))), i()));
3058
- };
3059
- t(m);
3060
- });
3061
- return e.delay ? r?.canceled ? Promise.resolve() : n?.aborted ? Promise.reject("aborted") : Ks(e.delay).then(i) : i();
3062
- }
3063
- //#endregion
3064
- //#region ../core/src/utils/animator.js
3065
- var Ys = class {
3066
- constructor(e) {
3067
- this._renderCallback = e, this._renderRequested = !1, this._warn = !1, this.transitions = [], this.transitionsEnabled = !0;
3068
- }
3069
- requestTransition(e) {
3070
- this.cancelTransition(e), this.transitions.push(e), this.requestRender();
3071
- }
3072
- cancelTransition(e) {
3073
- let t = this.transitions.indexOf(e);
3074
- t >= 0 && this.transitions.splice(t, 1);
3075
- }
3076
- requestRender() {
3077
- this._renderRequested ? this._warn && console.warn("Render already requested!") : (this._renderRequested = !0, window.requestAnimationFrame((e) => {
3078
- this._renderRequested = !1;
3079
- let t = this.transitions;
3080
- this.transitions = [];
3081
- let n;
3082
- for (; n = t.shift();) n(e);
3083
- this._renderCallback(e);
3084
- }));
3085
- }
3086
- transition(e) {
3087
- return Js({
3088
- requestAnimationFrame: (e) => this.requestTransition(e),
3089
- ...e
3090
- });
3091
- }
3092
- };
3093
- function Xs(e, t, n, r, i) {
3094
- let a = 0, o = !0, s = !1, c = structuredClone(i), l = c;
3095
- function u(e, t, n, r) {
3096
- return t + (e - t) * 2 ** (-n / r);
3097
- }
3098
- function d(i) {
3099
- if (s = !1, o) return;
3100
- let d = i - a;
3101
- a = i;
3102
- for (let e of Object.keys(l)) c[e] = u(c[e], l[e], d, n);
3103
- t(c);
3104
- let p = -Infinity;
3105
- for (let e of Object.keys(l)) p = Math.max(p, Math.abs(l[e] - c[e]));
3106
- p < r ? (c = l, t(c), o = !0, p != 0 && e.requestRender()) : f();
3107
- }
3108
- function f() {
3109
- s || (s = !0, e.requestTransition(d));
3110
- }
3111
- function p(n) {
3112
- l = n, e.transitionsEnabled === !1 ? (c = l, o = !0, s = !1, e.cancelTransition(d), t(c)) : o && (o = !1, a = Zs(), d(a));
3113
- }
3114
- return p.stop = () => {
3115
- o = !0, s = !1, e.cancelTransition(d);
3116
- }, p.snap = (e) => {
3117
- l = e, c = e, p.stop(), t(c);
3118
- }, p;
3119
- }
3120
- function Zs() {
3121
- let e = globalThis.document?.timeline?.currentTime;
3122
- return typeof e == "number" ? e : performance.now();
3123
- }
3124
- //#endregion
3125
- //#region ../core/src/paramRuntime/viewParamRuntime.js
3126
- var Qs = class {
3127
- #e;
3128
- #t;
3129
- #n = /* @__PURE__ */ new Map();
3130
- #r = /* @__PURE__ */ new Map();
3131
- #i = /* @__PURE__ */ new Map();
3132
- #a = /* @__PURE__ */ new Map();
3133
- #o;
3134
- #s;
3135
- #c;
3136
- #l;
3137
- #u = !1;
3138
- constructor(e, t, n, r = {}) {
3139
- this.#o = e ?? (() => void 0), this.#s = t ?? (() => void 0), this.#c = n, this.#l = r.snapTransitionedUpdates ?? !1;
3140
- let i = this.#o();
3141
- i ? (this.#e = i.#e, this.#t = this.#e.createScope(i.#t)) : (this.#e = new Gs(), this.#t = this.#e.createScope());
3142
- }
3143
- registerParam(e) {
3144
- let t = e.name;
3145
- if (y(t), this.#i.has(t)) throw Error("Parameter \"" + t + "\" already registered in this scope.");
3146
- ec(e);
3147
- let n, r;
3148
- if (e.push == "outer") {
3149
- let i = this.findRuntimeForParam(t);
3150
- if (!i) throw Error(`Parameter "${t}" not found in outer scope!`);
3151
- let a = i.paramConfigs.get(t);
3152
- if (!a) throw Error(`Outer parameter "${t}" exists as a value but has no registered config.`);
3153
- if ("expr" in a || "select" in a || "ruler" in a) throw Error(`The outer parameter "${t}" must not have expr, select, or ruler properties!`);
3154
- n = (e) => {
3155
- i.setValue(t, e);
3156
- }, this.#n.set(t, n), "ruler" in e && (r = m(e, this), n(r));
3157
- } else if ("value" in e) r = m(e, this), n = "transition" in e ? this.#f(t, r, e.transition) : this.#d(t, r);
3158
- else if ("expr" in e) {
3159
- if ("transition" in e) this.#p(t, e.expr, e.transition);
3160
- else {
3161
- let n = this.#e.registerDerived(this.#t, t, e.expr, { resolveScaleResolution: this.#s });
3162
- this.#r.set(t, n);
3163
- }
3164
- n = () => {
3165
- throw Error("Cannot set derived parameter \"" + t + "\".");
3166
- };
3167
- } else r = m(e, this), n = this.#d(t, r);
3168
- if ("select" in e) {
3169
- if (r ??= m(e, this), !this.#n.has(t)) {
3170
- let e = this.#e.registerSelection(this.#t, t, r);
3171
- this.#r.set(t, e), this.#n.set(t, (t) => {
3172
- e.set(t), this.#e.flushNow();
3173
- }), n = this.#n.get(t);
3174
- }
3175
- n(r);
3176
- }
3177
- return this.#i.set(t, e), n;
3178
- }
3179
- allocateSetter(e, t, n = !1) {
3180
- if (y(e), this.#n.has(e)) throw Error("Setter already allocated for parameter: " + e);
3181
- let r = this.#e.registerBase(this.#t, e, t, { notify: !n });
3182
- this.#r.set(e, r);
3183
- let i = (e) => {
3184
- r.set(e), this.#e.flushNow();
3185
- };
3186
- return this.#n.set(e, i), i;
3187
- }
3188
- setValue(e, t, n) {
3189
- y(e);
3190
- let r = this.#n.get(e);
3191
- if (!r) throw Error("Writable parameter not found in this scope: " + e);
3192
- r(t, n);
3193
- }
3194
- getValue(e) {
3195
- return this.#r.get(e)?.get();
3196
- }
3197
- getTargetValue(e) {
3198
- return y(e), this.#a.get(e)?.target ?? this.getValue(e);
3199
- }
3200
- subscribe(e, t) {
3201
- y(e);
3202
- let n = this.findRuntimeForParam(e);
3203
- if (!n) throw Error("Parameter not found: " + e);
3204
- let r = n.#r.get(e);
3205
- if (!r) throw Error("Parameter found without local reference: " + e);
3206
- return r.subscribe(t);
3207
- }
3208
- findValue(e) {
3209
- return this.findRuntimeForParam(e)?.getValue(e);
3210
- }
3211
- findTargetValue(e) {
3212
- return this.findRuntimeForParam(e)?.getTargetValue(e);
3213
- }
3214
- get paramConfigs() {
3215
- return this.#i;
3216
- }
3217
- hasLocalParam(e) {
3218
- return y(e), this.#r.has(e);
3219
- }
3220
- hasConfiguredParamInScopeChain(e) {
3221
- return y(e), this.#i.has(e) ? !0 : this.#o()?.hasConfiguredParamInScopeChain(e) ?? !1;
3222
- }
3223
- findRuntimeForParam(e) {
3224
- return this.#r.has(e) ? this : this.#o()?.findRuntimeForParam(e);
3225
- }
3226
- getDebugState() {
3227
- let e = [];
3228
- for (let [t, n] of this.#r) {
3229
- let r = this.#i.get(t);
3230
- e.push({
3231
- name: t,
3232
- kind: $s(r),
3233
- value: n.get(),
3234
- writable: this.#n.has(t),
3235
- configured: !!r,
3236
- config: r ? structuredClone(r) : void 0,
3237
- target: this.#a.get(t)?.target
3238
- });
3239
- }
3240
- return {
3241
- scopeId: this.#t,
3242
- disposed: this.#u,
3243
- params: e
3244
- };
3245
- }
3246
- createExpression(e) {
3247
- return this.#e.createExpression(this.#t, e, { resolveScaleResolution: this.#s });
3248
- }
3249
- watchExpression(e, t, n = {}) {
3250
- let r = this.createExpression(e), i = r.subscribe(t);
3251
- return (n.scopeOwned ?? !0) && this.#e.addScopeDisposer(this.#t, i), n.registerDisposer?.(i), r;
3252
- }
3253
- #d(e, t) {
3254
- let n = this.#e.registerBase(this.#t, e, t);
3255
- this.#r.set(e, n);
3256
- let r = (e) => {
3257
- n.set(e), this.#e.flushNow();
3258
- };
3259
- return this.#n.set(e, r), r;
3260
- }
3261
- #f(e, t, n) {
3262
- let r = this.#m(e, t, n), i = (t, n) => {
3263
- this.#h(e, r, t, n);
3264
- };
3265
- return this.#n.set(e, i), i;
3266
- }
3267
- #p(e, t, n) {
3268
- let r = this.createExpression(t), i = this.#m(e, r(null), n), a = r.subscribe(() => {
3269
- this.#h(e, i, r(null), { animate: !this.#l });
3270
- });
3271
- this.#e.addScopeDisposer(this.#t, a);
3272
- }
3273
- #m(e, t, n) {
3274
- let r = tc(e, t), i = this.#e.registerBase(this.#t, e, r);
3275
- this.#r.set(e, i);
3276
- let a = this.#c;
3277
- if (!a) throw Error(`The parameter "${e}" uses transition but no animator is available.`);
3278
- let o = Xs(a, ({ value: e }) => {
3279
- i.set(e), this.#e.flushNow();
3280
- }, n.halfLife ?? 80, n.epsilon ?? .01, { value: i.get() }), s = {
3281
- target: i.get(),
3282
- smoother: o,
3283
- dispose: () => {
3284
- o.stop(), this.#a.delete(e);
3285
- }
3286
- };
3287
- return this.#a.set(e, s), this.#e.addScopeDisposer(this.#t, s.dispose), s;
3288
- }
3289
- #h(e, t, n, r = {}) {
3290
- let i = tc(e, n);
3291
- t.target = i, r.animate === !1 ? t.smoother.snap({ value: i }) : t.smoother({ value: i });
3292
- }
3293
- evaluateAndGet(e) {
3294
- return this.createExpression(e)();
3295
- }
3296
- runInTransaction(e) {
3297
- return this.#e.runInTransaction(e);
3298
- }
3299
- flushNow() {
3300
- this.#e.flushNow();
3301
- }
3302
- whenPropagated(e) {
3303
- return this.#e.whenPropagated(e);
3304
- }
3305
- finalizeInitialization() {
3306
- this.#l = !1;
3307
- }
3308
- dispose() {
3309
- this.#u || (this.#u = !0, this.#e.disposeScope(this.#t), this.#n.clear(), this.#r.clear(), this.#i.clear(), this.#a.clear());
3310
- }
3311
- hasPointSelections() {
3312
- for (let e of this.#i.values()) if (v(e)) {
3313
- let t = e.select;
3314
- if (s(t)) {
3315
- if (t == "point") return !0;
3316
- } else if (t.type == "point") return !0;
3317
- }
3318
- return !1;
3319
- }
3320
- };
3321
- function $s(e) {
3322
- return e ? e.push === "outer" ? "push" : "select" in e ? "selection" : "ruler" in e ? "ruler" : "expr" in e ? "derived" : "base" : "auto";
3323
- }
3324
- function ec(e) {
3325
- let t = e.name;
3326
- if ("value" in e && "expr" in e) throw Error(`The parameter "${t}" must not have both value and expr properties!`);
3327
- if ("expr" in e && "bind" in e) throw Error(`The parameter "${t}" must not have both expr and bind properties!`);
3328
- if (!("transition" in e)) return;
3329
- if ("select" in e || "ruler" in e || e.push === "outer") throw Error(`The parameter "${t}" must not use transition with select, ruler, or push.`);
3330
- if (!("value" in e || "expr" in e)) throw Error(`The transitioned parameter "${t}" must have a value or expr property.`);
3331
- let n = e.transition;
3332
- if (!n) throw Error(`The parameter "${t}" must have a transition configuration.`);
3333
- if (n.type !== "lerp") throw Error(`Unsupported transition type for parameter "${t}": ${n.type}`);
3334
- if (n.halfLife != null && (!Number.isFinite(n.halfLife) || n.halfLife <= 0)) throw Error(`The transition halfLife for parameter "${t}" must be a positive finite number.`);
3335
- if (n.epsilon != null && (!Number.isFinite(n.epsilon) || n.epsilon < 0)) throw Error(`The transition epsilon for parameter "${t}" must be a non-negative finite number.`);
3336
- }
3337
- function tc(e, t) {
3338
- if (typeof t != "number" || !Number.isFinite(t)) throw Error(`Transitioned parameter "${e}" must have a finite numeric value.`);
3339
- return t;
3340
- }
3341
- //#endregion
3342
- //#region ../core/src/utils/addBaseUrl.js
3343
- function nc(e, t) {
3344
- return !t || /^(data:|([A-Za-z]+:)?\/\/)/.test(e) || e.startsWith("/") ? e : (t.endsWith("/") || (t += "/"), t + e);
3345
- }
3346
- function rc(e) {
3347
- if (!e) return e;
3348
- if (/[?#]/.test(e)) throw Error(`Invalid base URL: ${e} - cannot contain query or hash.`);
3349
- return e.endsWith("/") ? e : e + "/";
3350
- }
3351
- //#endregion
3352
- //#region ../core/src/config/mergeConfig.js
3353
- function ic(e) {
3354
- return r(e) && !Array.isArray(e);
3355
- }
3356
- function ac(e) {
3357
- let t = {};
3358
- for (let [n, r] of Object.entries(e)) t[n] = oc(r);
3359
- return t;
3360
- }
3361
- function oc(e) {
3362
- return Array.isArray(e) ? e.map(oc) : ic(e) ? ac(e) : e;
3363
- }
3364
- function sc(e, t) {
3365
- for (let [n, r] of Object.entries(t)) {
3366
- if (r === void 0) continue;
3367
- let t = e[n];
3368
- ic(r) && ic(t) ? sc(t, r) : e[n] = oc(r);
3369
- }
3370
- return e;
3371
- }
3372
- function cc(e) {
3373
- let t = {};
3374
- for (let n of e) n && sc(t, n);
3375
- return t;
3376
- }
3377
- //#endregion
3378
- //#region ../core/src/view/viewChrome.js
3379
- var lc = /* @__PURE__ */ new WeakMap();
3380
- function uc(e, t) {
3381
- lc.set(e, t);
3382
- }
3383
- function dc(e) {
3384
- return lc.get(e);
3385
- }
3386
- function fc(e) {
3387
- return lc.has(e);
3388
- }
3389
- function pc(e) {
3390
- let t = e;
3391
- for (; t;) {
3392
- let n = lc.get(t);
3393
- if (n === "excludeSubtree" || t === e && n === "exclude") return !0;
3394
- t = t.layoutParent;
3395
- }
3396
- return !1;
3397
- }
3398
- //#endregion
3399
- //#region ../core/src/view/postScaleParams.js
3400
- var mc = /* @__PURE__ */ new WeakMap();
3401
- function hc(e, t) {
3402
- mc.set(e, t);
3403
- }
3404
- function gc(e) {
3405
- return mc.get(e);
3406
- }
3407
- //#endregion
3408
- //#region ../core/src/data/namedDataScope.js
3409
- var _c = class {
3410
- name;
3411
- owner;
3412
- getDefaultData;
3413
- #e;
3414
- #t = !1;
3415
- #n = 0;
3416
- #r = !1;
3417
- constructor(e, t, n) {
3418
- this.name = e, this.owner = t, this.getDefaultData = n;
3419
- }
3420
- get disposed() {
3421
- return this.#r;
3422
- }
3423
- beginUpdate() {
3424
- if (this.#r) throw Error(`Named dataset "${this.name}" has been disposed.`);
3425
- return ++this.#n;
3426
- }
3427
- isCurrentUpdate(e) {
3428
- return !this.#r && e === this.#n;
3429
- }
3430
- getData() {
3431
- if (this.#r) throw Error(`Named dataset "${this.name}" has been disposed.`);
3432
- let e = this.#t ? this.#e : this.getDefaultData();
3433
- if (e === void 0) return [];
3434
- if (!Array.isArray(e)) throw Error(`Named data "${this.name}" is not an array!`);
3435
- return e;
3436
- }
3437
- setData(e) {
3438
- if (!Array.isArray(e)) throw Error(`Named data "${this.name}" is not an array!`);
3439
- this.#e = e, this.#t = !0;
3440
- }
3441
- resetData() {
3442
- this.#e = void 0, this.#t = !1;
3443
- }
3444
- dispose() {
3445
- this.#e = void 0, this.#t = !1, this.#n++, this.#r = !0;
3446
- }
3447
- }, vc = class {
3448
- view;
3449
- #e = /* @__PURE__ */ new Map();
3450
- #t = /* @__PURE__ */ new Map();
3451
- constructor(e) {
3452
- this.view = e;
3453
- for (let [t, n] of Object.entries(e.spec.datasets ?? {})) this.#e.set(t, new _c(t, e, () => n));
3454
- }
3455
- getLocalBinding(e) {
3456
- return this.#e.get(e);
3457
- }
3458
- findDeclaredBinding(e) {
3459
- return this.#e.get(e) || this.view.dataParent?.namedDataScope.findDeclaredBinding(e);
3460
- }
3461
- resolve(e) {
3462
- let t = this.#e.get(e);
3463
- if (t) return t;
3464
- let n = this.view.dataParent?.namedDataScope;
3465
- if (n) return n.resolve(e);
3466
- let r = this.#t.get(e);
3467
- return r || (r = new _c(e, void 0, () => this.view.context.getNamedDataFromProvider(e)), this.#t.set(e, r)), r;
3468
- }
3469
- dispose() {
3470
- for (let e of this.#e.values()) e.dispose();
3471
- this.#e.clear();
3472
- for (let e of this.#t.values()) e.dispose();
3473
- this.#t.clear();
3474
- }
3475
- }, yc = "VISIT_SKIP", bc = "VISIT_STOP", xc = (e) => e, Sc = class {
3476
- spec;
3477
- namedDataScope;
3478
- #e;
3479
- #t;
3480
- #n = {};
3481
- #r = {};
3482
- #i = {};
3483
- #a;
3484
- #o;
3485
- #s = !1;
3486
- #c = !1;
3487
- #l = void 0;
3488
- #u = !1;
3489
- #d = [];
3490
- opacityFunction = xc;
3491
- #f = [];
3492
- #p = "none";
3493
- #m = /* @__PURE__ */ new Map();
3494
- facetCoords = new oe([], JSON.stringify);
3495
- constructor(e, t, n, r, i, a = {}) {
3496
- if (!e) throw Error("View spec must be defined!");
3497
- if (this.context = t, this.layoutParent = n, this.dataParent = r, this.#t = i, this.spec = e, this.namedDataScope = new vc(this), r && e.theme !== void 0) throw Error("\"theme\" is only supported at the root specification. Use \"config\" and \"style\" for subtree customization.");
3498
- let o = r ? r.getConfigScopes() : [t.getBaseConfig()], s = e.config;
3499
- if (this.#e = [...o, s].filter((e) => !!e), this.resolutions = {
3500
- scale: {},
3501
- axis: {},
3502
- legend: {}
3503
- }, We(this), this.options = {
3504
- inheritEncoding: !1,
3505
- layoutSizeParams: "own",
3506
- ...a
3507
- }, this.flowHandle = void 0, this.needsAxes = {
3508
- x: !1,
3509
- y: !1
3510
- }, this.paramRuntime = new Qs(() => this.dataParent?.paramRuntime, (e) => this.getScaleResolution(e), t.animator, { snapTransitionedUpdates: !0 }), e.params) {
3511
- let t = /* @__PURE__ */ new Set();
3512
- for (let n of e.params) {
3513
- if ("expr" in n) {
3514
- let { usesScaleHelper: e, globals: r } = u(n.expr), i = r.some((e) => t.has(e));
3515
- if (e || i) {
3516
- t.add(n.name), this.#d.push(n);
3517
- continue;
3518
- }
3519
- }
3520
- this.paramRuntime.registerParam(n);
3521
- }
3522
- }
3523
- this.options.layoutSizeParams !== "inherit" && (this.#a = this.#h("width"), this.#o = this.#h("height"));
3524
- }
3525
- #h(e) {
3526
- if (!(this.paramRuntime.hasLocalParam(e) || this.options.layoutSizeParams != "force" && this.paramRuntime.hasConfiguredParamInScopeChain(e))) return this.paramRuntime.allocateSetter(e, 0);
3527
- }
3528
- get name() {
3529
- return this.spec.name ?? this.#t;
3530
- }
3531
- get explicitName() {
3532
- return this.spec.name;
3533
- }
3534
- getZindex() {
3535
- return this.spec.zindex ?? 0;
3536
- }
3537
- get defaultName() {
3538
- return this.#t;
3539
- }
3540
- getConfig() {
3541
- return cc(this.#e);
3542
- }
3543
- getCursorSpec() {
3544
- return this.spec.cursor;
3545
- }
3546
- getCursor() {
3547
- let e = this.getCursorSpec();
3548
- return p(e) ? this.paramRuntime.evaluateAndGet(e.expr) : e;
3549
- }
3550
- watchCursor(e, t) {
3551
- let n = this.getCursorSpec();
3552
- p(n) && this.paramRuntime.watchExpression(n.expr, e, {
3553
- scopeOwned: !1,
3554
- registerDisposer: t
3555
- });
3556
- }
3557
- getConfigScopes() {
3558
- return this.#e.slice();
3559
- }
3560
- get coords() {
3561
- return this.facetCoords.values().next().value;
3562
- }
3563
- getPadding() {
3564
- return this._cache("size/padding", () => Le.createFromConfig(this.spec.padding));
3565
- }
3566
- getOverhang() {
3567
- return Le.zero();
3568
- }
3569
- isScrollable() {
3570
- return this.spec.viewportWidth != null || this.spec.viewportHeight != null;
3571
- }
3572
- getSize() {
3573
- return this._cache("size/size", () => this.isConfiguredVisible() ? new Se(this.#g("width"), this.#g("height")) : we);
3574
- }
3575
- getViewportSize() {
3576
- if (!this.isScrollable()) return this.getSize();
3577
- if (!this.isConfiguredVisible()) return we;
3578
- let e = this.getSize();
3579
- return new Se(this.#g("viewportWidth") ?? e.width, this.#g("viewportHeight") ?? e.height);
3580
- }
3581
- #g(e) {
3582
- let { value: t, implicit: n } = this.#_(e), r = this.resolveSizeValue(e, t), i = Dc(r), a = e == "viewportWidth" || e == "viewportHeight";
3583
- if (i) {
3584
- if (a) throw new Q(`Cannot use step-based size with "${e}"!`, this);
3585
- let t = this.#x(e, r), i = this.getScaleResolution(e == "width" ? "x" : "y")?.getScale();
3586
- if (i) {
3587
- let n;
3588
- if (_s(i.type)) n = i.domain().length;
3589
- else if (["locus", "index"].includes(i.type)) {
3590
- let e = i.domain();
3591
- n = _(e) - e[0];
3592
- } else throw new Q(`Cannot use step-based size with "${i.type}" scale!`, this);
3593
- let a = i;
3594
- n = Lo(n, a.paddingInner(), a.paddingOuter());
3595
- let o = e == "width" ? "xOffset" : "yOffset", s = this.getScaleResolution(o)?.getScale(), c = r.for ?? (s && _s(s.type) ? "offset" : "position"), l = t;
3596
- if (c == "offset") {
3597
- if (!s || !_s(s.type)) throw new Q(`Cannot use ${e}.step.for = "offset" without a discrete ${o} scale!`, this);
3598
- let t = s, n = Lo(s.domain().length, t.paddingInner(), t.paddingOuter());
3599
- l *= n / (1 - a.paddingInner());
3600
- }
3601
- return {
3602
- px: n * l,
3603
- grow: 0
3604
- };
3605
- } else if (n) return {
3606
- px: t,
3607
- grow: 0
3608
- };
3609
- else throw new Q(`Cannot use step-based size with "${e}"!`, this);
3610
- } else return (r && De(r)) ?? (a ? void 0 : {
3611
- px: 0,
3612
- grow: 1
3613
- });
3614
- }
3615
- #_(e) {
3616
- let t = this.spec[e];
3617
- return t != null || e == "viewportWidth" || e == "viewportHeight" ? {
3618
- value: t,
3619
- implicit: !1
3620
- } : {
3621
- value: this.#v(e),
3622
- implicit: !0
3623
- };
3624
- }
3625
- #v(e) {
3626
- if (pc(this)) return;
3627
- let t = this.getConfig().view;
3628
- if (!t) return;
3629
- let n = e == "width" ? "x" : "y", r = this.getScaleResolution(n)?.getResolvedScaleType();
3630
- return r && !_s(r) ? e == "width" ? t.continuousWidth : t.continuousHeight : (e == "width" ? t.discreteWidth : t.discreteHeight) ?? (t.step === void 0 ? void 0 : { step: t.step });
3631
- }
3632
- resolveSizeValue(e, t) {
3633
- if (!p(t)) return t;
3634
- let n = this.#C(e)();
3635
- if (Oc(n) || n === "container") return n;
3636
- throw new Q(`"${e}" ExprRef must resolve to a finite number or "container"!`, this);
3637
- }
3638
- registerSizeInvalidation() {
3639
- this.#y("width", "x"), this.#y("height", "y"), this.#b("width"), this.#b("height"), this.#b("viewportWidth"), this.#b("viewportHeight");
3640
- }
3641
- #y(e, t) {
3642
- let { value: n, implicit: r } = this.#_(e);
3643
- if (!Dc(n)) return;
3644
- let i = this.getScaleResolution(t);
3645
- if (!i) {
3646
- if (r) return;
3647
- throw new Q("Cannot use 'step' size without a scale!", this);
3648
- }
3649
- let a = () => {
3650
- let t = this.getSize()[e];
3651
- this.invalidateSizeCache();
3652
- let n = this.getSize()[e];
3653
- Te(t, n) || this.context.requestLayoutReflow();
3654
- };
3655
- if (i.addEventListener("domain", a), this.registerDisposer(() => i.removeEventListener("domain", a)), n.for != "position") {
3656
- let t = e == "width" ? "xOffset" : "yOffset", n = this.getScaleResolution(t);
3657
- n && _s(n.getResolvedScaleType()) && (n.addEventListener("domain", a), this.registerDisposer(() => n.removeEventListener("domain", a)));
3658
- }
3659
- }
3660
- #b(e) {
3661
- let { value: t } = this.#_(e);
3662
- p(t) ? this.#S(e, t.expr) : Dc(t) && p(t.step) && this.#S(e + ".step", t.step.expr);
3663
- }
3664
- #x(e, t) {
3665
- let n = p(t.step) ? this.#C(e + ".step")() : t.step;
3666
- if (Oc(n)) return n;
3667
- throw new Q(`"${e}.step" ExprRef must resolve to a finite number!`, this);
3668
- }
3669
- #S(e, t) {
3670
- if (!this.#m.has(e)) {
3671
- let n = this.paramRuntime.watchExpression(t, () => {
3672
- this.invalidateSizeCache(), this.context.requestLayoutReflow();
3673
- });
3674
- this.#m.set(e, n);
3675
- }
3676
- }
3677
- #C(e) {
3678
- let t = this.#m.get(e);
3679
- if (!t) throw new Q(`"${e}" ExprRef was not registered before layout!`, this);
3680
- return t;
3681
- }
3682
- isConfiguredVisible() {
3683
- return this.context.isViewConfiguredVisible(this);
3684
- }
3685
- isVisibleInSpec() {
3686
- return this.spec.visible ?? !0;
3687
- }
3688
- isVisible() {
3689
- return this.getLayoutAncestors().every((e) => e.isConfiguredVisible());
3690
- }
3691
- isDomainInert() {
3692
- if (this.spec.domainInert) return !0;
3693
- let e = this.dataParent;
3694
- return e ? e.isDomainInert() : !1;
3695
- }
3696
- getDataInitializationState() {
3697
- return this.#p;
3698
- }
3699
- _setDataInitializationState(e) {
3700
- this.#p = e;
3701
- }
3702
- isDataInitialized() {
3703
- return this.#p === "ready";
3704
- }
3705
- getEffectiveOpacity() {
3706
- return this.opacityFunction(this.layoutParent?.getEffectiveOpacity() ?? 1);
3707
- }
3708
- getPathString() {
3709
- return this.getLayoutAncestors().map((e) => e.name).reverse().join("/");
3710
- }
3711
- #w(e) {
3712
- let t = [], n = this;
3713
- do
3714
- t.push(n), n = n[e];
3715
- while (n);
3716
- return t;
3717
- }
3718
- getLayoutAncestors() {
3719
- return this.#w("layoutParent");
3720
- }
3721
- getDataAncestors() {
3722
- return this.#w("dataParent");
3723
- }
3724
- handleBroadcast(e) {
3725
- for (let t of this.#n[e.type] || []) t(e);
3726
- }
3727
- _addBroadcastHandler(e, t) {
3728
- let n = this.#n[e];
3729
- return n || (n = [], this.#n[e] = n), n.push(t), () => {
3730
- let n = this.#n[e];
3731
- if (!n) return;
3732
- let r = n.indexOf(t);
3733
- r >= 0 && n.splice(r, 1);
3734
- };
3735
- }
3736
- handleInteraction(e, t) {
3737
- t && e.type === "mousemove" && e.pointedViews.add(this);
3738
- let n = t ? this.#r : this.#i;
3739
- for (let t of n[e.type] || []) t(e);
3740
- }
3741
- addInteractionListener(e, t, n) {
3742
- let r = n ? this.#r : this.#i, i = r[e];
3743
- i || (i = [], r[e] = i), i.push(t);
3744
- }
3745
- removeInteractionListener(e, t, n) {
3746
- let r = (n ? this.#r : this.#i)?.[e];
3747
- if (r) {
3748
- let e = r.indexOf(t);
3749
- e >= 0 && r.splice(e, 1);
3750
- }
3751
- }
3752
- visit(e) {
3753
- try {
3754
- let t = e(this);
3755
- if (e.postOrder && e.postOrder(this), t !== "VISIT_STOP") return t;
3756
- } catch (e) {
3757
- throw e.view = this, e;
3758
- }
3759
- }
3760
- getDescendants() {
3761
- let e = [];
3762
- return this.visit((t) => {
3763
- e.push(t);
3764
- }), e;
3765
- }
3766
- dispose() {
3767
- for (let e of this.#f) e();
3768
- this.#f.length = 0;
3769
- let e = this.flowHandle;
3770
- e?.collector && (this.context.dataFlow.pruneCollectorBranch(e.collector), this.context.dataFlow.removeCollector(e.collector)), e?.dataSource && e.dataSource.view === this && !e.dataSource.shareKey && this.context.dataFlow.removeDataSource(e.dataSource), this.paramRuntime.dispose(), this.namedDataScope.dispose(), this.context.dataFlow.loadingStatusRegistry.delete(this), this.flowHandle = void 0;
3771
- }
3772
- registerDisposer(e) {
3773
- this.#f.push(e);
3774
- }
3775
- disposeSubtree() {
3776
- let e = () => void 0;
3777
- e.postOrder = (e) => {
3778
- e.dispose();
3779
- }, this.visit(e);
3780
- }
3781
- configurePostScaleParams() {
3782
- let e = [...this.#d, ...gc(this.spec) ?? []];
3783
- if (e.length && !this.#u) {
3784
- this.#u = !0, this.#l = !1;
3785
- for (let t of e) this.paramRuntime.registerParam(t);
3786
- this.registerDisposer(this._addBroadcastHandler("subtreeDataReady", () => {
3787
- this.#l = !0, this.#T();
3788
- }));
3789
- }
3790
- }
3791
- configureViewOpacity() {
3792
- (!this.opacityFunction || this.opacityFunction === xc) && (this.opacityFunction = wc(this));
3793
- }
3794
- finalizeParamRuntimeInitialization() {
3795
- this.#l === void 0 ? this.paramRuntime.finalizeInitialization() : this.#T();
3796
- }
3797
- onBeforeRender() {
3798
- this.#s ||= !0;
3799
- }
3800
- hasRendered() {
3801
- return this.#s;
3802
- }
3803
- render(e, t, n = {}) {
3804
- if (n.firstFacet && this.facetCoords.clear(), this.facetCoords.set(n.facetId, ge(t, he(n))), this.#a || this.#o) {
3805
- let e = this.getOverhang(), n = this.layoutParent ? Le.zero() : this.getPadding();
3806
- this.#a?.(t.width - e.width - n.width), this.#o?.(t.height - e.height - n.height);
3807
- }
3808
- this.#c = !0, this.#T();
3809
- }
3810
- #T() {
3811
- this.#l && this.#c && (this.#l = void 0, this.paramRuntime.finalizeInitialization());
3812
- }
3813
- getEncoding() {
3814
- let e = this.dataParent && this.options.inheritEncoding ? this.dataParent.getEncoding() : {}, t = this.spec.encoding || {}, n = {
3815
- ...e,
3816
- ...t
3817
- };
3818
- for (let [e, t] of Object.entries(n)) t === null && delete n[e];
3819
- return n;
3820
- }
3821
- getFacetAccessor(e) {
3822
- if (this.layoutParent) return this.layoutParent.getFacetAccessor(this);
3823
- }
3824
- getFacetFields(e) {
3825
- let t = this.getEncoding().sample;
3826
- return ne(t) ? [t.field] : this.options.inheritEncoding ? this.layoutParent?.getFacetFields(this) : [];
3827
- }
3828
- getSampleFacetTexture() {}
3829
- getSampleFacetPosition(e) {}
3830
- getParentGridChromePolicy() {
3831
- return {
3832
- axes: !0,
3833
- background: !0
3834
- };
3835
- }
3836
- getScaleResolution(e) {
3837
- let t = f(e);
3838
- return this.getDataAncestors().map((e) => e.resolutions.scale[t]).find((e) => e);
3839
- }
3840
- getAxisResolution(e) {
3841
- let t = f(e);
3842
- return this.getDataAncestors().map((e) => e.resolutions.axis[t]).find((e) => e);
3843
- }
3844
- getLegendResolution(e) {
3845
- let t = f(e);
3846
- return this.getDataAncestors().map((e) => e.resolutions.legend[t]).find((e) => e);
3847
- }
3848
- getConfiguredResolution(e, t) {
3849
- return this.spec.resolve?.[t]?.[e];
3850
- }
3851
- getConfiguredOrDefaultResolution(e, t) {
3852
- return (this.getConfiguredResolution(e, t) ?? this.getConfiguredResolution("default", t)) || (t == "legend" ? this.getConfiguredOrDefaultResolution(e, "scale") : this.getDefaultResolution(e, t));
3853
- }
3854
- getDefaultResolution(e, t) {
3855
- return "independent";
3856
- }
3857
- getBaseUrl() {
3858
- return ro(() => this.dataParent?.getBaseUrl(), rc(this.spec.baseUrl));
3859
- }
3860
- isPickingSupported() {
3861
- return !0;
3862
- }
3863
- getTitleText() {
3864
- let e = this.spec.title;
3865
- if (e) return s(e) ? e : p(e.text) ? this.paramRuntime.evaluateAndGet(e.text.expr) : e.text;
3866
- }
3867
- _cache(e, t) {
3868
- return Ve(this, e, t);
3869
- }
3870
- _invalidateCacheByPrefix(e, t = "self") {
3871
- switch (t) {
3872
- case "self":
3873
- Ue(this, e);
3874
- break;
3875
- case "ancestors":
3876
- for (let t of this.getLayoutAncestors()) Ue(t, e);
3877
- break;
3878
- case "progeny":
3879
- this.visit((t) => Ue(t, e));
3880
- break;
3881
- default:
3882
- }
3883
- }
3884
- invalidateSizeCache() {
3885
- Ue(this, "size"), this._invalidateCacheByPrefix("size", "ancestors");
3886
- }
3887
- propagateInteraction(e) {}
3888
- };
3889
- function Cc(e) {
3890
- return "unitsPerPixel" in e;
3891
- }
3892
- function wc(e) {
3893
- let t = "opacity" in e.spec ? e.spec.opacity : void 0;
3894
- if (t !== void 0) {
3895
- if (c(t)) return (e) => e * t;
3896
- if (Cc(t)) {
3897
- let n = (t) => {
3898
- let n = e.getScaleResolution(t), r = n?.getScale();
3899
- if ([
3900
- "linear",
3901
- "index",
3902
- "locus"
3903
- ].includes(r?.type)) return {
3904
- scale: r,
3905
- scaleResolution: n
3906
- };
3907
- }, r = Ec(t.values, "opacity.values", e);
3908
- if (!o(t.unitsPerPixel)) throw new Q("\"opacity.unitsPerPixel\" must be an array.", e);
3909
- let i = () => 1, a = [], s = () => {
3910
- let t = Tc(Ec(a.map((e) => e()), "opacity.unitsPerPixel", e), r, e), n = br().domain(t.unitsPerPixel).range(t.values).clamp(!0);
3911
- i = (e) => n(e);
3912
- };
3913
- a = t.unitsPerPixel.map((t) => {
3914
- if (p(t)) {
3915
- let n = e.paramRuntime.watchExpression(t.expr, () => {
3916
- s(), e.context.animator.requestRender();
3917
- });
3918
- return () => n(null);
3919
- } else return () => t;
3920
- }), s();
3921
- let c = (e) => {
3922
- let t = e.scaleResolution.getAxisLength() || 1e3;
3923
- return d(e.scale.domain()) / t;
3924
- }, l;
3925
- if (t.channel === "auto") {
3926
- let t = n("x"), r = n("y");
3927
- if (t && r) l = () => (c(t) + c(r)) / 2;
3928
- else if (t) l = () => c(t);
3929
- else if (r) l = () => c(r);
3930
- else throw new Q("Cannot find a resolved quantitative x or y scale for dynamic opacity!", e);
3931
- } else {
3932
- let r = t.channel ? n(t.channel) : n("x") ?? n("y");
3933
- if (!r) throw new Q("Cannot find a resolved quantitative scale for dynamic opacity!", e);
3934
- l = () => c(r);
3935
- }
3936
- return (e) => i(l()) * e;
3937
- } else if (p(t)) {
3938
- let n = e.paramRuntime.watchExpression(t.expr, () => e.context.animator.requestRender());
3939
- return (e) => n(null) * e;
3940
- }
3941
- }
3942
- return (e) => e;
3943
- }
3944
- function Tc(e, t, n) {
3945
- if (!e.length) throw new Q("\"opacity.unitsPerPixel\" must contain at least one stop.", n);
3946
- if (e.length !== t.length) throw new Q("\"opacity.unitsPerPixel\" and \"opacity.values\" must have the same length.", n);
3947
- e.forEach((e, t) => {
3948
- if (e <= 0) throw new Q("Invalid opacity.unitsPerPixel value at index " + t + ". Stop values must be positive.", n);
3949
- });
3950
- let r = e.map((e, n) => ({
3951
- stop: e,
3952
- value: t[n]
3953
- }));
3954
- r.sort((e, t) => t.stop - e.stop);
3955
- let i = r.map((e) => e.stop), a = r.map((e) => e.value);
3956
- for (let t = 1; t < e.length; t++) if (i[t - 1] <= i[t]) throw new Q("\"opacity.unitsPerPixel\" must be strictly decreasing.", n);
3957
- return {
3958
- unitsPerPixel: i,
3959
- values: a
3960
- };
3961
- }
3962
- function Ec(e, t, n) {
3963
- if (!o(e)) throw new Q("\"" + t + "\" must evaluate to an array.", n);
3964
- return e.map((e, r) => {
3965
- if (!c(e) || !Number.isFinite(e)) throw new Q("Invalid " + t + " value at index " + r + ". Expected a finite number.", n);
3966
- return e;
3967
- });
3968
- }
3969
- var Dc = (e) => !!e && typeof e == "object" && "step" in e;
3970
- function Oc(e) {
3971
- return typeof e == "number" && Number.isFinite(e);
3972
- }
3973
- var $ = /* @__PURE__ */ new WeakMap(), kc = /* @__PURE__ */ new WeakMap();
3974
- function Ac(e, t) {
3975
- Mc(e, t, "Import");
3976
- }
3977
- function jc(e, t) {
3978
- Mc(e, t, "View");
3979
- }
3980
- function Mc(e, t, n) {
3981
- if (t !== null && typeof t != "string") throw Error(n + " scope name must be a string or null.");
3982
- $.set(e, { name: t });
3983
- }
3984
- function Nc(e) {
3985
- return $.get(e);
3986
- }
3987
- function Pc(e, t = {}) {
3988
- let n = t.skipSubtree ?? !1 ? "excludeSubtree" : "exclude";
3989
- kc.set(e, n);
3990
- }
3991
- function Fc(e, t = {}) {
3992
- uc(e, t.skipSubtree ?? !1 ? "excludeSubtree" : "exclude");
3993
- }
3994
- function Ic(e) {
3995
- return e.getLayoutAncestors().some(fc);
3996
- }
3997
- function Lc(e) {
3998
- let t = e.getDataAncestors(), n = [];
3999
- for (let e = t.length - 1; e >= 0; --e) {
4000
- let r = $.get(t[e]);
4001
- r && typeof r.name == "string" && n.push(r.name);
4002
- }
4003
- return n;
4004
- }
4005
- function Rc(e) {
4006
- let t = e.explicitName;
4007
- if (!t) throw Error("Cannot build a selector for a view without a name.");
4008
- return {
4009
- scope: Lc(e),
4010
- view: t
4011
- };
4012
- }
4013
- function zc(e, t) {
4014
- if (!t) throw Error("Cannot build a selector for a parameter without a name.");
4015
- return {
4016
- scope: Lc(e),
4017
- param: t
4018
- };
4019
- }
4020
- function Bc(e) {
4021
- return Jc(e), "p:" + JSON.stringify({
4022
- scope: e.scope,
4023
- param: e.param
4024
- });
4025
- }
4026
- function Vc(e, t) {
4027
- e.visit((e) => {
4028
- let n = dc(e);
4029
- if (n === "excludeSubtree") return yc;
4030
- if (n !== "exclude") return t(e);
4031
- });
4032
- }
4033
- function Hc(e, t) {
4034
- e.visit((e) => {
4035
- let n = kc.get(e);
4036
- if (n === "excludeSubtree") return yc;
4037
- if (n !== "exclude") return t(e);
4038
- });
4039
- }
4040
- function Uc(e, t) {
4041
- if (Yc(t), !il(e, t.scope)) return;
4042
- let n = [];
4043
- if (al(e, t.scope, (e) => {
4044
- e.explicitName === t.view && n.push(e);
4045
- }, { includeNamedImportRoots: !0 }), n.length === 1) return n[0];
4046
- if (n.length !== 0) throw Error("View selector is ambiguous for view \"" + t.view + "\" in scope " + JSON.stringify(t.scope));
4047
- }
4048
- function Wc(e, t) {
4049
- if (Jc(t), !il(e, t.scope)) return;
4050
- let n = [];
4051
- if (al(e, t.scope, (e) => {
4052
- for (let [r, i] of e.paramRuntime.paramConfigs) r === t.param && Xc(i) && n.push({
4053
- view: e,
4054
- param: i
4055
- });
4056
- }), n.length === 1) return n[0];
4057
- if (n.length !== 0) throw Error("Param selector is ambiguous for param \"" + t.param + "\" in scope " + JSON.stringify(t.scope));
4058
- }
4059
- function Gc(e, t) {
4060
- e.visit((e) => {
4061
- let n = kc.get(e);
4062
- if (n === "excludeSubtree") return yc;
4063
- if (n !== "exclude") for (let [n, r] of e.paramRuntime.paramConfigs) Xc(r) && t({
4064
- view: e,
4065
- param: r,
4066
- selector: zc(e, n)
4067
- });
4068
- });
4069
- }
4070
- function Kc(e) {
4071
- let t = [];
4072
- return Gc(e, (e) => t.push(e)), t;
4073
- }
4074
- function qc(e) {
4075
- let t = [];
4076
- for (let n of Zc(e)) {
4077
- let r = Qc(n);
4078
- el(e, r, t), tl(e, r, t);
4079
- }
4080
- return t;
4081
- }
4082
- function Jc(e) {
4083
- if (!e || !Array.isArray(e.scope)) throw Error("Param selector scope must be an array.");
4084
- if (typeof e.param != "string" || !e.param.length) throw Error("Param selector param must be a non-empty string.");
4085
- }
4086
- function Yc(e) {
4087
- if (!e || !Array.isArray(e.scope)) throw Error("View selector scope must be an array.");
4088
- if (typeof e.view != "string" || !e.view.length) throw Error("View selector view must be a non-empty string.");
4089
- }
4090
- function Xc(e) {
4091
- return e.persist === !1 ? !1 : v(e) ? !0 : re(e) ? !!e.bind : !1;
4092
- }
4093
- function Zc(e) {
4094
- let t = /* @__PURE__ */ new Set([e]);
4095
- return e.visit((e) => {
4096
- let n = $.get(e);
4097
- n && typeof n.name == "string" && t.add(e);
4098
- }), Array.from(t);
4099
- }
4100
- function Qc(e) {
4101
- return Lc(e);
4102
- }
4103
- function $c(e) {
4104
- return e.length ? "import scope [" + e.join(" / ") + "]" : "import scope (root)";
4105
- }
4106
- function el(e, t, n) {
4107
- let r = /* @__PURE__ */ new Map();
4108
- al(e, t, (e) => {
4109
- for (let [t, n] of e.paramRuntime.paramConfigs) {
4110
- if (!Xc(n)) continue;
4111
- let i = r.get(t);
4112
- i ? i.push(e) : r.set(t, [e]);
4113
- }
4114
- });
4115
- for (let [e, i] of r) {
4116
- if (i.length <= 1) continue;
4117
- let r = i.map((e) => e.getPathString()).join(", ");
4118
- n.push({
4119
- message: "Bookmarkable parameter \"" + e + "\" is not unique within " + $c(t) + ". Found in: " + r + ".",
4120
- scope: t
4121
- });
4122
- }
4123
- }
4124
- function tl(e, t, n) {
4125
- let r = nl(e, t);
4126
- if (!r.length) return;
4127
- let i = r.filter((e) => rl(e));
4128
- if (i.length <= 1) return;
4129
- let a = /* @__PURE__ */ new Map();
4130
- for (let e of i) {
4131
- let t = $.get(e), n = t ? t.name : void 0;
4132
- typeof n != "string" || !n.length || a.set(n, (a.get(n) ?? 0) + 1);
4133
- }
4134
- for (let [e, r] of a) r > 1 && n.push({
4135
- message: "Import instance name \"" + e + "\" is used multiple times for addressable instances in " + $c(t) + ".",
4136
- scope: t
4137
- });
4138
- }
4139
- function nl(e, t) {
4140
- let n = [];
4141
- return al(e, t, (e) => {
4142
- if (Lc(e).length !== t.length + 1) return;
4143
- let r = $.get(e);
4144
- !r || typeof r.name != "string" || n.push(e);
4145
- }, { includeNamedImportRoots: !0 }), n;
4146
- }
4147
- function rl(e) {
4148
- let t = !1;
4149
- return e.visit((e) => {
4150
- let n = kc.get(e);
4151
- if (n === "excludeSubtree") return yc;
4152
- if (n !== "exclude") {
4153
- for (let n of e.paramRuntime.paramConfigs.values()) if (Xc(n)) return t = !0, bc;
4154
- }
4155
- }), t;
4156
- }
4157
- function il(e, t) {
4158
- let n = e, r = [];
4159
- for (let i of t) {
4160
- if (typeof i != "string" || !i.length) throw Error("Scope names must be non-empty strings.");
4161
- let t, a = !1;
4162
- if (al(e, r, (e) => {
4163
- let n = $.get(e);
4164
- if (!(!n || n.name !== i) && Lc(e).length === r.length + 1) {
4165
- if (t) return a = !0, bc;
4166
- t = e;
4167
- }
4168
- }, { includeNamedImportRoots: !0 }), a) throw Error("Multiple import instances named \"" + i + "\" in scope.");
4169
- if (t) n = t, r.push(i);
4170
- else return;
4171
- }
4172
- return n;
4173
- }
4174
- function al(e, t, n, r = {}) {
4175
- let i = r.includeNamedImportRoots ?? !1;
4176
- e.visit((e) => {
4177
- let r = $.get(e), a = kc.get(e);
4178
- if (a === "excludeSubtree") return yc;
4179
- if (a !== "exclude" && ol(e, t, r, i)) return n(e);
4180
- });
4181
- }
4182
- function ol(e, t, n, r) {
4183
- let i = Lc(e);
4184
- return sl(i, t) ? !0 : !r || !n || typeof n.name != "string" || i.length !== t.length + 1 ? !1 : cl(t, i);
4185
- }
4186
- function sl(e, t) {
4187
- return e.length === t.length && cl(e, t);
4188
- }
4189
- function cl(e, t) {
4190
- if (e.length > t.length) return !1;
4191
- for (let n = 0; n < e.length; n++) if (e[n] !== t[n]) return !1;
4192
- return !0;
4193
- }
4194
- //#endregion
4195
- export { Z as $, Xo as A, ut as At, Vo as B, Le as Bt, nc as C, ir as Ct, qs as D, mt as Dt, Xs as E, gt as Et, Yo as F, C as Ft, Ss as G, ve as Gt, Ho as H, Se as Ht, Go as I, qe as It, _s as J, _e as Jt, xs as K, Ne as Kt, Ko as L, Ve as Lt, Wo as M, st as Mt, zo as N, et as Nt, Ms as O, ht as Ot, Jo as P, Qe as Pt, Cs as Q, Uo as R, He as Rt, cc as S, ar as St, Ys as T, A as Tt, Lo as U, Ce as Ut, qo as V, Re as Vt, ws as W, be as Wt, bs as X, xe as Xt, vs as Y, De as Yt, ys as Z, ye as Zt, bc as _, Na as _t, Ic as a, bo as at, fc as b, hi as bt, Pc as c, xo as ct, Wc as d, jo as dt, js as et, Uc as f, ro as ft, yc as g, Ma as gt, Vc as h, to as ht, Rc as i, To as it, Zo as j, lt as jt, Q as k, dt as kt, Ac as l, vo as lt, Hc as m, io as mt, Nc as n, wo as nt, Bc as o, yo as ot, qc as p, ao as pt, gs as q, Me as qt, Lc as r, Do as rt, Fc as s, Eo as st, Kc as t, So as tt, jc as u, Ao as ut, Sc as v, Pa as vt, Qs as w, bn as wt, pc as x, or as xt, hc as y, Fa as yt, Bo as z, Ue as zt };