@peasant-labs/fairtrade 0.0.51 → 0.0.53

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 (118) hide show
  1. package/dist/lib/base.css +1 -1
  2. package/dist/lib/commons.js +544 -522
  3. package/dist/lib/components.css +1 -1
  4. package/dist/lib/share.js +2 -2
  5. package/dist/lib/tokens.css +2 -2
  6. package/dist/lib/tokens.json +2 -2
  7. package/dist/lib/types/AppSidebar.d.ts +9 -11
  8. package/dist/lib/types/Avatar.d.ts +2 -2
  9. package/dist/lib/types/Breadcrumb.d.ts +12 -5
  10. package/dist/lib/types/Dialog.d.ts +1 -1
  11. package/dist/lib/types/Input.d.ts +3 -3
  12. package/dist/lib/types/OverflowList.d.ts +1 -1
  13. package/dist/lib/types/RepoPicker.d.ts +3 -1
  14. package/dist/lib/types/Switch.d.ts +3 -3
  15. package/dist/lib/types/commons/Explore.d.ts +1 -1
  16. package/dist/lib/types/commons/types.d.ts +12 -0
  17. package/dist/lib/{ui-Do7A_I-0.js → ui-suNzomre.js} +1682 -1623
  18. package/dist/lib/ui.js +1 -1
  19. package/package.json +1 -1
  20. package/dist/lib/abnfDiagram-WEYOIA3C-D4LMNFIJ.js +0 -89
  21. package/dist/lib/arc-1xTxsoRi.js +0 -80
  22. package/dist/lib/architecture-WOLXFQ4H-c6RsZuzu.js +0 -3
  23. package/dist/lib/architectureDiagram-ZHVYKT53-DTINqD5R.js +0 -4145
  24. package/dist/lib/array-CApNbSU9.js +0 -6
  25. package/dist/lib/blockDiagram-RJAE7QA3-CUYHoR3g.js +0 -1946
  26. package/dist/lib/c4Diagram-XDPPPE54-Cdx6_DsI.js +0 -2990
  27. package/dist/lib/channel-DagAO2vE.js +0 -5
  28. package/dist/lib/chunk-2E7WHVMD-BzhgXW3b.js +0 -490
  29. package/dist/lib/chunk-2Q5K7J3B-DWNwIK5Y.js +0 -15
  30. package/dist/lib/chunk-4EMNKR2T-DhFrQz9k.js +0 -236
  31. package/dist/lib/chunk-55XCU76K-CI0GXDkJ.js +0 -61
  32. package/dist/lib/chunk-5VM5RSS4-BAQ-46g4.js +0 -5
  33. package/dist/lib/chunk-7S6XSTFO-CMt_p-O6.js +0 -1373
  34. package/dist/lib/chunk-AQDTSKZB-DrZccIQa.js +0 -1847
  35. package/dist/lib/chunk-DSNLSHJZ-CpA9d2CJ.js +0 -4044
  36. package/dist/lib/chunk-DUW6YSOI-C-tN4Kiv.js +0 -10
  37. package/dist/lib/chunk-EJLWFMJV-B30MNYvY.js +0 -75
  38. package/dist/lib/chunk-HAGFOTED-DMU2JNZM.js +0 -4487
  39. package/dist/lib/chunk-HNE4Q36P-BIA0n2gA.js +0 -363
  40. package/dist/lib/chunk-J5ZVWO5B-CA_-jk8G.js +0 -12
  41. package/dist/lib/chunk-JWPE2WC7-KRpHbrIX.js +0 -8
  42. package/dist/lib/chunk-LNGE3PJU-CMGaAEAh.js +0 -1513
  43. package/dist/lib/chunk-NGNAAXSQ-D7Dvct7J.js +0 -19774
  44. package/dist/lib/chunk-NQOKRVIF-MK9F46y3.js +0 -4258
  45. package/dist/lib/chunk-OYAV6JZA-B1yICcbU.js +0 -10
  46. package/dist/lib/chunk-UHW7PFBP-CLrOaA0y.js +0 -67
  47. package/dist/lib/chunk-VQ5W62QI-_ZR3gKe4.js +0 -26
  48. package/dist/lib/chunk-WQQL4CDK-DFtyhYZq.js +0 -693
  49. package/dist/lib/chunk-XXDRQBXY-uzyNBbgx.js +0 -9
  50. package/dist/lib/chunk-Y2CYZVJY-BYzrzvCI.js +0 -12
  51. package/dist/lib/chunk-YZO67HFG-D1jKt78p.js +0 -275
  52. package/dist/lib/chunk-ZAUX2LTX-7XO0Yj1z.js +0 -37
  53. package/dist/lib/chunk-ZCHMQSOR-CxoKltfF.js +0 -349
  54. package/dist/lib/classDiagram-v2-4MYWR3UA-BPvwhZqw.js +0 -3397
  55. package/dist/lib/cose-bilkent-JH36ORCC-Oj79uOIQ.js +0 -2250
  56. package/dist/lib/cynefin-EF2NZ3EQ-COX3NRum.js +0 -3
  57. package/dist/lib/cynefinDiagram-WF24UDRP-UzTptNAX.js +0 -349
  58. package/dist/lib/cytoscape.esm-0ojxgO9x.js +0 -18161
  59. package/dist/lib/dagre-NK4GIZVX-DWZr-NGm.js +0 -2356
  60. package/dist/lib/defaultLocale-BbgDuMnp.js +0 -201
  61. package/dist/lib/diagram-CBK3MWTC-CsyKuv-w.js +0 -525
  62. package/dist/lib/diagram-I5XIIV2D-DWY2JSPC.js +0 -134
  63. package/dist/lib/diagram-ODIL2UCW-DUptj0JZ.js +0 -301
  64. package/dist/lib/diagram-PFBEJUXE-N5XnIBqM.js +0 -447
  65. package/dist/lib/diagram-RJA3I4VV-B9XgohYo.js +0 -214
  66. package/dist/lib/diagram-TYUNFSNR-XnsJIeAd.js +0 -5084
  67. package/dist/lib/dist-AMlsjiDX.js +0 -59
  68. package/dist/lib/ebnfDiagram-V4P3TTPT-BssHqFox.js +0 -100
  69. package/dist/lib/elk-QONTBCTQ-DwmwqYgP.js +0 -47944
  70. package/dist/lib/erDiagram-KYQIGQAA-BQiXw1Tw.js +0 -1970
  71. package/dist/lib/eventmodeling-K75KTNOO-DDb--yMc.js +0 -3
  72. package/dist/lib/flowDiagram-IUGLLWBU-BEqqF1y2.js +0 -17
  73. package/dist/lib/ganttDiagram-R7GPNTJY-BWtGXxEF.js +0 -3094
  74. package/dist/lib/gitGraph-VSP46ZUC-BSwOaak_.js +0 -3
  75. package/dist/lib/gitGraphDiagram-PDYL7XHY-CHGNuGbk.js +0 -729
  76. package/dist/lib/graphlib-Dndp26xU.js +0 -1267
  77. package/dist/lib/info-OHQRW6UA-Dk06sZRe.js +0 -3
  78. package/dist/lib/infoDiagram-MVDRKAX5-Cdhxnjmi.js +0 -20
  79. package/dist/lib/init-Bwwdo3M6.js +0 -15
  80. package/dist/lib/ishikawaDiagram-HPEHV2GE-Dzhti-GJ.js +0 -719
  81. package/dist/lib/journeyDiagram-BOSHW7O7-C3_vsSjw.js +0 -884
  82. package/dist/lib/kanban-definition-FNSA4HC5-XsfCEsjn.js +0 -976
  83. package/dist/lib/katex-Dw0PnoPU.js +0 -21850
  84. package/dist/lib/line-C9krU3Sv.js +0 -34
  85. package/dist/lib/linear-Cvilv3OA.js +0 -289
  86. package/dist/lib/mermaid-parser.core-I7qQ_fxz.js +0 -638
  87. package/dist/lib/mermaid.core-UNHMAbBP.js +0 -1126
  88. package/dist/lib/mindmap-definition-6OY57UG3-CAua-JvB.js +0 -1011
  89. package/dist/lib/ordinal-C55HfHHp.js +0 -65
  90. package/dist/lib/packet-JDAUHWVQ-DZ-MKx4I.js +0 -3
  91. package/dist/lib/path-DNvJyUE8.js +0 -85
  92. package/dist/lib/pegDiagram-ECIUJNBX-BCxa_IO0.js +0 -94
  93. package/dist/lib/pie-XZMESJXO-DpCa-Nnq.js +0 -3
  94. package/dist/lib/pieDiagram-GNMPY74T-CE_C3dCB.js +0 -205
  95. package/dist/lib/quadrantDiagram-D57K4MC3-CDgzdMoL.js +0 -2001
  96. package/dist/lib/radar-ABXABTNO-BOVK7L9p.js +0 -3
  97. package/dist/lib/railroad-I3PHUGI6-B6spKM0Z.js +0 -3
  98. package/dist/lib/railroad-abnf-LNEFI6M7-DEWqfByZ.js +0 -3
  99. package/dist/lib/railroad-ebnf-DWYD2UWJ-CWRLtxHB.js +0 -3
  100. package/dist/lib/railroad-peg-JR7BVNR7-C-3NHSsk.js +0 -3
  101. package/dist/lib/railroadDiagram-Y72NRBL7-a8YVk8LT.js +0 -76
  102. package/dist/lib/requirementDiagram-EQYSW5RA-B9HolqxU.js +0 -2228
  103. package/dist/lib/rough.esm-a8mysczE.js +0 -1352
  104. package/dist/lib/sankeyDiagram-SY24JHO5-CLFMtMJG.js +0 -970
  105. package/dist/lib/sequenceDiagram-BLEHNHQU-B5wfSV85.js +0 -4253
  106. package/dist/lib/sizeCapture-INFHLROL-BWGCc9aa.js +0 -46
  107. package/dist/lib/src-Dcy0zUZH.js +0 -2153
  108. package/dist/lib/stateDiagram-v2-A6IESKWZ-C92vye4N.js +0 -2143
  109. package/dist/lib/swimlanes-B3ENRKFQ-B6-i-tPc.js +0 -4764
  110. package/dist/lib/swimlanesDiagram-AYQRV4AK-CbkBeql-.js +0 -28
  111. package/dist/lib/timeline-definition-JXYKGLGB-D2Ip4r72.js +0 -1073
  112. package/dist/lib/treeView-D4JQ5SDB-CFaKQ_2T.js +0 -3
  113. package/dist/lib/treemap-SAJKECNS-BQ6z7Z3g.js +0 -3
  114. package/dist/lib/usecaseDiagram-WPOLBNNX-BK1Anch1.js +0 -7190
  115. package/dist/lib/vennDiagram-Q3Y3IDCW-B6YTBqTS.js +0 -1880
  116. package/dist/lib/wardley-7MLQ67FV-DChYwu4i.js +0 -3
  117. package/dist/lib/wardleyDiagram-IVAIDKWA-D5I1qLUK.js +0 -645
  118. package/dist/lib/xychartDiagram-4URNHDU4-B6RXyhTO.js +0 -2218
@@ -1,2143 +0,0 @@
1
- import { m as e, p as t } from "./src-Dcy0zUZH.js";
2
- import { n } from "./chunk-Y2CYZVJY-BYzrzvCI.js";
3
- import { C as r, H as i, U as a, _ as o, a as s, b as c, et as l, q as u, s as d, v as f } from "./chunk-DSNLSHJZ-CpA9d2CJ.js";
4
- import { _ as p, s as m } from "./chunk-7S6XSTFO-CMt_p-O6.js";
5
- import "./chunk-YZO67HFG-D1jKt78p.js";
6
- import "./chunk-AQDTSKZB-DrZccIQa.js";
7
- import "./chunk-UHW7PFBP-CLrOaA0y.js";
8
- import { a as h, i as g, o as _, r as v } from "./chunk-J5ZVWO5B-CA_-jk8G.js";
9
- import "./chunk-HAGFOTED-DMU2JNZM.js";
10
- import "./chunk-ZAUX2LTX-7XO0Yj1z.js";
11
- import "./chunk-WQQL4CDK-DFtyhYZq.js";
12
- import { t as y } from "./chunk-55XCU76K-CI0GXDkJ.js";
13
- import { t as b } from "./chunk-XXDRQBXY-uzyNBbgx.js";
14
- import { t as x } from "./chunk-VQ5W62QI-_ZR3gKe4.js";
15
- import "./chunk-HNE4Q36P-BIA0n2gA.js";
16
- import { r as S, t as C } from "./chunk-EJLWFMJV-B30MNYvY.js";
17
- //#region node_modules/.pnpm/mermaid@12.2.0/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-A6IESKWZ.mjs
18
- var w = (function() {
19
- var e = /* @__PURE__ */ n(function(e, t, n, r) {
20
- for (n ||= {}, r = e.length; r--; n[e[r]] = t);
21
- return n;
22
- }, "o"), t = [1, 2], r = [1, 3], i = [1, 4], a = [2, 4], o = [1, 9], s = [1, 11], c = [1, 16], l = [1, 17], u = [1, 18], d = [1, 19], f = [1, 33], p = [1, 20], m = [1, 21], h = [1, 22], g = [1, 23], _ = [1, 24], v = [1, 26], y = [1, 27], b = [1, 28], x = [1, 29], S = [1, 30], C = [1, 31], w = [1, 32], T = [1, 35], E = [1, 36], D = [1, 37], O = [1, 38], k = [1, 34], A = [
23
- 1,
24
- 4,
25
- 5,
26
- 16,
27
- 17,
28
- 19,
29
- 21,
30
- 22,
31
- 24,
32
- 25,
33
- 26,
34
- 27,
35
- 28,
36
- 29,
37
- 33,
38
- 35,
39
- 37,
40
- 38,
41
- 41,
42
- 45,
43
- 48,
44
- 51,
45
- 52,
46
- 53,
47
- 54,
48
- 57
49
- ], j = [
50
- 1,
51
- 4,
52
- 5,
53
- 14,
54
- 15,
55
- 16,
56
- 17,
57
- 19,
58
- 21,
59
- 22,
60
- 24,
61
- 25,
62
- 26,
63
- 27,
64
- 28,
65
- 29,
66
- 33,
67
- 35,
68
- 37,
69
- 38,
70
- 39,
71
- 40,
72
- 41,
73
- 45,
74
- 48,
75
- 51,
76
- 52,
77
- 53,
78
- 54,
79
- 57
80
- ], M = [
81
- 4,
82
- 5,
83
- 16,
84
- 17,
85
- 19,
86
- 21,
87
- 22,
88
- 24,
89
- 25,
90
- 26,
91
- 27,
92
- 28,
93
- 29,
94
- 33,
95
- 35,
96
- 37,
97
- 38,
98
- 41,
99
- 45,
100
- 48,
101
- 51,
102
- 52,
103
- 53,
104
- 54,
105
- 57
106
- ], N = {
107
- trace: /* @__PURE__ */ n(function() {}, "trace"),
108
- yy: {},
109
- symbols_: {
110
- error: 2,
111
- start: 3,
112
- SPACE: 4,
113
- NL: 5,
114
- SD: 6,
115
- document: 7,
116
- line: 8,
117
- statement: 9,
118
- classDefStatement: 10,
119
- styleStatement: 11,
120
- cssClassStatement: 12,
121
- idStatement: 13,
122
- DESCR: 14,
123
- "-->": 15,
124
- HIDE_EMPTY: 16,
125
- scale: 17,
126
- WIDTH: 18,
127
- COMPOSIT_STATE: 19,
128
- STRUCT_START: 20,
129
- STRUCT_STOP: 21,
130
- STATE_DESCR: 22,
131
- AS: 23,
132
- ID: 24,
133
- FORK: 25,
134
- JOIN: 26,
135
- CHOICE: 27,
136
- CONCURRENT: 28,
137
- note: 29,
138
- notePosition: 30,
139
- NOTE_TEXT: 31,
140
- direction: 32,
141
- acc_title: 33,
142
- acc_title_value: 34,
143
- acc_descr: 35,
144
- acc_descr_value: 36,
145
- acc_descr_multiline_value: 37,
146
- CLICK: 38,
147
- STRING: 39,
148
- HREF: 40,
149
- classDef: 41,
150
- CLASSDEF_ID: 42,
151
- CLASSDEF_STYLEOPTS: 43,
152
- DEFAULT: 44,
153
- style: 45,
154
- STYLE_IDS: 46,
155
- STYLEDEF_STYLEOPTS: 47,
156
- class: 48,
157
- CLASSENTITY_IDS: 49,
158
- STYLECLASS: 50,
159
- direction_tb: 51,
160
- direction_bt: 52,
161
- direction_rl: 53,
162
- direction_lr: 54,
163
- eol: 55,
164
- ";": 56,
165
- EDGE_STATE: 57,
166
- STYLE_SEPARATOR: 58,
167
- left_of: 59,
168
- right_of: 60,
169
- $accept: 0,
170
- $end: 1
171
- },
172
- terminals_: {
173
- 2: "error",
174
- 4: "SPACE",
175
- 5: "NL",
176
- 6: "SD",
177
- 14: "DESCR",
178
- 15: "-->",
179
- 16: "HIDE_EMPTY",
180
- 17: "scale",
181
- 18: "WIDTH",
182
- 19: "COMPOSIT_STATE",
183
- 20: "STRUCT_START",
184
- 21: "STRUCT_STOP",
185
- 22: "STATE_DESCR",
186
- 23: "AS",
187
- 24: "ID",
188
- 25: "FORK",
189
- 26: "JOIN",
190
- 27: "CHOICE",
191
- 28: "CONCURRENT",
192
- 29: "note",
193
- 31: "NOTE_TEXT",
194
- 33: "acc_title",
195
- 34: "acc_title_value",
196
- 35: "acc_descr",
197
- 36: "acc_descr_value",
198
- 37: "acc_descr_multiline_value",
199
- 38: "CLICK",
200
- 39: "STRING",
201
- 40: "HREF",
202
- 41: "classDef",
203
- 42: "CLASSDEF_ID",
204
- 43: "CLASSDEF_STYLEOPTS",
205
- 44: "DEFAULT",
206
- 45: "style",
207
- 46: "STYLE_IDS",
208
- 47: "STYLEDEF_STYLEOPTS",
209
- 48: "class",
210
- 49: "CLASSENTITY_IDS",
211
- 50: "STYLECLASS",
212
- 51: "direction_tb",
213
- 52: "direction_bt",
214
- 53: "direction_rl",
215
- 54: "direction_lr",
216
- 56: ";",
217
- 57: "EDGE_STATE",
218
- 58: "STYLE_SEPARATOR",
219
- 59: "left_of",
220
- 60: "right_of"
221
- },
222
- productions_: [
223
- 0,
224
- [3, 2],
225
- [3, 2],
226
- [3, 2],
227
- [7, 0],
228
- [7, 2],
229
- [8, 2],
230
- [8, 1],
231
- [8, 1],
232
- [9, 1],
233
- [9, 1],
234
- [9, 1],
235
- [9, 1],
236
- [9, 2],
237
- [9, 3],
238
- [9, 4],
239
- [9, 1],
240
- [9, 2],
241
- [9, 1],
242
- [9, 4],
243
- [9, 3],
244
- [9, 6],
245
- [9, 1],
246
- [9, 1],
247
- [9, 1],
248
- [9, 1],
249
- [9, 4],
250
- [9, 4],
251
- [9, 1],
252
- [9, 2],
253
- [9, 2],
254
- [9, 1],
255
- [9, 5],
256
- [9, 5],
257
- [10, 3],
258
- [10, 3],
259
- [11, 3],
260
- [12, 3],
261
- [32, 1],
262
- [32, 1],
263
- [32, 1],
264
- [32, 1],
265
- [55, 1],
266
- [55, 1],
267
- [13, 1],
268
- [13, 1],
269
- [13, 3],
270
- [13, 3],
271
- [30, 1],
272
- [30, 1]
273
- ],
274
- performAction: /* @__PURE__ */ n(function(e, t, n, r, i, a, o) {
275
- var s = a.length - 1;
276
- switch (i) {
277
- case 3: return r.setRootDoc(a[s]), a[s];
278
- case 4:
279
- this.$ = [];
280
- break;
281
- case 5:
282
- a[s] != "nl" && (a[s - 1].push(a[s]), this.$ = a[s - 1]);
283
- break;
284
- case 6:
285
- case 7:
286
- this.$ = a[s];
287
- break;
288
- case 8:
289
- this.$ = "nl";
290
- break;
291
- case 12:
292
- this.$ = a[s];
293
- break;
294
- case 13:
295
- let e = a[s - 1];
296
- e.description = r.trimColon(a[s]), this.$ = e;
297
- break;
298
- case 14:
299
- this.$ = {
300
- stmt: "relation",
301
- state1: a[s - 2],
302
- state2: a[s]
303
- };
304
- break;
305
- case 15:
306
- let t = r.trimColon(a[s]);
307
- this.$ = {
308
- stmt: "relation",
309
- state1: a[s - 3],
310
- state2: a[s - 1],
311
- description: t
312
- };
313
- break;
314
- case 19:
315
- this.$ = {
316
- stmt: "state",
317
- id: a[s - 3],
318
- type: "default",
319
- description: "",
320
- doc: a[s - 1]
321
- };
322
- break;
323
- case 20:
324
- var c = a[s], l = a[s - 2].trim();
325
- if (a[s].match(":")) {
326
- var u = a[s].split(":");
327
- c = u[0], l = [l, u[1]];
328
- }
329
- this.$ = {
330
- stmt: "state",
331
- id: c,
332
- type: "default",
333
- description: l
334
- };
335
- break;
336
- case 21:
337
- this.$ = {
338
- stmt: "state",
339
- id: a[s - 3],
340
- type: "default",
341
- description: a[s - 5],
342
- doc: a[s - 1]
343
- };
344
- break;
345
- case 22:
346
- this.$ = {
347
- stmt: "state",
348
- id: a[s],
349
- type: "fork"
350
- };
351
- break;
352
- case 23:
353
- this.$ = {
354
- stmt: "state",
355
- id: a[s],
356
- type: "join"
357
- };
358
- break;
359
- case 24:
360
- this.$ = {
361
- stmt: "state",
362
- id: a[s],
363
- type: "choice"
364
- };
365
- break;
366
- case 25:
367
- this.$ = {
368
- stmt: "state",
369
- id: r.getDividerId(),
370
- type: "divider"
371
- };
372
- break;
373
- case 26:
374
- this.$ = {
375
- stmt: "state",
376
- id: a[s - 1].trim(),
377
- note: {
378
- position: a[s - 2].trim(),
379
- text: a[s].trim()
380
- }
381
- };
382
- break;
383
- case 29:
384
- this.$ = a[s].trim(), r.setAccTitle(this.$);
385
- break;
386
- case 30:
387
- case 31:
388
- this.$ = a[s].trim(), r.setAccDescription(this.$);
389
- break;
390
- case 32:
391
- this.$ = {
392
- stmt: "click",
393
- id: a[s - 3],
394
- url: a[s - 2],
395
- tooltip: a[s - 1]
396
- };
397
- break;
398
- case 33:
399
- this.$ = {
400
- stmt: "click",
401
- id: a[s - 3],
402
- url: a[s - 1],
403
- tooltip: ""
404
- };
405
- break;
406
- case 34:
407
- case 35:
408
- this.$ = {
409
- stmt: "classDef",
410
- id: a[s - 1].trim(),
411
- classes: a[s].trim()
412
- };
413
- break;
414
- case 36:
415
- this.$ = {
416
- stmt: "style",
417
- id: a[s - 1].trim(),
418
- styleClass: a[s].trim()
419
- };
420
- break;
421
- case 37:
422
- this.$ = {
423
- stmt: "applyClass",
424
- id: a[s - 1].trim(),
425
- styleClass: a[s].trim()
426
- };
427
- break;
428
- case 38:
429
- r.setDirection("TB"), this.$ = {
430
- stmt: "dir",
431
- value: "TB"
432
- };
433
- break;
434
- case 39:
435
- r.setDirection("BT"), this.$ = {
436
- stmt: "dir",
437
- value: "BT"
438
- };
439
- break;
440
- case 40:
441
- r.setDirection("RL"), this.$ = {
442
- stmt: "dir",
443
- value: "RL"
444
- };
445
- break;
446
- case 41:
447
- r.setDirection("LR"), this.$ = {
448
- stmt: "dir",
449
- value: "LR"
450
- };
451
- break;
452
- case 44:
453
- case 45:
454
- this.$ = {
455
- stmt: "state",
456
- id: a[s].trim(),
457
- type: "default",
458
- description: ""
459
- };
460
- break;
461
- case 46:
462
- this.$ = {
463
- stmt: "state",
464
- id: a[s - 2].trim(),
465
- classes: [a[s].trim()],
466
- type: "default",
467
- description: ""
468
- };
469
- break;
470
- case 47:
471
- this.$ = {
472
- stmt: "state",
473
- id: a[s - 2].trim(),
474
- classes: [a[s].trim()],
475
- type: "default",
476
- description: ""
477
- };
478
- break;
479
- }
480
- }, "anonymous"),
481
- table: [
482
- {
483
- 3: 1,
484
- 4: t,
485
- 5: r,
486
- 6: i
487
- },
488
- { 1: [3] },
489
- {
490
- 3: 5,
491
- 4: t,
492
- 5: r,
493
- 6: i
494
- },
495
- {
496
- 3: 6,
497
- 4: t,
498
- 5: r,
499
- 6: i
500
- },
501
- e([
502
- 1,
503
- 4,
504
- 5,
505
- 16,
506
- 17,
507
- 19,
508
- 22,
509
- 24,
510
- 25,
511
- 26,
512
- 27,
513
- 28,
514
- 29,
515
- 33,
516
- 35,
517
- 37,
518
- 38,
519
- 41,
520
- 45,
521
- 48,
522
- 51,
523
- 52,
524
- 53,
525
- 54,
526
- 57
527
- ], a, { 7: 7 }),
528
- { 1: [2, 1] },
529
- { 1: [2, 2] },
530
- {
531
- 1: [2, 3],
532
- 4: o,
533
- 5: s,
534
- 8: 8,
535
- 9: 10,
536
- 10: 12,
537
- 11: 13,
538
- 12: 14,
539
- 13: 15,
540
- 16: c,
541
- 17: l,
542
- 19: u,
543
- 22: d,
544
- 24: f,
545
- 25: p,
546
- 26: m,
547
- 27: h,
548
- 28: g,
549
- 29: _,
550
- 32: 25,
551
- 33: v,
552
- 35: y,
553
- 37: b,
554
- 38: x,
555
- 41: S,
556
- 45: C,
557
- 48: w,
558
- 51: T,
559
- 52: E,
560
- 53: D,
561
- 54: O,
562
- 57: k
563
- },
564
- e(A, [2, 5]),
565
- {
566
- 9: 39,
567
- 10: 12,
568
- 11: 13,
569
- 12: 14,
570
- 13: 15,
571
- 16: c,
572
- 17: l,
573
- 19: u,
574
- 22: d,
575
- 24: f,
576
- 25: p,
577
- 26: m,
578
- 27: h,
579
- 28: g,
580
- 29: _,
581
- 32: 25,
582
- 33: v,
583
- 35: y,
584
- 37: b,
585
- 38: x,
586
- 41: S,
587
- 45: C,
588
- 48: w,
589
- 51: T,
590
- 52: E,
591
- 53: D,
592
- 54: O,
593
- 57: k
594
- },
595
- e(A, [2, 7]),
596
- e(A, [2, 8]),
597
- e(A, [2, 9]),
598
- e(A, [2, 10]),
599
- e(A, [2, 11]),
600
- e(A, [2, 12], {
601
- 14: [1, 40],
602
- 15: [1, 41]
603
- }),
604
- e(A, [2, 16]),
605
- { 18: [1, 42] },
606
- e(A, [2, 18], { 20: [1, 43] }),
607
- { 23: [1, 44] },
608
- e(A, [2, 22]),
609
- e(A, [2, 23]),
610
- e(A, [2, 24]),
611
- e(A, [2, 25]),
612
- {
613
- 30: 45,
614
- 31: [1, 46],
615
- 59: [1, 47],
616
- 60: [1, 48]
617
- },
618
- e(A, [2, 28]),
619
- { 34: [1, 49] },
620
- { 36: [1, 50] },
621
- e(A, [2, 31]),
622
- {
623
- 13: 51,
624
- 24: f,
625
- 57: k
626
- },
627
- {
628
- 42: [1, 52],
629
- 44: [1, 53]
630
- },
631
- { 46: [1, 54] },
632
- { 49: [1, 55] },
633
- e(j, [2, 44], { 58: [1, 56] }),
634
- e(j, [2, 45], { 58: [1, 57] }),
635
- e(A, [2, 38]),
636
- e(A, [2, 39]),
637
- e(A, [2, 40]),
638
- e(A, [2, 41]),
639
- e(A, [2, 6]),
640
- e(A, [2, 13]),
641
- {
642
- 13: 58,
643
- 24: f,
644
- 57: k
645
- },
646
- e(A, [2, 17]),
647
- e(M, a, { 7: 59 }),
648
- { 24: [1, 60] },
649
- { 24: [1, 61] },
650
- { 23: [1, 62] },
651
- { 24: [2, 48] },
652
- { 24: [2, 49] },
653
- e(A, [2, 29]),
654
- e(A, [2, 30]),
655
- {
656
- 39: [1, 63],
657
- 40: [1, 64]
658
- },
659
- { 43: [1, 65] },
660
- { 43: [1, 66] },
661
- { 47: [1, 67] },
662
- { 50: [1, 68] },
663
- { 24: [1, 69] },
664
- { 24: [1, 70] },
665
- e(A, [2, 14], { 14: [1, 71] }),
666
- {
667
- 4: o,
668
- 5: s,
669
- 8: 8,
670
- 9: 10,
671
- 10: 12,
672
- 11: 13,
673
- 12: 14,
674
- 13: 15,
675
- 16: c,
676
- 17: l,
677
- 19: u,
678
- 21: [1, 72],
679
- 22: d,
680
- 24: f,
681
- 25: p,
682
- 26: m,
683
- 27: h,
684
- 28: g,
685
- 29: _,
686
- 32: 25,
687
- 33: v,
688
- 35: y,
689
- 37: b,
690
- 38: x,
691
- 41: S,
692
- 45: C,
693
- 48: w,
694
- 51: T,
695
- 52: E,
696
- 53: D,
697
- 54: O,
698
- 57: k
699
- },
700
- e(A, [2, 20], { 20: [1, 73] }),
701
- { 31: [1, 74] },
702
- { 24: [1, 75] },
703
- { 39: [1, 76] },
704
- { 39: [1, 77] },
705
- e(A, [2, 34]),
706
- e(A, [2, 35]),
707
- e(A, [2, 36]),
708
- e(A, [2, 37]),
709
- e(j, [2, 46]),
710
- e(j, [2, 47]),
711
- e(A, [2, 15]),
712
- e(A, [2, 19]),
713
- e(M, a, { 7: 78 }),
714
- e(A, [2, 26]),
715
- e(A, [2, 27]),
716
- { 5: [1, 79] },
717
- { 5: [1, 80] },
718
- {
719
- 4: o,
720
- 5: s,
721
- 8: 8,
722
- 9: 10,
723
- 10: 12,
724
- 11: 13,
725
- 12: 14,
726
- 13: 15,
727
- 16: c,
728
- 17: l,
729
- 19: u,
730
- 21: [1, 81],
731
- 22: d,
732
- 24: f,
733
- 25: p,
734
- 26: m,
735
- 27: h,
736
- 28: g,
737
- 29: _,
738
- 32: 25,
739
- 33: v,
740
- 35: y,
741
- 37: b,
742
- 38: x,
743
- 41: S,
744
- 45: C,
745
- 48: w,
746
- 51: T,
747
- 52: E,
748
- 53: D,
749
- 54: O,
750
- 57: k
751
- },
752
- e(A, [2, 32]),
753
- e(A, [2, 33]),
754
- e(A, [2, 21])
755
- ],
756
- defaultActions: {
757
- 5: [2, 1],
758
- 6: [2, 2],
759
- 47: [2, 48],
760
- 48: [2, 49]
761
- },
762
- parseError: /* @__PURE__ */ n(function(e, t) {
763
- if (t.recoverable) this.trace(e);
764
- else {
765
- var n = Error(e);
766
- throw n.hash = t, n;
767
- }
768
- }, "parseError"),
769
- parse: /* @__PURE__ */ n(function(e) {
770
- var t = this, r = [0], i = [], a = [null], o = [], s = this.table, c = "", l = 0, u = 0, d = 0, f = 2, p = 1, m = o.slice.call(arguments, 1), h = Object.create(this.lexer), g = { yy: {} };
771
- for (var _ in this.yy) Object.prototype.hasOwnProperty.call(this.yy, _) && (g.yy[_] = this.yy[_]);
772
- h.setInput(e, g.yy), g.yy.lexer = h, g.yy.parser = this, h.yylloc === void 0 && (h.yylloc = {});
773
- var v = h.yylloc;
774
- o.push(v);
775
- var y = h.options && h.options.ranges;
776
- typeof g.yy.parseError == "function" ? this.parseError = g.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
777
- function b(e) {
778
- r.length -= 2 * e, a.length -= e, o.length -= e;
779
- }
780
- n(b, "popStack");
781
- function x() {
782
- var e = i.pop() || h.lex() || p;
783
- return typeof e != "number" && (e instanceof Array && (i = e, e = i.pop()), e = t.symbols_[e] || e), e;
784
- }
785
- n(x, "lex");
786
- for (var S, C, w, T, E, D = {}, O, k, A, j;;) {
787
- if (w = r[r.length - 1], this.defaultActions[w] ? T = this.defaultActions[w] : (S ??= x(), T = s[w] && s[w][S]), T === void 0 || !T.length || !T[0]) {
788
- var M = "";
789
- for (O in j = [], s[w]) this.terminals_[O] && O > f && j.push("'" + this.terminals_[O] + "'");
790
- M = h.showPosition ? "Parse error on line " + (l + 1) + ":\n" + h.showPosition() + "\nExpecting " + j.join(", ") + ", got '" + (this.terminals_[S] || S) + "'" : "Parse error on line " + (l + 1) + ": Unexpected " + (S == p ? "end of input" : "'" + (this.terminals_[S] || S) + "'"), this.parseError(M, {
791
- text: h.match,
792
- token: this.terminals_[S] || S,
793
- line: h.yylineno,
794
- loc: v,
795
- expected: j
796
- });
797
- }
798
- if (T[0] instanceof Array && T.length > 1) throw Error("Parse Error: multiple actions possible at state: " + w + ", token: " + S);
799
- switch (T[0]) {
800
- case 1:
801
- r.push(S), a.push(h.yytext), o.push(h.yylloc), r.push(T[1]), S = null, C ? (S = C, C = null) : (u = h.yyleng, c = h.yytext, l = h.yylineno, v = h.yylloc, d > 0 && d--);
802
- break;
803
- case 2:
804
- if (k = this.productions_[T[1]][1], D.$ = a[a.length - k], D._$ = {
805
- first_line: o[o.length - (k || 1)].first_line,
806
- last_line: o[o.length - 1].last_line,
807
- first_column: o[o.length - (k || 1)].first_column,
808
- last_column: o[o.length - 1].last_column
809
- }, y && (D._$.range = [o[o.length - (k || 1)].range[0], o[o.length - 1].range[1]]), E = this.performAction.apply(D, [
810
- c,
811
- u,
812
- l,
813
- g.yy,
814
- T[1],
815
- a,
816
- o
817
- ].concat(m)), E !== void 0) return E;
818
- k && (r = r.slice(0, -1 * k * 2), a = a.slice(0, -1 * k), o = o.slice(0, -1 * k)), r.push(this.productions_[T[1]][0]), a.push(D.$), o.push(D._$), A = s[r[r.length - 2]][r[r.length - 1]], r.push(A);
819
- break;
820
- case 3: return !0;
821
- }
822
- }
823
- return !0;
824
- }, "parse")
825
- };
826
- N.lexer = /* @__PURE__ */ (function() {
827
- return {
828
- EOF: 1,
829
- parseError: /* @__PURE__ */ n(function(e, t) {
830
- if (this.yy.parser) this.yy.parser.parseError(e, t);
831
- else throw Error(e);
832
- }, "parseError"),
833
- setInput: /* @__PURE__ */ n(function(e, t) {
834
- return this.yy = t || this.yy || {}, this._input = e, this._more = this._backtrack = this.done = !1, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = {
835
- first_line: 1,
836
- first_column: 0,
837
- last_line: 1,
838
- last_column: 0
839
- }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
840
- }, "setInput"),
841
- input: /* @__PURE__ */ n(function() {
842
- var e = this._input[0];
843
- return this.yytext += e, this.yyleng++, this.offset++, this.match += e, this.matched += e, e.match(/(?:\r\n?|\n).*/g) ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), e;
844
- }, "input"),
845
- unput: /* @__PURE__ */ n(function(e) {
846
- var t = e.length, n = e.split(/(?:\r\n?|\n)/g);
847
- this._input = e + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - t), this.offset -= t;
848
- var r = this.match.split(/(?:\r\n?|\n)/g);
849
- this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), n.length - 1 && (this.yylineno -= n.length - 1);
850
- var i = this.yylloc.range;
851
- return this.yylloc = {
852
- first_line: this.yylloc.first_line,
853
- last_line: this.yylineno + 1,
854
- first_column: this.yylloc.first_column,
855
- last_column: n ? (n.length === r.length ? this.yylloc.first_column : 0) + r[r.length - n.length].length - n[0].length : this.yylloc.first_column - t
856
- }, this.options.ranges && (this.yylloc.range = [i[0], i[0] + this.yyleng - t]), this.yyleng = this.yytext.length, this;
857
- }, "unput"),
858
- more: /* @__PURE__ */ n(function() {
859
- return this._more = !0, this;
860
- }, "more"),
861
- reject: /* @__PURE__ */ n(function() {
862
- if (this.options.backtrack_lexer) this._backtrack = !0;
863
- else return this.parseError("Lexical error on line " + (this.yylineno + 1) + ". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n" + this.showPosition(), {
864
- text: "",
865
- token: null,
866
- line: this.yylineno
867
- });
868
- return this;
869
- }, "reject"),
870
- less: /* @__PURE__ */ n(function(e) {
871
- this.unput(this.match.slice(e));
872
- }, "less"),
873
- pastInput: /* @__PURE__ */ n(function() {
874
- var e = this.matched.substr(0, this.matched.length - this.match.length);
875
- return (e.length > 20 ? "..." : "") + e.substr(-20).replace(/\n/g, "");
876
- }, "pastInput"),
877
- upcomingInput: /* @__PURE__ */ n(function() {
878
- var e = this.match;
879
- return e.length < 20 && (e += this._input.substr(0, 20 - e.length)), (e.substr(0, 20) + (e.length > 20 ? "..." : "")).replace(/\n/g, "");
880
- }, "upcomingInput"),
881
- showPosition: /* @__PURE__ */ n(function() {
882
- var e = this.pastInput(), t = Array(e.length + 1).join("-");
883
- return e + this.upcomingInput() + "\n" + t + "^";
884
- }, "showPosition"),
885
- test_match: /* @__PURE__ */ n(function(e, t) {
886
- var n, r, i;
887
- if (this.options.backtrack_lexer && (i = {
888
- yylineno: this.yylineno,
889
- yylloc: {
890
- first_line: this.yylloc.first_line,
891
- last_line: this.last_line,
892
- first_column: this.yylloc.first_column,
893
- last_column: this.yylloc.last_column
894
- },
895
- yytext: this.yytext,
896
- match: this.match,
897
- matches: this.matches,
898
- matched: this.matched,
899
- yyleng: this.yyleng,
900
- offset: this.offset,
901
- _more: this._more,
902
- _input: this._input,
903
- yy: this.yy,
904
- conditionStack: this.conditionStack.slice(0),
905
- done: this.done
906
- }, this.options.ranges && (i.yylloc.range = this.yylloc.range.slice(0))), r = e[0].match(/(?:\r\n?|\n).*/g), r && (this.yylineno += r.length), this.yylloc = {
907
- first_line: this.yylloc.last_line,
908
- last_line: this.yylineno + 1,
909
- first_column: this.yylloc.last_column,
910
- last_column: r ? r[r.length - 1].length - r[r.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + e[0].length
911
- }, this.yytext += e[0], this.match += e[0], this.matches = e, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [this.offset, this.offset += this.yyleng]), this._more = !1, this._backtrack = !1, this._input = this._input.slice(e[0].length), this.matched += e[0], n = this.performAction.call(this, this.yy, this, t, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = !1), n) return n;
912
- if (this._backtrack) {
913
- for (var a in i) this[a] = i[a];
914
- return !1;
915
- }
916
- return !1;
917
- }, "test_match"),
918
- next: /* @__PURE__ */ n(function() {
919
- if (this.done) return this.EOF;
920
- this._input || (this.done = !0);
921
- var e, t, n, r;
922
- this._more || (this.yytext = "", this.match = "");
923
- for (var i = this._currentRules(), a = 0; a < i.length; a++) if (n = this._input.match(this.rules[i[a]]), n && (!t || n[0].length > t[0].length)) {
924
- if (t = n, r = a, this.options.backtrack_lexer) {
925
- if (e = this.test_match(n, i[a]), e !== !1) return e;
926
- if (this._backtrack) {
927
- t = !1;
928
- continue;
929
- } else return !1;
930
- } else if (!this.options.flex) break;
931
- }
932
- return t ? (e = this.test_match(t, i[r]), e === !1 ? !1 : e) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + ". Unrecognized text.\n" + this.showPosition(), {
933
- text: "",
934
- token: null,
935
- line: this.yylineno
936
- });
937
- }, "next"),
938
- lex: /* @__PURE__ */ n(function() {
939
- return this.next() || this.lex();
940
- }, "lex"),
941
- begin: /* @__PURE__ */ n(function(e) {
942
- this.conditionStack.push(e);
943
- }, "begin"),
944
- popState: /* @__PURE__ */ n(function() {
945
- return this.conditionStack.length - 1 > 0 ? this.conditionStack.pop() : this.conditionStack[0];
946
- }, "popState"),
947
- _currentRules: /* @__PURE__ */ n(function() {
948
- return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
949
- }, "_currentRules"),
950
- topState: /* @__PURE__ */ n(function(e) {
951
- return e = this.conditionStack.length - 1 - Math.abs(e || 0), e >= 0 ? this.conditionStack[e] : "INITIAL";
952
- }, "topState"),
953
- pushState: /* @__PURE__ */ n(function(e) {
954
- this.begin(e);
955
- }, "pushState"),
956
- stateStackSize: /* @__PURE__ */ n(function() {
957
- return this.conditionStack.length;
958
- }, "stateStackSize"),
959
- options: { "case-insensitive": !0 },
960
- performAction: /* @__PURE__ */ n(function(e, t, r, i) {
961
- function a() {
962
- let n = t.yytext.indexOf("%%");
963
- if (n === 0) return !1;
964
- if (n > 0) {
965
- let r = t.yytext.slice(0, n), i = t.yytext.slice(n);
966
- i && e.lexer.unput(i), t.yytext = r;
967
- }
968
- return !0;
969
- }
970
- switch (n(a, "processId"), r) {
971
- case 0: return 38;
972
- case 1: return 40;
973
- case 2: return 39;
974
- case 3: return 44;
975
- case 4: return 51;
976
- case 5: return 52;
977
- case 6: return 53;
978
- case 7: return 54;
979
- case 8: return 5;
980
- case 9: break;
981
- case 10: break;
982
- case 11: break;
983
- case 12: break;
984
- case 13: return this.pushState("SCALE"), 17;
985
- case 14: return 18;
986
- case 15:
987
- this.popState();
988
- break;
989
- case 16: return this.begin("acc_title"), 33;
990
- case 17: return this.popState(), "acc_title_value";
991
- case 18: return this.begin("acc_descr"), 35;
992
- case 19: return this.popState(), "acc_descr_value";
993
- case 20:
994
- this.begin("acc_descr_multiline");
995
- break;
996
- case 21:
997
- this.popState();
998
- break;
999
- case 22: return "acc_descr_multiline_value";
1000
- case 23: return this.pushState("CLASSDEF"), 41;
1001
- case 24: return this.popState(), this.pushState("CLASSDEFID"), "DEFAULT_CLASSDEF_ID";
1002
- case 25: return this.popState(), this.pushState("CLASSDEFID"), 42;
1003
- case 26: return this.popState(), 43;
1004
- case 27: return this.pushState("CLASS"), 48;
1005
- case 28: return this.popState(), this.pushState("CLASS_STYLE"), 49;
1006
- case 29: return this.popState(), 50;
1007
- case 30: return this.pushState("STYLE"), 45;
1008
- case 31: return this.popState(), this.pushState("STYLEDEF_STYLES"), 46;
1009
- case 32: return this.popState(), 47;
1010
- case 33: return this.pushState("SCALE"), 17;
1011
- case 34: return 18;
1012
- case 35:
1013
- this.popState();
1014
- break;
1015
- case 36:
1016
- this.pushState("STATE");
1017
- break;
1018
- case 37: return this.popState(), t.yytext = t.yytext.slice(0, -8).trim(), 25;
1019
- case 38: return this.popState(), t.yytext = t.yytext.slice(0, -8).trim(), 26;
1020
- case 39: return this.popState(), t.yytext = t.yytext.slice(0, -10).trim(), 27;
1021
- case 40: return this.popState(), t.yytext = t.yytext.slice(0, -8).trim(), 25;
1022
- case 41: return this.popState(), t.yytext = t.yytext.slice(0, -8).trim(), 26;
1023
- case 42: return this.popState(), t.yytext = t.yytext.slice(0, -10).trim(), 27;
1024
- case 43: return 51;
1025
- case 44: return 52;
1026
- case 45: return 53;
1027
- case 46: return 54;
1028
- case 47:
1029
- this.pushState("STATE_STRING");
1030
- break;
1031
- case 48: return this.pushState("STATE_ID"), "AS";
1032
- case 49: return a() ? (this.popState(), "ID") : void 0;
1033
- case 50:
1034
- this.popState();
1035
- break;
1036
- case 51: return "STATE_DESCR";
1037
- case 52: throw Error("Error: State name must be a single word. Found: \"" + t.yytext.trim() + "\"");
1038
- case 53: return 19;
1039
- case 54:
1040
- this.popState();
1041
- break;
1042
- case 55: return this.popState(), this.pushState("struct"), 20;
1043
- case 56: return this.popState(), 21;
1044
- case 57: break;
1045
- case 58: return this.begin("NOTE"), 29;
1046
- case 59: return this.popState(), this.pushState("NOTE_ID"), 59;
1047
- case 60: return this.popState(), this.pushState("NOTE_ID"), 60;
1048
- case 61:
1049
- this.popState(), this.pushState("FLOATING_NOTE");
1050
- break;
1051
- case 62: return this.popState(), this.pushState("FLOATING_NOTE_ID"), "AS";
1052
- case 63: break;
1053
- case 64: return "NOTE_TEXT";
1054
- case 65: return a() ? (this.popState(), "ID") : void 0;
1055
- case 66: return a() ? (this.popState(), this.pushState("NOTE_TEXT"), 24) : void 0;
1056
- case 67: return this.popState(), t.yytext = t.yytext.substr(2).trim(), 31;
1057
- case 68: return this.popState(), t.yytext = t.yytext.slice(0, -8).trim(), 31;
1058
- case 69: return 6;
1059
- case 70: return 6;
1060
- case 71: return 16;
1061
- case 72: return 57;
1062
- case 73: return a() ? 24 : void 0;
1063
- case 74: return t.yytext = t.yytext.trim(), 14;
1064
- case 75: return 15;
1065
- case 76: return 28;
1066
- case 77: return 58;
1067
- case 78: return 5;
1068
- case 79: return "INVALID";
1069
- }
1070
- }, "anonymous"),
1071
- rules: [
1072
- /^(?:click\b)/i,
1073
- /^(?:href\b)/i,
1074
- /^(?:"[^"]*")/i,
1075
- /^(?:default\b)/i,
1076
- /^(?:.*direction\s+TB[^\n]*)/i,
1077
- /^(?:.*direction\s+BT[^\n]*)/i,
1078
- /^(?:.*direction\s+RL[^\n]*)/i,
1079
- /^(?:.*direction\s+LR[^\n]*)/i,
1080
- /^(?:[\n]+)/i,
1081
- /^(?:[\s]+)/i,
1082
- /^(?:((?!\n)\s)+)/i,
1083
- /^(?:#[^\n]*)/i,
1084
- /^(?:%%(?!\{)[^\n]*)/i,
1085
- /^(?:scale\s+)/i,
1086
- /^(?:\d+)/i,
1087
- /^(?:\s+width\b)/i,
1088
- /^(?:accTitle\s*:\s*)/i,
1089
- /^(?:(?!\n||)*[^\n]*)/i,
1090
- /^(?:accDescr\s*:\s*)/i,
1091
- /^(?:(?!\n||)*[^\n]*)/i,
1092
- /^(?:accDescr\s*\{\s*)/i,
1093
- /^(?:[\}])/i,
1094
- /^(?:[^\}]*)/i,
1095
- /^(?:classDef\s+)/i,
1096
- /^(?:DEFAULT\s+)/i,
1097
- /^(?:\w+\s+)/i,
1098
- /^(?:[^\n]*)/i,
1099
- /^(?:class\s+)/i,
1100
- /^(?:(\w+)+((,\s*\w+)*))/i,
1101
- /^(?:[^\n]*)/i,
1102
- /^(?:style\s+)/i,
1103
- /^(?:[\w,]+\s+)/i,
1104
- /^(?:[^\n]*)/i,
1105
- /^(?:scale\s+)/i,
1106
- /^(?:\d+)/i,
1107
- /^(?:\s+width\b)/i,
1108
- /^(?:state\s+)/i,
1109
- /^(?:.*<<fork>>)/i,
1110
- /^(?:.*<<join>>)/i,
1111
- /^(?:.*<<choice>>)/i,
1112
- /^(?:.*\[\[fork\]\])/i,
1113
- /^(?:.*\[\[join\]\])/i,
1114
- /^(?:.*\[\[choice\]\])/i,
1115
- /^(?:.*direction\s+TB[^\n]*)/i,
1116
- /^(?:.*direction\s+BT[^\n]*)/i,
1117
- /^(?:.*direction\s+RL[^\n]*)/i,
1118
- /^(?:.*direction\s+LR[^\n]*)/i,
1119
- /^(?:["])/i,
1120
- /^(?:\s*as\s+)/i,
1121
- /^(?:[^\n\{]*)/i,
1122
- /^(?:["])/i,
1123
- /^(?:[^"]*)/i,
1124
- /^(?:\w+\s+\w+.*?\{)/i,
1125
- /^(?:[^\n\s\{]+)/i,
1126
- /^(?:\n)/i,
1127
- /^(?:\{)/i,
1128
- /^(?:\})/i,
1129
- /^(?:[\n])/i,
1130
- /^(?:note\s+)/i,
1131
- /^(?:left of\b)/i,
1132
- /^(?:right of\b)/i,
1133
- /^(?:")/i,
1134
- /^(?:\s*as\s*)/i,
1135
- /^(?:["])/i,
1136
- /^(?:[^"]*)/i,
1137
- /^(?:[^\n]*)/i,
1138
- /^(?:\s*[^:\n\s\-]+)/i,
1139
- /^(?:\s*:[^:\n;]+)/i,
1140
- /^(?:[\s\S]*?\n\s*end note\b)/i,
1141
- /^(?:stateDiagram\s+)/i,
1142
- /^(?:stateDiagram-v2\s+)/i,
1143
- /^(?:hide empty description\b)/i,
1144
- /^(?:\[\*\])/i,
1145
- /^(?:[^:\n\s\-\{]+)/i,
1146
- /^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,
1147
- /^(?:-->)/i,
1148
- /^(?:--)/i,
1149
- /^(?::::)/i,
1150
- /^(?:$)/i,
1151
- /^(?:.)/i
1152
- ],
1153
- conditions: {
1154
- LINE: {
1155
- rules: [
1156
- 10,
1157
- 11,
1158
- 12
1159
- ],
1160
- inclusive: !1
1161
- },
1162
- struct: {
1163
- rules: [
1164
- 10,
1165
- 11,
1166
- 12,
1167
- 23,
1168
- 27,
1169
- 30,
1170
- 36,
1171
- 43,
1172
- 44,
1173
- 45,
1174
- 46,
1175
- 56,
1176
- 57,
1177
- 58,
1178
- 72,
1179
- 73,
1180
- 74,
1181
- 75,
1182
- 76,
1183
- 77
1184
- ],
1185
- inclusive: !1
1186
- },
1187
- FLOATING_NOTE_ID: {
1188
- rules: [65],
1189
- inclusive: !1
1190
- },
1191
- FLOATING_NOTE: {
1192
- rules: [
1193
- 62,
1194
- 63,
1195
- 64
1196
- ],
1197
- inclusive: !1
1198
- },
1199
- NOTE_TEXT: {
1200
- rules: [67, 68],
1201
- inclusive: !1
1202
- },
1203
- NOTE_ID: {
1204
- rules: [66],
1205
- inclusive: !1
1206
- },
1207
- NOTE: {
1208
- rules: [
1209
- 59,
1210
- 60,
1211
- 61
1212
- ],
1213
- inclusive: !1
1214
- },
1215
- STYLEDEF_STYLEOPTS: {
1216
- rules: [],
1217
- inclusive: !1
1218
- },
1219
- STYLEDEF_STYLES: {
1220
- rules: [32],
1221
- inclusive: !1
1222
- },
1223
- STYLE_IDS: {
1224
- rules: [],
1225
- inclusive: !1
1226
- },
1227
- STYLE: {
1228
- rules: [31],
1229
- inclusive: !1
1230
- },
1231
- CLASS_STYLE: {
1232
- rules: [29],
1233
- inclusive: !1
1234
- },
1235
- CLASS: {
1236
- rules: [28],
1237
- inclusive: !1
1238
- },
1239
- CLASSDEFID: {
1240
- rules: [26],
1241
- inclusive: !1
1242
- },
1243
- CLASSDEF: {
1244
- rules: [24, 25],
1245
- inclusive: !1
1246
- },
1247
- acc_descr_multiline: {
1248
- rules: [21, 22],
1249
- inclusive: !1
1250
- },
1251
- acc_descr: {
1252
- rules: [19],
1253
- inclusive: !1
1254
- },
1255
- acc_title: {
1256
- rules: [17],
1257
- inclusive: !1
1258
- },
1259
- SCALE: {
1260
- rules: [
1261
- 14,
1262
- 15,
1263
- 34,
1264
- 35
1265
- ],
1266
- inclusive: !1
1267
- },
1268
- ALIAS: {
1269
- rules: [],
1270
- inclusive: !1
1271
- },
1272
- STATE_ID: {
1273
- rules: [49],
1274
- inclusive: !1
1275
- },
1276
- STATE_STRING: {
1277
- rules: [50, 51],
1278
- inclusive: !1
1279
- },
1280
- FORK_STATE: {
1281
- rules: [],
1282
- inclusive: !1
1283
- },
1284
- STATE: {
1285
- rules: [
1286
- 10,
1287
- 11,
1288
- 12,
1289
- 37,
1290
- 38,
1291
- 39,
1292
- 40,
1293
- 41,
1294
- 42,
1295
- 47,
1296
- 48,
1297
- 52,
1298
- 53,
1299
- 54,
1300
- 55
1301
- ],
1302
- inclusive: !1
1303
- },
1304
- ID: {
1305
- rules: [
1306
- 10,
1307
- 11,
1308
- 12
1309
- ],
1310
- inclusive: !1
1311
- },
1312
- INITIAL: {
1313
- rules: [
1314
- 0,
1315
- 1,
1316
- 2,
1317
- 3,
1318
- 4,
1319
- 5,
1320
- 6,
1321
- 7,
1322
- 8,
1323
- 9,
1324
- 11,
1325
- 12,
1326
- 13,
1327
- 16,
1328
- 18,
1329
- 20,
1330
- 23,
1331
- 27,
1332
- 30,
1333
- 33,
1334
- 36,
1335
- 55,
1336
- 58,
1337
- 69,
1338
- 70,
1339
- 71,
1340
- 72,
1341
- 73,
1342
- 74,
1343
- 75,
1344
- 77,
1345
- 78,
1346
- 79
1347
- ],
1348
- inclusive: !0
1349
- }
1350
- }
1351
- };
1352
- })();
1353
- function P() {
1354
- this.yy = {};
1355
- }
1356
- return n(P, "Parser"), P.prototype = N, N.Parser = P, new P();
1357
- })();
1358
- w.parser = w;
1359
- var T = w, E = "TB", D = "TB", O = "dir", k = "state", A = "root", j = "relation", M = "classDef", N = "style", P = "applyClass", F = "default", ee = "divider", te = "fill:none", ne = "fill: #333", re = "c", ie = "markdown", ae = "normal", I = "rect", L = "rectWithTitle", oe = "stateStart", se = "stateEnd", R = "divider", ce = "roundedWithTitle", le = "note", ue = "noteGroup", z = "statediagram", de = `${z}-state`, B = "transition", fe = "note", pe = `${B} note-edge`, me = `${z}-${fe}`, he = `${z}-cluster`, ge = `${z}-cluster-alt`, V = "parent", H = "note", _e = "state", U = "----", ve = `${U}${H}`, ye = `${U}${V}`, W = /* @__PURE__ */ new Map(), G = 0, be = 0, K = /* @__PURE__ */ new Map(), xe = /* @__PURE__ */ n((e, t, n, r) => {
1360
- if (e === R && n?.id !== void 0 && K.has(n.id)) {
1361
- let e = K.get(n.id);
1362
- return K.set(t, e), e;
1363
- }
1364
- let i = be++, a = r ? void 0 : i;
1365
- return K.set(t, a), a;
1366
- }, "colorSlotFor");
1367
- function q(e = "", t = 0, n = "", r = U) {
1368
- return `${_e}-${e}${n !== null && n.length > 0 ? `${r}${n}` : ""}-${t}`;
1369
- }
1370
- n(q, "stateDomId");
1371
- var Se = /* @__PURE__ */ n((t, n, r, i, a, o, s, l) => {
1372
- e.trace("items", n), n.forEach((e) => {
1373
- switch (e.stmt) {
1374
- case k:
1375
- X(t, e, r, i, a, o, s, l);
1376
- break;
1377
- case F:
1378
- X(t, e, r, i, a, o, s, l);
1379
- break;
1380
- case j:
1381
- {
1382
- X(t, e.state1, r, i, a, o, s, l), X(t, e.state2, r, i, a, o, s, l);
1383
- let n = s === "neo", u = {
1384
- id: "edge" + G,
1385
- start: e.state1.id,
1386
- end: e.state2.id,
1387
- arrowhead: "normal",
1388
- arrowTypeEnd: n ? "arrow_barb_neo" : "arrow_barb",
1389
- style: te,
1390
- labelStyle: "",
1391
- label: d.sanitizeText(e.description ?? "", c()),
1392
- arrowheadStyle: ne,
1393
- labelpos: re,
1394
- labelType: ie,
1395
- thickness: ae,
1396
- classes: B,
1397
- look: s
1398
- };
1399
- a.push(u), G++;
1400
- }
1401
- break;
1402
- }
1403
- });
1404
- }, "setupDoc"), Ce = /* @__PURE__ */ n((e, t = D) => {
1405
- let n = t;
1406
- if (e.doc) for (let t of e.doc) t.stmt === "dir" && (n = t.value);
1407
- return n;
1408
- }, "getDir");
1409
- function J(e, t, n) {
1410
- if (!t.id || t.id === "</join></fork>" || t.id === "</choice>") return;
1411
- t.cssClasses && (Array.isArray(t.cssCompiledStyles) || (t.cssCompiledStyles = []), t.cssClasses.split(" ").forEach((e) => {
1412
- let r = n.get(e);
1413
- r && (t.cssCompiledStyles = [...t.cssCompiledStyles ?? [], ...r.styles]);
1414
- }));
1415
- let r = e.find((e) => e.id === t.id);
1416
- r ? Object.assign(r, t) : e.push(t);
1417
- }
1418
- n(J, "insertOrUpdateNode");
1419
- function we(e) {
1420
- return e?.classes?.join(" ") ?? "";
1421
- }
1422
- n(we, "getClassesFromDbInfo");
1423
- function Y(e) {
1424
- return e?.styles ?? [];
1425
- }
1426
- n(Y, "getStylesFromDbInfo");
1427
- var X = /* @__PURE__ */ n((t, n, r, i, a, o, s, l) => {
1428
- let u = n.id, f = r.get(u), p = we(f), m = Y(f), h = c(), g = p.trim() !== "" || m.length > 0;
1429
- if (e.info("dataFetcher parsedItem", n, f, m), u !== "root") {
1430
- let r = I;
1431
- n.start === !0 ? r = oe : n.start === !1 && (r = se), n.type !== F && (r = n.type), W.get(u) || W.set(u, {
1432
- id: u,
1433
- shape: r,
1434
- description: d.sanitizeText(u, h),
1435
- cssClasses: `${p} ${de}`,
1436
- cssStyles: m
1437
- });
1438
- let c = W.get(u);
1439
- n.description && (Array.isArray(c.description) ? (c.shape = L, c.description.push(n.description)) : c.description?.length && c.description.length > 0 ? (c.shape = L, c.description === u ? c.description = [n.description] : c.description = [c.description, n.description]) : (c.shape = I, c.description = n.description), c.description = d.sanitizeTextOrArray(c.description, h)), c.description?.length === 1 && c.shape === L && (c.type === "group" ? c.shape = ce : c.shape = I), !c.type && n.doc && (e.info("Setting cluster for XCX", u, Ce(n)), c.type = "group", c.isGroup = !0, c.dir = Ce(n), c.shape = n.type === ee ? R : ce, c.colorIndex = xe(c.shape, u, t, g), c.cssClasses = `${c.cssClasses} ${he} ${o ? ge : ""}`);
1440
- let f = {
1441
- labelStyle: "",
1442
- shape: c.shape,
1443
- label: c.description,
1444
- cssClasses: c.cssClasses,
1445
- cssCompiledStyles: [],
1446
- cssStyles: c.cssStyles,
1447
- id: u,
1448
- dir: c.dir,
1449
- domId: q(u, G),
1450
- type: c.type,
1451
- isGroup: c.type === "group",
1452
- colorIndex: c.colorIndex,
1453
- padding: 8,
1454
- rx: 10,
1455
- ry: 10,
1456
- look: s,
1457
- labelType: "markdown"
1458
- };
1459
- if (f.shape === R && (f.label = ""), t && t.id !== "root" && (e.trace("Setting node ", u, " to be child of its parent ", t.id), f.parentId = t.id), f.centerLabel = !0, n.note) {
1460
- let e = {
1461
- labelStyle: "",
1462
- shape: le,
1463
- label: n.note.text,
1464
- labelType: "markdown",
1465
- cssClasses: me,
1466
- cssStyles: [],
1467
- cssCompiledStyles: [],
1468
- id: u + ve + "-" + G,
1469
- domId: q(u, G, H),
1470
- type: "node",
1471
- isGroup: !1,
1472
- padding: h.flowchart?.padding,
1473
- look: s,
1474
- position: n.note.position
1475
- }, t = u + ye, r = {
1476
- labelStyle: "",
1477
- shape: ue,
1478
- label: n.note.text,
1479
- cssClasses: c.cssClasses,
1480
- cssStyles: [],
1481
- id: u + ye,
1482
- domId: q(u, G, V),
1483
- type: "group",
1484
- isGroup: !0,
1485
- padding: 16,
1486
- look: s,
1487
- position: n.note.position
1488
- };
1489
- G++, r.id = t, e.parentId = t, J(i, r, l), J(i, e, l), J(i, f, l);
1490
- let o = u, d = e.id;
1491
- n.note.position === "left of" && (o = e.id, d = u), a.push({
1492
- id: o + "-" + d,
1493
- start: o,
1494
- end: d,
1495
- arrowhead: "none",
1496
- arrowTypeEnd: "",
1497
- style: te,
1498
- labelStyle: "",
1499
- classes: pe,
1500
- pattern: "dashed",
1501
- arrowheadStyle: ne,
1502
- labelpos: re,
1503
- labelType: ie,
1504
- thickness: ae,
1505
- look: s
1506
- });
1507
- } else J(i, f, l);
1508
- }
1509
- n.doc && (e.trace("Adding nodes children "), Se(n, n.doc, r, i, a, !o, s, l));
1510
- }, "dataFetcher"), Te = /* @__PURE__ */ n(() => {
1511
- W.clear(), G = 0, be = 0, K.clear();
1512
- }, "reset"), Ee = /* @__PURE__ */ n((e, t = D) => {
1513
- if (!e.doc) return t;
1514
- let n = t;
1515
- for (let t of e.doc) t.stmt === "dir" && (n = t.value);
1516
- return n;
1517
- }, "getDir"), De = {
1518
- getClasses: /* @__PURE__ */ n(function(e, t) {
1519
- return t.db.getClasses();
1520
- }, "getClasses"),
1521
- draw: /* @__PURE__ */ n(async function(t, n, r, i) {
1522
- e.info("REF0:"), e.info("Drawing state diagram (v2)", n);
1523
- let { securityLevel: a, state: o, layout: s } = c();
1524
- i.db.extract(i.db.getRootDocV2());
1525
- let l = i.db.getData(), u = b(n, a);
1526
- l.type = i.type, l.layoutAlgorithm = C(s), l.nodeSpacing = o?.nodeSpacing || 50, l.rankSpacing = o?.rankSpacing || 50, c().look === "neo" ? l.markers = ["barbNeo"] : l.markers = ["barb"], l.diagramId = n, await S(l, u);
1527
- try {
1528
- (typeof i.db.getLinks == "function" ? i.db.getLinks() : /* @__PURE__ */ new Map()).forEach((t, n) => {
1529
- let r = typeof n == "string" ? n : typeof n?.id == "string" ? n.id : "", i = l.nodes.find((e) => e.id === r);
1530
- if (!r) {
1531
- e.warn("⚠️ Invalid or missing stateId from key:", JSON.stringify(n));
1532
- return;
1533
- }
1534
- let a = u.node()?.querySelectorAll("g.node, g.rough-node"), o;
1535
- if (a?.forEach((e) => {
1536
- let t = e.textContent?.trim();
1537
- (e.id === i?.domId || t === r) && (o = e);
1538
- }), !o) {
1539
- e.warn("⚠️ Could not find node matching text:", r);
1540
- return;
1541
- }
1542
- let s = o.parentNode;
1543
- if (!s) {
1544
- e.warn("⚠️ Node has no parent, cannot wrap:", r);
1545
- return;
1546
- }
1547
- let c = document.createElementNS("http://www.w3.org/2000/svg", "a"), d = t.url.replace(/^"+|"+$/g, "");
1548
- if (c.setAttributeNS("http://www.w3.org/1999/xlink", "xlink:href", d), c.setAttribute("target", "_blank"), t.tooltip) {
1549
- let e = t.tooltip.replace(/^"+|"+$/g, "");
1550
- c.setAttribute("title", e), o.setAttribute("title", e);
1551
- }
1552
- s.replaceChild(c, o), c.appendChild(o), e.info("🔗 Wrapped node in <a> tag for:", r, t.url);
1553
- });
1554
- } catch (t) {
1555
- e.error("❌ Error injecting clickable links:", t);
1556
- }
1557
- p.insertTitle(u, "statediagramTitleText", o?.titleTopMargin ?? 25, i.db.getDiagramTitle()), x(u, 8, z, o?.useMaxWidth ?? !0);
1558
- }, "draw"),
1559
- getDir: Ee
1560
- }, Z = {
1561
- START_NODE: "[*]",
1562
- START_TYPE: "start",
1563
- END_NODE: "[*]",
1564
- END_TYPE: "end",
1565
- COLOR_KEYWORD: "color",
1566
- FILL_KEYWORD: "fill",
1567
- BG_FILL: "bgFill",
1568
- STYLECLASS_SEP: ","
1569
- }, Oe = /* @__PURE__ */ n(() => /* @__PURE__ */ new Map(), "newClassesList"), Q = /* @__PURE__ */ n(() => ({
1570
- relations: [],
1571
- states: /* @__PURE__ */ new Map(),
1572
- documents: {}
1573
- }), "newDoc"), $ = /* @__PURE__ */ n((e) => JSON.parse(JSON.stringify(e)), "clone"), ke = class {
1574
- constructor(e) {
1575
- this.version = e, this.nodes = [], this.edges = [], this.rootDoc = [], this.classes = Oe(), this.documents = { root: Q() }, this.currentDocument = this.documents.root, this.startEndCount = 0, this.dividerCnt = 0, this.links = /* @__PURE__ */ new Map(), this.funs = [], this.getAccTitle = f, this.setAccTitle = a, this.getAccDescription = o, this.setAccDescription = i, this.setDiagramTitle = u, this.getDiagramTitle = r, this.clear(), this.setRootDoc = this.setRootDoc.bind(this), this.getDividerId = this.getDividerId.bind(this), this.setDirection = this.setDirection.bind(this), this.trimColon = this.trimColon.bind(this), this.bindFunctions = this.bindFunctions.bind(this);
1576
- }
1577
- static {
1578
- n(this, "StateDB");
1579
- }
1580
- static {
1581
- this.relationType = {
1582
- AGGREGATION: 0,
1583
- EXTENSION: 1,
1584
- COMPOSITION: 2,
1585
- DEPENDENCY: 3
1586
- };
1587
- }
1588
- extract(e) {
1589
- this.clear(!0);
1590
- for (let t of Array.isArray(e) ? e : e.doc) switch (t.stmt) {
1591
- case k:
1592
- this.addState(t.id.trim(), t.type, t.doc, t.description, t.note);
1593
- break;
1594
- case j:
1595
- this.addRelation(t.state1, t.state2, t.description);
1596
- break;
1597
- case M:
1598
- this.addStyleClass(t.id.trim(), t.classes);
1599
- break;
1600
- case N:
1601
- this.handleStyleDef(t);
1602
- break;
1603
- case P:
1604
- this.setCssClass(t.id.trim(), t.styleClass);
1605
- break;
1606
- case "click":
1607
- this.addLink(t.id, t.url, t.tooltip);
1608
- break;
1609
- }
1610
- let t = this.getStates(), n = c();
1611
- Te(), X(void 0, this.getRootDocV2(), t, this.nodes, this.edges, !0, n.look, this.classes);
1612
- for (let e of this.nodes) if (Array.isArray(e.label)) {
1613
- if (e.description = e.label.slice(1), e.isGroup && e.description.length > 0) throw Error(`Group nodes can only have label. Remove the additional description for node [${e.id}]`);
1614
- e.label = e.label[0];
1615
- }
1616
- }
1617
- handleStyleDef(e) {
1618
- let t = e.id.trim().split(","), n = e.styleClass.split(",");
1619
- for (let e of t) {
1620
- let t = this.getState(e);
1621
- if (!t) {
1622
- let n = e.trim();
1623
- this.addState(n), t = this.getState(n);
1624
- }
1625
- t && (t.styles = n.map((e) => e.replace(/;/g, "")?.trim()));
1626
- }
1627
- }
1628
- setRootDoc(t) {
1629
- e.info("Setting root doc", t), this.rootDoc = t, this.version === 1 ? this.extract(t) : this.extract(this.getRootDocV2());
1630
- }
1631
- docTranslator(e, t, n) {
1632
- if (t.stmt === j) {
1633
- this.docTranslator(e, t.state1, !0), this.docTranslator(e, t.state2, !1);
1634
- return;
1635
- }
1636
- if (t.stmt === k && (t.id === Z.START_NODE ? (t.id = e.id + (n ? "_start" : "_end"), t.start = n) : t.id = t.id.trim()), t.stmt !== A && t.stmt !== k || !t.doc) return;
1637
- let r = [], i = [];
1638
- for (let e of t.doc) if (e.type === ee) {
1639
- let t = $(e);
1640
- t.doc = $(i), r.push(t), i = [];
1641
- } else i.push(e);
1642
- if (r.length > 0 && i.length > 0) {
1643
- let e = {
1644
- stmt: k,
1645
- id: m(),
1646
- type: "divider",
1647
- doc: $(i)
1648
- };
1649
- r.push($(e)), t.doc = r;
1650
- }
1651
- t.doc.forEach((e) => this.docTranslator(t, e, !0));
1652
- }
1653
- getRootDocV2() {
1654
- return this.docTranslator({
1655
- id: A,
1656
- stmt: A
1657
- }, {
1658
- id: A,
1659
- stmt: A,
1660
- doc: this.rootDoc
1661
- }, !0), {
1662
- id: A,
1663
- doc: this.rootDoc
1664
- };
1665
- }
1666
- addState(t, n = F, r = void 0, i = void 0, a = void 0, o = void 0, s = void 0, l = void 0) {
1667
- let u = t?.trim();
1668
- if (!this.currentDocument.states.has(u)) e.info("Adding state ", u, i), this.currentDocument.states.set(u, {
1669
- stmt: k,
1670
- id: u,
1671
- descriptions: [],
1672
- type: n,
1673
- doc: r,
1674
- note: a,
1675
- classes: [],
1676
- styles: [],
1677
- textStyles: []
1678
- });
1679
- else {
1680
- let e = this.currentDocument.states.get(u);
1681
- if (!e) throw Error(`State not found: ${u}`);
1682
- e.doc ||= r, e.type ||= n;
1683
- }
1684
- if (i && (e.info("Setting state description", u, i), (Array.isArray(i) ? i : [i]).forEach((e) => this.addDescription(u, e.trim()))), a) {
1685
- let e = this.currentDocument.states.get(u);
1686
- if (!e) throw Error(`State not found: ${u}`);
1687
- e.note = a, e.note.text = d.sanitizeText(e.note.text, c());
1688
- }
1689
- o && (e.info("Setting state classes", u, o), (Array.isArray(o) ? o : [o]).forEach((e) => this.setCssClass(u, e.trim()))), s && (e.info("Setting state styles", u, s), (Array.isArray(s) ? s : [s]).forEach((e) => this.setStyle(u, e.trim()))), l && (e.info("Setting state styles", u, s), (Array.isArray(l) ? l : [l]).forEach((e) => this.setTextStyle(u, e.trim())));
1690
- }
1691
- clear(e) {
1692
- this.nodes = [], this.edges = [], this.funs = [this.setupToolTips.bind(this)], this.documents = { root: Q() }, this.currentDocument = this.documents.root, this.startEndCount = 0, this.classes = Oe(), e || (this.links = /* @__PURE__ */ new Map(), s());
1693
- }
1694
- getState(e) {
1695
- return this.currentDocument.states.get(e);
1696
- }
1697
- getStates() {
1698
- return this.currentDocument.states;
1699
- }
1700
- logDocuments() {
1701
- e.info("Documents = ", this.documents);
1702
- }
1703
- getRelations() {
1704
- return this.currentDocument.relations;
1705
- }
1706
- addLink(t, n, r) {
1707
- this.links.set(t, {
1708
- url: n,
1709
- tooltip: r
1710
- }), e.warn("Adding link", t, n, r);
1711
- }
1712
- getLinks() {
1713
- return this.links;
1714
- }
1715
- startIdIfNeeded(e = "") {
1716
- return e === Z.START_NODE ? (this.startEndCount++, `${Z.START_TYPE}${this.startEndCount}`) : e;
1717
- }
1718
- startTypeIfNeeded(e = "", t = F) {
1719
- return e === Z.START_NODE ? Z.START_TYPE : t;
1720
- }
1721
- endIdIfNeeded(e = "") {
1722
- return e === Z.END_NODE ? (this.startEndCount++, `${Z.END_TYPE}${this.startEndCount}`) : e;
1723
- }
1724
- endTypeIfNeeded(e = "", t = F) {
1725
- return e === Z.END_NODE ? Z.END_TYPE : t;
1726
- }
1727
- addRelationObjs(e, t, n = "") {
1728
- let r = this.startIdIfNeeded(e.id.trim()), i = this.startTypeIfNeeded(e.id.trim(), e.type), a = this.startIdIfNeeded(t.id.trim()), o = this.startTypeIfNeeded(t.id.trim(), t.type);
1729
- this.addState(r, i, e.doc, e.description, e.note, e.classes, e.styles, e.textStyles), this.addState(a, o, t.doc, t.description, t.note, t.classes, t.styles, t.textStyles), this.currentDocument.relations.push({
1730
- id1: r,
1731
- id2: a,
1732
- relationTitle: d.sanitizeText(n, c())
1733
- });
1734
- }
1735
- addRelation(e, t, n) {
1736
- if (typeof e == "object" && typeof t == "object") this.addRelationObjs(e, t, n);
1737
- else if (typeof e == "string" && typeof t == "string") {
1738
- let r = this.startIdIfNeeded(e.trim()), i = this.startTypeIfNeeded(e), a = this.endIdIfNeeded(t.trim()), o = this.endTypeIfNeeded(t);
1739
- this.addState(r, i), this.addState(a, o), this.currentDocument.relations.push({
1740
- id1: r,
1741
- id2: a,
1742
- relationTitle: n ? d.sanitizeText(n, c()) : void 0
1743
- });
1744
- }
1745
- }
1746
- addDescription(e, t) {
1747
- let n = this.currentDocument.states.get(e), r = t.startsWith(":") ? t.replace(":", "").trim() : t;
1748
- n?.descriptions?.push(d.sanitizeText(r, c()));
1749
- }
1750
- cleanupLabel(e) {
1751
- return e.startsWith(":") ? e.slice(2).trim() : e.trim();
1752
- }
1753
- getDividerId() {
1754
- return this.dividerCnt++, `divider-id-${this.dividerCnt}`;
1755
- }
1756
- addStyleClass(e, t = "") {
1757
- this.classes.has(e) || this.classes.set(e, {
1758
- id: e,
1759
- styles: [],
1760
- textStyles: []
1761
- });
1762
- let n = this.classes.get(e);
1763
- t && n && t.split(Z.STYLECLASS_SEP).forEach((e) => {
1764
- let t = e.replace(/([^;]*);/, "$1").trim();
1765
- if (RegExp(Z.COLOR_KEYWORD).exec(e)) {
1766
- let e = t.replace(Z.FILL_KEYWORD, Z.BG_FILL).replace(Z.COLOR_KEYWORD, Z.FILL_KEYWORD);
1767
- n.textStyles.push(e);
1768
- }
1769
- n.styles.push(t);
1770
- });
1771
- }
1772
- getClasses() {
1773
- return this.classes;
1774
- }
1775
- setupToolTips(e) {
1776
- let n = y();
1777
- t(e).select("svg").selectAll("g.node, g.rough-node").on("mouseover", (e) => {
1778
- let r = t(e.currentTarget), i = r.attr("title");
1779
- if (i === null) return;
1780
- let a = e.currentTarget?.getBoundingClientRect();
1781
- n.transition().duration(200).style("opacity", ".9"), n.style("left", window.scrollX + a.left + (a.right - a.left) / 2 + "px").style("top", window.scrollY + a.bottom + "px"), n.html(l.sanitize(i)), r.classed("hover", !0);
1782
- }).on("mouseout", (e) => {
1783
- n.transition().duration(500).style("opacity", 0), t(e.currentTarget).classed("hover", !1);
1784
- });
1785
- }
1786
- setCssClass(e, t) {
1787
- e.split(",").forEach((e) => {
1788
- let n = this.getState(e);
1789
- if (!n) {
1790
- let t = e.trim();
1791
- this.addState(t), n = this.getState(t);
1792
- }
1793
- n?.classes?.push(t);
1794
- });
1795
- }
1796
- setStyle(e, t) {
1797
- this.getState(e)?.styles?.push(t);
1798
- }
1799
- setTextStyle(e, t) {
1800
- this.getState(e)?.textStyles?.push(t);
1801
- }
1802
- bindFunctions(e) {
1803
- this.funs.forEach((t) => {
1804
- t(e);
1805
- });
1806
- }
1807
- getDirectionStatement() {
1808
- return this.rootDoc.find((e) => e.stmt === O);
1809
- }
1810
- getDirection() {
1811
- return this.getDirectionStatement()?.value ?? E;
1812
- }
1813
- setDirection(e) {
1814
- let t = this.getDirectionStatement();
1815
- t ? t.value = e : this.rootDoc.unshift({
1816
- stmt: O,
1817
- value: e
1818
- });
1819
- }
1820
- trimColon(e) {
1821
- return e.startsWith(":") ? e.slice(1).trim() : e.trim();
1822
- }
1823
- getData() {
1824
- let e = c();
1825
- for (let t of this.nodes) t.wrappingWidth ??= e.state?.wrappingWidth, t.isGroup || (t.minWidth ??= e.state?.minNodeWidth);
1826
- return {
1827
- nodes: this.nodes,
1828
- edges: this.edges,
1829
- other: {},
1830
- config: e,
1831
- direction: Ee(this.getRootDocV2())
1832
- };
1833
- }
1834
- getConfig() {
1835
- return c().state;
1836
- }
1837
- }, Ae = /* @__PURE__ */ n((e) => {
1838
- let { theme: t, bkgColorArray: n, borderColorArray: r } = e;
1839
- if (!g(t, r)) return "";
1840
- let i = _(e.look), a = v(n), o = "";
1841
- for (let e = 0; e < h(r); e++) {
1842
- let t = r[e], s = a ? `fill: ${n[e % n.length]};` : "", c = `[data-look="${i}"][data-color-id="color-${e}"]`;
1843
- o += `
1844
-
1845
- /* The title strip: \`rect.outer\` spans the whole composite and \`rect.inner\` covers
1846
- the body, so what stays visible of \`outer\` is the band behind the label. */
1847
- ${c}.statediagram-cluster rect.outer {
1848
- stroke: ${t};
1849
- ${s}
1850
- }
1851
-
1852
- ${c}.statediagram-cluster rect.inner {
1853
- stroke: ${t};
1854
- }
1855
-
1856
- /* Concurrency regions. Siblings of one composite share a slot, so a divided composite
1857
- reads as one thing split into parts rather than as several composites. */
1858
- ${c}.statediagram-cluster rect.divider {
1859
- stroke: ${t};
1860
- ${s}
1861
- }
1862
-
1863
- /* handDrawn draws the same container as roughjs shapes rather than plain rects, so it
1864
- needs its own rules. \`roundedWithTitle\` and \`divider\` name those groups \`outer\`,
1865
- \`inner\` and \`divider\` to match the classic branch, which is what lets these
1866
- discriminate -- a bare \`.statediagram-cluster path\` rule reached the body as well and
1867
- tinted the whole composite, losing \`compositeBackground\` and diverging from what
1868
- classic and neo do.
1869
-
1870
- roughjs emits two paths per shape and marks them: the filled shape carries
1871
- \`stroke="none"\` and the sketched outline carries \`fill="none"\`. Splitting on that is
1872
- what keeps \`fill\` off the outline -- a rough outline is open squiggles, not a closed
1873
- region, so filling it produces smears -- and keeps \`stroke\` off the fill shape, which
1874
- would otherwise gain an edge it was drawn without. */
1875
- ${c}.statediagram-cluster .outer path[stroke='none'] {
1876
- ${s}
1877
- }
1878
-
1879
- ${c}.statediagram-cluster .outer path[fill='none'] {
1880
- stroke: ${t};
1881
- }
1882
-
1883
- /* No \`.inner\` rule on purpose. The body shape is left entirely alone under handDrawn,
1884
- where a rect's \`inner\` counterpart cannot be recoloured safely: roughjs draws a
1885
- hachure fill as *stroked* lines, so its fill paths carry \`fill="none"\` exactly like
1886
- the outline and no selector separates them. An \`.inner\` stroke rule therefore
1887
- repainted the hatching of every alt composite in the palette colour instead of
1888
- leaving it on \`altBackground\`. The container still reads as palette-coloured: the
1889
- \`outer\` shape spans the whole composite, so its outline already frames the body. */
1890
-
1891
- /* Regions split the same way, which is why \`divider\` fills solid rather than taking
1892
- roughjs's default hachure -- see the note on that call. Hatched, both of its paths
1893
- carried \`fill="none"\` and these two rules degenerated: the tint matched nothing and
1894
- the border rule repainted the hatching. */
1895
- ${c}.statediagram-cluster .divider path[stroke='none'] {
1896
- ${s}
1897
- }
1898
-
1899
- ${c}.statediagram-cluster .divider path[fill='none'] {
1900
- stroke: ${t};
1901
- }
1902
- `;
1903
- }
1904
- return o;
1905
- }, "genColor"), je = {
1906
- parser: T,
1907
- get db() {
1908
- return new ke(2);
1909
- },
1910
- renderer: De,
1911
- styles: /* @__PURE__ */ n((e) => `
1912
- ${Ae(e)}
1913
- defs [id$="-barbEnd"] {
1914
- fill: ${e.transitionColor};
1915
- stroke: ${e.transitionColor};
1916
- }
1917
- g.stateGroup text {
1918
- fill: ${e.nodeBorder};
1919
- stroke: none;
1920
- font-size: 10px;
1921
- }
1922
- g.stateGroup text {
1923
- fill: ${e.textColor};
1924
- stroke: none;
1925
- font-size: 10px;
1926
-
1927
- }
1928
- g.stateGroup .state-title {
1929
- font-weight: bolder;
1930
- fill: ${e.stateLabelColor};
1931
- }
1932
-
1933
- g.stateGroup rect {
1934
- fill: ${e.mainBkg};
1935
- stroke: ${e.nodeBorder};
1936
- }
1937
-
1938
- g.stateGroup line {
1939
- stroke: ${e.lineColor};
1940
- stroke-width: ${e.strokeWidth || 1};
1941
- }
1942
-
1943
- .transition {
1944
- stroke: ${e.transitionColor};
1945
- stroke-width: ${e.strokeWidth || 1};
1946
- fill: none;
1947
- }
1948
-
1949
- .stateGroup .composit {
1950
- fill: ${e.background};
1951
- border-bottom: 1px
1952
- }
1953
-
1954
- .stateGroup .alt-composit {
1955
- fill: #e0e0e0;
1956
- border-bottom: 1px
1957
- }
1958
-
1959
- .state-note {
1960
- stroke: ${e.noteBorderColor};
1961
- fill: ${e.noteBkgColor};
1962
-
1963
- text {
1964
- fill: ${e.noteTextColor};
1965
- stroke: none;
1966
- font-size: 10px;
1967
- }
1968
- }
1969
-
1970
- .stateLabel .box {
1971
- stroke: none;
1972
- stroke-width: 0;
1973
- fill: ${e.mainBkg};
1974
- opacity: 0.5;
1975
- }
1976
-
1977
- .edgeLabel .label rect {
1978
- fill: ${e.labelBackgroundColor};
1979
- opacity: 0.5;
1980
- }
1981
- .edgeLabel {
1982
- background-color: ${e.edgeLabelBackground};
1983
- p {
1984
- background-color: ${e.edgeLabelBackground};
1985
- }
1986
- rect {
1987
- opacity: 0.5;
1988
- background-color: ${e.edgeLabelBackground};
1989
- fill: ${e.edgeLabelBackground};
1990
- }
1991
- text-align: center;
1992
- }
1993
- .edgeLabel .label text {
1994
- fill: ${e.transitionLabelColor || e.tertiaryTextColor};
1995
- }
1996
- .label div .edgeLabel {
1997
- color: ${e.transitionLabelColor || e.tertiaryTextColor};
1998
- }
1999
-
2000
- .stateLabel text {
2001
- fill: ${e.stateLabelColor};
2002
- font-size: 10px;
2003
- font-weight: bold;
2004
- }
2005
-
2006
- .node circle.state-start {
2007
- fill: ${e.specialStateColor};
2008
- stroke: ${e.specialStateColor};
2009
- }
2010
-
2011
- .node .fork-join {
2012
- fill: ${e.specialStateColor};
2013
- stroke: ${e.specialStateColor};
2014
- }
2015
-
2016
- .node circle.state-end {
2017
- fill: ${e.innerEndBackground};
2018
- stroke: ${e.background};
2019
- stroke-width: 1.5
2020
- }
2021
- .end-state-inner {
2022
- fill: ${e.compositeBackground || e.background};
2023
- // stroke: ${e.background};
2024
- stroke-width: 1.5
2025
- }
2026
-
2027
- .node rect {
2028
- fill: ${e.stateBkg || e.mainBkg};
2029
- stroke: ${e.stateBorder || e.nodeBorder};
2030
- stroke-width: ${e.strokeWidth || 1}px;
2031
- }
2032
- .node polygon {
2033
- fill: ${e.mainBkg};
2034
- stroke: ${e.stateBorder || e.nodeBorder};;
2035
- stroke-width: ${e.strokeWidth || 1}px;
2036
- }
2037
- [id$="-barbEnd"] {
2038
- fill: ${e.lineColor};
2039
- }
2040
-
2041
- .statediagram-cluster rect {
2042
- fill: ${e.compositeTitleBackground};
2043
- stroke: ${e.stateBorder || e.nodeBorder};
2044
- stroke-width: ${e.strokeWidth || 1}px;
2045
- }
2046
-
2047
- .cluster-label, .nodeLabel {
2048
- color: ${e.stateLabelColor};
2049
- // line-height: 1;
2050
- }
2051
-
2052
- .statediagram-cluster rect.outer {
2053
- rx: 5px;
2054
- ry: 5px;
2055
- }
2056
- .statediagram-state .divider {
2057
- stroke: ${e.stateBorder || e.nodeBorder};
2058
- }
2059
-
2060
- .statediagram-state .title-state {
2061
- rx: 5px;
2062
- ry: 5px;
2063
- }
2064
- .statediagram-cluster.statediagram-cluster .inner {
2065
- fill: ${e.compositeBackground || e.background};
2066
- }
2067
- .statediagram-cluster.statediagram-cluster-alt .inner {
2068
- fill: ${e.altBackground ? e.altBackground : "#efefef"};
2069
- }
2070
-
2071
- .statediagram-cluster .inner {
2072
- rx:0;
2073
- ry:0;
2074
- }
2075
-
2076
- .statediagram-state rect.basic {
2077
- rx: 5px;
2078
- ry: 5px;
2079
- }
2080
- .statediagram-state rect.divider {
2081
- stroke-dasharray: 10,10;
2082
- fill: ${e.altBackground ? e.altBackground : "#efefef"};
2083
- }
2084
-
2085
- .note-edge {
2086
- stroke-dasharray: 5;
2087
- }
2088
-
2089
- .statediagram-note rect {
2090
- fill: ${e.noteBkgColor};
2091
- stroke: ${e.noteBorderColor};
2092
- stroke-width: 1px;
2093
- rx: 0;
2094
- ry: 0;
2095
- }
2096
- .statediagram-note rect {
2097
- fill: ${e.noteBkgColor};
2098
- stroke: ${e.noteBorderColor};
2099
- stroke-width: 1px;
2100
- rx: 0;
2101
- ry: 0;
2102
- }
2103
-
2104
- .statediagram-note text {
2105
- fill: ${e.noteTextColor};
2106
- }
2107
-
2108
- .statediagram-note .nodeLabel {
2109
- color: ${e.noteTextColor};
2110
- }
2111
- .statediagram .edgeLabel {
2112
- color: red; // ${e.noteTextColor};
2113
- }
2114
-
2115
- [id$="-dependencyStart"], [id$="-dependencyEnd"] {
2116
- fill: ${e.lineColor};
2117
- stroke: ${e.lineColor};
2118
- stroke-width: ${e.strokeWidth || 1};
2119
- }
2120
-
2121
- .statediagramTitleText {
2122
- text-anchor: middle;
2123
- font-size: 18px;
2124
- fill: ${e.textColor};
2125
- }
2126
-
2127
- [data-look="neo"].statediagram-cluster rect {
2128
- fill: ${e.mainBkg};
2129
- stroke: ${e.useGradient ? "url(" + e.svgId + "-gradient)" : e.stateBorder || e.nodeBorder};
2130
- stroke-width: ${e.strokeWidth ?? 1};
2131
- }
2132
- [data-look="neo"].statediagram-cluster rect.outer {
2133
- rx: ${e.radius}px;
2134
- ry: ${e.radius}px;
2135
- filter: ${e.dropShadow ? e.dropShadow.replace("url(#drop-shadow)", `url(${e.svgId}-drop-shadow)`) : "none"}
2136
- }
2137
- `, "getStyles"),
2138
- init: /* @__PURE__ */ n((e) => {
2139
- e.state ||= {}, e.state.arrowMarkerAbsolute = e.arrowMarkerAbsolute;
2140
- }, "init")
2141
- };
2142
- //#endregion
2143
- export { je as diagram };