@epam/ai-dial-attachment-canvas 1.1.0-dev.30 → 1.1.0-dev.300

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 (46) hide show
  1. package/components/AttachmentCanvas/AttachmentCanvas.d.ts +1 -0
  2. package/components/AttachmentCanvas/AttachmentCanvas.d.ts.map +1 -1
  3. package/components/AttachmentCanvasBody/AttachmentCanvasBody.d.ts +4 -0
  4. package/components/AttachmentCanvasBody/AttachmentCanvasBody.d.ts.map +1 -0
  5. package/components/AttachmentCanvasContainer/AttachmentCanvasContainer.d.ts.map +1 -1
  6. package/components/CodeContent/CodeContent.d.ts +13 -0
  7. package/components/CodeContent/CodeContent.d.ts.map +1 -0
  8. package/components/HtmlContent/HtmlContent.d.ts +21 -0
  9. package/components/HtmlContent/HtmlContent.d.ts.map +1 -0
  10. package/components/McpAppCanvasRenderer/McpAppCanvasRenderer.d.ts +12 -0
  11. package/components/McpAppCanvasRenderer/McpAppCanvasRenderer.d.ts.map +1 -0
  12. package/components/OoxmlContent/OoxmlContent.d.ts +14 -0
  13. package/components/OoxmlContent/OoxmlContent.d.ts.map +1 -0
  14. package/components/PdfContent/PdfContent.d.ts +31 -0
  15. package/components/PdfContent/PdfContent.d.ts.map +1 -1
  16. package/components/VisualizerCanvasRenderer/VisualizerCanvasRenderer.d.ts +25 -0
  17. package/components/VisualizerCanvasRenderer/VisualizerCanvasRenderer.d.ts.map +1 -0
  18. package/constants/file.d.ts +8 -0
  19. package/constants/file.d.ts.map +1 -1
  20. package/context/AttachmentCanvasContext.d.ts +4 -2
  21. package/context/AttachmentCanvasContext.d.ts.map +1 -1
  22. package/docx-TK1kGI6t.js +27179 -0
  23. package/highlight-rect-BuX5rWP4-BMOCuZYw.js +1037 -0
  24. package/hooks/useOpenAttachmentCanvas/useOpenAttachmentCanvas.d.ts +64 -0
  25. package/hooks/useOpenAttachmentCanvas/useOpenAttachmentCanvas.d.ts.map +1 -0
  26. package/index.css +1 -1
  27. package/index.d.ts +9 -3
  28. package/index.d.ts.map +1 -1
  29. package/index.js +34896 -1760
  30. package/models/attachment-canvas.d.ts +170 -11
  31. package/models/attachment-canvas.d.ts.map +1 -1
  32. package/package.json +14 -7
  33. package/pptx-DfVqSUxc.js +7410 -0
  34. package/render-worker-host-Br7ZDyGE-ByESfBjH.js +7 -0
  35. package/render-worker-host-CM1JXVqg-DGwZpsUd.js +7 -0
  36. package/render-worker-host-DFtd9Z-J-DU7fugLI.js +7 -0
  37. package/renderer-module-contract-BNGz8HvO-BmSLiM0k.js +44363 -0
  38. package/types/attachment-canvas.d.ts +11 -0
  39. package/types/attachment-canvas.d.ts.map +1 -1
  40. package/utils/content.d.ts +9 -0
  41. package/utils/content.d.ts.map +1 -1
  42. package/utils/download.d.ts.map +1 -1
  43. package/utils/visualizer.d.ts +8 -0
  44. package/utils/visualizer.d.ts.map +1 -0
  45. package/visible-index-BjesVGhg-DvGeguMs.js +133 -0
  46. package/xlsx-44AZTEry.js +7800 -0
@@ -0,0 +1,1037 @@
1
+ import { Lt as e, On as t, Wt as n, dn as r, pt as i } from "./renderer-module-contract-BNGz8HvO-BmSLiM0k.js";
2
+ //#region ../../node_modules/@silurus/ooxml/dist/line-distribute-Bvtp0Gt6.js
3
+ var a = {
4
+ 167: "♣",
5
+ 168: "♦",
6
+ 169: "♥",
7
+ 170: "♠",
8
+ 171: "↔",
9
+ 172: "←",
10
+ 173: "↑",
11
+ 174: "→",
12
+ 175: "↓",
13
+ 183: "•",
14
+ 184: "÷",
15
+ 185: "≠",
16
+ 180: "×",
17
+ 176: "°",
18
+ 177: "±",
19
+ 163: "≤",
20
+ 179: "≥"
21
+ }, o = {
22
+ 33: "✏",
23
+ 34: "✂",
24
+ 36: "👓",
25
+ 74: "☺",
26
+ 75: "😐",
27
+ 76: "☹",
28
+ 118: "❖",
29
+ 167: "▪",
30
+ 108: "●",
31
+ 110: "■",
32
+ 116: "◆",
33
+ 119: "◆",
34
+ 251: "✗",
35
+ 252: "✓",
36
+ 253: "☒",
37
+ 254: "☑",
38
+ 223: "←",
39
+ 224: "→",
40
+ 225: "↑",
41
+ 226: "↓",
42
+ 227: "↖",
43
+ 228: "↗",
44
+ 229: "↙",
45
+ 230: "↘"
46
+ };
47
+ function s(e) {
48
+ let t = {};
49
+ for (let n of Object.keys(e)) {
50
+ let r = Number(n);
51
+ t[r] = e[r], t[61440 + r] = e[r];
52
+ }
53
+ return t;
54
+ }
55
+ var c = s(a), l = s(o);
56
+ function u(e, t) {
57
+ if (!t) return e;
58
+ let n = t.trim().toLowerCase(), r = n === "wingdings" ? l : n === "symbol" ? c : null;
59
+ return r ? r[e.charCodeAt(0)] ?? e : e;
60
+ }
61
+ function d(e) {
62
+ if (!e) return !1;
63
+ let t = e.toLowerCase();
64
+ return t === "symbol" || t.includes("wingdings");
65
+ }
66
+ function f(e, t) {
67
+ if (!d(t) || e.length === 0) return [{
68
+ text: e,
69
+ mapped: !1
70
+ }];
71
+ let n = [], r = "", i = null;
72
+ for (let a of e) {
73
+ let e = u(a, t), o = e !== a;
74
+ i === null || o === i ? (i = o, r += e) : (n.push({
75
+ text: r,
76
+ mapped: i
77
+ }), i = o, r = e);
78
+ }
79
+ return r.length > 0 && n.push({
80
+ text: r,
81
+ mapped: i ?? !1
82
+ }), n;
83
+ }
84
+ function p(e, t, n, r, i) {
85
+ let a = Infinity, o = Infinity, s = -Infinity, c = -Infinity, l = (e, t) => {
86
+ !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));
87
+ };
88
+ for (let a of e) {
89
+ let e = 0, o = 0;
90
+ for (let s of a) switch (s.cmd) {
91
+ case "moveTo":
92
+ case "lineTo":
93
+ e = s.x, o = s.y, l(t + e * r, n + o * i);
94
+ break;
95
+ case "cubicBezTo":
96
+ 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);
97
+ break;
98
+ case "quadBezTo":
99
+ l(t + s.x1 * r, n + s.y1 * i), e = s.x, o = s.y, l(t + e * r, n + o * i);
100
+ break;
101
+ case "arcTo": {
102
+ let a = Math.abs(s.wr * r), c = Math.abs(s.hr * i);
103
+ if (a <= 0 || c <= 0) break;
104
+ 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);
105
+ l(m - a, h - c), l(m + a, h + c);
106
+ let g = u + d;
107
+ e = (m + a * Math.cos(g) - t) / r, o = (h + c * Math.sin(g) - n) / i;
108
+ break;
109
+ }
110
+ case "close": break;
111
+ }
112
+ }
113
+ return Number.isFinite(a) ? {
114
+ x: a,
115
+ y: o,
116
+ w: s - a,
117
+ h: c - o
118
+ } : null;
119
+ }
120
+ function m(e, t, n, r, i, a) {
121
+ for (let o of t) {
122
+ let t = 0, s = 0;
123
+ for (let c of o) switch (c.cmd) {
124
+ case "moveTo":
125
+ e.moveTo(n + c.x * i, r + c.y * a), t = c.x, s = c.y;
126
+ break;
127
+ case "lineTo":
128
+ e.lineTo(n + c.x * i, r + c.y * a), t = c.x, s = c.y;
129
+ break;
130
+ case "cubicBezTo":
131
+ 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;
132
+ break;
133
+ case "quadBezTo":
134
+ e.quadraticCurveTo(n + c.x1 * i, r + c.y1 * a, n + c.x * i, r + c.y * a), t = c.x, s = c.y;
135
+ break;
136
+ case "arcTo": {
137
+ let o = c.wr * i, l = c.hr * a;
138
+ if (o <= 0 || l <= 0) break;
139
+ 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;
140
+ 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;
141
+ break;
142
+ }
143
+ case "close":
144
+ e.closePath();
145
+ break;
146
+ }
147
+ }
148
+ }
149
+ var h = 1e-9;
150
+ function g(e) {
151
+ return e.cmd === "lineTo" || e.cmd === "cubicBezTo" || e.cmd === "quadBezTo" || e.cmd === "arcTo";
152
+ }
153
+ function _(e, t, n, r) {
154
+ let i = n === 0 ? 0 : n, a = r === 0 ? 0 : r;
155
+ return {
156
+ x: e,
157
+ y: t,
158
+ dx: i,
159
+ dy: a,
160
+ angle: Math.atan2(a, i)
161
+ };
162
+ }
163
+ function v(e, t, n) {
164
+ switch (n.cmd) {
165
+ case "lineTo": return {
166
+ dx: n.x - e,
167
+ dy: n.y - t
168
+ };
169
+ case "cubicBezTo": {
170
+ let r = n.x1 - e, i = n.y1 - t;
171
+ return Math.abs(r) < h && Math.abs(i) < h && (r = n.x2 - e, i = n.y2 - t), Math.abs(r) < h && Math.abs(i) < h && (r = n.x - e, i = n.y - t), {
172
+ dx: r,
173
+ dy: i
174
+ };
175
+ }
176
+ case "quadBezTo": {
177
+ let r = n.x1 - e, i = n.y1 - t;
178
+ return Math.abs(r) < h && Math.abs(i) < h && (r = n.x - e, i = n.y - t), {
179
+ dx: r,
180
+ dy: i
181
+ };
182
+ }
183
+ case "arcTo": {
184
+ let e = n.stAng * Math.PI / 180, t = n.swAng < 0 ? -1 : 1;
185
+ return {
186
+ dx: -n.wr * Math.sin(e) * t,
187
+ dy: n.hr * Math.cos(e) * t
188
+ };
189
+ }
190
+ default: return {
191
+ dx: 0,
192
+ dy: 0
193
+ };
194
+ }
195
+ }
196
+ function y(e, t, n) {
197
+ switch (n.cmd) {
198
+ case "moveTo":
199
+ case "lineTo":
200
+ case "cubicBezTo":
201
+ case "quadBezTo": return {
202
+ x: n.x,
203
+ y: n.y
204
+ };
205
+ case "arcTo": {
206
+ if (n.wr <= 0 || n.hr <= 0) return {
207
+ x: e,
208
+ y: t
209
+ };
210
+ 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);
211
+ return {
212
+ x: a + n.wr * Math.cos(i),
213
+ y: o + n.hr * Math.sin(i)
214
+ };
215
+ }
216
+ default: return {
217
+ x: e,
218
+ y: t
219
+ };
220
+ }
221
+ }
222
+ function b(e, t, n) {
223
+ let { x: r, y: i } = y(e, t, n);
224
+ switch (n.cmd) {
225
+ case "lineTo": return {
226
+ dx: n.x - e,
227
+ dy: n.y - t,
228
+ x: r,
229
+ y: i
230
+ };
231
+ case "cubicBezTo": {
232
+ let a = n.x - n.x2, o = n.y - n.y2;
233
+ return Math.abs(a) < h && Math.abs(o) < h && (a = n.x - n.x1, o = n.y - n.y1), Math.abs(a) < h && Math.abs(o) < h && (a = n.x - e, o = n.y - t), {
234
+ dx: a,
235
+ dy: o,
236
+ x: r,
237
+ y: i
238
+ };
239
+ }
240
+ case "quadBezTo": {
241
+ let a = n.x - n.x1, o = n.y - n.y1;
242
+ return Math.abs(a) < h && Math.abs(o) < h && (a = n.x - e, o = n.y - t), {
243
+ dx: a,
244
+ dy: o,
245
+ x: r,
246
+ y: i
247
+ };
248
+ }
249
+ case "arcTo": {
250
+ if (n.wr <= 0 || n.hr <= 0) return {
251
+ dx: 0,
252
+ dy: 0,
253
+ x: r,
254
+ y: i
255
+ };
256
+ let e = n.stAng * Math.PI / 180 + n.swAng * Math.PI / 180, t = n.swAng < 0 ? -1 : 1;
257
+ return {
258
+ dx: -n.wr * Math.sin(e) * t,
259
+ dy: n.hr * Math.cos(e) * t,
260
+ x: r,
261
+ y: i
262
+ };
263
+ }
264
+ default: return {
265
+ dx: 0,
266
+ dy: 0,
267
+ x: r,
268
+ y: i
269
+ };
270
+ }
271
+ }
272
+ function x(e) {
273
+ let t = 0, n = 0, r = !1;
274
+ for (let i of e) i.cmd === "moveTo" && (r = !0), {x: t, y: n} = y(t, n, i);
275
+ return r ? {
276
+ x: t,
277
+ y: n
278
+ } : null;
279
+ }
280
+ function S(e) {
281
+ if (e.some((e) => e.cmd === "close")) return !0;
282
+ let t = e.find((e) => e.cmd === "moveTo");
283
+ if (!t) return !1;
284
+ let n = x(e);
285
+ return !n || !e.some(g) ? !1 : Math.abs(n.x - t.x) < h && Math.abs(n.y - t.y) < h;
286
+ }
287
+ function C(e) {
288
+ let t = {
289
+ start: null,
290
+ end: null
291
+ };
292
+ if (!e || e.length === 0) return t;
293
+ let n = e[0];
294
+ if (n && n.length > 0 && !S(n)) {
295
+ let e = n.find((e) => e.cmd === "moveTo"), r = n.find(g);
296
+ if (e && r) {
297
+ let n = v(e.x, e.y, r);
298
+ (Math.abs(n.dx) > h || Math.abs(n.dy) > h) && (t.start = _(e.x, e.y, -n.dx, -n.dy));
299
+ }
300
+ }
301
+ let r = e[e.length - 1];
302
+ if (r && r.length > 0 && !S(r)) {
303
+ let e = 0, n = 0, i = -1;
304
+ for (let e = 0; e < r.length; e++) g(r[e]) && (i = e);
305
+ if (i >= 0) {
306
+ for (let t = 0; t < i; t++) ({x: e, y: n} = y(e, n, r[t]));
307
+ let a = b(e, n, r[i]);
308
+ (Math.abs(a.dx) > h || Math.abs(a.dy) > h) && (t.end = _(a.x, a.y, a.dx, a.dy));
309
+ }
310
+ }
311
+ return t;
312
+ }
313
+ function w(e, t, n, r, i, a, o, s = -Math.PI / 2) {
314
+ let c = a * 2;
315
+ for (let l = 0; l < c; l++) {
316
+ 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);
317
+ l === 0 ? e.moveTo(d, f) : e.lineTo(d, f);
318
+ }
319
+ e.closePath();
320
+ }
321
+ function T(e, t, n, r, i, a, o = -Math.PI / 2) {
322
+ for (let s = 0; s < a; s++) {
323
+ let c = o + s * 2 * Math.PI / a, l = t + r * Math.cos(c), u = n + i * Math.sin(c);
324
+ s === 0 ? e.moveTo(l, u) : e.lineTo(l, u);
325
+ }
326
+ e.closePath();
327
+ }
328
+ function E(e, t, n, r, i, a, o) {
329
+ 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);
330
+ return e.ellipse(u, d, Math.abs(r), Math.abs(i), 0, c, l, o < 0), {
331
+ x: u + r * Math.cos(l),
332
+ y: d + i * Math.sin(l)
333
+ };
334
+ }
335
+ var D = {
336
+ oval: "ellipse",
337
+ rtriangle: "rttriangle",
338
+ roundrectangle: "roundrect",
339
+ flowchartsumingjunction: "flowchartsummingjunction"
340
+ }, O = 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(".")), k = new Set([
341
+ "accentcallout1",
342
+ "accentbordercallout1",
343
+ "flowchartpredefinedprocess",
344
+ "flowchartsort",
345
+ "flowchartinternalstorage",
346
+ "flowchartsummingjunction"
347
+ ]), A = new Set([
348
+ "round2samerect",
349
+ "round2diagrect",
350
+ "dodecagon",
351
+ "star10"
352
+ ]);
353
+ function j(e, n, r, i, a, o, s = null, c = null, l = null, u = null) {
354
+ let d = r + a / 2, f = i + o / 2;
355
+ {
356
+ let d = n.toLowerCase(), f = D[d] ?? d;
357
+ if ((O.has(f) || k.has(f) || A.has(f)) && t(e, f, r, i, a, o, [
358
+ s,
359
+ c,
360
+ l,
361
+ u
362
+ ])) return;
363
+ }
364
+ switch (n.toLowerCase()) {
365
+ case "parallelogram": {
366
+ let t = a * Math.min(.5, (s ?? 25e3) / 1e5);
367
+ e.moveTo(r + t, i), e.lineTo(r + a, i), e.lineTo(r + a - t, i + o), e.lineTo(r, i + o), e.closePath();
368
+ break;
369
+ }
370
+ case "pentagon":
371
+ T(e, d, f, a / 2, o / 2, 5);
372
+ break;
373
+ case "hexagon":
374
+ T(e, d, f, a / 2, o / 2, 6, 0);
375
+ break;
376
+ case "heptagon":
377
+ T(e, d, f, a / 2, o / 2, 7);
378
+ break;
379
+ case "octagon":
380
+ T(e, d, f, a / 2, o / 2, 8, -Math.PI / 8);
381
+ break;
382
+ case "decagon":
383
+ T(e, d, f, a / 2, o / 2, 10);
384
+ break;
385
+ case "star5":
386
+ case "star":
387
+ w(e, d, f, a / 2, o / 2, 5, (s ?? 19098) / 5e4);
388
+ break;
389
+ case "star6":
390
+ w(e, d, f, a / 2, o / 2, 6, (s ?? 28868) / 5e4, 0);
391
+ break;
392
+ case "star7":
393
+ w(e, d, f, a / 2, o / 2, 7, (s ?? 34142) / 5e4);
394
+ break;
395
+ case "rightarrow": {
396
+ let t = o * Math.min(1, (s ?? 5e4) / 1e5), n = a * Math.min(1, (c ?? 5e4) / 1e5), l = i + (o - t) / 2;
397
+ e.moveTo(r, l), e.lineTo(r + a - n, l), e.lineTo(r + a - n, i), e.lineTo(r + a, f), e.lineTo(r + a - n, i + o), e.lineTo(r + a - n, l + t), e.lineTo(r, l + t), e.closePath();
398
+ break;
399
+ }
400
+ case "leftarrow": {
401
+ let t = o * Math.min(1, (s ?? 5e4) / 1e5), n = a * Math.min(1, (c ?? 5e4) / 1e5), l = i + (o - t) / 2;
402
+ e.moveTo(r + a, l), e.lineTo(r + n, l), e.lineTo(r + n, i), e.lineTo(r, f), e.lineTo(r + n, i + o), e.lineTo(r + n, l + t), e.lineTo(r + a, l + t), e.closePath();
403
+ break;
404
+ }
405
+ case "uparrow": {
406
+ let t = a * Math.min(1, (s ?? 5e4) / 1e5), n = o * Math.min(1, (c ?? 5e4) / 1e5), l = r + (a - t) / 2;
407
+ e.moveTo(d, i), e.lineTo(r + a, i + n), e.lineTo(l + t, i + n), e.lineTo(l + t, i + o), e.lineTo(l, i + o), e.lineTo(l, i + n), e.lineTo(r, i + n), e.closePath();
408
+ break;
409
+ }
410
+ case "downarrow": {
411
+ let t = a * Math.min(1, (s ?? 5e4) / 1e5), n = o * Math.min(1, (c ?? 5e4) / 1e5), l = r + (a - t) / 2;
412
+ e.moveTo(d, i + o), e.lineTo(r + a, i + o - n), e.lineTo(l + t, i + o - n), e.lineTo(l + t, i), e.lineTo(l, i), e.lineTo(l, i + o - n), e.lineTo(r, i + o - n), e.closePath();
413
+ break;
414
+ }
415
+ case "leftrightarrow": {
416
+ let t = o * Math.min(1, (s ?? 5e4) / 1e5), n = a * Math.min(.5, (c ?? 25e3) / 1e5), l = i + (o - t) / 2;
417
+ e.moveTo(r, f), e.lineTo(r + n, i), e.lineTo(r + n, l), e.lineTo(r + a - n, l), e.lineTo(r + a - n, i), e.lineTo(r + a, f), e.lineTo(r + a - n, i + o), e.lineTo(r + a - n, l + t), e.lineTo(r + n, l + t), e.lineTo(r + n, i + o), e.closePath();
418
+ break;
419
+ }
420
+ case "updownarrow": {
421
+ let t = a * Math.min(1, (s ?? 5e4) / 1e5), n = o * Math.min(.5, (c ?? 25e3) / 1e5), l = r + (a - t) / 2;
422
+ e.moveTo(d, i), e.lineTo(r + a, i + n), e.lineTo(l + t, i + n), e.lineTo(l + t, i + o - n), e.lineTo(r + a, i + o - n), e.lineTo(d, i + o), e.lineTo(r, i + o - n), e.lineTo(l, i + o - n), e.lineTo(l, i + n), e.lineTo(r, i + n), e.closePath();
423
+ break;
424
+ }
425
+ case "notchedrightarrow": {
426
+ let t = o * Math.min(1, (s ?? 5e4) / 1e5), n = a * Math.min(1, (c ?? 35e3) / 1e5), l = i + (o - t) / 2, u = n * .43;
427
+ e.moveTo(r, l), e.lineTo(r + a - n, l), e.lineTo(r + a - n, i), e.lineTo(r + a, f), e.lineTo(r + a - n, i + o), e.lineTo(r + a - n, l + t), e.lineTo(r, l + t), e.lineTo(r + u, f), e.closePath();
428
+ break;
429
+ }
430
+ case "chevron": {
431
+ let t = a * Math.min(1, Math.max(0, (s ?? 5e4) / 1e5));
432
+ e.moveTo(r, i), e.lineTo(r + t, i), e.lineTo(r + a, f), e.lineTo(r + t, i + o), e.lineTo(r, i + o), t > 0 && e.lineTo(r + t, f), e.closePath();
433
+ break;
434
+ }
435
+ case "homeplate": {
436
+ let t = o * .4;
437
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o - t), e.lineTo(d, i + o), e.lineTo(r, i + o - t), e.closePath();
438
+ break;
439
+ }
440
+ case "leftbracket": {
441
+ let t = Math.min(o * Math.min(5e4, Math.max(0, s ?? 8333)) / 1e5, o / 2);
442
+ e.moveTo(r + a, i), e.quadraticCurveTo(r, i, r, i + t), o - 2 * t > .5 && e.lineTo(r, i + o - t), e.quadraticCurveTo(r, i + o, r + a, i + o);
443
+ break;
444
+ }
445
+ case "rightbracket": {
446
+ let t = Math.min(o * Math.min(5e4, Math.max(0, s ?? 8333)) / 1e5, o / 2);
447
+ e.moveTo(r, i), e.quadraticCurveTo(r + a, i, r + a, i + t), o - 2 * t > .5 && e.lineTo(r + a, i + o - t), e.quadraticCurveTo(r + a, i + o, r, i + o);
448
+ break;
449
+ }
450
+ case "leftbrace": {
451
+ let t = f, n = a * .45;
452
+ e.moveTo(r + a, i), e.bezierCurveTo(r + a - n, i, r + a - n, t - o * .08, r, t), e.bezierCurveTo(r + a - n, t + o * .08, r + a - n, i + o, r + a, i + o);
453
+ break;
454
+ }
455
+ case "rightbrace": {
456
+ let t = f, n = a * .45;
457
+ e.moveTo(r, i), e.bezierCurveTo(r + n, i, r + n, t - o * .08, r + a, t), e.bezierCurveTo(r + n, t + o * .08, r + n, i + o, r, i + o);
458
+ break;
459
+ }
460
+ case "wedgerectcallout": {
461
+ e.rect(r, i, a, o * .8);
462
+ let t = r + a * .2, n = i + o;
463
+ e.moveTo(r + a * .1, i + o * .8), e.lineTo(t, n), e.lineTo(r + a * .3, i + o * .8), e.closePath();
464
+ break;
465
+ }
466
+ case "wedgeellipsecallout": {
467
+ let t = (s ?? -2e4) / 1e5 * a, n = (c ?? 12e4) / 1e5 * o, r = d + t, i = f + n;
468
+ e.ellipse(d, f, a / 2, o / 2, 0, 0, Math.PI * 2);
469
+ let l = Math.atan2(n, t), u = Math.PI / 10, p = a / 2, m = o / 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);
470
+ e.moveTo(h, g), e.lineTo(r, i), e.lineTo(_, v), e.closePath();
471
+ break;
472
+ }
473
+ case "cloudcallout": {
474
+ let t = Math.min(a, o) * .22, n = [
475
+ [d - a * .25, i + o * .35],
476
+ [d - a * .1, i + o * .15],
477
+ [d + a * .1, i + o * .1],
478
+ [d + a * .28, i + o * .2],
479
+ [d + a * .35, i + o * .4]
480
+ ];
481
+ e.moveTo(n[0][0] - t, n[0][1]);
482
+ for (let [r, i] of n) e.arc(r, i, t, Math.PI, 0);
483
+ e.arc(d, i + o * .65, a * .45, 0, Math.PI), e.closePath();
484
+ let r = d + (s ?? -2e4) / 1e5 * a, l = f + (c ?? 12e4) / 1e5 * o;
485
+ e.moveTo(d + a * .05, i + o * .8), e.arc(r, l, Math.min(a, o) * .07, 0, Math.PI * 2);
486
+ break;
487
+ }
488
+ case "bentconnector2":
489
+ case "bentconnector3":
490
+ case "bentconnector4":
491
+ case "bentconnector5":
492
+ case "curvedconnector2":
493
+ case "curvedconnector3":
494
+ case "curvedconnector4":
495
+ case "curvedconnector5":
496
+ e.moveTo(r, i), e.lineTo(r + a, i + o);
497
+ break;
498
+ case "heart":
499
+ e.moveTo(d, i + o * .32), e.bezierCurveTo(d, i, r + a * .05, i, r, i + o * .3), e.bezierCurveTo(r, i + o * .68, d - a * .05, i + o * .78, d, i + o), e.bezierCurveTo(d + a * .05, i + o * .78, r + a, i + o * .68, r + a, i + o * .3), e.bezierCurveTo(r + a - a * .05, i, d, i, d, i + o * .32);
500
+ break;
501
+ case "donut": {
502
+ let t = a / 2, n = o / 2, r = Math.min(t, n) * (s ?? 25e3) / 1e5, i = t - r, c = n - r;
503
+ e.ellipse(d, f, t, n, 0, 0, Math.PI * 2, !1), e.moveTo(d + i, f), e.ellipse(d, f, i, c, 0, 0, Math.PI * 2, !0);
504
+ break;
505
+ }
506
+ case "nosmoking":
507
+ case "nosmokingsign": {
508
+ let t = (s ?? 18750) / 1e5, n = a / 2, r = o / 2, i = n * (1 - 2 * t), c = r * (1 - 2 * t);
509
+ e.ellipse(d, f, n, r, 0, 0, Math.PI * 2, !1), e.moveTo(d + i, f), e.ellipse(d, f, i, c, 0, 0, Math.PI * 2, !0), e.moveTo(d + i, f), e.ellipse(d, f, i, c, 0, 0, Math.PI / 2, !1), e.lineTo(d - i, f), e.ellipse(d, f, i, c, 0, Math.PI, 3 * Math.PI / 2, !1), e.closePath();
510
+ break;
511
+ }
512
+ case "pie": {
513
+ let t = (s ?? 0) / 216e5 * Math.PI * 2, n = (c ?? 162e5) / 216e5 * Math.PI * 2;
514
+ e.moveTo(d, f), e.arc(d, f, Math.min(a, o) / 2, t, n), e.closePath();
515
+ break;
516
+ }
517
+ case "cloud": {
518
+ let t = o * .28;
519
+ e.arc(r + a * .25, i + o * .55, t, Math.PI, Math.PI * 1.8), e.arc(r + a * .45, i + o * .35, t * 1.1, Math.PI * 1.3, Math.PI * 1.9), e.arc(r + a * .65, i + o * .4, t, Math.PI * 1.5, Math.PI * 2), e.arc(r + a * .8, i + o * .6, t * .9, Math.PI * 1.6, Math.PI * .1), e.arc(r + a * .55, i + o * .75, t, 0, Math.PI * .7), e.arc(r + a * .25, i + o * .7, t * .9, 0, Math.PI), e.closePath();
520
+ break;
521
+ }
522
+ case "funnel":
523
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(d + a * .15, i + o), e.lineTo(d - a * .15, i + o), e.closePath();
524
+ break;
525
+ case "smileyface": {
526
+ e.ellipse(d, f, a / 2, o / 2, 0, 0, Math.PI * 2), e.closePath();
527
+ let t = a * .05, n = o * .05, r = f - o * .12;
528
+ e.moveTo(d - a * .2 + t, r), e.ellipse(d - a * .2, r, t, n, 0, 0, Math.PI * 2), e.moveTo(d + a * .2 + t, r), e.ellipse(d + a * .2, r, t, n, 0, 0, Math.PI * 2), e.moveTo(d - a * .25, f + o * .05), e.quadraticCurveTo(d, f + o * .3, d + a * .25, f + o * .05);
529
+ break;
530
+ }
531
+ case "document":
532
+ case "foldedcorner": {
533
+ let t = Math.min(a, o) * .15;
534
+ e.moveTo(r, i), e.lineTo(r + a - t, i), e.lineTo(r + a, i + t), e.lineTo(r + a, i + o), e.lineTo(r, i + o), e.closePath(), e.moveTo(r + a - t, i), e.lineTo(r + a - t, i + t), e.lineTo(r + a, i + t);
535
+ break;
536
+ }
537
+ case "snip2samerect": {
538
+ let t = Math.min(a, o) * Math.min(5e4, Math.max(0, s ?? 16667)) / 1e5;
539
+ e.moveTo(r, i), e.lineTo(r + a - t, i), e.lineTo(r + a, i + t), e.lineTo(r + a, i + o), e.lineTo(r + t, i + o), e.lineTo(r, i + o - t), e.closePath();
540
+ break;
541
+ }
542
+ case "snip2diagrect": {
543
+ let t = Math.min(a, o) * Math.min(5e4, Math.max(0, s ?? 16667)) / 1e5;
544
+ e.moveTo(r + t, i), e.lineTo(r + a - t, i), e.lineTo(r + a, i + t), e.lineTo(r + a, i + o - t), e.lineTo(r + a - t, i + o), e.lineTo(r + t, i + o), e.lineTo(r, i + o - t), e.lineTo(r, i + t), e.closePath();
545
+ break;
546
+ }
547
+ case "sniproundrect": {
548
+ let t = Math.min(a, o) * Math.min(5e4, Math.max(0, s ?? 16667)) / 1e5;
549
+ e.moveTo(r + t, i), e.lineTo(r + a - t, i), e.lineTo(r + a, i + t), e.lineTo(r + a, i + o), e.lineTo(r, i + o), e.quadraticCurveTo(r, i, r + t, i), e.closePath();
550
+ break;
551
+ }
552
+ case "round1rect": {
553
+ let t = Math.min(a, o) * Math.min(5e4, Math.max(0, s ?? 16667)) / 1e5;
554
+ e.moveTo(r + t, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o), e.lineTo(r, i + o), e.lineTo(r, i + t), e.quadraticCurveTo(r, i, r + t, i), e.closePath();
555
+ break;
556
+ }
557
+ case "plaque": {
558
+ let t = Math.min(a, o) * .25;
559
+ e.moveTo(r + t, i), e.lineTo(r + a - t, i), e.quadraticCurveTo(r + a, i, r + a, i + t), e.lineTo(r + a, i + o - t), e.quadraticCurveTo(r + a, i + o, r + a - t, i + o), e.lineTo(r + t, i + o), e.quadraticCurveTo(r, i + o, r, i + o - t), e.lineTo(r, i + t), e.quadraticCurveTo(r, i, r + t, i), e.closePath();
560
+ break;
561
+ }
562
+ case "can": {
563
+ let t = o * .1;
564
+ e.ellipse(d, i + t, a / 2, t, 0, 0, Math.PI * 2), e.moveTo(r, i + t), e.lineTo(r, i + o - t), e.ellipse(d, i + o - t, a / 2, t, 0, Math.PI, 2 * Math.PI), e.lineTo(r + a, i + t);
565
+ break;
566
+ }
567
+ case "cube": {
568
+ let t = Math.min(a, o) * .2;
569
+ e.moveTo(r + t, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o - t), e.lineTo(r + a - t, i + o), e.lineTo(r, i + o), e.lineTo(r, i + t), e.closePath(), e.moveTo(r + t, i), e.lineTo(r + t, i + t), e.lineTo(r + a - t, i + t), e.moveTo(r + t, i + t), e.lineTo(r, i + t);
570
+ break;
571
+ }
572
+ case "bevel": {
573
+ let t = Math.min(a, o) * .1;
574
+ e.rect(r, i, a, o), e.moveTo(r, i), e.lineTo(r + t, i + t), e.lineTo(r + a - t, i + t), e.lineTo(r + a, i), e.moveTo(r + a - t, i + t), e.lineTo(r + a - t, i + o - t), e.lineTo(r + a, i + o), e.moveTo(r + a - t, i + o - t), e.lineTo(r + t, i + o - t), e.lineTo(r, i + o), e.moveTo(r + t, i + o - t), e.lineTo(r + t, i + t);
575
+ break;
576
+ }
577
+ case "halfframe": {
578
+ let t = Math.min(a, o) * .25;
579
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + t), e.lineTo(r + t, i + t), e.lineTo(r + t, i + o), e.lineTo(r, i + o), e.closePath();
580
+ break;
581
+ }
582
+ case "corner": {
583
+ let t = Math.min(a, o) * .25;
584
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + t), e.lineTo(r + t, i + t), e.lineTo(r + t, i + o), e.lineTo(r, i + o), e.closePath();
585
+ break;
586
+ }
587
+ case "flowchartalternateprocess":
588
+ case "flowchartprocess": {
589
+ let t = Math.min(a, o) * Math.min(5e4, Math.max(0, s ?? 16667)) / 1e5;
590
+ e.roundRect(r, i, a, o, [{
591
+ x: t,
592
+ y: t
593
+ }]);
594
+ break;
595
+ }
596
+ case "flowchartterminator": {
597
+ let t = Math.min(a, o) / 2;
598
+ e.roundRect(r, i, a, o, [{
599
+ x: t,
600
+ y: t
601
+ }]);
602
+ break;
603
+ }
604
+ case "flowchartdocument": {
605
+ let t = o * .1;
606
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o - t), e.bezierCurveTo(r + a * .75, i + o, r + a * .25, i + o - t * 2, r, i + o - t), e.closePath();
607
+ break;
608
+ }
609
+ case "moon":
610
+ e.arc(d, f, Math.min(a, o) / 2, -Math.PI / 2, Math.PI / 2), e.arc(d - a * .2, f, Math.min(a, o) / 2, Math.PI / 2, -Math.PI / 2, !0), e.closePath();
611
+ break;
612
+ case "arc": {
613
+ let t = 216e5, n = (s ?? 162e5) / t * Math.PI * 2, r = (c ?? 54e5) / t * Math.PI * 2;
614
+ e.ellipse(d, f, a / 2, o / 2, 0, n, n + r, r < 0);
615
+ break;
616
+ }
617
+ case "mathmultiply": {
618
+ let t = Math.min(a, o) * Math.min(51965, Math.max(0, s ?? 23520)) / 1e5, n = Math.atan2(o, a), c = Math.sin(n), l = Math.cos(n), u = t / 2 * c, d = t / 2 * l;
619
+ e.moveTo(r + u, i - d), e.lineTo(r - u, i + d), e.lineTo(r + a - u, i + o + d), e.lineTo(r + a + u, i + o - d), e.closePath(), e.moveTo(r + a - u, i - d), e.lineTo(r + a + u, i + d), e.lineTo(r + u, i + o + d), e.lineTo(r - u, i + o - d), e.closePath();
620
+ break;
621
+ }
622
+ case "mathdivide": {
623
+ let t = Math.min(36745, Math.max(1e3, s ?? 23520)), n = (73490 + -t) / 4, r = 36745 * a / o, u = Math.min(Math.min(n, r), Math.max(1e3, l ?? 11760)), p = 73490 + 4 * u - t, m = Math.min(p, Math.max(0, c ?? 5880)), h = o * t / 2e5, g = o * m / 1e5, _ = o * u / 1e5, v = a * 73490 / 2e5, y = f - h, b = f + h, x = y - (g + _) - _, S = i + o - x, C = d - v, w = d + v;
624
+ 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);
625
+ break;
626
+ }
627
+ case "quadarrow": {
628
+ let t = a * (s ?? 23e3) / 1e5, n = a * (c ?? 3e4) / 1e5, l = r + (a - t) / 2, u = i + (o - t) / 2;
629
+ e.moveTo(d, i), e.lineTo(r + a - n, i + n), e.lineTo(r + a - n, u), e.lineTo(l + t, u), e.lineTo(l + t, i + n), e.lineTo(r + n, i + n), e.lineTo(r + a, f), e.lineTo(r + a - n, i + o - n), e.lineTo(l + t, i + o - n), e.lineTo(l + t, u + t), e.lineTo(r + a - n, u + t), e.lineTo(r + a - n, i + o - n), e.lineTo(d, i + o), e.lineTo(r + n, i + o - n), e.lineTo(r + n, u + t), e.lineTo(l, u + t), e.lineTo(l, i + o - n), e.lineTo(r, f), e.lineTo(r + n, i + n), e.lineTo(l, i + n), e.lineTo(l, u), e.lineTo(r + n, u), e.closePath();
630
+ break;
631
+ }
632
+ case "wave": {
633
+ let t = o * (s ?? 12500) / 1e5, n = i + t, c = i + o - t;
634
+ e.moveTo(r, n), e.bezierCurveTo(r + a * .25, i, r + a * .25, i + t * 2, r + a * .5, n), e.bezierCurveTo(r + a * .75, i + t * 2, r + a * .75, i, r + a, n), e.lineTo(r + a, c), e.bezierCurveTo(r + a * .75, i + o, r + a * .75, i + o - t * 2, r + a * .5, c), e.bezierCurveTo(r + a * .25, i + o - t * 2, r + a * .25, i + o, r, c), e.closePath();
635
+ break;
636
+ }
637
+ case "doublewave": {
638
+ let t = o * (s ?? 6250) / 1e5, n = i + t, c = i + o - t;
639
+ e.moveTo(r, n), e.bezierCurveTo(r + a * .25, i, r + a * .25, i + t * 2, r + a * .5, n), e.bezierCurveTo(r + a * .75, i + t * 2, r + a * .75, i, r + a, n), e.lineTo(r + a, c), e.bezierCurveTo(r + a * .75, i + o, r + a * .75, i + o - t * 2, r + a * .5, c), e.bezierCurveTo(r + a * .25, i + o - t * 2, r + a * .25, i + o, r, c), e.closePath();
640
+ break;
641
+ }
642
+ case "sun": {
643
+ let t = Math.min(a, o) / 2, n = t * ((s ?? 25e3) / 1e5 + .5), r = Math.min(n, t * .9), i = Math.PI / 16;
644
+ for (let n = 0; n < 8; n++) {
645
+ let a = n / 8 * Math.PI * 2;
646
+ e.moveTo(d + r * Math.cos(a - i), f + r * Math.sin(a - i)), e.lineTo(d + t * Math.cos(a), f + t * Math.sin(a)), e.lineTo(d + r * Math.cos(a + i), f + r * Math.sin(a + i)), e.closePath();
647
+ }
648
+ e.moveTo(d + r, f), e.arc(d, f, r, 0, Math.PI * 2);
649
+ break;
650
+ }
651
+ case "lightningbolt":
652
+ e.moveTo(d + a * .1, i), e.lineTo(r, f - o * .05), e.lineTo(d + a * .05, f - o * .05), e.lineTo(d - a * .1, i + o), e.lineTo(r + a, f + o * .05), e.lineTo(d - a * .05, f + o * .05), e.closePath();
653
+ break;
654
+ case "bracketpair": {
655
+ let t = o * Math.min(5e4, Math.max(0, s ?? 8333)) / 1e5;
656
+ e.moveTo(r + a * .4, i), e.quadraticCurveTo(r, i, r, i + t), o - 2 * t > 0 && e.lineTo(r, i + o - t), e.quadraticCurveTo(r, i + o, r + a * .4, i + o), e.moveTo(r + a * .6, i), e.quadraticCurveTo(r + a, i, r + a, i + t), o - 2 * t > 0 && e.lineTo(r + a, i + o - t), e.quadraticCurveTo(r + a, i + o, r + a * .6, i + o);
657
+ break;
658
+ }
659
+ case "bracepair": {
660
+ let t = a * .2;
661
+ e.moveTo(r + a * .4, i), e.bezierCurveTo(r + a * .4 - t, i, r + a * .4 - t, f - o * .08, r, f), e.bezierCurveTo(r + a * .4 - t, f + o * .08, r + a * .4 - t, i + o, r + a * .4, i + o), e.moveTo(r + a * .6, i), e.bezierCurveTo(r + a * .6 + t, i, r + a * .6 + t, f - o * .08, r + a, f), e.bezierCurveTo(r + a * .6 + t, f + o * .08, r + a * .6 + t, i + o, r + a * .6, i + o);
662
+ break;
663
+ }
664
+ case "chord": {
665
+ let t = (s ?? 27e5) / 216e5 * Math.PI * 2, n = (c ?? 162e5) / 216e5 * Math.PI * 2;
666
+ e.ellipse(d, f, a / 2, o / 2, 0, t, n), e.closePath();
667
+ break;
668
+ }
669
+ case "blockarc": {
670
+ let t = Math.min(a, o) / 2, n = s ?? 108e5, r = c ?? 0, i = t * (1 - (l ?? 25e3) / 1e5), u = n / 216e5 * Math.PI * 2, p = r / 216e5 * Math.PI * 2;
671
+ e.arc(d, f, t, u, p, !1), e.arc(d, f, i, p, u, !0), e.closePath();
672
+ break;
673
+ }
674
+ case "teardrop": {
675
+ let t = Math.min(a, o) * .4, n = r + t, s = i + o - t;
676
+ e.arc(n, s, t, 0, Math.PI * 2 * .75), e.bezierCurveTo(n - t * .1, s - t, r + a - t, i + t, r + a, i), e.bezierCurveTo(r + a - t * .2, i + t * .5, n + t, s - t * 1.1, n + t, s), e.closePath();
677
+ break;
678
+ }
679
+ case "diagstripe": {
680
+ let t = o * (s ?? 5e4) / 1e5 * a / o;
681
+ e.moveTo(r + t, i), e.lineTo(r + a, i), e.lineTo(r + a - t, i + o), e.lineTo(r, i + o), e.closePath();
682
+ break;
683
+ }
684
+ case "wedgeroundrectcallout": {
685
+ let t = Math.min(a, o) * .1;
686
+ e.roundRect(r, i, a, o * .85, t), e.moveTo(r + a * .1, i + o * .85), e.lineTo(r + a * .2, i + o), e.lineTo(r + a * .3, i + o * .85), e.closePath();
687
+ break;
688
+ }
689
+ case "rightarrowcallout": {
690
+ let t = o * (s ?? 5e4) / 1e5, n = a * (c ?? 5e4) / 1e5, l = i + (o - t) / 2;
691
+ e.rect(r, l, n, t), e.moveTo(r + n, i), e.lineTo(r + a, f), e.lineTo(r + n, i + o), e.closePath();
692
+ break;
693
+ }
694
+ case "leftarrowcallout": {
695
+ let t = o * (s ?? 5e4) / 1e5, n = a * (c ?? 5e4) / 1e5, l = i + (o - t) / 2;
696
+ e.rect(r + a - n, l, n, t), e.moveTo(r + a - n, i), e.lineTo(r, f), e.lineTo(r + a - n, i + o), e.closePath();
697
+ break;
698
+ }
699
+ case "uparrowcallout": {
700
+ let t = a * (s ?? 5e4) / 1e5, n = o * (c ?? 5e4) / 1e5, l = r + (a - t) / 2;
701
+ e.rect(l, i + n, t, o - n), e.moveTo(r, i + n), e.lineTo(d, i), e.lineTo(r + a, i + n), e.closePath();
702
+ break;
703
+ }
704
+ case "downarrowcallout": {
705
+ let t = a * (s ?? 5e4) / 1e5, n = o * (c ?? 5e4) / 1e5, l = r + (a - t) / 2;
706
+ e.rect(l, i, t, o - n), e.moveTo(r, i + o - n), e.lineTo(d, i + o), e.lineTo(r + a, i + o - n), e.closePath();
707
+ break;
708
+ }
709
+ case "leftrightarrowcallout": {
710
+ let t = o * (s ?? 5e4) / 1e5, n = a * (c ?? 25e3) / 1e5, l = i + (o - t) / 2;
711
+ e.rect(r + n, l, a - 2 * n, t), e.moveTo(r + n, i), e.lineTo(r, f), e.lineTo(r + n, i + o), e.closePath(), e.moveTo(r + a - n, i), e.lineTo(r + a, f), e.lineTo(r + a - n, i + o), e.closePath();
712
+ break;
713
+ }
714
+ case "leftrightuparrow": {
715
+ let t = a * (s ?? 25e3) / 1e5, n = o * (c ?? 3e4) / 1e5, l = r + (a - t) / 2;
716
+ e.moveTo(d, i), e.lineTo(r + a, i + n), e.lineTo(l + t, i + n), e.lineTo(l + t, i + o), e.lineTo(l, i + o), e.lineTo(l, i + n), e.lineTo(r, i + n), e.closePath();
717
+ break;
718
+ }
719
+ case "uturnarrow": {
720
+ let t = a * (s ?? 25e3) / 1e5, n = (a - t) / 2, c = Math.max(0, n - t), l = r + t + n, u = i + t + n, d = t * 2, f = i + o - t * 2.5;
721
+ e.moveTo(r, i + o), e.lineTo(r, u), e.arc(l, u, n, Math.PI, 0), e.lineTo(r + a, f), e.lineTo(r + a + (d - t) / 2, f), e.lineTo(l + t / 2, i + o), e.lineTo(r + a - (d - t) / 2 - t, f), e.lineTo(r + a - t, f), e.lineTo(r + a - t, u), e.arc(l, u, c, 0, Math.PI, !0), e.lineTo(r + t, i + o), e.closePath();
722
+ break;
723
+ }
724
+ case "bentarrow":
725
+ case "bentuparrow": {
726
+ let t = Math.min(a, o) * .25;
727
+ e.moveTo(r, f - t / 2), e.lineTo(r + a - t * 2, f - t / 2), e.lineTo(r + a - t * 2, i + t), e.lineTo(r + a, f), e.lineTo(r + a - t * 2, i + o - t), e.lineTo(r + a - t * 2, f + t / 2), e.lineTo(r, f + t / 2), e.closePath();
728
+ break;
729
+ }
730
+ case "plus": {
731
+ let t = Math.min(a, o) * (s ?? 25e3) / 1e5;
732
+ e.rect(d - t, i, 2 * t, o), e.rect(r, f - t, a, 2 * t);
733
+ break;
734
+ }
735
+ case "mathnotequal": {
736
+ let t = Math.min(5e4, Math.max(0, s ?? 23520)), n = Math.min(66e5, Math.max(42e5, c ?? 66e5)), r = Math.min(1e5 - 2 * t, Math.max(0, l ?? 11760)), u = o * t / 1e5, p = o * r / 2e5, m = a * 73490 / 2e5, h = o / 2, g = (n / 6e4 - 90) * Math.PI / 180, _ = h * Math.tan(g), v = Math.hypot(_, h) * u / h;
737
+ e.rect(d - m, f - p - u, 2 * m, u), e.rect(d - m, f + p, 2 * m, u), e.moveTo(d + _ - v / 2, i), e.lineTo(d + _ + v / 2, i), e.lineTo(d - _ + v / 2, i + o), e.lineTo(d - _ - v / 2, i + o), e.closePath();
738
+ break;
739
+ }
740
+ case "flowchartdelay": {
741
+ let t = o / 2;
742
+ e.moveTo(r, i), e.lineTo(r + a - t, i), e.arc(r + a - t, f, t, -Math.PI / 2, Math.PI / 2), e.lineTo(r, i + o), e.closePath();
743
+ break;
744
+ }
745
+ case "flowchartdisplay": {
746
+ let t = a * .2, n = a * .15;
747
+ e.moveTo(r + t, i), e.lineTo(r + a - n, i), e.arc(r + a - n, f, o / 2, -Math.PI / 2, Math.PI / 2), e.lineTo(r + t, i + o), e.lineTo(r, f), e.closePath();
748
+ break;
749
+ }
750
+ case "flowchartpunchedcard": {
751
+ let t = a * .2;
752
+ e.moveTo(r + t, i), e.lineTo(r + a, i), e.lineTo(r + a - t, i + o), e.lineTo(r, i + o), e.closePath();
753
+ break;
754
+ }
755
+ case "flowchartoffpageconnector": {
756
+ let t = o * .3;
757
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o - t), e.lineTo(d, i + o), e.lineTo(r, i + o - t), e.closePath();
758
+ break;
759
+ }
760
+ case "flowchartonlinestorage":
761
+ case "flowchartmanuallabel":
762
+ case "flowchartpuncheddisk":
763
+ e.rect(r, i, a, o);
764
+ break;
765
+ case "horizontalscroll": {
766
+ let t = Math.min(a, o) * .15;
767
+ e.roundRect(r + t, i, a - t, o, t), e.moveTo(r + t, i + t * 2), e.arc(r + t, i + t, t, Math.PI / 2, Math.PI * 2.5);
768
+ break;
769
+ }
770
+ case "verticalscroll": {
771
+ let t = Math.min(a, o) * .15;
772
+ e.roundRect(r, i + t, a, o - t, t), e.moveTo(r + t * 2, i + t), e.arc(r + t, i + t, t, 0, Math.PI * 2);
773
+ break;
774
+ }
775
+ case "ribbon": {
776
+ let t = Math.min(33333, Math.max(0, s ?? 16667)), n = a * Math.min(75e3, Math.max(25e3, c ?? 5e4)) / 2e5, l = a / 8, u = a / 32, d = a / 2 - n, f = a / 2 + n, p = d + u, m = f - u, h = d + l, g = f - l, _ = h - u, v = g + u, y = a - l, b = o * t / 2e5, x = o * t / 1e5, S = o - x, C = S / 2;
777
+ e.moveTo(r, i), e.lineTo(r + _, i), e.lineTo(r + p, i + b), e.lineTo(r + m, i + x), e.lineTo(r + v, i + b), e.lineTo(r + a, i), e.lineTo(r + y, i + C), e.lineTo(r + a, i + S), e.lineTo(r + f, i + S), e.lineTo(r + f, i + o), e.lineTo(r + p, i + o), e.lineTo(r + d, i + S), e.lineTo(r, i + S), e.lineTo(r + l, i + C), e.closePath();
778
+ break;
779
+ }
780
+ case "ribbon2": {
781
+ let t = Math.min(33333, Math.max(0, s ?? 16667)), n = a * Math.min(75e3, Math.max(25e3, c ?? 5e4)) / 2e5, l = a / 8, u = a / 32, d = a / 2 - n, f = a / 2 + n, p = d + u, m = f - u, h = d + l, g = f - l, _ = h - u, v = g + u, y = a - l, b = o * t / 2e5, x = o * t / 1e5, S = o - b, C = o - x, w = x, T = (w + o) / 2;
782
+ e.moveTo(r, i + o), e.lineTo(r + _, i + o), e.lineTo(r + p, i + S), e.lineTo(r + m, i + C), e.lineTo(r + v, i + S), e.lineTo(r + a, i + o), e.lineTo(r + y, i + T), e.lineTo(r + a, i + w), e.lineTo(r + f, i + w), e.lineTo(r + f, i), e.lineTo(r + p, i), e.lineTo(r + d, i + w), e.lineTo(r, i + w), e.lineTo(r + l, i + T), e.closePath();
783
+ break;
784
+ }
785
+ case "ellipseribbon": {
786
+ let t = Math.min(1e5, Math.max(0, s ?? 25e3)), n = 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 = a / 8, p = a * n / 2e5, m = a / 2 - p, h = m + f, g = a - h, _ = a - m, v = a - f, y = o * d / 1e5, b = 4 * y / a, x = b * (h - h * h / a), S = h / 2, C = b * S, w = a - S, T = o * t / 1e5, E = T - y, D = b * (m - m * m / a), O = D + E, k = y + E - O + y + E, A = o - T, j = (y * 14 / 16 + A) / 2, M = D + A, N = O + A, P = m / 2, F = b * P + A, I = a - P, L = k + A;
787
+ e.moveTo(r, i), e.quadraticCurveTo(r + S, i + C, r + h, i + x), e.lineTo(r + m, i + O), e.quadraticCurveTo(r + a / 2, i + k, r + _, i + O), e.lineTo(r + g, i + x), e.quadraticCurveTo(r + w, i + C, r + a, i), e.lineTo(r + v, i + j), e.lineTo(r + a, i + A), e.quadraticCurveTo(r + I, i + F, r + _, i + M), e.lineTo(r + _, i + N), e.quadraticCurveTo(r + a / 2, i + L, r + m, i + N), e.lineTo(r + m, i + M), e.quadraticCurveTo(r + P, i + F, r, i + A), e.lineTo(r + f, i + j), e.closePath();
788
+ break;
789
+ }
790
+ case "ellipseribbon2": {
791
+ let t = Math.min(1e5, Math.max(0, s ?? 25e3)), n = 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 = a / 8, p = a * n / 2e5, m = a / 2 - p, h = m + f, g = a - h, _ = a - m, v = a - f, y = o * d / 1e5, b = 4 * y / a, x = o - b * (h - h * h / a), S = h / 2, C = o - b * S, w = a - S, T = o * t / 1e5, E = T - y, D = b * (m - m * m / a), O = D + E, k = o - O, A = y + E - O + y + E, j = o - A, M = o - T, N = o - (y * 14 / 16 + M) / 2, P = o - (D + M), F = o - (O + M), I = m / 2, L = o - (b * I + M), R = a - I, z = o - (A + M);
792
+ e.moveTo(r, i + o), e.quadraticCurveTo(r + S, i + C, r + h, i + x), e.lineTo(r + m, i + k), e.quadraticCurveTo(r + a / 2, i + j, r + _, i + k), e.lineTo(r + g, i + x), e.quadraticCurveTo(r + w, i + C, r + a, i + o), e.lineTo(r + v, i + N), e.lineTo(r + a, i + T), e.quadraticCurveTo(r + R, i + L, r + _, i + P), e.lineTo(r + _, i + F), e.quadraticCurveTo(r + a / 2, i + z, r + m, i + F), e.lineTo(r + m, i + P), e.quadraticCurveTo(r + I, i + L, r, i + T), e.lineTo(r + f, i + N), e.closePath();
793
+ break;
794
+ }
795
+ case "circulararrow": {
796
+ let t = (c ?? 0) / 6e4 * Math.PI / 180, n = (s ?? 162e5) / 6e4 * Math.PI / 180, r = (l ?? 5e4) / 1e5, i = Math.min(a, o) / 2, u = i * (1 - r), p = (i + u) / 2, m = i - u, h = t + n;
797
+ e.arc(d, f, i, t, h, !1), e.arc(d, f, u, h, t, !0), e.closePath();
798
+ 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 * _;
799
+ e.moveTo(y, b), e.lineTo(d + i * Math.cos(h), f + i * Math.sin(h)), e.lineTo(d + u * Math.cos(h), f + u * Math.sin(h)), e.closePath();
800
+ break;
801
+ }
802
+ case "curvedrightarrow": {
803
+ let t = Math.min(a, o), n = o / 2, u = 5e4 * o / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(d, Math.max(0, s ?? 25e3)) / 1e5, p = t * d / 1e5, m = n - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = 1e5 * (Math.sqrt(Math.max(0, h)) * a / (2 * m)) / t, _ = t * Math.min(g, Math.max(0, l ?? 25e3)) / 1e5, v = Math.sqrt(Math.max(0, a * a - _ * _)) * m / a, y = m + f, b = m + v, x = y + v, S = (p - f) / 2, C = b - S, w = x + S, T = o - p / 2, D = a - _, O = Math.atan2(_, v), k = -O, A = Math.PI - O;
804
+ e.moveTo(r, i + m), E(e, r, i + m, a, m, Math.PI, k), e.lineTo(r + D, i + C), e.lineTo(r + a, i + T), e.lineTo(r + D, i + w), e.lineTo(r + D, i + x), E(e, r + D, i + x, a, m, A, O), e.closePath();
805
+ break;
806
+ }
807
+ case "curvedleftarrow": {
808
+ let t = Math.min(a, o), n = o / 2, u = 5e4 * o / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(d, Math.max(0, s ?? 25e3)) / 1e5, p = t * d / 1e5, m = n - (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, D = o - p / 2, O = v, k = Math.atan2(v, y), A = f / 2, j = Math.atan2(A, g), M = j - k, N = k - j, P = -j;
809
+ e.moveTo(r, i + D), e.lineTo(r + O, i + w), e.lineTo(r + O, i + x);
810
+ let F = E(e, r + O, i + x, a, m, k, M);
811
+ E(e, F.x, F.y, a, m, P, N), e.lineTo(r + O, i + T), e.closePath();
812
+ break;
813
+ }
814
+ case "curveduparrow": {
815
+ let t = Math.min(a, o), n = a / 2, u = 5e4 * a / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(1e5, Math.max(0, s ?? 25e3)) / 1e5, p = t * d / 1e5, m = n - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * o / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, l ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, o * o - v * v)) * m / o, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, D = a - p / 2, O = v, k = Math.atan2(v, y), A = f / 2, j = Math.atan2(A, g), M = j - k, N = k - j, P = Math.PI / 2 - k, F = Math.PI / 2 - j;
816
+ e.moveTo(r + D, i), e.lineTo(r + T, i + O), e.lineTo(r + S, i + O);
817
+ let I = E(e, r + S, i + O, m, o, P, N);
818
+ E(e, I.x, I.y, m, o, F, M), e.lineTo(r + w, i + O), e.closePath();
819
+ break;
820
+ }
821
+ case "curveddownarrow": {
822
+ let t = Math.min(a, o), n = a / 2, u = 5e4 * a / t, d = Math.min(u, Math.max(0, c ?? 5e4)), f = t * Math.min(1e5, Math.max(0, s ?? 25e3)) / 1e5, p = t * d / 1e5, m = n - (f + p) / 4, h = (2 * m) ** 2 - f ** 2, g = Math.sqrt(Math.max(0, h)) * o / (2 * m), _ = 1e5 * g / t, v = t * Math.min(_, Math.max(0, l ?? 25e3)) / 1e5, y = Math.sqrt(Math.max(0, o * o - v * v)) * m / o, b = m + f, x = m + y, S = b + y, C = (p - f) / 2, w = x - C, T = S + C, D = a - p / 2, O = o - v, k = Math.atan2(v, y), A = f / 2, j = Math.atan2(A, g), M = 3 * Math.PI / 2 + k;
823
+ 3 * Math.PI / 2 - j, j - Math.PI / 2, Math.PI / 2 - j, e.moveTo(r + D, i + o), e.lineTo(r + w, i + O), e.lineTo(r + x, i + O), E(e, r + x, i + O, m, o, M, -k), e.lineTo(r + b, i), E(e, r + b, i, m, o, 3 * Math.PI / 2, k), e.lineTo(r + T, i + O), e.closePath();
824
+ break;
825
+ }
826
+ case "stripedrightarrow": {
827
+ let t = Math.min(a, o), n = t / 32, l = t / 16, u = t / 8, d = t * (s ?? 5e4) / 1e5, p = a * (c ?? 5e4) / 1e5, m = f - d / 2, h = f + d / 2, g = r + a - p;
828
+ e.rect(r, m, n, d), e.rect(r + l, m, l, d), e.rect(r + u, m, u, d), e.moveTo(g, m), e.lineTo(g, i), e.lineTo(r + a, f), e.lineTo(g, i + o), e.lineTo(g, h), e.lineTo(r + u * 2, h), e.lineTo(r + u * 2, m), e.closePath();
829
+ break;
830
+ }
831
+ case "flowchartmagneticdisk": {
832
+ let t = o * .15;
833
+ e.moveTo(r, i + t), e.ellipse(d, i + t, a / 2, t, 0, Math.PI, 0), e.lineTo(r + a, i + o - t), e.ellipse(d, i + o - t, a / 2, t, 0, 0, Math.PI), e.lineTo(r, i + t), e.closePath(), e.moveTo(r + a, i + t), e.ellipse(d, i + t, a / 2, t, 0, 0, Math.PI);
834
+ break;
835
+ }
836
+ case "flowchartmagneticdrum": {
837
+ let t = a * .15;
838
+ e.moveTo(r + t, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o), e.lineTo(r + t, i + o), e.ellipse(r + t, f, t, o / 2, 0, Math.PI / 2, -Math.PI / 2, !0), e.closePath(), e.moveTo(r + a, i), e.ellipse(r + a, f, t, o / 2, 0, -Math.PI / 2, Math.PI / 2);
839
+ break;
840
+ }
841
+ case "flowchartmagnetictape": {
842
+ let t = Math.min(a, o) / 2, n = d + t * .5;
843
+ e.moveTo(d, i + o), e.arc(d, f, t, Math.PI / 2, Math.PI / 2 + Math.PI * 2 * .875), e.lineTo(n, f + t * .5), e.lineTo(n, i + o), e.closePath();
844
+ break;
845
+ }
846
+ case "flowchartpunchedtape": {
847
+ let t = o * .12;
848
+ e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o - t), e.bezierCurveTo(r + a * .75, i + o, r + a * .25, i + o - t * 2, r, i + o - t), e.closePath(), e.moveTo(r, i + t), e.bezierCurveTo(r + a * .25, i, r + a * .75, i + t * 2, r + a, i + t);
849
+ break;
850
+ }
851
+ case "flowchartmanualoperation": {
852
+ let t = a * .15;
853
+ e.moveTo(r + t, i), e.lineTo(r + a - t, i), e.lineTo(r + a, i + o), e.lineTo(r, i + o), e.closePath();
854
+ break;
855
+ }
856
+ case "flowchartmultidocument": {
857
+ let t = o * .1, n = a * .04;
858
+ e.rect(r + n * 2, i - o * .08, a - n * 2, o * .1), e.rect(r + n, i - o * .04, a - n, o * .06), e.moveTo(r, i), e.lineTo(r + a, i), e.lineTo(r + a, i + o - t), e.bezierCurveTo(r + a * .75, i + o, r + a * .25, i + o - t * 2, r, i + o - t), e.closePath();
859
+ break;
860
+ }
861
+ case "rttriangle":
862
+ e.moveTo(r, i), e.lineTo(r, i + o), e.lineTo(r + a, i + o), e.closePath();
863
+ break;
864
+ default:
865
+ e.rect(r, i, a, o);
866
+ break;
867
+ }
868
+ }
869
+ function M(e, t, n) {
870
+ 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;
871
+ return {
872
+ lw: r,
873
+ halfW: r * i / 2,
874
+ len: r * a
875
+ };
876
+ }
877
+ var N = new Set([
878
+ "triangle",
879
+ "stealth",
880
+ "diamond",
881
+ "oval"
882
+ ]);
883
+ function P(e, t, n) {
884
+ return N.has(e.type) ? M(e, t, n).len : 0;
885
+ }
886
+ function F(e, t, n) {
887
+ if (e.type === "none") return 0;
888
+ let { lw: r, halfW: i, len: a } = M(e, t, n);
889
+ return Math.max(a, i) + r / 2;
890
+ }
891
+ function I(e, t, n) {
892
+ if (n <= 0) return {
893
+ x: e.x,
894
+ y: e.y
895
+ };
896
+ let r = t.x - e.x, i = t.y - e.y, a = Math.hypot(r, i);
897
+ if (a < 1e-9) return {
898
+ x: e.x,
899
+ y: e.y
900
+ };
901
+ let o = Math.min(n, a) / a;
902
+ return {
903
+ x: e.x + r * o,
904
+ y: e.y + i * o
905
+ };
906
+ }
907
+ function L(t, n, r, i, a, o, s, c) {
908
+ if (a.type === "none") return;
909
+ let { lw: l, halfW: u, len: d } = M(a, o, s), f = c ?? e(o.color);
910
+ 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) {
911
+ case "triangle":
912
+ case "stealth":
913
+ t.moveTo(0, 0), t.lineTo(-d, -u), t.lineTo(-d, u), t.closePath(), t.fill();
914
+ break;
915
+ case "arrow":
916
+ t.lineCap = "round", t.lineJoin = "round", t.moveTo(-d, -u), t.lineTo(0, 0), t.lineTo(-d, u), t.stroke();
917
+ break;
918
+ case "diamond":
919
+ t.moveTo(0, 0), t.lineTo(-d / 2, -u), t.lineTo(-d, 0), t.lineTo(-d / 2, u), t.closePath(), t.fill();
920
+ break;
921
+ case "oval":
922
+ t.ellipse(-d / 2, 0, d / 2, u, 0, 0, Math.PI * 2), t.fill();
923
+ break;
924
+ }
925
+ t.restore();
926
+ }
927
+ var R = (e) => e === 32 || e === 12288;
928
+ function z(e, t, a = {}) {
929
+ if (Math.abs(t) <= .5) return null;
930
+ let o = a.firstContentSi ?? 0, s = a.lastDrawnSi ?? e.length - 1, c = a.minPerGap ?? -Infinity, l = a.isGapChar ?? n, u = a.isWhitespace ?? R, d = a.seaClusterGaps ?? !1, f = [];
931
+ for (let t = o; t < e.length; t++) {
932
+ let n = e[t];
933
+ if (n === void 0) continue;
934
+ if (n.text === void 0) {
935
+ f.push({
936
+ si: t,
937
+ off: 0,
938
+ ws: !1
939
+ });
940
+ continue;
941
+ }
942
+ let r = 0;
943
+ for (let e of n.text) {
944
+ let n = e.codePointAt(0);
945
+ f.push({
946
+ si: t,
947
+ off: r,
948
+ cp: n,
949
+ ws: u(n)
950
+ }), r++;
951
+ }
952
+ }
953
+ let p = -1, m = -1;
954
+ for (let e = 0; e < f.length; e++) f[e].ws || (p === -1 && (p = e), m = e);
955
+ if (p === -1 || p === m) return null;
956
+ let h = Array(f.length).fill(!1), g = 0;
957
+ for (let e = p; e < m; e++) {
958
+ let t = f[e];
959
+ if (t.si === s) continue;
960
+ if (t.ws) {
961
+ h[e] = !0, g++;
962
+ continue;
963
+ }
964
+ let n = f[e + 1];
965
+ if (n.ws) continue;
966
+ let a = t.cp, o = n.cp;
967
+ (a !== void 0 && l(a) || o !== void 0 && l(o) || d && a !== void 0 && o !== void 0 && i(a) && i(o) && !r(o)) && (h[e] = !0, g++);
968
+ }
969
+ if (g === 0) return null;
970
+ let _ = t / g;
971
+ t < 0 && _ < c && (_ = c);
972
+ let v = /* @__PURE__ */ new Map();
973
+ for (let e of f) e.cp !== void 0 && v.set(e.si, (v.get(e.si) ?? 0) + 1);
974
+ let y = /* @__PURE__ */ new Map();
975
+ for (let e = 0; e < f.length; e++) {
976
+ if (!h[e]) continue;
977
+ let t = f[e], n = y.get(t.si);
978
+ n || (n = {
979
+ splitBefore: [],
980
+ trailingGap: !1,
981
+ internalStretch: 0
982
+ }, y.set(t.si, n));
983
+ let r = v.get(t.si) ?? 0;
984
+ t.cp === void 0 || t.off === r - 1 ? n.trailingGap = !0 : (n.splitBefore.push(t.off + 1), n.internalStretch += _);
985
+ }
986
+ return {
987
+ perGap: _,
988
+ perSeg: y
989
+ };
990
+ }
991
+ //#endregion
992
+ //#region ../../node_modules/@silurus/ooxml/dist/highlight-rect-BuX5rWP4.js
993
+ function B(e, t, n) {
994
+ return e < t ? t : e > n ? n : e;
995
+ }
996
+ function V(e, t, n, r, i, a) {
997
+ let o = e.length;
998
+ if (o === 0) return {
999
+ start: 0,
1000
+ end: -1,
1001
+ topIndex: 0,
1002
+ offsets: [],
1003
+ totalHeight: 0
1004
+ };
1005
+ let s = a?.leading ?? 0, c = a?.trailing ?? 0, l = Array(o), u = 0;
1006
+ for (let n = 0; n < o; n++) l[n] = s + u + n * t, u += e[n];
1007
+ let d = s + u + (o - 1) * t + c, f = 0, p = o;
1008
+ for (; f < p;) {
1009
+ let e = f + p >>> 1;
1010
+ l[e] <= n ? f = e + 1 : p = e;
1011
+ }
1012
+ let m = B(f - 1, 0, o - 1), h = n + r;
1013
+ for (f = 0, p = o; f < p;) {
1014
+ let e = f + p >>> 1;
1015
+ l[e] < h ? f = e + 1 : p = e;
1016
+ }
1017
+ let g = B(f - 1, 0, o - 1);
1018
+ return {
1019
+ start: B(m - i, 0, o - 1),
1020
+ end: B(g + i, 0, o - 1),
1021
+ topIndex: m,
1022
+ offsets: l,
1023
+ totalHeight: d
1024
+ };
1025
+ }
1026
+ function H(e, t, n, r) {
1027
+ let i = t <= 0 ? 0 : r(e.slice(0, t)), a = n >= e.length ? r(e) : r(e.slice(0, n));
1028
+ return {
1029
+ x: i,
1030
+ width: Math.max(0, a - i)
1031
+ };
1032
+ }
1033
+ function U(e, t) {
1034
+ return t > 0 ? `${e / t * 100}%` : "0%";
1035
+ }
1036
+ //#endregion
1037
+ export { F as a, P as c, j as d, m as f, z as h, C as i, d as l, u as m, U as n, I as o, p, V as r, L as s, H as t, f as u };