@billtaofbj/mindmap 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4295 @@
1
+ //#region \0rolldown/runtime.js
2
+ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescriptor, r = Object.getOwnPropertyNames, i = Object.getPrototypeOf, a = Object.prototype.hasOwnProperty, o = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), s = (e, n) => {
3
+ let r = {};
4
+ for (var i in e) t(r, i, {
5
+ get: e[i],
6
+ enumerable: !0
7
+ });
8
+ return n || t(r, Symbol.toStringTag, { value: "Module" }), r;
9
+ }, c = (e, i, o, s) => {
10
+ if (i && typeof i == "object" || typeof i == "function") for (var c = r(i), l = 0, u = c.length, d; l < u; l++) d = c[l], !a.call(e, d) && d !== o && t(e, d, {
11
+ get: ((e) => i[e]).bind(null, d),
12
+ enumerable: !(s = n(i, d)) || s.enumerable
13
+ });
14
+ return e;
15
+ }, l = (n, r, a) => (a = n == null ? {} : e(i(n)), c(r || !n || !n.__esModule ? t(a, "default", {
16
+ value: n,
17
+ enumerable: !0
18
+ }) : a, n)), u = {
19
+ CHANGE_THEME: "changeTheme",
20
+ CHANGE_LAYOUT: "changeLayout",
21
+ MODE: {
22
+ READONLY: "readonly",
23
+ EDIT: "edit"
24
+ },
25
+ LAYOUT: {
26
+ LOGICAL_STRUCTURE: "logicalStructure",
27
+ LOGICAL_STRUCTURE_LEFT: "logicalStructureLeft",
28
+ MIND_MAP: "mindMap",
29
+ ORGANIZATION_STRUCTURE: "organizationStructure",
30
+ CATALOG_ORGANIZATION: "catalogOrganization",
31
+ TIMELINE: "timeline",
32
+ TIMELINE2: "timeline2",
33
+ FISHBONE: "fishbone",
34
+ FISHBONE2: "fishbone2",
35
+ RIGHT_FISHBONE: "rightFishbone",
36
+ RIGHT_FISHBONE2: "rightFishbone2",
37
+ VERTICAL_TIMELINE: "verticalTimeline",
38
+ VERTICAL_TIMELINE2: "verticalTimeline2",
39
+ VERTICAL_TIMELINE3: "verticalTimeline3"
40
+ },
41
+ DIR: {
42
+ UP: "up",
43
+ LEFT: "left",
44
+ DOWN: "down",
45
+ RIGHT: "right"
46
+ },
47
+ KEY_DIR: {
48
+ LEFT: "Left",
49
+ UP: "Up",
50
+ RIGHT: "Right",
51
+ DOWN: "Down"
52
+ },
53
+ SHAPE: {
54
+ RECTANGLE: "rectangle",
55
+ DIAMOND: "diamond",
56
+ PARALLELOGRAM: "parallelogram",
57
+ ROUNDED_RECTANGLE: "roundedRectangle",
58
+ OCTAGONAL_RECTANGLE: "octagonalRectangle",
59
+ OUTER_TRIANGULAR_RECTANGLE: "outerTriangularRectangle",
60
+ INNER_TRIANGULAR_RECTANGLE: "innerTriangularRectangle",
61
+ ELLIPSE: "ellipse",
62
+ CIRCLE: "circle"
63
+ },
64
+ MOUSE_WHEEL_ACTION: {
65
+ ZOOM: "zoom",
66
+ MOVE: "move"
67
+ },
68
+ INIT_ROOT_NODE_POSITION: {
69
+ LEFT: "left",
70
+ TOP: "top",
71
+ RIGHT: "right",
72
+ BOTTOM: "bottom",
73
+ CENTER: "center"
74
+ },
75
+ LAYOUT_GROW_DIR: {
76
+ LEFT: "left",
77
+ TOP: "top",
78
+ RIGHT: "right",
79
+ BOTTOM: "bottom"
80
+ },
81
+ PASTE_TYPE: {
82
+ CLIP_BOARD: "clipBoard",
83
+ CANVAS: "canvas"
84
+ },
85
+ SCROLL_BAR_DIR: {
86
+ VERTICAL: "vertical",
87
+ HORIZONTAL: "horizontal"
88
+ },
89
+ CREATE_NEW_NODE_BEHAVIOR: {
90
+ DEFAULT: "default",
91
+ NOT_ACTIVE: "notActive",
92
+ ACTIVE_ONLY: "activeOnly"
93
+ },
94
+ TAG_PLACEMENT: {
95
+ RIGHT: "right",
96
+ BOTTOM: "bottom"
97
+ },
98
+ IMG_PLACEMENT: {
99
+ LEFT: "left",
100
+ TOP: "top",
101
+ RIGHT: "right",
102
+ BOTTOM: "bottom"
103
+ }
104
+ }, d = {
105
+ [u.INIT_ROOT_NODE_POSITION.LEFT]: 0,
106
+ [u.INIT_ROOT_NODE_POSITION.TOP]: 0,
107
+ [u.INIT_ROOT_NODE_POSITION.RIGHT]: 1,
108
+ [u.INIT_ROOT_NODE_POSITION.BOTTOM]: 1,
109
+ [u.INIT_ROOT_NODE_POSITION.CENTER]: .5
110
+ };
111
+ u.LAYOUT.LOGICAL_STRUCTURE, u.LAYOUT.LOGICAL_STRUCTURE_LEFT, u.LAYOUT.MIND_MAP, u.LAYOUT.ORGANIZATION_STRUCTURE, u.LAYOUT.CATALOG_ORGANIZATION, u.LAYOUT.TIMELINE, u.LAYOUT.TIMELINE2, u.LAYOUT.VERTICAL_TIMELINE, u.LAYOUT.VERTICAL_TIMELINE2, u.LAYOUT.VERTICAL_TIMELINE3, u.LAYOUT.FISHBONE, u.LAYOUT.FISHBONE2, u.LAYOUT.RIGHT_FISHBONE, u.LAYOUT.RIGHT_FISHBONE2;
112
+ var f = [
113
+ u.LAYOUT.LOGICAL_STRUCTURE,
114
+ u.LAYOUT.LOGICAL_STRUCTURE_LEFT,
115
+ u.LAYOUT.MIND_MAP,
116
+ u.LAYOUT.CATALOG_ORGANIZATION,
117
+ u.LAYOUT.ORGANIZATION_STRUCTURE,
118
+ u.LAYOUT.TIMELINE,
119
+ u.LAYOUT.TIMELINE2,
120
+ u.LAYOUT.VERTICAL_TIMELINE,
121
+ u.LAYOUT.VERTICAL_TIMELINE2,
122
+ u.LAYOUT.VERTICAL_TIMELINE3,
123
+ u.LAYOUT.FISHBONE,
124
+ u.LAYOUT.FISHBONE2,
125
+ u.LAYOUT.RIGHT_FISHBONE,
126
+ u.LAYOUT.RIGHT_FISHBONE2
127
+ ], p = /* @__PURE__ */ "text.image.imageTitle.imageSize.icon.tag.hyperlink.hyperlinkTitle.note.expand.isActive.generalization.richText.resetRichText.uid.activeStyle.associativeLineTargets.associativeLineTargetControlOffsets.associativeLinePoint.associativeLineText.attachmentUrl.attachmentName.notation.outerFrame.number.range.customLeft.customTop.customTextWidth.checkbox.dir.needUpdate.imgMap.nodeLink".split("."), m = {
128
+ READ_CLIPBOARD_ERROR: "read_clipboard_error",
129
+ PARSE_PASTE_DATA_ERROR: "parse_paste_data_error",
130
+ CUSTOM_HANDLE_CLIPBOARD_TEXT_ERROR: "custom_handle_clipboard_text_error",
131
+ LOAD_CLIPBOARD_IMAGE_ERROR: "load_clipboard_image_error",
132
+ BEFORE_TEXT_EDIT_ERROR: "before_text_edit_error",
133
+ EXPORT_ERROR: "export_error",
134
+ EXPORT_LOAD_IMAGE_ERROR: "export_load_image_error",
135
+ DATA_CHANGE_DETAIL_EVENT_ERROR: "data_change_detail_event_error"
136
+ }, h = "\n /* 鼠标hover和激活时渲染的矩形 */\n .smm-hover-node{\n display: none;\n opacity: 0.6;\n stroke-width: 1;\n }\n\n .smm-node:not(.smm-node-dragging):hover .smm-hover-node{\n display: block;\n }\n\n .smm-node.active .smm-hover-node, .smm-node-highlight .smm-hover-node{\n display: block;\n opacity: 1;\n stroke-width: 2;\n }\n\n .smm-text-node-wrap, .smm-expand-btn-text {\n user-select: none;\n }\n", g = [
137
+ "img",
138
+ "br",
139
+ "hr",
140
+ "input",
141
+ "link",
142
+ "meta",
143
+ "area"
144
+ ], ee = 1.2, te = [
145
+ "fontFamily",
146
+ "fontSize",
147
+ "fontWeight",
148
+ "fontStyle",
149
+ "textDecoration",
150
+ "color",
151
+ "textAlign"
152
+ ], ne = /* @__PURE__ */ o(((e, t) => {
153
+ var n = function(e) {
154
+ return r(e) && !i(e);
155
+ };
156
+ function r(e) {
157
+ return !!e && typeof e == "object";
158
+ }
159
+ function i(e) {
160
+ var t = Object.prototype.toString.call(e);
161
+ return t === "[object RegExp]" || t === "[object Date]" || o(e);
162
+ }
163
+ var a = typeof Symbol == "function" && Symbol.for ? Symbol.for("react.element") : 60103;
164
+ function o(e) {
165
+ return e.$$typeof === a;
166
+ }
167
+ function s(e) {
168
+ return Array.isArray(e) ? [] : {};
169
+ }
170
+ function c(e, t) {
171
+ return t && t.clone === !0 && n(e) ? d(s(e), e, t) : e;
172
+ }
173
+ function l(e, t, r) {
174
+ var i = e.slice();
175
+ return t.forEach(function(t, a) {
176
+ i[a] === void 0 ? i[a] = c(t, r) : n(t) ? i[a] = d(e[a], t, r) : e.indexOf(t) === -1 && i.push(c(t, r));
177
+ }), i;
178
+ }
179
+ function u(e, t, r) {
180
+ var i = {};
181
+ return n(e) && Object.keys(e).forEach(function(t) {
182
+ i[t] = c(e[t], r);
183
+ }), Object.keys(t).forEach(function(a) {
184
+ !n(t[a]) || !e[a] ? i[a] = c(t[a], r) : i[a] = d(e[a], t[a], r);
185
+ }), i;
186
+ }
187
+ function d(e, t, n) {
188
+ var r = Array.isArray(t);
189
+ return r === Array.isArray(e) ? r ? ((n || { arrayMerge: l }).arrayMerge || l)(e, t, n) : u(e, t, n) : c(t, n);
190
+ }
191
+ d.all = function(e, t) {
192
+ if (!Array.isArray(e) || e.length < 2) throw Error("first argument should be an array with at least two elements");
193
+ return e.reduce(function(e, n) {
194
+ return d(e, n, t);
195
+ });
196
+ }, t.exports = d;
197
+ })), re = { randomUUID: typeof crypto < "u" && crypto.randomUUID && crypto.randomUUID.bind(crypto) }, ie, ae = /* @__PURE__ */ new Uint8Array(16);
198
+ function oe() {
199
+ if (!ie && (ie = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto), !ie)) throw Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
200
+ return ie(ae);
201
+ }
202
+ //#endregion
203
+ //#region ../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/stringify.js
204
+ var _ = [];
205
+ for (let e = 0; e < 256; ++e) _.push((e + 256).toString(16).slice(1));
206
+ function se(e, t = 0) {
207
+ return _[e[t + 0]] + _[e[t + 1]] + _[e[t + 2]] + _[e[t + 3]] + "-" + _[e[t + 4]] + _[e[t + 5]] + "-" + _[e[t + 6]] + _[e[t + 7]] + "-" + _[e[t + 8]] + _[e[t + 9]] + "-" + _[e[t + 10]] + _[e[t + 11]] + _[e[t + 12]] + _[e[t + 13]] + _[e[t + 14]] + _[e[t + 15]];
208
+ }
209
+ //#endregion
210
+ //#region ../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/v4.js
211
+ function ce(e, t, n) {
212
+ if (re.randomUUID && !t && !e) return re.randomUUID();
213
+ e ||= {};
214
+ let r = e.random || (e.rng || oe)();
215
+ if (r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128, t) {
216
+ n ||= 0;
217
+ for (let e = 0; e < 16; ++e) t[n + e] = r[e];
218
+ return t;
219
+ }
220
+ return se(r);
221
+ }
222
+ //#endregion
223
+ //#region ../../node_modules/.pnpm/simple-mind-map@0.14.0-fix.2/node_modules/simple-mind-map/src/utils/mersenneTwister.js
224
+ function le(e) {
225
+ this.N = 624, this.M = 397, this.MATRIX_A = 2567483615, this.UPPER_MASK = 2147483648, this.LOWER_MASK = 2147483647, this.mt = Array(this.N), this.mti = this.N + 1, this.init_genrand(e);
226
+ }
227
+ le.prototype.init_genrand = function(e) {
228
+ for (this.mt[0] = e >>> 0, this.mti = 1; this.mti < this.N; this.mti++) e = this.mt[this.mti - 1] ^ this.mt[this.mti - 1] >>> 30, this.mt[this.mti] = (((e & 4294901760) >>> 16) * 1812433253 << 16) + (e & 65535) * 1812433253 + this.mti, this.mt[this.mti] >>>= 0;
229
+ }, le.prototype.genrand_int32 = function() {
230
+ var e, t = [0, this.MATRIX_A];
231
+ if (this.mti >= this.N) {
232
+ var n;
233
+ for (this.mti == this.N + 1 && this.init_genrand(5489), n = 0; n < this.N - this.M; n++) e = this.mt[n] & this.UPPER_MASK | this.mt[n + 1] & this.LOWER_MASK, this.mt[n] = this.mt[n + this.M] ^ e >>> 1 ^ t[e & 1];
234
+ for (; n < this.N - 1; n++) e = this.mt[n] & this.UPPER_MASK | this.mt[n + 1] & this.LOWER_MASK, this.mt[n] = this.mt[n + (this.M - this.N)] ^ e >>> 1 ^ t[e & 1];
235
+ e = this.mt[this.N - 1] & this.UPPER_MASK | this.mt[0] & this.LOWER_MASK, this.mt[this.N - 1] = this.mt[this.M - 1] ^ e >>> 1 ^ t[e & 1], this.mti = 0;
236
+ }
237
+ return e = this.mt[this.mti++], e ^= e >>> 11, e ^= e << 7 & 2636928640, e ^= e << 15 & 4022730752, e ^= e >>> 18, e >>> 0;
238
+ };
239
+ //#endregion
240
+ //#region ../../node_modules/.pnpm/@svgdotjs+svg.js@3.2.0/node_modules/@svgdotjs/svg.js/dist/svg.esm.js
241
+ var ue = {}, de = [];
242
+ function v(e, t) {
243
+ if (Array.isArray(e)) {
244
+ for (let n of e) v(n, t);
245
+ return;
246
+ }
247
+ if (typeof e == "object") {
248
+ for (let t in e) v(t, e[t]);
249
+ return;
250
+ }
251
+ pe(Object.getOwnPropertyNames(t)), ue[e] = Object.assign(ue[e] || {}, t);
252
+ }
253
+ function y(e) {
254
+ return ue[e] || {};
255
+ }
256
+ function fe() {
257
+ return [...new Set(de)];
258
+ }
259
+ function pe(e) {
260
+ de.push(...e);
261
+ }
262
+ function me(e, t) {
263
+ let n, r = e.length, i = [];
264
+ for (n = 0; n < r; n++) i.push(t(e[n]));
265
+ return i;
266
+ }
267
+ function he(e, t) {
268
+ let n, r = e.length, i = [];
269
+ for (n = 0; n < r; n++) t(e[n]) && i.push(e[n]);
270
+ return i;
271
+ }
272
+ function ge(e) {
273
+ return e % 360 * Math.PI / 180;
274
+ }
275
+ function _e(e) {
276
+ return e.toLowerCase().replace(/-(.)/g, function(e, t) {
277
+ return t.toUpperCase();
278
+ });
279
+ }
280
+ function ve(e) {
281
+ return e.replace(/([A-Z])/g, function(e, t) {
282
+ return "-" + t.toLowerCase();
283
+ });
284
+ }
285
+ function ye(e) {
286
+ return e.charAt(0).toUpperCase() + e.slice(1);
287
+ }
288
+ function b(e, t, n, r) {
289
+ return (t == null || n == null) && (r ||= e.bbox(), t == null ? t = r.width / r.height * n : n ??= r.height / r.width * t), {
290
+ width: t,
291
+ height: n
292
+ };
293
+ }
294
+ function be(e, t) {
295
+ let n = e.origin, r = e.ox == null ? e.originX == null ? "center" : e.originX : e.ox, i = e.oy == null ? e.originY == null ? "center" : e.originY : e.oy;
296
+ n != null && ([r, i] = Array.isArray(n) ? n : typeof n == "object" ? [n.x, n.y] : [n, n]);
297
+ let a = typeof r == "string", o = typeof i == "string";
298
+ if (a || o) {
299
+ let { height: e, width: n, x: s, y: c } = t.bbox();
300
+ a && (r = r.includes("left") ? s : r.includes("right") ? s + n : s + n / 2), o && (i = i.includes("top") ? c : i.includes("bottom") ? c + e : c + e / 2);
301
+ }
302
+ return [r, i];
303
+ }
304
+ var xe = "http://www.w3.org/2000/svg", Se = "http://www.w3.org/1999/xhtml", Ce = "http://www.w3.org/2000/xmlns/", we = "http://www.w3.org/1999/xlink", Te = "http://svgjs.dev/svgjs", x = {
305
+ window: typeof window > "u" ? null : window,
306
+ document: typeof document > "u" ? null : document
307
+ }, Ee = class {}, S = {}, De = "___SYMBOL___ROOT___";
308
+ function Oe(e, t = xe) {
309
+ return x.document.createElementNS(t, e);
310
+ }
311
+ function C(e, t = !1) {
312
+ if (e instanceof Ee) return e;
313
+ if (typeof e == "object") return ke(e);
314
+ if (e == null) return new S[De]();
315
+ if (typeof e == "string" && e.charAt(0) !== "<") return ke(x.document.querySelector(e));
316
+ let n = t ? x.document.createElement("div") : Oe("svg");
317
+ return n.innerHTML = e, e = ke(n.firstChild), n.removeChild(n.firstChild), e;
318
+ }
319
+ function w(e, t) {
320
+ return t && t.ownerDocument && t instanceof t.ownerDocument.defaultView.Node ? t : Oe(e);
321
+ }
322
+ function T(e) {
323
+ if (!e) return null;
324
+ if (e.instance instanceof Ee) return e.instance;
325
+ if (e.nodeName === "#document-fragment") return new S.Fragment(e);
326
+ let t = ye(e.nodeName || "Dom");
327
+ return t === "LinearGradient" || t === "RadialGradient" ? t = "Gradient" : S[t] || (t = "Dom"), new S[t](e);
328
+ }
329
+ var ke = T;
330
+ function E(e, t = e.name, n = !1) {
331
+ return S[t] = e, n && (S[De] = e), pe(Object.getOwnPropertyNames(e.prototype)), e;
332
+ }
333
+ function Ae(e) {
334
+ return S[e];
335
+ }
336
+ var je = 1e3;
337
+ function Me(e) {
338
+ return "Svgjs" + ye(e) + je++;
339
+ }
340
+ function Ne(e) {
341
+ for (let t = e.children.length - 1; t >= 0; t--) Ne(e.children[t]);
342
+ return e.id &&= Me(e.nodeName), e;
343
+ }
344
+ function D(e, t) {
345
+ let n, r;
346
+ for (e = Array.isArray(e) ? e : [e], r = e.length - 1; r >= 0; r--) for (n in t) e[r].prototype[n] = t[n];
347
+ }
348
+ function O(e) {
349
+ return function(...t) {
350
+ let n = t[t.length - 1];
351
+ return n && n.constructor === Object && !(n instanceof Array) ? e.apply(this, t.slice(0, -1)).attr(n) : e.apply(this, t);
352
+ };
353
+ }
354
+ function Pe() {
355
+ return this.parent().children();
356
+ }
357
+ function Fe() {
358
+ return this.parent().index(this);
359
+ }
360
+ function Ie() {
361
+ return this.siblings()[this.position() + 1];
362
+ }
363
+ function Le() {
364
+ return this.siblings()[this.position() - 1];
365
+ }
366
+ function Re() {
367
+ let e = this.position();
368
+ return this.parent().add(this.remove(), e + 1), this;
369
+ }
370
+ function ze() {
371
+ let e = this.position();
372
+ return this.parent().add(this.remove(), e ? e - 1 : 0), this;
373
+ }
374
+ function Be() {
375
+ return this.parent().add(this.remove()), this;
376
+ }
377
+ function Ve() {
378
+ return this.parent().add(this.remove(), 0), this;
379
+ }
380
+ function He(e) {
381
+ e = C(e), e.remove();
382
+ let t = this.position();
383
+ return this.parent().add(e, t), this;
384
+ }
385
+ function Ue(e) {
386
+ e = C(e), e.remove();
387
+ let t = this.position();
388
+ return this.parent().add(e, t + 1), this;
389
+ }
390
+ function We(e) {
391
+ return e = C(e), e.before(this), this;
392
+ }
393
+ function Ge(e) {
394
+ return e = C(e), e.after(this), this;
395
+ }
396
+ v("Dom", {
397
+ siblings: Pe,
398
+ position: Fe,
399
+ next: Ie,
400
+ prev: Le,
401
+ forward: Re,
402
+ backward: ze,
403
+ front: Be,
404
+ back: Ve,
405
+ before: He,
406
+ after: Ue,
407
+ insertBefore: We,
408
+ insertAfter: Ge
409
+ });
410
+ var Ke = /^([+-]?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?)([a-z%]*)$/i, qe = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i, Je = /rgb\((\d+),(\d+),(\d+)\)/, Ye = /(#[a-z_][a-z0-9\-_]*)/i, Xe = /\)\s*,?\s*/, Ze = /\s/g, Qe = /^#[a-f0-9]{3}$|^#[a-f0-9]{6}$/i, $e = /^rgb\(/, et = /^(\s+)?$/, tt = /^[+-]?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i, nt = /\.(jpg|jpeg|png|gif|svg)(\?[^=]+.*)?/i, k = /[\s,]+/, rt = /[MLHVCSQTAZ]/i;
411
+ function it() {
412
+ let e = this.attr("class");
413
+ return e == null ? [] : e.trim().split(k);
414
+ }
415
+ function at(e) {
416
+ return this.classes().indexOf(e) !== -1;
417
+ }
418
+ function ot(e) {
419
+ if (!this.hasClass(e)) {
420
+ let t = this.classes();
421
+ t.push(e), this.attr("class", t.join(" "));
422
+ }
423
+ return this;
424
+ }
425
+ function st(e) {
426
+ return this.hasClass(e) && this.attr("class", this.classes().filter(function(t) {
427
+ return t !== e;
428
+ }).join(" ")), this;
429
+ }
430
+ function ct(e) {
431
+ return this.hasClass(e) ? this.removeClass(e) : this.addClass(e);
432
+ }
433
+ v("Dom", {
434
+ classes: it,
435
+ hasClass: at,
436
+ addClass: ot,
437
+ removeClass: st,
438
+ toggleClass: ct
439
+ });
440
+ function lt(e, t) {
441
+ let n = {};
442
+ if (arguments.length === 0) return this.node.style.cssText.split(/\s*;\s*/).filter(function(e) {
443
+ return !!e.length;
444
+ }).forEach(function(e) {
445
+ let t = e.split(/\s*:\s*/);
446
+ n[t[0]] = t[1];
447
+ }), n;
448
+ if (arguments.length < 2) {
449
+ if (Array.isArray(e)) {
450
+ for (let t of e) {
451
+ let e = _e(t);
452
+ n[t] = this.node.style[e];
453
+ }
454
+ return n;
455
+ }
456
+ if (typeof e == "string") return this.node.style[_e(e)];
457
+ if (typeof e == "object") for (let t in e) this.node.style[_e(t)] = e[t] == null || et.test(e[t]) ? "" : e[t];
458
+ }
459
+ return arguments.length === 2 && (this.node.style[_e(e)] = t == null || et.test(t) ? "" : t), this;
460
+ }
461
+ function ut() {
462
+ return this.css("display", "");
463
+ }
464
+ function dt() {
465
+ return this.css("display", "none");
466
+ }
467
+ function ft() {
468
+ return this.css("display") !== "none";
469
+ }
470
+ v("Dom", {
471
+ css: lt,
472
+ show: ut,
473
+ hide: dt,
474
+ visible: ft
475
+ });
476
+ function pt(e, t, n) {
477
+ if (e == null) return this.data(me(he(this.node.attributes, (e) => e.nodeName.indexOf("data-") === 0), (e) => e.nodeName.slice(5)));
478
+ if (e instanceof Array) {
479
+ let t = {};
480
+ for (let n of e) t[n] = this.data(n);
481
+ return t;
482
+ } else if (typeof e == "object") for (t in e) this.data(t, e[t]);
483
+ else if (arguments.length < 2) try {
484
+ return JSON.parse(this.attr("data-" + e));
485
+ } catch {
486
+ return this.attr("data-" + e);
487
+ }
488
+ else this.attr("data-" + e, t === null ? null : n === !0 || typeof t == "string" || typeof t == "number" ? t : JSON.stringify(t));
489
+ return this;
490
+ }
491
+ v("Dom", { data: pt });
492
+ function mt(e, t) {
493
+ if (typeof arguments[0] == "object") for (let t in e) this.remember(t, e[t]);
494
+ else if (arguments.length === 1) return this.memory()[e];
495
+ else this.memory()[e] = t;
496
+ return this;
497
+ }
498
+ function ht() {
499
+ if (arguments.length === 0) this._memory = {};
500
+ else for (let e = arguments.length - 1; e >= 0; e--) delete this.memory()[arguments[e]];
501
+ return this;
502
+ }
503
+ function gt() {
504
+ return this._memory = this._memory || {};
505
+ }
506
+ v("Dom", {
507
+ remember: mt,
508
+ forget: ht,
509
+ memory: gt
510
+ });
511
+ function _t(e) {
512
+ return e.length === 4 ? [
513
+ "#",
514
+ e.substring(1, 2),
515
+ e.substring(1, 2),
516
+ e.substring(2, 3),
517
+ e.substring(2, 3),
518
+ e.substring(3, 4),
519
+ e.substring(3, 4)
520
+ ].join("") : e;
521
+ }
522
+ function vt(e) {
523
+ let t = Math.max(0, Math.min(255, Math.round(e))).toString(16);
524
+ return t.length === 1 ? "0" + t : t;
525
+ }
526
+ function yt(e, t) {
527
+ for (let n = t.length; n--;) if (e[t[n]] == null) return !1;
528
+ return !0;
529
+ }
530
+ function bt(e, t) {
531
+ let n = yt(e, "rgb") ? {
532
+ _a: e.r,
533
+ _b: e.g,
534
+ _c: e.b,
535
+ _d: 0,
536
+ space: "rgb"
537
+ } : yt(e, "xyz") ? {
538
+ _a: e.x,
539
+ _b: e.y,
540
+ _c: e.z,
541
+ _d: 0,
542
+ space: "xyz"
543
+ } : yt(e, "hsl") ? {
544
+ _a: e.h,
545
+ _b: e.s,
546
+ _c: e.l,
547
+ _d: 0,
548
+ space: "hsl"
549
+ } : yt(e, "lab") ? {
550
+ _a: e.l,
551
+ _b: e.a,
552
+ _c: e.b,
553
+ _d: 0,
554
+ space: "lab"
555
+ } : yt(e, "lch") ? {
556
+ _a: e.l,
557
+ _b: e.c,
558
+ _c: e.h,
559
+ _d: 0,
560
+ space: "lch"
561
+ } : yt(e, "cmyk") ? {
562
+ _a: e.c,
563
+ _b: e.m,
564
+ _c: e.y,
565
+ _d: e.k,
566
+ space: "cmyk"
567
+ } : {
568
+ _a: 0,
569
+ _b: 0,
570
+ _c: 0,
571
+ space: "rgb"
572
+ };
573
+ return n.space = t || n.space, n;
574
+ }
575
+ function xt(e) {
576
+ return e === "lab" || e === "xyz" || e === "lch";
577
+ }
578
+ function St(e, t, n) {
579
+ return n < 0 && (n += 1), n > 1 && --n, n < 1 / 6 ? e + (t - e) * 6 * n : n < 1 / 2 ? t : n < 2 / 3 ? e + (t - e) * (2 / 3 - n) * 6 : e;
580
+ }
581
+ var A = class e {
582
+ constructor(...e) {
583
+ this.init(...e);
584
+ }
585
+ static isColor(t) {
586
+ return t && (t instanceof e || this.isRgb(t) || this.test(t));
587
+ }
588
+ static isRgb(e) {
589
+ return e && typeof e.r == "number" && typeof e.g == "number" && typeof e.b == "number";
590
+ }
591
+ static random(t = "vibrant", n, r) {
592
+ let { random: i, round: a, sin: o, PI: s } = Math;
593
+ if (t === "vibrant") return new e(24 * i() + 57, 38 * i() + 45, 360 * i(), "lch");
594
+ if (t === "sine") return n ??= i(), new e(a(80 * o(2 * s * n / .5 + .01) + 150), a(50 * o(2 * s * n / .5 + 4.6) + 200), a(100 * o(2 * s * n / .5 + 2.3) + 150));
595
+ if (t === "pastel") return new e(8 * i() + 86, 17 * i() + 9, 360 * i(), "lch");
596
+ if (t === "dark") return new e(10 + 10 * i(), 50 * i() + 86, 360 * i(), "lch");
597
+ if (t === "rgb") return new e(255 * i(), 255 * i(), 255 * i());
598
+ if (t === "lab") return new e(100 * i(), 256 * i() - 128, 256 * i() - 128, "lab");
599
+ if (t === "grey") {
600
+ let t = 255 * i();
601
+ return new e(t, t, t);
602
+ } else throw Error("Unsupported random color mode");
603
+ }
604
+ static test(e) {
605
+ return typeof e == "string" && (Qe.test(e) || $e.test(e));
606
+ }
607
+ cmyk() {
608
+ let { _a: t, _b: n, _c: r } = this.rgb(), [i, a, o] = [
609
+ t,
610
+ n,
611
+ r
612
+ ].map((e) => e / 255), s = Math.min(1 - i, 1 - a, 1 - o);
613
+ return s === 1 ? new e(0, 0, 0, 1, "cmyk") : new e((1 - i - s) / (1 - s), (1 - a - s) / (1 - s), (1 - o - s) / (1 - s), s, "cmyk");
614
+ }
615
+ hsl() {
616
+ let { _a: t, _b: n, _c: r } = this.rgb(), [i, a, o] = [
617
+ t,
618
+ n,
619
+ r
620
+ ].map((e) => e / 255), s = Math.max(i, a, o), c = Math.min(i, a, o), l = (s + c) / 2, u = s === c, d = s - c, f = u ? 0 : l > .5 ? d / (2 - s - c) : d / (s + c);
621
+ return new e(360 * (u ? 0 : s === i ? ((a - o) / d + (a < o ? 6 : 0)) / 6 : s === a ? ((o - i) / d + 2) / 6 : s === o ? ((i - a) / d + 4) / 6 : 0), 100 * f, 100 * l, "hsl");
622
+ }
623
+ init(e = 0, t = 0, n = 0, r = 0, i = "rgb") {
624
+ if (e ||= 0, this.space) for (let e in this.space) delete this[this.space[e]];
625
+ if (typeof e == "number") i = typeof r == "string" ? r : i, r = typeof r == "string" ? 0 : r, Object.assign(this, {
626
+ _a: e,
627
+ _b: t,
628
+ _c: n,
629
+ _d: r,
630
+ space: i
631
+ });
632
+ else if (e instanceof Array) this.space = t || (typeof e[3] == "string" ? e[3] : e[4]) || "rgb", Object.assign(this, {
633
+ _a: e[0],
634
+ _b: e[1],
635
+ _c: e[2],
636
+ _d: e[3] || 0
637
+ });
638
+ else if (e instanceof Object) {
639
+ let n = bt(e, t);
640
+ Object.assign(this, n);
641
+ } else if (typeof e == "string") if ($e.test(e)) {
642
+ let t = e.replace(Ze, ""), [n, r, i] = Je.exec(t).slice(1, 4).map((e) => parseInt(e));
643
+ Object.assign(this, {
644
+ _a: n,
645
+ _b: r,
646
+ _c: i,
647
+ _d: 0,
648
+ space: "rgb"
649
+ });
650
+ } else if (Qe.test(e)) {
651
+ let [, t, n, r] = qe.exec(_t(e)).map((e) => parseInt(e, 16));
652
+ Object.assign(this, {
653
+ _a: t,
654
+ _b: n,
655
+ _c: r,
656
+ _d: 0,
657
+ space: "rgb"
658
+ });
659
+ } else throw Error("Unsupported string format, can't construct Color");
660
+ let { _a: a, _b: o, _c: s, _d: c } = this, l = this.space === "rgb" ? {
661
+ r: a,
662
+ g: o,
663
+ b: s
664
+ } : this.space === "xyz" ? {
665
+ x: a,
666
+ y: o,
667
+ z: s
668
+ } : this.space === "hsl" ? {
669
+ h: a,
670
+ s: o,
671
+ l: s
672
+ } : this.space === "lab" ? {
673
+ l: a,
674
+ a: o,
675
+ b: s
676
+ } : this.space === "lch" ? {
677
+ l: a,
678
+ c: o,
679
+ h: s
680
+ } : this.space === "cmyk" ? {
681
+ c: a,
682
+ m: o,
683
+ y: s,
684
+ k: c
685
+ } : {};
686
+ Object.assign(this, l);
687
+ }
688
+ lab() {
689
+ let { x: t, y: n, z: r } = this.xyz();
690
+ return new e(116 * n - 16, 500 * (t - n), 200 * (n - r), "lab");
691
+ }
692
+ lch() {
693
+ let { l: t, a: n, b: r } = this.lab(), i = Math.sqrt(n ** 2 + r ** 2), a = 180 * Math.atan2(r, n) / Math.PI;
694
+ return a < 0 && (a *= -1, a = 360 - a), new e(t, i, a, "lch");
695
+ }
696
+ rgb() {
697
+ if (this.space === "rgb") return this;
698
+ if (xt(this.space)) {
699
+ let { x: t, y: n, z: r } = this;
700
+ if (this.space === "lab" || this.space === "lch") {
701
+ let { l: e, a: i, b: a } = this;
702
+ if (this.space === "lch") {
703
+ let { c: e, h: t } = this, n = Math.PI / 180;
704
+ i = e * Math.cos(n * t), a = e * Math.sin(n * t);
705
+ }
706
+ let o = (e + 16) / 116, s = i / 500 + o, c = o - a / 200, l = 16 / 116, u = .008856, d = 7.787;
707
+ t = .95047 * (s ** 3 > u ? s ** 3 : (s - l) / d), n = 1 * (o ** 3 > u ? o ** 3 : (o - l) / d), r = 1.08883 * (c ** 3 > u ? c ** 3 : (c - l) / d);
708
+ }
709
+ let i = t * 3.2406 + n * -1.5372 + r * -.4986, a = t * -.9689 + n * 1.8758 + r * .0415, o = t * .0557 + n * -.204 + r * 1.057, s = Math.pow, c = .0031308, l = i > c ? 1.055 * s(i, 1 / 2.4) - .055 : 12.92 * i, u = a > c ? 1.055 * s(a, 1 / 2.4) - .055 : 12.92 * a, d = o > c ? 1.055 * s(o, 1 / 2.4) - .055 : 12.92 * o;
710
+ return new e(255 * l, 255 * u, 255 * d);
711
+ } else if (this.space === "hsl") {
712
+ let { h: t, s: n, l: r } = this;
713
+ if (t /= 360, n /= 100, r /= 100, n === 0) return r *= 255, new e(r, r, r);
714
+ let i = r < .5 ? r * (1 + n) : r + n - r * n, a = 2 * r - i;
715
+ return new e(255 * St(a, i, t + 1 / 3), 255 * St(a, i, t), 255 * St(a, i, t - 1 / 3));
716
+ } else if (this.space === "cmyk") {
717
+ let { c: t, m: n, y: r, k: i } = this;
718
+ return new e(255 * (1 - Math.min(1, t * (1 - i) + i)), 255 * (1 - Math.min(1, n * (1 - i) + i)), 255 * (1 - Math.min(1, r * (1 - i) + i)));
719
+ } else return this;
720
+ }
721
+ toArray() {
722
+ let { _a: e, _b: t, _c: n, _d: r, space: i } = this;
723
+ return [
724
+ e,
725
+ t,
726
+ n,
727
+ r,
728
+ i
729
+ ];
730
+ }
731
+ toHex() {
732
+ let [e, t, n] = this._clamped().map(vt);
733
+ return `#${e}${t}${n}`;
734
+ }
735
+ toRgb() {
736
+ let [e, t, n] = this._clamped();
737
+ return `rgb(${e},${t},${n})`;
738
+ }
739
+ toString() {
740
+ return this.toHex();
741
+ }
742
+ xyz() {
743
+ let { _a: t, _b: n, _c: r } = this.rgb(), [i, a, o] = [
744
+ t,
745
+ n,
746
+ r
747
+ ].map((e) => e / 255), s = i > .04045 ? ((i + .055) / 1.055) ** 2.4 : i / 12.92, c = a > .04045 ? ((a + .055) / 1.055) ** 2.4 : a / 12.92, l = o > .04045 ? ((o + .055) / 1.055) ** 2.4 : o / 12.92, u = (s * .4124 + c * .3576 + l * .1805) / .95047, d = (s * .2126 + c * .7152 + l * .0722) / 1, f = (s * .0193 + c * .1192 + l * .9505) / 1.08883;
748
+ return new e(u > .008856 ? u ** (1 / 3) : 7.787 * u + 16 / 116, d > .008856 ? d ** (1 / 3) : 7.787 * d + 16 / 116, f > .008856 ? f ** (1 / 3) : 7.787 * f + 16 / 116, "xyz");
749
+ }
750
+ _clamped() {
751
+ let { _a: e, _b: t, _c: n } = this.rgb(), { max: r, min: i, round: a } = Math;
752
+ return [
753
+ e,
754
+ t,
755
+ n
756
+ ].map((e) => r(0, i(a(e), 255)));
757
+ }
758
+ }, j = class e {
759
+ constructor(...e) {
760
+ this.init(...e);
761
+ }
762
+ clone() {
763
+ return new e(this);
764
+ }
765
+ init(e, t) {
766
+ let n = {
767
+ x: 0,
768
+ y: 0
769
+ }, r = Array.isArray(e) ? {
770
+ x: e[0],
771
+ y: e[1]
772
+ } : typeof e == "object" ? {
773
+ x: e.x,
774
+ y: e.y
775
+ } : {
776
+ x: e,
777
+ y: t
778
+ };
779
+ return this.x = r.x == null ? n.x : r.x, this.y = r.y == null ? n.y : r.y, this;
780
+ }
781
+ toArray() {
782
+ return [this.x, this.y];
783
+ }
784
+ transform(e) {
785
+ return this.clone().transformO(e);
786
+ }
787
+ transformO(e) {
788
+ M.isMatrixLike(e) || (e = new M(e));
789
+ let { x: t, y: n } = this;
790
+ return this.x = e.a * t + e.c * n + e.e, this.y = e.b * t + e.d * n + e.f, this;
791
+ }
792
+ };
793
+ function Ct(e, t) {
794
+ return new j(e, t).transformO(this.screenCTM().inverseO());
795
+ }
796
+ function wt(e, t, n) {
797
+ return Math.abs(t - e) < (n || 1e-6);
798
+ }
799
+ var M = class e {
800
+ constructor(...e) {
801
+ this.init(...e);
802
+ }
803
+ static formatTransforms(e) {
804
+ let t = e.flip === "both" || e.flip === !0, n = e.flip && (t || e.flip === "x") ? -1 : 1, r = e.flip && (t || e.flip === "y") ? -1 : 1, i = e.skew && e.skew.length ? e.skew[0] : isFinite(e.skew) ? e.skew : isFinite(e.skewX) ? e.skewX : 0, a = e.skew && e.skew.length ? e.skew[1] : isFinite(e.skew) ? e.skew : isFinite(e.skewY) ? e.skewY : 0, o = e.scale && e.scale.length ? e.scale[0] * n : isFinite(e.scale) ? e.scale * n : isFinite(e.scaleX) ? e.scaleX * n : n, s = e.scale && e.scale.length ? e.scale[1] * r : isFinite(e.scale) ? e.scale * r : isFinite(e.scaleY) ? e.scaleY * r : r, c = e.shear || 0, l = e.rotate || e.theta || 0, u = new j(e.origin || e.around || e.ox || e.originX, e.oy || e.originY), d = u.x, f = u.y, p = new j(e.position || e.px || e.positionX || NaN, e.py || e.positionY || NaN), m = p.x, h = p.y, g = new j(e.translate || e.tx || e.translateX, e.ty || e.translateY), ee = g.x, te = g.y, ne = new j(e.relative || e.rx || e.relativeX, e.ry || e.relativeY);
805
+ return {
806
+ scaleX: o,
807
+ scaleY: s,
808
+ skewX: i,
809
+ skewY: a,
810
+ shear: c,
811
+ theta: l,
812
+ rx: ne.x,
813
+ ry: ne.y,
814
+ tx: ee,
815
+ ty: te,
816
+ ox: d,
817
+ oy: f,
818
+ px: m,
819
+ py: h
820
+ };
821
+ }
822
+ static fromArray(e) {
823
+ return {
824
+ a: e[0],
825
+ b: e[1],
826
+ c: e[2],
827
+ d: e[3],
828
+ e: e[4],
829
+ f: e[5]
830
+ };
831
+ }
832
+ static isMatrixLike(e) {
833
+ return e.a != null || e.b != null || e.c != null || e.d != null || e.e != null || e.f != null;
834
+ }
835
+ static matrixMultiply(e, t, n) {
836
+ let r = e.a * t.a + e.c * t.b, i = e.b * t.a + e.d * t.b, a = e.a * t.c + e.c * t.d, o = e.b * t.c + e.d * t.d, s = e.e + e.a * t.e + e.c * t.f, c = e.f + e.b * t.e + e.d * t.f;
837
+ return n.a = r, n.b = i, n.c = a, n.d = o, n.e = s, n.f = c, n;
838
+ }
839
+ around(e, t, n) {
840
+ return this.clone().aroundO(e, t, n);
841
+ }
842
+ aroundO(e, t, n) {
843
+ let r = e || 0, i = t || 0;
844
+ return this.translateO(-r, -i).lmultiplyO(n).translateO(r, i);
845
+ }
846
+ clone() {
847
+ return new e(this);
848
+ }
849
+ decompose(e = 0, t = 0) {
850
+ let n = this.a, r = this.b, i = this.c, a = this.d, o = this.e, s = this.f, c = n * a - r * i, l = c > 0 ? 1 : -1, u = l * Math.sqrt(n * n + r * r), d = Math.atan2(l * r, l * n), f = 180 / Math.PI * d, p = Math.cos(d), m = Math.sin(d), h = (n * i + r * a) / c, g = i * u / (h * n - r) || a * u / (h * r + n);
851
+ return {
852
+ scaleX: u,
853
+ scaleY: g,
854
+ shear: h,
855
+ rotate: f,
856
+ translateX: o - e + e * p * u + t * (h * p * u - m * g),
857
+ translateY: s - t + e * m * u + t * (h * m * u + p * g),
858
+ originX: e,
859
+ originY: t,
860
+ a: this.a,
861
+ b: this.b,
862
+ c: this.c,
863
+ d: this.d,
864
+ e: this.e,
865
+ f: this.f
866
+ };
867
+ }
868
+ equals(t) {
869
+ if (t === this) return !0;
870
+ let n = new e(t);
871
+ return wt(this.a, n.a) && wt(this.b, n.b) && wt(this.c, n.c) && wt(this.d, n.d) && wt(this.e, n.e) && wt(this.f, n.f);
872
+ }
873
+ flip(e, t) {
874
+ return this.clone().flipO(e, t);
875
+ }
876
+ flipO(e, t) {
877
+ return e === "x" ? this.scaleO(-1, 1, t, 0) : e === "y" ? this.scaleO(1, -1, 0, t) : this.scaleO(-1, -1, e, t || e);
878
+ }
879
+ init(t) {
880
+ let n = e.fromArray([
881
+ 1,
882
+ 0,
883
+ 0,
884
+ 1,
885
+ 0,
886
+ 0
887
+ ]);
888
+ return t = t instanceof B ? t.matrixify() : typeof t == "string" ? e.fromArray(t.split(k).map(parseFloat)) : Array.isArray(t) ? e.fromArray(t) : typeof t == "object" && e.isMatrixLike(t) ? t : typeof t == "object" ? new e().transform(t) : arguments.length === 6 ? e.fromArray([].slice.call(arguments)) : n, this.a = t.a == null ? n.a : t.a, this.b = t.b == null ? n.b : t.b, this.c = t.c == null ? n.c : t.c, this.d = t.d == null ? n.d : t.d, this.e = t.e == null ? n.e : t.e, this.f = t.f == null ? n.f : t.f, this;
889
+ }
890
+ inverse() {
891
+ return this.clone().inverseO();
892
+ }
893
+ inverseO() {
894
+ let e = this.a, t = this.b, n = this.c, r = this.d, i = this.e, a = this.f, o = e * r - t * n;
895
+ if (!o) throw Error("Cannot invert " + this);
896
+ let s = r / o, c = -t / o, l = -n / o, u = e / o, d = -(s * i + l * a), f = -(c * i + u * a);
897
+ return this.a = s, this.b = c, this.c = l, this.d = u, this.e = d, this.f = f, this;
898
+ }
899
+ lmultiply(e) {
900
+ return this.clone().lmultiplyO(e);
901
+ }
902
+ lmultiplyO(t) {
903
+ let n = this, r = t instanceof e ? t : new e(t);
904
+ return e.matrixMultiply(r, n, this);
905
+ }
906
+ multiply(e) {
907
+ return this.clone().multiplyO(e);
908
+ }
909
+ multiplyO(t) {
910
+ let n = this, r = t instanceof e ? t : new e(t);
911
+ return e.matrixMultiply(n, r, this);
912
+ }
913
+ rotate(e, t, n) {
914
+ return this.clone().rotateO(e, t, n);
915
+ }
916
+ rotateO(e, t = 0, n = 0) {
917
+ e = ge(e);
918
+ let r = Math.cos(e), i = Math.sin(e), { a, b: o, c: s, d: c, e: l, f: u } = this;
919
+ return this.a = a * r - o * i, this.b = o * r + a * i, this.c = s * r - c * i, this.d = c * r + s * i, this.e = l * r - u * i + n * i - t * r + t, this.f = u * r + l * i - t * i - n * r + n, this;
920
+ }
921
+ scale(e, t, n, r) {
922
+ return this.clone().scaleO(...arguments);
923
+ }
924
+ scaleO(e, t = e, n = 0, r = 0) {
925
+ arguments.length === 3 && (r = n, n = t, t = e);
926
+ let { a: i, b: a, c: o, d: s, e: c, f: l } = this;
927
+ return this.a = i * e, this.b = a * t, this.c = o * e, this.d = s * t, this.e = c * e - n * e + n, this.f = l * t - r * t + r, this;
928
+ }
929
+ shear(e, t, n) {
930
+ return this.clone().shearO(e, t, n);
931
+ }
932
+ shearO(e, t = 0, n = 0) {
933
+ let { a: r, b: i, c: a, d: o, e: s, f: c } = this;
934
+ return this.a = r + i * e, this.c = a + o * e, this.e = s + c * e - n * e, this;
935
+ }
936
+ skew(e, t, n, r) {
937
+ return this.clone().skewO(...arguments);
938
+ }
939
+ skewO(e, t = e, n = 0, r = 0) {
940
+ arguments.length === 3 && (r = n, n = t, t = e), e = ge(e), t = ge(t);
941
+ let i = Math.tan(e), a = Math.tan(t), { a: o, b: s, c, d: l, e: u, f: d } = this;
942
+ return this.a = o + s * i, this.b = s + o * a, this.c = c + l * i, this.d = l + c * a, this.e = u + d * i - r * i, this.f = d + u * a - n * a, this;
943
+ }
944
+ skewX(e, t, n) {
945
+ return this.skew(e, 0, t, n);
946
+ }
947
+ skewY(e, t, n) {
948
+ return this.skew(0, e, t, n);
949
+ }
950
+ toArray() {
951
+ return [
952
+ this.a,
953
+ this.b,
954
+ this.c,
955
+ this.d,
956
+ this.e,
957
+ this.f
958
+ ];
959
+ }
960
+ toString() {
961
+ return "matrix(" + this.a + "," + this.b + "," + this.c + "," + this.d + "," + this.e + "," + this.f + ")";
962
+ }
963
+ transform(t) {
964
+ if (e.isMatrixLike(t)) return new e(t).multiplyO(this);
965
+ let n = e.formatTransforms(t), r = this, { x: i, y: a } = new j(n.ox, n.oy).transform(r), o = new e().translateO(n.rx, n.ry).lmultiplyO(r).translateO(-i, -a).scaleO(n.scaleX, n.scaleY).skewO(n.skewX, n.skewY).shearO(n.shear).rotateO(n.theta).translateO(i, a);
966
+ if (isFinite(n.px) || isFinite(n.py)) {
967
+ let e = new j(i, a).transform(o), t = isFinite(n.px) ? n.px - e.x : 0, r = isFinite(n.py) ? n.py - e.y : 0;
968
+ o.translateO(t, r);
969
+ }
970
+ return o.translateO(n.tx, n.ty), o;
971
+ }
972
+ translate(e, t) {
973
+ return this.clone().translateO(e, t);
974
+ }
975
+ translateO(e, t) {
976
+ return this.e += e || 0, this.f += t || 0, this;
977
+ }
978
+ valueOf() {
979
+ return {
980
+ a: this.a,
981
+ b: this.b,
982
+ c: this.c,
983
+ d: this.d,
984
+ e: this.e,
985
+ f: this.f
986
+ };
987
+ }
988
+ };
989
+ function Tt() {
990
+ return new M(this.node.getCTM());
991
+ }
992
+ function Et() {
993
+ if (typeof this.isRoot == "function" && !this.isRoot()) {
994
+ let e = this.rect(1, 1), t = e.node.getScreenCTM();
995
+ return e.remove(), new M(t);
996
+ }
997
+ return new M(this.node.getScreenCTM());
998
+ }
999
+ E(M, "Matrix");
1000
+ function N() {
1001
+ if (!N.nodes) {
1002
+ let e = C().size(2, 0);
1003
+ e.node.style.cssText = [
1004
+ "opacity: 0",
1005
+ "position: absolute",
1006
+ "left: -100%",
1007
+ "top: -100%",
1008
+ "overflow: hidden"
1009
+ ].join(";"), e.attr("focusable", "false"), e.attr("aria-hidden", "true"), N.nodes = {
1010
+ svg: e,
1011
+ path: e.path().node
1012
+ };
1013
+ }
1014
+ if (!N.nodes.svg.node.parentNode) {
1015
+ let e = x.document.body || x.document.documentElement;
1016
+ N.nodes.svg.addTo(e);
1017
+ }
1018
+ return N.nodes;
1019
+ }
1020
+ function Dt(e) {
1021
+ return !e.width && !e.height && !e.x && !e.y;
1022
+ }
1023
+ function Ot(e) {
1024
+ return e === x.document || (x.document.documentElement.contains || function(e) {
1025
+ for (; e.parentNode;) e = e.parentNode;
1026
+ return e === x.document;
1027
+ }).call(x.document.documentElement, e);
1028
+ }
1029
+ var P = class e {
1030
+ constructor(...e) {
1031
+ this.init(...e);
1032
+ }
1033
+ addOffset() {
1034
+ return this.x += x.window.pageXOffset, this.y += x.window.pageYOffset, new e(this);
1035
+ }
1036
+ init(e) {
1037
+ return e = typeof e == "string" ? e.split(k).map(parseFloat) : Array.isArray(e) ? e : typeof e == "object" ? [
1038
+ e.left == null ? e.x : e.left,
1039
+ e.top == null ? e.y : e.top,
1040
+ e.width,
1041
+ e.height
1042
+ ] : arguments.length === 4 ? [].slice.call(arguments) : [
1043
+ 0,
1044
+ 0,
1045
+ 0,
1046
+ 0
1047
+ ], this.x = e[0] || 0, this.y = e[1] || 0, this.width = this.w = e[2] || 0, this.height = this.h = e[3] || 0, this.x2 = this.x + this.w, this.y2 = this.y + this.h, this.cx = this.x + this.w / 2, this.cy = this.y + this.h / 2, this;
1048
+ }
1049
+ isNulled() {
1050
+ return Dt(this);
1051
+ }
1052
+ merge(t) {
1053
+ let n = Math.min(this.x, t.x), r = Math.min(this.y, t.y);
1054
+ return new e(n, r, Math.max(this.x + this.width, t.x + t.width) - n, Math.max(this.y + this.height, t.y + t.height) - r);
1055
+ }
1056
+ toArray() {
1057
+ return [
1058
+ this.x,
1059
+ this.y,
1060
+ this.width,
1061
+ this.height
1062
+ ];
1063
+ }
1064
+ toString() {
1065
+ return this.x + " " + this.y + " " + this.width + " " + this.height;
1066
+ }
1067
+ transform(t) {
1068
+ t instanceof M || (t = new M(t));
1069
+ let n = Infinity, r = -Infinity, i = Infinity, a = -Infinity;
1070
+ return [
1071
+ new j(this.x, this.y),
1072
+ new j(this.x2, this.y),
1073
+ new j(this.x, this.y2),
1074
+ new j(this.x2, this.y2)
1075
+ ].forEach(function(e) {
1076
+ e = e.transform(t), n = Math.min(n, e.x), r = Math.max(r, e.x), i = Math.min(i, e.y), a = Math.max(a, e.y);
1077
+ }), new e(n, i, r - n, a - i);
1078
+ }
1079
+ };
1080
+ function kt(e, t, n) {
1081
+ let r;
1082
+ try {
1083
+ if (r = t(e.node), Dt(r) && !Ot(e.node)) throw Error("Element not in the dom");
1084
+ } catch {
1085
+ r = n(e);
1086
+ }
1087
+ return r;
1088
+ }
1089
+ function At() {
1090
+ return new P(kt(this, (e) => e.getBBox(), (e) => {
1091
+ try {
1092
+ let t = e.clone().addTo(N().svg).show(), n = t.node.getBBox();
1093
+ return t.remove(), n;
1094
+ } catch (t) {
1095
+ throw Error(`Getting bbox of element "${e.node.nodeName}" is not possible: ${t.toString()}`);
1096
+ }
1097
+ }));
1098
+ }
1099
+ function jt(e) {
1100
+ let t = new P(kt(this, (e) => e.getBoundingClientRect(), (e) => {
1101
+ throw Error(`Getting rbox of element "${e.node.nodeName}" is not possible`);
1102
+ }));
1103
+ return e ? t.transform(e.screenCTM().inverseO()) : t.addOffset();
1104
+ }
1105
+ function Mt(e, t) {
1106
+ let n = this.bbox();
1107
+ return e > n.x && t > n.y && e < n.x + n.width && t < n.y + n.height;
1108
+ }
1109
+ v({ viewbox: {
1110
+ viewbox(e, t, n, r) {
1111
+ return e == null ? new P(this.attr("viewBox")) : this.attr("viewBox", new P(e, t, n, r));
1112
+ },
1113
+ zoom(e, t) {
1114
+ let { width: n, height: r } = this.attr(["width", "height"]);
1115
+ if ((!n && !r || typeof n == "string" || typeof r == "string") && (n = this.node.clientWidth, r = this.node.clientHeight), !n || !r) throw Error("Impossible to get absolute width and height. Please provide an absolute width and height attribute on the zooming element");
1116
+ let i = this.viewbox(), a = n / i.width, o = r / i.height, s = Math.min(a, o);
1117
+ if (e == null) return s;
1118
+ let c = s / e;
1119
+ c === Infinity && (c = (2 ** 53 - 1) / 100), t ||= new j(n / 2 / a + i.x, r / 2 / o + i.y);
1120
+ let l = new P(i).transform(new M({
1121
+ scale: c,
1122
+ origin: t
1123
+ }));
1124
+ return this.viewbox(l);
1125
+ }
1126
+ } }), E(P, "Box");
1127
+ var F = class extends Array {
1128
+ constructor(e = [], ...t) {
1129
+ if (super(e, ...t), typeof e == "number") return this;
1130
+ this.length = 0, this.push(...e);
1131
+ }
1132
+ };
1133
+ D([F], {
1134
+ each(e, ...t) {
1135
+ return typeof e == "function" ? this.map((t, n, r) => e.call(t, t, n, r)) : this.map((n) => n[e](...t));
1136
+ },
1137
+ toArray() {
1138
+ return Array.prototype.concat.apply([], this);
1139
+ }
1140
+ });
1141
+ var Nt = [
1142
+ "toArray",
1143
+ "constructor",
1144
+ "each"
1145
+ ];
1146
+ F.extend = function(e) {
1147
+ e = e.reduce((e, t) => (Nt.includes(t) || t[0] === "_" || (e[t] = function(...e) {
1148
+ return this.each(t, ...e);
1149
+ }), e), {}), D([F], e);
1150
+ };
1151
+ function I(e, t) {
1152
+ return new F(me((t || x.document).querySelectorAll(e), function(e) {
1153
+ return T(e);
1154
+ }));
1155
+ }
1156
+ function Pt(e) {
1157
+ return I(e, this.node);
1158
+ }
1159
+ function Ft(e) {
1160
+ return T(this.node.querySelector(e));
1161
+ }
1162
+ var It = 0, Lt = {};
1163
+ function Rt(e) {
1164
+ let t = e.getEventHolder();
1165
+ return t === x.window && (t = Lt), t.events ||= {}, t.events;
1166
+ }
1167
+ function zt(e) {
1168
+ return e.getEventTarget();
1169
+ }
1170
+ function Bt(e) {
1171
+ let t = e.getEventHolder();
1172
+ t === x.window && (t = Lt), t.events &&= {};
1173
+ }
1174
+ function Vt(e, t, n, r, i) {
1175
+ let a = n.bind(r || e), o = C(e), s = Rt(o), c = zt(o);
1176
+ t = Array.isArray(t) ? t : t.split(k), n._svgjsListenerId ||= ++It, t.forEach(function(e) {
1177
+ let t = e.split(".")[0], r = e.split(".")[1] || "*";
1178
+ s[t] = s[t] || {}, s[t][r] = s[t][r] || {}, s[t][r][n._svgjsListenerId] = a, c.addEventListener(t, a, i || !1);
1179
+ });
1180
+ }
1181
+ function L(e, t, n, r) {
1182
+ let i = C(e), a = Rt(i), o = zt(i);
1183
+ typeof n == "function" && (n = n._svgjsListenerId, !n) || (t = Array.isArray(t) ? t : (t || "").split(k), t.forEach(function(e) {
1184
+ let t = e && e.split(".")[0], s = e && e.split(".")[1], c, l;
1185
+ if (n) a[t] && a[t][s || "*"] && (o.removeEventListener(t, a[t][s || "*"][n], r || !1), delete a[t][s || "*"][n]);
1186
+ else if (t && s) {
1187
+ if (a[t] && a[t][s]) {
1188
+ for (l in a[t][s]) L(o, [t, s].join("."), l);
1189
+ delete a[t][s];
1190
+ }
1191
+ } else if (s) for (e in a) for (c in a[e]) s === c && L(o, [e, s].join("."));
1192
+ else if (t) {
1193
+ if (a[t]) {
1194
+ for (c in a[t]) L(o, [t, c].join("."));
1195
+ delete a[t];
1196
+ }
1197
+ } else {
1198
+ for (e in a) L(o, e);
1199
+ Bt(i);
1200
+ }
1201
+ }));
1202
+ }
1203
+ function Ht(e, t, n, r) {
1204
+ let i = zt(e);
1205
+ return t instanceof x.window.Event || (t = new x.window.CustomEvent(t, {
1206
+ detail: n,
1207
+ cancelable: !0,
1208
+ ...r
1209
+ })), i.dispatchEvent(t), t;
1210
+ }
1211
+ var Ut = class extends Ee {
1212
+ addEventListener() {}
1213
+ dispatch(e, t, n) {
1214
+ return Ht(this, e, t, n);
1215
+ }
1216
+ dispatchEvent(e) {
1217
+ let t = this.getEventHolder().events;
1218
+ if (!t) return !0;
1219
+ let n = t[e.type];
1220
+ for (let t in n) for (let r in n[t]) n[t][r](e);
1221
+ return !e.defaultPrevented;
1222
+ }
1223
+ fire(e, t, n) {
1224
+ return this.dispatch(e, t, n), this;
1225
+ }
1226
+ getEventHolder() {
1227
+ return this;
1228
+ }
1229
+ getEventTarget() {
1230
+ return this;
1231
+ }
1232
+ off(e, t, n) {
1233
+ return L(this, e, t, n), this;
1234
+ }
1235
+ on(e, t, n, r) {
1236
+ return Vt(this, e, t, n, r), this;
1237
+ }
1238
+ removeEventListener() {}
1239
+ };
1240
+ E(Ut, "EventTarget");
1241
+ function Wt() {}
1242
+ var Gt = {
1243
+ duration: 400,
1244
+ ease: ">",
1245
+ delay: 0
1246
+ }, Kt = {
1247
+ "fill-opacity": 1,
1248
+ "stroke-opacity": 1,
1249
+ "stroke-width": 0,
1250
+ "stroke-linejoin": "miter",
1251
+ "stroke-linecap": "butt",
1252
+ fill: "#000000",
1253
+ stroke: "#000000",
1254
+ opacity: 1,
1255
+ x: 0,
1256
+ y: 0,
1257
+ cx: 0,
1258
+ cy: 0,
1259
+ width: 0,
1260
+ height: 0,
1261
+ r: 0,
1262
+ rx: 0,
1263
+ ry: 0,
1264
+ offset: 0,
1265
+ "stop-opacity": 1,
1266
+ "stop-color": "#000000",
1267
+ "text-anchor": "start"
1268
+ }, R = class extends Array {
1269
+ constructor(...e) {
1270
+ super(...e), this.init(...e);
1271
+ }
1272
+ clone() {
1273
+ return new this.constructor(this);
1274
+ }
1275
+ init(e) {
1276
+ return typeof e == "number" ? this : (this.length = 0, this.push(...this.parse(e)), this);
1277
+ }
1278
+ parse(e = []) {
1279
+ return e instanceof Array ? e : e.trim().split(k).map(parseFloat);
1280
+ }
1281
+ toArray() {
1282
+ return Array.prototype.concat.apply([], this);
1283
+ }
1284
+ toSet() {
1285
+ return new Set(this);
1286
+ }
1287
+ toString() {
1288
+ return this.join(" ");
1289
+ }
1290
+ valueOf() {
1291
+ let e = [];
1292
+ return e.push(...this), e;
1293
+ }
1294
+ }, z = class e {
1295
+ constructor(...e) {
1296
+ this.init(...e);
1297
+ }
1298
+ convert(t) {
1299
+ return new e(this.value, t);
1300
+ }
1301
+ divide(t) {
1302
+ return t = new e(t), new e(this / t, this.unit || t.unit);
1303
+ }
1304
+ init(t, n) {
1305
+ return n = Array.isArray(t) ? t[1] : n, t = Array.isArray(t) ? t[0] : t, this.value = 0, this.unit = n || "", typeof t == "number" ? this.value = isNaN(t) ? 0 : isFinite(t) ? t : t < 0 ? -34e37 : 34e37 : typeof t == "string" ? (n = t.match(Ke), n && (this.value = parseFloat(n[1]), n[5] === "%" ? this.value /= 100 : n[5] === "s" && (this.value *= 1e3), this.unit = n[5])) : t instanceof e && (this.value = t.valueOf(), this.unit = t.unit), this;
1306
+ }
1307
+ minus(t) {
1308
+ return t = new e(t), new e(this - t, this.unit || t.unit);
1309
+ }
1310
+ plus(t) {
1311
+ return t = new e(t), new e(this + t, this.unit || t.unit);
1312
+ }
1313
+ times(t) {
1314
+ return t = new e(t), new e(this * t, this.unit || t.unit);
1315
+ }
1316
+ toArray() {
1317
+ return [this.value, this.unit];
1318
+ }
1319
+ toJSON() {
1320
+ return this.toString();
1321
+ }
1322
+ toString() {
1323
+ return (this.unit === "%" ? ~~(this.value * 1e8) / 1e6 : this.unit === "s" ? this.value / 1e3 : this.value) + this.unit;
1324
+ }
1325
+ valueOf() {
1326
+ return this.value;
1327
+ }
1328
+ }, qt = [];
1329
+ function Jt(e) {
1330
+ qt.push(e);
1331
+ }
1332
+ function Yt(e, t, n) {
1333
+ if (e == null) {
1334
+ e = {}, t = this.node.attributes;
1335
+ for (let n of t) e[n.nodeName] = tt.test(n.nodeValue) ? parseFloat(n.nodeValue) : n.nodeValue;
1336
+ return e;
1337
+ } else if (e instanceof Array) return e.reduce((e, t) => (e[t] = this.attr(t), e), {});
1338
+ else if (typeof e == "object" && e.constructor === Object) for (t in e) this.attr(t, e[t]);
1339
+ else if (t === null) this.node.removeAttribute(e);
1340
+ else if (t == null) return t = this.node.getAttribute(e), t == null ? Kt[e] : tt.test(t) ? parseFloat(t) : t;
1341
+ else t = qt.reduce((t, n) => n(e, t, this), t), typeof t == "number" ? t = new z(t) : A.isColor(t) ? t = new A(t) : t.constructor === Array && (t = new R(t)), e === "leading" ? this.leading && this.leading(t) : typeof n == "string" ? this.node.setAttributeNS(n, e, t.toString()) : this.node.setAttribute(e, t.toString()), this.rebuild && (e === "font-size" || e === "x") && this.rebuild();
1342
+ return this;
1343
+ }
1344
+ var Xt = class e extends Ut {
1345
+ constructor(e, t) {
1346
+ super(), this.node = e, this.type = e.nodeName, t && e !== t && this.attr(t);
1347
+ }
1348
+ add(e, t) {
1349
+ return e = C(e), e.removeNamespace && this.node instanceof x.window.SVGElement && e.removeNamespace(), t == null ? this.node.appendChild(e.node) : e.node !== this.node.childNodes[t] && this.node.insertBefore(e.node, this.node.childNodes[t]), this;
1350
+ }
1351
+ addTo(e, t) {
1352
+ return C(e).put(this, t);
1353
+ }
1354
+ children() {
1355
+ return new F(me(this.node.children, function(e) {
1356
+ return T(e);
1357
+ }));
1358
+ }
1359
+ clear() {
1360
+ for (; this.node.hasChildNodes();) this.node.removeChild(this.node.lastChild);
1361
+ return this;
1362
+ }
1363
+ clone(e = !0, t = !0) {
1364
+ this.writeDataToDom();
1365
+ let n = this.node.cloneNode(e);
1366
+ return t && (n = Ne(n)), new this.constructor(n);
1367
+ }
1368
+ each(e, t) {
1369
+ let n = this.children(), r, i;
1370
+ for (r = 0, i = n.length; r < i; r++) e.apply(n[r], [r, n]), t && n[r].each(e, t);
1371
+ return this;
1372
+ }
1373
+ element(t, n) {
1374
+ return this.put(new e(Oe(t), n));
1375
+ }
1376
+ first() {
1377
+ return T(this.node.firstChild);
1378
+ }
1379
+ get(e) {
1380
+ return T(this.node.childNodes[e]);
1381
+ }
1382
+ getEventHolder() {
1383
+ return this.node;
1384
+ }
1385
+ getEventTarget() {
1386
+ return this.node;
1387
+ }
1388
+ has(e) {
1389
+ return this.index(e) >= 0;
1390
+ }
1391
+ html(e, t) {
1392
+ return this.xml(e, t, Se);
1393
+ }
1394
+ id(e) {
1395
+ return e === void 0 && !this.node.id && (this.node.id = Me(this.type)), this.attr("id", e);
1396
+ }
1397
+ index(e) {
1398
+ return [].slice.call(this.node.childNodes).indexOf(e.node);
1399
+ }
1400
+ last() {
1401
+ return T(this.node.lastChild);
1402
+ }
1403
+ matches(e) {
1404
+ let t = this.node, n = t.matches || t.matchesSelector || t.msMatchesSelector || t.mozMatchesSelector || t.webkitMatchesSelector || t.oMatchesSelector || null;
1405
+ return n && n.call(t, e);
1406
+ }
1407
+ parent(e) {
1408
+ let t = this;
1409
+ if (!t.node.parentNode) return null;
1410
+ if (t = T(t.node.parentNode), !e) return t;
1411
+ do
1412
+ if (typeof e == "string" ? t.matches(e) : t instanceof e) return t;
1413
+ while (t = T(t.node.parentNode));
1414
+ return t;
1415
+ }
1416
+ put(e, t) {
1417
+ return e = C(e), this.add(e, t), e;
1418
+ }
1419
+ putIn(e, t) {
1420
+ return C(e).add(this, t);
1421
+ }
1422
+ remove() {
1423
+ return this.parent() && this.parent().removeElement(this), this;
1424
+ }
1425
+ removeElement(e) {
1426
+ return this.node.removeChild(e.node), this;
1427
+ }
1428
+ replace(e) {
1429
+ return e = C(e), this.node.parentNode && this.node.parentNode.replaceChild(e.node, this.node), e;
1430
+ }
1431
+ round(e = 2, t = null) {
1432
+ let n = 10 ** e, r = this.attr(t);
1433
+ for (let e in r) typeof r[e] == "number" && (r[e] = Math.round(r[e] * n) / n);
1434
+ return this.attr(r), this;
1435
+ }
1436
+ svg(e, t) {
1437
+ return this.xml(e, t, xe);
1438
+ }
1439
+ toString() {
1440
+ return this.id();
1441
+ }
1442
+ words(e) {
1443
+ return this.node.textContent = e, this;
1444
+ }
1445
+ wrap(e) {
1446
+ let t = this.parent();
1447
+ if (!t) return this.addTo(e);
1448
+ let n = t.index(this);
1449
+ return t.put(e, n).put(this);
1450
+ }
1451
+ writeDataToDom() {
1452
+ return this.each(function() {
1453
+ this.writeDataToDom();
1454
+ }), this;
1455
+ }
1456
+ xml(e, t, n) {
1457
+ if (typeof e == "boolean" && (n = t, t = e, e = null), e == null || typeof e == "function") {
1458
+ t ??= !0, this.writeDataToDom();
1459
+ let n = this;
1460
+ if (e != null) {
1461
+ if (n = T(n.node.cloneNode(!0)), t) {
1462
+ let t = e(n);
1463
+ if (n = t || n, t === !1) return "";
1464
+ }
1465
+ n.each(function() {
1466
+ let t = e(this), n = t || this;
1467
+ t === !1 ? this.remove() : t && this !== n && this.replace(n);
1468
+ }, !0);
1469
+ }
1470
+ return t ? n.node.outerHTML : n.node.innerHTML;
1471
+ }
1472
+ t ??= !1;
1473
+ let r = Oe("wrapper", n), i = x.document.createDocumentFragment();
1474
+ r.innerHTML = e;
1475
+ for (let e = r.children.length; e--;) i.appendChild(r.firstElementChild);
1476
+ let a = this.parent();
1477
+ return t ? this.replace(i) && a : this.add(i);
1478
+ }
1479
+ };
1480
+ D(Xt, {
1481
+ attr: Yt,
1482
+ find: Pt,
1483
+ findOne: Ft
1484
+ }), E(Xt, "Dom");
1485
+ var B = class extends Xt {
1486
+ constructor(e, t) {
1487
+ super(e, t), this.dom = {}, this.node.instance = this, e.hasAttribute("svgjs:data") && this.setData(JSON.parse(e.getAttribute("svgjs:data")) || {});
1488
+ }
1489
+ center(e, t) {
1490
+ return this.cx(e).cy(t);
1491
+ }
1492
+ cx(e) {
1493
+ return e == null ? this.x() + this.width() / 2 : this.x(e - this.width() / 2);
1494
+ }
1495
+ cy(e) {
1496
+ return e == null ? this.y() + this.height() / 2 : this.y(e - this.height() / 2);
1497
+ }
1498
+ defs() {
1499
+ let e = this.root();
1500
+ return e && e.defs();
1501
+ }
1502
+ dmove(e, t) {
1503
+ return this.dx(e).dy(t);
1504
+ }
1505
+ dx(e = 0) {
1506
+ return this.x(new z(e).plus(this.x()));
1507
+ }
1508
+ dy(e = 0) {
1509
+ return this.y(new z(e).plus(this.y()));
1510
+ }
1511
+ getEventHolder() {
1512
+ return this;
1513
+ }
1514
+ height(e) {
1515
+ return this.attr("height", e);
1516
+ }
1517
+ move(e, t) {
1518
+ return this.x(e).y(t);
1519
+ }
1520
+ parents(e = this.root()) {
1521
+ let t = typeof e == "string";
1522
+ t || (e = C(e));
1523
+ let n = new F(), r = this;
1524
+ for (; (r = r.parent()) && r.node !== x.document && r.nodeName !== "#document-fragment" && (n.push(r), !(!t && r.node === e.node || t && r.matches(e)));) if (r.node === this.root().node) return null;
1525
+ return n;
1526
+ }
1527
+ reference(e) {
1528
+ if (e = this.attr(e), !e) return null;
1529
+ let t = (e + "").match(Ye);
1530
+ return t ? C(t[1]) : null;
1531
+ }
1532
+ root() {
1533
+ let e = this.parent(Ae(De));
1534
+ return e && e.root();
1535
+ }
1536
+ setData(e) {
1537
+ return this.dom = e, this;
1538
+ }
1539
+ size(e, t) {
1540
+ let n = b(this, e, t);
1541
+ return this.width(new z(n.width)).height(new z(n.height));
1542
+ }
1543
+ width(e) {
1544
+ return this.attr("width", e);
1545
+ }
1546
+ writeDataToDom() {
1547
+ return this.node.removeAttribute("svgjs:data"), Object.keys(this.dom).length && this.node.setAttribute("svgjs:data", JSON.stringify(this.dom)), super.writeDataToDom();
1548
+ }
1549
+ x(e) {
1550
+ return this.attr("x", e);
1551
+ }
1552
+ y(e) {
1553
+ return this.attr("y", e);
1554
+ }
1555
+ };
1556
+ D(B, {
1557
+ bbox: At,
1558
+ rbox: jt,
1559
+ inside: Mt,
1560
+ point: Ct,
1561
+ ctm: Tt,
1562
+ screenCTM: Et
1563
+ }), E(B, "Element");
1564
+ var Zt = {
1565
+ stroke: [
1566
+ "color",
1567
+ "width",
1568
+ "opacity",
1569
+ "linecap",
1570
+ "linejoin",
1571
+ "miterlimit",
1572
+ "dasharray",
1573
+ "dashoffset"
1574
+ ],
1575
+ fill: [
1576
+ "color",
1577
+ "opacity",
1578
+ "rule"
1579
+ ],
1580
+ prefix: function(e, t) {
1581
+ return t === "color" ? e : e + "-" + t;
1582
+ }
1583
+ };
1584
+ ["fill", "stroke"].forEach(function(e) {
1585
+ let t = {}, n;
1586
+ t[e] = function(t) {
1587
+ if (t === void 0) return this.attr(e);
1588
+ if (typeof t == "string" || t instanceof A || A.isRgb(t) || t instanceof B) this.attr(e, t);
1589
+ else for (n = Zt[e].length - 1; n >= 0; n--) t[Zt[e][n]] != null && this.attr(Zt.prefix(e, Zt[e][n]), t[Zt[e][n]]);
1590
+ return this;
1591
+ }, v(["Element", "Runner"], t);
1592
+ }), v(["Element", "Runner"], {
1593
+ matrix: function(e, t, n, r, i, a) {
1594
+ return e == null ? new M(this) : this.attr("transform", new M(e, t, n, r, i, a));
1595
+ },
1596
+ rotate: function(e, t, n) {
1597
+ return this.transform({
1598
+ rotate: e,
1599
+ ox: t,
1600
+ oy: n
1601
+ }, !0);
1602
+ },
1603
+ skew: function(e, t, n, r) {
1604
+ return arguments.length === 1 || arguments.length === 3 ? this.transform({
1605
+ skew: e,
1606
+ ox: t,
1607
+ oy: n
1608
+ }, !0) : this.transform({
1609
+ skew: [e, t],
1610
+ ox: n,
1611
+ oy: r
1612
+ }, !0);
1613
+ },
1614
+ shear: function(e, t, n) {
1615
+ return this.transform({
1616
+ shear: e,
1617
+ ox: t,
1618
+ oy: n
1619
+ }, !0);
1620
+ },
1621
+ scale: function(e, t, n, r) {
1622
+ return arguments.length === 1 || arguments.length === 3 ? this.transform({
1623
+ scale: e,
1624
+ ox: t,
1625
+ oy: n
1626
+ }, !0) : this.transform({
1627
+ scale: [e, t],
1628
+ ox: n,
1629
+ oy: r
1630
+ }, !0);
1631
+ },
1632
+ translate: function(e, t) {
1633
+ return this.transform({ translate: [e, t] }, !0);
1634
+ },
1635
+ relative: function(e, t) {
1636
+ return this.transform({ relative: [e, t] }, !0);
1637
+ },
1638
+ flip: function(e = "both", t = "center") {
1639
+ return "xybothtrue".indexOf(e) === -1 && (t = e, e = "both"), this.transform({
1640
+ flip: e,
1641
+ origin: t
1642
+ }, !0);
1643
+ },
1644
+ opacity: function(e) {
1645
+ return this.attr("opacity", e);
1646
+ }
1647
+ }), v("radius", { radius: function(e, t = e) {
1648
+ return (this._element || this).type === "radialGradient" ? this.attr("r", new z(e)) : this.rx(e).ry(t);
1649
+ } }), v("Path", {
1650
+ length: function() {
1651
+ return this.node.getTotalLength();
1652
+ },
1653
+ pointAt: function(e) {
1654
+ return new j(this.node.getPointAtLength(e));
1655
+ }
1656
+ }), v(["Element", "Runner"], { font: function(e, t) {
1657
+ if (typeof e == "object") {
1658
+ for (t in e) this.font(t, e[t]);
1659
+ return this;
1660
+ }
1661
+ return e === "leading" ? this.leading(t) : e === "anchor" ? this.attr("text-anchor", t) : e === "size" || e === "family" || e === "weight" || e === "stretch" || e === "variant" || e === "style" ? this.attr("font-" + e, t) : this.attr(e, t);
1662
+ } }), v("Element", [
1663
+ "click",
1664
+ "dblclick",
1665
+ "mousedown",
1666
+ "mouseup",
1667
+ "mouseover",
1668
+ "mouseout",
1669
+ "mousemove",
1670
+ "mouseenter",
1671
+ "mouseleave",
1672
+ "touchstart",
1673
+ "touchmove",
1674
+ "touchleave",
1675
+ "touchend",
1676
+ "touchcancel"
1677
+ ].reduce(function(e, t) {
1678
+ return e[t] = function(e) {
1679
+ return e === null ? this.off(t) : this.on(t, e), this;
1680
+ }, e;
1681
+ }, {}));
1682
+ function Qt() {
1683
+ return this.attr("transform", null);
1684
+ }
1685
+ function $t() {
1686
+ return (this.attr("transform") || "").split(Xe).slice(0, -1).map(function(e) {
1687
+ let t = e.trim().split("(");
1688
+ return [t[0], t[1].split(k).map(function(e) {
1689
+ return parseFloat(e);
1690
+ })];
1691
+ }).reverse().reduce(function(e, t) {
1692
+ return t[0] === "matrix" ? e.lmultiply(M.fromArray(t[1])) : e[t[0]].apply(e, t[1]);
1693
+ }, new M());
1694
+ }
1695
+ function en(e, t) {
1696
+ if (this === e) return this;
1697
+ let n = this.screenCTM(), r = e.screenCTM().inverse();
1698
+ return this.addTo(e, t).untransform().transform(r.multiply(n)), this;
1699
+ }
1700
+ function tn(e) {
1701
+ return this.toParent(this.root(), e);
1702
+ }
1703
+ function nn(e, t) {
1704
+ if (e == null || typeof e == "string") {
1705
+ let t = new M(this).decompose();
1706
+ return e == null ? t : t[e];
1707
+ }
1708
+ M.isMatrixLike(e) || (e = {
1709
+ ...e,
1710
+ origin: be(e, this)
1711
+ });
1712
+ let n = new M(t === !0 ? this : t || !1).transform(e);
1713
+ return this.attr("transform", n);
1714
+ }
1715
+ v("Element", {
1716
+ untransform: Qt,
1717
+ matrixify: $t,
1718
+ toParent: en,
1719
+ toRoot: tn,
1720
+ transform: nn
1721
+ });
1722
+ var V = class e extends B {
1723
+ flatten(t = this, n) {
1724
+ return this.each(function() {
1725
+ if (this instanceof e) return this.flatten().ungroup();
1726
+ }), this;
1727
+ }
1728
+ ungroup(e = this.parent(), t = e.index(this)) {
1729
+ return t = t === -1 ? e.children().length : t, this.each(function(n, r) {
1730
+ return r[r.length - n - 1].toParent(e, t);
1731
+ }), this.remove();
1732
+ }
1733
+ };
1734
+ E(V, "Container");
1735
+ var rn = class extends V {
1736
+ constructor(e, t = e) {
1737
+ super(w("defs", e), t);
1738
+ }
1739
+ flatten() {
1740
+ return this;
1741
+ }
1742
+ ungroup() {
1743
+ return this;
1744
+ }
1745
+ };
1746
+ E(rn, "Defs");
1747
+ var H = class extends B {};
1748
+ E(H, "Shape");
1749
+ function an(e) {
1750
+ return this.attr("rx", e);
1751
+ }
1752
+ function on(e) {
1753
+ return this.attr("ry", e);
1754
+ }
1755
+ function sn(e) {
1756
+ return e == null ? this.cx() - this.rx() : this.cx(e + this.rx());
1757
+ }
1758
+ function cn(e) {
1759
+ return e == null ? this.cy() - this.ry() : this.cy(e + this.ry());
1760
+ }
1761
+ function ln(e) {
1762
+ return this.attr("cx", e);
1763
+ }
1764
+ function un(e) {
1765
+ return this.attr("cy", e);
1766
+ }
1767
+ function dn(e) {
1768
+ return e == null ? this.rx() * 2 : this.rx(new z(e).divide(2));
1769
+ }
1770
+ function fn(e) {
1771
+ return e == null ? this.ry() * 2 : this.ry(new z(e).divide(2));
1772
+ }
1773
+ var pn = {
1774
+ __proto__: null,
1775
+ rx: an,
1776
+ ry: on,
1777
+ x: sn,
1778
+ y: cn,
1779
+ cx: ln,
1780
+ cy: un,
1781
+ width: dn,
1782
+ height: fn
1783
+ }, mn = class extends H {
1784
+ constructor(e, t = e) {
1785
+ super(w("ellipse", e), t);
1786
+ }
1787
+ size(e, t) {
1788
+ let n = b(this, e, t);
1789
+ return this.rx(new z(n.width).divide(2)).ry(new z(n.height).divide(2));
1790
+ }
1791
+ };
1792
+ D(mn, pn), v("Container", { ellipse: O(function(e = 0, t = e) {
1793
+ return this.put(new mn()).size(e, t).move(0, 0);
1794
+ }) }), E(mn, "Ellipse");
1795
+ var hn = class extends Xt {
1796
+ constructor(e = x.document.createDocumentFragment()) {
1797
+ super(e);
1798
+ }
1799
+ xml(e, t, n) {
1800
+ if (typeof e == "boolean" && (n = t, t = e, e = null), e == null || typeof e == "function") {
1801
+ let e = new Xt(Oe("wrapper", n));
1802
+ return e.add(this.node.cloneNode(!0)), e.xml(!1, n);
1803
+ }
1804
+ return super.xml(e, !1, n);
1805
+ }
1806
+ };
1807
+ E(hn, "Fragment");
1808
+ function gn(e, t) {
1809
+ return (this._element || this).type === "radialGradient" ? this.attr({
1810
+ fx: new z(e),
1811
+ fy: new z(t)
1812
+ }) : this.attr({
1813
+ x1: new z(e),
1814
+ y1: new z(t)
1815
+ });
1816
+ }
1817
+ function _n(e, t) {
1818
+ return (this._element || this).type === "radialGradient" ? this.attr({
1819
+ cx: new z(e),
1820
+ cy: new z(t)
1821
+ }) : this.attr({
1822
+ x2: new z(e),
1823
+ y2: new z(t)
1824
+ });
1825
+ }
1826
+ var vn = {
1827
+ __proto__: null,
1828
+ from: gn,
1829
+ to: _n
1830
+ }, yn = class extends V {
1831
+ constructor(e, t) {
1832
+ super(w(e + "Gradient", typeof e == "string" ? null : e), t);
1833
+ }
1834
+ attr(e, t, n) {
1835
+ return e === "transform" && (e = "gradientTransform"), super.attr(e, t, n);
1836
+ }
1837
+ bbox() {
1838
+ return new P();
1839
+ }
1840
+ targets() {
1841
+ return I("svg [fill*=" + this.id() + "]");
1842
+ }
1843
+ toString() {
1844
+ return this.url();
1845
+ }
1846
+ update(e) {
1847
+ return this.clear(), typeof e == "function" && e.call(this, this), this;
1848
+ }
1849
+ url() {
1850
+ return "url(#" + this.id() + ")";
1851
+ }
1852
+ };
1853
+ D(yn, vn), v({
1854
+ Container: { gradient(...e) {
1855
+ return this.defs().gradient(...e);
1856
+ } },
1857
+ Defs: { gradient: O(function(e, t) {
1858
+ return this.put(new yn(e)).update(t);
1859
+ }) }
1860
+ }), E(yn, "Gradient");
1861
+ var bn = class extends V {
1862
+ constructor(e, t = e) {
1863
+ super(w("pattern", e), t);
1864
+ }
1865
+ attr(e, t, n) {
1866
+ return e === "transform" && (e = "patternTransform"), super.attr(e, t, n);
1867
+ }
1868
+ bbox() {
1869
+ return new P();
1870
+ }
1871
+ targets() {
1872
+ return I("svg [fill*=" + this.id() + "]");
1873
+ }
1874
+ toString() {
1875
+ return this.url();
1876
+ }
1877
+ update(e) {
1878
+ return this.clear(), typeof e == "function" && e.call(this, this), this;
1879
+ }
1880
+ url() {
1881
+ return "url(#" + this.id() + ")";
1882
+ }
1883
+ };
1884
+ v({
1885
+ Container: { pattern(...e) {
1886
+ return this.defs().pattern(...e);
1887
+ } },
1888
+ Defs: { pattern: O(function(e, t, n) {
1889
+ return this.put(new bn()).update(n).attr({
1890
+ x: 0,
1891
+ y: 0,
1892
+ width: e,
1893
+ height: t,
1894
+ patternUnits: "userSpaceOnUse"
1895
+ });
1896
+ }) }
1897
+ }), E(bn, "Pattern");
1898
+ var xn = class extends H {
1899
+ constructor(e, t = e) {
1900
+ super(w("image", e), t);
1901
+ }
1902
+ load(e, t) {
1903
+ if (!e) return this;
1904
+ let n = new x.window.Image();
1905
+ return Vt(n, "load", function(e) {
1906
+ let r = this.parent(bn);
1907
+ this.width() === 0 && this.height() === 0 && this.size(n.width, n.height), r instanceof bn && r.width() === 0 && r.height() === 0 && r.size(this.width(), this.height()), typeof t == "function" && t.call(this, e);
1908
+ }, this), Vt(n, "load error", function() {
1909
+ L(n);
1910
+ }), this.attr("href", n.src = e, we);
1911
+ }
1912
+ };
1913
+ Jt(function(e, t, n) {
1914
+ return (e === "fill" || e === "stroke") && nt.test(t) && (t = n.root().defs().image(t)), t instanceof xn && (t = n.root().defs().pattern(0, 0, (e) => {
1915
+ e.add(t);
1916
+ })), t;
1917
+ }), v({ Container: { image: O(function(e, t) {
1918
+ return this.put(new xn()).size(0, 0).load(e, t);
1919
+ }) } }), E(xn, "Image");
1920
+ var U = class extends R {
1921
+ bbox() {
1922
+ let e = -Infinity, t = -Infinity, n = Infinity, r = Infinity;
1923
+ return this.forEach(function(i) {
1924
+ e = Math.max(i[0], e), t = Math.max(i[1], t), n = Math.min(i[0], n), r = Math.min(i[1], r);
1925
+ }), new P(n, r, e - n, t - r);
1926
+ }
1927
+ move(e, t) {
1928
+ let n = this.bbox();
1929
+ if (e -= n.x, t -= n.y, !isNaN(e) && !isNaN(t)) for (let n = this.length - 1; n >= 0; n--) this[n] = [this[n][0] + e, this[n][1] + t];
1930
+ return this;
1931
+ }
1932
+ parse(e = [0, 0]) {
1933
+ let t = [];
1934
+ e = e instanceof Array ? Array.prototype.concat.apply([], e) : e.trim().split(k).map(parseFloat), e.length % 2 != 0 && e.pop();
1935
+ for (let n = 0, r = e.length; n < r; n += 2) t.push([e[n], e[n + 1]]);
1936
+ return t;
1937
+ }
1938
+ size(e, t) {
1939
+ let n, r = this.bbox();
1940
+ for (n = this.length - 1; n >= 0; n--) r.width && (this[n][0] = (this[n][0] - r.x) * e / r.width + r.x), r.height && (this[n][1] = (this[n][1] - r.y) * t / r.height + r.y);
1941
+ return this;
1942
+ }
1943
+ toLine() {
1944
+ return {
1945
+ x1: this[0][0],
1946
+ y1: this[0][1],
1947
+ x2: this[1][0],
1948
+ y2: this[1][1]
1949
+ };
1950
+ }
1951
+ toString() {
1952
+ let e = [];
1953
+ for (let t = 0, n = this.length; t < n; t++) e.push(this[t].join(","));
1954
+ return e.join(" ");
1955
+ }
1956
+ transform(e) {
1957
+ return this.clone().transformO(e);
1958
+ }
1959
+ transformO(e) {
1960
+ M.isMatrixLike(e) || (e = new M(e));
1961
+ for (let t = this.length; t--;) {
1962
+ let [n, r] = this[t];
1963
+ this[t][0] = e.a * n + e.c * r + e.e, this[t][1] = e.b * n + e.d * r + e.f;
1964
+ }
1965
+ return this;
1966
+ }
1967
+ }, Sn = U;
1968
+ function Cn(e) {
1969
+ return e == null ? this.bbox().x : this.move(e, this.bbox().y);
1970
+ }
1971
+ function wn(e) {
1972
+ return e == null ? this.bbox().y : this.move(this.bbox().x, e);
1973
+ }
1974
+ function Tn(e) {
1975
+ let t = this.bbox();
1976
+ return e == null ? t.width : this.size(e, t.height);
1977
+ }
1978
+ function En(e) {
1979
+ let t = this.bbox();
1980
+ return e == null ? t.height : this.size(t.width, e);
1981
+ }
1982
+ var Dn = {
1983
+ __proto__: null,
1984
+ MorphArray: Sn,
1985
+ x: Cn,
1986
+ y: wn,
1987
+ width: Tn,
1988
+ height: En
1989
+ }, On = class extends H {
1990
+ constructor(e, t = e) {
1991
+ super(w("line", e), t);
1992
+ }
1993
+ array() {
1994
+ return new U([[this.attr("x1"), this.attr("y1")], [this.attr("x2"), this.attr("y2")]]);
1995
+ }
1996
+ move(e, t) {
1997
+ return this.attr(this.array().move(e, t).toLine());
1998
+ }
1999
+ plot(e, t, n, r) {
2000
+ return e == null ? this.array() : (e = t === void 0 ? new U(e).toLine() : {
2001
+ x1: e,
2002
+ y1: t,
2003
+ x2: n,
2004
+ y2: r
2005
+ }, this.attr(e));
2006
+ }
2007
+ size(e, t) {
2008
+ let n = b(this, e, t);
2009
+ return this.attr(this.array().size(n.width, n.height).toLine());
2010
+ }
2011
+ };
2012
+ D(On, Dn), v({ Container: { line: O(function(...e) {
2013
+ return On.prototype.plot.apply(this.put(new On()), e[0] == null ? [
2014
+ 0,
2015
+ 0,
2016
+ 0,
2017
+ 0
2018
+ ] : e);
2019
+ }) } }), E(On, "Line");
2020
+ var kn = class extends V {
2021
+ constructor(e, t = e) {
2022
+ super(w("marker", e), t);
2023
+ }
2024
+ height(e) {
2025
+ return this.attr("markerHeight", e);
2026
+ }
2027
+ orient(e) {
2028
+ return this.attr("orient", e);
2029
+ }
2030
+ ref(e, t) {
2031
+ return this.attr("refX", e).attr("refY", t);
2032
+ }
2033
+ toString() {
2034
+ return "url(#" + this.id() + ")";
2035
+ }
2036
+ update(e) {
2037
+ return this.clear(), typeof e == "function" && e.call(this, this), this;
2038
+ }
2039
+ width(e) {
2040
+ return this.attr("markerWidth", e);
2041
+ }
2042
+ };
2043
+ v({
2044
+ Container: { marker(...e) {
2045
+ return this.defs().marker(...e);
2046
+ } },
2047
+ Defs: { marker: O(function(e, t, n) {
2048
+ return this.put(new kn()).size(e, t).ref(e / 2, t / 2).viewbox(0, 0, e, t).attr("orient", "auto").update(n);
2049
+ }) },
2050
+ marker: { marker(e, t, n, r) {
2051
+ let i = ["marker"];
2052
+ return e !== "all" && i.push(e), i = i.join("-"), e = arguments[1] instanceof kn ? arguments[1] : this.defs().marker(t, n, r), this.attr(i, e);
2053
+ } }
2054
+ }), E(kn, "Marker");
2055
+ function W(e, t) {
2056
+ return function(n) {
2057
+ return n == null ? this[e] : (this[e] = n, t && t.call(this), this);
2058
+ };
2059
+ }
2060
+ var An = {
2061
+ "-": function(e) {
2062
+ return e;
2063
+ },
2064
+ "<>": function(e) {
2065
+ return -Math.cos(e * Math.PI) / 2 + .5;
2066
+ },
2067
+ ">": function(e) {
2068
+ return Math.sin(e * Math.PI / 2);
2069
+ },
2070
+ "<": function(e) {
2071
+ return -Math.cos(e * Math.PI / 2) + 1;
2072
+ },
2073
+ bezier: function(e, t, n, r) {
2074
+ return function(i) {
2075
+ return i < 0 ? e > 0 ? t / e * i : n > 0 ? r / n * i : 0 : i > 1 ? n < 1 ? (1 - r) / (1 - n) * i + (r - n) / (1 - n) : e < 1 ? (1 - t) / (1 - e) * i + (t - e) / (1 - e) : 1 : 3 * i * (1 - i) ** 2 * t + 3 * i ** 2 * (1 - i) * r + i ** 3;
2076
+ };
2077
+ },
2078
+ steps: function(e, t = "end") {
2079
+ t = t.split("-").reverse()[0];
2080
+ let n = e;
2081
+ return t === "none" ? --n : t === "both" && ++n, (r, i = !1) => {
2082
+ let a = Math.floor(r * e), o = r * a % 1 == 0;
2083
+ return (t === "start" || t === "both") && ++a, i && o && --a, r >= 0 && a < 0 && (a = 0), r <= 1 && a > n && (a = n), a / n;
2084
+ };
2085
+ }
2086
+ }, jn = class {
2087
+ done() {
2088
+ return !1;
2089
+ }
2090
+ }, Mn = class extends jn {
2091
+ constructor(e = Gt.ease) {
2092
+ super(), this.ease = An[e] || e;
2093
+ }
2094
+ step(e, t, n) {
2095
+ return typeof e == "number" ? e + (t - e) * this.ease(n) : n < 1 ? e : t;
2096
+ }
2097
+ }, Nn = class extends jn {
2098
+ constructor(e) {
2099
+ super(), this.stepper = e;
2100
+ }
2101
+ done(e) {
2102
+ return e.done;
2103
+ }
2104
+ step(e, t, n, r) {
2105
+ return this.stepper(e, t, n, r);
2106
+ }
2107
+ };
2108
+ function Pn() {
2109
+ let e = (this._duration || 500) / 1e3, t = this._overshoot || 0, n = Math.PI, r = Math.log(t / 100 + 1e-10), i = -r / Math.sqrt(n * n + r * r), a = 3.9 / (i * e);
2110
+ this.d = 2 * i * a, this.k = a * a;
2111
+ }
2112
+ D(class extends Nn {
2113
+ constructor(e = 500, t = 0) {
2114
+ super(), this.duration(e).overshoot(t);
2115
+ }
2116
+ step(e, t, n, r) {
2117
+ if (typeof e == "string") return e;
2118
+ if (r.done = n === Infinity, n === Infinity) return t;
2119
+ if (n === 0) return e;
2120
+ n > 100 && (n = 16), n /= 1e3;
2121
+ let i = r.velocity || 0, a = -this.d * i - this.k * (e - t), o = e + i * n + a * n * n / 2;
2122
+ return r.velocity = i + a * n, r.done = Math.abs(t - o) + Math.abs(i) < .002, r.done ? t : o;
2123
+ }
2124
+ }, {
2125
+ duration: W("_duration", Pn),
2126
+ overshoot: W("_overshoot", Pn)
2127
+ }), D(class extends Nn {
2128
+ constructor(e = .1, t = .01, n = 0, r = 1e3) {
2129
+ super(), this.p(e).i(t).d(n).windup(r);
2130
+ }
2131
+ step(e, t, n, r) {
2132
+ if (typeof e == "string") return e;
2133
+ if (r.done = n === Infinity, n === Infinity) return t;
2134
+ if (n === 0) return e;
2135
+ let i = t - e, a = (r.integral || 0) + i * n, o = (i - (r.error || 0)) / n, s = this._windup;
2136
+ return s !== !1 && (a = Math.max(-s, Math.min(a, s))), r.error = i, r.integral = a, r.done = Math.abs(i) < .001, r.done ? t : e + (this.P * i + this.I * a + this.D * o);
2137
+ }
2138
+ }, {
2139
+ windup: W("_windup"),
2140
+ p: W("P"),
2141
+ i: W("I"),
2142
+ d: W("D")
2143
+ });
2144
+ var Fn = {
2145
+ M: 2,
2146
+ L: 2,
2147
+ H: 1,
2148
+ V: 1,
2149
+ C: 6,
2150
+ S: 4,
2151
+ Q: 4,
2152
+ T: 2,
2153
+ A: 7,
2154
+ Z: 0
2155
+ }, In = {
2156
+ M: function(e, t, n) {
2157
+ return t.x = n.x = e[0], t.y = n.y = e[1], [
2158
+ "M",
2159
+ t.x,
2160
+ t.y
2161
+ ];
2162
+ },
2163
+ L: function(e, t) {
2164
+ return t.x = e[0], t.y = e[1], [
2165
+ "L",
2166
+ e[0],
2167
+ e[1]
2168
+ ];
2169
+ },
2170
+ H: function(e, t) {
2171
+ return t.x = e[0], ["H", e[0]];
2172
+ },
2173
+ V: function(e, t) {
2174
+ return t.y = e[0], ["V", e[0]];
2175
+ },
2176
+ C: function(e, t) {
2177
+ return t.x = e[4], t.y = e[5], [
2178
+ "C",
2179
+ e[0],
2180
+ e[1],
2181
+ e[2],
2182
+ e[3],
2183
+ e[4],
2184
+ e[5]
2185
+ ];
2186
+ },
2187
+ S: function(e, t) {
2188
+ return t.x = e[2], t.y = e[3], [
2189
+ "S",
2190
+ e[0],
2191
+ e[1],
2192
+ e[2],
2193
+ e[3]
2194
+ ];
2195
+ },
2196
+ Q: function(e, t) {
2197
+ return t.x = e[2], t.y = e[3], [
2198
+ "Q",
2199
+ e[0],
2200
+ e[1],
2201
+ e[2],
2202
+ e[3]
2203
+ ];
2204
+ },
2205
+ T: function(e, t) {
2206
+ return t.x = e[0], t.y = e[1], [
2207
+ "T",
2208
+ e[0],
2209
+ e[1]
2210
+ ];
2211
+ },
2212
+ Z: function(e, t, n) {
2213
+ return t.x = n.x, t.y = n.y, ["Z"];
2214
+ },
2215
+ A: function(e, t) {
2216
+ return t.x = e[5], t.y = e[6], [
2217
+ "A",
2218
+ e[0],
2219
+ e[1],
2220
+ e[2],
2221
+ e[3],
2222
+ e[4],
2223
+ e[5],
2224
+ e[6]
2225
+ ];
2226
+ }
2227
+ }, Ln = "mlhvqtcsaz".split("");
2228
+ for (let e = 0, t = Ln.length; e < t; ++e) In[Ln[e]] = function(e) {
2229
+ return function(t, n, r) {
2230
+ if (e === "H") t[0] += n.x;
2231
+ else if (e === "V") t[0] += n.y;
2232
+ else if (e === "A") t[5] += n.x, t[6] += n.y;
2233
+ else for (let e = 0, r = t.length; e < r; ++e) t[e] = t[e] + (e % 2 ? n.y : n.x);
2234
+ return In[e](t, n, r);
2235
+ };
2236
+ }(Ln[e].toUpperCase());
2237
+ function Rn(e) {
2238
+ return In[e.segment[0]](e.segment.slice(1), e.p, e.p0);
2239
+ }
2240
+ function zn(e) {
2241
+ return e.segment.length && e.segment.length - 1 === Fn[e.segment[0].toUpperCase()];
2242
+ }
2243
+ function Bn(e, t) {
2244
+ e.inNumber && G(e, !1);
2245
+ let n = rt.test(t);
2246
+ if (n) e.segment = [t];
2247
+ else {
2248
+ let t = e.lastCommand, n = t.toLowerCase();
2249
+ e.segment = [n === "m" ? t === n ? "l" : "L" : t];
2250
+ }
2251
+ return e.inSegment = !0, e.lastCommand = e.segment[0], n;
2252
+ }
2253
+ function G(e, t) {
2254
+ if (!e.inNumber) throw Error("Parser Error");
2255
+ e.number && e.segment.push(parseFloat(e.number)), e.inNumber = t, e.number = "", e.pointSeen = !1, e.hasExponent = !1, zn(e) && Vn(e);
2256
+ }
2257
+ function Vn(e) {
2258
+ e.inSegment = !1, e.absolute && (e.segment = Rn(e)), e.segments.push(e.segment);
2259
+ }
2260
+ function Hn(e) {
2261
+ if (!e.segment.length) return !1;
2262
+ let t = e.segment[0].toUpperCase() === "A", n = e.segment.length;
2263
+ return t && (n === 4 || n === 5);
2264
+ }
2265
+ function Un(e) {
2266
+ return e.lastToken.toUpperCase() === "E";
2267
+ }
2268
+ function Wn(e, t = !0) {
2269
+ let n = 0, r = "", i = {
2270
+ segment: [],
2271
+ inNumber: !1,
2272
+ number: "",
2273
+ lastToken: "",
2274
+ inSegment: !1,
2275
+ segments: [],
2276
+ pointSeen: !1,
2277
+ hasExponent: !1,
2278
+ absolute: t,
2279
+ p0: new j(),
2280
+ p: new j()
2281
+ };
2282
+ for (; i.lastToken = r, r = e.charAt(n++);) if (!(!i.inSegment && Bn(i, r))) {
2283
+ if (r === ".") {
2284
+ if (i.pointSeen || i.hasExponent) {
2285
+ G(i, !1), --n;
2286
+ continue;
2287
+ }
2288
+ i.inNumber = !0, i.pointSeen = !0, i.number += r;
2289
+ continue;
2290
+ }
2291
+ if (!isNaN(parseInt(r))) {
2292
+ if (i.number === "0" || Hn(i)) {
2293
+ i.inNumber = !0, i.number = r, G(i, !0);
2294
+ continue;
2295
+ }
2296
+ i.inNumber = !0, i.number += r;
2297
+ continue;
2298
+ }
2299
+ if (r === " " || r === ",") {
2300
+ i.inNumber && G(i, !1);
2301
+ continue;
2302
+ }
2303
+ if (r === "-") {
2304
+ if (i.inNumber && !Un(i)) {
2305
+ G(i, !1), --n;
2306
+ continue;
2307
+ }
2308
+ i.number += r, i.inNumber = !0;
2309
+ continue;
2310
+ }
2311
+ if (r.toUpperCase() === "E") {
2312
+ i.number += r, i.hasExponent = !0;
2313
+ continue;
2314
+ }
2315
+ if (rt.test(r)) {
2316
+ if (i.inNumber) G(i, !1);
2317
+ else if (zn(i)) Vn(i);
2318
+ else throw Error("parser Error");
2319
+ --n;
2320
+ }
2321
+ }
2322
+ return i.inNumber && G(i, !1), i.inSegment && zn(i) && Vn(i), i.segments;
2323
+ }
2324
+ function Gn(e) {
2325
+ let t = "";
2326
+ for (let n = 0, r = e.length; n < r; n++) t += e[n][0], e[n][1] != null && (t += e[n][1], e[n][2] != null && (t += " ", t += e[n][2], e[n][3] != null && (t += " ", t += e[n][3], t += " ", t += e[n][4], e[n][5] != null && (t += " ", t += e[n][5], t += " ", t += e[n][6], e[n][7] != null && (t += " ", t += e[n][7])))));
2327
+ return t + " ";
2328
+ }
2329
+ var K = class extends R {
2330
+ bbox() {
2331
+ return N().path.setAttribute("d", this.toString()), new P(N.nodes.path.getBBox());
2332
+ }
2333
+ move(e, t) {
2334
+ let n = this.bbox();
2335
+ if (e -= n.x, t -= n.y, !isNaN(e) && !isNaN(t)) for (let n, r = this.length - 1; r >= 0; r--) n = this[r][0], n === "M" || n === "L" || n === "T" ? (this[r][1] += e, this[r][2] += t) : n === "H" ? this[r][1] += e : n === "V" ? this[r][1] += t : n === "C" || n === "S" || n === "Q" ? (this[r][1] += e, this[r][2] += t, this[r][3] += e, this[r][4] += t, n === "C" && (this[r][5] += e, this[r][6] += t)) : n === "A" && (this[r][6] += e, this[r][7] += t);
2336
+ return this;
2337
+ }
2338
+ parse(e = "M0 0") {
2339
+ return Array.isArray(e) && (e = Array.prototype.concat.apply([], e).toString()), Wn(e);
2340
+ }
2341
+ size(e, t) {
2342
+ let n = this.bbox(), r, i;
2343
+ for (n.width = n.width === 0 ? 1 : n.width, n.height = n.height === 0 ? 1 : n.height, r = this.length - 1; r >= 0; r--) i = this[r][0], i === "M" || i === "L" || i === "T" ? (this[r][1] = (this[r][1] - n.x) * e / n.width + n.x, this[r][2] = (this[r][2] - n.y) * t / n.height + n.y) : i === "H" ? this[r][1] = (this[r][1] - n.x) * e / n.width + n.x : i === "V" ? this[r][1] = (this[r][1] - n.y) * t / n.height + n.y : i === "C" || i === "S" || i === "Q" ? (this[r][1] = (this[r][1] - n.x) * e / n.width + n.x, this[r][2] = (this[r][2] - n.y) * t / n.height + n.y, this[r][3] = (this[r][3] - n.x) * e / n.width + n.x, this[r][4] = (this[r][4] - n.y) * t / n.height + n.y, i === "C" && (this[r][5] = (this[r][5] - n.x) * e / n.width + n.x, this[r][6] = (this[r][6] - n.y) * t / n.height + n.y)) : i === "A" && (this[r][1] = this[r][1] * e / n.width, this[r][2] = this[r][2] * t / n.height, this[r][6] = (this[r][6] - n.x) * e / n.width + n.x, this[r][7] = (this[r][7] - n.y) * t / n.height + n.y);
2344
+ return this;
2345
+ }
2346
+ toString() {
2347
+ return Gn(this);
2348
+ }
2349
+ }, Kn = (e) => {
2350
+ let t = typeof e;
2351
+ return t === "number" ? z : t === "string" ? A.isColor(e) ? A : k.test(e) ? rt.test(e) ? K : R : Ke.test(e) ? z : qn : Zn.indexOf(e.constructor) > -1 ? e.constructor : Array.isArray(e) ? R : t === "object" ? Xn : qn;
2352
+ }, q = class {
2353
+ constructor(e) {
2354
+ this._stepper = e || new Mn("-"), this._from = null, this._to = null, this._type = null, this._context = null, this._morphObj = null;
2355
+ }
2356
+ at(e) {
2357
+ return this._morphObj.morph(this._from, this._to, e, this._stepper, this._context);
2358
+ }
2359
+ done() {
2360
+ return this._context.map(this._stepper.done).reduce(function(e, t) {
2361
+ return e && t;
2362
+ }, !0);
2363
+ }
2364
+ from(e) {
2365
+ return e == null ? this._from : (this._from = this._set(e), this);
2366
+ }
2367
+ stepper(e) {
2368
+ return e == null ? this._stepper : (this._stepper = e, this);
2369
+ }
2370
+ to(e) {
2371
+ return e == null ? this._to : (this._to = this._set(e), this);
2372
+ }
2373
+ type(e) {
2374
+ return e == null ? this._type : (this._type = e, this);
2375
+ }
2376
+ _set(e) {
2377
+ this._type || this.type(Kn(e));
2378
+ let t = new this._type(e);
2379
+ return this._type === A && (t = this._to ? t[this._to[4]]() : this._from ? t[this._from[4]]() : t), this._type === Xn && (t = this._to ? t.align(this._to) : this._from ? t.align(this._from) : t), t = t.toConsumable(), this._morphObj = this._morphObj || new this._type(), this._context = this._context || Array.apply(null, Array(t.length)).map(Object).map(function(e) {
2380
+ return e.done = !0, e;
2381
+ }), t;
2382
+ }
2383
+ }, qn = class {
2384
+ constructor(...e) {
2385
+ this.init(...e);
2386
+ }
2387
+ init(e) {
2388
+ return e = Array.isArray(e) ? e[0] : e, this.value = e, this;
2389
+ }
2390
+ toArray() {
2391
+ return [this.value];
2392
+ }
2393
+ valueOf() {
2394
+ return this.value;
2395
+ }
2396
+ }, Jn = class e {
2397
+ constructor(...e) {
2398
+ this.init(...e);
2399
+ }
2400
+ init(t) {
2401
+ return Array.isArray(t) && (t = {
2402
+ scaleX: t[0],
2403
+ scaleY: t[1],
2404
+ shear: t[2],
2405
+ rotate: t[3],
2406
+ translateX: t[4],
2407
+ translateY: t[5],
2408
+ originX: t[6],
2409
+ originY: t[7]
2410
+ }), Object.assign(this, e.defaults, t), this;
2411
+ }
2412
+ toArray() {
2413
+ let e = this;
2414
+ return [
2415
+ e.scaleX,
2416
+ e.scaleY,
2417
+ e.shear,
2418
+ e.rotate,
2419
+ e.translateX,
2420
+ e.translateY,
2421
+ e.originX,
2422
+ e.originY
2423
+ ];
2424
+ }
2425
+ };
2426
+ Jn.defaults = {
2427
+ scaleX: 1,
2428
+ scaleY: 1,
2429
+ shear: 0,
2430
+ rotate: 0,
2431
+ translateX: 0,
2432
+ translateY: 0,
2433
+ originX: 0,
2434
+ originY: 0
2435
+ };
2436
+ var Yn = (e, t) => e[0] < t[0] ? -1 : +(e[0] > t[0]), Xn = class {
2437
+ constructor(...e) {
2438
+ this.init(...e);
2439
+ }
2440
+ align(e) {
2441
+ let t = this.values;
2442
+ for (let n = 0, r = t.length; n < r; ++n) {
2443
+ if (t[n + 1] === e[n + 1]) {
2444
+ if (t[n + 1] === A && e[n + 7] !== t[n + 7]) {
2445
+ let t = e[n + 7], r = new A(this.values.splice(n + 3, 5))[t]().toArray();
2446
+ this.values.splice(n + 3, 0, ...r);
2447
+ }
2448
+ n += t[n + 2] + 2;
2449
+ continue;
2450
+ }
2451
+ if (!e[n + 1]) return this;
2452
+ let r = new e[n + 1]().toArray(), i = t[n + 2] + 3;
2453
+ t.splice(n, i, e[n], e[n + 1], e[n + 2], ...r), n += t[n + 2] + 2;
2454
+ }
2455
+ return this;
2456
+ }
2457
+ init(e) {
2458
+ if (this.values = [], Array.isArray(e)) {
2459
+ this.values = e.slice();
2460
+ return;
2461
+ }
2462
+ e ||= {};
2463
+ let t = [];
2464
+ for (let n in e) {
2465
+ let r = Kn(e[n]), i = new r(e[n]).toArray();
2466
+ t.push([
2467
+ n,
2468
+ r,
2469
+ i.length,
2470
+ ...i
2471
+ ]);
2472
+ }
2473
+ return t.sort(Yn), this.values = t.reduce((e, t) => e.concat(t), []), this;
2474
+ }
2475
+ toArray() {
2476
+ return this.values;
2477
+ }
2478
+ valueOf() {
2479
+ let e = {}, t = this.values;
2480
+ for (; t.length;) {
2481
+ let n = t.shift(), r = t.shift(), i = t.shift();
2482
+ e[n] = new r(t.splice(0, i));
2483
+ }
2484
+ return e;
2485
+ }
2486
+ }, Zn = [
2487
+ qn,
2488
+ Jn,
2489
+ Xn
2490
+ ];
2491
+ function Qn(e = []) {
2492
+ Zn.push(...[].concat(e));
2493
+ }
2494
+ function $n() {
2495
+ D(Zn, {
2496
+ to(e) {
2497
+ return new q().type(this.constructor).from(this.toArray()).to(e);
2498
+ },
2499
+ fromArray(e) {
2500
+ return this.init(e), this;
2501
+ },
2502
+ toConsumable() {
2503
+ return this.toArray();
2504
+ },
2505
+ morph(e, t, n, r, i) {
2506
+ return this.fromArray(e.map(function(e, a) {
2507
+ return r.step(e, t[a], n, i[a], i);
2508
+ }));
2509
+ }
2510
+ });
2511
+ }
2512
+ var J = class extends H {
2513
+ constructor(e, t = e) {
2514
+ super(w("path", e), t);
2515
+ }
2516
+ array() {
2517
+ return this._array ||= new K(this.attr("d"));
2518
+ }
2519
+ clear() {
2520
+ return delete this._array, this;
2521
+ }
2522
+ height(e) {
2523
+ return e == null ? this.bbox().height : this.size(this.bbox().width, e);
2524
+ }
2525
+ move(e, t) {
2526
+ return this.attr("d", this.array().move(e, t));
2527
+ }
2528
+ plot(e) {
2529
+ return e == null ? this.array() : this.clear().attr("d", typeof e == "string" ? e : this._array = new K(e));
2530
+ }
2531
+ size(e, t) {
2532
+ let n = b(this, e, t);
2533
+ return this.attr("d", this.array().size(n.width, n.height));
2534
+ }
2535
+ width(e) {
2536
+ return e == null ? this.bbox().width : this.size(e, this.bbox().height);
2537
+ }
2538
+ x(e) {
2539
+ return e == null ? this.bbox().x : this.move(e, this.bbox().y);
2540
+ }
2541
+ y(e) {
2542
+ return e == null ? this.bbox().y : this.move(this.bbox().x, e);
2543
+ }
2544
+ };
2545
+ J.prototype.MorphArray = K, v({ Container: { path: O(function(e) {
2546
+ return this.put(new J()).plot(e || new K());
2547
+ }) } }), E(J, "Path");
2548
+ function er() {
2549
+ return this._array ||= new U(this.attr("points"));
2550
+ }
2551
+ function tr() {
2552
+ return delete this._array, this;
2553
+ }
2554
+ function nr(e, t) {
2555
+ return this.attr("points", this.array().move(e, t));
2556
+ }
2557
+ function rr(e) {
2558
+ return e == null ? this.array() : this.clear().attr("points", typeof e == "string" ? e : this._array = new U(e));
2559
+ }
2560
+ function ir(e, t) {
2561
+ let n = b(this, e, t);
2562
+ return this.attr("points", this.array().size(n.width, n.height));
2563
+ }
2564
+ var ar = {
2565
+ __proto__: null,
2566
+ array: er,
2567
+ clear: tr,
2568
+ move: nr,
2569
+ plot: rr,
2570
+ size: ir
2571
+ }, or = class extends H {
2572
+ constructor(e, t = e) {
2573
+ super(w("polygon", e), t);
2574
+ }
2575
+ };
2576
+ v({ Container: { polygon: O(function(e) {
2577
+ return this.put(new or()).plot(e || new U());
2578
+ }) } }), D(or, Dn), D(or, ar), E(or, "Polygon");
2579
+ var sr = class extends H {
2580
+ constructor(e, t = e) {
2581
+ super(w("polyline", e), t);
2582
+ }
2583
+ };
2584
+ v({ Container: { polyline: O(function(e) {
2585
+ return this.put(new sr()).plot(e || new U());
2586
+ }) } }), D(sr, Dn), D(sr, ar), E(sr, "Polyline");
2587
+ var cr = class extends H {
2588
+ constructor(e, t = e) {
2589
+ super(w("rect", e), t);
2590
+ }
2591
+ };
2592
+ D(cr, {
2593
+ rx: an,
2594
+ ry: on
2595
+ }), v({ Container: { rect: O(function(e, t) {
2596
+ return this.put(new cr()).size(e, t);
2597
+ }) } }), E(cr, "Rect");
2598
+ var lr = class {
2599
+ constructor() {
2600
+ this._first = null, this._last = null;
2601
+ }
2602
+ first() {
2603
+ return this._first && this._first.value;
2604
+ }
2605
+ last() {
2606
+ return this._last && this._last.value;
2607
+ }
2608
+ push(e) {
2609
+ let t = e.next === void 0 ? {
2610
+ value: e,
2611
+ next: null,
2612
+ prev: null
2613
+ } : e;
2614
+ return this._last ? (t.prev = this._last, this._last.next = t, this._last = t) : (this._last = t, this._first = t), t;
2615
+ }
2616
+ remove(e) {
2617
+ e.prev && (e.prev.next = e.next), e.next && (e.next.prev = e.prev), e === this._last && (this._last = e.prev), e === this._first && (this._first = e.next), e.prev = null, e.next = null;
2618
+ }
2619
+ shift() {
2620
+ let e = this._first;
2621
+ return e ? (this._first = e.next, this._first && (this._first.prev = null), this._last = this._first ? this._last : null, e.value) : null;
2622
+ }
2623
+ }, Y = {
2624
+ nextDraw: null,
2625
+ frames: new lr(),
2626
+ timeouts: new lr(),
2627
+ immediates: new lr(),
2628
+ timer: () => x.window.performance || x.window.Date,
2629
+ transforms: [],
2630
+ frame(e) {
2631
+ let t = Y.frames.push({ run: e });
2632
+ return Y.nextDraw === null && (Y.nextDraw = x.window.requestAnimationFrame(Y._draw)), t;
2633
+ },
2634
+ timeout(e, t) {
2635
+ t ||= 0;
2636
+ let n = Y.timer().now() + t, r = Y.timeouts.push({
2637
+ run: e,
2638
+ time: n
2639
+ });
2640
+ return Y.nextDraw === null && (Y.nextDraw = x.window.requestAnimationFrame(Y._draw)), r;
2641
+ },
2642
+ immediate(e) {
2643
+ let t = Y.immediates.push(e);
2644
+ return Y.nextDraw === null && (Y.nextDraw = x.window.requestAnimationFrame(Y._draw)), t;
2645
+ },
2646
+ cancelFrame(e) {
2647
+ e != null && Y.frames.remove(e);
2648
+ },
2649
+ clearTimeout(e) {
2650
+ e != null && Y.timeouts.remove(e);
2651
+ },
2652
+ cancelImmediate(e) {
2653
+ e != null && Y.immediates.remove(e);
2654
+ },
2655
+ _draw(e) {
2656
+ let t = null, n = Y.timeouts.last();
2657
+ for (; (t = Y.timeouts.shift()) && (e >= t.time ? t.run() : Y.timeouts.push(t), t !== n););
2658
+ let r = null, i = Y.frames.last();
2659
+ for (; r !== i && (r = Y.frames.shift());) r.run(e);
2660
+ let a = null;
2661
+ for (; a = Y.immediates.shift();) a();
2662
+ Y.nextDraw = Y.timeouts.first() || Y.frames.first() ? x.window.requestAnimationFrame(Y._draw) : null;
2663
+ }
2664
+ }, ur = function(e) {
2665
+ let t = e.start, n = e.runner.duration();
2666
+ return {
2667
+ start: t,
2668
+ duration: n,
2669
+ end: t + n,
2670
+ runner: e.runner
2671
+ };
2672
+ }, dr = function() {
2673
+ let e = x.window;
2674
+ return (e.performance || e.Date).now();
2675
+ }, fr = class extends Ut {
2676
+ constructor(e = dr) {
2677
+ super(), this._timeSource = e, this._startTime = 0, this._speed = 1, this._persist = 0, this._nextFrame = null, this._paused = !0, this._runners = [], this._runnerIds = [], this._lastRunnerId = -1, this._time = 0, this._lastSourceTime = 0, this._lastStepTime = 0, this._step = this._stepFn.bind(this, !1), this._stepImmediate = this._stepFn.bind(this, !0);
2678
+ }
2679
+ active() {
2680
+ return !!this._nextFrame;
2681
+ }
2682
+ finish() {
2683
+ return this.time(this.getEndTimeOfTimeline() + 1), this.pause();
2684
+ }
2685
+ getEndTime() {
2686
+ let e = this.getLastRunnerInfo(), t = e ? e.runner.duration() : 0;
2687
+ return (e ? e.start : this._time) + t;
2688
+ }
2689
+ getEndTimeOfTimeline() {
2690
+ let e = this._runners.map((e) => e.start + e.runner.duration());
2691
+ return Math.max(0, ...e);
2692
+ }
2693
+ getLastRunnerInfo() {
2694
+ return this.getRunnerInfoById(this._lastRunnerId);
2695
+ }
2696
+ getRunnerInfoById(e) {
2697
+ return this._runners[this._runnerIds.indexOf(e)] || null;
2698
+ }
2699
+ pause() {
2700
+ return this._paused = !0, this._continue();
2701
+ }
2702
+ persist(e) {
2703
+ return e == null ? this._persist : (this._persist = e, this);
2704
+ }
2705
+ play() {
2706
+ return this._paused = !1, this.updateTime()._continue();
2707
+ }
2708
+ reverse(e) {
2709
+ let t = this.speed();
2710
+ if (e == null) return this.speed(-t);
2711
+ let n = Math.abs(t);
2712
+ return this.speed(e ? -n : n);
2713
+ }
2714
+ schedule(e, t, n) {
2715
+ if (e == null) return this._runners.map(ur);
2716
+ let r = 0, i = this.getEndTime();
2717
+ if (t ||= 0, n == null || n === "last" || n === "after") r = i;
2718
+ else if (n === "absolute" || n === "start") r = t, t = 0;
2719
+ else if (n === "now") r = this._time;
2720
+ else if (n === "relative") {
2721
+ let n = this.getRunnerInfoById(e.id);
2722
+ n && (r = n.start + t, t = 0);
2723
+ } else if (n === "with-last") {
2724
+ let e = this.getLastRunnerInfo();
2725
+ r = e ? e.start : this._time;
2726
+ } else throw Error("Invalid value for the \"when\" parameter");
2727
+ e.unschedule(), e.timeline(this);
2728
+ let a = e.persist(), o = {
2729
+ persist: a === null ? this._persist : a,
2730
+ start: r + t,
2731
+ runner: e
2732
+ };
2733
+ return this._lastRunnerId = e.id, this._runners.push(o), this._runners.sort((e, t) => e.start - t.start), this._runnerIds = this._runners.map((e) => e.runner.id), this.updateTime()._continue(), this;
2734
+ }
2735
+ seek(e) {
2736
+ return this.time(this._time + e);
2737
+ }
2738
+ source(e) {
2739
+ return e == null ? this._timeSource : (this._timeSource = e, this);
2740
+ }
2741
+ speed(e) {
2742
+ return e == null ? this._speed : (this._speed = e, this);
2743
+ }
2744
+ stop() {
2745
+ return this.time(0), this.pause();
2746
+ }
2747
+ time(e) {
2748
+ return e == null ? this._time : (this._time = e, this._continue(!0));
2749
+ }
2750
+ unschedule(e) {
2751
+ let t = this._runnerIds.indexOf(e.id);
2752
+ return t < 0 ? this : (this._runners.splice(t, 1), this._runnerIds.splice(t, 1), e.timeline(null), this);
2753
+ }
2754
+ updateTime() {
2755
+ return this.active() || (this._lastSourceTime = this._timeSource()), this;
2756
+ }
2757
+ _continue(e = !1) {
2758
+ return Y.cancelFrame(this._nextFrame), this._nextFrame = null, e ? this._stepImmediate() : (this._paused || (this._nextFrame = Y.frame(this._step)), this);
2759
+ }
2760
+ _stepFn(e = !1) {
2761
+ let t = this._timeSource(), n = t - this._lastSourceTime;
2762
+ e && (n = 0);
2763
+ let r = this._speed * n + (this._time - this._lastStepTime);
2764
+ this._lastSourceTime = t, e || (this._time += r, this._time = this._time < 0 ? 0 : this._time), this._lastStepTime = this._time, this.fire("time", this._time);
2765
+ for (let e = this._runners.length; e--;) {
2766
+ let t = this._runners[e], n = t.runner;
2767
+ this._time - t.start <= 0 && n.reset();
2768
+ }
2769
+ let i = !1;
2770
+ for (let e = 0, t = this._runners.length; e < t; e++) {
2771
+ let n = this._runners[e], a = n.runner, o = r, s = this._time - n.start;
2772
+ if (s <= 0) {
2773
+ i = !0;
2774
+ continue;
2775
+ } else s < o && (o = s);
2776
+ a.active() && (a.step(o).done ? n.persist !== !0 && a.duration() - a.time() + this._time + n.persist < this._time && (a.unschedule(), --e, --t) : i = !0);
2777
+ }
2778
+ return i && !(this._speed < 0 && this._time === 0) || this._runnerIds.length && this._speed < 0 && this._time > 0 ? this._continue() : (this.pause(), this.fire("finished")), this;
2779
+ }
2780
+ };
2781
+ v({ Element: { timeline: function(e) {
2782
+ return e == null ? (this._timeline = this._timeline || new fr(), this._timeline) : (this._timeline = e, this);
2783
+ } } });
2784
+ var X = class e extends Ut {
2785
+ constructor(t) {
2786
+ super(), this.id = e.id++, t ??= Gt.duration, t = typeof t == "function" ? new Nn(t) : t, this._element = null, this._timeline = null, this.done = !1, this._queue = [], this._duration = typeof t == "number" && t, this._isDeclarative = t instanceof Nn, this._stepper = this._isDeclarative ? t : new Mn(), this._history = {}, this.enabled = !0, this._time = 0, this._lastTime = 0, this._reseted = !0, this.transforms = new M(), this.transformId = 1, this._haveReversed = !1, this._reverse = !1, this._loopsDone = 0, this._swing = !1, this._wait = 0, this._times = 1, this._frameId = null, this._persist = this._isDeclarative ? !0 : null;
2787
+ }
2788
+ static sanitise(e, t, n) {
2789
+ let r = 1, i = !1, a = 0;
2790
+ return e ||= Gt.duration, t ||= Gt.delay, n ||= "last", typeof e == "object" && !(e instanceof jn) && (t = e.delay || t, n = e.when || n, i = e.swing || i, r = e.times || r, a = e.wait || a, e = e.duration || Gt.duration), {
2791
+ duration: e,
2792
+ delay: t,
2793
+ swing: i,
2794
+ times: r,
2795
+ wait: a,
2796
+ when: n
2797
+ };
2798
+ }
2799
+ active(e) {
2800
+ return e == null ? this.enabled : (this.enabled = e, this);
2801
+ }
2802
+ addTransform(e, t) {
2803
+ return this.transforms.lmultiplyO(e), this;
2804
+ }
2805
+ after(e) {
2806
+ return this.on("finished", e);
2807
+ }
2808
+ animate(t, n, r) {
2809
+ let i = e.sanitise(t, n, r), a = new e(i.duration);
2810
+ return this._timeline && a.timeline(this._timeline), this._element && a.element(this._element), a.loop(i).schedule(i.delay, i.when);
2811
+ }
2812
+ clearTransform() {
2813
+ return this.transforms = new M(), this;
2814
+ }
2815
+ clearTransformsFromQueue() {
2816
+ (!this.done || !this._timeline || !this._timeline._runnerIds.includes(this.id)) && (this._queue = this._queue.filter((e) => !e.isTransform));
2817
+ }
2818
+ delay(e) {
2819
+ return this.animate(0, e);
2820
+ }
2821
+ duration() {
2822
+ return this._times * (this._wait + this._duration) - this._wait;
2823
+ }
2824
+ during(e) {
2825
+ return this.queue(null, e);
2826
+ }
2827
+ ease(e) {
2828
+ return this._stepper = new Mn(e), this;
2829
+ }
2830
+ element(e) {
2831
+ return e == null ? this._element : (this._element = e, e._prepareRunner(), this);
2832
+ }
2833
+ finish() {
2834
+ return this.step(Infinity);
2835
+ }
2836
+ loop(e, t, n) {
2837
+ return typeof e == "object" && (t = e.swing, n = e.wait, e = e.times), this._times = e || Infinity, this._swing = t || !1, this._wait = n || 0, this._times === !0 && (this._times = Infinity), this;
2838
+ }
2839
+ loops(e) {
2840
+ let t = this._duration + this._wait;
2841
+ if (e == null) {
2842
+ let e = Math.floor(this._time / t), n = (this._time - e * t) / this._duration;
2843
+ return Math.min(e + n, this._times);
2844
+ }
2845
+ let n = Math.floor(e), r = e % 1, i = t * n + this._duration * r;
2846
+ return this.time(i);
2847
+ }
2848
+ persist(e) {
2849
+ return e == null ? this._persist : (this._persist = e, this);
2850
+ }
2851
+ position(e) {
2852
+ let t = this._time, n = this._duration, r = this._wait, i = this._times, a = this._swing, o = this._reverse, s;
2853
+ if (e == null) {
2854
+ let e = function(e) {
2855
+ let t = a * Math.floor(e % (2 * (r + n)) / (r + n)), i = t && !o || !t && o, s = (-1) ** i * (e % (r + n)) / n + i;
2856
+ return Math.max(Math.min(s, 1), 0);
2857
+ }, c = i * (r + n) - r;
2858
+ return s = t <= 0 ? Math.round(e(1e-5)) : t < c ? e(t) : Math.round(e(c - 1e-5)), s;
2859
+ }
2860
+ let c = Math.floor(this.loops()), l = a && c % 2 == 0;
2861
+ return s = c + (l && !o || o && l ? e : 1 - e), this.loops(s);
2862
+ }
2863
+ progress(e) {
2864
+ return e == null ? Math.min(1, this._time / this.duration()) : this.time(e * this.duration());
2865
+ }
2866
+ queue(e, t, n, r) {
2867
+ return this._queue.push({
2868
+ initialiser: e || Wt,
2869
+ runner: t || Wt,
2870
+ retarget: n,
2871
+ isTransform: r,
2872
+ initialised: !1,
2873
+ finished: !1
2874
+ }), this.timeline() && this.timeline()._continue(), this;
2875
+ }
2876
+ reset() {
2877
+ return this._reseted ? this : (this.time(0), this._reseted = !0, this);
2878
+ }
2879
+ reverse(e) {
2880
+ return this._reverse = e ?? !this._reverse, this;
2881
+ }
2882
+ schedule(e, t, n) {
2883
+ if (e instanceof fr || (n = t, t = e, e = this.timeline()), !e) throw Error("Runner cannot be scheduled without timeline");
2884
+ return e.schedule(this, t, n), this;
2885
+ }
2886
+ step(e) {
2887
+ if (!this.enabled) return this;
2888
+ e ??= 16, this._time += e;
2889
+ let t = this.position(), n = this._lastPosition !== t && this._time >= 0;
2890
+ this._lastPosition = t;
2891
+ let r = this.duration(), i = this._lastTime <= 0 && this._time > 0, a = this._lastTime < r && this._time >= r;
2892
+ this._lastTime = this._time, i && this.fire("start", this);
2893
+ let o = this._isDeclarative;
2894
+ this.done = !o && !a && this._time >= r, this._reseted = !1;
2895
+ let s = !1;
2896
+ return (n || o) && (this._initialise(n), this.transforms = new M(), s = this._run(o ? e : t), this.fire("step", this)), this.done = this.done || s && o, a && this.fire("finished", this), this;
2897
+ }
2898
+ time(e) {
2899
+ if (e == null) return this._time;
2900
+ let t = e - this._time;
2901
+ return this.step(t), this;
2902
+ }
2903
+ timeline(e) {
2904
+ return e === void 0 ? this._timeline : (this._timeline = e, this);
2905
+ }
2906
+ unschedule() {
2907
+ let e = this.timeline();
2908
+ return e && e.unschedule(this), this;
2909
+ }
2910
+ _initialise(e) {
2911
+ if (!(!e && !this._isDeclarative)) for (let t = 0, n = this._queue.length; t < n; ++t) {
2912
+ let n = this._queue[t], r = this._isDeclarative || !n.initialised && e;
2913
+ e = !n.finished, r && e && (n.initialiser.call(this), n.initialised = !0);
2914
+ }
2915
+ }
2916
+ _rememberMorpher(e, t) {
2917
+ if (this._history[e] = {
2918
+ morpher: t,
2919
+ caller: this._queue[this._queue.length - 1]
2920
+ }, this._isDeclarative) {
2921
+ let e = this.timeline();
2922
+ e && e.play();
2923
+ }
2924
+ }
2925
+ _run(e) {
2926
+ let t = !0;
2927
+ for (let n = 0, r = this._queue.length; n < r; ++n) {
2928
+ let r = this._queue[n], i = r.runner.call(this, e);
2929
+ r.finished = r.finished || i === !0, t &&= r.finished;
2930
+ }
2931
+ return t;
2932
+ }
2933
+ _tryRetarget(e, t, n) {
2934
+ if (this._history[e]) {
2935
+ if (!this._history[e].caller.initialised) {
2936
+ let t = this._queue.indexOf(this._history[e].caller);
2937
+ return this._queue.splice(t, 1), !1;
2938
+ }
2939
+ this._history[e].caller.retarget ? this._history[e].caller.retarget.call(this, t, n) : this._history[e].morpher.to(t), this._history[e].caller.finished = !1;
2940
+ let r = this.timeline();
2941
+ return r && r.play(), !0;
2942
+ }
2943
+ return !1;
2944
+ }
2945
+ };
2946
+ X.id = 0;
2947
+ var pr = class {
2948
+ constructor(e = new M(), t = -1, n = !0) {
2949
+ this.transforms = e, this.id = t, this.done = n;
2950
+ }
2951
+ clearTransformsFromQueue() {}
2952
+ };
2953
+ D([X, pr], { mergeWith(e) {
2954
+ return new pr(e.transforms.lmultiply(this.transforms), e.id);
2955
+ } });
2956
+ var mr = (e, t) => e.lmultiplyO(t), hr = (e) => e.transforms;
2957
+ function gr() {
2958
+ let e = this._transformationRunners.runners.map(hr).reduce(mr, new M());
2959
+ this.transform(e), this._transformationRunners.merge(), this._transformationRunners.length() === 1 && (this._frameId = null);
2960
+ }
2961
+ var _r = class {
2962
+ constructor() {
2963
+ this.runners = [], this.ids = [];
2964
+ }
2965
+ add(e) {
2966
+ if (this.runners.includes(e)) return;
2967
+ let t = e.id + 1;
2968
+ return this.runners.push(e), this.ids.push(t), this;
2969
+ }
2970
+ clearBefore(e) {
2971
+ let t = this.ids.indexOf(e + 1) || 1;
2972
+ return this.ids.splice(0, t, 0), this.runners.splice(0, t, new pr()).forEach((e) => e.clearTransformsFromQueue()), this;
2973
+ }
2974
+ edit(e, t) {
2975
+ let n = this.ids.indexOf(e + 1);
2976
+ return this.ids.splice(n, 1, e + 1), this.runners.splice(n, 1, t), this;
2977
+ }
2978
+ getByID(e) {
2979
+ return this.runners[this.ids.indexOf(e + 1)];
2980
+ }
2981
+ length() {
2982
+ return this.ids.length;
2983
+ }
2984
+ merge() {
2985
+ let e = null;
2986
+ for (let t = 0; t < this.runners.length; ++t) {
2987
+ let n = this.runners[t];
2988
+ if (e && n.done && e.done && (!n._timeline || !n._timeline._runnerIds.includes(n.id)) && (!e._timeline || !e._timeline._runnerIds.includes(e.id))) {
2989
+ this.remove(n.id);
2990
+ let r = n.mergeWith(e);
2991
+ this.edit(e.id, r), e = r, --t;
2992
+ } else e = n;
2993
+ }
2994
+ return this;
2995
+ }
2996
+ remove(e) {
2997
+ let t = this.ids.indexOf(e + 1);
2998
+ return this.ids.splice(t, 1), this.runners.splice(t, 1), this;
2999
+ }
3000
+ };
3001
+ v({ Element: {
3002
+ animate(e, t, n) {
3003
+ let r = X.sanitise(e, t, n), i = this.timeline();
3004
+ return new X(r.duration).loop(r).element(this).timeline(i.play()).schedule(r.delay, r.when);
3005
+ },
3006
+ delay(e, t) {
3007
+ return this.animate(0, e, t);
3008
+ },
3009
+ _clearTransformRunnersBefore(e) {
3010
+ this._transformationRunners.clearBefore(e.id);
3011
+ },
3012
+ _currentTransform(e) {
3013
+ return this._transformationRunners.runners.filter((t) => t.id <= e.id).map(hr).reduce(mr, new M());
3014
+ },
3015
+ _addRunner(e) {
3016
+ this._transformationRunners.add(e), Y.cancelImmediate(this._frameId), this._frameId = Y.immediate(gr.bind(this));
3017
+ },
3018
+ _prepareRunner() {
3019
+ this._frameId ?? (this._transformationRunners = new _r().add(new pr(new M(this))));
3020
+ }
3021
+ } });
3022
+ var vr = (e, t) => e.filter((e) => !t.includes(e));
3023
+ D(X, {
3024
+ attr(e, t) {
3025
+ return this.styleAttr("attr", e, t);
3026
+ },
3027
+ css(e, t) {
3028
+ return this.styleAttr("css", e, t);
3029
+ },
3030
+ styleAttr(e, t, n) {
3031
+ if (typeof t == "string") return this.styleAttr(e, { [t]: n });
3032
+ let r = t;
3033
+ if (this._tryRetarget(e, r)) return this;
3034
+ let i = new q(this._stepper).to(r), a = Object.keys(r);
3035
+ return this.queue(function() {
3036
+ i = i.from(this.element()[e](a));
3037
+ }, function(t) {
3038
+ return this.element()[e](i.at(t).valueOf()), i.done();
3039
+ }, function(t) {
3040
+ let n = Object.keys(t), o = vr(n, a);
3041
+ if (o.length) {
3042
+ let t = this.element()[e](o), n = new Xn(i.from()).valueOf();
3043
+ Object.assign(n, t), i.from(n);
3044
+ }
3045
+ let s = new Xn(i.to()).valueOf();
3046
+ Object.assign(s, t), i.to(s), a = n, r = t;
3047
+ }), this._rememberMorpher(e, i), this;
3048
+ },
3049
+ zoom(e, t) {
3050
+ if (this._tryRetarget("zoom", e, t)) return this;
3051
+ let n = new q(this._stepper).to(new z(e));
3052
+ return this.queue(function() {
3053
+ n = n.from(this.element().zoom());
3054
+ }, function(e) {
3055
+ return this.element().zoom(n.at(e), t), n.done();
3056
+ }, function(e, r) {
3057
+ t = r, n.to(e);
3058
+ }), this._rememberMorpher("zoom", n), this;
3059
+ },
3060
+ transform(e, t, n) {
3061
+ if (t = e.relative || t, this._isDeclarative && !t && this._tryRetarget("transform", e)) return this;
3062
+ let r = M.isMatrixLike(e);
3063
+ n = e.affine == null ? n ?? !r : e.affine;
3064
+ let i = new q(this._stepper).type(n ? Jn : M), a, o, s, c, l;
3065
+ function u() {
3066
+ o ||= this.element(), a ||= be(e, o), l = new M(t ? void 0 : o), o._addRunner(this), t || o._clearTransformRunnersBefore(this);
3067
+ }
3068
+ function d(u) {
3069
+ t || this.clearTransform();
3070
+ let { x: d, y: f } = new j(a).transform(o._currentTransform(this)), p = new M({
3071
+ ...e,
3072
+ origin: [d, f]
3073
+ }), m = this._isDeclarative && s ? s : l;
3074
+ if (n) {
3075
+ p = p.decompose(d, f), m = m.decompose(d, f);
3076
+ let e = p.rotate, t = m.rotate, n = [
3077
+ e - 360,
3078
+ e,
3079
+ e + 360
3080
+ ], r = n.map((e) => Math.abs(e - t)), i = Math.min(...r), a = r.indexOf(i);
3081
+ p.rotate = n[a];
3082
+ }
3083
+ t && (r || (p.rotate = e.rotate || 0), this._isDeclarative && c && (m.rotate = c)), i.from(m), i.to(p);
3084
+ let h = i.at(u);
3085
+ return c = h.rotate, s = new M(h), this.addTransform(s), o._addRunner(this), i.done();
3086
+ }
3087
+ function f(t) {
3088
+ (t.origin || "center").toString() !== (e.origin || "center").toString() && (a = be(t, o)), e = {
3089
+ ...t,
3090
+ origin: a
3091
+ };
3092
+ }
3093
+ return this.queue(u, d, f, !0), this._isDeclarative && this._rememberMorpher("transform", i), this;
3094
+ },
3095
+ x(e, t) {
3096
+ return this._queueNumber("x", e);
3097
+ },
3098
+ y(e) {
3099
+ return this._queueNumber("y", e);
3100
+ },
3101
+ dx(e = 0) {
3102
+ return this._queueNumberDelta("x", e);
3103
+ },
3104
+ dy(e = 0) {
3105
+ return this._queueNumberDelta("y", e);
3106
+ },
3107
+ dmove(e, t) {
3108
+ return this.dx(e).dy(t);
3109
+ },
3110
+ _queueNumberDelta(e, t) {
3111
+ if (t = new z(t), this._tryRetarget(e, t)) return this;
3112
+ let n = new q(this._stepper).to(t), r = null;
3113
+ return this.queue(function() {
3114
+ r = this.element()[e](), n.from(r), n.to(r + t);
3115
+ }, function(t) {
3116
+ return this.element()[e](n.at(t)), n.done();
3117
+ }, function(e) {
3118
+ n.to(r + new z(e));
3119
+ }), this._rememberMorpher(e, n), this;
3120
+ },
3121
+ _queueObject(e, t) {
3122
+ if (this._tryRetarget(e, t)) return this;
3123
+ let n = new q(this._stepper).to(t);
3124
+ return this.queue(function() {
3125
+ n.from(this.element()[e]());
3126
+ }, function(t) {
3127
+ return this.element()[e](n.at(t)), n.done();
3128
+ }), this._rememberMorpher(e, n), this;
3129
+ },
3130
+ _queueNumber(e, t) {
3131
+ return this._queueObject(e, new z(t));
3132
+ },
3133
+ cx(e) {
3134
+ return this._queueNumber("cx", e);
3135
+ },
3136
+ cy(e) {
3137
+ return this._queueNumber("cy", e);
3138
+ },
3139
+ move(e, t) {
3140
+ return this.x(e).y(t);
3141
+ },
3142
+ center(e, t) {
3143
+ return this.cx(e).cy(t);
3144
+ },
3145
+ size(e, t) {
3146
+ let n;
3147
+ return (!e || !t) && (n = this._element.bbox()), e ||= n.width / n.height * t, t ||= n.height / n.width * e, this.width(e).height(t);
3148
+ },
3149
+ width(e) {
3150
+ return this._queueNumber("width", e);
3151
+ },
3152
+ height(e) {
3153
+ return this._queueNumber("height", e);
3154
+ },
3155
+ plot(e, t, n, r) {
3156
+ if (arguments.length === 4) return this.plot([
3157
+ e,
3158
+ t,
3159
+ n,
3160
+ r
3161
+ ]);
3162
+ if (this._tryRetarget("plot", e)) return this;
3163
+ let i = new q(this._stepper).type(this._element.MorphArray).to(e);
3164
+ return this.queue(function() {
3165
+ i.from(this._element.array());
3166
+ }, function(e) {
3167
+ return this._element.plot(i.at(e)), i.done();
3168
+ }), this._rememberMorpher("plot", i), this;
3169
+ },
3170
+ leading(e) {
3171
+ return this._queueNumber("leading", e);
3172
+ },
3173
+ viewbox(e, t, n, r) {
3174
+ return this._queueObject("viewbox", new P(e, t, n, r));
3175
+ },
3176
+ update(e) {
3177
+ return typeof e == "object" ? (e.opacity != null && this.attr("stop-opacity", e.opacity), e.color != null && this.attr("stop-color", e.color), e.offset != null && this.attr("offset", e.offset), this) : this.update({
3178
+ offset: arguments[0],
3179
+ color: arguments[1],
3180
+ opacity: arguments[2]
3181
+ });
3182
+ }
3183
+ }), D(X, {
3184
+ rx: an,
3185
+ ry: on,
3186
+ from: gn,
3187
+ to: _n
3188
+ }), E(X, "Runner");
3189
+ var yr = class extends V {
3190
+ constructor(e, t = e) {
3191
+ super(w("svg", e), t), this.namespace();
3192
+ }
3193
+ defs() {
3194
+ return this.isRoot() ? T(this.node.querySelector("defs")) || this.put(new rn()) : this.root().defs();
3195
+ }
3196
+ isRoot() {
3197
+ return !this.node.parentNode || !(this.node.parentNode instanceof x.window.SVGElement) && this.node.parentNode.nodeName !== "#document-fragment";
3198
+ }
3199
+ namespace() {
3200
+ return this.isRoot() ? this.attr({
3201
+ xmlns: xe,
3202
+ version: "1.1"
3203
+ }).attr("xmlns:xlink", we, Ce).attr("xmlns:svgjs", Te, Ce) : this.root().namespace();
3204
+ }
3205
+ removeNamespace() {
3206
+ return this.attr({
3207
+ xmlns: null,
3208
+ version: null
3209
+ }).attr("xmlns:xlink", null, Ce).attr("xmlns:svgjs", null, Ce);
3210
+ }
3211
+ root() {
3212
+ return this.isRoot() ? this : super.root();
3213
+ }
3214
+ };
3215
+ v({ Container: { nested: O(function() {
3216
+ return this.put(new yr());
3217
+ }) } }), E(yr, "Svg", !0);
3218
+ var br = class extends V {
3219
+ constructor(e, t = e) {
3220
+ super(w("symbol", e), t);
3221
+ }
3222
+ };
3223
+ v({ Container: { symbol: O(function() {
3224
+ return this.put(new br());
3225
+ }) } }), E(br, "Symbol");
3226
+ function xr(e) {
3227
+ return this._build === !1 && this.clear(), this.node.appendChild(x.document.createTextNode(e)), this;
3228
+ }
3229
+ function Sr() {
3230
+ return this.node.getComputedTextLength();
3231
+ }
3232
+ function Cr(e, t = this.bbox()) {
3233
+ return e == null ? t.x : this.attr("x", this.attr("x") + e - t.x);
3234
+ }
3235
+ function wr(e, t = this.bbox()) {
3236
+ return e == null ? t.y : this.attr("y", this.attr("y") + e - t.y);
3237
+ }
3238
+ function Tr(e, t, n = this.bbox()) {
3239
+ return this.x(e, n).y(t, n);
3240
+ }
3241
+ function Er(e, t = this.bbox()) {
3242
+ return e == null ? t.cx : this.attr("x", this.attr("x") + e - t.cx);
3243
+ }
3244
+ function Dr(e, t = this.bbox()) {
3245
+ return e == null ? t.cy : this.attr("y", this.attr("y") + e - t.cy);
3246
+ }
3247
+ function Or(e, t, n = this.bbox()) {
3248
+ return this.cx(e, n).cy(t, n);
3249
+ }
3250
+ function kr(e) {
3251
+ return this.attr("x", e);
3252
+ }
3253
+ function Ar(e) {
3254
+ return this.attr("y", e);
3255
+ }
3256
+ function jr(e, t) {
3257
+ return this.ax(e).ay(t);
3258
+ }
3259
+ function Mr(e) {
3260
+ return this._build = !!e, this;
3261
+ }
3262
+ var Nr = {
3263
+ __proto__: null,
3264
+ plain: xr,
3265
+ length: Sr,
3266
+ x: Cr,
3267
+ y: wr,
3268
+ move: Tr,
3269
+ cx: Er,
3270
+ cy: Dr,
3271
+ center: Or,
3272
+ ax: kr,
3273
+ ay: Ar,
3274
+ amove: jr,
3275
+ build: Mr
3276
+ }, Z = class extends H {
3277
+ constructor(e, t = e) {
3278
+ super(w("text", e), t), this.dom.leading = new z(1.3), this._rebuild = !0, this._build = !1;
3279
+ }
3280
+ leading(e) {
3281
+ return e == null ? this.dom.leading : (this.dom.leading = new z(e), this.rebuild());
3282
+ }
3283
+ rebuild(e) {
3284
+ if (typeof e == "boolean" && (this._rebuild = e), this._rebuild) {
3285
+ let e = this, t = 0, n = this.dom.leading;
3286
+ this.each(function(r) {
3287
+ let i = n * new z(x.window.getComputedStyle(this.node).getPropertyValue("font-size"));
3288
+ this.dom.newLined && (this.attr("x", e.attr("x")), this.text() === "\n" ? t += i : (this.attr("dy", r ? i + t : 0), t = 0));
3289
+ }), this.fire("rebuild");
3290
+ }
3291
+ return this;
3292
+ }
3293
+ setData(e) {
3294
+ return this.dom = e, this.dom.leading = new z(e.leading || 1.3), this;
3295
+ }
3296
+ text(e) {
3297
+ if (e === void 0) {
3298
+ let t = this.node.childNodes, n = 0;
3299
+ e = "";
3300
+ for (let r = 0, i = t.length; r < i; ++r) {
3301
+ if (t[r].nodeName === "textPath") {
3302
+ r === 0 && (n = 1);
3303
+ continue;
3304
+ }
3305
+ r !== n && t[r].nodeType !== 3 && T(t[r]).dom.newLined === !0 && (e += "\n"), e += t[r].textContent;
3306
+ }
3307
+ return e;
3308
+ }
3309
+ if (this.clear().build(!0), typeof e == "function") e.call(this, this);
3310
+ else {
3311
+ e = (e + "").split("\n");
3312
+ for (let t = 0, n = e.length; t < n; t++) this.newLine(e[t]);
3313
+ }
3314
+ return this.build(!1).rebuild();
3315
+ }
3316
+ };
3317
+ D(Z, Nr), v({ Container: {
3318
+ text: O(function(e = "") {
3319
+ return this.put(new Z()).text(e);
3320
+ }),
3321
+ plain: O(function(e = "") {
3322
+ return this.put(new Z()).plain(e);
3323
+ })
3324
+ } }), E(Z, "Text");
3325
+ var Pr = class extends H {
3326
+ constructor(e, t = e) {
3327
+ super(w("tspan", e), t), this._build = !1;
3328
+ }
3329
+ dx(e) {
3330
+ return this.attr("dx", e);
3331
+ }
3332
+ dy(e) {
3333
+ return this.attr("dy", e);
3334
+ }
3335
+ newLine() {
3336
+ this.dom.newLined = !0;
3337
+ let e = this.parent();
3338
+ if (!(e instanceof Z)) return this;
3339
+ let t = e.index(this), n = x.window.getComputedStyle(this.node).getPropertyValue("font-size"), r = e.dom.leading * new z(n);
3340
+ return this.dy(t ? r : 0).attr("x", e.x());
3341
+ }
3342
+ text(e) {
3343
+ return e == null ? this.node.textContent + (this.dom.newLined ? "\n" : "") : (typeof e == "function" ? (this.clear().build(!0), e.call(this, this), this.build(!1)) : this.plain(e), this);
3344
+ }
3345
+ };
3346
+ D(Pr, Nr), v({
3347
+ Tspan: { tspan: O(function(e = "") {
3348
+ let t = new Pr();
3349
+ return this._build || this.clear(), this.put(t).text(e);
3350
+ }) },
3351
+ Text: { newLine: function(e = "") {
3352
+ return this.tspan(e).newLine();
3353
+ } }
3354
+ }), E(Pr, "Tspan");
3355
+ var Fr = class extends H {
3356
+ constructor(e, t = e) {
3357
+ super(w("circle", e), t);
3358
+ }
3359
+ radius(e) {
3360
+ return this.attr("r", e);
3361
+ }
3362
+ rx(e) {
3363
+ return this.attr("r", e);
3364
+ }
3365
+ ry(e) {
3366
+ return this.rx(e);
3367
+ }
3368
+ size(e) {
3369
+ return this.radius(new z(e).divide(2));
3370
+ }
3371
+ };
3372
+ D(Fr, {
3373
+ x: sn,
3374
+ y: cn,
3375
+ cx: ln,
3376
+ cy: un,
3377
+ width: dn,
3378
+ height: fn
3379
+ }), v({ Container: { circle: O(function(e = 0) {
3380
+ return this.put(new Fr()).size(e).move(0, 0);
3381
+ }) } }), E(Fr, "Circle");
3382
+ var Ir = class extends V {
3383
+ constructor(e, t = e) {
3384
+ super(w("clipPath", e), t);
3385
+ }
3386
+ remove() {
3387
+ return this.targets().forEach(function(e) {
3388
+ e.unclip();
3389
+ }), super.remove();
3390
+ }
3391
+ targets() {
3392
+ return I("svg [clip-path*=" + this.id() + "]");
3393
+ }
3394
+ };
3395
+ v({
3396
+ Container: { clip: O(function() {
3397
+ return this.defs().put(new Ir());
3398
+ }) },
3399
+ Element: {
3400
+ clipper() {
3401
+ return this.reference("clip-path");
3402
+ },
3403
+ clipWith(e) {
3404
+ let t = e instanceof Ir ? e : this.parent().clip().add(e);
3405
+ return this.attr("clip-path", "url(#" + t.id() + ")");
3406
+ },
3407
+ unclip() {
3408
+ return this.attr("clip-path", null);
3409
+ }
3410
+ }
3411
+ }), E(Ir, "ClipPath");
3412
+ var Lr = class extends B {
3413
+ constructor(e, t = e) {
3414
+ super(w("foreignObject", e), t);
3415
+ }
3416
+ };
3417
+ v({ Container: { foreignObject: O(function(e, t) {
3418
+ return this.put(new Lr()).size(e, t);
3419
+ }) } }), E(Lr, "ForeignObject");
3420
+ function Rr(e, t) {
3421
+ return this.children().forEach((n, r) => {
3422
+ let i;
3423
+ try {
3424
+ i = n.bbox();
3425
+ } catch {
3426
+ return;
3427
+ }
3428
+ let a = new M(n), o = a.translate(e, t).transform(a.inverse()), s = new j(i.x, i.y).transform(o);
3429
+ n.move(s.x, s.y);
3430
+ }), this;
3431
+ }
3432
+ function zr(e) {
3433
+ return this.dmove(e, 0);
3434
+ }
3435
+ function Br(e) {
3436
+ return this.dmove(0, e);
3437
+ }
3438
+ function Vr(e, t = this.bbox()) {
3439
+ return e == null ? t.height : this.size(t.width, e, t);
3440
+ }
3441
+ function Hr(e = 0, t = 0, n = this.bbox()) {
3442
+ let r = e - n.x, i = t - n.y;
3443
+ return this.dmove(r, i);
3444
+ }
3445
+ function Ur(e, t, n = this.bbox()) {
3446
+ let r = b(this, e, t, n), i = r.width / n.width, a = r.height / n.height;
3447
+ return this.children().forEach((e, t) => {
3448
+ let r = new j(n).transform(new M(e).inverse());
3449
+ e.scale(i, a, r.x, r.y);
3450
+ }), this;
3451
+ }
3452
+ function Wr(e, t = this.bbox()) {
3453
+ return e == null ? t.width : this.size(e, t.height, t);
3454
+ }
3455
+ function Gr(e, t = this.bbox()) {
3456
+ return e == null ? t.x : this.move(e, t.y, t);
3457
+ }
3458
+ function Kr(e, t = this.bbox()) {
3459
+ return e == null ? t.y : this.move(t.x, e, t);
3460
+ }
3461
+ var qr = {
3462
+ __proto__: null,
3463
+ dmove: Rr,
3464
+ dx: zr,
3465
+ dy: Br,
3466
+ height: Vr,
3467
+ move: Hr,
3468
+ size: Ur,
3469
+ width: Wr,
3470
+ x: Gr,
3471
+ y: Kr
3472
+ }, Jr = class extends V {
3473
+ constructor(e, t = e) {
3474
+ super(w("g", e), t);
3475
+ }
3476
+ };
3477
+ D(Jr, qr), v({ Container: { group: O(function() {
3478
+ return this.put(new Jr());
3479
+ }) } }), E(Jr, "G");
3480
+ var Yr = class extends V {
3481
+ constructor(e, t = e) {
3482
+ super(w("a", e), t);
3483
+ }
3484
+ target(e) {
3485
+ return this.attr("target", e);
3486
+ }
3487
+ to(e) {
3488
+ return this.attr("href", e, we);
3489
+ }
3490
+ };
3491
+ D(Yr, qr), v({
3492
+ Container: { link: O(function(e) {
3493
+ return this.put(new Yr()).to(e);
3494
+ }) },
3495
+ Element: {
3496
+ unlink() {
3497
+ let e = this.linker();
3498
+ if (!e) return this;
3499
+ let t = e.parent();
3500
+ if (!t) return this.remove();
3501
+ let n = t.index(e);
3502
+ return t.add(this, n), e.remove(), this;
3503
+ },
3504
+ linkTo(e) {
3505
+ let t = this.linker();
3506
+ return t || (t = new Yr(), this.wrap(t)), typeof e == "function" ? e.call(t, t) : t.to(e), this;
3507
+ },
3508
+ linker() {
3509
+ let e = this.parent();
3510
+ return e && e.node.nodeName.toLowerCase() === "a" ? e : null;
3511
+ }
3512
+ }
3513
+ }), E(Yr, "A");
3514
+ var Xr = class extends V {
3515
+ constructor(e, t = e) {
3516
+ super(w("mask", e), t);
3517
+ }
3518
+ remove() {
3519
+ return this.targets().forEach(function(e) {
3520
+ e.unmask();
3521
+ }), super.remove();
3522
+ }
3523
+ targets() {
3524
+ return I("svg [mask*=" + this.id() + "]");
3525
+ }
3526
+ };
3527
+ v({
3528
+ Container: { mask: O(function() {
3529
+ return this.defs().put(new Xr());
3530
+ }) },
3531
+ Element: {
3532
+ masker() {
3533
+ return this.reference("mask");
3534
+ },
3535
+ maskWith(e) {
3536
+ let t = e instanceof Xr ? e : this.parent().mask().add(e);
3537
+ return this.attr("mask", "url(#" + t.id() + ")");
3538
+ },
3539
+ unmask() {
3540
+ return this.attr("mask", null);
3541
+ }
3542
+ }
3543
+ }), E(Xr, "Mask");
3544
+ var Zr = class extends B {
3545
+ constructor(e, t = e) {
3546
+ super(w("stop", e), t);
3547
+ }
3548
+ update(e) {
3549
+ return (typeof e == "number" || e instanceof z) && (e = {
3550
+ offset: arguments[0],
3551
+ color: arguments[1],
3552
+ opacity: arguments[2]
3553
+ }), e.opacity != null && this.attr("stop-opacity", e.opacity), e.color != null && this.attr("stop-color", e.color), e.offset != null && this.attr("offset", new z(e.offset)), this;
3554
+ }
3555
+ };
3556
+ v({ Gradient: { stop: function(e, t, n) {
3557
+ return this.put(new Zr()).update(e, t, n);
3558
+ } } }), E(Zr, "Stop");
3559
+ function Qr(e, t) {
3560
+ if (!e) return "";
3561
+ if (!t) return e;
3562
+ let n = e + "{";
3563
+ for (let e in t) n += ve(e) + ":" + t[e] + ";";
3564
+ return n += "}", n;
3565
+ }
3566
+ var $r = class extends B {
3567
+ constructor(e, t = e) {
3568
+ super(w("style", e), t);
3569
+ }
3570
+ addText(e = "") {
3571
+ return this.node.textContent += e, this;
3572
+ }
3573
+ font(e, t, n = {}) {
3574
+ return this.rule("@font-face", {
3575
+ fontFamily: e,
3576
+ src: t,
3577
+ ...n
3578
+ });
3579
+ }
3580
+ rule(e, t) {
3581
+ return this.addText(Qr(e, t));
3582
+ }
3583
+ };
3584
+ v("Dom", {
3585
+ style(e, t) {
3586
+ return this.put(new $r()).rule(e, t);
3587
+ },
3588
+ fontface(e, t, n) {
3589
+ return this.put(new $r()).font(e, t, n);
3590
+ }
3591
+ }), E($r, "Style");
3592
+ var ei = class extends Z {
3593
+ constructor(e, t = e) {
3594
+ super(w("textPath", e), t);
3595
+ }
3596
+ array() {
3597
+ let e = this.track();
3598
+ return e ? e.array() : null;
3599
+ }
3600
+ plot(e) {
3601
+ let t = this.track(), n = null;
3602
+ return t && (n = t.plot(e)), e == null ? n : this;
3603
+ }
3604
+ track() {
3605
+ return this.reference("href");
3606
+ }
3607
+ };
3608
+ v({
3609
+ Container: { textPath: O(function(e, t) {
3610
+ return e instanceof Z || (e = this.text(e)), e.path(t);
3611
+ }) },
3612
+ Text: {
3613
+ path: O(function(e, t = !0) {
3614
+ let n = new ei();
3615
+ e instanceof J || (e = this.defs().path(e)), n.attr("href", "#" + e, we);
3616
+ let r;
3617
+ if (t) for (; r = this.node.firstChild;) n.node.appendChild(r);
3618
+ return this.put(n);
3619
+ }),
3620
+ textPath() {
3621
+ return this.findOne("textPath");
3622
+ }
3623
+ },
3624
+ Path: {
3625
+ text: O(function(e) {
3626
+ return e instanceof Z || (e = new Z().addTo(this.parent()).text(e)), e.path(this);
3627
+ }),
3628
+ targets() {
3629
+ return I("svg textPath").filter((e) => (e.attr("href") || "").includes(this.id()));
3630
+ }
3631
+ }
3632
+ }), ei.prototype.MorphArray = K, E(ei, "TextPath");
3633
+ var ti = class extends H {
3634
+ constructor(e, t = e) {
3635
+ super(w("use", e), t);
3636
+ }
3637
+ use(e, t) {
3638
+ return this.attr("href", (t || "") + "#" + e, we);
3639
+ }
3640
+ };
3641
+ v({ Container: { use: O(function(e, t) {
3642
+ return this.put(new ti()).use(e, t);
3643
+ }) } }), E(ti, "Use");
3644
+ var ni = C;
3645
+ D([
3646
+ yr,
3647
+ br,
3648
+ xn,
3649
+ bn,
3650
+ kn
3651
+ ], y("viewbox")), D([
3652
+ On,
3653
+ sr,
3654
+ or,
3655
+ J
3656
+ ], y("marker")), D(Z, y("Text")), D(J, y("Path")), D(rn, y("Defs")), D([Z, Pr], y("Tspan")), D([
3657
+ cr,
3658
+ mn,
3659
+ yn,
3660
+ X
3661
+ ], y("radius")), D(Ut, y("EventTarget")), D(Xt, y("Dom")), D(B, y("Element")), D(H, y("Shape")), D([V, hn], y("Container")), D(yn, y("Gradient")), D(X, y("Runner")), F.extend(fe()), Qn([
3662
+ z,
3663
+ A,
3664
+ P,
3665
+ M,
3666
+ R,
3667
+ U,
3668
+ K,
3669
+ j
3670
+ ]), $n();
3671
+ //#endregion
3672
+ //#region ../../node_modules/.pnpm/simple-mind-map@0.14.0-fix.2/node_modules/simple-mind-map/src/theme/default.js
3673
+ var ri = /* @__PURE__ */ l(ne()), ii = {
3674
+ paddingX: 15,
3675
+ paddingY: 5,
3676
+ imgMaxWidth: 200,
3677
+ imgMaxHeight: 100,
3678
+ iconSize: 20,
3679
+ lineWidth: 1,
3680
+ lineColor: "#549688",
3681
+ lineDasharray: "none",
3682
+ lineFlow: !1,
3683
+ lineFlowDuration: 1,
3684
+ lineFlowForward: !0,
3685
+ lineStyle: "straight",
3686
+ rootLineKeepSameInCurve: !0,
3687
+ rootLineStartPositionKeepSameInCurve: !1,
3688
+ lineRadius: 5,
3689
+ showLineMarker: !1,
3690
+ generalizationLineWidth: 1,
3691
+ generalizationLineColor: "#549688",
3692
+ generalizationLineMargin: 0,
3693
+ generalizationNodeMargin: 20,
3694
+ associativeLineWidth: 2,
3695
+ associativeLineColor: "rgb(51, 51, 51)",
3696
+ associativeLineActiveWidth: 8,
3697
+ associativeLineActiveColor: "rgba(2, 167, 240, 1)",
3698
+ associativeLineDasharray: "6,4",
3699
+ associativeLineTextColor: "rgb(51, 51, 51)",
3700
+ associativeLineTextFontSize: 14,
3701
+ associativeLineTextLineHeight: 1.2,
3702
+ associativeLineTextFontFamily: "微软雅黑, Microsoft YaHei",
3703
+ backgroundColor: "#fafafa",
3704
+ backgroundImage: "none",
3705
+ backgroundRepeat: "no-repeat",
3706
+ backgroundPosition: "center center",
3707
+ backgroundSize: "cover",
3708
+ nodeUseLineStyle: !1,
3709
+ root: {
3710
+ shape: "rectangle",
3711
+ fillColor: "#549688",
3712
+ fontFamily: "微软雅黑, Microsoft YaHei",
3713
+ color: "#fff",
3714
+ fontSize: 16,
3715
+ fontWeight: "bold",
3716
+ fontStyle: "normal",
3717
+ borderColor: "transparent",
3718
+ borderWidth: 0,
3719
+ borderDasharray: "none",
3720
+ borderRadius: 5,
3721
+ textDecoration: "none",
3722
+ gradientStyle: !1,
3723
+ startColor: "#549688",
3724
+ endColor: "#fff",
3725
+ startDir: [0, 0],
3726
+ endDir: [1, 0],
3727
+ lineMarkerDir: "end",
3728
+ hoverRectColor: "",
3729
+ hoverRectRadius: 5,
3730
+ textAlign: "left",
3731
+ imgPlacement: "top",
3732
+ tagPlacement: "right"
3733
+ },
3734
+ second: {
3735
+ shape: "rectangle",
3736
+ marginX: 100,
3737
+ marginY: 40,
3738
+ fillColor: "#fff",
3739
+ fontFamily: "微软雅黑, Microsoft YaHei",
3740
+ color: "#565656",
3741
+ fontSize: 16,
3742
+ fontWeight: "normal",
3743
+ fontStyle: "normal",
3744
+ borderColor: "#549688",
3745
+ borderWidth: 1,
3746
+ borderDasharray: "none",
3747
+ borderRadius: 5,
3748
+ textDecoration: "none",
3749
+ gradientStyle: !1,
3750
+ startColor: "#549688",
3751
+ endColor: "#fff",
3752
+ startDir: [0, 0],
3753
+ endDir: [1, 0],
3754
+ lineMarkerDir: "end",
3755
+ hoverRectColor: "",
3756
+ hoverRectRadius: 5,
3757
+ textAlign: "left",
3758
+ imgPlacement: "top",
3759
+ tagPlacement: "right"
3760
+ },
3761
+ node: {
3762
+ shape: "rectangle",
3763
+ marginX: 50,
3764
+ marginY: 0,
3765
+ fillColor: "transparent",
3766
+ fontFamily: "微软雅黑, Microsoft YaHei",
3767
+ color: "#6a6d6c",
3768
+ fontSize: 14,
3769
+ fontWeight: "normal",
3770
+ fontStyle: "normal",
3771
+ borderColor: "transparent",
3772
+ borderWidth: 0,
3773
+ borderRadius: 5,
3774
+ borderDasharray: "none",
3775
+ textDecoration: "none",
3776
+ gradientStyle: !1,
3777
+ startColor: "#549688",
3778
+ endColor: "#fff",
3779
+ startDir: [0, 0],
3780
+ endDir: [1, 0],
3781
+ lineMarkerDir: "end",
3782
+ hoverRectColor: "",
3783
+ hoverRectRadius: 5,
3784
+ textAlign: "left",
3785
+ imgPlacement: "top",
3786
+ tagPlacement: "right"
3787
+ },
3788
+ generalization: {
3789
+ shape: "rectangle",
3790
+ marginX: 100,
3791
+ marginY: 40,
3792
+ fillColor: "#fff",
3793
+ fontFamily: "微软雅黑, Microsoft YaHei",
3794
+ color: "#565656",
3795
+ fontSize: 16,
3796
+ fontWeight: "normal",
3797
+ fontStyle: "normal",
3798
+ borderColor: "#549688",
3799
+ borderWidth: 1,
3800
+ borderDasharray: "none",
3801
+ borderRadius: 5,
3802
+ textDecoration: "none",
3803
+ gradientStyle: !1,
3804
+ startColor: "#549688",
3805
+ endColor: "#fff",
3806
+ startDir: [0, 0],
3807
+ endDir: [1, 0],
3808
+ hoverRectColor: "",
3809
+ hoverRectRadius: 5,
3810
+ textAlign: "left",
3811
+ imgPlacement: "top",
3812
+ tagPlacement: "right"
3813
+ }
3814
+ }, ai = /* @__PURE__ */ "lineWidth.lineColor.lineDasharray.lineStyle.generalizationLineWidth.generalizationLineColor.associativeLineWidth.associativeLineColor.associativeLineActiveWidth.associativeLineActiveColor.associativeLineTextColor.associativeLineTextFontSize.associativeLineTextLineHeight.associativeLineTextFontFamily.backgroundColor.backgroundImage.backgroundRepeat.backgroundPosition.backgroundSize.rootLineKeepSameInCurve.rootLineStartPositionKeepSameInCurve.showLineMarker.lineRadius.hoverRectColor.hoverRectRadius.lineFlow.lineFlowDuration.lineFlowForward.textAlign".split("."), oi = (e) => {
3815
+ let t = Object.keys(e);
3816
+ for (let e = 0; e < t.length; e++) if (!ai.find((n) => n === t[e])) return !1;
3817
+ return !0;
3818
+ }, si = [
3819
+ "lineColor",
3820
+ "lineDasharray",
3821
+ "lineWidth",
3822
+ "lineMarkerDir",
3823
+ "lineFlow",
3824
+ "lineFlowDuration",
3825
+ "lineFlowForward"
3826
+ ], ci = (e, t, n, r, i, a = 0, o = 0, s = []) => {
3827
+ let c = !1;
3828
+ if (n && (c = n(e, t, i, a, o, s)), !c && e.children && e.children.length > 0) {
3829
+ let t = a + 1;
3830
+ e.children.forEach((i, a) => {
3831
+ ci(i, e, n, r, !1, t, a, [...s, e]);
3832
+ });
3833
+ }
3834
+ r && r(e, t, i, a, o, s);
3835
+ }, li = (e, t) => {
3836
+ let n = [e], r = !1;
3837
+ for (t(e, null) === "stop" && (r = !0); n.length && !r;) {
3838
+ let e = n.shift();
3839
+ e.children && e.children.length && e.children.forEach((i) => {
3840
+ r || (n.push(i), t(i, e) === "stop" && (r = !0));
3841
+ });
3842
+ }
3843
+ }, ui = (e, t, n, r) => {
3844
+ let i = [], a = e / t;
3845
+ return i = a > n / r ? [n, n / a] : [a * r, r], i;
3846
+ }, di = (e, t, n, r) => {
3847
+ let i = e / t, a = [];
3848
+ return n && r ? a = e <= n && t <= r ? [e, t] : i > n / r ? [n, n / i] : [i * r, r] : n ? a = e <= n ? [e, t] : [n, n / i] : r && (a = t <= r ? [e, t] : [i * r, r]), a;
3849
+ }, fi = (e) => {
3850
+ e = e.replace(/<br>/gim, "\n");
3851
+ let t = document.createElement("div");
3852
+ return t.innerHTML = e, e = t.textContent, e;
3853
+ }, pi = (e) => {
3854
+ try {
3855
+ return JSON.parse(JSON.stringify(e));
3856
+ } catch {
3857
+ return null;
3858
+ }
3859
+ }, mi = (e, t, n = !1) => (e.data = pi(t.data), n && (e.data.isActive = !1, Sa(e.data).forEach((e) => {
3860
+ e.isActive = !1;
3861
+ })), e.children = [], t.children && t.children.length > 0 && t.children.forEach((t, r) => {
3862
+ e.children[r] = mi({}, t, n);
3863
+ }), Object.keys(t).forEach((n) => {
3864
+ !["data", "children"].includes(n) && !/^_/.test(n) && (e[n] = t[n]);
3865
+ }), e), hi = (e, t, n = !1, r = !0) => {
3866
+ let i = t.nodeData ? t.nodeData : t;
3867
+ return e.data = pi(i.data), r ? delete e.data.uid : e.data.uid || (e.data.uid = ki()), n && (e.data.isActive = !1), e.children = [], t.children && t.children.length > 0 ? t.children.forEach((t, i) => {
3868
+ e.children[i] = hi({}, t, n, r);
3869
+ }) : t.nodeData && t.nodeData.children && t.nodeData.children.length > 0 && t.nodeData.children.forEach((t, i) => {
3870
+ e.children[i] = hi({}, t, n, r);
3871
+ }), Object.keys(i).forEach((t) => {
3872
+ !["data", "children"].includes(t) && !/^_/.test(t) && (e[t] = i[t]);
3873
+ }), e;
3874
+ }, gi = (e, t = !1) => new Promise((n, r) => {
3875
+ let i = new Image();
3876
+ i.setAttribute("crossOrigin", "anonymous"), i.onload = () => {
3877
+ try {
3878
+ let e = document.createElement("canvas");
3879
+ e.width = i.width, e.height = i.height, e.getContext("2d").drawImage(i, 0, 0, i.width, i.height), t ? e.toBlob((e) => {
3880
+ n(e);
3881
+ }) : n(e.toDataURL());
3882
+ } catch (e) {
3883
+ r(e);
3884
+ }
3885
+ }, i.onerror = (e) => {
3886
+ r(e);
3887
+ }, i.src = e;
3888
+ }), _i = (e, t) => {
3889
+ let n = document.createElement("a");
3890
+ n.href = e, n.download = t, n.click();
3891
+ }, vi = (e, t = 300, n) => {
3892
+ let r = null;
3893
+ return (...i) => {
3894
+ r ||= setTimeout(() => {
3895
+ e.call(n, ...i), r = null;
3896
+ }, t);
3897
+ };
3898
+ }, yi = (e, t = 300, n) => {
3899
+ let r = null;
3900
+ return (...i) => {
3901
+ r && clearTimeout(r), r = setTimeout(() => {
3902
+ r = null, e.apply(n, i);
3903
+ }, t);
3904
+ };
3905
+ }, bi = (e, t = () => {}) => {
3906
+ let n = 0, r = e.length;
3907
+ if (r <= 0) return t();
3908
+ let i = () => {
3909
+ if (n >= r) {
3910
+ t();
3911
+ return;
3912
+ }
3913
+ e[n](), setTimeout(() => {
3914
+ n++, i();
3915
+ }, 0);
3916
+ };
3917
+ i();
3918
+ }, xi = (e) => Math.PI / 180 * e, Si = (e) => e.replace(/([a-z])([A-Z])/g, (...e) => e[1] + "-" + e[2].toLowerCase()), Ci = function(e, t) {
3919
+ let n = !1, r = null, i = () => {
3920
+ n = !1, t ? e.call(t) : e();
3921
+ };
3922
+ if (typeof MutationObserver < "u") {
3923
+ let e = 1, t = new MutationObserver(i), n = document.createTextNode(e);
3924
+ t.observe(n, { characterData: !0 }), r = function() {
3925
+ e = (e + 1) % 2, n.data = e;
3926
+ };
3927
+ } else r = setTimeout;
3928
+ return function() {
3929
+ n || (n = !0, r(i, 0));
3930
+ };
3931
+ }, wi = (e, t, n = 0, r = 0) => {
3932
+ let i = e.elRect, { scaleX: a, scaleY: o, translateX: s, translateY: c } = e.draw.transform(), { left: l, top: u, width: d, height: f } = t, p = (l + d) * a + s, m = (u + f) * o + c;
3933
+ l = l * a + s, u = u * o + c;
3934
+ let h = 0, g = 0;
3935
+ return l < 0 + n && (h = -l + n), p > i.width - n && (h = -(p - i.width) - n), u < 0 + r && (g = -u + r), m > i.height - r && (g = -(m - i.height) - r), {
3936
+ isOuter: h !== 0 || g !== 0,
3937
+ offsetLeft: h,
3938
+ offsetTop: g
3939
+ };
3940
+ }, Ti = null, Ei = (e) => (Ti ||= document.createElement("div"), Ti.innerHTML = e, Ti.textContent), Di = (e) => new Promise((t, n) => {
3941
+ let r = new FileReader();
3942
+ r.onload = (e) => {
3943
+ t(e.target.result);
3944
+ }, r.onerror = (e) => {
3945
+ n(e);
3946
+ }, r.readAsDataURL(e);
3947
+ }), Oi = (e) => new Promise((t) => {
3948
+ let n = new Image();
3949
+ n.src = e, n.onload = () => {
3950
+ t({
3951
+ width: n.width,
3952
+ height: n.height
3953
+ });
3954
+ }, n.onerror = () => {
3955
+ t({
3956
+ width: 0,
3957
+ height: 0
3958
+ });
3959
+ };
3960
+ }), ki = () => ce(), Ai = (e) => new Promise((t, n) => {
3961
+ let r = new FileReader();
3962
+ r.readAsDataURL(e), r.onload = async (e) => {
3963
+ let n = e.target.result;
3964
+ t({
3965
+ url: n,
3966
+ size: await Oi(n)
3967
+ });
3968
+ }, r.onerror = (e) => {
3969
+ n(e);
3970
+ };
3971
+ }), ji = (e) => ([["&nbsp;", "&#160;"]].forEach((t) => {
3972
+ e = e.replace(new RegExp(t[0], "g"), t[1]);
3973
+ }), e), Q = (e) => Object.prototype.toString.call(e).slice(8, -1), Mi = (e) => e == null || e === "", Ni = null, Pi = (e) => {
3974
+ Ni ||= document.createElement("div"), Ni.innerHTML = e;
3975
+ for (let e = Ni.childNodes, t = e.length; t--;) if (e[t].nodeType == 1) return !0;
3976
+ return !1;
3977
+ }, Fi = null, Ii = (e, t, n) => {
3978
+ Fi ||= document.createElement("div"), Fi.innerHTML = e;
3979
+ let r = (e) => {
3980
+ e.childNodes.forEach((i) => {
3981
+ i.nodeType === 1 ? r(i) : i.nodeType === 3 && e.replaceChild(document.createTextNode(i.nodeValue.replace(new RegExp(t, "g"), n)), i);
3982
+ });
3983
+ };
3984
+ return r(Fi), Fi.innerHTML;
3985
+ }, Li = (e) => (e = String(e).replace(/\s+/g, ""), [
3986
+ "#fff",
3987
+ "#ffffff",
3988
+ "#FFF",
3989
+ "#FFFFFF",
3990
+ "rgb(255,255,255)"
3991
+ ].includes(e) || /rgba\(255,255,255,[^)]+\)/.test(e)), Ri = (e) => (e = String(e).replace(/\s+/g, ""), ["", "transparent"].includes(e) || /rgba\(\d+,\d+,\d+,0\)/.test(e)), zi = (e) => {
3992
+ let { lineColor: t, root: n, second: r, node: i } = e, a = [
3993
+ t,
3994
+ n.fillColor,
3995
+ n.color,
3996
+ r.fillColor,
3997
+ r.color,
3998
+ i.fillColor,
3999
+ i.color,
4000
+ n.borderColor,
4001
+ r.borderColor,
4002
+ i.borderColor
4003
+ ];
4004
+ for (let e = 0; e < a.length; e++) {
4005
+ let t = a[e];
4006
+ if (!Ri(t) && !Li(t)) return t;
4007
+ }
4008
+ }, Bi = (e) => {
4009
+ let t = (e) => {
4010
+ e.childNodes.forEach((e) => {
4011
+ e.nodeType === 1 && (e.classList.contains("ql-formula") ? e.parentNode.removeChild(e) : t(e));
4012
+ });
4013
+ };
4014
+ t(e);
4015
+ }, Vi = null, Hi = (e) => {
4016
+ Vi ||= document.createElement("div"), Vi.innerHTML = e;
4017
+ let t = Vi.childNodes, n = "";
4018
+ for (let e = 0; e < t.length; e++) {
4019
+ let r = t[e];
4020
+ r.nodeType === 1 ? (Bi(r), r.tagName.toLowerCase() === "p" ? n += r.textContent + "\n" : n += r.textContent) : r.nodeType === 3 && (n += r.nodeValue);
4021
+ }
4022
+ return n.replace(/\n$/, "");
4023
+ }, $ = null, Ui = (e) => {
4024
+ $ ||= document.createElement("div"), $.innerHTML = e;
4025
+ let t = $.querySelectorAll(".ql-formula");
4026
+ Array.from(t).forEach((e) => {
4027
+ let t = document.createTextNode("$smmformula$");
4028
+ e.parentNode.replaceChild(t, e);
4029
+ });
4030
+ let n = $.childNodes, r = [];
4031
+ for (let e = 0; e < n.length; e++) {
4032
+ let t = n[e];
4033
+ t.nodeType === 1 ? r.push(t.textContent) : t.nodeType === 3 && r.push(t.nodeValue);
4034
+ }
4035
+ if (e = r.map((e) => `<p><span>${aa(e)}</span></p>`).join(""), t.length > 0) {
4036
+ e = e.replace(/\$smmformula\$/g, "<span class=\"smmformula\"></span>"), $.innerHTML = e;
4037
+ let n = $.querySelectorAll(".smmformula");
4038
+ Array.from(n).forEach((e, n) => {
4039
+ e.parentNode.replaceChild(t[n], e);
4040
+ }), e = $.innerHTML;
4041
+ }
4042
+ return e;
4043
+ }, Wi = (e, t) => {
4044
+ let n = {};
4045
+ return Object.keys(t).forEach((r) => {
4046
+ let i = e[r], a = t[r];
4047
+ if (Q(i) !== Q(a)) {
4048
+ n[r] = a;
4049
+ return;
4050
+ }
4051
+ if (Q(i) === "Object") {
4052
+ if (JSON.stringify(i) !== JSON.stringify(a)) {
4053
+ n[r] = a;
4054
+ return;
4055
+ }
4056
+ } else if (i !== a) {
4057
+ n[r] = a;
4058
+ return;
4059
+ }
4060
+ }), n;
4061
+ }, Gi = (e) => /^_/.test(e) ? !1 : !p.includes(e), Ki = (e) => {
4062
+ let t = [...si], n = Object.keys(e);
4063
+ for (let e = 0; e < n.length; e++) if (!t.includes(n[e])) return !1;
4064
+ return !0;
4065
+ }, qi = (e) => e.reduce((e, t) => {
4066
+ let n = e.find((e) => e.type === t.type);
4067
+ return n ? t.list.forEach((e) => {
4068
+ let t = n.list.find((t) => t.name === e.name);
4069
+ t ? t.icon = e.icon : n.list.push(e);
4070
+ }) : e.push({ ...t }), e;
4071
+ }, []), Ji = (e) => {
4072
+ let t = [];
4073
+ return e.forEach((n) => {
4074
+ e.find((e) => e.uid !== n.uid && e.isAncestor(n)) || t.push(n);
4075
+ }), t;
4076
+ }, Yi = (e) => {
4077
+ let t = {}, n = {};
4078
+ e.forEach((e) => {
4079
+ let r = e.parent;
4080
+ if (r) {
4081
+ let i = r.uid;
4082
+ n[i] = r;
4083
+ let a = {
4084
+ node: e,
4085
+ index: e.getIndexInBrothers()
4086
+ };
4087
+ t[i] ? t[i].find((e) => e.index === a.index) || t[i].push(a) : t[i] = [a];
4088
+ }
4089
+ });
4090
+ let r = [];
4091
+ return Object.keys(t).forEach((e) => {
4092
+ if (t[e].length > 1) {
4093
+ let i = t[e].map((e) => e.index).sort((e, t) => e - t);
4094
+ r.push({
4095
+ node: n[e],
4096
+ range: [i[0], i[i.length - 1]]
4097
+ });
4098
+ } else r.push({ node: t[e][0].node });
4099
+ }), r;
4100
+ }, Xi = (e, t, n, r, i, a, o, s) => t > i && a > e && r > o && s > n, Zi = (e) => {
4101
+ let t = window.getSelection(), n = document.createRange();
4102
+ n.selectNodeContents(e), n.collapse(), t.removeAllRanges(), t.addRange(n);
4103
+ }, Qi = (e) => {
4104
+ let t = window.getSelection(), n = document.createRange();
4105
+ n.selectNodeContents(e), t.removeAllRanges(), t.addRange(n);
4106
+ }, $i = (e, t = {}) => {
4107
+ t = { ...t }, t && t.richText && t.resetRichText && delete t.resetRichText;
4108
+ let n = (e) => {
4109
+ e.forEach((e) => {
4110
+ e.data = {
4111
+ ...e.data,
4112
+ ...t
4113
+ }, e.children && e.children.length > 0 && n(e.children);
4114
+ });
4115
+ };
4116
+ return n(e), e;
4117
+ }, ea = (e, t = !1, n = null, r = !1) => {
4118
+ let i = (e) => {
4119
+ e.forEach((e) => {
4120
+ e.data ||= {}, (t || Mi(e.data.uid)) && (e.data.uid = ki()), r && Sa(e.data).forEach((e) => {
4121
+ (t || Mi(e.uid)) && (e.uid = ki());
4122
+ }), n && n(e), e.children && e.children.length > 0 && i(e.children);
4123
+ });
4124
+ };
4125
+ return i(e), e;
4126
+ }, ta = (e) => e ? Array.isArray(e) ? e : [e] : [], na = (e) => e.parent ? e.parent.nodeData.children.findIndex((t) => t.data.uid === e.uid) : 0, ra = (e, t) => t.findIndex((t) => t.uid === e.uid), ia = (e) => {
4127
+ let t = 0;
4128
+ for (let n = 0; n < e.length; n++) t = e.charCodeAt(n) + ((t << 5) - t);
4129
+ return "hsla(" + new le(t).genrand_int32() % 360 + ", 50%, 50%, 1)";
4130
+ }, aa = (e) => ([
4131
+ ["&", "&amp;"],
4132
+ ["<", "&lt;"],
4133
+ [">", "&gt;"]
4134
+ ].forEach((t) => {
4135
+ e = e.replace(new RegExp(t[0], "g"), t[1]);
4136
+ }), e), oa = (e, t) => {
4137
+ let n = Q(e);
4138
+ if (n !== Q(t)) return !1;
4139
+ if (n === "Object") {
4140
+ let n = Object.keys(e), r = Object.keys(t);
4141
+ if (n.length !== r.length) return !1;
4142
+ for (let i = 0; i < n.length; i++) {
4143
+ let a = n[i];
4144
+ if (!r.includes(a) || !oa(e[a], t[a])) return !1;
4145
+ }
4146
+ return !0;
4147
+ } else if (n === "Array") {
4148
+ if (e.length !== t.length) return !1;
4149
+ for (let n = 0; n < e.length; n++) {
4150
+ let r = e[n], i = t[n];
4151
+ if (Q(r) !== Q(i) || !oa(r, i)) return !1;
4152
+ }
4153
+ return !0;
4154
+ } else return e === t;
4155
+ }, sa = () => navigator.clipboard && typeof navigator.clipboard.read == "function", ca = (e) => {
4156
+ navigator.clipboard && navigator.clipboard.writeText && navigator.clipboard.writeText(JSON.stringify(e));
4157
+ }, la = async () => {
4158
+ let e = null, t = null;
4159
+ if (sa()) {
4160
+ let n = await navigator.clipboard.read();
4161
+ if (n && n.length > 0) for (let r of n) for (let n of r.types) /^image\//.test(n) ? t = await r.getType(n) : n === "text/plain" && (e = await (await r.getType(n)).text());
4162
+ }
4163
+ return {
4164
+ text: e,
4165
+ img: t
4166
+ };
4167
+ }, ua = (e) => {
4168
+ if (!e || !e.parent) return;
4169
+ let t = na(e);
4170
+ t !== -1 && e.parent.nodeData.children.splice(t, 1);
4171
+ }, da = (e) => (g.forEach((t) => {
4172
+ e = e.replace(RegExp(`<${t}([^>]*)>`, "g"), `<${t} $1 />`);
4173
+ }), e), fa = (e, t) => {
4174
+ if (e.length !== t.length) return !1;
4175
+ for (let n = 0; n < e.length; n++) if (!t.find((t) => t.uid === e[n].uid)) return !1;
4176
+ return !0;
4177
+ }, pa = () => {
4178
+ let e = navigator.userAgent.match(/\s+Chrome\/(.*)\s+/);
4179
+ return e && e[1] ? Number.parseFloat(e[1]) : "";
4180
+ }, ma = (e) => ({
4181
+ simpleMindMap: !0,
4182
+ data: e
4183
+ }), ha = (e) => {
4184
+ let t = null;
4185
+ if (typeof e == "string") try {
4186
+ let n = JSON.parse(e);
4187
+ typeof n == "object" && n.simpleMindMap && (t = n.data);
4188
+ } catch {}
4189
+ else typeof e == "object" && e.simpleMindMap && (t = e.data);
4190
+ let n = !!t;
4191
+ return {
4192
+ isSmm: n,
4193
+ data: n ? t : String(e)
4194
+ };
4195
+ }, ga = (e, t) => {
4196
+ e.preventDefault();
4197
+ let n = window.getSelection();
4198
+ if (!n.rangeCount) return;
4199
+ n.deleteFromDocument(), t ||= e.clipboardData.getData("text"), t = aa(t), t = Ei(t);
4200
+ let r = t.split(/\n/g), i = document.createDocumentFragment();
4201
+ r.forEach((e, t) => {
4202
+ let n = document.createTextNode(e);
4203
+ if (i.appendChild(n), t < r.length - 1) {
4204
+ let e = document.createElement("br");
4205
+ i.appendChild(e);
4206
+ }
4207
+ }), n.getRangeAt(0).insertNode(i), n.collapseToEnd();
4208
+ }, _a = (e) => {
4209
+ let t = {}, n = (e, r) => {
4210
+ let i = e.data.uid;
4211
+ r && r.children.push(i), t[i] = {
4212
+ isRoot: !r,
4213
+ data: { ...e.data },
4214
+ children: []
4215
+ }, e.children && e.children.length > 0 && e.children.forEach((e) => {
4216
+ n(e, t[i]);
4217
+ });
4218
+ };
4219
+ return n(e, null), t;
4220
+ }, va = ({ addContentToHeader: e, addContentToFooter: t }) => {
4221
+ let n = [], r = null, i = 0, a = null, o = 0, s = (e, t) => {
4222
+ if (typeof e == "function") {
4223
+ let r = e();
4224
+ if (!r) return;
4225
+ let { el: i, cssText: a, height: o } = r;
4226
+ i instanceof HTMLElement && (Ca(i), t(xa({
4227
+ el: i,
4228
+ height: o
4229
+ }), o)), a && n.push(a);
4230
+ }
4231
+ };
4232
+ return s(e, (e, t) => {
4233
+ r = e, i = t;
4234
+ }), s(t, (e, t) => {
4235
+ a = e, o = t;
4236
+ }), {
4237
+ cssTextList: n,
4238
+ header: r,
4239
+ headerHeight: i,
4240
+ footer: a,
4241
+ footerHeight: o
4242
+ };
4243
+ }, ya = (e, t = 0, n = 0, r = 0, i = 0, a = !1, o = !1) => {
4244
+ let s = Infinity, c = -Infinity, l = Infinity, u = -Infinity, d = (e, t) => {
4245
+ if (!(t && a) && e.group) try {
4246
+ let { x: t, y: n, width: r, height: i } = e.group.findOne(".smm-node-shape").rbox();
4247
+ t < s && (s = t), t + r > c && (c = t + r), n < l && (l = n), n + i > u && (u = n + i);
4248
+ } catch {}
4249
+ !o && e._generalizationList.length > 0 && e._generalizationList.forEach((e) => {
4250
+ d(e.generalizationNode);
4251
+ }), e.children && e.children.forEach((e) => {
4252
+ d(e);
4253
+ });
4254
+ };
4255
+ return d(e, !0), s = s - t + r, l = l - n + i, c = c - t + r, u = u - n + i, {
4256
+ left: s,
4257
+ top: l,
4258
+ width: c - s,
4259
+ height: u - l
4260
+ };
4261
+ }, ba = (e, t = 0, n = 0, r = 0, i = 0) => {
4262
+ let a = Infinity, o = -Infinity, s = Infinity, c = -Infinity;
4263
+ return e.forEach((e) => {
4264
+ let { left: l, top: u, width: d, height: f } = ya(e, t, n, r, i, !1, !0);
4265
+ l < a && (a = l), l + d > o && (o = l + d), u < s && (s = u), u + f > c && (c = u + f);
4266
+ }), {
4267
+ left: a,
4268
+ top: s,
4269
+ width: o - a,
4270
+ height: c - s
4271
+ };
4272
+ };
4273
+ (() => {
4274
+ if (document.documentElement.requestFullScreen) return "fullscreenchange";
4275
+ if (document.documentElement.webkitRequestFullScreen) return "webkitfullscreenchange";
4276
+ if (document.documentElement.mozRequestFullScreen) return "mozfullscreenchange";
4277
+ if (document.documentElement.msRequestFullscreen) return "msfullscreenchange";
4278
+ })();
4279
+ var xa = ({ el: e, width: t, height: n }) => {
4280
+ let r = new Lr();
4281
+ return t !== void 0 && r.width(t), n !== void 0 && r.height(n), r.add(e), r;
4282
+ }, Sa = (e) => {
4283
+ let t = e.generalization;
4284
+ return t ? Array.isArray(t) ? t : [t] : [];
4285
+ }, Ca = (e) => {
4286
+ e.setAttribute("xmlns", "http://www.w3.org/1999/xhtml");
4287
+ }, wa = (e) => (e = [...e], e.sort((e, t) => e.sortIndex - t.sortIndex), e), Ta = (e, t) => (0, ri.default)(e, t, { arrayMerge: (e, t) => t }), Ea = (e) => {
4288
+ let t = {};
4289
+ return te.forEach((n) => {
4290
+ let r = e.style.merge(n);
4291
+ n === "fontSize" && (r += "px"), t[n] = r;
4292
+ }), t;
4293
+ };
4294
+ //#endregion
4295
+ export { Yi as $, ba as A, d as At, da as B, ta as C, cr as Ct, la as D, u as Dt, pa as E, ne as Et, Ei as F, s as Ft, Ri as G, gi as H, Ji as I, l as It, Ai as J, Mi as K, zi as L, ya as M, p as Mt, Wi as N, ee as Nt, na as O, m as Ot, fi as P, o as Pt, Hi as Q, va as R, Zi as S, or as St, ia as T, Z as Tt, Ki as U, aa as V, oa as W, qi as X, Ta as Y, Ci as Z, ki as _, Yr as _t, Si as a, di as at, xi as b, xn as bt, Pi as c, ca as ct, ha as d, vi as dt, Di as et, Xi as f, _a as ft, ma as g, si as gt, xa as h, ii as ht, li as i, Ii as it, Ea as j, f as jt, ra as k, h as kt, fa as l, pi as lt, mi as m, oi as mt, Ca as n, ji as nt, sa as o, ui as ot, hi as p, ci as pt, Li as q, bi as r, Ui as rt, Gi as s, Qi as st, $i as t, ua as tt, wi as u, wa as ut, ea as v, Fr as vt, Sa as w, ni as wt, _i as x, J as xt, yi as y, Jr as yt, ga as z };