@epam/ai-dial-attachment-canvas 1.1.0-dev.45 → 1.1.0-dev.456

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/LazyContentBoundary-CL7J_W9c.js +166 -0
  2. package/PdfContent-DhfjgYL-.js +260 -0
  3. package/PdfContent.css +1 -0
  4. package/attachment-canvas-Bp6WeQws.js +12 -0
  5. package/bounded-raw-part-cache-BfbSxRIL-DD07NKh9.js +37832 -0
  6. package/chart-ex-B0DgG3Dt.js +1009 -0
  7. package/comment-occurrence-CqejEuts-7SeKCBXk.js +6 -0
  8. package/comment-ui-runtime-DEtgcmj7-B1G7PH4z.js +170 -0
  9. package/comment-ui-runtime-TLHustXJ-DWCXG2mL.js +2 -0
  10. package/comment-ui-runtime-lXwVOgjW-Be4RALsI.js +112 -0
  11. package/comments-CAn2A_Xh-CdgNAj0h.js +282 -0
  12. package/components/AttachmentCanvas/AttachmentCanvas.d.ts +1 -0
  13. package/components/AttachmentCanvas/AttachmentCanvas.d.ts.map +1 -1
  14. package/components/AttachmentCanvasBody/AttachmentCanvasBody.d.ts +4 -0
  15. package/components/AttachmentCanvasBody/AttachmentCanvasBody.d.ts.map +1 -0
  16. package/components/AttachmentCanvasContainer/AttachmentCanvasContainer.d.ts +14 -0
  17. package/components/AttachmentCanvasContainer/AttachmentCanvasContainer.d.ts.map +1 -1
  18. package/components/CodeContent/CodeContent.d.ts +24 -0
  19. package/components/CodeContent/CodeContent.d.ts.map +1 -0
  20. package/components/HtmlContent/HtmlContent.d.ts +21 -0
  21. package/components/HtmlContent/HtmlContent.d.ts.map +1 -0
  22. package/components/LazyContentBoundary/LazyContentBoundary.d.ts +73 -0
  23. package/components/LazyContentBoundary/LazyContentBoundary.d.ts.map +1 -0
  24. package/components/McpAppCanvasRenderer/McpAppCanvasRenderer.d.ts +12 -0
  25. package/components/McpAppCanvasRenderer/McpAppCanvasRenderer.d.ts.map +1 -0
  26. package/components/OoxmlContent/OoxmlContent.d.ts +22 -0
  27. package/components/OoxmlContent/OoxmlContent.d.ts.map +1 -0
  28. package/components/PdfContent/PdfContent.d.ts +56 -0
  29. package/components/PdfContent/PdfContent.d.ts.map +1 -1
  30. package/components/VisualizerCanvasRenderer/VisualizerCanvasRenderer.d.ts +25 -0
  31. package/components/VisualizerCanvasRenderer/VisualizerCanvasRenderer.d.ts.map +1 -0
  32. package/constants/file.d.ts +8 -0
  33. package/constants/file.d.ts.map +1 -1
  34. package/context/AttachmentCanvasContext.d.ts +5 -3
  35. package/context/AttachmentCanvasContext.d.ts.map +1 -1
  36. package/delimited-text-worker-host-DcHj_JZt-DWJmaPag.js +25 -0
  37. package/docx-B9qBTEkj.js +29822 -0
  38. package/hooks/useOpenAttachmentCanvas/useOpenAttachmentCanvas.d.ts +64 -0
  39. package/hooks/useOpenAttachmentCanvas/useOpenAttachmentCanvas.d.ts.map +1 -0
  40. package/index.css +1 -2
  41. package/index.d.ts +11 -3
  42. package/index.d.ts.map +1 -1
  43. package/index.js +1123 -17237
  44. package/line-distribute-IsUGfHXm-DeITjLzJ.js +1234 -0
  45. package/line-metrics-CBbw80Ko-DoOuwYxZ.js +60 -0
  46. package/models/attachment-canvas.d.ts +314 -11
  47. package/models/attachment-canvas.d.ts.map +1 -1
  48. package/ooxml-highlight-surfaces-BhfVZvru.js +294 -0
  49. package/package.json +17 -9
  50. package/pptx-dkJw0-Vx.js +9179 -0
  51. package/read-only-comment-decoration-BTnWEeo5-BNhbteYc.js +94 -0
  52. package/read-only-comment-margin-plStyGfE-mggNAMB_.js +189 -0
  53. package/render-worker-host-BEfLZvSL-COy91Rd8.js +7 -0
  54. package/render-worker-host-Ba6Fchqr-DZeKpMWD.js +7 -0
  55. package/render-worker-host-C3xwtHnv-BBGHFdo9.js +7 -0
  56. package/renderer-module-contract-Cu-GKuPd-Bt0YZuzB.js +10063 -0
  57. package/types/attachment-canvas.d.ts +22 -0
  58. package/types/attachment-canvas.d.ts.map +1 -1
  59. package/utils/content.d.ts +11 -0
  60. package/utils/content.d.ts.map +1 -1
  61. package/utils/download.d.ts.map +1 -1
  62. package/utils/ooxml-highlight-geometry.d.ts +158 -0
  63. package/utils/ooxml-highlight-geometry.d.ts.map +1 -0
  64. package/utils/ooxml-highlight-surfaces.d.ts +42 -0
  65. package/utils/ooxml-highlight-surfaces.d.ts.map +1 -0
  66. package/utils/visualizer.d.ts +8 -0
  67. package/utils/visualizer.d.ts.map +1 -0
  68. package/utils/vite-external-matcher.d.ts +16 -0
  69. package/utils/vite-external-matcher.d.ts.map +1 -0
  70. package/visible-index-DPoQYSDt-9lRc-2Ik.js +162 -0
  71. package/xlsx-BAXMTJTG.js +8585 -0
@@ -0,0 +1,1234 @@
1
+ import { bt as e } from "./renderer-module-contract-Cu-GKuPd-Bt0YZuzB.js";
2
+ import { $t as t, L as n, Nt as r, S as i, f as a, kn as o, nt as s, p as c, u as l } from "./bounded-raw-part-cache-BfbSxRIL-DD07NKh9.js";
3
+ //#region ../../node_modules/@silurus/ooxml/dist/highlight-rect-FuUSmL3a.js
4
+ function u(e, t, n, r) {
5
+ let i = t <= 0 ? 0 : r(e.slice(0, t)), a = n >= e.length ? r(e) : r(e.slice(0, n));
6
+ return {
7
+ x: i,
8
+ width: Math.max(0, a - i)
9
+ };
10
+ }
11
+ function d(e, t) {
12
+ return t > 0 ? `${e / t * 100}%` : "0%";
13
+ }
14
+ //#endregion
15
+ //#region ../../node_modules/@silurus/ooxml/dist/dom-interaction-boundary-CswB9Tzi.js
16
+ function f(e, t = o) {
17
+ return e.byteLength > 0 && e.byteLength <= t;
18
+ }
19
+ function p(e, t) {
20
+ let n = m(t), r = e.slice(), i = Math.min(32, r.length);
21
+ for (let e = 0; e < i; e++) r[e] ^= n[e % 16];
22
+ return r;
23
+ }
24
+ function m(e) {
25
+ let t = e.replace(/[{}\-\s]/g, "");
26
+ if (t.length !== 32 || /[^0-9a-fA-F]/.test(t)) throw Error(`invalid fontKey GUID: ${e}`);
27
+ let n = new Uint8Array(16);
28
+ for (let e = 0; e < 16; e++) n[e] = parseInt(t.slice(e * 2, e * 2 + 2), 16);
29
+ return n.reverse();
30
+ }
31
+ function h(e, t, n, r) {
32
+ let i = 2166136261;
33
+ for (let e = 0; e < r.length; e++) i ^= r[e], i = Math.imul(i, 16777619);
34
+ return `${e}|${t}|${n}|${r.length}|${(i >>> 0).toString(16)}`;
35
+ }
36
+ async function g(e, t = o) {
37
+ let n = a();
38
+ if (!n || typeof FontFace > "u") return [];
39
+ let r = [], s = /* @__PURE__ */ new Set(), u = [];
40
+ for (let a of e) try {
41
+ if (!f(a.bytes, t)) {
42
+ u.push(a.family);
43
+ continue;
44
+ }
45
+ let e = a.odttf ? p(a.bytes, a.fontKey ?? "") : a.bytes, o = `embedded:${h(a.family, a.weight, a.style, e)}`;
46
+ if (s.has(o)) continue;
47
+ s.add(o);
48
+ let { face: c } = i(o, n, () => {
49
+ let t = e.buffer.slice(e.byteOffset, e.byteOffset + e.byteLength), r = new FontFace(a.family, t, {
50
+ weight: a.weight,
51
+ style: a.style
52
+ });
53
+ return n.add(r), r;
54
+ });
55
+ r.push(c);
56
+ } catch {
57
+ u.push(a.family);
58
+ }
59
+ let d = r;
60
+ if (r.length > 0) {
61
+ let e = await c(Promise.allSettled(r.map((e) => Promise.resolve().then(() => e.load()))));
62
+ Array.isArray(e) ? (d = [], e.forEach((e, t) => {
63
+ let n = r[t];
64
+ e.status === "fulfilled" ? d.push(n) : (u.push(n.family), l([n]));
65
+ }), await c(n.ready)) : (u.push(...r.map((e) => e.family)), l(r), d = []);
66
+ }
67
+ return u.length > 0 && console.warn(`[ooxml] failed to register embedded font(s): ${[...new Set(u)].join(", ")}; falling back to substitute fonts (text may shift or differ).`), d;
68
+ }
69
+ function _(e) {
70
+ l(e);
71
+ }
72
+ function v(e, t, n) {
73
+ return e < t ? t : e > n ? n : e;
74
+ }
75
+ function y(e, t, n) {
76
+ let r = e.length;
77
+ if (r === 0) return {
78
+ offsets: [],
79
+ totalHeight: 0
80
+ };
81
+ let i = n?.leading ?? 0, a = n?.trailing ?? 0, o = Array(r), s = 0;
82
+ for (let n = 0; n < r; n++) o[n] = i + s + n * t, s += e[n];
83
+ return {
84
+ offsets: o,
85
+ totalHeight: i + s + (r - 1) * t + a
86
+ };
87
+ }
88
+ function b(e, t, n, r) {
89
+ let i = e.offsets, a = i.length;
90
+ if (a === 0) return {
91
+ start: 0,
92
+ end: -1,
93
+ topIndex: 0,
94
+ offsets: i,
95
+ totalHeight: 0
96
+ };
97
+ let o = 0, s = a;
98
+ for (; o < s;) {
99
+ let e = o + s >>> 1;
100
+ i[e] <= t ? o = e + 1 : s = e;
101
+ }
102
+ let c = v(o - 1, 0, a - 1), l = t + n;
103
+ for (o = 0, s = a; o < s;) {
104
+ let e = o + s >>> 1;
105
+ i[e] < l ? o = e + 1 : s = e;
106
+ }
107
+ let u = v(o - 1, 0, a - 1);
108
+ return {
109
+ start: v(c - r, 0, a - 1),
110
+ end: v(u + r, 0, a - 1),
111
+ topIndex: c,
112
+ offsets: i,
113
+ totalHeight: e.totalHeight
114
+ };
115
+ }
116
+ function x(e, t, n, r, i, a, o) {
117
+ if (e === 0) return {
118
+ start: 0,
119
+ end: -1,
120
+ topIndex: 0,
121
+ totalHeight: 0
122
+ };
123
+ let s = o?.leading ?? 0, c = o?.trailing ?? 0, l = t + n, u = v(r < s ? 0 : l > 0 ? Math.floor((r - s) / l) : e - 1, 0, e - 1), d = r + i, f = v(d <= s ? 0 : l > 0 ? Math.ceil((d - s) / l) - 1 : e - 1, 0, e - 1);
124
+ return {
125
+ start: v(u - a, 0, e - 1),
126
+ end: v(f + a, 0, e - 1),
127
+ topIndex: u,
128
+ totalHeight: s + e * t + (e - 1) * n + c
129
+ };
130
+ }
131
+ var S = class {
132
+ state = Object.freeze({ status: "complete" });
133
+ get complete() {
134
+ return this.state.status === "complete";
135
+ }
136
+ get settled() {
137
+ return this.state.status !== "pending";
138
+ }
139
+ begin() {
140
+ this.state = Object.freeze({ status: "pending" });
141
+ }
142
+ succeed() {
143
+ this.state = Object.freeze({ status: "complete" });
144
+ }
145
+ fail(e) {
146
+ let t = e instanceof Error ? e : Error(String(e));
147
+ return this.state = Object.freeze({
148
+ status: "failed",
149
+ error: t
150
+ }), t;
151
+ }
152
+ throwIfFailed() {
153
+ if (this.state.status === "failed") throw this.state.error;
154
+ }
155
+ }, C = class {
156
+ failed = /* @__PURE__ */ new WeakMap();
157
+ notify(e, t, ...n) {
158
+ if (!(!t || this.failed.get(t)?.has(e))) try {
159
+ let r = t(...n);
160
+ r && typeof r.then == "function" && Promise.resolve(r).catch((n) => this.reportOnce(e, t, n));
161
+ } catch (n) {
162
+ this.reportOnce(e, t, n);
163
+ }
164
+ }
165
+ reportOnce(e, t, n) {
166
+ let r = this.failed.get(t) ?? /* @__PURE__ */ new Set();
167
+ if (r.has(e)) return;
168
+ r.add(e), this.failed.has(t) || this.failed.set(t, r);
169
+ let i = n instanceof Error ? n : Error(String(n));
170
+ console.error(`[ooxml] ${e} callback failed and was disabled:`, i);
171
+ }
172
+ }, w = 65536;
173
+ function T(e, t) {
174
+ let n = Math.min(e.length, t);
175
+ if (n > 0 && n < e.length) {
176
+ let t = e.charCodeAt(n - 1), r = e.charCodeAt(n);
177
+ t >= 55296 && t <= 56319 && r >= 56320 && r <= 57343 && n--;
178
+ }
179
+ return e.slice(0, n);
180
+ }
181
+ function E(e) {
182
+ if (e !== void 0 && (!Number.isFinite(e) || e < 0)) throw RangeError("maxTextCharacters must be a finite non-negative number.");
183
+ return Math.min(w, Math.floor(e ?? 65536));
184
+ }
185
+ function D(e, t, n) {
186
+ let r = E(n), i = 0, a = !1, o = (e) => {
187
+ let t = T(e.text, Math.max(0, r - i));
188
+ return i += t.length, t.length < e.text.length && (a = !0), {
189
+ ...e,
190
+ text: t
191
+ };
192
+ }, s = Object.freeze({
193
+ root: Object.freeze(o(e)),
194
+ replies: Object.freeze(t.map((e) => Object.freeze(o(e))))
195
+ });
196
+ return Object.freeze({
197
+ thread: s,
198
+ truncated: a,
199
+ textCharacters: i,
200
+ maxTextCharacters: r
201
+ });
202
+ }
203
+ function O(e, t) {
204
+ return e.dataset?.[t] !== void 0;
205
+ }
206
+ function k(e, t, n) {
207
+ let r = typeof e.composedPath == "function" ? e.composedPath() : [];
208
+ if (r.length > 0) {
209
+ let e = !1;
210
+ for (let i of r) {
211
+ if (i === t) return e;
212
+ O(i, n) && (e = !0);
213
+ }
214
+ }
215
+ let i = e.target;
216
+ if (!i || !t.contains(i)) return !1;
217
+ let a = i;
218
+ for (; a;) {
219
+ if (O(a, n)) return !0;
220
+ if (a === t) break;
221
+ a = a.parentElement;
222
+ }
223
+ return !1;
224
+ }
225
+ //#endregion
226
+ //#region ../../node_modules/@silurus/ooxml/dist/line-distribute-IsUGfHXm.js
227
+ var A = {
228
+ 167: "♣",
229
+ 168: "♦",
230
+ 169: "♥",
231
+ 170: "♠",
232
+ 171: "↔",
233
+ 172: "←",
234
+ 173: "↑",
235
+ 174: "→",
236
+ 175: "↓",
237
+ 183: "•",
238
+ 184: "÷",
239
+ 185: "≠",
240
+ 180: "×",
241
+ 176: "°",
242
+ 177: "±",
243
+ 163: "≤",
244
+ 179: "≥"
245
+ }, j = {
246
+ 33: "✏",
247
+ 34: "✂",
248
+ 36: "👓",
249
+ 74: "☺",
250
+ 75: "😐",
251
+ 76: "☹",
252
+ 118: "❖",
253
+ 167: "▪",
254
+ 108: "●",
255
+ 110: "■",
256
+ 116: "◆",
257
+ 119: "◆",
258
+ 251: "✗",
259
+ 252: "✓",
260
+ 253: "☒",
261
+ 254: "☑",
262
+ 223: "←",
263
+ 224: "→",
264
+ 225: "↑",
265
+ 226: "↓",
266
+ 227: "↖",
267
+ 228: "↗",
268
+ 229: "↙",
269
+ 230: "↘"
270
+ };
271
+ function M(e) {
272
+ let t = {};
273
+ for (let n of Object.keys(e)) {
274
+ let r = Number(n);
275
+ t[r] = e[r], t[61440 + r] = e[r];
276
+ }
277
+ return t;
278
+ }
279
+ var N = M(A), P = M(j);
280
+ function F(e, t) {
281
+ if (!t) return e;
282
+ let n = t.trim().toLowerCase(), r = n === "wingdings" ? P : n === "symbol" ? N : null;
283
+ return r ? r[e.charCodeAt(0)] ?? e : e;
284
+ }
285
+ function I(e) {
286
+ if (!e) return !1;
287
+ let t = e.toLowerCase();
288
+ return t === "symbol" || t.includes("wingdings");
289
+ }
290
+ function L(e, t) {
291
+ if (!I(t) || e.length === 0) return [{
292
+ text: e,
293
+ mapped: !1
294
+ }];
295
+ let n = [], r = "", i = null;
296
+ for (let a of e) {
297
+ let e = F(a, t), o = e !== a;
298
+ i === null || o === i ? (i = o, r += e) : (n.push({
299
+ text: r,
300
+ mapped: i
301
+ }), i = o, r = e);
302
+ }
303
+ return r.length > 0 && n.push({
304
+ text: r,
305
+ mapped: i ?? !1
306
+ }), n;
307
+ }
308
+ function R(e, t, n, r, i) {
309
+ let a = Infinity, o = Infinity, s = -Infinity, c = -Infinity, l = (e, t) => {
310
+ !Number.isFinite(e) || !Number.isFinite(t) || (a = Math.min(a, e), o = Math.min(o, t), s = Math.max(s, e), c = Math.max(c, t));
311
+ };
312
+ for (let a of e) {
313
+ let e = 0, o = 0;
314
+ for (let s of a) switch (s.cmd) {
315
+ case "moveTo":
316
+ case "lineTo":
317
+ e = s.x, o = s.y, l(t + e * r, n + o * i);
318
+ break;
319
+ case "cubicBezTo":
320
+ l(t + s.x1 * r, n + s.y1 * i), l(t + s.x2 * r, n + s.y2 * i), e = s.x, o = s.y, l(t + e * r, n + o * i);
321
+ break;
322
+ case "quadBezTo":
323
+ l(t + s.x1 * r, n + s.y1 * i), e = s.x, o = s.y, l(t + e * r, n + o * i);
324
+ break;
325
+ case "arcTo": {
326
+ let a = Math.abs(s.wr * r), c = Math.abs(s.hr * i);
327
+ if (a <= 0 || c <= 0) break;
328
+ let u = s.stAng * Math.PI / 180, d = s.swAng * Math.PI / 180, f = t + e * r, p = n + o * i, m = f - a * Math.cos(u), h = p - c * Math.sin(u);
329
+ l(m - a, h - c), l(m + a, h + c);
330
+ let g = u + d;
331
+ e = (m + a * Math.cos(g) - t) / r, o = (h + c * Math.sin(g) - n) / i;
332
+ break;
333
+ }
334
+ case "close": break;
335
+ }
336
+ }
337
+ return Number.isFinite(a) ? {
338
+ x: a,
339
+ y: o,
340
+ w: s - a,
341
+ h: c - o
342
+ } : null;
343
+ }
344
+ function z(e, t, n, r, i, a) {
345
+ for (let o of t) {
346
+ let t = 0, s = 0;
347
+ for (let c of o) switch (c.cmd) {
348
+ case "moveTo":
349
+ e.moveTo(n + c.x * i, r + c.y * a), t = c.x, s = c.y;
350
+ break;
351
+ case "lineTo":
352
+ e.lineTo(n + c.x * i, r + c.y * a), t = c.x, s = c.y;
353
+ break;
354
+ case "cubicBezTo":
355
+ e.bezierCurveTo(n + c.x1 * i, r + c.y1 * a, n + c.x2 * i, r + c.y2 * a, n + c.x * i, r + c.y * a), t = c.x, s = c.y;
356
+ break;
357
+ case "quadBezTo":
358
+ e.quadraticCurveTo(n + c.x1 * i, r + c.y1 * a, n + c.x * i, r + c.y * a), t = c.x, s = c.y;
359
+ break;
360
+ case "arcTo": {
361
+ let o = c.wr * i, l = c.hr * a;
362
+ if (o <= 0 || l <= 0) break;
363
+ let u = c.stAng * Math.PI / 180, d = c.swAng * Math.PI / 180, f = n + t * i, p = r + s * a, m = f - o * Math.cos(u), h = p - l * Math.sin(u), g = u + d;
364
+ e.ellipse(m, h, o, l, 0, u, g, d < 0), t = (m + o * Math.cos(g) - n) / i, s = (h + l * Math.sin(g) - r) / a;
365
+ break;
366
+ }
367
+ case "close":
368
+ e.closePath();
369
+ break;
370
+ }
371
+ }
372
+ }
373
+ var B = 1e-9;
374
+ function V(e) {
375
+ return e.cmd === "lineTo" || e.cmd === "cubicBezTo" || e.cmd === "quadBezTo" || e.cmd === "arcTo";
376
+ }
377
+ function H(e, t, n, r) {
378
+ let i = n === 0 ? 0 : n, a = r === 0 ? 0 : r;
379
+ return {
380
+ x: e,
381
+ y: t,
382
+ dx: i,
383
+ dy: a,
384
+ angle: Math.atan2(a, i)
385
+ };
386
+ }
387
+ function U(e, t, n) {
388
+ switch (n.cmd) {
389
+ case "lineTo": return {
390
+ dx: n.x - e,
391
+ dy: n.y - t
392
+ };
393
+ case "cubicBezTo": {
394
+ let r = n.x1 - e, i = n.y1 - t;
395
+ return Math.abs(r) < B && Math.abs(i) < B && (r = n.x2 - e, i = n.y2 - t), Math.abs(r) < B && Math.abs(i) < B && (r = n.x - e, i = n.y - t), {
396
+ dx: r,
397
+ dy: i
398
+ };
399
+ }
400
+ case "quadBezTo": {
401
+ let r = n.x1 - e, i = n.y1 - t;
402
+ return Math.abs(r) < B && Math.abs(i) < B && (r = n.x - e, i = n.y - t), {
403
+ dx: r,
404
+ dy: i
405
+ };
406
+ }
407
+ case "arcTo": {
408
+ let e = n.stAng * Math.PI / 180, t = n.swAng < 0 ? -1 : 1;
409
+ return {
410
+ dx: -n.wr * Math.sin(e) * t,
411
+ dy: n.hr * Math.cos(e) * t
412
+ };
413
+ }
414
+ default: return {
415
+ dx: 0,
416
+ dy: 0
417
+ };
418
+ }
419
+ }
420
+ function W(e, t, n) {
421
+ switch (n.cmd) {
422
+ case "moveTo":
423
+ case "lineTo":
424
+ case "cubicBezTo":
425
+ case "quadBezTo": return {
426
+ x: n.x,
427
+ y: n.y
428
+ };
429
+ case "arcTo": {
430
+ if (n.wr <= 0 || n.hr <= 0) return {
431
+ x: e,
432
+ y: t
433
+ };
434
+ let r = n.stAng * Math.PI / 180, i = r + n.swAng * Math.PI / 180, a = e - n.wr * Math.cos(r), o = t - n.hr * Math.sin(r);
435
+ return {
436
+ x: a + n.wr * Math.cos(i),
437
+ y: o + n.hr * Math.sin(i)
438
+ };
439
+ }
440
+ default: return {
441
+ x: e,
442
+ y: t
443
+ };
444
+ }
445
+ }
446
+ function G(e, t, n) {
447
+ let { x: r, y: i } = W(e, t, n);
448
+ switch (n.cmd) {
449
+ case "lineTo": return {
450
+ dx: n.x - e,
451
+ dy: n.y - t,
452
+ x: r,
453
+ y: i
454
+ };
455
+ case "cubicBezTo": {
456
+ let a = n.x - n.x2, o = n.y - n.y2;
457
+ return Math.abs(a) < B && Math.abs(o) < B && (a = n.x - n.x1, o = n.y - n.y1), Math.abs(a) < B && Math.abs(o) < B && (a = n.x - e, o = n.y - t), {
458
+ dx: a,
459
+ dy: o,
460
+ x: r,
461
+ y: i
462
+ };
463
+ }
464
+ case "quadBezTo": {
465
+ let a = n.x - n.x1, o = n.y - n.y1;
466
+ return Math.abs(a) < B && Math.abs(o) < B && (a = n.x - e, o = n.y - t), {
467
+ dx: a,
468
+ dy: o,
469
+ x: r,
470
+ y: i
471
+ };
472
+ }
473
+ case "arcTo": {
474
+ if (n.wr <= 0 || n.hr <= 0) return {
475
+ dx: 0,
476
+ dy: 0,
477
+ x: r,
478
+ y: i
479
+ };
480
+ let e = n.stAng * Math.PI / 180 + n.swAng * Math.PI / 180, t = n.swAng < 0 ? -1 : 1;
481
+ return {
482
+ dx: -n.wr * Math.sin(e) * t,
483
+ dy: n.hr * Math.cos(e) * t,
484
+ x: r,
485
+ y: i
486
+ };
487
+ }
488
+ default: return {
489
+ dx: 0,
490
+ dy: 0,
491
+ x: r,
492
+ y: i
493
+ };
494
+ }
495
+ }
496
+ function K(e) {
497
+ let t = 0, n = 0, r = !1;
498
+ for (let i of e) i.cmd === "moveTo" && (r = !0), {x: t, y: n} = W(t, n, i);
499
+ return r ? {
500
+ x: t,
501
+ y: n
502
+ } : null;
503
+ }
504
+ function q(e) {
505
+ if (e.some((e) => e.cmd === "close")) return !0;
506
+ let t = e.find((e) => e.cmd === "moveTo");
507
+ if (!t) return !1;
508
+ let n = K(e);
509
+ return !n || !e.some(V) ? !1 : Math.abs(n.x - t.x) < B && Math.abs(n.y - t.y) < B;
510
+ }
511
+ function J(e) {
512
+ let t = {
513
+ start: null,
514
+ end: null
515
+ };
516
+ if (!e || e.length === 0) return t;
517
+ let n = e[0];
518
+ if (n && n.length > 0 && !q(n)) {
519
+ let e = n.find((e) => e.cmd === "moveTo"), r = n.find(V);
520
+ if (e && r) {
521
+ let n = U(e.x, e.y, r);
522
+ (Math.abs(n.dx) > B || Math.abs(n.dy) > B) && (t.start = H(e.x, e.y, -n.dx, -n.dy));
523
+ }
524
+ }
525
+ let r = e[e.length - 1];
526
+ if (r && r.length > 0 && !q(r)) {
527
+ let e = 0, n = 0, i = -1;
528
+ for (let e = 0; e < r.length; e++) V(r[e]) && (i = e);
529
+ if (i >= 0) {
530
+ for (let t = 0; t < i; t++) ({x: e, y: n} = W(e, n, r[t]));
531
+ let a = G(e, n, r[i]);
532
+ (Math.abs(a.dx) > B || Math.abs(a.dy) > B) && (t.end = H(a.x, a.y, a.dx, a.dy));
533
+ }
534
+ }
535
+ return t;
536
+ }
537
+ function Y(e, t, n, r, i, a, o, s = -Math.PI / 2) {
538
+ let c = a * 2;
539
+ for (let l = 0; l < c; l++) {
540
+ let c = s + l * Math.PI / a, u = l % 2 == 0 ? 1 : o, d = t + r * u * Math.cos(c), f = n + i * u * Math.sin(c);
541
+ l === 0 ? e.moveTo(d, f) : e.lineTo(d, f);
542
+ }
543
+ e.closePath();
544
+ }
545
+ function X(e, t, n, r, i, a, o = -Math.PI / 2) {
546
+ for (let s = 0; s < a; s++) {
547
+ let c = o + s * 2 * Math.PI / a, l = t + r * Math.cos(c), u = n + i * Math.sin(c);
548
+ s === 0 ? e.moveTo(l, u) : e.lineTo(l, u);
549
+ }
550
+ e.closePath();
551
+ }
552
+ function Z(e, t, n, r, i, a, o) {
553
+ let s = (e) => Math.atan2(r * Math.sin(e), i * Math.cos(e)), c = s(a), l = s(a + o), u = t - r * Math.cos(c), d = n - i * Math.sin(c);
554
+ return e.ellipse(u, d, Math.abs(r), Math.abs(i), 0, c, l, o < 0), {
555
+ x: u + r * Math.cos(l),
556
+ y: d + i * Math.sin(l)
557
+ };
558
+ }
559
+ var ee = {
560
+ oval: "ellipse",
561
+ rtriangle: "rttriangle",
562
+ roundrectangle: "roundrect",
563
+ flowchartsumingjunction: "flowchartsummingjunction"
564
+ }, te = new Set(/* @__PURE__ */ "ellipse.rttriangle.triangle.diamond.trapezoid.roundrect.snip1rect.frame.irregularseal1.irregularseal2.star4.star8.star12.star16.star24.star32.line.straightconnector1.callout1.bordercallout1.leftuparrow.quadarrowcallout.mathequal.mathplus.mathminus.flowchartdecision.flowchartmanualinput.flowchartconnector.flowchartinputoutput.flowchartmerge.flowchartextract.flowchartpreparation.flowchartcollate".split(".")), ne = new Set([
565
+ "accentcallout1",
566
+ "accentbordercallout1",
567
+ "flowchartpredefinedprocess",
568
+ "flowchartsort",
569
+ "flowchartinternalstorage",
570
+ "flowchartsummingjunction"
571
+ ]), re = new Set([
572
+ "round2samerect",
573
+ "round2diagrect",
574
+ "dodecagon",
575
+ "star10"
576
+ ]);
577
+ function ie(e, t, n, r, i, a, o = null, c = null, l = null, u = null) {
578
+ let d = n + i / 2, f = r + a / 2;
579
+ {
580
+ let d = t.toLowerCase(), f = ee[d] ?? d;
581
+ if ((te.has(f) || ne.has(f) || re.has(f)) && s(e, f, n, r, i, a, [
582
+ o,
583
+ c,
584
+ l,
585
+ u
586
+ ])) return;
587
+ }
588
+ switch (t.toLowerCase()) {
589
+ case "parallelogram": {
590
+ let t = i * Math.min(.5, (o ?? 25e3) / 1e5);
591
+ e.moveTo(n + t, r), e.lineTo(n + i, r), e.lineTo(n + i - t, r + a), e.lineTo(n, r + a), e.closePath();
592
+ break;
593
+ }
594
+ case "pentagon":
595
+ X(e, d, f, i / 2, a / 2, 5);
596
+ break;
597
+ case "hexagon":
598
+ X(e, d, f, i / 2, a / 2, 6, 0);
599
+ break;
600
+ case "heptagon":
601
+ X(e, d, f, i / 2, a / 2, 7);
602
+ break;
603
+ case "octagon":
604
+ X(e, d, f, i / 2, a / 2, 8, -Math.PI / 8);
605
+ break;
606
+ case "decagon":
607
+ X(e, d, f, i / 2, a / 2, 10);
608
+ break;
609
+ case "star5":
610
+ case "star":
611
+ Y(e, d, f, i / 2, a / 2, 5, (o ?? 19098) / 5e4);
612
+ break;
613
+ case "star6":
614
+ Y(e, d, f, i / 2, a / 2, 6, (o ?? 28868) / 5e4, 0);
615
+ break;
616
+ case "star7":
617
+ Y(e, d, f, i / 2, a / 2, 7, (o ?? 34142) / 5e4);
618
+ break;
619
+ case "rightarrow": {
620
+ let t = a * Math.min(1, (o ?? 5e4) / 1e5), s = i * Math.min(1, (c ?? 5e4) / 1e5), l = r + (a - t) / 2;
621
+ e.moveTo(n, l), e.lineTo(n + i - s, l), e.lineTo(n + i - s, r), e.lineTo(n + i, f), e.lineTo(n + i - s, r + a), e.lineTo(n + i - s, l + t), e.lineTo(n, l + t), e.closePath();
622
+ break;
623
+ }
624
+ case "leftarrow": {
625
+ let t = a * Math.min(1, (o ?? 5e4) / 1e5), s = i * Math.min(1, (c ?? 5e4) / 1e5), l = r + (a - t) / 2;
626
+ e.moveTo(n + i, l), e.lineTo(n + s, l), e.lineTo(n + s, r), e.lineTo(n, f), e.lineTo(n + s, r + a), e.lineTo(n + s, l + t), e.lineTo(n + i, l + t), e.closePath();
627
+ break;
628
+ }
629
+ case "uparrow": {
630
+ let t = i * Math.min(1, (o ?? 5e4) / 1e5), s = a * Math.min(1, (c ?? 5e4) / 1e5), l = n + (i - t) / 2;
631
+ e.moveTo(d, r), e.lineTo(n + i, r + s), e.lineTo(l + t, r + s), e.lineTo(l + t, r + a), e.lineTo(l, r + a), e.lineTo(l, r + s), e.lineTo(n, r + s), e.closePath();
632
+ break;
633
+ }
634
+ case "downarrow": {
635
+ let t = i * Math.min(1, (o ?? 5e4) / 1e5), s = a * Math.min(1, (c ?? 5e4) / 1e5), l = n + (i - t) / 2;
636
+ e.moveTo(d, r + a), e.lineTo(n + i, r + a - s), e.lineTo(l + t, r + a - s), e.lineTo(l + t, r), e.lineTo(l, r), e.lineTo(l, r + a - s), e.lineTo(n, r + a - s), e.closePath();
637
+ break;
638
+ }
639
+ case "leftrightarrow": {
640
+ let t = a * Math.min(1, (o ?? 5e4) / 1e5), s = i * Math.min(.5, (c ?? 25e3) / 1e5), l = r + (a - t) / 2;
641
+ e.moveTo(n, f), e.lineTo(n + s, r), e.lineTo(n + s, l), e.lineTo(n + i - s, l), e.lineTo(n + i - s, r), e.lineTo(n + i, f), e.lineTo(n + i - s, r + a), e.lineTo(n + i - s, l + t), e.lineTo(n + s, l + t), e.lineTo(n + s, r + a), e.closePath();
642
+ break;
643
+ }
644
+ case "updownarrow": {
645
+ let t = i * Math.min(1, (o ?? 5e4) / 1e5), s = a * Math.min(.5, (c ?? 25e3) / 1e5), l = n + (i - t) / 2;
646
+ e.moveTo(d, r), e.lineTo(n + i, r + s), e.lineTo(l + t, r + s), e.lineTo(l + t, r + a - s), e.lineTo(n + i, r + a - s), e.lineTo(d, r + a), e.lineTo(n, r + a - s), e.lineTo(l, r + a - s), e.lineTo(l, r + s), e.lineTo(n, r + s), e.closePath();
647
+ break;
648
+ }
649
+ case "notchedrightarrow": {
650
+ let t = a * Math.min(1, (o ?? 5e4) / 1e5), s = i * Math.min(1, (c ?? 35e3) / 1e5), l = r + (a - t) / 2, u = s * .43;
651
+ e.moveTo(n, l), e.lineTo(n + i - s, l), e.lineTo(n + i - s, r), e.lineTo(n + i, f), e.lineTo(n + i - s, r + a), e.lineTo(n + i - s, l + t), e.lineTo(n, l + t), e.lineTo(n + u, f), e.closePath();
652
+ break;
653
+ }
654
+ case "chevron": {
655
+ let t = i * Math.min(1, Math.max(0, (o ?? 5e4) / 1e5));
656
+ e.moveTo(n, r), e.lineTo(n + t, r), e.lineTo(n + i, f), e.lineTo(n + t, r + a), e.lineTo(n, r + a), t > 0 && e.lineTo(n + t, f), e.closePath();
657
+ break;
658
+ }
659
+ case "homeplate": {
660
+ let t = a * .4;
661
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a - t), e.lineTo(d, r + a), e.lineTo(n, r + a - t), e.closePath();
662
+ break;
663
+ }
664
+ case "leftbracket": {
665
+ let t = Math.min(a * Math.min(5e4, Math.max(0, o ?? 8333)) / 1e5, a / 2);
666
+ e.moveTo(n + i, r), e.quadraticCurveTo(n, r, n, r + t), a - 2 * t > .5 && e.lineTo(n, r + a - t), e.quadraticCurveTo(n, r + a, n + i, r + a);
667
+ break;
668
+ }
669
+ case "rightbracket": {
670
+ let t = Math.min(a * Math.min(5e4, Math.max(0, o ?? 8333)) / 1e5, a / 2);
671
+ e.moveTo(n, r), e.quadraticCurveTo(n + i, r, n + i, r + t), a - 2 * t > .5 && e.lineTo(n + i, r + a - t), e.quadraticCurveTo(n + i, r + a, n, r + a);
672
+ break;
673
+ }
674
+ case "leftbrace": {
675
+ let t = f, o = i * .45;
676
+ e.moveTo(n + i, r), e.bezierCurveTo(n + i - o, r, n + i - o, t - a * .08, n, t), e.bezierCurveTo(n + i - o, t + a * .08, n + i - o, r + a, n + i, r + a);
677
+ break;
678
+ }
679
+ case "rightbrace": {
680
+ let t = f, o = i * .45;
681
+ e.moveTo(n, r), e.bezierCurveTo(n + o, r, n + o, t - a * .08, n + i, t), e.bezierCurveTo(n + o, t + a * .08, n + o, r + a, n, r + a);
682
+ break;
683
+ }
684
+ case "wedgerectcallout": {
685
+ e.rect(n, r, i, a * .8);
686
+ let t = n + i * .2, o = r + a;
687
+ e.moveTo(n + i * .1, r + a * .8), e.lineTo(t, o), e.lineTo(n + i * .3, r + a * .8), e.closePath();
688
+ break;
689
+ }
690
+ case "wedgeellipsecallout": {
691
+ let t = (o ?? -2e4) / 1e5 * i, n = (c ?? 12e4) / 1e5 * a, r = d + t, s = f + n;
692
+ e.ellipse(d, f, i / 2, a / 2, 0, 0, Math.PI * 2);
693
+ let l = Math.atan2(n, t), u = Math.PI / 10, p = i / 2, m = a / 2, h = d + p * Math.cos(l - u), g = f + m * Math.sin(l - u), _ = d + p * Math.cos(l + u), v = f + m * Math.sin(l + u);
694
+ e.moveTo(h, g), e.lineTo(r, s), e.lineTo(_, v), e.closePath();
695
+ break;
696
+ }
697
+ case "cloudcallout": {
698
+ let t = Math.min(i, a) * .22, n = [
699
+ [d - i * .25, r + a * .35],
700
+ [d - i * .1, r + a * .15],
701
+ [d + i * .1, r + a * .1],
702
+ [d + i * .28, r + a * .2],
703
+ [d + i * .35, r + a * .4]
704
+ ];
705
+ e.moveTo(n[0][0] - t, n[0][1]);
706
+ for (let [r, i] of n) e.arc(r, i, t, Math.PI, 0);
707
+ e.arc(d, r + a * .65, i * .45, 0, Math.PI), e.closePath();
708
+ let s = d + (o ?? -2e4) / 1e5 * i, l = f + (c ?? 12e4) / 1e5 * a;
709
+ e.moveTo(d + i * .05, r + a * .8), e.arc(s, l, Math.min(i, a) * .07, 0, Math.PI * 2);
710
+ break;
711
+ }
712
+ case "bentconnector2":
713
+ case "bentconnector3":
714
+ case "bentconnector4":
715
+ case "bentconnector5":
716
+ case "curvedconnector2":
717
+ case "curvedconnector3":
718
+ case "curvedconnector4":
719
+ case "curvedconnector5":
720
+ e.moveTo(n, r), e.lineTo(n + i, r + a);
721
+ break;
722
+ case "heart":
723
+ e.moveTo(d, r + a * .32), e.bezierCurveTo(d, r, n + i * .05, r, n, r + a * .3), e.bezierCurveTo(n, r + a * .68, d - i * .05, r + a * .78, d, r + a), e.bezierCurveTo(d + i * .05, r + a * .78, n + i, r + a * .68, n + i, r + a * .3), e.bezierCurveTo(n + i - i * .05, r, d, r, d, r + a * .32);
724
+ break;
725
+ case "donut": {
726
+ let t = i / 2, n = a / 2, r = Math.min(t, n) * (o ?? 25e3) / 1e5, s = t - r, c = n - r;
727
+ e.ellipse(d, f, t, n, 0, 0, Math.PI * 2, !1), e.moveTo(d + s, f), e.ellipse(d, f, s, c, 0, 0, Math.PI * 2, !0);
728
+ break;
729
+ }
730
+ case "nosmoking":
731
+ case "nosmokingsign": {
732
+ let t = (o ?? 18750) / 1e5, n = i / 2, r = a / 2, s = n * (1 - 2 * t), c = r * (1 - 2 * t);
733
+ e.ellipse(d, f, n, r, 0, 0, Math.PI * 2, !1), e.moveTo(d + s, f), e.ellipse(d, f, s, c, 0, 0, Math.PI * 2, !0), e.moveTo(d + s, f), e.ellipse(d, f, s, c, 0, 0, Math.PI / 2, !1), e.lineTo(d - s, f), e.ellipse(d, f, s, c, 0, Math.PI, 3 * Math.PI / 2, !1), e.closePath();
734
+ break;
735
+ }
736
+ case "pie": {
737
+ let t = (o ?? 0) / 216e5 * Math.PI * 2, n = (c ?? 162e5) / 216e5 * Math.PI * 2;
738
+ e.moveTo(d, f), e.arc(d, f, Math.min(i, a) / 2, t, n), e.closePath();
739
+ break;
740
+ }
741
+ case "cloud": {
742
+ let t = a * .28;
743
+ e.arc(n + i * .25, r + a * .55, t, Math.PI, Math.PI * 1.8), e.arc(n + i * .45, r + a * .35, t * 1.1, Math.PI * 1.3, Math.PI * 1.9), e.arc(n + i * .65, r + a * .4, t, Math.PI * 1.5, Math.PI * 2), e.arc(n + i * .8, r + a * .6, t * .9, Math.PI * 1.6, Math.PI * .1), e.arc(n + i * .55, r + a * .75, t, 0, Math.PI * .7), e.arc(n + i * .25, r + a * .7, t * .9, 0, Math.PI), e.closePath();
744
+ break;
745
+ }
746
+ case "funnel":
747
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(d + i * .15, r + a), e.lineTo(d - i * .15, r + a), e.closePath();
748
+ break;
749
+ case "smileyface": {
750
+ e.ellipse(d, f, i / 2, a / 2, 0, 0, Math.PI * 2), e.closePath();
751
+ let t = i * .05, n = a * .05, r = f - a * .12;
752
+ e.moveTo(d - i * .2 + t, r), e.ellipse(d - i * .2, r, t, n, 0, 0, Math.PI * 2), e.moveTo(d + i * .2 + t, r), e.ellipse(d + i * .2, r, t, n, 0, 0, Math.PI * 2), e.moveTo(d - i * .25, f + a * .05), e.quadraticCurveTo(d, f + a * .3, d + i * .25, f + a * .05);
753
+ break;
754
+ }
755
+ case "document":
756
+ case "foldedcorner": {
757
+ let t = Math.min(i, a) * .15;
758
+ e.moveTo(n, r), e.lineTo(n + i - t, r), e.lineTo(n + i, r + t), e.lineTo(n + i, r + a), e.lineTo(n, r + a), e.closePath(), e.moveTo(n + i - t, r), e.lineTo(n + i - t, r + t), e.lineTo(n + i, r + t);
759
+ break;
760
+ }
761
+ case "snip2samerect": {
762
+ let t = Math.min(i, a) * Math.min(5e4, Math.max(0, o ?? 16667)) / 1e5;
763
+ e.moveTo(n, r), e.lineTo(n + i - t, r), e.lineTo(n + i, r + t), e.lineTo(n + i, r + a), e.lineTo(n + t, r + a), e.lineTo(n, r + a - t), e.closePath();
764
+ break;
765
+ }
766
+ case "snip2diagrect": {
767
+ let t = Math.min(i, a) * Math.min(5e4, Math.max(0, o ?? 16667)) / 1e5;
768
+ e.moveTo(n + t, r), e.lineTo(n + i - t, r), e.lineTo(n + i, r + t), e.lineTo(n + i, r + a - t), e.lineTo(n + i - t, r + a), e.lineTo(n + t, r + a), e.lineTo(n, r + a - t), e.lineTo(n, r + t), e.closePath();
769
+ break;
770
+ }
771
+ case "sniproundrect": {
772
+ let t = Math.min(i, a) * Math.min(5e4, Math.max(0, o ?? 16667)) / 1e5;
773
+ e.moveTo(n + t, r), e.lineTo(n + i - t, r), e.lineTo(n + i, r + t), e.lineTo(n + i, r + a), e.lineTo(n, r + a), e.quadraticCurveTo(n, r, n + t, r), e.closePath();
774
+ break;
775
+ }
776
+ case "round1rect": {
777
+ let t = Math.min(i, a) * Math.min(5e4, Math.max(0, o ?? 16667)) / 1e5;
778
+ e.moveTo(n + t, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a), e.lineTo(n, r + a), e.lineTo(n, r + t), e.quadraticCurveTo(n, r, n + t, r), e.closePath();
779
+ break;
780
+ }
781
+ case "plaque": {
782
+ let t = Math.min(i, a) * .25;
783
+ e.moveTo(n + t, r), e.lineTo(n + i - t, r), e.quadraticCurveTo(n + i, r, n + i, r + t), e.lineTo(n + i, r + a - t), e.quadraticCurveTo(n + i, r + a, n + i - t, r + a), e.lineTo(n + t, r + a), e.quadraticCurveTo(n, r + a, n, r + a - t), e.lineTo(n, r + t), e.quadraticCurveTo(n, r, n + t, r), e.closePath();
784
+ break;
785
+ }
786
+ case "can": {
787
+ let t = a * .1;
788
+ e.ellipse(d, r + t, i / 2, t, 0, 0, Math.PI * 2), e.moveTo(n, r + t), e.lineTo(n, r + a - t), e.ellipse(d, r + a - t, i / 2, t, 0, Math.PI, 2 * Math.PI), e.lineTo(n + i, r + t);
789
+ break;
790
+ }
791
+ case "cube": {
792
+ let t = Math.min(i, a) * .2;
793
+ e.moveTo(n + t, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a - t), e.lineTo(n + i - t, r + a), e.lineTo(n, r + a), e.lineTo(n, r + t), e.closePath(), e.moveTo(n + t, r), e.lineTo(n + t, r + t), e.lineTo(n + i - t, r + t), e.moveTo(n + t, r + t), e.lineTo(n, r + t);
794
+ break;
795
+ }
796
+ case "bevel": {
797
+ let t = Math.min(i, a) * .1;
798
+ e.rect(n, r, i, a), e.moveTo(n, r), e.lineTo(n + t, r + t), e.lineTo(n + i - t, r + t), e.lineTo(n + i, r), e.moveTo(n + i - t, r + t), e.lineTo(n + i - t, r + a - t), e.lineTo(n + i, r + a), e.moveTo(n + i - t, r + a - t), e.lineTo(n + t, r + a - t), e.lineTo(n, r + a), e.moveTo(n + t, r + a - t), e.lineTo(n + t, r + t);
799
+ break;
800
+ }
801
+ case "halfframe": {
802
+ let t = Math.min(i, a) * .25;
803
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + t), e.lineTo(n + t, r + t), e.lineTo(n + t, r + a), e.lineTo(n, r + a), e.closePath();
804
+ break;
805
+ }
806
+ case "corner": {
807
+ let t = Math.min(i, a) * .25;
808
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + t), e.lineTo(n + t, r + t), e.lineTo(n + t, r + a), e.lineTo(n, r + a), e.closePath();
809
+ break;
810
+ }
811
+ case "flowchartalternateprocess":
812
+ case "flowchartprocess": {
813
+ let t = Math.min(i, a) * Math.min(5e4, Math.max(0, o ?? 16667)) / 1e5;
814
+ e.roundRect(n, r, i, a, [{
815
+ x: t,
816
+ y: t
817
+ }]);
818
+ break;
819
+ }
820
+ case "flowchartterminator": {
821
+ let t = Math.min(i, a) / 2;
822
+ e.roundRect(n, r, i, a, [{
823
+ x: t,
824
+ y: t
825
+ }]);
826
+ break;
827
+ }
828
+ case "flowchartdocument": {
829
+ let t = a * .1;
830
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a - t), e.bezierCurveTo(n + i * .75, r + a, n + i * .25, r + a - t * 2, n, r + a - t), e.closePath();
831
+ break;
832
+ }
833
+ case "moon":
834
+ e.arc(d, f, Math.min(i, a) / 2, -Math.PI / 2, Math.PI / 2), e.arc(d - i * .2, f, Math.min(i, a) / 2, Math.PI / 2, -Math.PI / 2, !0), e.closePath();
835
+ break;
836
+ case "arc": {
837
+ let t = 216e5, n = (o ?? 162e5) / t * Math.PI * 2, r = (c ?? 54e5) / t * Math.PI * 2;
838
+ e.ellipse(d, f, i / 2, a / 2, 0, n, n + r, r < 0);
839
+ break;
840
+ }
841
+ case "mathmultiply": {
842
+ let t = Math.min(i, a) * Math.min(51965, Math.max(0, o ?? 23520)) / 1e5, s = Math.atan2(a, i), c = Math.sin(s), l = Math.cos(s), u = t / 2 * c, d = t / 2 * l;
843
+ e.moveTo(n + u, r - d), e.lineTo(n - u, r + d), e.lineTo(n + i - u, r + a + d), e.lineTo(n + i + u, r + a - d), e.closePath(), e.moveTo(n + i - u, r - d), e.lineTo(n + i + u, r + d), e.lineTo(n + u, r + a + d), e.lineTo(n - u, r + a - d), e.closePath();
844
+ break;
845
+ }
846
+ case "mathdivide": {
847
+ let t = Math.min(36745, Math.max(1e3, o ?? 23520)), n = (73490 + -t) / 4, s = 36745 * i / a, u = Math.min(Math.min(n, s), Math.max(1e3, l ?? 11760)), p = 73490 + 4 * u - t, m = Math.min(p, Math.max(0, c ?? 5880)), h = a * t / 2e5, g = a * m / 1e5, _ = a * u / 1e5, v = i * 73490 / 2e5, y = f - h, b = f + h, x = y - (g + _) - _, S = r + a - x, C = d - v, w = d + v;
848
+ e.rect(C, y, w - C, b - y), e.moveTo(d + _, x + _), e.arc(d, x + _, _, 0, Math.PI * 2), e.moveTo(d + _, S - _), e.arc(d, S - _, _, 0, Math.PI * 2);
849
+ break;
850
+ }
851
+ case "quadarrow": {
852
+ let t = i * (o ?? 23e3) / 1e5, s = i * (c ?? 3e4) / 1e5, l = n + (i - t) / 2, u = r + (a - t) / 2;
853
+ e.moveTo(d, r), e.lineTo(n + i - s, r + s), e.lineTo(n + i - s, u), e.lineTo(l + t, u), e.lineTo(l + t, r + s), e.lineTo(n + s, r + s), e.lineTo(n + i, f), e.lineTo(n + i - s, r + a - s), e.lineTo(l + t, r + a - s), e.lineTo(l + t, u + t), e.lineTo(n + i - s, u + t), e.lineTo(n + i - s, r + a - s), e.lineTo(d, r + a), e.lineTo(n + s, r + a - s), e.lineTo(n + s, u + t), e.lineTo(l, u + t), e.lineTo(l, r + a - s), e.lineTo(n, f), e.lineTo(n + s, r + s), e.lineTo(l, r + s), e.lineTo(l, u), e.lineTo(n + s, u), e.closePath();
854
+ break;
855
+ }
856
+ case "wave": {
857
+ let t = a * (o ?? 12500) / 1e5, s = r + t, c = r + a - t;
858
+ e.moveTo(n, s), e.bezierCurveTo(n + i * .25, r, n + i * .25, r + t * 2, n + i * .5, s), e.bezierCurveTo(n + i * .75, r + t * 2, n + i * .75, r, n + i, s), e.lineTo(n + i, c), e.bezierCurveTo(n + i * .75, r + a, n + i * .75, r + a - t * 2, n + i * .5, c), e.bezierCurveTo(n + i * .25, r + a - t * 2, n + i * .25, r + a, n, c), e.closePath();
859
+ break;
860
+ }
861
+ case "doublewave": {
862
+ let t = a * (o ?? 6250) / 1e5, s = r + t, c = r + a - t;
863
+ e.moveTo(n, s), e.bezierCurveTo(n + i * .25, r, n + i * .25, r + t * 2, n + i * .5, s), e.bezierCurveTo(n + i * .75, r + t * 2, n + i * .75, r, n + i, s), e.lineTo(n + i, c), e.bezierCurveTo(n + i * .75, r + a, n + i * .75, r + a - t * 2, n + i * .5, c), e.bezierCurveTo(n + i * .25, r + a - t * 2, n + i * .25, r + a, n, c), e.closePath();
864
+ break;
865
+ }
866
+ case "sun": {
867
+ let t = Math.min(i, a) / 2, n = t * ((o ?? 25e3) / 1e5 + .5), r = Math.min(n, t * .9), s = Math.PI / 16;
868
+ for (let n = 0; n < 8; n++) {
869
+ let i = n / 8 * Math.PI * 2;
870
+ e.moveTo(d + r * Math.cos(i - s), f + r * Math.sin(i - s)), e.lineTo(d + t * Math.cos(i), f + t * Math.sin(i)), e.lineTo(d + r * Math.cos(i + s), f + r * Math.sin(i + s)), e.closePath();
871
+ }
872
+ e.moveTo(d + r, f), e.arc(d, f, r, 0, Math.PI * 2);
873
+ break;
874
+ }
875
+ case "lightningbolt":
876
+ e.moveTo(d + i * .1, r), e.lineTo(n, f - a * .05), e.lineTo(d + i * .05, f - a * .05), e.lineTo(d - i * .1, r + a), e.lineTo(n + i, f + a * .05), e.lineTo(d - i * .05, f + a * .05), e.closePath();
877
+ break;
878
+ case "bracketpair": {
879
+ let t = a * Math.min(5e4, Math.max(0, o ?? 8333)) / 1e5;
880
+ e.moveTo(n + i * .4, r), e.quadraticCurveTo(n, r, n, r + t), a - 2 * t > 0 && e.lineTo(n, r + a - t), e.quadraticCurveTo(n, r + a, n + i * .4, r + a), e.moveTo(n + i * .6, r), e.quadraticCurveTo(n + i, r, n + i, r + t), a - 2 * t > 0 && e.lineTo(n + i, r + a - t), e.quadraticCurveTo(n + i, r + a, n + i * .6, r + a);
881
+ break;
882
+ }
883
+ case "bracepair": {
884
+ let t = i * .2;
885
+ e.moveTo(n + i * .4, r), e.bezierCurveTo(n + i * .4 - t, r, n + i * .4 - t, f - a * .08, n, f), e.bezierCurveTo(n + i * .4 - t, f + a * .08, n + i * .4 - t, r + a, n + i * .4, r + a), e.moveTo(n + i * .6, r), e.bezierCurveTo(n + i * .6 + t, r, n + i * .6 + t, f - a * .08, n + i, f), e.bezierCurveTo(n + i * .6 + t, f + a * .08, n + i * .6 + t, r + a, n + i * .6, r + a);
886
+ break;
887
+ }
888
+ case "chord": {
889
+ let t = (o ?? 27e5) / 216e5 * Math.PI * 2, n = (c ?? 162e5) / 216e5 * Math.PI * 2;
890
+ e.ellipse(d, f, i / 2, a / 2, 0, t, n), e.closePath();
891
+ break;
892
+ }
893
+ case "blockarc": {
894
+ let t = Math.min(i, a) / 2, n = o ?? 108e5, r = c ?? 0, s = t * (1 - (l ?? 25e3) / 1e5), u = n / 216e5 * Math.PI * 2, p = r / 216e5 * Math.PI * 2;
895
+ e.arc(d, f, t, u, p, !1), e.arc(d, f, s, p, u, !0), e.closePath();
896
+ break;
897
+ }
898
+ case "teardrop": {
899
+ let t = Math.min(i, a) * .4, o = n + t, s = r + a - t;
900
+ e.arc(o, s, t, 0, Math.PI * 2 * .75), e.bezierCurveTo(o - t * .1, s - t, n + i - t, r + t, n + i, r), e.bezierCurveTo(n + i - t * .2, r + t * .5, o + t, s - t * 1.1, o + t, s), e.closePath();
901
+ break;
902
+ }
903
+ case "diagstripe": {
904
+ let t = a * (o ?? 5e4) / 1e5 * i / a;
905
+ e.moveTo(n + t, r), e.lineTo(n + i, r), e.lineTo(n + i - t, r + a), e.lineTo(n, r + a), e.closePath();
906
+ break;
907
+ }
908
+ case "wedgeroundrectcallout": {
909
+ let t = Math.min(i, a) * .1;
910
+ e.roundRect(n, r, i, a * .85, t), e.moveTo(n + i * .1, r + a * .85), e.lineTo(n + i * .2, r + a), e.lineTo(n + i * .3, r + a * .85), e.closePath();
911
+ break;
912
+ }
913
+ case "rightarrowcallout": {
914
+ let t = a * (o ?? 5e4) / 1e5, s = i * (c ?? 5e4) / 1e5, l = r + (a - t) / 2;
915
+ e.rect(n, l, s, t), e.moveTo(n + s, r), e.lineTo(n + i, f), e.lineTo(n + s, r + a), e.closePath();
916
+ break;
917
+ }
918
+ case "leftarrowcallout": {
919
+ let t = a * (o ?? 5e4) / 1e5, s = i * (c ?? 5e4) / 1e5, l = r + (a - t) / 2;
920
+ e.rect(n + i - s, l, s, t), e.moveTo(n + i - s, r), e.lineTo(n, f), e.lineTo(n + i - s, r + a), e.closePath();
921
+ break;
922
+ }
923
+ case "uparrowcallout": {
924
+ let t = i * (o ?? 5e4) / 1e5, s = a * (c ?? 5e4) / 1e5, l = n + (i - t) / 2;
925
+ e.rect(l, r + s, t, a - s), e.moveTo(n, r + s), e.lineTo(d, r), e.lineTo(n + i, r + s), e.closePath();
926
+ break;
927
+ }
928
+ case "downarrowcallout": {
929
+ let t = i * (o ?? 5e4) / 1e5, s = a * (c ?? 5e4) / 1e5, l = n + (i - t) / 2;
930
+ e.rect(l, r, t, a - s), e.moveTo(n, r + a - s), e.lineTo(d, r + a), e.lineTo(n + i, r + a - s), e.closePath();
931
+ break;
932
+ }
933
+ case "leftrightarrowcallout": {
934
+ let t = a * (o ?? 5e4) / 1e5, s = i * (c ?? 25e3) / 1e5, l = r + (a - t) / 2;
935
+ e.rect(n + s, l, i - 2 * s, t), e.moveTo(n + s, r), e.lineTo(n, f), e.lineTo(n + s, r + a), e.closePath(), e.moveTo(n + i - s, r), e.lineTo(n + i, f), e.lineTo(n + i - s, r + a), e.closePath();
936
+ break;
937
+ }
938
+ case "leftrightuparrow": {
939
+ let t = i * (o ?? 25e3) / 1e5, s = a * (c ?? 3e4) / 1e5, l = n + (i - t) / 2;
940
+ e.moveTo(d, r), e.lineTo(n + i, r + s), e.lineTo(l + t, r + s), e.lineTo(l + t, r + a), e.lineTo(l, r + a), e.lineTo(l, r + s), e.lineTo(n, r + s), e.closePath();
941
+ break;
942
+ }
943
+ case "uturnarrow": {
944
+ let t = i * (o ?? 25e3) / 1e5, s = (i - t) / 2, c = Math.max(0, s - t), l = n + t + s, u = r + t + s, d = t * 2, f = r + a - t * 2.5;
945
+ e.moveTo(n, r + a), e.lineTo(n, u), e.arc(l, u, s, Math.PI, 0), e.lineTo(n + i, f), e.lineTo(n + i + (d - t) / 2, f), e.lineTo(l + t / 2, r + a), e.lineTo(n + i - (d - t) / 2 - t, f), e.lineTo(n + i - t, f), e.lineTo(n + i - t, u), e.arc(l, u, c, 0, Math.PI, !0), e.lineTo(n + t, r + a), e.closePath();
946
+ break;
947
+ }
948
+ case "bentarrow":
949
+ case "bentuparrow": {
950
+ let t = Math.min(i, a) * .25;
951
+ e.moveTo(n, f - t / 2), e.lineTo(n + i - t * 2, f - t / 2), e.lineTo(n + i - t * 2, r + t), e.lineTo(n + i, f), e.lineTo(n + i - t * 2, r + a - t), e.lineTo(n + i - t * 2, f + t / 2), e.lineTo(n, f + t / 2), e.closePath();
952
+ break;
953
+ }
954
+ case "plus": {
955
+ let t = Math.min(i, a) * (o ?? 25e3) / 1e5;
956
+ e.rect(d - t, r, 2 * t, a), e.rect(n, f - t, i, 2 * t);
957
+ break;
958
+ }
959
+ case "mathnotequal": {
960
+ let t = Math.min(5e4, Math.max(0, o ?? 23520)), n = Math.min(66e5, Math.max(42e5, c ?? 66e5)), s = Math.min(1e5 - 2 * t, Math.max(0, l ?? 11760)), u = a * t / 1e5, p = a * s / 2e5, m = i * 73490 / 2e5, h = a / 2, g = (n / 6e4 - 90) * Math.PI / 180, _ = h * Math.tan(g), v = Math.hypot(_, h) * u / h;
961
+ e.rect(d - m, f - p - u, 2 * m, u), e.rect(d - m, f + p, 2 * m, u), e.moveTo(d + _ - v / 2, r), e.lineTo(d + _ + v / 2, r), e.lineTo(d - _ + v / 2, r + a), e.lineTo(d - _ - v / 2, r + a), e.closePath();
962
+ break;
963
+ }
964
+ case "flowchartdelay": {
965
+ let t = a / 2;
966
+ e.moveTo(n, r), e.lineTo(n + i - t, r), e.arc(n + i - t, f, t, -Math.PI / 2, Math.PI / 2), e.lineTo(n, r + a), e.closePath();
967
+ break;
968
+ }
969
+ case "flowchartdisplay": {
970
+ let t = i * .2, o = i * .15;
971
+ e.moveTo(n + t, r), e.lineTo(n + i - o, r), e.arc(n + i - o, f, a / 2, -Math.PI / 2, Math.PI / 2), e.lineTo(n + t, r + a), e.lineTo(n, f), e.closePath();
972
+ break;
973
+ }
974
+ case "flowchartpunchedcard": {
975
+ let t = i * .2;
976
+ e.moveTo(n + t, r), e.lineTo(n + i, r), e.lineTo(n + i - t, r + a), e.lineTo(n, r + a), e.closePath();
977
+ break;
978
+ }
979
+ case "flowchartoffpageconnector": {
980
+ let t = a * .3;
981
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a - t), e.lineTo(d, r + a), e.lineTo(n, r + a - t), e.closePath();
982
+ break;
983
+ }
984
+ case "flowchartonlinestorage":
985
+ case "flowchartmanuallabel":
986
+ case "flowchartpuncheddisk":
987
+ e.rect(n, r, i, a);
988
+ break;
989
+ case "horizontalscroll": {
990
+ let t = Math.min(i, a) * .15;
991
+ e.roundRect(n + t, r, i - t, a, t), e.moveTo(n + t, r + t * 2), e.arc(n + t, r + t, t, Math.PI / 2, Math.PI * 2.5);
992
+ break;
993
+ }
994
+ case "verticalscroll": {
995
+ let t = Math.min(i, a) * .15;
996
+ e.roundRect(n, r + t, i, a - t, t), e.moveTo(n + t * 2, r + t), e.arc(n + t, r + t, t, 0, Math.PI * 2);
997
+ break;
998
+ }
999
+ case "ribbon": {
1000
+ let t = Math.min(33333, Math.max(0, o ?? 16667)), s = i * Math.min(75e3, Math.max(25e3, c ?? 5e4)) / 2e5, l = i / 8, u = i / 32, d = i / 2 - s, f = i / 2 + s, p = d + u, m = f - u, h = d + l, g = f - l, _ = h - u, v = g + u, y = i - l, b = a * t / 2e5, x = a * t / 1e5, S = a - x, C = S / 2;
1001
+ e.moveTo(n, r), e.lineTo(n + _, r), e.lineTo(n + p, r + b), e.lineTo(n + m, r + x), e.lineTo(n + v, r + b), e.lineTo(n + i, r), e.lineTo(n + y, r + C), e.lineTo(n + i, r + S), e.lineTo(n + f, r + S), e.lineTo(n + f, r + a), e.lineTo(n + p, r + a), e.lineTo(n + d, r + S), e.lineTo(n, r + S), e.lineTo(n + l, r + C), e.closePath();
1002
+ break;
1003
+ }
1004
+ case "ribbon2": {
1005
+ let t = Math.min(33333, Math.max(0, o ?? 16667)), s = i * Math.min(75e3, Math.max(25e3, c ?? 5e4)) / 2e5, l = i / 8, u = i / 32, d = i / 2 - s, f = i / 2 + s, p = d + u, m = f - u, h = d + l, g = f - l, _ = h - u, v = g + u, y = i - l, b = a * t / 2e5, x = a * t / 1e5, S = a - b, C = a - x, w = x, T = (w + a) / 2;
1006
+ e.moveTo(n, r + a), e.lineTo(n + _, r + a), e.lineTo(n + p, r + S), e.lineTo(n + m, r + C), e.lineTo(n + v, r + S), e.lineTo(n + i, r + a), e.lineTo(n + y, r + T), e.lineTo(n + i, r + w), e.lineTo(n + f, r + w), e.lineTo(n + f, r), e.lineTo(n + p, r), e.lineTo(n + d, r + w), e.lineTo(n, r + w), e.lineTo(n + l, r + T), e.closePath();
1007
+ break;
1008
+ }
1009
+ case "ellipseribbon": {
1010
+ let t = Math.min(1e5, Math.max(0, o ?? 25e3)), s = Math.min(75e3, Math.max(25e3, c ?? 5e4)), u = Math.max(0, t - (1e5 - t) / 2), d = Math.min(t, Math.max(u, l ?? 12500)), f = i / 8, p = i * s / 2e5, m = i / 2 - p, h = m + f, g = i - h, _ = i - m, v = i - f, y = a * d / 1e5, b = 4 * y / i, x = b * (h - h * h / i), S = h / 2, C = b * S, w = i - S, T = a * t / 1e5, E = T - y, D = b * (m - m * m / i), O = D + E, k = y + E - O + y + E, A = a - T, j = (y * 14 / 16 + A) / 2, M = D + A, N = O + A, P = m / 2, F = b * P + A, I = i - P, L = k + A;
1011
+ e.moveTo(n, r), e.quadraticCurveTo(n + S, r + C, n + h, r + x), e.lineTo(n + m, r + O), e.quadraticCurveTo(n + i / 2, r + k, n + _, r + O), e.lineTo(n + g, r + x), e.quadraticCurveTo(n + w, r + C, n + i, r), e.lineTo(n + v, r + j), e.lineTo(n + i, r + A), e.quadraticCurveTo(n + I, r + F, n + _, r + M), e.lineTo(n + _, r + N), e.quadraticCurveTo(n + i / 2, r + L, n + m, r + N), e.lineTo(n + m, r + M), e.quadraticCurveTo(n + P, r + F, n, r + A), e.lineTo(n + f, r + j), e.closePath();
1012
+ break;
1013
+ }
1014
+ case "ellipseribbon2": {
1015
+ let t = Math.min(1e5, Math.max(0, o ?? 25e3)), s = Math.min(75e3, Math.max(25e3, c ?? 5e4)), u = Math.max(0, t - (1e5 - t) / 2), d = Math.min(t, Math.max(u, l ?? 12500)), f = i / 8, p = i * s / 2e5, m = i / 2 - p, h = m + f, g = i - h, _ = i - m, v = i - f, y = a * d / 1e5, b = 4 * y / i, x = a - b * (h - h * h / i), S = h / 2, C = a - b * S, w = i - S, T = a * t / 1e5, E = T - y, D = b * (m - m * m / i), O = D + E, k = a - O, A = y + E - O + y + E, j = a - A, M = a - T, N = a - (y * 14 / 16 + M) / 2, P = a - (D + M), F = a - (O + M), I = m / 2, L = a - (b * I + M), R = i - I, z = a - (A + M);
1016
+ e.moveTo(n, r + a), e.quadraticCurveTo(n + S, r + C, n + h, r + x), e.lineTo(n + m, r + k), e.quadraticCurveTo(n + i / 2, r + j, n + _, r + k), e.lineTo(n + g, r + x), e.quadraticCurveTo(n + w, r + C, n + i, r + a), e.lineTo(n + v, r + N), e.lineTo(n + i, r + T), e.quadraticCurveTo(n + R, r + L, n + _, r + P), e.lineTo(n + _, r + F), e.quadraticCurveTo(n + i / 2, r + z, n + m, r + F), e.lineTo(n + m, r + P), e.quadraticCurveTo(n + I, r + L, n, r + T), e.lineTo(n + f, r + N), e.closePath();
1017
+ break;
1018
+ }
1019
+ case "circulararrow": {
1020
+ let t = (c ?? 0) / 6e4 * Math.PI / 180, n = (o ?? 162e5) / 6e4 * Math.PI / 180, r = (l ?? 5e4) / 1e5, s = Math.min(i, a) / 2, u = s * (1 - r), p = (s + u) / 2, m = s - u, h = t + n;
1021
+ e.arc(d, f, s, t, h, !1), e.arc(d, f, u, h, t, !0), e.closePath();
1022
+ let g = Math.sin(h), _ = -Math.cos(h), v = m * 1.5, y = d + p * Math.cos(h) + v * g, b = f + p * Math.sin(h) + v * _;
1023
+ e.moveTo(y, b), e.lineTo(d + s * Math.cos(h), f + s * Math.sin(h)), e.lineTo(d + u * Math.cos(h), f + u * Math.sin(h)), e.closePath();
1024
+ break;
1025
+ }
1026
+ case "curvedrightarrow": {
1027
+ let t = Math.min(i, a), s = a / 2, u = 5e4 * a / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(d, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = s - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = 1e5 * (Math.sqrt(Math.max(0, h)) * i / (2 * m)) / t, _ = t * Math.min(g, Math.max(0, l ?? 25e3)) / 1e5, v = Math.sqrt(Math.max(0, i * i - _ * _)) * m / i, y = m + f, b = m + v, x = y + v, S = (p - f) / 2, C = b - S, w = x + S, T = a - p / 2, E = i - _, D = Math.atan2(_, v), O = -D, k = Math.PI - D;
1028
+ e.moveTo(n, r + m), Z(e, n, r + m, i, m, Math.PI, O), e.lineTo(n + E, r + C), e.lineTo(n + i, r + T), e.lineTo(n + E, r + w), e.lineTo(n + E, r + x), Z(e, n + E, r + x, i, m, k, D), e.closePath();
1029
+ break;
1030
+ }
1031
+ case "curvedleftarrow": {
1032
+ let t = Math.min(i, a), s = a / 2, u = 5e4 * a / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(d, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = s - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * i / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, l ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, i * i - v * v)) * m / i, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, E = a - p / 2, D = v, O = Math.atan2(v, y), k = f / 2, A = Math.atan2(k, g), j = A - O, M = O - A, N = -A;
1033
+ e.moveTo(n, r + E), e.lineTo(n + D, r + w), e.lineTo(n + D, r + x);
1034
+ let P = Z(e, n + D, r + x, i, m, O, j);
1035
+ Z(e, P.x, P.y, i, m, N, M), e.lineTo(n + D, r + T), e.closePath();
1036
+ break;
1037
+ }
1038
+ case "curveduparrow": {
1039
+ let t = Math.min(i, a), s = i / 2, u = 5e4 * i / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(1e5, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = s - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * a / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, l ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, a * a - v * v)) * m / a, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, E = i - p / 2, D = v, O = Math.atan2(v, y), k = f / 2, A = Math.atan2(k, g), j = A - O, M = O - A, N = Math.PI / 2 - O, P = Math.PI / 2 - A;
1040
+ e.moveTo(n + E, r), e.lineTo(n + T, r + D), e.lineTo(n + S, r + D);
1041
+ let F = Z(e, n + S, r + D, m, a, N, M);
1042
+ Z(e, F.x, F.y, m, a, P, j), e.lineTo(n + w, r + D), e.closePath();
1043
+ break;
1044
+ }
1045
+ case "curveddownarrow": {
1046
+ let t = Math.min(i, a), s = i / 2, u = 5e4 * i / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(1e5, Math.max(0, o ?? 25e3)) / 1e5, p = t * d / 1e5, m = s - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * a / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, l ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, a * a - v * v)) * m / a, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, E = i - p / 2, D = a - v, O = Math.atan2(v, y), k = f / 2, A = Math.atan2(k, g), j = 3 * Math.PI / 2 + O;
1047
+ 3 * Math.PI / 2 - A, A - Math.PI / 2, Math.PI / 2 - A, e.moveTo(n + E, r + a), e.lineTo(n + w, r + D), e.lineTo(n + x, r + D), Z(e, n + x, r + D, m, a, j, -O), e.lineTo(n + b, r), Z(e, n + b, r, m, a, 3 * Math.PI / 2, O), e.lineTo(n + T, r + D), e.closePath();
1048
+ break;
1049
+ }
1050
+ case "stripedrightarrow": {
1051
+ let t = Math.min(i, a), s = t / 32, l = t / 16, u = t / 8, d = t * (o ?? 5e4) / 1e5, p = i * (c ?? 5e4) / 1e5, m = f - d / 2, h = f + d / 2, g = n + i - p;
1052
+ e.rect(n, m, s, d), e.rect(n + l, m, l, d), e.rect(n + u, m, u, d), e.moveTo(g, m), e.lineTo(g, r), e.lineTo(n + i, f), e.lineTo(g, r + a), e.lineTo(g, h), e.lineTo(n + u * 2, h), e.lineTo(n + u * 2, m), e.closePath();
1053
+ break;
1054
+ }
1055
+ case "flowchartmagneticdisk": {
1056
+ let t = a * .15;
1057
+ e.moveTo(n, r + t), e.ellipse(d, r + t, i / 2, t, 0, Math.PI, 0), e.lineTo(n + i, r + a - t), e.ellipse(d, r + a - t, i / 2, t, 0, 0, Math.PI), e.lineTo(n, r + t), e.closePath(), e.moveTo(n + i, r + t), e.ellipse(d, r + t, i / 2, t, 0, 0, Math.PI);
1058
+ break;
1059
+ }
1060
+ case "flowchartmagneticdrum": {
1061
+ let t = i * .15;
1062
+ e.moveTo(n + t, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a), e.lineTo(n + t, r + a), e.ellipse(n + t, f, t, a / 2, 0, Math.PI / 2, -Math.PI / 2, !0), e.closePath(), e.moveTo(n + i, r), e.ellipse(n + i, f, t, a / 2, 0, -Math.PI / 2, Math.PI / 2);
1063
+ break;
1064
+ }
1065
+ case "flowchartmagnetictape": {
1066
+ let t = Math.min(i, a) / 2, n = d + t * .5;
1067
+ e.moveTo(d, r + a), e.arc(d, f, t, Math.PI / 2, Math.PI / 2 + Math.PI * 2 * .875), e.lineTo(n, f + t * .5), e.lineTo(n, r + a), e.closePath();
1068
+ break;
1069
+ }
1070
+ case "flowchartpunchedtape": {
1071
+ let t = a * .12;
1072
+ e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a - t), e.bezierCurveTo(n + i * .75, r + a, n + i * .25, r + a - t * 2, n, r + a - t), e.closePath(), e.moveTo(n, r + t), e.bezierCurveTo(n + i * .25, r, n + i * .75, r + t * 2, n + i, r + t);
1073
+ break;
1074
+ }
1075
+ case "flowchartmanualoperation": {
1076
+ let t = i * .15;
1077
+ e.moveTo(n + t, r), e.lineTo(n + i - t, r), e.lineTo(n + i, r + a), e.lineTo(n, r + a), e.closePath();
1078
+ break;
1079
+ }
1080
+ case "flowchartmultidocument": {
1081
+ let t = a * .1, o = i * .04;
1082
+ e.rect(n + o * 2, r - a * .08, i - o * 2, a * .1), e.rect(n + o, r - a * .04, i - o, a * .06), e.moveTo(n, r), e.lineTo(n + i, r), e.lineTo(n + i, r + a - t), e.bezierCurveTo(n + i * .75, r + a, n + i * .25, r + a - t * 2, n, r + a - t), e.closePath();
1083
+ break;
1084
+ }
1085
+ case "rttriangle":
1086
+ e.moveTo(n, r), e.lineTo(n, r + a), e.lineTo(n + i, r + a), e.closePath();
1087
+ break;
1088
+ default:
1089
+ e.rect(n, r, i, a);
1090
+ break;
1091
+ }
1092
+ }
1093
+ function Q(e, t, n) {
1094
+ let r = Math.max(.5, t.width * n), i = e.w === "sm" ? 4 : e.w === "lg" ? 8 : 6, a = e.len === "sm" ? 4 : e.len === "lg" ? 8 : 6;
1095
+ return {
1096
+ lw: r,
1097
+ halfW: r * i / 2,
1098
+ len: r * a
1099
+ };
1100
+ }
1101
+ var ae = new Set([
1102
+ "triangle",
1103
+ "stealth",
1104
+ "diamond",
1105
+ "oval"
1106
+ ]);
1107
+ function oe(e, t, n) {
1108
+ return ae.has(e.type) ? Q(e, t, n).len : 0;
1109
+ }
1110
+ function se(e, t, n) {
1111
+ if (e.type === "none") return 0;
1112
+ let { lw: r, halfW: i, len: a } = Q(e, t, n);
1113
+ return Math.max(a, i) + r / 2;
1114
+ }
1115
+ function ce(e, t, n) {
1116
+ if (n <= 0) return {
1117
+ x: e.x,
1118
+ y: e.y
1119
+ };
1120
+ let r = t.x - e.x, i = t.y - e.y, a = Math.hypot(r, i);
1121
+ if (a < 1e-9) return {
1122
+ x: e.x,
1123
+ y: e.y
1124
+ };
1125
+ let o = Math.min(n, a) / a;
1126
+ return {
1127
+ x: e.x + r * o,
1128
+ y: e.y + i * o
1129
+ };
1130
+ }
1131
+ function le(t, n, r, i, a, o, s, c) {
1132
+ if (a.type === "none") return;
1133
+ let { lw: l, halfW: u, len: d } = Q(a, o, s), f = c ?? e(o.color);
1134
+ switch (t.save(), t.translate(n, r), t.rotate(i), t.fillStyle = f, t.strokeStyle = f, t.lineWidth = l, t.setLineDash([]), t.beginPath(), a.type) {
1135
+ case "triangle":
1136
+ case "stealth":
1137
+ t.moveTo(0, 0), t.lineTo(-d, -u), t.lineTo(-d, u), t.closePath(), t.fill();
1138
+ break;
1139
+ case "arrow":
1140
+ t.lineCap = "round", t.lineJoin = "round", t.moveTo(-d, -u), t.lineTo(0, 0), t.lineTo(-d, u), t.stroke();
1141
+ break;
1142
+ case "diamond":
1143
+ t.moveTo(0, 0), t.lineTo(-d / 2, -u), t.lineTo(-d, 0), t.lineTo(-d / 2, u), t.closePath(), t.fill();
1144
+ break;
1145
+ case "oval":
1146
+ t.ellipse(-d / 2, 0, d / 2, u, 0, 0, Math.PI * 2), t.fill();
1147
+ break;
1148
+ }
1149
+ t.restore();
1150
+ }
1151
+ function $(e, t) {
1152
+ let n = Math.max(1, Math.round(e * t / 3)), r = Math.max(1, Math.round(e * t / 3));
1153
+ return {
1154
+ railDev: n,
1155
+ gapDev: r,
1156
+ spanDev: 2 * n + r
1157
+ };
1158
+ }
1159
+ function ue(e, t, n, r, i, a, o) {
1160
+ let { railDev: s, gapDev: c, spanDev: l } = $(a, o);
1161
+ if (n === i) {
1162
+ let i = Math.round(n * o - l / 2);
1163
+ e.fillRect(t, i / o, r - t, s / o), e.fillRect(t, (i + s + c) / o, r - t, s / o);
1164
+ } else {
1165
+ let r = Math.round(t * o - l / 2);
1166
+ e.fillRect(r / o, n, s / o, i - n), e.fillRect((r + s + c) / o, n, s / o, i - n);
1167
+ }
1168
+ }
1169
+ var de = (e) => e === 32 || e === 12288;
1170
+ function fe(e, i, a = {}) {
1171
+ if (Math.abs(i) <= .5) return null;
1172
+ let o = a.firstContentSi ?? 0, s = a.lastDrawnSi ?? e.length - 1, c = a.minPerGap ?? -Infinity, l = a.isGapChar ?? r, u = a.isWhitespace ?? de, d = a.seaClusterGaps ?? !1, f = [];
1173
+ for (let t = o; t < e.length; t++) {
1174
+ let n = e[t];
1175
+ if (n === void 0) continue;
1176
+ if (n.text === void 0) {
1177
+ f.push({
1178
+ si: t,
1179
+ off: 0,
1180
+ ws: !1
1181
+ });
1182
+ continue;
1183
+ }
1184
+ let r = 0;
1185
+ for (let e of n.text) {
1186
+ let n = e.codePointAt(0);
1187
+ f.push({
1188
+ si: t,
1189
+ off: r,
1190
+ cp: n,
1191
+ ws: u(n)
1192
+ }), r++;
1193
+ }
1194
+ }
1195
+ let p = -1, m = -1;
1196
+ for (let e = 0; e < f.length; e++) f[e].ws || (p === -1 && (p = e), m = e);
1197
+ if (p === -1 || p === m) return null;
1198
+ let h = Array(f.length).fill(!1), g = 0;
1199
+ for (let e = p; e < m; e++) {
1200
+ let r = f[e];
1201
+ if (r.si === s) continue;
1202
+ if (r.ws) {
1203
+ h[e] = !0, g++;
1204
+ continue;
1205
+ }
1206
+ let i = f[e + 1];
1207
+ if (i.ws) continue;
1208
+ let a = r.cp, o = i.cp;
1209
+ (a !== void 0 && l(a) || o !== void 0 && l(o) || d && a !== void 0 && o !== void 0 && n(a) && n(o) && !t(o)) && (h[e] = !0, g++);
1210
+ }
1211
+ if (g === 0) return null;
1212
+ let _ = i / g;
1213
+ i < 0 && _ < c && (_ = c);
1214
+ let v = /* @__PURE__ */ new Map();
1215
+ for (let e of f) e.cp !== void 0 && v.set(e.si, (v.get(e.si) ?? 0) + 1);
1216
+ let y = /* @__PURE__ */ new Map();
1217
+ for (let e = 0; e < f.length; e++) {
1218
+ if (!h[e]) continue;
1219
+ let t = f[e], n = y.get(t.si);
1220
+ n || (n = {
1221
+ splitBefore: [],
1222
+ trailingGap: !1,
1223
+ internalStretch: 0
1224
+ }, y.set(t.si, n));
1225
+ let r = v.get(t.si) ?? 0;
1226
+ t.cp === void 0 || t.off === r - 1 ? n.trailingGap = !0 : (n.splitBefore.push(t.off + 1), n.internalStretch += _);
1227
+ }
1228
+ return {
1229
+ perGap: _,
1230
+ perSeg: y
1231
+ };
1232
+ }
1233
+ //#endregion
1234
+ export { p as C, d as D, u as E, x as S, _ as T, D as _, oe as a, S as b, I as c, z as d, R as f, f as g, k as h, le as i, L as l, ue as m, se as n, $ as o, F as p, ce as r, fe as s, J as t, ie as u, y as v, b as w, g as x, C as y };