for-humanity 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (226) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.md +16 -9
  3. package/dist/browser.js +16 -16
  4. package/dist/cli.css +2 -968
  5. package/dist/cli.js +92 -2318
  6. package/dist/config.js +1 -0
  7. package/dist/constant/copy.d.ts +100 -0
  8. package/dist/constant/site.d.ts +20 -0
  9. package/dist/constant/status.d.ts +19 -0
  10. package/dist/copy-C1uzvEnr.js +103 -0
  11. package/dist/group-path-XAThmzvC.js +10 -0
  12. package/dist/load-site-CbpLEhwu.js +2379 -0
  13. package/dist/logger-Dv1i9xSV.js +9 -0
  14. package/dist/mermaid/THIRD-PARTY-NOTICES.txt +3134 -0
  15. package/dist/mermaid/chunk--TN-qHgG.js +2 -0
  16. package/dist/mermaid/chunk-0kM1Lv4D.js +2 -0
  17. package/dist/mermaid/chunk-3FHei3pH.js +2001 -0
  18. package/dist/mermaid/chunk-3_2p2GqN.js +2 -0
  19. package/dist/mermaid/chunk-6HLei9i0.js +84 -0
  20. package/dist/mermaid/chunk-7Sz3kAwl.js +2214 -0
  21. package/dist/mermaid/chunk-7Tarqbpa.js +18047 -0
  22. package/dist/mermaid/chunk-9kkt8lzL.js +10 -0
  23. package/dist/mermaid/chunk-B--pNBQF.js +884 -0
  24. package/dist/mermaid/chunk-B4F-pysn.js +4241 -0
  25. package/dist/mermaid/chunk-B58sEIY_.js +14 -0
  26. package/dist/mermaid/chunk-B9_UWzSH.js +1517 -0
  27. package/dist/mermaid/chunk-BB8uZHwY.js +75 -0
  28. package/dist/mermaid/chunk-BFfk0LEc.js +717 -0
  29. package/dist/mermaid/chunk-BKri0qr7.js +89 -0
  30. package/dist/mermaid/chunk-BL404pH5.js +26 -0
  31. package/dist/mermaid/chunk-BLeiQSWo.js +354 -0
  32. package/dist/mermaid/chunk-BOmH_UFd.js +2 -0
  33. package/dist/mermaid/chunk-BSej9Nhy.js +1361 -0
  34. package/dist/mermaid/chunk-BYzrzvCI.js +12 -0
  35. package/dist/mermaid/chunk-BariMtWr.js +3020 -0
  36. package/dist/mermaid/chunk-BcrBoMwH.js +2352 -0
  37. package/dist/mermaid/chunk-Bok8z-Yo.js +67 -0
  38. package/dist/mermaid/chunk-BpTHLKQM.js +1970 -0
  39. package/dist/mermaid/chunk-BqjuxRsC.js +733 -0
  40. package/dist/mermaid/chunk-BuvPd-s5.js +1073 -0
  41. package/dist/mermaid/chunk-BvVehae3.js +5069 -0
  42. package/dist/mermaid/chunk-C-JABYpd.js +3075 -0
  43. package/dist/mermaid/chunk-C9XlTm4w.js +2 -0
  44. package/dist/mermaid/chunk-CApNbSU9.js +6 -0
  45. package/dist/mermaid/chunk-CCM2AH-C.js +9 -0
  46. package/dist/mermaid/chunk-CD1E0F_N.js +2 -0
  47. package/dist/mermaid/chunk-CDWvKG7D.js +2 -0
  48. package/dist/mermaid/chunk-CEVPpC1F.js +34 -0
  49. package/dist/mermaid/chunk-CLDr12lf.js +47504 -0
  50. package/dist/mermaid/chunk-CLVYqOBI.js +61 -0
  51. package/dist/mermaid/chunk-CLeOkFb5.js +15 -0
  52. package/dist/mermaid/chunk-CLgRAtOz.js +37 -0
  53. package/dist/mermaid/chunk-CMqFNUBl.js +134 -0
  54. package/dist/mermaid/chunk-CTPaBJXB.js +2 -0
  55. package/dist/mermaid/chunk-CVi6IGBL.js +2 -0
  56. package/dist/mermaid/chunk-CWV_EN-4.js +4745 -0
  57. package/dist/mermaid/chunk-CZ0dAs3g.js +2 -0
  58. package/dist/mermaid/chunk-C_YGy4Fn.js +236 -0
  59. package/dist/mermaid/chunk-CcVH22Yt.js +100 -0
  60. package/dist/mermaid/chunk-CgG6CD9_.js +7175 -0
  61. package/dist/mermaid/chunk-CgOP6IDB.js +3397 -0
  62. package/dist/mermaid/chunk-Cgg2UTSf.js +13 -0
  63. package/dist/mermaid/chunk-ChJfJJ1A.js +214 -0
  64. package/dist/mermaid/chunk-Ck5XRA46.js +447 -0
  65. package/dist/mermaid/chunk-Ckuw16cl.js +203 -0
  66. package/dist/mermaid/chunk-CpAbRCbF.js +1880 -0
  67. package/dist/mermaid/chunk-CuYekbSv.js +2 -0
  68. package/dist/mermaid/chunk-CwS4wZ5a.js +2 -0
  69. package/dist/mermaid/chunk-D-bcrBO3.js +82 -0
  70. package/dist/mermaid/chunk-D3IEAkCW.js +76 -0
  71. package/dist/mermaid/chunk-D8XfBJ_K.js +645 -0
  72. package/dist/mermaid/chunk-D9Ddd9y4.js +2228 -0
  73. package/dist/mermaid/chunk-DBh1mIbK.js +12 -0
  74. package/dist/mermaid/chunk-DD6Df6Ic.js +5 -0
  75. package/dist/mermaid/chunk-DGVDaXjx.js +8 -0
  76. package/dist/mermaid/chunk-DK9KqIXj.js +632 -0
  77. package/dist/mermaid/chunk-DORnIAsy.js +4487 -0
  78. package/dist/mermaid/chunk-DU69_VcF.js +363 -0
  79. package/dist/mermaid/chunk-DVNvSFoz.js +2144 -0
  80. package/dist/mermaid/chunk-DZe-4kde.js +20 -0
  81. package/dist/mermaid/chunk-D_a06Rz4.js +287 -0
  82. package/dist/mermaid/chunk-DfyFJJi2.js +972 -0
  83. package/dist/mermaid/chunk-DhKYPp1Z.js +2 -0
  84. package/dist/mermaid/chunk-DjFqgNTG.js +94 -0
  85. package/dist/mermaid/chunk-DmbDDrr-.js +65 -0
  86. package/dist/mermaid/chunk-DpuxlyL_.js +696 -0
  87. package/dist/mermaid/chunk-DqGhppWe.js +2 -0
  88. package/dist/mermaid/chunk-DqPZxHXa.js +5 -0
  89. package/dist/mermaid/chunk-Dt_1Jyif.js +293 -0
  90. package/dist/mermaid/chunk-DyQBE_NW.js +1935 -0
  91. package/dist/mermaid/chunk-JckyC4mW.js +1009 -0
  92. package/dist/mermaid/chunk-K7Myuj2-.js +1334 -0
  93. package/dist/mermaid/chunk-KuPYb48V.js +275 -0
  94. package/dist/mermaid/chunk-MFVRUoO0.js +4020 -0
  95. package/dist/mermaid/chunk-MbInCS_6.js +28 -0
  96. package/dist/mermaid/chunk-MexOLyKV.js +355 -0
  97. package/dist/mermaid/chunk-NnbDtJzg.js +21856 -0
  98. package/dist/mermaid/chunk-SGpOYZbI.js +2139 -0
  99. package/dist/mermaid/chunk-TbxLDlcU.js +198 -0
  100. package/dist/mermaid/chunk-TftHqGLg.js +490 -0
  101. package/dist/mermaid/chunk-UjQ8vA_Z.js +4138 -0
  102. package/dist/mermaid/chunk-YgmVTKqc.js +16 -0
  103. package/dist/mermaid/chunk-_a9EZE1v.js +1798 -0
  104. package/dist/mermaid/chunk-dTb8jqeP.js +2 -0
  105. package/dist/mermaid/chunk-fFdMfF8S.js +2240 -0
  106. package/dist/mermaid/chunk-feYbMzBj.js +1267 -0
  107. package/dist/mermaid/chunk-g3Pn8DkW.js +46 -0
  108. package/dist/mermaid/chunk-hM77LvCb.js +19832 -0
  109. package/dist/mermaid/chunk-hUDb-eAW.js +527 -0
  110. package/dist/mermaid/chunk-tpABtZ-3.js +4252 -0
  111. package/dist/mermaid/chunk-xIbz3oFK.js +59 -0
  112. package/dist/mermaid/chunk-yBz-vst0.js +976 -0
  113. package/dist/mermaid/mermaid-BhtR3wyB.js +1145 -0
  114. package/dist/run-site-command-C80YoNOe.js +129 -0
  115. package/dist/site-config-bllORGpm.js +90 -0
  116. package/dist/site.js +1 -0
  117. package/dist/start-dev-server-C4_Lu1nZ.js +176 -0
  118. package/dist/to-change-queue-DbEnZGNK.js +34 -0
  119. package/dist/to-error-message-pF6_7wGK.js +16 -0
  120. package/dist/type/group-path.d.ts +7 -0
  121. package/dist/type/site-config.d.ts +57 -0
  122. package/package.json +34 -17
  123. package/src/component/widget/cursor-face/_constant/cursor-face.ts +0 -14
  124. package/src/component/widget/cursor-face/wg-cursor-face.css +0 -15
  125. package/src/component/widget/cursor-face/wg-cursor-face.tsx +0 -153
  126. package/src/component/widget/navigation/_constant/locale.ts +0 -9
  127. package/src/component/widget/navigation/_constant/navigation-data-schema.ts +0 -33
  128. package/src/component/widget/navigation/_constant/navigation.ts +0 -9
  129. package/src/component/widget/navigation/_constant/reading-line.ts +0 -4
  130. package/src/component/widget/navigation/_function/restore-navigation-scroll.ts +0 -59
  131. package/src/component/widget/navigation/_function/to-doc-groups/_to-doc-branches.ts +0 -15
  132. package/src/component/widget/navigation/_function/to-doc-groups/_to-doc-group-branches.ts +0 -70
  133. package/src/component/widget/navigation/_function/to-doc-groups/to-doc-groups.ts +0 -15
  134. package/src/component/widget/navigation/_function/to-navigation-data/_to-navigation-document.ts +0 -13
  135. package/src/component/widget/navigation/_function/to-navigation-data/_to-navigation-group.ts +0 -13
  136. package/src/component/widget/navigation/_function/to-navigation-data/to-navigation-data.ts +0 -18
  137. package/src/component/widget/navigation/_function/to-navigation-json.ts +0 -8
  138. package/src/component/widget/navigation/_function/to-toc-groups.ts +0 -38
  139. package/src/component/widget/navigation/_type/doc-branch.ts +0 -11
  140. package/src/component/widget/navigation/_type/doc-group.ts +0 -24
  141. package/src/component/widget/navigation/_type/navigation-data.ts +0 -75
  142. package/src/component/widget/navigation/_type/navigation-focus-snapshot.ts +0 -17
  143. package/src/component/widget/navigation/_type/toc-group.ts +0 -39
  144. package/src/component/widget/navigation/_wg-navigation-nav-list.css +0 -48
  145. package/src/component/widget/navigation/_wg-navigation-nav-list.tsx +0 -61
  146. package/src/component/widget/navigation/_wg-navigation-nav.css +0 -21
  147. package/src/component/widget/navigation/_wg-navigation-nav.tsx +0 -33
  148. package/src/component/widget/navigation/_wg-navigation-scroll.tsx +0 -117
  149. package/src/component/widget/navigation/_wg-navigation-toc.css +0 -91
  150. package/src/component/widget/navigation/_wg-navigation-toc.tsx +0 -114
  151. package/src/component/widget/navigation/wg-navigation.css +0 -282
  152. package/src/component/widget/navigation/wg-navigation.tsx +0 -420
  153. package/src/component/widget/prose/_constant/heading-highlight.ts +0 -4
  154. package/src/component/widget/prose/_constant/section.ts +0 -7
  155. package/src/component/widget/prose/_constant/status.ts +0 -9
  156. package/src/component/widget/prose/_function/has-block-content.ts +0 -30
  157. package/src/component/widget/prose/_function/rehype-head.ts +0 -31
  158. package/src/component/widget/prose/_function/rehype-sections/_to-section-headings.ts +0 -20
  159. package/src/component/widget/prose/_function/rehype-sections/rehype-sections.ts +0 -21
  160. package/src/component/widget/prose/_function/rehype-tables.ts +0 -22
  161. package/src/component/widget/prose/_function/remark-blocks.ts +0 -112
  162. package/src/component/widget/prose/_function/remark-flow.ts +0 -26
  163. package/src/component/widget/prose/_function/remark-links.ts +0 -33
  164. package/src/component/widget/prose/_function/remark-parts.ts +0 -26
  165. package/src/component/widget/prose/_function/remark-status.ts +0 -59
  166. package/src/component/widget/prose/_function/remark-swatch.ts +0 -16
  167. package/src/component/widget/prose/_function/remark-unknown-directives.ts +0 -25
  168. package/src/component/widget/prose/wg-prose.css +0 -484
  169. package/src/component/widget/prose/wg-prose.tsx +0 -43
  170. package/src/component/widget/shell/wg-shell.css +0 -63
  171. package/src/component/widget/shell/wg-shell.tsx +0 -88
  172. package/src/component/widget/shell-controls/wg-shell-controls.css +0 -4
  173. package/src/component/widget/shell-controls/wg-shell-controls.tsx +0 -170
  174. package/src/constant/asset.ts +0 -63
  175. package/src/constant/copy.ts +0 -133
  176. package/src/constant/doc.ts +0 -13
  177. package/src/constant/font.ts +0 -34
  178. package/src/constant/site.ts +0 -24
  179. package/src/constant/status.ts +0 -15
  180. package/src/entry/browser/browser.tsx +0 -22
  181. package/src/entry/cli/_constant/cli.ts +0 -19
  182. package/src/entry/cli/_constant/crawling.ts +0 -14
  183. package/src/entry/cli/_constant/snippet.ts +0 -21
  184. package/src/entry/cli/_function/create-app.tsx +0 -57
  185. package/src/entry/cli/_function/create-dev-app.ts +0 -87
  186. package/src/entry/cli/_function/create-processor/_rehype-assets.ts +0 -70
  187. package/src/entry/cli/_function/create-processor/_rehype-heading-ids.ts +0 -34
  188. package/src/entry/cli/_function/create-processor/_remark-report.ts +0 -15
  189. package/src/entry/cli/_function/create-processor/_remark-snippets.ts +0 -117
  190. package/src/entry/cli/_function/create-processor/_shiki-transformers.ts +0 -91
  191. package/src/entry/cli/_function/create-processor/create-processor.ts +0 -64
  192. package/src/entry/cli/_function/read-docs.ts +0 -128
  193. package/src/entry/cli/_function/read-home.ts +0 -32
  194. package/src/entry/cli/_function/to-crawling-app.ts +0 -42
  195. package/src/entry/cli/cli.test.ts +0 -804
  196. package/src/entry/cli/cli.ts +0 -206
  197. package/src/env.d.ts +0 -6
  198. package/src/page/doc/pg-doc.tsx +0 -35
  199. package/src/page/home/pg-home.tsx +0 -40
  200. package/src/store/navigation/create-navigation-stores.test.ts +0 -74
  201. package/src/store/navigation/create-navigation-stores.ts +0 -59
  202. package/src/store/navigation/navigation-state.ts +0 -36
  203. package/src/store/navigation/navigation-storage.ts +0 -9
  204. package/src/store/navigation/to-navigation-scroll-state.ts +0 -42
  205. package/src/style/base.css +0 -28
  206. package/src/style/token.css +0 -188
  207. package/src/type/doc-content.ts +0 -15
  208. package/src/type/doc-data.ts +0 -38
  209. package/src/type/doc-file-data.ts +0 -21
  210. package/src/type/doc-heading.ts +0 -17
  211. package/src/type/doc-outline.ts +0 -16
  212. package/src/type/doc-section.ts +0 -9
  213. package/src/type/doc.ts +0 -20
  214. package/src/type/group-path.ts +0 -7
  215. package/src/type/site-assets.ts +0 -25
  216. package/src/type/site-config.ts +0 -73
  217. package/src/type/vfile-data.d.ts +0 -10
  218. package/src/util/async/to-change-queue.test.ts +0 -58
  219. package/src/util/async/to-change-queue.ts +0 -43
  220. package/src/util/dom/find-hash-target.ts +0 -18
  221. package/src/util/dom/reveal-hash-target.ts +0 -15
  222. package/src/util/error/to-error-message.ts +0 -10
  223. package/src/util/file/to-asset-path.ts +0 -26
  224. package/src/util/font/to-font-css.test.ts +0 -41
  225. package/src/util/font/to-font-css.ts +0 -28
  226. package/src/util/mermaid/render-flow.js +0 -321
@@ -0,0 +1,696 @@
1
+ import { m as e, p as t } from "./chunk-DVNvSFoz.js";
2
+ import { n } from "./chunk-BYzrzvCI.js";
3
+ import { b as r, w as i, y as a } from "./chunk-MFVRUoO0.js";
4
+ import { $ as o, J as s, Q as c, X as l, Y as u, Z as d, _ as f, d as p, et as m, it as h, nt as g, q as _, rt as v, tt as y } from "./chunk-K7Myuj2-.js";
5
+ import { t as b } from "./chunk-CEVPpC1F.js";
6
+ import { i as x, n as S } from "./chunk-Bok8z-Yo.js";
7
+ import { n as C, r as w } from "./chunk-_a9EZE1v.js";
8
+ import { t as ee } from "./chunk-BSej9Nhy.js";
9
+ import { t as T } from "./chunk-DORnIAsy.js";
10
+ import { n as E } from "./chunk-CLgRAtOz.js";
11
+ //#region node_modules/.pnpm/mermaid@12.2.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-WQQL4CDK.mjs
12
+ var D = /* @__PURE__ */ n((e, t) => {
13
+ if (t) return "translate(" + -e.width / 2 + ", " + -e.height / 2 + ")";
14
+ let n = e.x ?? 0, r = e.y ?? 0;
15
+ return "translate(" + -(n + e.width / 2) + ", " + -(r + e.height / 2) + ")";
16
+ }, "computeLabelTransform"), O = {
17
+ aggregation: 17.25,
18
+ extension: 17.25,
19
+ composition: 17.25,
20
+ dependency: 6,
21
+ lollipop: 13.5,
22
+ arrow_point: 4,
23
+ arrow_barb: 0,
24
+ arrow_barb_neo: 5.5
25
+ }, k = {
26
+ arrow_point: 4,
27
+ arrow_cross: 12.5,
28
+ arrow_circle: 12.5
29
+ };
30
+ function A(e, t) {
31
+ if (e === void 0 || t === void 0) return {
32
+ angle: 0,
33
+ deltaX: 0,
34
+ deltaY: 0
35
+ };
36
+ e = j(e), t = j(t);
37
+ let [n, r] = [e.x, e.y], [i, a] = [t.x, t.y], o = i - n, s = a - r;
38
+ return {
39
+ angle: Math.atan(s / o),
40
+ deltaX: o,
41
+ deltaY: s
42
+ };
43
+ }
44
+ n(A, "calculateDeltaAndAngle");
45
+ var j = /* @__PURE__ */ n((e) => Array.isArray(e) ? {
46
+ x: e[0],
47
+ y: e[1]
48
+ } : e, "pointTransformer"), te = /* @__PURE__ */ n((e) => ({
49
+ x: /* @__PURE__ */ n(function(t, n, r) {
50
+ let i = 0, a = j(r[0]).x < j(r[r.length - 1]).x ? "left" : "right";
51
+ if (n === 0 && Object.hasOwn(O, e.arrowTypeStart)) {
52
+ let { angle: t, deltaX: n } = A(r[0], r[1]);
53
+ i = O[e.arrowTypeStart] * Math.cos(t) * (n >= 0 ? 1 : -1);
54
+ } else if (n === r.length - 1 && Object.hasOwn(O, e.arrowTypeEnd)) {
55
+ let { angle: t, deltaX: n } = A(r[r.length - 1], r[r.length - 2]);
56
+ i = O[e.arrowTypeEnd] * Math.cos(t) * (n >= 0 ? 1 : -1);
57
+ }
58
+ let o = Math.abs(j(t).x - j(r[r.length - 1]).x), s = Math.abs(j(t).y - j(r[r.length - 1]).y), c = Math.abs(j(t).x - j(r[0]).x), l = Math.abs(j(t).y - j(r[0]).y), u = O[e.arrowTypeStart], d = O[e.arrowTypeEnd];
59
+ if (o < d && o > 0 && s < d) {
60
+ let e = d + 1 - o;
61
+ e *= a === "right" ? -1 : 1, i -= e;
62
+ }
63
+ if (c < u && c > 0 && l < u) {
64
+ let e = u + 1 - c;
65
+ e *= a === "right" ? -1 : 1, i += e;
66
+ }
67
+ return j(t).x + i;
68
+ }, "x"),
69
+ y: /* @__PURE__ */ n(function(t, n, r) {
70
+ let i = 0, a = j(r[0]).y < j(r[r.length - 1]).y ? "down" : "up";
71
+ if (n === 0 && Object.hasOwn(O, e.arrowTypeStart)) {
72
+ let { angle: t, deltaY: n } = A(r[0], r[1]);
73
+ i = O[e.arrowTypeStart] * Math.abs(Math.sin(t)) * (n >= 0 ? 1 : -1);
74
+ } else if (n === r.length - 1 && Object.hasOwn(O, e.arrowTypeEnd)) {
75
+ let { angle: t, deltaY: n } = A(r[r.length - 1], r[r.length - 2]);
76
+ i = O[e.arrowTypeEnd] * Math.abs(Math.sin(t)) * (n >= 0 ? 1 : -1);
77
+ }
78
+ let o = Math.abs(j(t).y - j(r[r.length - 1]).y), s = Math.abs(j(t).x - j(r[r.length - 1]).x), c = Math.abs(j(t).y - j(r[0]).y), l = Math.abs(j(t).x - j(r[0]).x), u = O[e.arrowTypeStart], d = O[e.arrowTypeEnd];
79
+ if (o < d && o > 0 && s < d) {
80
+ let e = d + 1 - o;
81
+ e *= a === "up" ? -1 : 1, i -= e;
82
+ }
83
+ if (c < u && c > 0 && l < u) {
84
+ let e = u + 1 - c;
85
+ e *= a === "up" ? -1 : 1, i += e;
86
+ }
87
+ return j(t).y + i;
88
+ }, "y")
89
+ }), "getLineFunctionsWithOffset"), ne = /* @__PURE__ */ n((e, t, n, r, i, a = !1, o) => {
90
+ t.arrowTypeStart && P(e, "start", t.arrowTypeStart, n, r, i, a, o), t.arrowTypeEnd && P(e, "end", t.arrowTypeEnd, n, r, i, a, o);
91
+ }, "addEdgeMarkers"), M = {
92
+ arrow_cross: {
93
+ type: "cross",
94
+ fill: !1
95
+ },
96
+ arrow_point: {
97
+ type: "point",
98
+ fill: !0
99
+ },
100
+ arrow_barb: {
101
+ type: "barb",
102
+ fill: !0
103
+ },
104
+ arrow_barb_neo: {
105
+ type: "barb",
106
+ fill: !0
107
+ },
108
+ arrow_circle: {
109
+ type: "circle",
110
+ fill: !1
111
+ },
112
+ arrow_hierarchy: {
113
+ type: "hierarchy",
114
+ fill: !1
115
+ },
116
+ aggregation: {
117
+ type: "aggregation",
118
+ fill: !1
119
+ },
120
+ extension: {
121
+ type: "extension",
122
+ fill: !1
123
+ },
124
+ composition: {
125
+ type: "composition",
126
+ fill: !0
127
+ },
128
+ dependency: {
129
+ type: "dependency",
130
+ fill: !0
131
+ },
132
+ lollipop: {
133
+ type: "lollipop",
134
+ fill: !1
135
+ },
136
+ only_one: {
137
+ type: "onlyOne",
138
+ fill: !1
139
+ },
140
+ zero_or_one: {
141
+ type: "zeroOrOne",
142
+ fill: !1
143
+ },
144
+ one_or_more: {
145
+ type: "oneOrMore",
146
+ fill: !1
147
+ },
148
+ zero_or_more: {
149
+ type: "zeroOrMore",
150
+ fill: !1
151
+ },
152
+ requirement_arrow: {
153
+ type: "requirement_arrow",
154
+ fill: !1
155
+ },
156
+ requirement_contains: {
157
+ type: "requirement_contains",
158
+ fill: !1
159
+ }
160
+ }, N = [
161
+ "cross",
162
+ "point",
163
+ "circle",
164
+ "lollipop",
165
+ "aggregation",
166
+ "extension",
167
+ "composition",
168
+ "dependency",
169
+ "barb"
170
+ ], P = /* @__PURE__ */ n((t, n, r, i, a, o, s = !1, c) => {
171
+ if (!r || r === "none") return;
172
+ let l = M[r], u = l && N.includes(l.type);
173
+ if (!l) {
174
+ e.warn(`Unknown arrow type: ${r}`);
175
+ return;
176
+ }
177
+ let d = `${a}_${o}-${l.type}${n === "start" ? "Start" : "End"}${s && u ? "-margin" : ""}`;
178
+ if (c && c.trim() !== "") {
179
+ let e = `${d}_${c.replace(/[^\dA-Za-z]/g, "_")}`;
180
+ if (!document.getElementById(e)) {
181
+ let t = document.getElementById(d);
182
+ if (t) {
183
+ let n = t.cloneNode(!0);
184
+ n.id = e, n.querySelectorAll("path, circle, line").forEach((e) => {
185
+ e.setAttribute("stroke", c), l.fill && e.setAttribute("fill", c);
186
+ }), t.parentNode?.appendChild(n);
187
+ }
188
+ }
189
+ t.attr(`marker-${n}`, `url(${i}#${e})`);
190
+ } else t.attr(`marker-${n}`, `url(${i}#${d})`);
191
+ }, "addEdgeMarker"), re = /* @__PURE__ */ n((e) => typeof e == "string" ? e : r()?.flowchart?.curve, "resolveEdgeCurveType"), F = /* @__PURE__ */ new Map(), I = /* @__PURE__ */ new Map(), ie = /* @__PURE__ */ n(() => {
192
+ F.clear(), I.clear();
193
+ }, "clear"), L = /* @__PURE__ */ n((e) => !!(e.label || e.startLabelLeft || e.startLabelRight || e.endLabelLeft || e.endLabelRight), "hasEdgeLabel"), R = /* @__PURE__ */ n((e) => e ? typeof e == "string" ? e : e.reduce((e, t) => e + ";" + t, "") : "", "getLabelStyles"), z = /* @__PURE__ */ n(async (n, a) => {
194
+ let o = r(), s = i(o), { labelStyles: c } = x(a);
195
+ a.labelStyle = c;
196
+ let l = n.insert("g").attr("class", "edgeLabel"), u = l.insert("g").attr("class", "label").attr("data-id", a.id), d = a.labelType === "markdown", f = await C(n, a.label, {
197
+ style: R(a.labelStyle),
198
+ useHtmlLabels: s,
199
+ addSvgBackground: !0,
200
+ isNode: !1,
201
+ markdown: d,
202
+ width: void 0
203
+ }, o);
204
+ u.node().appendChild(f), e.info("abc82", a, a.labelType);
205
+ let p, m;
206
+ if (s) {
207
+ let e = f.children[0], n = t(f);
208
+ p = await w.measure(() => e.getBoundingClientRect()), m = p, n.attr("width", p.width), n.attr("height", p.height);
209
+ } else {
210
+ let e = t(f).select("text").node();
211
+ await w.measure(() => {
212
+ p = f.getBBox(), m = e && typeof e.getBBox == "function" ? e.getBBox() : p;
213
+ });
214
+ }
215
+ u.attr("transform", D(m, s)), F.set(a.id, l), a.width = p.width, a.height = p.height;
216
+ let h;
217
+ if (a.startLabelLeft) {
218
+ let e = n.insert("g").attr("class", "edgeTerminals"), r = e.insert("g").attr("class", "inner"), i = await T(r, a.startLabelLeft, R(a.labelStyle) || "", !1, !1);
219
+ h = i;
220
+ let o = i.getBBox();
221
+ if (s) {
222
+ let e = i.children[0], n = t(i);
223
+ o = e.getBoundingClientRect(), n.attr("width", o.width), n.attr("height", o.height);
224
+ }
225
+ r.attr("transform", D(o, s)), I.get(a.id) || I.set(a.id, {}), I.get(a.id).startLeft = e, V(h, a.startLabelLeft, o), B(a, "startLeft", o);
226
+ }
227
+ if (a.startLabelRight) {
228
+ let e = n.insert("g").attr("class", "edgeTerminals"), r = e.insert("g").attr("class", "inner"), i = await T(r, a.startLabelRight, R(a.labelStyle) || "", !1, !1);
229
+ h = i;
230
+ let o = i.getBBox();
231
+ if (s) {
232
+ let e = i.children[0], n = t(i);
233
+ o = e.getBoundingClientRect(), n.attr("width", o.width), n.attr("height", o.height);
234
+ }
235
+ r.attr("transform", D(o, s)), I.get(a.id) || I.set(a.id, {}), I.get(a.id).startRight = e, V(h, a.startLabelRight, o), B(a, "startRight", o);
236
+ }
237
+ if (a.endLabelLeft) {
238
+ let e = n.insert("g").attr("class", "edgeTerminals"), r = e.insert("g").attr("class", "inner"), i = await T(r, a.endLabelLeft, R(a.labelStyle) || "", !1, !1);
239
+ h = i;
240
+ let o = i.getBBox();
241
+ if (s) {
242
+ let e = i.children[0], n = t(i);
243
+ o = e.getBoundingClientRect(), n.attr("width", o.width), n.attr("height", o.height);
244
+ }
245
+ r.attr("transform", D(o, s)), I.get(a.id) || I.set(a.id, {}), I.get(a.id).endLeft = e, V(h, a.endLabelLeft, o), B(a, "endLeft", o);
246
+ }
247
+ if (a.endLabelRight) {
248
+ let e = n.insert("g").attr("class", "edgeTerminals"), r = e.insert("g").attr("class", "inner"), i = await T(r, a.endLabelRight, R(a.labelStyle) || "", !1, !1);
249
+ h = i;
250
+ let o = i.getBBox();
251
+ if (s) {
252
+ let e = i.children[0], n = t(i);
253
+ o = e.getBoundingClientRect(), n.attr("width", o.width), n.attr("height", o.height);
254
+ }
255
+ r.attr("transform", D(o, s)), I.get(a.id) || I.set(a.id, {}), I.get(a.id).endRight = e, V(h, a.endLabelRight, o), B(a, "endRight", o);
256
+ }
257
+ return f;
258
+ }, "insertEdgeLabel");
259
+ function B(e, t, n) {
260
+ e.terminalLabelSizes ??= {}, e.terminalLabelSizes[t] = {
261
+ width: n.width,
262
+ height: n.height
263
+ };
264
+ }
265
+ n(B, "recordTerminalLabelSize");
266
+ function V(e, t, n) {
267
+ i(r()) && e && (e.style.width = Math.max(t.length * 9, n.width) + "px", e.style.height = n.height + "px");
268
+ }
269
+ n(V, "setTerminalWidth");
270
+ var H = /* @__PURE__ */ n((e, t) => {
271
+ let n = e.x, r = e.y;
272
+ if (t?.updatedPath) {
273
+ let i = f.calcLabelPosition(t.updatedPath);
274
+ if (t.originalPath) {
275
+ let a = f.calcLabelPosition(t.originalPath);
276
+ n = e.x + (i.x - a.x), r = e.y + (i.y - a.y);
277
+ } else n = i.x, r = i.y;
278
+ }
279
+ return {
280
+ x: n,
281
+ y: r
282
+ };
283
+ }, "resolveEdgeLabelPosition"), U = /* @__PURE__ */ n((t, n) => {
284
+ e.debug("Moving label abc88 ", t.id, t.label, F.get(t.id), n);
285
+ let i = r(), { subGraphTitleTotalMargin: a } = E(i);
286
+ if (t.label) {
287
+ let r = F.get(t.id), { x: i, y: o } = H(t, n);
288
+ e.debug("Moving label " + t.label + " from (", t.x, ",", t.y, ") to (", i, ",", o, ") abc88"), r.attr("transform", `translate(${i}, ${o + a / 2})`);
289
+ }
290
+ let o = n.updatedPath ? n.updatedPath : n.originalPath;
291
+ if (t.startLabelLeft) {
292
+ let e = I.get(t.id).startLeft, n = t.x, r = t.y;
293
+ if (o) {
294
+ let e = f.calcTerminalLabelPosition(t.arrowTypeStart ? 10 : 0, "start_left", o);
295
+ n = e.x, r = e.y;
296
+ }
297
+ e.attr("transform", `translate(${n}, ${r})`);
298
+ }
299
+ if (t.startLabelRight) {
300
+ let e = I.get(t.id).startRight, n = t.x, r = t.y;
301
+ if (o) {
302
+ let e = f.calcTerminalLabelPosition(t.arrowTypeStart ? 10 : 0, "start_right", o);
303
+ n = e.x, r = e.y;
304
+ }
305
+ e.attr("transform", `translate(${n}, ${r})`);
306
+ }
307
+ if (t.endLabelLeft) {
308
+ let e = I.get(t.id).endLeft, n = t.x, r = t.y;
309
+ if (o) {
310
+ let e = f.calcTerminalLabelPosition(t.arrowTypeEnd ? 10 : 0, "end_left", o);
311
+ n = e.x, r = e.y;
312
+ }
313
+ e.attr("transform", `translate(${n}, ${r})`);
314
+ }
315
+ if (t.endLabelRight) {
316
+ let e = I.get(t.id).endRight, n = t.x, r = t.y;
317
+ if (o) {
318
+ let e = f.calcTerminalLabelPosition(t.arrowTypeEnd ? 10 : 0, "end_right", o);
319
+ n = e.x, r = e.y;
320
+ }
321
+ e.attr("transform", `translate(${n}, ${r})`);
322
+ }
323
+ }, "positionEdgeLabel"), ae = /* @__PURE__ */ n((e, t) => {
324
+ if (!e?.isLabelEdge || !e?.id?.endsWith("-to-label") || !Array.isArray(t) || t.length !== 2) return t;
325
+ let [n, r] = t, i = Math.abs(r.x - n.x), a = Math.abs(r.y - n.y);
326
+ return i < .001 || a < .001 ? t : a >= i ? [
327
+ n,
328
+ {
329
+ x: n.x,
330
+ y: r.y
331
+ },
332
+ r
333
+ ] : [
334
+ n,
335
+ {
336
+ x: r.x,
337
+ y: n.y
338
+ },
339
+ r
340
+ ];
341
+ }, "orthogonalizeToLabelClippedPoints"), W = /* @__PURE__ */ n((e, t) => {
342
+ let n = e.x, r = e.y, i = Math.abs(t.x - n), a = Math.abs(t.y - r), o = e.width / 2, s = e.height / 2;
343
+ return i >= o || a >= s;
344
+ }, "outsideNode"), G = /* @__PURE__ */ n((t, n, r) => {
345
+ e.debug(`intersection calc abc89:
346
+ outsidePoint: ${JSON.stringify(n)}
347
+ insidePoint : ${JSON.stringify(r)}
348
+ node : x:${t.x} y:${t.y} w:${t.width} h:${t.height}`);
349
+ let i = t.x, a = t.y, o = Math.abs(i - r.x), s = t.width / 2, c = r.x < n.x ? s - o : s + o, l = t.height / 2, u = Math.abs(n.y - r.y), d = Math.abs(n.x - r.x);
350
+ if (Math.abs(a - n.y) * s > Math.abs(i - n.x) * l) {
351
+ let t = r.y < n.y ? n.y - l - a : a - l - n.y;
352
+ c = d * t / u;
353
+ let i = {
354
+ x: r.x < n.x ? r.x + c : r.x - d + c,
355
+ y: r.y < n.y ? r.y + u - t : r.y - u + t
356
+ };
357
+ return c === 0 && (i.x = n.x, i.y = n.y), d === 0 && (i.x = n.x), u === 0 && (i.y = n.y), e.debug(`abc89 top/bottom calc, Q ${u}, q ${t}, R ${d}, r ${c}`, i), i;
358
+ }
359
+ {
360
+ c = r.x < n.x ? n.x - s - i : i - s - n.x;
361
+ let t = u * c / d, a = r.x < n.x ? r.x + d - c : r.x - d + c, o = r.y < n.y ? r.y + t : r.y - t;
362
+ return e.debug(`sides calc abc89, Q ${u}, q ${t}, R ${d}, r ${c}`, {
363
+ _x: a,
364
+ _y: o
365
+ }), c === 0 && (a = n.x, o = n.y), d === 0 && (a = n.x), u === 0 && (o = n.y), {
366
+ x: a,
367
+ y: o
368
+ };
369
+ }
370
+ }, "intersection"), K = /* @__PURE__ */ n((t, n) => {
371
+ e.warn("abc88 cutPathAtIntersect", t, n);
372
+ let r = [], i = t[0], a = !1;
373
+ return t.forEach((t) => {
374
+ if (e.info("abc88 checking point", t, n), !W(n, t) && !a) {
375
+ let o = G(n, i, t);
376
+ e.debug("abc88 inside", t, i, o), e.debug("abc88 intersection", o, n);
377
+ let s = !1;
378
+ r.forEach((e) => {
379
+ s ||= e.x === o.x && e.y === o.y;
380
+ }), r.some((e) => e.x === o.x && e.y === o.y) ? e.warn("abc88 no intersect", o, r) : r.push(o), a = !0;
381
+ } else e.warn("abc88 outside", t, i), i = t, a || r.push(t);
382
+ }), e.debug("returning points", r), r;
383
+ }, "cutPathAtIntersect");
384
+ function q(e) {
385
+ let t = [], n = [];
386
+ for (let r = 1; r < e.length - 1; r++) {
387
+ let i = e[r - 1], a = e[r], o = e[r + 1];
388
+ (i.x === a.x && a.y === o.y && Math.abs(a.x - o.x) > 5 && Math.abs(a.y - i.y) > 5 || i.y === a.y && a.x === o.x && Math.abs(a.x - i.x) > 5 && Math.abs(a.y - o.y) > 5) && (t.push(a), n.push(r));
389
+ }
390
+ return {
391
+ cornerPoints: t,
392
+ cornerPointPositions: n
393
+ };
394
+ }
395
+ n(q, "extractCornerPoints");
396
+ var J = /* @__PURE__ */ n(function(e, t, n) {
397
+ let r = t.x - e.x, i = t.y - e.y, a = n / Math.sqrt(r * r + i * i);
398
+ return {
399
+ x: t.x - a * r,
400
+ y: t.y - a * i
401
+ };
402
+ }, "findAdjacentPoint"), oe = /* @__PURE__ */ n(function(t) {
403
+ let { cornerPointPositions: n } = q(t), r = [];
404
+ for (let i = 0; i < t.length; i++) if (n.includes(i)) {
405
+ let n = t[i - 1], a = t[i + 1], o = t[i], s = J(n, o, 5), c = J(a, o, 5), l = c.x - s.x, u = c.y - s.y;
406
+ r.push(s);
407
+ let d = Math.sqrt(2) * 2, f = {
408
+ x: o.x,
409
+ y: o.y
410
+ };
411
+ Math.abs(a.x - n.x) > 10 && Math.abs(a.y - n.y) >= 10 ? (e.debug("Corner point fixing", Math.abs(a.x - n.x), Math.abs(a.y - n.y)), f = o.x === s.x ? {
412
+ x: l < 0 ? s.x - 5 + d : s.x + 5 - d,
413
+ y: u < 0 ? s.y - d : s.y + d
414
+ } : {
415
+ x: l < 0 ? s.x - d : s.x + d,
416
+ y: u < 0 ? s.y - 5 + d : s.y + 5 - d
417
+ }) : e.debug("Corner point skipping fixing", Math.abs(a.x - n.x), Math.abs(a.y - n.y)), r.push(f, c);
418
+ } else r.push(t[i]);
419
+ return r;
420
+ }, "fixCorners"), se = /* @__PURE__ */ n((e, t, n) => {
421
+ let r = e - t - n, i = Math.floor(r / 4);
422
+ return `0 ${t} ${Array(Number.isFinite(i) ? Math.max(0, i) : 0).fill("2 2").join(" ")} ${n}`;
423
+ }, "generateDashArray"), Y = /* @__PURE__ */ n(function(n, i, a, x, C, w, T, E = !1, D = void 0) {
424
+ if (!T) throw Error(`insertEdge: missing diagramId for edge "${i.id}" \u2014 edge IDs require a diagram prefix for uniqueness`);
425
+ let { handDrawnSeed: O, layout: A } = r(), j = D ?? A, M = i.points, N = !1, P = C;
426
+ var F = w;
427
+ let I = [];
428
+ for (let e in i.cssCompiledStyles) S(e) || I.push(i.cssCompiledStyles[e]);
429
+ if (j === "swimlane") {
430
+ if (!E && F.intersect && P.intersect && Array.isArray(M) && M.length >= 2) {
431
+ if (M.length === 2) M = [P.intersect(M[0]), F.intersect(M[1])];
432
+ else {
433
+ let e = M.slice(1, -1), t = e[0], n = e[e.length - 1], r = .5, i = Math.abs(M[M.length - 1].x - n.x) < r && Math.abs(M[M.length - 1].y - n.y) < r, a = P.intersect(t), o = i ? n : F.intersect(n), s = Math.abs(o.x - n.x) < r && Math.abs(o.y - n.y) < r, c = Math.abs(a.x - t.x) < r && Math.abs(a.y - t.y) < r ? [] : [a], l = s ? [] : [o];
434
+ M = [
435
+ ...c,
436
+ ...e,
437
+ ...l
438
+ ];
439
+ }
440
+ }
441
+ M = ae(i, M);
442
+ } else F.intersect && P.intersect && !E && (M = M.slice(1, i.points.length - 1), M.unshift(P.intersect(M[0])), M.push(F.intersect(M[M.length - 1])));
443
+ let ie = btoa(JSON.stringify(M));
444
+ i.toCluster && (e.info("to cluster abc88", a.get(i.toCluster)), M = K(i.points, a.get(i.toCluster).node), N = !0), i.fromCluster && (e.debug("from cluster abc88", a.get(i.fromCluster), JSON.stringify(M, null, 2)), M = K(M.reverse(), a.get(i.fromCluster).node).reverse(), N = !0);
445
+ let L = M.filter((e) => !Number.isNaN(e.y)), R = re(i.curve);
446
+ R !== "rounded" && (L = oe(L));
447
+ let z = h;
448
+ switch (R) {
449
+ case "linear":
450
+ z = h;
451
+ break;
452
+ case "basis":
453
+ z = y;
454
+ break;
455
+ case "cardinal":
456
+ z = m;
457
+ break;
458
+ case "bumpX":
459
+ z = g;
460
+ break;
461
+ case "bumpY":
462
+ z = v;
463
+ break;
464
+ case "catmullRom":
465
+ z = o;
466
+ break;
467
+ case "monotoneX":
468
+ z = d;
469
+ break;
470
+ case "monotoneY":
471
+ z = c;
472
+ break;
473
+ case "natural":
474
+ z = l;
475
+ break;
476
+ case "step":
477
+ z = u;
478
+ break;
479
+ case "stepAfter":
480
+ z = _;
481
+ break;
482
+ case "stepBefore":
483
+ z = s;
484
+ break;
485
+ case "rounded":
486
+ z = h;
487
+ break;
488
+ default: z = y;
489
+ }
490
+ let { x: B, y: V } = te(i), H = b().x(B).y(V).curve(z), U;
491
+ switch (i.thickness) {
492
+ case "normal":
493
+ U = "edge-thickness-normal";
494
+ break;
495
+ case "thick":
496
+ U = "edge-thickness-thick";
497
+ break;
498
+ case "invisible":
499
+ U = "edge-thickness-invisible";
500
+ break;
501
+ default: U = "edge-thickness-normal";
502
+ }
503
+ switch (i.pattern) {
504
+ case "solid":
505
+ U += " edge-pattern-solid";
506
+ break;
507
+ case "dotted":
508
+ U += " edge-pattern-dotted";
509
+ break;
510
+ case "dashed":
511
+ U += " edge-pattern-dashed";
512
+ break;
513
+ default: U += " edge-pattern-solid";
514
+ }
515
+ let W, G = R === "rounded" ? X(ce(L, i), 5) : H(L), q = Array.isArray(i.style) ? i.style : [i.style], J = q.find((e) => e?.startsWith("stroke:")), Y = "";
516
+ i.animate && (Y = "edge-animation-fast"), i.animation && (Y = "edge-animation-" + i.animation);
517
+ let Z = !1;
518
+ if (i.look === "handDrawn") {
519
+ let e = ee.svg(n);
520
+ Object.assign([], L);
521
+ let r = e.path(G, {
522
+ roughness: .3,
523
+ seed: O
524
+ });
525
+ U += " transition", W = t(r).select("path").attr("id", `${T}-${i.id}`).attr("class", " " + U + (i.classes ? " " + i.classes : "") + (Y ? " " + Y : "")).attr("style", q ? q.reduce((e, t) => e + ";" + t, "") : "");
526
+ let a = W.attr("d");
527
+ W.attr("d", a), n.node().appendChild(W.node());
528
+ } else {
529
+ let e = I.join(";"), t = q ? q.reduce((e, t) => e + t + ";", "") : "", r = (e ? e + ";" + t + ";" : t) + ";" + (q ? q.reduce((e, t) => e + ";" + t, "") : "");
530
+ W = n.append("path").attr("d", G).attr("id", `${T}-${i.id}`).attr("class", " " + U + (i.classes ? " " + i.classes : "") + (Y ? " " + Y : "")).attr("style", r), J = r.match(/stroke:([^;]+)/)?.[1], Z = i.animate === !0 || !!i.animation || e.includes("animation");
531
+ let a = W.node(), o = typeof a.getTotalLength == "function" ? a.getTotalLength() : 0, s = k[i.arrowTypeStart] || 0, c = k[i.arrowTypeEnd] || 0;
532
+ if (i.look === "neo" && !Z) {
533
+ let e = `stroke-dasharray: ${i.pattern === "dotted" || i.pattern === "dashed" ? se(o, s, c) : `0 ${s} ${o - s - c} ${c}`}; stroke-dashoffset: 0;`;
534
+ W.attr("style", e + W.attr("style"));
535
+ }
536
+ }
537
+ W.attr("data-edge", !0), W.attr("data-et", "edge"), W.attr("data-id", i.id), W.attr("data-points", ie), W.attr("data-look", p(i.look)), i.showPoints && L.forEach((e) => {
538
+ n.append("circle").style("stroke", "red").style("fill", "red").attr("r", 1).attr("cx", e.x).attr("cy", e.y);
539
+ });
540
+ let Q = "";
541
+ (r().flowchart.arrowMarkerAbsolute || r().state.arrowMarkerAbsolute) && (Q = window.location.protocol + "//" + window.location.host + window.location.pathname + window.location.search, Q = Q.replace(/\(/g, "\\(").replace(/\)/g, "\\)")), e.info("arrowTypeStart", i.arrowTypeStart), e.info("arrowTypeEnd", i.arrowTypeEnd);
542
+ let le = !Z && i?.look === "neo";
543
+ ne(W, i, Q, T, x, le, J);
544
+ let ue = Math.floor(M.length / 2), de = M[ue];
545
+ f.isLabelCoordinateInPath(de, W.attr("d")) || (N = !0);
546
+ let $ = {};
547
+ return N && ($.updatedPath = M), $.originalPath = i.points, $;
548
+ }, "insertEdge");
549
+ function X(e, t) {
550
+ if (e.length < 2) return "";
551
+ let n = "", r = e.length, i = 1e-5;
552
+ for (let a = 0; a < r; a++) {
553
+ let o = e[a], s = e[a - 1], c = e[a + 1];
554
+ if (a === 0) n += `M${o.x},${o.y}`;
555
+ else if (a === r - 1) n += `L${o.x},${o.y}`;
556
+ else {
557
+ let e = o.x - s.x, r = o.y - s.y, a = c.x - o.x, l = c.y - o.y, u = Math.hypot(e, r), d = Math.hypot(a, l);
558
+ if (u < i || d < i) {
559
+ n += `L${o.x},${o.y}`;
560
+ continue;
561
+ }
562
+ let f = e / u, p = r / u, m = a / d, h = l / d, g = f * m + p * h, _ = Math.acos(Math.max(-1, Math.min(1, g)));
563
+ if (_ < i || Math.abs(Math.PI - _) < i) {
564
+ n += `L${o.x},${o.y}`;
565
+ continue;
566
+ }
567
+ let v = Math.min(t / Math.sin(_ / 2), u / 2, d / 2), y = o.x - f * v, b = o.y - p * v, x = o.x + m * v, S = o.y + h * v;
568
+ n += `L${y},${b}`, n += `Q${o.x},${o.y} ${x},${S}`;
569
+ }
570
+ }
571
+ return n;
572
+ }
573
+ n(X, "generateRoundedPath");
574
+ function Z(e, t) {
575
+ if (!e || !t) return {
576
+ angle: 0,
577
+ deltaX: 0,
578
+ deltaY: 0
579
+ };
580
+ let n = t.x - e.x, r = t.y - e.y;
581
+ return {
582
+ angle: Math.atan2(r, n),
583
+ deltaX: n,
584
+ deltaY: r
585
+ };
586
+ }
587
+ n(Z, "calculateDeltaAndAngle");
588
+ function ce(e, t) {
589
+ let n = e.map((e) => ({ ...e }));
590
+ if (e.length >= 2 && O[t.arrowTypeStart]) {
591
+ let r = O[t.arrowTypeStart], i = e[0], a = e[1], { angle: o } = Z(i, a), s = r * Math.cos(o), c = r * Math.sin(o);
592
+ n[0].x = i.x + s, n[0].y = i.y + c;
593
+ }
594
+ let r = e.length;
595
+ if (r >= 2 && O[t.arrowTypeEnd]) {
596
+ let i = O[t.arrowTypeEnd], a = e[r - 1], o = e[r - 2], { angle: s } = Z(o, a), c = i * Math.cos(s), l = i * Math.sin(s);
597
+ n[r - 1].x = a.x - c, n[r - 1].y = a.y - l;
598
+ }
599
+ return n;
600
+ }
601
+ n(ce, "applyMarkerOffsetsToPoints");
602
+ var Q = /* @__PURE__ */ n((e, t, n, r) => {
603
+ t.forEach((t) => {
604
+ le[t](e, n, r);
605
+ });
606
+ }, "insertMarkers"), le = {
607
+ extension: /* @__PURE__ */ n((t, n, r) => {
608
+ e.trace("Making markers for ", r), t.append("defs").append("marker").attr("id", r + "_" + n + "-extensionStart").attr("class", "marker extension " + n).attr("refX", 18).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 1,7 L18,13 V 1 Z"), t.append("defs").append("marker").attr("id", r + "_" + n + "-extensionEnd").attr("class", "marker extension " + n).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 1,1 V 13 L18,7 Z"), t.append("marker").attr("id", r + "_" + n + "-extensionStart-margin").attr("class", "marker extension " + n).attr("refX", 18).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").attr("viewBox", "0 0 20 14").append("polygon").attr("points", "10,7 18,13 18,1").style("stroke-width", 2).style("stroke-dasharray", "0"), t.append("defs").append("marker").attr("id", r + "_" + n + "-extensionEnd-margin").attr("class", "marker extension " + n).attr("refX", 9).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").attr("viewBox", "0 0 20 14").append("polygon").attr("points", "10,1 10,13 18,7").style("stroke-width", 2).style("stroke-dasharray", "0");
609
+ }, "extension"),
610
+ composition: /* @__PURE__ */ n((e, t, n) => {
611
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-compositionStart").attr("class", "marker composition " + t).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-compositionEnd").attr("class", "marker composition " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-compositionStart-margin").attr("class", "marker composition " + t).attr("refX", 15).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").style("stroke-width", 0).attr("viewBox", "0 0 15 15").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-compositionEnd-margin").attr("class", "marker composition " + t).attr("refX", 3.5).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").style("stroke-width", 0).attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
612
+ }, "composition"),
613
+ aggregation: /* @__PURE__ */ n((e, t, n) => {
614
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-aggregationStart").attr("class", "marker aggregation " + t).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-aggregationEnd").attr("class", "marker aggregation " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-aggregationStart-margin").attr("class", "marker aggregation " + t).attr("refX", 15).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").style("stroke-width", 2).attr("d", "M 18,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-aggregationEnd-margin").attr("class", "marker aggregation " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").style("stroke-width", 2).attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
615
+ }, "aggregation"),
616
+ dependency: /* @__PURE__ */ n((e, t, n) => {
617
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-dependencyStart").attr("class", "marker dependency " + t).attr("refX", 6).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 5,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-dependencyEnd").attr("class", "marker dependency " + t).attr("refX", 13).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-dependencyStart-margin").attr("class", "marker dependency " + t).attr("refX", 4).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").style("stroke-width", 0).attr("d", "M 5,7 L9,13 L1,7 L9,1 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-dependencyEnd-margin").attr("class", "marker dependency " + t).attr("refX", 16).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").style("stroke-width", 0).attr("d", "M 18,7 L9,13 L14,7 L9,1 Z");
618
+ }, "dependency"),
619
+ lollipop: /* @__PURE__ */ n((e, t, n) => {
620
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-lollipopStart").attr("class", "marker lollipop " + t).attr("refX", 13).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("circle").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6), e.append("defs").append("marker").attr("id", n + "_" + t + "-lollipopEnd").attr("class", "marker lollipop " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("circle").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6), e.append("defs").append("marker").attr("id", n + "_" + t + "-lollipopStart-margin").attr("class", "marker lollipop " + t).attr("refX", 13).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("circle").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6).attr("stroke-width", 2), e.append("defs").append("marker").attr("id", n + "_" + t + "-lollipopEnd-margin").attr("class", "marker lollipop " + t).attr("refX", 1).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("circle").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6).attr("stroke-width", 2);
621
+ }, "lollipop"),
622
+ point: /* @__PURE__ */ n((e, t, n) => {
623
+ e.append("marker").attr("id", n + "_" + t + "-pointEnd").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", 5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-pointStart").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", 4.5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto").append("path").attr("d", "M 0 5 L 10 10 L 10 0 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-pointEnd-margin").attr("class", "marker " + t).attr("viewBox", "0 0 11.5 14").attr("refX", 11.5).attr("refY", 7).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 10.5).attr("markerHeight", 14).attr("orient", "auto").append("path").attr("d", "M 0 0 L 11.5 7 L 0 14 z").attr("class", "arrowMarkerPath").style("stroke-width", 0).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-pointStart-margin").attr("class", "marker " + t).attr("viewBox", "0 0 11.5 14").attr("refX", 1).attr("refY", 7).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11.5).attr("markerHeight", 14).attr("orient", "auto").append("polygon").attr("points", "0,7 11.5,14 11.5,0").attr("class", "arrowMarkerPath").style("stroke-width", 0).style("stroke-dasharray", "1,0");
624
+ }, "point"),
625
+ circle: /* @__PURE__ */ n((e, t, n) => {
626
+ e.append("marker").attr("id", n + "_" + t + "-circleEnd").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", 11).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-circleStart").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", -1).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-circleEnd-margin").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refY", 5).attr("refX", 12.25).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 14).attr("markerHeight", 14).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 0).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-circleStart-margin").attr("class", "marker " + t).attr("viewBox", "0 0 10 10").attr("refX", -2).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 14).attr("markerHeight", 14).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 0).style("stroke-dasharray", "1,0");
627
+ }, "circle"),
628
+ cross: /* @__PURE__ */ n((e, t, n) => {
629
+ e.append("marker").attr("id", n + "_" + t + "-crossEnd").attr("class", "marker cross " + t).attr("viewBox", "0 0 11 11").attr("refX", 12).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-crossStart").attr("class", "marker cross " + t).attr("viewBox", "0 0 11 11").attr("refX", -1).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0"), e.append("marker").attr("id", n + "_" + t + "-crossEnd-margin").attr("class", "marker cross " + t).attr("viewBox", "0 0 15 15").attr("refX", 17.7).attr("refY", 7.5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 1,1 L 14,14 M 1,14 L 14,1").attr("class", "arrowMarkerPath").style("stroke-width", 2.5), e.append("marker").attr("id", n + "_" + t + "-crossStart-margin").attr("class", "marker cross " + t).attr("viewBox", "0 0 15 15").attr("refX", -3.5).attr("refY", 7.5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 12).attr("orient", "auto").append("path").attr("d", "M 1,1 L 14,14 M 1,14 L 14,1").attr("class", "arrowMarkerPath").style("stroke-width", 2.5).style("stroke-dasharray", "1,0");
630
+ }, "cross"),
631
+ barb: /* @__PURE__ */ n((e, t, n) => {
632
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-barbEnd").attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto").append("path").attr("d", "M 19,7 L9,13 L14,7 L9,1 Z");
633
+ }, "barb"),
634
+ barbNeo: /* @__PURE__ */ n((e, t, n) => {
635
+ let { themeVariables: r } = a(), { transitionColor: i } = r;
636
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-barbEnd").attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "strokeWidth").attr("orient", "auto").append("path").attr("d", "M 19,7 L11,14 L13,7 L11,0 Z"), e.append("defs").append("marker").attr("id", n + "_" + t + "-barbEnd-margin").attr("refX", 17).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto").append("path").attr("d", "M 19,7 L11,14 L13,7 L11,0 Z").attr("fill", `${i}`);
637
+ }, "barbNeo"),
638
+ hierarchy: /* @__PURE__ */ n((e, t, n) => {
639
+ e.append("marker").attr("id", n + "_" + t + "-hierarchyEnd").attr("class", "marker hierarchy " + t).attr("viewBox", "0 0 12 10").attr("refX", 10).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 10).attr("orient", "auto").append("path").attr("d", "M 0 0 L 6 5 L 0 10 M 4 0 L 10 5 L 4 10").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0").style("fill", "none"), e.append("marker").attr("id", n + "_" + t + "-hierarchyStart").attr("class", "marker hierarchy " + t).attr("viewBox", "0 0 12 10").attr("refX", 2).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 12).attr("markerHeight", 10).attr("orient", "auto").append("path").attr("d", "M 12 0 L 6 5 L 12 10 M 8 0 L 2 5 L 8 10").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0").style("fill", "none");
640
+ }, "hierarchy"),
641
+ only_one: /* @__PURE__ */ n((e, t, n) => {
642
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-onlyOneStart").attr("class", "marker onlyOne " + t).attr("refX", 0).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("d", "M9,0 L9,18 M15,0 L15,18"), e.append("defs").append("marker").attr("id", n + "_" + t + "-onlyOneEnd").attr("class", "marker onlyOne " + t).attr("refX", 18).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("d", "M3,0 L3,18 M9,0 L9,18");
643
+ }, "only_one"),
644
+ zero_or_one: /* @__PURE__ */ n((e, t, n) => {
645
+ let r = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrOneStart").attr("class", "marker zeroOrOne " + t).attr("refX", 0).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto");
646
+ r.append("circle").attr("fill", "white").attr("cx", 21).attr("cy", 9).attr("r", 6), r.append("path").attr("d", "M9,0 L9,18");
647
+ let i = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrOneEnd").attr("class", "marker zeroOrOne " + t).attr("refX", 30).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto");
648
+ i.append("circle").attr("fill", "white").attr("cx", 9).attr("cy", 9).attr("r", 6), i.append("path").attr("d", "M21,0 L21,18");
649
+ }, "zero_or_one"),
650
+ one_or_more: /* @__PURE__ */ n((e, t, n) => {
651
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-oneOrMoreStart").attr("class", "marker oneOrMore " + t).attr("refX", 18).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("d", "M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"), e.append("defs").append("marker").attr("id", n + "_" + t + "-oneOrMoreEnd").attr("class", "marker oneOrMore " + t).attr("refX", 27).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("d", "M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18");
652
+ }, "one_or_more"),
653
+ zero_or_more: /* @__PURE__ */ n((e, t, n) => {
654
+ let r = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrMoreStart").attr("class", "marker zeroOrMore " + t).attr("refX", 18).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto");
655
+ r.append("circle").attr("fill", "white").attr("cx", 48).attr("cy", 18).attr("r", 6), r.append("path").attr("d", "M0,18 Q18,0 36,18 Q18,36 0,18");
656
+ let i = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrMoreEnd").attr("class", "marker zeroOrMore " + t).attr("refX", 39).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto");
657
+ i.append("circle").attr("fill", "white").attr("cx", 9).attr("cy", 18).attr("r", 6), i.append("path").attr("d", "M21,18 Q39,0 57,18 Q39,36 21,18");
658
+ }, "zero_or_more"),
659
+ only_one_neo: /* @__PURE__ */ n((e, t, n) => {
660
+ let { themeVariables: r } = a(), { strokeWidth: i } = r;
661
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-onlyOneStart").attr("class", "marker onlyOne " + t).attr("refX", 0).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M9,0 L9,18 M15,0 L15,18").attr("stroke-width", `${i}`), e.append("defs").append("marker").attr("id", n + "_" + t + "-onlyOneEnd").attr("class", "marker onlyOne " + t).attr("refX", 18).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M3,0 L3,18 M9,0 L9,18").attr("stroke-width", `${i}`);
662
+ }, "only_one_neo"),
663
+ zero_or_one_neo: /* @__PURE__ */ n((e, t, n) => {
664
+ let { themeVariables: r } = a(), { strokeWidth: i, mainBkg: o } = r, s = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrOneStart").attr("class", "marker zeroOrOne " + t).attr("refX", 0).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse");
665
+ s.append("circle").attr("fill", o ?? "white").attr("cx", 21).attr("cy", 9).attr("stroke-width", `${i}`).attr("r", 6), s.append("path").attr("d", "M9,0 L9,18").attr("stroke-width", `${i}`);
666
+ let c = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrOneEnd").attr("class", "marker zeroOrOne " + t).attr("refX", 30).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto");
667
+ c.append("circle").attr("fill", o ?? "white").attr("cx", 9).attr("cy", 9).attr("stroke-width", `${i}`).attr("r", 6), c.append("path").attr("d", "M21,0 L21,18").attr("stroke-width", `${i}`);
668
+ }, "zero_or_one_neo"),
669
+ one_or_more_neo: /* @__PURE__ */ n((e, t, n) => {
670
+ let { themeVariables: r } = a(), { strokeWidth: i } = r;
671
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-oneOrMoreStart").attr("class", "marker oneOrMore " + t).attr("refX", 18).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("path").attr("d", "M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27").attr("stroke-width", `${i}`), e.append("defs").append("marker").attr("id", n + "_" + t + "-oneOrMoreEnd").attr("class", "marker oneOrMore " + t).attr("refX", 27).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto").append("path").attr("d", "M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18").attr("stroke-width", `${i}`);
672
+ }, "one_or_more_neo"),
673
+ zero_or_more_neo: /* @__PURE__ */ n((e, t, n) => {
674
+ let { themeVariables: r } = a(), { strokeWidth: i, mainBkg: o } = r, s = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrMoreStart").attr("class", "marker zeroOrMore " + t).attr("refX", 18).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto");
675
+ s.append("circle").attr("fill", o ?? "white").attr("cx", 45.5).attr("cy", 18).attr("r", 6).attr("stroke-width", `${i}`), s.append("path").attr("d", "M0,18 Q18,0 36,18 Q18,36 0,18").attr("stroke-width", `${i}`);
676
+ let c = e.append("defs").append("marker").attr("id", n + "_" + t + "-zeroOrMoreEnd").attr("class", "marker zeroOrMore " + t).attr("refX", 39).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse");
677
+ c.append("circle").attr("fill", o ?? "white").attr("cx", 11).attr("cy", 18).attr("r", 6).attr("stroke-width", `${i}`), c.append("path").attr("d", "M21,18 Q39,0 57,18 Q39,36 21,18").attr("stroke-width", `${i}`);
678
+ }, "zero_or_more_neo"),
679
+ requirement_arrow: /* @__PURE__ */ n((e, t, n) => {
680
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-requirement_arrowEnd").attr("refX", 20).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").append("path").attr("d", "M0,0\n L20,10\n M20,10\n L0,20");
681
+ }, "requirement_arrow"),
682
+ requirement_contains: /* @__PURE__ */ n((e, t, n) => {
683
+ let r = e.append("defs").append("marker").attr("id", n + "_" + t + "-requirement_containsStart").attr("refX", 0).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").append("g");
684
+ r.append("circle").attr("cx", 10).attr("cy", 10).attr("r", 9).attr("fill", "none"), r.append("line").attr("x1", 1).attr("x2", 19).attr("y1", 10).attr("y2", 10), r.append("line").attr("y1", 1).attr("y2", 19).attr("x1", 10).attr("x2", 10);
685
+ }, "requirement_contains"),
686
+ requirement_arrow_neo: /* @__PURE__ */ n((e, t, n) => {
687
+ let { themeVariables: r } = a(), { strokeWidth: i } = r;
688
+ e.append("defs").append("marker").attr("id", n + "_" + t + "-requirement_arrowEnd").attr("refX", 20).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").attr("stroke-width", `${i}`).attr("viewBox", "0 0 25 20").append("path").attr("d", "M0,0\n L20,10\n M20,10\n L0,20").attr("stroke-linejoin", "miter");
689
+ }, "requirement_arrow_neo"),
690
+ requirement_contains_neo: /* @__PURE__ */ n((e, t, n) => {
691
+ let { themeVariables: r } = a(), { strokeWidth: i } = r, o = e.append("defs").append("marker").attr("id", n + "_" + t + "-requirement_containsStart").attr("refX", 0).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").attr("markerUnits", "userSpaceOnUse").append("g");
692
+ o.append("circle").attr("cx", 10).attr("cy", 10).attr("r", 9).attr("fill", "none"), o.append("line").attr("x1", 1).attr("x2", 19).attr("y1", 10).attr("y2", 10), o.append("line").attr("y1", 1).attr("y2", 19).attr("x1", 10).attr("x2", 10), o.selectAll("*").attr("stroke-width", `${i}`);
693
+ }, "requirement_contains_neo")
694
+ }, ue = Q;
695
+ //#endregion
696
+ export { z as a, ue as c, I as d, Y as i, U as l, F as n, O as o, L as r, k as s, ie as t, H as u };