@copilotkitnext/react 0.0.22-alpha.7 → 0.0.22-alpha.8

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 (236) hide show
  1. package/package.json +4 -4
  2. package/dist/KaTeX_AMS-Regular-CYEKBG2K.woff +0 -0
  3. package/dist/KaTeX_AMS-Regular-JKX5W2C4.ttf +0 -0
  4. package/dist/KaTeX_AMS-Regular-U6PRYMIZ.woff2 +0 -0
  5. package/dist/KaTeX_Caligraphic-Bold-5QL5CMTE.woff2 +0 -0
  6. package/dist/KaTeX_Caligraphic-Bold-WZ3QSGD3.woff +0 -0
  7. package/dist/KaTeX_Caligraphic-Bold-ZTS3R3HK.ttf +0 -0
  8. package/dist/KaTeX_Caligraphic-Regular-3LKEU76G.woff +0 -0
  9. package/dist/KaTeX_Caligraphic-Regular-A7XRTZ5Q.ttf +0 -0
  10. package/dist/KaTeX_Caligraphic-Regular-KX5MEWCF.woff2 +0 -0
  11. package/dist/KaTeX_Fraktur-Bold-2QVFK6NQ.woff2 +0 -0
  12. package/dist/KaTeX_Fraktur-Bold-T4SWXBMT.woff +0 -0
  13. package/dist/KaTeX_Fraktur-Bold-WGHVTYOR.ttf +0 -0
  14. package/dist/KaTeX_Fraktur-Regular-2PEIFJSJ.woff2 +0 -0
  15. package/dist/KaTeX_Fraktur-Regular-5U4OPH2X.ttf +0 -0
  16. package/dist/KaTeX_Fraktur-Regular-PQMHCIK6.woff +0 -0
  17. package/dist/KaTeX_Main-Bold-2GA4IZIN.woff +0 -0
  18. package/dist/KaTeX_Main-Bold-W5FBVCZM.ttf +0 -0
  19. package/dist/KaTeX_Main-Bold-YP5VVQRP.woff2 +0 -0
  20. package/dist/KaTeX_Main-BoldItalic-4P4C7HJH.woff +0 -0
  21. package/dist/KaTeX_Main-BoldItalic-N4V3DX7S.woff2 +0 -0
  22. package/dist/KaTeX_Main-BoldItalic-ODMLBJJQ.ttf +0 -0
  23. package/dist/KaTeX_Main-Italic-I43T2HSR.ttf +0 -0
  24. package/dist/KaTeX_Main-Italic-RELBIK7M.woff2 +0 -0
  25. package/dist/KaTeX_Main-Italic-SASNQFN2.woff +0 -0
  26. package/dist/KaTeX_Main-Regular-ARRPAO67.woff2 +0 -0
  27. package/dist/KaTeX_Main-Regular-P5I74A2A.woff +0 -0
  28. package/dist/KaTeX_Main-Regular-W74P5G27.ttf +0 -0
  29. package/dist/KaTeX_Math-BoldItalic-6EBV3DK5.woff +0 -0
  30. package/dist/KaTeX_Math-BoldItalic-K4WTGH3J.woff2 +0 -0
  31. package/dist/KaTeX_Math-BoldItalic-VB447A4D.ttf +0 -0
  32. package/dist/KaTeX_Math-Italic-6KGCHLFN.woff2 +0 -0
  33. package/dist/KaTeX_Math-Italic-KKK3USB2.woff +0 -0
  34. package/dist/KaTeX_Math-Italic-SON4MRCA.ttf +0 -0
  35. package/dist/KaTeX_SansSerif-Bold-RRNVJFFW.woff2 +0 -0
  36. package/dist/KaTeX_SansSerif-Bold-STQ6RXC7.ttf +0 -0
  37. package/dist/KaTeX_SansSerif-Bold-X5M5EMOD.woff +0 -0
  38. package/dist/KaTeX_SansSerif-Italic-HMPFTM52.woff2 +0 -0
  39. package/dist/KaTeX_SansSerif-Italic-PSN4QKYX.woff +0 -0
  40. package/dist/KaTeX_SansSerif-Italic-WTBAZBGY.ttf +0 -0
  41. package/dist/KaTeX_SansSerif-Regular-2TL3USAE.ttf +0 -0
  42. package/dist/KaTeX_SansSerif-Regular-OQCII6EP.woff +0 -0
  43. package/dist/KaTeX_SansSerif-Regular-XIQ62X4E.woff2 +0 -0
  44. package/dist/KaTeX_Script-Regular-72OLXYNA.ttf +0 -0
  45. package/dist/KaTeX_Script-Regular-A5IFOEBS.woff +0 -0
  46. package/dist/KaTeX_Script-Regular-APUWIHLP.woff2 +0 -0
  47. package/dist/KaTeX_Size1-Regular-4HRHTS65.woff +0 -0
  48. package/dist/KaTeX_Size1-Regular-5LRUTBFT.woff2 +0 -0
  49. package/dist/KaTeX_Size1-Regular-7K6AASVL.ttf +0 -0
  50. package/dist/KaTeX_Size2-Regular-222HN3GT.ttf +0 -0
  51. package/dist/KaTeX_Size2-Regular-K5ZHAIS6.woff +0 -0
  52. package/dist/KaTeX_Size2-Regular-LELKET5D.woff2 +0 -0
  53. package/dist/KaTeX_Size3-Regular-TLFPAHDE.woff +0 -0
  54. package/dist/KaTeX_Size3-Regular-UFCO6WCA.ttf +0 -0
  55. package/dist/KaTeX_Size3-Regular-WQRQ47UD.woff2 +0 -0
  56. package/dist/KaTeX_Size4-Regular-7PGNVPQK.ttf +0 -0
  57. package/dist/KaTeX_Size4-Regular-CDMV7U5C.woff2 +0 -0
  58. package/dist/KaTeX_Size4-Regular-PKMWZHNC.woff +0 -0
  59. package/dist/KaTeX_Typewriter-Regular-3F5K6SQ6.ttf +0 -0
  60. package/dist/KaTeX_Typewriter-Regular-MJMFSK64.woff +0 -0
  61. package/dist/KaTeX_Typewriter-Regular-VBYJ4NRC.woff2 +0 -0
  62. package/dist/angular-html-LD6QEAZE.mjs +0 -7
  63. package/dist/angular-html-LD6QEAZE.mjs.map +0 -1
  64. package/dist/angular-ts-FGK7I2F5.mjs +0 -37
  65. package/dist/angular-ts-FGK7I2F5.mjs.map +0 -1
  66. package/dist/angular-ts-XZTE5LQS.mjs +0 -37
  67. package/dist/angular-ts-XZTE5LQS.mjs.map +0 -1
  68. package/dist/apl-VB2EG5RZ.mjs +0 -22
  69. package/dist/apl-VB2EG5RZ.mjs.map +0 -1
  70. package/dist/architectureDiagram-VXUJARFQ-PPLKSFYC.mjs +0 -8712
  71. package/dist/architectureDiagram-VXUJARFQ-PPLKSFYC.mjs.map +0 -1
  72. package/dist/blade-EZDWULER.mjs +0 -26
  73. package/dist/blade-EZDWULER.mjs.map +0 -1
  74. package/dist/blade-HS4Z7O3Y.mjs +0 -26
  75. package/dist/blade-HS4Z7O3Y.mjs.map +0 -1
  76. package/dist/blockDiagram-VD42YOAC-7SIEWHYD.mjs +0 -3618
  77. package/dist/blockDiagram-VD42YOAC-7SIEWHYD.mjs.map +0 -1
  78. package/dist/c4Diagram-YG6GDRKO-G2UUBRHQ.mjs +0 -2495
  79. package/dist/c4Diagram-YG6GDRKO-G2UUBRHQ.mjs.map +0 -1
  80. package/dist/chunk-2BAFECUC.mjs +0 -28
  81. package/dist/chunk-2BAFECUC.mjs.map +0 -1
  82. package/dist/chunk-BF5LDW2L.mjs +0 -65
  83. package/dist/chunk-BF5LDW2L.mjs.map +0 -1
  84. package/dist/chunk-BUEC2HNL.mjs +0 -762
  85. package/dist/chunk-BUEC2HNL.mjs.map +0 -1
  86. package/dist/chunk-CRGJ2YCV.mjs +0 -109
  87. package/dist/chunk-CRGJ2YCV.mjs.map +0 -1
  88. package/dist/chunk-DKZXT4VQ.mjs +0 -19
  89. package/dist/chunk-DKZXT4VQ.mjs.map +0 -1
  90. package/dist/chunk-DYQXFOGA.mjs +0 -34
  91. package/dist/chunk-DYQXFOGA.mjs.map +0 -1
  92. package/dist/chunk-ENI667QL.mjs +0 -806
  93. package/dist/chunk-ENI667QL.mjs.map +0 -1
  94. package/dist/chunk-GEUZOPED.mjs +0 -1834
  95. package/dist/chunk-GEUZOPED.mjs.map +0 -1
  96. package/dist/chunk-GU7334FJ.mjs +0 -538
  97. package/dist/chunk-GU7334FJ.mjs.map +0 -1
  98. package/dist/chunk-HNKEYT4A.mjs +0 -4693
  99. package/dist/chunk-HNKEYT4A.mjs.map +0 -1
  100. package/dist/chunk-HTMHAYGC.mjs +0 -14
  101. package/dist/chunk-HTMHAYGC.mjs.map +0 -1
  102. package/dist/chunk-JRLFMJ6U.mjs +0 -1923
  103. package/dist/chunk-JRLFMJ6U.mjs.map +0 -1
  104. package/dist/chunk-JYRND4DC.mjs +0 -22
  105. package/dist/chunk-JYRND4DC.mjs.map +0 -1
  106. package/dist/chunk-KFEPUFID.mjs +0 -52
  107. package/dist/chunk-KFEPUFID.mjs.map +0 -1
  108. package/dist/chunk-M3UH7XZX.mjs +0 -6222
  109. package/dist/chunk-M3UH7XZX.mjs.map +0 -1
  110. package/dist/chunk-ND4RYWG7.mjs +0 -12
  111. package/dist/chunk-ND4RYWG7.mjs.map +0 -1
  112. package/dist/chunk-VLSLBZME.mjs +0 -51
  113. package/dist/chunk-VLSLBZME.mjs.map +0 -1
  114. package/dist/chunk-WJBV3P3K.mjs +0 -55
  115. package/dist/chunk-WJBV3P3K.mjs.map +0 -1
  116. package/dist/chunk-X2TQ2HDS.mjs +0 -44
  117. package/dist/chunk-X2TQ2HDS.mjs.map +0 -1
  118. package/dist/chunk-YIDZOZG3.mjs +0 -103
  119. package/dist/chunk-YIDZOZG3.mjs.map +0 -1
  120. package/dist/chunk-YLW7IP7V.mjs +0 -14525
  121. package/dist/chunk-YLW7IP7V.mjs.map +0 -1
  122. package/dist/classDiagram-2ON5EDUG-WUV4PTK5.mjs +0 -38
  123. package/dist/classDiagram-2ON5EDUG-WUV4PTK5.mjs.map +0 -1
  124. package/dist/classDiagram-v2-WZHVMYZB-J4QNVYPE.mjs +0 -38
  125. package/dist/classDiagram-v2-WZHVMYZB-J4QNVYPE.mjs.map +0 -1
  126. package/dist/cobol-PNTKRG5I.mjs +0 -17
  127. package/dist/cobol-PNTKRG5I.mjs.map +0 -1
  128. package/dist/crystal-BSMHK65A.mjs +0 -23
  129. package/dist/crystal-BSMHK65A.mjs.map +0 -1
  130. package/dist/dagre-6UL2VRFP-XN667C7N.mjs +0 -710
  131. package/dist/dagre-6UL2VRFP-XN667C7N.mjs.map +0 -1
  132. package/dist/diagram-PSM6KHXK-VA2CF5LZ.mjs +0 -538
  133. package/dist/diagram-PSM6KHXK-VA2CF5LZ.mjs.map +0 -1
  134. package/dist/diagram-QEK2KX5R-H3EHES33.mjs +0 -319
  135. package/dist/diagram-QEK2KX5R-H3EHES33.mjs.map +0 -1
  136. package/dist/diagram-S2PKOQOG-FOQYPB22.mjs +0 -231
  137. package/dist/diagram-S2PKOQOG-FOQYPB22.mjs.map +0 -1
  138. package/dist/edge-JOI74UJM.mjs +0 -19
  139. package/dist/edge-JOI74UJM.mjs.map +0 -1
  140. package/dist/elixir-FEL6DDPJ.mjs +0 -15
  141. package/dist/elixir-FEL6DDPJ.mjs.map +0 -1
  142. package/dist/erDiagram-Q2GNP2WA-IXNJSD2A.mjs +0 -1175
  143. package/dist/erDiagram-Q2GNP2WA-IXNJSD2A.mjs.map +0 -1
  144. package/dist/erb-Q2D6FWX3.mjs +0 -32
  145. package/dist/erb-Q2D6FWX3.mjs.map +0 -1
  146. package/dist/flowDiagram-NV44I4VS-ISKGEBMD.mjs +0 -2349
  147. package/dist/flowDiagram-NV44I4VS-ISKGEBMD.mjs.map +0 -1
  148. package/dist/ganttDiagram-LVOFAZNH-OAL7V7IR.mjs +0 -2344
  149. package/dist/ganttDiagram-LVOFAZNH-OAL7V7IR.mjs.map +0 -1
  150. package/dist/gitGraphDiagram-NY62KEGX-RKN2CCAZ.mjs +0 -1221
  151. package/dist/gitGraphDiagram-NY62KEGX-RKN2CCAZ.mjs.map +0 -1
  152. package/dist/glimmer-js-B32LCGFA.mjs +0 -19
  153. package/dist/glimmer-js-B32LCGFA.mjs.map +0 -1
  154. package/dist/glimmer-ts-4PHFAQCG.mjs +0 -19
  155. package/dist/glimmer-ts-4PHFAQCG.mjs.map +0 -1
  156. package/dist/hack-3ZNSL4KD.mjs +0 -17
  157. package/dist/hack-3ZNSL4KD.mjs.map +0 -1
  158. package/dist/handlebars-ICBC3AZK.mjs +0 -19
  159. package/dist/handlebars-ICBC3AZK.mjs.map +0 -1
  160. package/dist/html-BGY5P773.mjs +0 -6
  161. package/dist/html-BGY5P773.mjs.map +0 -1
  162. package/dist/html-derivative-3HGXHHFE.mjs +0 -7
  163. package/dist/html-derivative-3HGXHHFE.mjs.map +0 -1
  164. package/dist/index.css +0 -2385
  165. package/dist/index.css.map +0 -1
  166. package/dist/infoDiagram-F6ZHWCRC-Z7KMJJ45.mjs +0 -49
  167. package/dist/infoDiagram-F6ZHWCRC-Z7KMJJ45.mjs.map +0 -1
  168. package/dist/jinja-WL6HNMB5.mjs +0 -22
  169. package/dist/jinja-WL6HNMB5.mjs.map +0 -1
  170. package/dist/journeyDiagram-XKPGCS4Q-BMTOBHZ4.mjs +0 -1259
  171. package/dist/journeyDiagram-XKPGCS4Q-BMTOBHZ4.mjs.map +0 -1
  172. package/dist/kanban-definition-3W4ZIXB7-MVFRARF4.mjs +0 -1062
  173. package/dist/kanban-definition-3W4ZIXB7-MVFRARF4.mjs.map +0 -1
  174. package/dist/katex-4R42CMCB.mjs +0 -4
  175. package/dist/katex-4R42CMCB.mjs.map +0 -1
  176. package/dist/liquid-YS3YPW54.mjs +0 -19
  177. package/dist/liquid-YS3YPW54.mjs.map +0 -1
  178. package/dist/logo-mark-OHF64HAY.svg +0 -8
  179. package/dist/mdc-A66KLOT4.mjs +0 -20
  180. package/dist/mdc-A66KLOT4.mjs.map +0 -1
  181. package/dist/mermaid.core-4OWTNZSL.mjs +0 -1587
  182. package/dist/mermaid.core-4OWTNZSL.mjs.map +0 -1
  183. package/dist/mermaid.core-7AUE4M6E.mjs +0 -1587
  184. package/dist/mermaid.core-7AUE4M6E.mjs.map +0 -1
  185. package/dist/mindmap-definition-VGOIOE7T-7FMA2CPY.mjs +0 -1112
  186. package/dist/mindmap-definition-VGOIOE7T-7FMA2CPY.mjs.map +0 -1
  187. package/dist/mindmap-definition-VGOIOE7T-VNF7JZOY.mjs +0 -1112
  188. package/dist/mindmap-definition-VGOIOE7T-VNF7JZOY.mjs.map +0 -1
  189. package/dist/nim-HUBKBJHZ.mjs +0 -26
  190. package/dist/nim-HUBKBJHZ.mjs.map +0 -1
  191. package/dist/perl-QHAMWWQ5.mjs +0 -22
  192. package/dist/perl-QHAMWWQ5.mjs.map +0 -1
  193. package/dist/php-FS5GKSPN.mjs +0 -11
  194. package/dist/php-FS5GKSPN.mjs.map +0 -1
  195. package/dist/pieDiagram-ADFJNKIX-EER3WTCU.mjs +0 -200
  196. package/dist/pieDiagram-ADFJNKIX-EER3WTCU.mjs.map +0 -1
  197. package/dist/pug-WTY5FMEA.mjs +0 -17
  198. package/dist/pug-WTY5FMEA.mjs.map +0 -1
  199. package/dist/quadrantDiagram-AYHSOK5B-WQCIRJOK.mjs +0 -1344
  200. package/dist/quadrantDiagram-AYHSOK5B-WQCIRJOK.mjs.map +0 -1
  201. package/dist/razor-BAB7LFWZ.mjs +0 -17
  202. package/dist/razor-BAB7LFWZ.mjs.map +0 -1
  203. package/dist/requirementDiagram-UZGBJVZJ-RVM6Q2TT.mjs +0 -1179
  204. package/dist/requirementDiagram-UZGBJVZJ-RVM6Q2TT.mjs.map +0 -1
  205. package/dist/rst-AY7U27YM.mjs +0 -41
  206. package/dist/rst-AY7U27YM.mjs.map +0 -1
  207. package/dist/rst-Y2VLYMJI.mjs +0 -41
  208. package/dist/rst-Y2VLYMJI.mjs.map +0 -1
  209. package/dist/ruby-K4BNEYWG.mjs +0 -22
  210. package/dist/ruby-K4BNEYWG.mjs.map +0 -1
  211. package/dist/sankeyDiagram-TZEHDZUN-H7BVEXGO.mjs +0 -1230
  212. package/dist/sankeyDiagram-TZEHDZUN-H7BVEXGO.mjs.map +0 -1
  213. package/dist/sequenceDiagram-WL72ISMW-XBGZSOYI.mjs +0 -3885
  214. package/dist/sequenceDiagram-WL72ISMW-XBGZSOYI.mjs.map +0 -1
  215. package/dist/soy-5QMQV2KL.mjs +0 -15
  216. package/dist/soy-5QMQV2KL.mjs.map +0 -1
  217. package/dist/stateDiagram-FKZM4ZOC-WRIBVFSJ.mjs +0 -467
  218. package/dist/stateDiagram-FKZM4ZOC-WRIBVFSJ.mjs.map +0 -1
  219. package/dist/stateDiagram-v2-4FDKWEC3-SPDO7R6D.mjs +0 -37
  220. package/dist/stateDiagram-v2-4FDKWEC3-SPDO7R6D.mjs.map +0 -1
  221. package/dist/templ-VSARRSO2.mjs +0 -17
  222. package/dist/templ-VSARRSO2.mjs.map +0 -1
  223. package/dist/timeline-definition-IT6M3QCI-PX4A2RIH.mjs +0 -1226
  224. package/dist/timeline-definition-IT6M3QCI-PX4A2RIH.mjs.map +0 -1
  225. package/dist/ts-tags-YK3Q2LIW.mjs +0 -68
  226. package/dist/ts-tags-YK3Q2LIW.mjs.map +0 -1
  227. package/dist/twig-HNMWLN6H.mjs +0 -40
  228. package/dist/twig-HNMWLN6H.mjs.map +0 -1
  229. package/dist/vue-7OSX6ZY5.mjs +0 -10
  230. package/dist/vue-7OSX6ZY5.mjs.map +0 -1
  231. package/dist/vue-html-AQH2V2EU.mjs +0 -20
  232. package/dist/vue-html-AQH2V2EU.mjs.map +0 -1
  233. package/dist/vue-vine-GCYT2IGV.mjs +0 -29
  234. package/dist/vue-vine-GCYT2IGV.mjs.map +0 -1
  235. package/dist/xychartDiagram-PRI3JC2R-65KZQZDU.mjs +0 -1865
  236. package/dist/xychartDiagram-PRI3JC2R-65KZQZDU.mjs.map +0 -1
@@ -1,538 +0,0 @@
1
- import { require_dist } from './chunk-ZGPFSRJJ.mjs';
2
- import { common_default, assignWithDepth_default, sanitizeDirective, detectType, directiveRegex } from './chunk-HNKEYT4A.mjs';
3
- import { memoize_default, merge_default } from './chunk-7O6EKIFY.mjs';
4
- import { __name, select_default, stepBefore, stepAfter, step_default, natural_default, monotoneY, monotoneX, linearClosed_default, linear_default, catmullRom_default, catmullRomOpen_default, catmullRomClosed_default, cardinal_default, cardinalOpen_default, cardinalClosed_default, bundle_default, bumpY, bumpX, basisOpen_default, basisClosed_default, basis_default, log } from './chunk-WHXHCOFP.mjs';
5
- import { __toESM } from './chunk-SH6YXSHR.mjs';
6
-
7
- // ../../node_modules/.pnpm/mermaid@11.12.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-S3R3BYOJ.mjs
8
- var import_sanitize_url = __toESM(require_dist(), 1);
9
- var ZERO_WIDTH_SPACE = "\u200B";
10
- var d3CurveTypes = {
11
- curveBasis: basis_default,
12
- curveBasisClosed: basisClosed_default,
13
- curveBasisOpen: basisOpen_default,
14
- curveBumpX: bumpX,
15
- curveBumpY: bumpY,
16
- curveBundle: bundle_default,
17
- curveCardinalClosed: cardinalClosed_default,
18
- curveCardinalOpen: cardinalOpen_default,
19
- curveCardinal: cardinal_default,
20
- curveCatmullRomClosed: catmullRomClosed_default,
21
- curveCatmullRomOpen: catmullRomOpen_default,
22
- curveCatmullRom: catmullRom_default,
23
- curveLinear: linear_default,
24
- curveLinearClosed: linearClosed_default,
25
- curveMonotoneX: monotoneX,
26
- curveMonotoneY: monotoneY,
27
- curveNatural: natural_default,
28
- curveStep: step_default,
29
- curveStepAfter: stepAfter,
30
- curveStepBefore: stepBefore
31
- };
32
- var directiveWithoutOpen = /\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi;
33
- var detectInit = /* @__PURE__ */ __name(function(text, config) {
34
- const inits = detectDirective(text, /(?:init\b)|(?:initialize\b)/);
35
- let results = {};
36
- if (Array.isArray(inits)) {
37
- const args = inits.map((init) => init.args);
38
- sanitizeDirective(args);
39
- results = assignWithDepth_default(results, [...args]);
40
- } else {
41
- results = inits.args;
42
- }
43
- if (!results) {
44
- return;
45
- }
46
- let type = detectType(text, config);
47
- const prop = "config";
48
- if (results[prop] !== void 0) {
49
- if (type === "flowchart-v2") {
50
- type = "flowchart";
51
- }
52
- results[type] = results[prop];
53
- delete results[prop];
54
- }
55
- return results;
56
- }, "detectInit");
57
- var detectDirective = /* @__PURE__ */ __name(function(text, type = null) {
58
- try {
59
- const commentWithoutDirectives = new RegExp(
60
- `[%]{2}(?![{]${directiveWithoutOpen.source})(?=[}][%]{2}).*
61
- `,
62
- "ig"
63
- );
64
- text = text.trim().replace(commentWithoutDirectives, "").replace(/'/gm, '"');
65
- log.debug(
66
- `Detecting diagram directive${type !== null ? " type:" + type : ""} based on the text:${text}`
67
- );
68
- let match;
69
- const result = [];
70
- while ((match = directiveRegex.exec(text)) !== null) {
71
- if (match.index === directiveRegex.lastIndex) {
72
- directiveRegex.lastIndex++;
73
- }
74
- if (match && !type || type && match[1]?.match(type) || type && match[2]?.match(type)) {
75
- const type2 = match[1] ? match[1] : match[2];
76
- const args = match[3] ? match[3].trim() : match[4] ? JSON.parse(match[4].trim()) : null;
77
- result.push({ type: type2, args });
78
- }
79
- }
80
- if (result.length === 0) {
81
- return { type: text, args: null };
82
- }
83
- return result.length === 1 ? result[0] : result;
84
- } catch (error) {
85
- log.error(
86
- `ERROR: ${error.message} - Unable to parse directive type: '${type}' based on the text: '${text}'`
87
- );
88
- return { type: void 0, args: null };
89
- }
90
- }, "detectDirective");
91
- var removeDirectives = /* @__PURE__ */ __name(function(text) {
92
- return text.replace(directiveRegex, "");
93
- }, "removeDirectives");
94
- var isSubstringInArray = /* @__PURE__ */ __name(function(str, arr) {
95
- for (const [i, element] of arr.entries()) {
96
- if (element.match(str)) {
97
- return i;
98
- }
99
- }
100
- return -1;
101
- }, "isSubstringInArray");
102
- function interpolateToCurve(interpolate, defaultCurve) {
103
- if (!interpolate) {
104
- return defaultCurve;
105
- }
106
- const curveName = `curve${interpolate.charAt(0).toUpperCase() + interpolate.slice(1)}`;
107
- return d3CurveTypes[curveName] ?? defaultCurve;
108
- }
109
- __name(interpolateToCurve, "interpolateToCurve");
110
- function formatUrl(linkStr, config) {
111
- const url = linkStr.trim();
112
- if (!url) {
113
- return void 0;
114
- }
115
- if (config.securityLevel !== "loose") {
116
- return (0, import_sanitize_url.sanitizeUrl)(url);
117
- }
118
- return url;
119
- }
120
- __name(formatUrl, "formatUrl");
121
- var runFunc = /* @__PURE__ */ __name((functionName, ...params) => {
122
- const arrPaths = functionName.split(".");
123
- const len = arrPaths.length - 1;
124
- const fnName = arrPaths[len];
125
- let obj = window;
126
- for (let i = 0; i < len; i++) {
127
- obj = obj[arrPaths[i]];
128
- if (!obj) {
129
- log.error(`Function name: ${functionName} not found in window`);
130
- return;
131
- }
132
- }
133
- obj[fnName](...params);
134
- }, "runFunc");
135
- function distance(p1, p2) {
136
- if (!p1 || !p2) {
137
- return 0;
138
- }
139
- return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));
140
- }
141
- __name(distance, "distance");
142
- function traverseEdge(points) {
143
- let prevPoint;
144
- let totalDistance = 0;
145
- points.forEach((point) => {
146
- totalDistance += distance(point, prevPoint);
147
- prevPoint = point;
148
- });
149
- const remainingDistance = totalDistance / 2;
150
- return calculatePoint(points, remainingDistance);
151
- }
152
- __name(traverseEdge, "traverseEdge");
153
- function calcLabelPosition(points) {
154
- if (points.length === 1) {
155
- return points[0];
156
- }
157
- return traverseEdge(points);
158
- }
159
- __name(calcLabelPosition, "calcLabelPosition");
160
- var roundNumber = /* @__PURE__ */ __name((num, precision = 2) => {
161
- const factor = Math.pow(10, precision);
162
- return Math.round(num * factor) / factor;
163
- }, "roundNumber");
164
- var calculatePoint = /* @__PURE__ */ __name((points, distanceToTraverse) => {
165
- let prevPoint = void 0;
166
- let remainingDistance = distanceToTraverse;
167
- for (const point of points) {
168
- if (prevPoint) {
169
- const vectorDistance = distance(point, prevPoint);
170
- if (vectorDistance === 0) {
171
- return prevPoint;
172
- }
173
- if (vectorDistance < remainingDistance) {
174
- remainingDistance -= vectorDistance;
175
- } else {
176
- const distanceRatio = remainingDistance / vectorDistance;
177
- if (distanceRatio <= 0) {
178
- return prevPoint;
179
- }
180
- if (distanceRatio >= 1) {
181
- return { x: point.x, y: point.y };
182
- }
183
- if (distanceRatio > 0 && distanceRatio < 1) {
184
- return {
185
- x: roundNumber((1 - distanceRatio) * prevPoint.x + distanceRatio * point.x, 5),
186
- y: roundNumber((1 - distanceRatio) * prevPoint.y + distanceRatio * point.y, 5)
187
- };
188
- }
189
- }
190
- }
191
- prevPoint = point;
192
- }
193
- throw new Error("Could not find a suitable point for the given distance");
194
- }, "calculatePoint");
195
- var calcCardinalityPosition = /* @__PURE__ */ __name((isRelationTypePresent, points, initialPosition) => {
196
- log.info(`our points ${JSON.stringify(points)}`);
197
- if (points[0] !== initialPosition) {
198
- points = points.reverse();
199
- }
200
- const distanceToCardinalityPoint = 25;
201
- const center = calculatePoint(points, distanceToCardinalityPoint);
202
- const d = isRelationTypePresent ? 10 : 5;
203
- const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);
204
- const cardinalityPosition = { x: 0, y: 0 };
205
- cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;
206
- cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;
207
- return cardinalityPosition;
208
- }, "calcCardinalityPosition");
209
- function calcTerminalLabelPosition(terminalMarkerSize, position, _points) {
210
- const points = structuredClone(_points);
211
- log.info("our points", points);
212
- if (position !== "start_left" && position !== "start_right") {
213
- points.reverse();
214
- }
215
- const distanceToCardinalityPoint = 25 + terminalMarkerSize;
216
- const center = calculatePoint(points, distanceToCardinalityPoint);
217
- const d = 10 + terminalMarkerSize * 0.5;
218
- const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);
219
- const cardinalityPosition = { x: 0, y: 0 };
220
- if (position === "start_left") {
221
- cardinalityPosition.x = Math.sin(angle + Math.PI) * d + (points[0].x + center.x) / 2;
222
- cardinalityPosition.y = -Math.cos(angle + Math.PI) * d + (points[0].y + center.y) / 2;
223
- } else if (position === "end_right") {
224
- cardinalityPosition.x = Math.sin(angle - Math.PI) * d + (points[0].x + center.x) / 2 - 5;
225
- cardinalityPosition.y = -Math.cos(angle - Math.PI) * d + (points[0].y + center.y) / 2 - 5;
226
- } else if (position === "end_left") {
227
- cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2 - 5;
228
- cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2 - 5;
229
- } else {
230
- cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;
231
- cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;
232
- }
233
- return cardinalityPosition;
234
- }
235
- __name(calcTerminalLabelPosition, "calcTerminalLabelPosition");
236
- function getStylesFromArray(arr) {
237
- let style = "";
238
- let labelStyle = "";
239
- for (const element of arr) {
240
- if (element !== void 0) {
241
- if (element.startsWith("color:") || element.startsWith("text-align:")) {
242
- labelStyle = labelStyle + element + ";";
243
- } else {
244
- style = style + element + ";";
245
- }
246
- }
247
- }
248
- return { style, labelStyle };
249
- }
250
- __name(getStylesFromArray, "getStylesFromArray");
251
- var cnt = 0;
252
- var generateId = /* @__PURE__ */ __name(() => {
253
- cnt++;
254
- return "id-" + Math.random().toString(36).substr(2, 12) + "-" + cnt;
255
- }, "generateId");
256
- function makeRandomHex(length) {
257
- let result = "";
258
- const characters = "0123456789abcdef";
259
- const charactersLength = characters.length;
260
- for (let i = 0; i < length; i++) {
261
- result += characters.charAt(Math.floor(Math.random() * charactersLength));
262
- }
263
- return result;
264
- }
265
- __name(makeRandomHex, "makeRandomHex");
266
- var random = /* @__PURE__ */ __name((options) => {
267
- return makeRandomHex(options.length);
268
- }, "random");
269
- var getTextObj = /* @__PURE__ */ __name(function() {
270
- return {
271
- x: 0,
272
- y: 0,
273
- fill: void 0,
274
- anchor: "start",
275
- style: "#666",
276
- width: 100,
277
- height: 100,
278
- textMargin: 0,
279
- rx: 0,
280
- ry: 0,
281
- valign: void 0,
282
- text: ""
283
- };
284
- }, "getTextObj");
285
- var drawSimpleText = /* @__PURE__ */ __name(function(elem, textData) {
286
- const nText = textData.text.replace(common_default.lineBreakRegex, " ");
287
- const [, _fontSizePx] = parseFontSize(textData.fontSize);
288
- const textElem = elem.append("text");
289
- textElem.attr("x", textData.x);
290
- textElem.attr("y", textData.y);
291
- textElem.style("text-anchor", textData.anchor);
292
- textElem.style("font-family", textData.fontFamily);
293
- textElem.style("font-size", _fontSizePx);
294
- textElem.style("font-weight", textData.fontWeight);
295
- textElem.attr("fill", textData.fill);
296
- if (textData.class !== void 0) {
297
- textElem.attr("class", textData.class);
298
- }
299
- const span = textElem.append("tspan");
300
- span.attr("x", textData.x + textData.textMargin * 2);
301
- span.attr("fill", textData.fill);
302
- span.text(nText);
303
- return textElem;
304
- }, "drawSimpleText");
305
- var wrapLabel = memoize_default(
306
- (label, maxWidth, config) => {
307
- if (!label) {
308
- return label;
309
- }
310
- config = Object.assign(
311
- { fontSize: 12, fontWeight: 400, fontFamily: "Arial", joinWith: "<br/>" },
312
- config
313
- );
314
- if (common_default.lineBreakRegex.test(label)) {
315
- return label;
316
- }
317
- const words = label.split(" ").filter(Boolean);
318
- const completedLines = [];
319
- let nextLine = "";
320
- words.forEach((word, index) => {
321
- const wordLength = calculateTextWidth(`${word} `, config);
322
- const nextLineLength = calculateTextWidth(nextLine, config);
323
- if (wordLength > maxWidth) {
324
- const { hyphenatedStrings, remainingWord } = breakString(word, maxWidth, "-", config);
325
- completedLines.push(nextLine, ...hyphenatedStrings);
326
- nextLine = remainingWord;
327
- } else if (nextLineLength + wordLength >= maxWidth) {
328
- completedLines.push(nextLine);
329
- nextLine = word;
330
- } else {
331
- nextLine = [nextLine, word].filter(Boolean).join(" ");
332
- }
333
- const currentWord = index + 1;
334
- const isLastWord = currentWord === words.length;
335
- if (isLastWord) {
336
- completedLines.push(nextLine);
337
- }
338
- });
339
- return completedLines.filter((line) => line !== "").join(config.joinWith);
340
- },
341
- (label, maxWidth, config) => `${label}${maxWidth}${config.fontSize}${config.fontWeight}${config.fontFamily}${config.joinWith}`
342
- );
343
- var breakString = memoize_default(
344
- (word, maxWidth, hyphenCharacter = "-", config) => {
345
- config = Object.assign(
346
- { fontSize: 12, fontWeight: 400, fontFamily: "Arial", margin: 0 },
347
- config
348
- );
349
- const characters = [...word];
350
- const lines = [];
351
- let currentLine = "";
352
- characters.forEach((character, index) => {
353
- const nextLine = `${currentLine}${character}`;
354
- const lineWidth = calculateTextWidth(nextLine, config);
355
- if (lineWidth >= maxWidth) {
356
- const currentCharacter = index + 1;
357
- const isLastLine = characters.length === currentCharacter;
358
- const hyphenatedNextLine = `${nextLine}${hyphenCharacter}`;
359
- lines.push(isLastLine ? nextLine : hyphenatedNextLine);
360
- currentLine = "";
361
- } else {
362
- currentLine = nextLine;
363
- }
364
- });
365
- return { hyphenatedStrings: lines, remainingWord: currentLine };
366
- },
367
- (word, maxWidth, hyphenCharacter = "-", config) => `${word}${maxWidth}${hyphenCharacter}${config.fontSize}${config.fontWeight}${config.fontFamily}`
368
- );
369
- function calculateTextHeight(text, config) {
370
- return calculateTextDimensions(text, config).height;
371
- }
372
- __name(calculateTextHeight, "calculateTextHeight");
373
- function calculateTextWidth(text, config) {
374
- return calculateTextDimensions(text, config).width;
375
- }
376
- __name(calculateTextWidth, "calculateTextWidth");
377
- var calculateTextDimensions = memoize_default(
378
- (text, config) => {
379
- const { fontSize = 12, fontFamily = "Arial", fontWeight = 400 } = config;
380
- if (!text) {
381
- return { width: 0, height: 0 };
382
- }
383
- const [, _fontSizePx] = parseFontSize(fontSize);
384
- const fontFamilies = ["sans-serif", fontFamily];
385
- const lines = text.split(common_default.lineBreakRegex);
386
- const dims = [];
387
- const body = select_default("body");
388
- if (!body.remove) {
389
- return { width: 0, height: 0, lineHeight: 0 };
390
- }
391
- const g = body.append("svg");
392
- for (const fontFamily2 of fontFamilies) {
393
- let cHeight = 0;
394
- const dim = { width: 0, height: 0, lineHeight: 0 };
395
- for (const line of lines) {
396
- const textObj = getTextObj();
397
- textObj.text = line || ZERO_WIDTH_SPACE;
398
- const textElem = drawSimpleText(g, textObj).style("font-size", _fontSizePx).style("font-weight", fontWeight).style("font-family", fontFamily2);
399
- const bBox = (textElem._groups || textElem)[0][0].getBBox();
400
- if (bBox.width === 0 && bBox.height === 0) {
401
- throw new Error("svg element not in render tree");
402
- }
403
- dim.width = Math.round(Math.max(dim.width, bBox.width));
404
- cHeight = Math.round(bBox.height);
405
- dim.height += cHeight;
406
- dim.lineHeight = Math.round(Math.max(dim.lineHeight, cHeight));
407
- }
408
- dims.push(dim);
409
- }
410
- g.remove();
411
- const index = isNaN(dims[1].height) || isNaN(dims[1].width) || isNaN(dims[1].lineHeight) || dims[0].height > dims[1].height && dims[0].width > dims[1].width && dims[0].lineHeight > dims[1].lineHeight ? 0 : 1;
412
- return dims[index];
413
- },
414
- (text, config) => `${text}${config.fontSize}${config.fontWeight}${config.fontFamily}`
415
- );
416
- var InitIDGenerator = class {
417
- constructor(deterministic = false, seed) {
418
- this.count = 0;
419
- this.count = seed ? seed.length : 0;
420
- this.next = deterministic ? () => this.count++ : () => Date.now();
421
- }
422
- static {
423
- __name(this, "InitIDGenerator");
424
- }
425
- };
426
- var decoder;
427
- var entityDecode = /* @__PURE__ */ __name(function(html) {
428
- decoder = decoder || document.createElement("div");
429
- html = escape(html).replace(/%26/g, "&").replace(/%23/g, "#").replace(/%3B/g, ";");
430
- decoder.innerHTML = html;
431
- return unescape(decoder.textContent);
432
- }, "entityDecode");
433
- function isDetailedError(error) {
434
- return "str" in error;
435
- }
436
- __name(isDetailedError, "isDetailedError");
437
- var insertTitle = /* @__PURE__ */ __name((parent, cssClass, titleTopMargin, title) => {
438
- if (!title) {
439
- return;
440
- }
441
- const bounds = parent.node()?.getBBox();
442
- if (!bounds) {
443
- return;
444
- }
445
- parent.append("text").text(title).attr("text-anchor", "middle").attr("x", bounds.x + bounds.width / 2).attr("y", -titleTopMargin).attr("class", cssClass);
446
- }, "insertTitle");
447
- var parseFontSize = /* @__PURE__ */ __name((fontSize) => {
448
- if (typeof fontSize === "number") {
449
- return [fontSize, fontSize + "px"];
450
- }
451
- const fontSizeNumber = parseInt(fontSize ?? "", 10);
452
- if (Number.isNaN(fontSizeNumber)) {
453
- return [void 0, void 0];
454
- } else if (fontSize === String(fontSizeNumber)) {
455
- return [fontSizeNumber, fontSize + "px"];
456
- } else {
457
- return [fontSizeNumber, fontSize];
458
- }
459
- }, "parseFontSize");
460
- function cleanAndMerge(defaultData, data) {
461
- return merge_default({}, defaultData, data);
462
- }
463
- __name(cleanAndMerge, "cleanAndMerge");
464
- var utils_default = {
465
- assignWithDepth: assignWithDepth_default,
466
- wrapLabel,
467
- calculateTextHeight,
468
- calculateTextWidth,
469
- calculateTextDimensions,
470
- cleanAndMerge,
471
- detectInit,
472
- detectDirective,
473
- isSubstringInArray,
474
- interpolateToCurve,
475
- calcLabelPosition,
476
- calcCardinalityPosition,
477
- calcTerminalLabelPosition,
478
- formatUrl,
479
- getStylesFromArray,
480
- generateId,
481
- random,
482
- runFunc,
483
- entityDecode,
484
- insertTitle,
485
- isLabelCoordinateInPath,
486
- parseFontSize,
487
- InitIDGenerator
488
- };
489
- var encodeEntities = /* @__PURE__ */ __name(function(text) {
490
- let txt = text;
491
- txt = txt.replace(/style.*:\S*#.*;/g, function(s) {
492
- return s.substring(0, s.length - 1);
493
- });
494
- txt = txt.replace(/classDef.*:\S*#.*;/g, function(s) {
495
- return s.substring(0, s.length - 1);
496
- });
497
- txt = txt.replace(/#\w+;/g, function(s) {
498
- const innerTxt = s.substring(1, s.length - 1);
499
- const isInt = /^\+?\d+$/.test(innerTxt);
500
- if (isInt) {
501
- return "\uFB02\xB0\xB0" + innerTxt + "\xB6\xDF";
502
- } else {
503
- return "\uFB02\xB0" + innerTxt + "\xB6\xDF";
504
- }
505
- });
506
- return txt;
507
- }, "encodeEntities");
508
- var decodeEntities = /* @__PURE__ */ __name(function(text) {
509
- return text.replace(/fl°°/g, "&#").replace(/fl°/g, "&").replace(/¶ß/g, ";");
510
- }, "decodeEntities");
511
- var getEdgeId = /* @__PURE__ */ __name((from, to, {
512
- counter = 0,
513
- prefix,
514
- suffix
515
- }, id) => {
516
- if (id) {
517
- return id;
518
- }
519
- return `${prefix ? `${prefix}_` : ""}${from}_${to}_${counter}${suffix ? `_${suffix}` : ""}`;
520
- }, "getEdgeId");
521
- function handleUndefinedAttr(attrValue) {
522
- return attrValue ?? null;
523
- }
524
- __name(handleUndefinedAttr, "handleUndefinedAttr");
525
- function isLabelCoordinateInPath(point, dAttr) {
526
- const roundedX = Math.round(point.x);
527
- const roundedY = Math.round(point.y);
528
- const sanitizedD = dAttr.replace(
529
- /(\d+\.\d+)/g,
530
- (match) => Math.round(parseFloat(match)).toString()
531
- );
532
- return sanitizedD.includes(roundedX.toString()) || sanitizedD.includes(roundedY.toString());
533
- }
534
- __name(isLabelCoordinateInPath, "isLabelCoordinateInPath");
535
-
536
- export { ZERO_WIDTH_SPACE, calculateTextHeight, calculateTextWidth, cleanAndMerge, decodeEntities, encodeEntities, generateId, getEdgeId, getStylesFromArray, handleUndefinedAttr, interpolateToCurve, isDetailedError, parseFontSize, random, removeDirectives, utils_default, wrapLabel };
537
- //# sourceMappingURL=chunk-GU7334FJ.mjs.map
538
- //# sourceMappingURL=chunk-GU7334FJ.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../node_modules/.pnpm/mermaid@11.12.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-S3R3BYOJ.mjs"],"names":[],"mappings":"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","file":"chunk-GU7334FJ.mjs","sourcesContent":["import {\n assignWithDepth_default,\n common_default,\n detectType,\n directiveRegex,\n sanitizeDirective\n} from \"./chunk-ABZYJK2D.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/utils.ts\nimport { sanitizeUrl } from \"@braintree/sanitize-url\";\nimport {\n curveBasis,\n curveBasisClosed,\n curveBasisOpen,\n curveBumpX,\n curveBumpY,\n curveBundle,\n curveCardinalClosed,\n curveCardinalOpen,\n curveCardinal,\n curveCatmullRomClosed,\n curveCatmullRomOpen,\n curveCatmullRom,\n curveLinear,\n curveLinearClosed,\n curveMonotoneX,\n curveMonotoneY,\n curveNatural,\n curveStep,\n curveStepAfter,\n curveStepBefore,\n select\n} from \"d3\";\nimport memoize from \"lodash-es/memoize.js\";\nimport merge from \"lodash-es/merge.js\";\nvar ZERO_WIDTH_SPACE = \"\\u200B\";\nvar d3CurveTypes = {\n curveBasis,\n curveBasisClosed,\n curveBasisOpen,\n curveBumpX,\n curveBumpY,\n curveBundle,\n curveCardinalClosed,\n curveCardinalOpen,\n curveCardinal,\n curveCatmullRomClosed,\n curveCatmullRomOpen,\n curveCatmullRom,\n curveLinear,\n curveLinearClosed,\n curveMonotoneX,\n curveMonotoneY,\n curveNatural,\n curveStep,\n curveStepAfter,\n curveStepBefore\n};\nvar directiveWithoutOpen = /\\s*(?:(\\w+)(?=:):|(\\w+))\\s*(?:(\\w+)|((?:(?!}%{2}).|\\r?\\n)*))?\\s*(?:}%{2})?/gi;\nvar detectInit = /* @__PURE__ */ __name(function(text, config) {\n const inits = detectDirective(text, /(?:init\\b)|(?:initialize\\b)/);\n let results = {};\n if (Array.isArray(inits)) {\n const args = inits.map((init) => init.args);\n sanitizeDirective(args);\n results = assignWithDepth_default(results, [...args]);\n } else {\n results = inits.args;\n }\n if (!results) {\n return;\n }\n let type = detectType(text, config);\n const prop = \"config\";\n if (results[prop] !== void 0) {\n if (type === \"flowchart-v2\") {\n type = \"flowchart\";\n }\n results[type] = results[prop];\n delete results[prop];\n }\n return results;\n}, \"detectInit\");\nvar detectDirective = /* @__PURE__ */ __name(function(text, type = null) {\n try {\n const commentWithoutDirectives = new RegExp(\n `[%]{2}(?![{]${directiveWithoutOpen.source})(?=[}][%]{2}).*\n`,\n \"ig\"\n );\n text = text.trim().replace(commentWithoutDirectives, \"\").replace(/'/gm, '\"');\n log.debug(\n `Detecting diagram directive${type !== null ? \" type:\" + type : \"\"} based on the text:${text}`\n );\n let match;\n const result = [];\n while ((match = directiveRegex.exec(text)) !== null) {\n if (match.index === directiveRegex.lastIndex) {\n directiveRegex.lastIndex++;\n }\n if (match && !type || type && match[1]?.match(type) || type && match[2]?.match(type)) {\n const type2 = match[1] ? match[1] : match[2];\n const args = match[3] ? match[3].trim() : match[4] ? JSON.parse(match[4].trim()) : null;\n result.push({ type: type2, args });\n }\n }\n if (result.length === 0) {\n return { type: text, args: null };\n }\n return result.length === 1 ? result[0] : result;\n } catch (error) {\n log.error(\n `ERROR: ${error.message} - Unable to parse directive type: '${type}' based on the text: '${text}'`\n );\n return { type: void 0, args: null };\n }\n}, \"detectDirective\");\nvar removeDirectives = /* @__PURE__ */ __name(function(text) {\n return text.replace(directiveRegex, \"\");\n}, \"removeDirectives\");\nvar isSubstringInArray = /* @__PURE__ */ __name(function(str, arr) {\n for (const [i, element] of arr.entries()) {\n if (element.match(str)) {\n return i;\n }\n }\n return -1;\n}, \"isSubstringInArray\");\nfunction interpolateToCurve(interpolate, defaultCurve) {\n if (!interpolate) {\n return defaultCurve;\n }\n const curveName = `curve${interpolate.charAt(0).toUpperCase() + interpolate.slice(1)}`;\n return d3CurveTypes[curveName] ?? defaultCurve;\n}\n__name(interpolateToCurve, \"interpolateToCurve\");\nfunction formatUrl(linkStr, config) {\n const url = linkStr.trim();\n if (!url) {\n return void 0;\n }\n if (config.securityLevel !== \"loose\") {\n return sanitizeUrl(url);\n }\n return url;\n}\n__name(formatUrl, \"formatUrl\");\nvar runFunc = /* @__PURE__ */ __name((functionName, ...params) => {\n const arrPaths = functionName.split(\".\");\n const len = arrPaths.length - 1;\n const fnName = arrPaths[len];\n let obj = window;\n for (let i = 0; i < len; i++) {\n obj = obj[arrPaths[i]];\n if (!obj) {\n log.error(`Function name: ${functionName} not found in window`);\n return;\n }\n }\n obj[fnName](...params);\n}, \"runFunc\");\nfunction distance(p1, p2) {\n if (!p1 || !p2) {\n return 0;\n }\n return Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));\n}\n__name(distance, \"distance\");\nfunction traverseEdge(points) {\n let prevPoint;\n let totalDistance = 0;\n points.forEach((point) => {\n totalDistance += distance(point, prevPoint);\n prevPoint = point;\n });\n const remainingDistance = totalDistance / 2;\n return calculatePoint(points, remainingDistance);\n}\n__name(traverseEdge, \"traverseEdge\");\nfunction calcLabelPosition(points) {\n if (points.length === 1) {\n return points[0];\n }\n return traverseEdge(points);\n}\n__name(calcLabelPosition, \"calcLabelPosition\");\nvar roundNumber = /* @__PURE__ */ __name((num, precision = 2) => {\n const factor = Math.pow(10, precision);\n return Math.round(num * factor) / factor;\n}, \"roundNumber\");\nvar calculatePoint = /* @__PURE__ */ __name((points, distanceToTraverse) => {\n let prevPoint = void 0;\n let remainingDistance = distanceToTraverse;\n for (const point of points) {\n if (prevPoint) {\n const vectorDistance = distance(point, prevPoint);\n if (vectorDistance === 0) {\n return prevPoint;\n }\n if (vectorDistance < remainingDistance) {\n remainingDistance -= vectorDistance;\n } else {\n const distanceRatio = remainingDistance / vectorDistance;\n if (distanceRatio <= 0) {\n return prevPoint;\n }\n if (distanceRatio >= 1) {\n return { x: point.x, y: point.y };\n }\n if (distanceRatio > 0 && distanceRatio < 1) {\n return {\n x: roundNumber((1 - distanceRatio) * prevPoint.x + distanceRatio * point.x, 5),\n y: roundNumber((1 - distanceRatio) * prevPoint.y + distanceRatio * point.y, 5)\n };\n }\n }\n }\n prevPoint = point;\n }\n throw new Error(\"Could not find a suitable point for the given distance\");\n}, \"calculatePoint\");\nvar calcCardinalityPosition = /* @__PURE__ */ __name((isRelationTypePresent, points, initialPosition) => {\n log.info(`our points ${JSON.stringify(points)}`);\n if (points[0] !== initialPosition) {\n points = points.reverse();\n }\n const distanceToCardinalityPoint = 25;\n const center = calculatePoint(points, distanceToCardinalityPoint);\n const d = isRelationTypePresent ? 10 : 5;\n const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);\n const cardinalityPosition = { x: 0, y: 0 };\n cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;\n cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;\n return cardinalityPosition;\n}, \"calcCardinalityPosition\");\nfunction calcTerminalLabelPosition(terminalMarkerSize, position, _points) {\n const points = structuredClone(_points);\n log.info(\"our points\", points);\n if (position !== \"start_left\" && position !== \"start_right\") {\n points.reverse();\n }\n const distanceToCardinalityPoint = 25 + terminalMarkerSize;\n const center = calculatePoint(points, distanceToCardinalityPoint);\n const d = 10 + terminalMarkerSize * 0.5;\n const angle = Math.atan2(points[0].y - center.y, points[0].x - center.x);\n const cardinalityPosition = { x: 0, y: 0 };\n if (position === \"start_left\") {\n cardinalityPosition.x = Math.sin(angle + Math.PI) * d + (points[0].x + center.x) / 2;\n cardinalityPosition.y = -Math.cos(angle + Math.PI) * d + (points[0].y + center.y) / 2;\n } else if (position === \"end_right\") {\n cardinalityPosition.x = Math.sin(angle - Math.PI) * d + (points[0].x + center.x) / 2 - 5;\n cardinalityPosition.y = -Math.cos(angle - Math.PI) * d + (points[0].y + center.y) / 2 - 5;\n } else if (position === \"end_left\") {\n cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2 - 5;\n cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2 - 5;\n } else {\n cardinalityPosition.x = Math.sin(angle) * d + (points[0].x + center.x) / 2;\n cardinalityPosition.y = -Math.cos(angle) * d + (points[0].y + center.y) / 2;\n }\n return cardinalityPosition;\n}\n__name(calcTerminalLabelPosition, \"calcTerminalLabelPosition\");\nfunction getStylesFromArray(arr) {\n let style = \"\";\n let labelStyle = \"\";\n for (const element of arr) {\n if (element !== void 0) {\n if (element.startsWith(\"color:\") || element.startsWith(\"text-align:\")) {\n labelStyle = labelStyle + element + \";\";\n } else {\n style = style + element + \";\";\n }\n }\n }\n return { style, labelStyle };\n}\n__name(getStylesFromArray, \"getStylesFromArray\");\nvar cnt = 0;\nvar generateId = /* @__PURE__ */ __name(() => {\n cnt++;\n return \"id-\" + Math.random().toString(36).substr(2, 12) + \"-\" + cnt;\n}, \"generateId\");\nfunction makeRandomHex(length) {\n let result = \"\";\n const characters = \"0123456789abcdef\";\n const charactersLength = characters.length;\n for (let i = 0; i < length; i++) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\n__name(makeRandomHex, \"makeRandomHex\");\nvar random = /* @__PURE__ */ __name((options) => {\n return makeRandomHex(options.length);\n}, \"random\");\nvar getTextObj = /* @__PURE__ */ __name(function() {\n return {\n x: 0,\n y: 0,\n fill: void 0,\n anchor: \"start\",\n style: \"#666\",\n width: 100,\n height: 100,\n textMargin: 0,\n rx: 0,\n ry: 0,\n valign: void 0,\n text: \"\"\n };\n}, \"getTextObj\");\nvar drawSimpleText = /* @__PURE__ */ __name(function(elem, textData) {\n const nText = textData.text.replace(common_default.lineBreakRegex, \" \");\n const [, _fontSizePx] = parseFontSize(textData.fontSize);\n const textElem = elem.append(\"text\");\n textElem.attr(\"x\", textData.x);\n textElem.attr(\"y\", textData.y);\n textElem.style(\"text-anchor\", textData.anchor);\n textElem.style(\"font-family\", textData.fontFamily);\n textElem.style(\"font-size\", _fontSizePx);\n textElem.style(\"font-weight\", textData.fontWeight);\n textElem.attr(\"fill\", textData.fill);\n if (textData.class !== void 0) {\n textElem.attr(\"class\", textData.class);\n }\n const span = textElem.append(\"tspan\");\n span.attr(\"x\", textData.x + textData.textMargin * 2);\n span.attr(\"fill\", textData.fill);\n span.text(nText);\n return textElem;\n}, \"drawSimpleText\");\nvar wrapLabel = memoize(\n (label, maxWidth, config) => {\n if (!label) {\n return label;\n }\n config = Object.assign(\n { fontSize: 12, fontWeight: 400, fontFamily: \"Arial\", joinWith: \"<br/>\" },\n config\n );\n if (common_default.lineBreakRegex.test(label)) {\n return label;\n }\n const words = label.split(\" \").filter(Boolean);\n const completedLines = [];\n let nextLine = \"\";\n words.forEach((word, index) => {\n const wordLength = calculateTextWidth(`${word} `, config);\n const nextLineLength = calculateTextWidth(nextLine, config);\n if (wordLength > maxWidth) {\n const { hyphenatedStrings, remainingWord } = breakString(word, maxWidth, \"-\", config);\n completedLines.push(nextLine, ...hyphenatedStrings);\n nextLine = remainingWord;\n } else if (nextLineLength + wordLength >= maxWidth) {\n completedLines.push(nextLine);\n nextLine = word;\n } else {\n nextLine = [nextLine, word].filter(Boolean).join(\" \");\n }\n const currentWord = index + 1;\n const isLastWord = currentWord === words.length;\n if (isLastWord) {\n completedLines.push(nextLine);\n }\n });\n return completedLines.filter((line) => line !== \"\").join(config.joinWith);\n },\n (label, maxWidth, config) => `${label}${maxWidth}${config.fontSize}${config.fontWeight}${config.fontFamily}${config.joinWith}`\n);\nvar breakString = memoize(\n (word, maxWidth, hyphenCharacter = \"-\", config) => {\n config = Object.assign(\n { fontSize: 12, fontWeight: 400, fontFamily: \"Arial\", margin: 0 },\n config\n );\n const characters = [...word];\n const lines = [];\n let currentLine = \"\";\n characters.forEach((character, index) => {\n const nextLine = `${currentLine}${character}`;\n const lineWidth = calculateTextWidth(nextLine, config);\n if (lineWidth >= maxWidth) {\n const currentCharacter = index + 1;\n const isLastLine = characters.length === currentCharacter;\n const hyphenatedNextLine = `${nextLine}${hyphenCharacter}`;\n lines.push(isLastLine ? nextLine : hyphenatedNextLine);\n currentLine = \"\";\n } else {\n currentLine = nextLine;\n }\n });\n return { hyphenatedStrings: lines, remainingWord: currentLine };\n },\n (word, maxWidth, hyphenCharacter = \"-\", config) => `${word}${maxWidth}${hyphenCharacter}${config.fontSize}${config.fontWeight}${config.fontFamily}`\n);\nfunction calculateTextHeight(text, config) {\n return calculateTextDimensions(text, config).height;\n}\n__name(calculateTextHeight, \"calculateTextHeight\");\nfunction calculateTextWidth(text, config) {\n return calculateTextDimensions(text, config).width;\n}\n__name(calculateTextWidth, \"calculateTextWidth\");\nvar calculateTextDimensions = memoize(\n (text, config) => {\n const { fontSize = 12, fontFamily = \"Arial\", fontWeight = 400 } = config;\n if (!text) {\n return { width: 0, height: 0 };\n }\n const [, _fontSizePx] = parseFontSize(fontSize);\n const fontFamilies = [\"sans-serif\", fontFamily];\n const lines = text.split(common_default.lineBreakRegex);\n const dims = [];\n const body = select(\"body\");\n if (!body.remove) {\n return { width: 0, height: 0, lineHeight: 0 };\n }\n const g = body.append(\"svg\");\n for (const fontFamily2 of fontFamilies) {\n let cHeight = 0;\n const dim = { width: 0, height: 0, lineHeight: 0 };\n for (const line of lines) {\n const textObj = getTextObj();\n textObj.text = line || ZERO_WIDTH_SPACE;\n const textElem = drawSimpleText(g, textObj).style(\"font-size\", _fontSizePx).style(\"font-weight\", fontWeight).style(\"font-family\", fontFamily2);\n const bBox = (textElem._groups || textElem)[0][0].getBBox();\n if (bBox.width === 0 && bBox.height === 0) {\n throw new Error(\"svg element not in render tree\");\n }\n dim.width = Math.round(Math.max(dim.width, bBox.width));\n cHeight = Math.round(bBox.height);\n dim.height += cHeight;\n dim.lineHeight = Math.round(Math.max(dim.lineHeight, cHeight));\n }\n dims.push(dim);\n }\n g.remove();\n const index = isNaN(dims[1].height) || isNaN(dims[1].width) || isNaN(dims[1].lineHeight) || dims[0].height > dims[1].height && dims[0].width > dims[1].width && dims[0].lineHeight > dims[1].lineHeight ? 0 : 1;\n return dims[index];\n },\n (text, config) => `${text}${config.fontSize}${config.fontWeight}${config.fontFamily}`\n);\nvar InitIDGenerator = class {\n constructor(deterministic = false, seed) {\n this.count = 0;\n this.count = seed ? seed.length : 0;\n this.next = deterministic ? () => this.count++ : () => Date.now();\n }\n static {\n __name(this, \"InitIDGenerator\");\n }\n};\nvar decoder;\nvar entityDecode = /* @__PURE__ */ __name(function(html) {\n decoder = decoder || document.createElement(\"div\");\n html = escape(html).replace(/%26/g, \"&\").replace(/%23/g, \"#\").replace(/%3B/g, \";\");\n decoder.innerHTML = html;\n return unescape(decoder.textContent);\n}, \"entityDecode\");\nfunction isDetailedError(error) {\n return \"str\" in error;\n}\n__name(isDetailedError, \"isDetailedError\");\nvar insertTitle = /* @__PURE__ */ __name((parent, cssClass, titleTopMargin, title) => {\n if (!title) {\n return;\n }\n const bounds = parent.node()?.getBBox();\n if (!bounds) {\n return;\n }\n parent.append(\"text\").text(title).attr(\"text-anchor\", \"middle\").attr(\"x\", bounds.x + bounds.width / 2).attr(\"y\", -titleTopMargin).attr(\"class\", cssClass);\n}, \"insertTitle\");\nvar parseFontSize = /* @__PURE__ */ __name((fontSize) => {\n if (typeof fontSize === \"number\") {\n return [fontSize, fontSize + \"px\"];\n }\n const fontSizeNumber = parseInt(fontSize ?? \"\", 10);\n if (Number.isNaN(fontSizeNumber)) {\n return [void 0, void 0];\n } else if (fontSize === String(fontSizeNumber)) {\n return [fontSizeNumber, fontSize + \"px\"];\n } else {\n return [fontSizeNumber, fontSize];\n }\n}, \"parseFontSize\");\nfunction cleanAndMerge(defaultData, data) {\n return merge({}, defaultData, data);\n}\n__name(cleanAndMerge, \"cleanAndMerge\");\nvar utils_default = {\n assignWithDepth: assignWithDepth_default,\n wrapLabel,\n calculateTextHeight,\n calculateTextWidth,\n calculateTextDimensions,\n cleanAndMerge,\n detectInit,\n detectDirective,\n isSubstringInArray,\n interpolateToCurve,\n calcLabelPosition,\n calcCardinalityPosition,\n calcTerminalLabelPosition,\n formatUrl,\n getStylesFromArray,\n generateId,\n random,\n runFunc,\n entityDecode,\n insertTitle,\n isLabelCoordinateInPath,\n parseFontSize,\n InitIDGenerator\n};\nvar encodeEntities = /* @__PURE__ */ __name(function(text) {\n let txt = text;\n txt = txt.replace(/style.*:\\S*#.*;/g, function(s) {\n return s.substring(0, s.length - 1);\n });\n txt = txt.replace(/classDef.*:\\S*#.*;/g, function(s) {\n return s.substring(0, s.length - 1);\n });\n txt = txt.replace(/#\\w+;/g, function(s) {\n const innerTxt = s.substring(1, s.length - 1);\n const isInt = /^\\+?\\d+$/.test(innerTxt);\n if (isInt) {\n return \"\\uFB02\\xB0\\xB0\" + innerTxt + \"\\xB6\\xDF\";\n } else {\n return \"\\uFB02\\xB0\" + innerTxt + \"\\xB6\\xDF\";\n }\n });\n return txt;\n}, \"encodeEntities\");\nvar decodeEntities = /* @__PURE__ */ __name(function(text) {\n return text.replace(/fl°°/g, \"&#\").replace(/fl°/g, \"&\").replace(/¶ß/g, \";\");\n}, \"decodeEntities\");\nvar getEdgeId = /* @__PURE__ */ __name((from, to, {\n counter = 0,\n prefix,\n suffix\n}, id) => {\n if (id) {\n return id;\n }\n return `${prefix ? `${prefix}_` : \"\"}${from}_${to}_${counter}${suffix ? `_${suffix}` : \"\"}`;\n}, \"getEdgeId\");\nfunction handleUndefinedAttr(attrValue) {\n return attrValue ?? null;\n}\n__name(handleUndefinedAttr, \"handleUndefinedAttr\");\nfunction isLabelCoordinateInPath(point, dAttr) {\n const roundedX = Math.round(point.x);\n const roundedY = Math.round(point.y);\n const sanitizedD = dAttr.replace(\n /(\\d+\\.\\d+)/g,\n (match) => Math.round(parseFloat(match)).toString()\n );\n return sanitizedD.includes(roundedX.toString()) || sanitizedD.includes(roundedY.toString());\n}\n__name(isLabelCoordinateInPath, \"isLabelCoordinateInPath\");\n\nexport {\n ZERO_WIDTH_SPACE,\n removeDirectives,\n interpolateToCurve,\n getStylesFromArray,\n generateId,\n random,\n wrapLabel,\n calculateTextHeight,\n calculateTextWidth,\n isDetailedError,\n parseFontSize,\n cleanAndMerge,\n utils_default,\n encodeEntities,\n decodeEntities,\n getEdgeId,\n handleUndefinedAttr\n};\n"]}