cx-viewer 1.0.3 → 1.0.4

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 (1440) hide show
  1. package/README.md +49 -20
  2. package/build.js +15 -0
  3. package/cli.js +102 -18
  4. package/concepts/ar/BodyDiffJSON.md +1 -1
  5. package/concepts/ar/BodyFields.md +30 -33
  6. package/concepts/ar/GlobalSettings.md +165 -167
  7. package/concepts/ar/MainAgent.md +3 -4
  8. package/concepts/ar/ProxySwitch.md +3 -3
  9. package/concepts/ar/QRCode.md +1 -1
  10. package/concepts/ar/ResponseFields.md +29 -41
  11. package/concepts/ar/SubAgent-Search.md +12 -12
  12. package/concepts/ar/Teammate.md +16 -16
  13. package/concepts/ar/ToolsFirst.md +42 -48
  14. package/concepts/ar/TranslateContextPollution.md +9 -9
  15. package/concepts/ar/UltraPlan.md +38 -38
  16. package/concepts/da/BodyDiffJSON.md +2 -2
  17. package/concepts/da/BodyFields.md +30 -33
  18. package/concepts/da/GlobalSettings.md +165 -167
  19. package/concepts/da/MainAgent.md +3 -4
  20. package/concepts/da/ProxySwitch.md +3 -3
  21. package/concepts/da/QRCode.md +1 -1
  22. package/concepts/da/ResponseFields.md +29 -41
  23. package/concepts/da/SubAgent-Search.md +11 -11
  24. package/concepts/da/Teammate.md +16 -16
  25. package/concepts/da/ToolsFirst.md +42 -48
  26. package/concepts/da/TranslateContextPollution.md +9 -9
  27. package/concepts/da/UltraPlan.md +38 -38
  28. package/concepts/de/BodyDiffJSON.md +2 -2
  29. package/concepts/de/BodyFields.md +30 -33
  30. package/concepts/de/GlobalSettings.md +165 -167
  31. package/concepts/de/MainAgent.md +3 -4
  32. package/concepts/de/ProxySwitch.md +3 -3
  33. package/concepts/de/QRCode.md +1 -1
  34. package/concepts/de/ResponseFields.md +29 -41
  35. package/concepts/de/SubAgent-Search.md +11 -11
  36. package/concepts/de/Teammate.md +15 -15
  37. package/concepts/de/ToolsFirst.md +41 -47
  38. package/concepts/de/TranslateContextPollution.md +9 -9
  39. package/concepts/de/UltraPlan.md +38 -38
  40. package/concepts/en/BodyDiffJSON.md +5 -5
  41. package/concepts/en/BodyFields.md +17 -20
  42. package/concepts/en/GlobalSettings.md +49 -51
  43. package/concepts/en/MainAgent.md +8 -8
  44. package/concepts/en/ProxySwitch.md +3 -3
  45. package/concepts/en/QRCode.md +6 -6
  46. package/concepts/en/ResponseFields.md +7 -19
  47. package/concepts/en/SubAgent-Search.md +2 -2
  48. package/concepts/en/Teammate.md +4 -4
  49. package/concepts/en/Tool-apply_patch.md +11 -0
  50. package/concepts/en/Tool-create_goal.md +8 -0
  51. package/concepts/en/Tool-exec.md +88 -0
  52. package/concepts/en/Tool-followup_task.md +10 -0
  53. package/concepts/en/Tool-get_goal.md +5 -0
  54. package/concepts/en/Tool-image_generation.md +5 -0
  55. package/concepts/en/Tool-interrupt_agent.md +9 -0
  56. package/concepts/en/Tool-list_agents.md +9 -0
  57. package/concepts/en/Tool-list_mcp_resource_templates.md +8 -0
  58. package/concepts/en/Tool-list_mcp_resources.md +8 -0
  59. package/concepts/en/Tool-read_mcp_resource.md +10 -0
  60. package/concepts/en/Tool-request_user_input.md +9 -0
  61. package/concepts/en/Tool-send_message.md +10 -0
  62. package/concepts/en/Tool-shell_command.md +12 -0
  63. package/concepts/en/Tool-spawn_agent.md +11 -0
  64. package/concepts/en/Tool-tool_search.md +12 -0
  65. package/concepts/en/Tool-update_goal.md +9 -0
  66. package/concepts/en/Tool-update_plan.md +9 -0
  67. package/concepts/en/Tool-view_image.md +10 -0
  68. package/concepts/en/Tool-wait.md +12 -0
  69. package/concepts/en/Tool-wait_agent.md +9 -0
  70. package/concepts/en/Tool-web_search.md +11 -0
  71. package/concepts/en/Tools.md +29 -58
  72. package/concepts/en/ToolsFirst.md +24 -30
  73. package/concepts/en/TranslateContextPollution.md +10 -38
  74. package/concepts/en/UltraPlan.md +7 -7
  75. package/concepts/es/BodyDiffJSON.md +1 -1
  76. package/concepts/es/BodyFields.md +35 -38
  77. package/concepts/es/GlobalSettings.md +165 -167
  78. package/concepts/es/MainAgent.md +3 -4
  79. package/concepts/es/ProxySwitch.md +3 -3
  80. package/concepts/es/QRCode.md +1 -1
  81. package/concepts/es/ResponseFields.md +28 -40
  82. package/concepts/es/SubAgent-Search.md +12 -12
  83. package/concepts/es/Teammate.md +17 -17
  84. package/concepts/es/ToolsFirst.md +41 -47
  85. package/concepts/es/TranslateContextPollution.md +9 -9
  86. package/concepts/es/UltraPlan.md +38 -38
  87. package/concepts/fr/BodyDiffJSON.md +2 -2
  88. package/concepts/fr/BodyFields.md +35 -38
  89. package/concepts/fr/GlobalSettings.md +165 -167
  90. package/concepts/fr/MainAgent.md +3 -4
  91. package/concepts/fr/ProxySwitch.md +3 -3
  92. package/concepts/fr/QRCode.md +1 -1
  93. package/concepts/fr/ResponseFields.md +25 -37
  94. package/concepts/fr/SubAgent-Search.md +12 -12
  95. package/concepts/fr/Teammate.md +16 -16
  96. package/concepts/fr/ToolsFirst.md +40 -46
  97. package/concepts/fr/TranslateContextPollution.md +9 -9
  98. package/concepts/fr/UltraPlan.md +38 -38
  99. package/concepts/it/BodyDiffJSON.md +2 -2
  100. package/concepts/it/BodyFields.md +35 -38
  101. package/concepts/it/GlobalSettings.md +165 -167
  102. package/concepts/it/MainAgent.md +3 -4
  103. package/concepts/it/ProxySwitch.md +3 -3
  104. package/concepts/it/QRCode.md +1 -1
  105. package/concepts/it/ResponseFields.md +28 -40
  106. package/concepts/it/SubAgent-Search.md +12 -12
  107. package/concepts/it/Teammate.md +17 -17
  108. package/concepts/it/ToolsFirst.md +41 -47
  109. package/concepts/it/TranslateContextPollution.md +9 -9
  110. package/concepts/it/UltraPlan.md +38 -38
  111. package/concepts/ja/BodyDiffJSON.md +1 -1
  112. package/concepts/ja/BodyFields.md +30 -33
  113. package/concepts/ja/GlobalSettings.md +165 -167
  114. package/concepts/ja/MainAgent.md +3 -4
  115. package/concepts/ja/ProxySwitch.md +3 -3
  116. package/concepts/ja/QRCode.md +1 -1
  117. package/concepts/ja/ResponseFields.md +29 -41
  118. package/concepts/ja/SubAgent-Search.md +12 -12
  119. package/concepts/ja/Teammate.md +17 -17
  120. package/concepts/ja/ToolsFirst.md +41 -47
  121. package/concepts/ja/TranslateContextPollution.md +9 -9
  122. package/concepts/ja/UltraPlan.md +38 -38
  123. package/concepts/ko/BodyDiffJSON.md +1 -1
  124. package/concepts/ko/BodyFields.md +30 -33
  125. package/concepts/ko/GlobalSettings.md +165 -167
  126. package/concepts/ko/MainAgent.md +3 -4
  127. package/concepts/ko/ProxySwitch.md +3 -3
  128. package/concepts/ko/QRCode.md +1 -1
  129. package/concepts/ko/ResponseFields.md +29 -41
  130. package/concepts/ko/SubAgent-Search.md +12 -12
  131. package/concepts/ko/Teammate.md +17 -17
  132. package/concepts/ko/ToolsFirst.md +41 -47
  133. package/concepts/ko/TranslateContextPollution.md +9 -9
  134. package/concepts/ko/UltraPlan.md +38 -38
  135. package/concepts/no/BodyDiffJSON.md +2 -2
  136. package/concepts/no/BodyFields.md +30 -33
  137. package/concepts/no/GlobalSettings.md +165 -167
  138. package/concepts/no/MainAgent.md +3 -4
  139. package/concepts/no/ProxySwitch.md +3 -3
  140. package/concepts/no/QRCode.md +1 -1
  141. package/concepts/no/ResponseFields.md +29 -41
  142. package/concepts/no/SubAgent-Search.md +12 -12
  143. package/concepts/no/Teammate.md +17 -17
  144. package/concepts/no/ToolsFirst.md +42 -48
  145. package/concepts/no/TranslateContextPollution.md +9 -9
  146. package/concepts/no/UltraPlan.md +38 -38
  147. package/concepts/pl/BodyDiffJSON.md +2 -2
  148. package/concepts/pl/BodyFields.md +30 -33
  149. package/concepts/pl/GlobalSettings.md +165 -167
  150. package/concepts/pl/MainAgent.md +3 -4
  151. package/concepts/pl/ProxySwitch.md +3 -3
  152. package/concepts/pl/QRCode.md +1 -1
  153. package/concepts/pl/ResponseFields.md +29 -41
  154. package/concepts/pl/SubAgent-Search.md +12 -12
  155. package/concepts/pl/Teammate.md +17 -17
  156. package/concepts/pl/ToolsFirst.md +42 -48
  157. package/concepts/pl/TranslateContextPollution.md +9 -9
  158. package/concepts/pl/UltraPlan.md +38 -38
  159. package/concepts/pt-BR/BodyDiffJSON.md +2 -2
  160. package/concepts/pt-BR/BodyFields.md +30 -33
  161. package/concepts/pt-BR/GlobalSettings.md +165 -167
  162. package/concepts/pt-BR/MainAgent.md +3 -4
  163. package/concepts/pt-BR/ProxySwitch.md +3 -3
  164. package/concepts/pt-BR/QRCode.md +1 -1
  165. package/concepts/pt-BR/ResponseFields.md +29 -41
  166. package/concepts/pt-BR/SubAgent-Search.md +12 -12
  167. package/concepts/pt-BR/Teammate.md +17 -17
  168. package/concepts/pt-BR/ToolsFirst.md +41 -47
  169. package/concepts/pt-BR/TranslateContextPollution.md +9 -9
  170. package/concepts/pt-BR/UltraPlan.md +38 -38
  171. package/concepts/ru/BodyDiffJSON.md +1 -1
  172. package/concepts/ru/BodyFields.md +30 -33
  173. package/concepts/ru/GlobalSettings.md +165 -167
  174. package/concepts/ru/MainAgent.md +3 -4
  175. package/concepts/ru/ProxySwitch.md +3 -3
  176. package/concepts/ru/QRCode.md +1 -1
  177. package/concepts/ru/ResponseFields.md +29 -41
  178. package/concepts/ru/SubAgent-Search.md +12 -12
  179. package/concepts/ru/Teammate.md +17 -17
  180. package/concepts/ru/ToolsFirst.md +41 -47
  181. package/concepts/ru/TranslateContextPollution.md +9 -9
  182. package/concepts/ru/UltraPlan.md +38 -38
  183. package/concepts/th/BodyDiffJSON.md +1 -1
  184. package/concepts/th/BodyFields.md +30 -33
  185. package/concepts/th/GlobalSettings.md +165 -167
  186. package/concepts/th/MainAgent.md +3 -4
  187. package/concepts/th/ProxySwitch.md +3 -3
  188. package/concepts/th/QRCode.md +1 -1
  189. package/concepts/th/ResponseFields.md +29 -41
  190. package/concepts/th/SubAgent-Search.md +12 -12
  191. package/concepts/th/Teammate.md +17 -17
  192. package/concepts/th/ToolsFirst.md +42 -48
  193. package/concepts/th/TranslateContextPollution.md +9 -9
  194. package/concepts/th/UltraPlan.md +38 -38
  195. package/concepts/tr/BodyDiffJSON.md +1 -1
  196. package/concepts/tr/BodyFields.md +30 -33
  197. package/concepts/tr/GlobalSettings.md +165 -167
  198. package/concepts/tr/MainAgent.md +3 -4
  199. package/concepts/tr/ProxySwitch.md +3 -3
  200. package/concepts/tr/QRCode.md +1 -1
  201. package/concepts/tr/ResponseFields.md +29 -41
  202. package/concepts/tr/SubAgent-Search.md +12 -12
  203. package/concepts/tr/Teammate.md +16 -16
  204. package/concepts/tr/ToolsFirst.md +42 -48
  205. package/concepts/tr/TranslateContextPollution.md +9 -9
  206. package/concepts/tr/UltraPlan.md +38 -38
  207. package/concepts/uk/BodyDiffJSON.md +1 -1
  208. package/concepts/uk/BodyFields.md +30 -33
  209. package/concepts/uk/GlobalSettings.md +165 -167
  210. package/concepts/uk/MainAgent.md +3 -4
  211. package/concepts/uk/ProxySwitch.md +3 -3
  212. package/concepts/uk/QRCode.md +1 -1
  213. package/concepts/uk/ResponseFields.md +29 -41
  214. package/concepts/uk/SubAgent-Search.md +12 -12
  215. package/concepts/uk/Teammate.md +17 -17
  216. package/concepts/uk/ToolsFirst.md +42 -48
  217. package/concepts/uk/TranslateContextPollution.md +9 -9
  218. package/concepts/uk/UltraPlan.md +38 -38
  219. package/concepts/zh/BodyDiffJSON.md +4 -4
  220. package/concepts/zh/BodyFields.md +17 -20
  221. package/concepts/zh/GlobalSettings.md +26 -28
  222. package/concepts/zh/MainAgent.md +6 -6
  223. package/concepts/zh/ProxySwitch.md +1 -1
  224. package/concepts/zh/ResponseFields.md +7 -18
  225. package/concepts/zh/SubAgent-Search.md +2 -2
  226. package/concepts/zh/Teammate.md +4 -4
  227. package/concepts/zh/Tool-apply_patch.md +11 -0
  228. package/concepts/zh/Tool-create_goal.md +8 -0
  229. package/concepts/zh/Tool-exec.md +88 -0
  230. package/concepts/zh/Tool-followup_task.md +10 -0
  231. package/concepts/zh/Tool-get_goal.md +5 -0
  232. package/concepts/zh/Tool-image_generation.md +5 -0
  233. package/concepts/zh/Tool-interrupt_agent.md +9 -0
  234. package/concepts/zh/Tool-list_agents.md +9 -0
  235. package/concepts/zh/Tool-list_mcp_resource_templates.md +8 -0
  236. package/concepts/zh/Tool-list_mcp_resources.md +8 -0
  237. package/concepts/zh/Tool-read_mcp_resource.md +10 -0
  238. package/concepts/zh/Tool-request_user_input.md +9 -0
  239. package/concepts/zh/Tool-send_message.md +10 -0
  240. package/concepts/zh/Tool-shell_command.md +12 -0
  241. package/concepts/zh/Tool-spawn_agent.md +11 -0
  242. package/concepts/zh/Tool-tool_search.md +12 -0
  243. package/concepts/zh/Tool-update_goal.md +9 -0
  244. package/concepts/zh/Tool-update_plan.md +9 -0
  245. package/concepts/zh/Tool-view_image.md +10 -0
  246. package/concepts/zh/Tool-wait.md +12 -0
  247. package/concepts/zh/Tool-wait_agent.md +9 -0
  248. package/concepts/zh/Tool-web_search.md +11 -0
  249. package/concepts/zh/Tools.md +29 -58
  250. package/concepts/zh/ToolsFirst.md +21 -27
  251. package/concepts/zh/TranslateContextPollution.md +10 -38
  252. package/concepts/zh/UltraPlan.md +7 -7
  253. package/concepts/zh-TW/BodyFields.md +27 -30
  254. package/concepts/zh-TW/GlobalSettings.md +26 -28
  255. package/concepts/zh-TW/MainAgent.md +0 -1
  256. package/concepts/zh-TW/ProxySwitch.md +22 -22
  257. package/concepts/zh-TW/ResponseFields.md +29 -40
  258. package/concepts/zh-TW/SubAgent-Search.md +12 -12
  259. package/concepts/zh-TW/Teammate.md +16 -16
  260. package/concepts/zh-TW/ToolsFirst.md +41 -47
  261. package/concepts/zh-TW/UltraPlan.md +38 -38
  262. package/dist/assets/App-BZ9oclBj.js +2 -0
  263. package/dist/assets/App-rWON7PuS.css +1 -0
  264. package/dist/assets/MdxEditorPanel-B4lZ7Z_A.js +1 -0
  265. package/dist/assets/MdxEditorPanel-Da_ceLFo.css +1 -0
  266. package/dist/assets/Mobile-B5V_-6Hc.css +1 -0
  267. package/dist/assets/Mobile-C7Hy-TIM.js +1 -0
  268. package/dist/assets/abnfDiagram-VRR7QNED-DYYppIQV.js +1 -0
  269. package/dist/assets/apl-B8ZmNFqK.js +1 -0
  270. package/dist/assets/arc-BT3um7r4.js +1 -0
  271. package/dist/assets/architectureDiagram-ZJ3FMSHR-uweBqnh-.js +1 -0
  272. package/dist/assets/asciiarmor-CIte6N-S.js +1 -0
  273. package/dist/assets/asn1-Ax1-z1nk.js +1 -0
  274. package/dist/assets/asterisk-CLHf-iRz.js +1 -0
  275. package/dist/assets/blockDiagram-677ZJIJ3-DzeI4GyV.js +1 -0
  276. package/dist/assets/brainfuck-CdLnmYpe.js +1 -0
  277. package/dist/assets/c4Diagram-LMCZKHZV-DBI0K7wS.js +1 -0
  278. package/dist/assets/channel-BrN6yx0e.js +1 -0
  279. package/dist/assets/chunk-2Q5K7J3B-DK9JA8Ct.js +1 -0
  280. package/dist/assets/chunk-32BRIVSS-VNg3Ylzs.js +1 -0
  281. package/dist/assets/chunk-5VM5RSS4-DFhufY9o.js +1 -0
  282. package/dist/assets/chunk-EX3LRPZG-B93MHNBT.js +1 -0
  283. package/dist/assets/chunk-JWPE2WC7-C54OW1iN.js +1 -0
  284. package/dist/assets/chunk-MOJQB5TN-lKhWWIDe.js +1 -0
  285. package/dist/assets/chunk-RYQCIY6F-BK2jDXwB.js +1 -0
  286. package/dist/assets/chunk-V7JOEXUC-aLHBmfOc.js +1 -0
  287. package/dist/assets/chunk-VR4S4FIN-Bomuor1h.js +1 -0
  288. package/dist/assets/chunk-XXDRQBXY-BPj05P7g.js +1 -0
  289. package/dist/assets/classDiagram-OUVF2IWQ-COm0X4uJ.js +1 -0
  290. package/dist/assets/classDiagram-v2-EOCWNBFH-COm0X4uJ.js +1 -0
  291. package/dist/assets/clike-BDgEuk0n.js +1 -0
  292. package/dist/assets/clojure-CrPxgQZl.js +1 -0
  293. package/dist/assets/cmake-BknZiLBu.js +1 -0
  294. package/dist/assets/cobol-DN1mHbgw.js +1 -0
  295. package/dist/assets/coffeescript-DTAwRC7M.js +1 -0
  296. package/dist/assets/commonlisp-B4DJ--Bo.js +1 -0
  297. package/dist/assets/cose-bilkent-JH36ORCC-DU44QHSb.js +1 -0
  298. package/dist/assets/crystal-DoipYOOv.js +1 -0
  299. package/dist/assets/css-BeQRP3p5.js +1 -0
  300. package/dist/assets/cynefin-VYW2F7L2-C0dowxsF.js +15 -0
  301. package/dist/assets/cynefinDiagram-TSTJHNR4-C6vNWPUV.js +1 -0
  302. package/dist/assets/cypher-BzELKutH.js +1 -0
  303. package/dist/assets/cytoscape.esm-D0POlJZ1.js +9 -0
  304. package/dist/assets/d-Mh2Rawoc.js +1 -0
  305. package/dist/assets/dagre-VKFMJZFB-aLG4uEb-.js +1 -0
  306. package/dist/assets/defaultLocale-DZ7E7S9R.js +1 -0
  307. package/dist/assets/diagram-FQU43EPY-D5C8GfdU.js +1 -0
  308. package/dist/assets/diagram-G47NLZAW-C9tRw_xi.js +1 -0
  309. package/dist/assets/diagram-NH7WQ7WH-AYxTxwJ2.js +1 -0
  310. package/dist/assets/diagram-OA4YK3LP-BuBE5n9n.js +1 -0
  311. package/dist/assets/diagram-WEI45ONY-Cda7zYeO.js +1 -0
  312. package/dist/assets/diff-B1OtBbfz.js +1 -0
  313. package/dist/assets/dockerfile-Du7niAGi.js +1 -0
  314. package/dist/assets/dtd-So5hjSa8.js +1 -0
  315. package/dist/assets/dylan-Co15g-RX.js +1 -0
  316. package/dist/assets/ebnf-DWrAnno4.js +1 -0
  317. package/dist/assets/ebnfDiagram-CCIWWBDH-DC_OGyoh.js +1 -0
  318. package/dist/assets/ecl-8tbf0rUT.js +1 -0
  319. package/dist/assets/eiffel-BXtlUtEg.js +1 -0
  320. package/dist/assets/elm-BwiUluiH.js +1 -0
  321. package/dist/assets/erDiagram-Q63AITRT-D2G21PVY.js +1 -0
  322. package/dist/assets/erlang-CrHBLi-m.js +1 -0
  323. package/dist/assets/factor-C7nC06Ta.js +1 -0
  324. package/dist/assets/fcl-DKWfryFT.js +1 -0
  325. package/dist/assets/flowDiagram-23GEKE2U-CEQPYHrk.js +1 -0
  326. package/dist/assets/forth-Cg8ASoTj.js +1 -0
  327. package/dist/assets/fortran-BHf_qfFx.js +1 -0
  328. package/dist/assets/ganttDiagram-NO4QXBWP-JStxUtFR.js +1 -0
  329. package/dist/assets/gas-cj_2N_z1.js +1 -0
  330. package/dist/assets/gherkin-BiuTaH40.js +1 -0
  331. package/dist/assets/gitGraphDiagram-IHSO6WYX-BiojPH-V.js +1 -0
  332. package/dist/assets/graph-CnJdn47S.js +1 -0
  333. package/dist/assets/groovy-Bq8cXYUU.js +1 -0
  334. package/dist/assets/haskell-1ANuaeie.js +1 -0
  335. package/dist/assets/haxe-BUNSvWf_.js +1 -0
  336. package/dist/assets/html2canvas.esm-HFdlUwfn.js +20 -0
  337. package/dist/assets/http-DPC2IRQA.js +1 -0
  338. package/dist/assets/idl-DDbIciu_.js +1 -0
  339. package/dist/assets/index-BEyKG3O5.css +1 -0
  340. package/dist/assets/index-BduJoLQ5.js +1 -0
  341. package/dist/assets/index-BqwR8F0v.js +1 -0
  342. package/dist/assets/index-BsycQyrv.js +1 -0
  343. package/dist/assets/index-CFSDxZyA.js +1 -0
  344. package/dist/assets/index-CunNLTHc.js +1 -0
  345. package/dist/assets/index-OGkDFNTK.js +1 -0
  346. package/dist/assets/index-oxOyrL07.js +2 -0
  347. package/dist/assets/index-wvaycTGT.js +1 -0
  348. package/dist/assets/infoDiagram-FWYZ7A6U-Csl_aBIC.js +1 -0
  349. package/dist/assets/init-DMZMl1PR.js +1 -0
  350. package/dist/assets/ishikawaDiagram-FXEZZL3T-CjgGuMwr.js +1 -0
  351. package/dist/assets/javascript-Cet1BUca.js +1 -0
  352. package/dist/assets/journeyDiagram-5HDEW3XC-DUOy1PCq.js +1 -0
  353. package/dist/assets/jszip.min-BxIXdRg4.js +12 -0
  354. package/dist/assets/julia-CdxLCr68.js +1 -0
  355. package/dist/assets/kanban-definition-HUTT4EX6-Cx7GSrSj.js +1 -0
  356. package/dist/assets/katex-CfXf84Fz.js +1 -0
  357. package/dist/assets/layout-CCUE9ZRw.js +1 -0
  358. package/dist/assets/linear-GeBi6jJp.js +1 -0
  359. package/dist/assets/livescript-Bw1Vw7Ae.js +1 -0
  360. package/dist/assets/lua-DM1wbcnc.js +1 -0
  361. package/dist/assets/map-DQeg2hXV.js +1 -0
  362. package/dist/assets/mathematica-BXSv1_O1.js +1 -0
  363. package/dist/assets/mbox-CWY0keg3.js +1 -0
  364. package/dist/assets/mermaid.core-Cy9iVxov.js +7 -0
  365. package/dist/assets/mindmap-definition-LN4V7U3C-CUVxVkK5.js +1 -0
  366. package/dist/assets/mirc-CMLrLVMT.js +1 -0
  367. package/dist/assets/mllike-naqhAFf1.js +1 -0
  368. package/dist/assets/modelica-BvadsaHY.js +1 -0
  369. package/dist/assets/mscgen-DOr-Q10p.js +1 -0
  370. package/dist/assets/mumps-DKTl5Nyj.js +1 -0
  371. package/dist/assets/nginx-DWR90-d1.js +1 -0
  372. package/dist/assets/nsis-ooFGduGn.js +1 -0
  373. package/dist/assets/ntriples-q5jkU4X1.js +1 -0
  374. package/dist/assets/octave-Deu9Ci7_.js +1 -0
  375. package/dist/assets/orbiting-BCD4Vuij.svg +7 -0
  376. package/dist/assets/ordinal-DA-_8pMy.js +1 -0
  377. package/dist/assets/oz-cTQm1aoB.js +1 -0
  378. package/dist/assets/pascal-Oh3VmczP.js +1 -0
  379. package/dist/assets/pegDiagram-2B236MQR-BCF1byLY.js +1 -0
  380. package/dist/assets/perl-BddWF1HQ.js +1 -0
  381. package/dist/assets/pieDiagram-ENE6RG2P-D2cZTo8-.js +1 -0
  382. package/dist/assets/pig-g5ZQNIDr.js +1 -0
  383. package/dist/assets/powershell-CNmQNFVJ.js +1 -0
  384. package/dist/assets/properties-B41DXfv6.js +1 -0
  385. package/dist/assets/protobuf-eEBl31OJ.js +1 -0
  386. package/dist/assets/pug-DRSo4eCK.js +1 -0
  387. package/dist/assets/puppet-ClfRubAD.js +1 -0
  388. package/dist/assets/python-BSflc812.js +1 -0
  389. package/dist/assets/q-BBDx3N9Y.js +1 -0
  390. package/dist/assets/quadrantDiagram-ABIIQ3AL-Bwsn2--F.js +1 -0
  391. package/dist/assets/r-CByC1eO8.js +1 -0
  392. package/dist/assets/railroadDiagram-RFXS5EU6-CLGLpWHs.js +1 -0
  393. package/dist/assets/requirementDiagram-TGXJPOKE-BfmBYwZl.js +1 -0
  394. package/dist/assets/rpm-8t935XkD.js +1 -0
  395. package/dist/assets/ruby-CAgbkLZh.js +1 -0
  396. package/dist/assets/sankeyDiagram-HTMAVEWB-CqZhbyFn.js +1 -0
  397. package/dist/assets/sas-C-JWcRvo.js +1 -0
  398. package/dist/assets/scheme-D7o9RjUX.js +1 -0
  399. package/dist/assets/seqResourceLoaders-Bkh2Rb9i.js +2 -0
  400. package/dist/assets/seqResourceLoaders-Do7Kqg3B.css +41 -0
  401. package/dist/assets/sequenceDiagram-DBY2YBRQ-CcOdXkN2.js +1 -0
  402. package/dist/assets/shell-BXA79DV6.js +1 -0
  403. package/dist/assets/shimmer-BBDejmDf.svg +7 -0
  404. package/dist/assets/sieve-DNwyl0rd.js +1 -0
  405. package/dist/assets/simple-mode-CoQRusFX.js +1 -0
  406. package/dist/assets/sizeCapture-X5ZJPWSS-B4OVmPqu.js +1 -0
  407. package/dist/assets/smalltalk-DggktV6S.js +1 -0
  408. package/dist/assets/solr-D7NRuIPM.js +1 -0
  409. package/dist/assets/sparql-Cr71deJQ.js +1 -0
  410. package/dist/assets/spreadsheet-BMD3tYqw.js +1 -0
  411. package/dist/assets/sql-CbOjXfBR.js +1 -0
  412. package/dist/assets/stateDiagram-2N3HPSRC-Dysun0oO.js +1 -0
  413. package/dist/assets/stateDiagram-v2-6OUMAXLB-BFet8xAz.js +1 -0
  414. package/dist/assets/stex-iDPIkRmr.js +1 -0
  415. package/dist/assets/stylus-nWZizI-c.js +1 -0
  416. package/dist/assets/swift-DOhLK5SG.js +1 -0
  417. package/dist/assets/swimlanes-5IMT3BWC-_30OXwXy.js +2 -0
  418. package/dist/assets/swimlanesDiagram-G3AALYLV-C19viY0G.js +1 -0
  419. package/dist/assets/tcl-CQhJd1WY.js +1 -0
  420. package/dist/assets/textile-D9XqfVtL.js +1 -0
  421. package/dist/assets/tiddlywiki-DfOYgVky.js +1 -0
  422. package/dist/assets/tiki-a0_YLWvV.js +1 -0
  423. package/dist/assets/timeline-definition-FHXFAJF6-X1Xk3onD.js +1 -0
  424. package/dist/assets/toml-ekl3F1YB.js +1 -0
  425. package/dist/assets/troff-Bh_pcXF1.js +1 -0
  426. package/dist/assets/ttcn-M6363IRW.js +1 -0
  427. package/dist/assets/ttcn-cfg-7I2DgJEN.js +1 -0
  428. package/dist/assets/turtle-B5jdxH6D.js +1 -0
  429. package/dist/assets/vb-DM-xPmVv.js +1 -0
  430. package/dist/assets/vbscript-B0qu41Yc.js +1 -0
  431. package/dist/assets/velocity-FCgsuVHf.js +1 -0
  432. package/dist/assets/vendor-antd-Bzi1WuBb.js +17 -0
  433. package/dist/assets/vendor-codemirror-CKTrJd47.js +1 -0
  434. package/dist/assets/vendor-highlight-IFTJ9nxW.js +1 -0
  435. package/dist/assets/vendor-markdown-BN3QLsBu.js +3 -0
  436. package/dist/assets/vendor-mdxeditor-4PbKH6K7.js +2 -0
  437. package/dist/assets/vendor-qrcode-Bnjm0rcu.js +6 -0
  438. package/dist/assets/vendor-react-l0sNRNKZ.js +1 -0
  439. package/dist/assets/vendor-virtuoso-2P4SowHC.js +1 -0
  440. package/dist/assets/vendor-xterm-DckPrCx1.js +37 -0
  441. package/dist/assets/vennDiagram-L72KCM5P-D3fQnGq7.js +1 -0
  442. package/dist/assets/verilog-nrfFvR12.js +1 -0
  443. package/dist/assets/vhdl-WlDXtV-W.js +1 -0
  444. package/dist/assets/wardleyDiagram-EHGQE667-CRhqI6-g.js +1 -0
  445. package/dist/assets/webidl-RIQoSXDx.js +1 -0
  446. package/dist/assets/xquery-BN45G3lJ.js +1 -0
  447. package/dist/assets/xychartDiagram-FW5EYKEG-Cmtgmmtg.js +1 -0
  448. package/dist/assets/yacas-U6gaIVhD.js +1 -0
  449. package/dist/assets/z80-CFe5BHbK.js +1 -0
  450. package/dist/index.html +25 -6
  451. package/dist/voice-packs/default/A_choice_for_your_consideration_sir.MP3 +0 -0
  452. package/dist/voice-packs/default/It_is_done_sir.MP3 +0 -0
  453. package/dist/voice-packs/default/The_plan_awaits_your_approval_sir.MP3 +0 -0
  454. package/dist/voice-packs/default/pack.json +24 -0
  455. package/dist/voice-packs/sanguo/ask.MP3 +0 -0
  456. package/dist/voice-packs/sanguo/end.MP3 +0 -0
  457. package/dist/voice-packs/sanguo/pack.json +24 -0
  458. package/dist/voice-packs/sanguo/plan.MP3 +0 -0
  459. package/electron/diag.js +110 -0
  460. package/electron/main.js +1432 -0
  461. package/electron/menu-model.js +107 -0
  462. package/electron/tab-bar.html +575 -0
  463. package/electron/tab-content-preload.js +66 -0
  464. package/electron/tab-preload.js +24 -0
  465. package/electron/tab-worker.js +142 -0
  466. package/electron/window-state.js +60 -0
  467. package/electron/workspace-preload.js +19 -0
  468. package/findcx.js +4 -0
  469. package/i18n.js +3 -423
  470. package/index.html +30 -0
  471. package/interceptor.js +144 -70
  472. package/jsconfig.json +25 -0
  473. package/lib/approval-reviewer.js +23 -0
  474. package/lib/appserver-bridge.js +1753 -237
  475. package/lib/ask-bridge.js +5 -5
  476. package/lib/cli-args.js +1 -0
  477. package/lib/codex-config.js +157 -18
  478. package/lib/context-watcher.js +6 -65
  479. package/lib/delta-reconstructor.js +74 -52
  480. package/lib/ensure-hooks.js +37 -30
  481. package/lib/interceptor-core.js +490 -43
  482. package/lib/log-watcher.js +3 -8
  483. package/lib/main-agent-entry.js +68 -0
  484. package/lib/openai-body.js +95 -0
  485. package/lib/otel-adapter.js +3 -2
  486. package/lib/otel-receiver.js +1 -2
  487. package/lib/perm-bridge.js +84 -44
  488. package/lib/proxy-env.js +45 -1
  489. package/lib/sdk-adapter.js +241 -51
  490. package/lib/sdk-manager.js +523 -370
  491. package/lib/skills-api.js +364 -0
  492. package/lib/stats-worker.js +21 -21
  493. package/lib/token-usage.js +29 -0
  494. package/lib/updater.js +3 -7
  495. package/package.json +27 -6
  496. package/plugins/.gitkeep +0 -0
  497. package/plugins/README.md +8 -0
  498. package/proxy.js +187 -241
  499. package/pty-manager.js +17 -1
  500. package/public/favicon.ico +0 -0
  501. package/public/voice-packs/default/A_choice_for_your_consideration_sir.MP3 +0 -0
  502. package/public/voice-packs/default/It_is_done_sir.MP3 +0 -0
  503. package/public/voice-packs/default/The_plan_awaits_your_approval_sir.MP3 +0 -0
  504. package/public/voice-packs/default/pack.json +24 -0
  505. package/public/voice-packs/sanguo/ask.MP3 +0 -0
  506. package/public/voice-packs/sanguo/end.MP3 +0 -0
  507. package/public/voice-packs/sanguo/pack.json +24 -0
  508. package/public/voice-packs/sanguo/plan.MP3 +0 -0
  509. package/scripts/check-no-control-bytes.js +130 -0
  510. package/scripts/check-sign-config.sh +85 -0
  511. package/scripts/gen-default-voicepack.js +176 -0
  512. package/scripts/mac-sign.sh +47 -0
  513. package/scripts/npm-pack-dry-run.mjs +20 -0
  514. package/server/lib/approval-modal-prefs.js +72 -0
  515. package/server/lib/context-rules.js +70 -0
  516. package/server/lib/delta-reconstructor.js +403 -0
  517. package/server/lib/tools-xml-formatter.js +91 -0
  518. package/server/lib/voice-pack-events.js +79 -0
  519. package/server.js +420 -86
  520. package/src/App.jsx +638 -0
  521. package/src/App.module.css +1088 -0
  522. package/src/AppBase.jsx +2803 -0
  523. package/src/Mobile.jsx +1348 -0
  524. package/src/components/approval/ApprovalModal.jsx +319 -0
  525. package/src/components/approval/ApprovalModal.module.css +160 -0
  526. package/src/components/approval/ToolApprovalPanel.jsx +111 -0
  527. package/src/components/approval/ToolApprovalPanel.module.css +250 -0
  528. package/src/components/chat/ApprovalPortalContext.js +26 -0
  529. package/src/components/chat/AskQuestionForm.jsx +279 -0
  530. package/src/components/chat/AskTimeoutCountdown.jsx +113 -0
  531. package/src/components/chat/ChatInputBar.jsx +584 -0
  532. package/src/components/chat/ChatInputBar.module.css +656 -0
  533. package/src/components/chat/ChatMessage.jsx +1587 -0
  534. package/src/components/chat/ChatMessage.module.css +1560 -0
  535. package/src/components/chat/ChatView.jsx +3533 -0
  536. package/src/components/chat/ChatView.module.css +418 -0
  537. package/src/components/chat/DiffView.jsx +111 -0
  538. package/src/components/chat/DiffView.module.css +141 -0
  539. package/src/components/chat/RoleFilterBar.jsx +35 -0
  540. package/src/components/chat/RoleFilterBar.module.css +62 -0
  541. package/src/components/chat/controllers/askFlowController.js +789 -0
  542. package/src/components/chat/controllers/permissionController.js +84 -0
  543. package/src/components/chat/controllers/ptyPromptController.js +166 -0
  544. package/src/components/chat/controllers/scrollHighlightController.js +50 -0
  545. package/src/components/chat/controllers/splitDragController.js +135 -0
  546. package/src/components/chat/controllers/toolFileChangeController.js +216 -0
  547. package/src/components/chat/interactionOwnership.js +106 -0
  548. package/src/components/chat/uploadDeferLogic.js +46 -0
  549. package/src/components/common/ConceptHelp.jsx +97 -0
  550. package/src/components/common/ConceptHelp.module.css +151 -0
  551. package/src/components/common/ConfirmRemoveButton.jsx +78 -0
  552. package/src/components/common/CountryFlag.jsx +105 -0
  553. package/src/components/common/CountryFlag.module.css +36 -0
  554. package/src/components/common/DingTalkIcon.jsx +20 -0
  555. package/src/components/common/DiscordIcon.jsx +21 -0
  556. package/src/components/common/FeishuIcon.jsx +23 -0
  557. package/src/components/common/HoverPreviewTip.jsx +62 -0
  558. package/src/components/common/HoverPreviewTip.module.css +21 -0
  559. package/src/components/common/ImageLightbox.jsx +244 -0
  560. package/src/components/common/ImageLightbox.module.css +120 -0
  561. package/src/components/common/MemoryDetailModal.jsx +75 -0
  562. package/src/components/common/OpenFolderIcon.jsx +53 -0
  563. package/src/components/common/OpenFolderIcon.module.css +7 -0
  564. package/src/components/common/PanelResizer.jsx +48 -0
  565. package/src/components/common/PanelResizer.module.css +11 -0
  566. package/src/components/common/QuickAutoApproveRows.jsx +66 -0
  567. package/src/components/common/RefreshIcon.jsx +50 -0
  568. package/src/components/common/RefreshIcon.module.css +26 -0
  569. package/src/components/common/SnapLineOverlay.jsx +47 -0
  570. package/src/components/common/SnapLineOverlay.module.css +31 -0
  571. package/src/components/common/ToolsHelp.jsx +113 -0
  572. package/src/components/common/ToolsHelp.module.css +85 -0
  573. package/src/components/common/WeComIcon.jsx +22 -0
  574. package/src/components/common/quickMenuIcons.jsx +99 -0
  575. package/src/components/common/sharedChrome.module.css +274 -0
  576. package/src/components/dashboard/AppHeader.jsx +2085 -0
  577. package/src/components/dashboard/AppHeader.module.css +676 -0
  578. package/src/components/dashboard/CachePopoverContent.jsx +538 -0
  579. package/src/components/dashboard/CachePopoverContent.module.css +191 -0
  580. package/src/components/dashboard/ContextTab.jsx +769 -0
  581. package/src/components/dashboard/ContextTab.module.css +565 -0
  582. package/src/components/dashboard/DetailPanel.jsx +813 -0
  583. package/src/components/dashboard/DetailPanel.module.css +513 -0
  584. package/src/components/dashboard/LiveTagPopover.jsx +89 -0
  585. package/src/components/dashboard/LiveTagPopover.module.css +67 -0
  586. package/src/components/dashboard/RequestList.jsx +146 -0
  587. package/src/components/dashboard/RequestList.module.css +146 -0
  588. package/src/components/dashboard/TeamSessionPanel.jsx +584 -0
  589. package/src/components/dashboard/TeamSessionPanel.module.css +457 -0
  590. package/src/components/dashboard/UsageWindowPill.jsx +166 -0
  591. package/src/components/dashboard/UsageWindowPill.module.css +140 -0
  592. package/src/components/dashboard/WorkflowRunsPanel.jsx +108 -0
  593. package/src/components/dashboard/WorkflowRunsPanel.module.css +72 -0
  594. package/src/components/dashboard/WorkspaceList.jsx +410 -0
  595. package/src/components/dashboard/WorkspaceList.module.css +254 -0
  596. package/src/components/files/FileContentView.jsx +1013 -0
  597. package/src/components/files/FileContentView.module.css +418 -0
  598. package/src/components/files/FileExplorer.jsx +937 -0
  599. package/src/components/files/FileExplorer.module.css +173 -0
  600. package/src/components/files/MdxEditorPanel.base.css +9 -0
  601. package/src/components/files/MdxEditorPanel.jsx +181 -0
  602. package/src/components/files/MdxEditorPanel.module.css +917 -0
  603. package/src/components/git/DiffMiniMap.jsx +98 -0
  604. package/src/components/git/DiffMiniMap.module.css +17 -0
  605. package/src/components/git/FullFileDiffView.jsx +265 -0
  606. package/src/components/git/FullFileDiffView.module.css +176 -0
  607. package/src/components/git/GitChanges.jsx +461 -0
  608. package/src/components/git/GitChanges.module.css +337 -0
  609. package/src/components/git/GitDiffView.jsx +161 -0
  610. package/src/components/git/GitDiffView.module.css +205 -0
  611. package/src/components/mobile/MobileDrawerCloseButton.jsx +18 -0
  612. package/src/components/mobile/MobileFileExplorer.jsx +231 -0
  613. package/src/components/mobile/MobileFileExplorer.module.css +171 -0
  614. package/src/components/mobile/MobileGitDiff.jsx +293 -0
  615. package/src/components/mobile/MobileGitDiff.module.css +317 -0
  616. package/src/components/mobile/MobileStats.jsx +211 -0
  617. package/src/components/mobile/MobileStats.module.css +75 -0
  618. package/src/components/settings/ImAppendSystemModal.jsx +104 -0
  619. package/src/components/settings/ImConversationModal.jsx +328 -0
  620. package/src/components/settings/ImConversationModal.module.css +49 -0
  621. package/src/components/settings/ImPlatformSettings.jsx +453 -0
  622. package/src/components/settings/ImPlatformSettings.module.css +110 -0
  623. package/src/components/settings/ImSkillsModal.jsx +94 -0
  624. package/src/components/settings/ImStatusChip.jsx +80 -0
  625. package/src/components/settings/ImStatusChip.module.css +36 -0
  626. package/src/components/settings/MessagingModal.jsx +65 -0
  627. package/src/components/settings/MessagingModal.module.css +95 -0
  628. package/src/components/settings/ModelPromptTabs.jsx +118 -0
  629. package/src/components/settings/PluginModal.jsx +423 -0
  630. package/src/components/settings/PluginModal.module.css +136 -0
  631. package/src/components/settings/PreferencesForm.jsx +104 -0
  632. package/src/components/settings/PreferencesForm.module.css +27 -0
  633. package/src/components/settings/ProcessModal.jsx +175 -0
  634. package/src/components/settings/ProcessModal.module.css +21 -0
  635. package/src/components/settings/ProjectAliasEditor.jsx +138 -0
  636. package/src/components/settings/ProjectAliasEditor.module.css +87 -0
  637. package/src/components/settings/ProjectPrefsManagerModal.jsx +123 -0
  638. package/src/components/settings/ProjectPrefsManagerModal.module.css +52 -0
  639. package/src/components/settings/ProxyModal.jsx +286 -0
  640. package/src/components/settings/ProxyModal.module.css +141 -0
  641. package/src/components/settings/SkillsManagerModal.jsx +143 -0
  642. package/src/components/settings/SkillsManagerModal.module.css +143 -0
  643. package/src/components/settings/SystemTextModal.jsx +312 -0
  644. package/src/components/settings/SystemTextModal.module.css +331 -0
  645. package/src/components/settings/VoicePackSettings.jsx +319 -0
  646. package/src/components/settings/VoicePackSettings.module.css +151 -0
  647. package/src/components/settings/imPlatforms.js +177 -0
  648. package/src/components/terminal/CustomUltraplanEditModal.jsx +227 -0
  649. package/src/components/terminal/CustomUltraplanEditModal.module.css +189 -0
  650. package/src/components/terminal/PresetExpertPickerModal.jsx +116 -0
  651. package/src/components/terminal/PresetExpertPickerModal.module.css +90 -0
  652. package/src/components/terminal/PresetModal.jsx +118 -0
  653. package/src/components/terminal/ScratchTerminal.jsx +359 -0
  654. package/src/components/terminal/TerminalPanel.jsx +2021 -0
  655. package/src/components/terminal/TerminalPanel.module.css +872 -0
  656. package/src/components/terminal/TerminalWsContext.jsx +226 -0
  657. package/src/components/terminal/UltraPlanModal.jsx +328 -0
  658. package/src/components/terminal/UltraPlanModal.module.css +527 -0
  659. package/src/components/terminal/UltraplanExpertManagerModal.jsx +114 -0
  660. package/src/components/terminal/UltraplanExpertManagerModal.module.css +91 -0
  661. package/src/components/terminal/UltraplanPanel.jsx +307 -0
  662. package/src/components/terminal/UltraplanPanel.module.css +540 -0
  663. package/src/components/terminal/terminalThemes.js +33 -0
  664. package/src/components/viewers/ImageViewer.jsx +288 -0
  665. package/src/components/viewers/ImageViewer.module.css +203 -0
  666. package/src/components/viewers/JsonViewer.jsx +40 -0
  667. package/src/components/viewers/JsonViewer.module.css +9 -0
  668. package/src/components/viewers/LogTable.jsx +131 -0
  669. package/src/components/viewers/MarkdownBlock.jsx +112 -0
  670. package/src/components/viewers/MarkdownBlock.module.css +157 -0
  671. package/src/components/viewers/ToolResultView.jsx +389 -0
  672. package/src/components/viewers/ToolResultView.module.css +108 -0
  673. package/src/components/viewers/WebResultsView.jsx +74 -0
  674. package/src/components/viewers/WebResultsView.module.css +85 -0
  675. package/src/components/viewers/WorkflowLiveHud.jsx +153 -0
  676. package/src/components/viewers/WorkflowLiveHud.module.css +256 -0
  677. package/src/components/viewers/WorkflowPanel.jsx +243 -0
  678. package/src/components/viewers/WorkflowPanel.module.css +265 -0
  679. package/src/components/viewers/WorkflowTimeline.jsx +83 -0
  680. package/src/components/viewers/WorkflowTimeline.module.css +116 -0
  681. package/src/contexts/SettingsContext.jsx +140 -0
  682. package/src/env.js +54 -0
  683. package/src/global.css +607 -0
  684. package/src/hooks/useMarkdownExport.js +146 -0
  685. package/src/hooks/useMermaidRender.js +193 -0
  686. package/src/hooks/useProjectAlias.js +29 -0
  687. package/src/hooks/useSessionStoragePersistedSet.js +41 -0
  688. package/src/i18n/mdxTranslations.js +472 -0
  689. package/src/i18n.js +12409 -0
  690. package/src/img/ccv-logo.png +0 -0
  691. package/src/img/codex/entrance.svg +7 -0
  692. package/src/img/codex/exit.svg +7 -0
  693. package/src/img/codex/orbiting.svg +7 -0
  694. package/src/img/codex/shimmer.svg +7 -0
  695. package/src/img/codex/thinking.svg +7 -0
  696. package/src/img/codex/tickle.svg +7 -0
  697. package/src/img/codex/waiting.svg +7 -0
  698. package/src/img/codex/writing.svg +7 -0
  699. package/src/img/default-avatar.svg +1 -0
  700. package/src/img/default-model-avatar.svg +1 -0
  701. package/src/img/loading-pet.gif +0 -0
  702. package/src/img/model-codex.svg +2 -0
  703. package/src/img/model-deepseek.svg +2 -0
  704. package/src/img/model-gemini.svg +2 -0
  705. package/src/img/model-glm.svg +2 -0
  706. package/src/img/model-kimi.svg +2 -0
  707. package/src/img/model-minimax.svg +2 -0
  708. package/src/img/model-openai.svg +2 -0
  709. package/src/img/model-qwen.svg +2 -0
  710. package/src/img/teammates/DESIGN.md +165 -0
  711. package/src/img/teammates/analyst.svg +32 -0
  712. package/src/img/teammates/auditor.svg +28 -0
  713. package/src/img/teammates/builder.svg +33 -0
  714. package/src/img/teammates/default.svg +25 -0
  715. package/src/img/teammates/designer.svg +25 -0
  716. package/src/img/teammates/executor.svg +31 -0
  717. package/src/img/teammates/expert.svg +30 -0
  718. package/src/img/teammates/explorer.svg +30 -0
  719. package/src/img/teammates/implementer.svg +34 -0
  720. package/src/img/teammates/investigator.svg +29 -0
  721. package/src/img/teammates/marvel/analyst.svg +26 -0
  722. package/src/img/teammates/marvel/auditor.svg +28 -0
  723. package/src/img/teammates/marvel/builder.svg +15 -0
  724. package/src/img/teammates/marvel/default.svg +25 -0
  725. package/src/img/teammates/marvel/designer.svg +21 -0
  726. package/src/img/teammates/marvel/executor.svg +25 -0
  727. package/src/img/teammates/marvel/expert.svg +31 -0
  728. package/src/img/teammates/marvel/explorer.svg +22 -0
  729. package/src/img/teammates/marvel/implementer.svg +30 -0
  730. package/src/img/teammates/marvel/investigator.svg +21 -0
  731. package/src/img/teammates/marvel/researcher.svg +30 -0
  732. package/src/img/teammates/marvel/reviewer.svg +21 -0
  733. package/src/img/teammates/marvel/scanner.svg +23 -0
  734. package/src/img/teammates/marvel/security.svg +30 -0
  735. package/src/img/teammates/marvel/tracer.svg +19 -0
  736. package/src/img/teammates/marvel/translator.svg +24 -0
  737. package/src/img/teammates/marvel/worker.svg +16 -0
  738. package/src/img/teammates/researcher.svg +35 -0
  739. package/src/img/teammates/reviewer.svg +23 -0
  740. package/src/img/teammates/scanner.svg +31 -0
  741. package/src/img/teammates/security.svg +31 -0
  742. package/src/img/teammates/tracer.svg +30 -0
  743. package/src/img/teammates/translator.svg +32 -0
  744. package/src/img/teammates/worker.svg +29 -0
  745. package/src/main.jsx +30 -0
  746. package/src/tokenInterceptor.js +60 -0
  747. package/src/utils/apiUrl.js +26 -0
  748. package/src/utils/approvalReviewerOptions.js +27 -0
  749. package/src/utils/askFallback.js +21 -0
  750. package/src/utils/askOptionDesc.js +55 -0
  751. package/src/utils/askPortalMatcher.js +54 -0
  752. package/src/utils/autoApproveOptions.js +23 -0
  753. package/src/utils/avatarAnimationPostPass.js +46 -0
  754. package/src/utils/builtinPresets.js +18 -0
  755. package/src/utils/clearCheckpoint.js +154 -0
  756. package/src/utils/commandValidator.js +45 -0
  757. package/src/utils/contentFilter.js +675 -0
  758. package/src/utils/contextRaw.js +17 -0
  759. package/src/utils/contextSidebarNavigation.js +16 -0
  760. package/src/utils/conversationEntryNormalize.js +497 -0
  761. package/src/utils/displayScaleHelper.js +47 -0
  762. package/src/utils/entry-slim.js +594 -0
  763. package/src/utils/entryCache.js +179 -0
  764. package/src/utils/errorReport.js +40 -0
  765. package/src/utils/fileExpandedPathsStorage.js +70 -0
  766. package/src/utils/fileIcons.jsx +36 -0
  767. package/src/utils/fileOpen.js +37 -0
  768. package/src/utils/formatters.js +48 -0
  769. package/src/utils/gitApi.js +50 -0
  770. package/src/utils/gitTreeBuilder.js +19 -0
  771. package/src/utils/helpers.js +462 -0
  772. package/src/utils/identityHeal.js +83 -0
  773. package/src/utils/imOrigin.js +24 -0
  774. package/src/utils/imTr.js +7 -0
  775. package/src/utils/imageCompress.js +83 -0
  776. package/src/utils/imageDownscale.js +28 -0
  777. package/src/utils/imageResize.js +112 -0
  778. package/src/utils/ingestPipeline.js +47 -0
  779. package/src/utils/lazyWithReload.js +53 -0
  780. package/src/utils/markdown.js +30 -0
  781. package/src/utils/markdownIncremental.js +39 -0
  782. package/src/utils/markdownProfiler.js +113 -0
  783. package/src/utils/mdExtensionDetect.js +64 -0
  784. package/src/utils/memoryLinkParser.js +44 -0
  785. package/src/utils/modalMask.js +15 -0
  786. package/src/utils/monotime.js +6 -0
  787. package/src/utils/pinnedMenu.js +55 -0
  788. package/src/utils/presetShortcuts.js +14 -0
  789. package/src/utils/projectAlias.js +135 -0
  790. package/src/utils/promptClassifier.js +111 -0
  791. package/src/utils/promptDetect.js +196 -0
  792. package/src/utils/promptNav.js +60 -0
  793. package/src/utils/ptyChunkBuilder.js +251 -0
  794. package/src/utils/quickMenuHoverIntent.js +35 -0
  795. package/src/utils/rateLimitParser.js +249 -0
  796. package/src/utils/readResultPool.js +106 -0
  797. package/src/utils/refreshCachedItemProp.js +32 -0
  798. package/src/utils/requestTools.js +19 -0
  799. package/src/utils/requestType.js +284 -0
  800. package/src/utils/resizeCalc.js +21 -0
  801. package/src/utils/resolveLocalized.js +17 -0
  802. package/src/utils/seqResourceLoaders.js +79 -0
  803. package/src/utils/sessionManager.js +694 -0
  804. package/src/utils/sessionMerge.js +290 -0
  805. package/src/utils/skillModalController.js +111 -0
  806. package/src/utils/skillsParser.js +116 -0
  807. package/src/utils/slashCommandLabels.js +80 -0
  808. package/src/utils/splitDragCalc.js +73 -0
  809. package/src/utils/stickyBottomController.js +643 -0
  810. package/src/utils/svgSanitize.js +48 -0
  811. package/src/utils/systemTags.js +47 -0
  812. package/src/utils/tCodex.js +20 -0
  813. package/src/utils/teamModalBuilder.js +347 -0
  814. package/src/utils/teamSessionParser.js +186 -0
  815. package/src/utils/teammateAvatars.js +194 -0
  816. package/src/utils/teammateDetector.js +106 -0
  817. package/src/utils/termDiag.js +114 -0
  818. package/src/utils/terminalClipboard.js +117 -0
  819. package/src/utils/terminalWriteQueue.js +398 -0
  820. package/src/utils/thinkingMerge.js +49 -0
  821. package/src/utils/tokenUsage.js +1 -0
  822. package/src/utils/toolCatalog.js +31 -0
  823. package/src/utils/toolNameAliases.js +13 -0
  824. package/src/utils/toolResultBuilder.js +312 -0
  825. package/src/utils/toolResultClassifier.js +16 -0
  826. package/src/utils/toolResultCore.js +161 -0
  827. package/src/utils/toolsDiff.js +44 -0
  828. package/src/utils/toolsXmlFormatter.js +3 -0
  829. package/src/utils/ultraplanController.js +109 -0
  830. package/src/utils/ultraplanExperts.js +86 -0
  831. package/src/utils/ultraplanTemplates.js +152 -0
  832. package/src/utils/userImageRefs.js +49 -0
  833. package/src/utils/voicePackPlayer.js +233 -0
  834. package/src/utils/webResultGrouping.js +111 -0
  835. package/src/utils/workflowFormat.js +52 -0
  836. package/src/utils/workflowRuns.js +118 -0
  837. package/src/utils/workflowStore.js +94 -0
  838. package/vite.config.js +106 -0
  839. package/concepts/ar/CacheRebuild.md +0 -36
  840. package/concepts/ar/KVCacheContent.md +0 -49
  841. package/concepts/ar/Tool-Agent.md +0 -125
  842. package/concepts/ar/Tool-AskUserQuestion.md +0 -75
  843. package/concepts/ar/Tool-Bash.md +0 -167
  844. package/concepts/ar/Tool-Edit.md +0 -46
  845. package/concepts/ar/Tool-EnterPlanMode.md +0 -128
  846. package/concepts/ar/Tool-EnterWorktree.md +0 -56
  847. package/concepts/ar/Tool-ExitPlanMode.md +0 -62
  848. package/concepts/ar/Tool-Glob.md +0 -39
  849. package/concepts/ar/Tool-Grep.md +0 -57
  850. package/concepts/ar/Tool-NotebookEdit.md +0 -33
  851. package/concepts/ar/Tool-Read.md +0 -56
  852. package/concepts/ar/Tool-SendMessage.md +0 -41
  853. package/concepts/ar/Tool-Skill.md +0 -56
  854. package/concepts/ar/Tool-Task.md +0 -51
  855. package/concepts/ar/Tool-TaskCreate.md +0 -78
  856. package/concepts/ar/Tool-TaskGet.md +0 -56
  857. package/concepts/ar/Tool-TaskList.md +0 -56
  858. package/concepts/ar/Tool-TaskOutput.md +0 -40
  859. package/concepts/ar/Tool-TaskStop.md +0 -32
  860. package/concepts/ar/Tool-TaskUpdate.md +0 -123
  861. package/concepts/ar/Tool-TeamCreate.md +0 -38
  862. package/concepts/ar/Tool-TeamDelete.md +0 -30
  863. package/concepts/ar/Tool-WebFetch.md +0 -55
  864. package/concepts/ar/Tool-WebSearch.md +0 -58
  865. package/concepts/ar/Tool-Write.md +0 -39
  866. package/concepts/ar/Tool-executeCode.md +0 -41
  867. package/concepts/ar/Tool-getDiagnostics.md +0 -32
  868. package/concepts/ar/Tools.md +0 -67
  869. package/concepts/da/CacheRebuild.md +0 -36
  870. package/concepts/da/KVCacheContent.md +0 -49
  871. package/concepts/da/Tool-Agent.md +0 -125
  872. package/concepts/da/Tool-AskUserQuestion.md +0 -75
  873. package/concepts/da/Tool-Bash.md +0 -167
  874. package/concepts/da/Tool-Edit.md +0 -46
  875. package/concepts/da/Tool-EnterPlanMode.md +0 -128
  876. package/concepts/da/Tool-EnterWorktree.md +0 -56
  877. package/concepts/da/Tool-ExitPlanMode.md +0 -62
  878. package/concepts/da/Tool-Glob.md +0 -39
  879. package/concepts/da/Tool-Grep.md +0 -57
  880. package/concepts/da/Tool-NotebookEdit.md +0 -33
  881. package/concepts/da/Tool-Read.md +0 -56
  882. package/concepts/da/Tool-SendMessage.md +0 -41
  883. package/concepts/da/Tool-Skill.md +0 -56
  884. package/concepts/da/Tool-Task.md +0 -51
  885. package/concepts/da/Tool-TaskCreate.md +0 -78
  886. package/concepts/da/Tool-TaskGet.md +0 -56
  887. package/concepts/da/Tool-TaskList.md +0 -56
  888. package/concepts/da/Tool-TaskOutput.md +0 -40
  889. package/concepts/da/Tool-TaskStop.md +0 -32
  890. package/concepts/da/Tool-TaskUpdate.md +0 -123
  891. package/concepts/da/Tool-TeamCreate.md +0 -38
  892. package/concepts/da/Tool-TeamDelete.md +0 -30
  893. package/concepts/da/Tool-WebFetch.md +0 -55
  894. package/concepts/da/Tool-WebSearch.md +0 -58
  895. package/concepts/da/Tool-Write.md +0 -39
  896. package/concepts/da/Tool-executeCode.md +0 -41
  897. package/concepts/da/Tool-getDiagnostics.md +0 -32
  898. package/concepts/da/Tools.md +0 -67
  899. package/concepts/de/CacheRebuild.md +0 -36
  900. package/concepts/de/KVCacheContent.md +0 -49
  901. package/concepts/de/Tool-Agent.md +0 -125
  902. package/concepts/de/Tool-AskUserQuestion.md +0 -75
  903. package/concepts/de/Tool-Bash.md +0 -167
  904. package/concepts/de/Tool-Edit.md +0 -46
  905. package/concepts/de/Tool-EnterPlanMode.md +0 -128
  906. package/concepts/de/Tool-EnterWorktree.md +0 -56
  907. package/concepts/de/Tool-ExitPlanMode.md +0 -62
  908. package/concepts/de/Tool-Glob.md +0 -39
  909. package/concepts/de/Tool-Grep.md +0 -57
  910. package/concepts/de/Tool-NotebookEdit.md +0 -33
  911. package/concepts/de/Tool-Read.md +0 -56
  912. package/concepts/de/Tool-SendMessage.md +0 -41
  913. package/concepts/de/Tool-Skill.md +0 -56
  914. package/concepts/de/Tool-Task.md +0 -51
  915. package/concepts/de/Tool-TaskCreate.md +0 -78
  916. package/concepts/de/Tool-TaskGet.md +0 -56
  917. package/concepts/de/Tool-TaskList.md +0 -56
  918. package/concepts/de/Tool-TaskOutput.md +0 -40
  919. package/concepts/de/Tool-TaskStop.md +0 -32
  920. package/concepts/de/Tool-TaskUpdate.md +0 -123
  921. package/concepts/de/Tool-TeamCreate.md +0 -38
  922. package/concepts/de/Tool-TeamDelete.md +0 -30
  923. package/concepts/de/Tool-WebFetch.md +0 -55
  924. package/concepts/de/Tool-WebSearch.md +0 -58
  925. package/concepts/de/Tool-Write.md +0 -39
  926. package/concepts/de/Tool-executeCode.md +0 -41
  927. package/concepts/de/Tool-getDiagnostics.md +0 -32
  928. package/concepts/de/Tools.md +0 -67
  929. package/concepts/en/CacheRebuild.md +0 -36
  930. package/concepts/en/KVCacheContent.md +0 -49
  931. package/concepts/en/Tool-Agent.md +0 -125
  932. package/concepts/en/Tool-AskUserQuestion.md +0 -75
  933. package/concepts/en/Tool-Bash.md +0 -167
  934. package/concepts/en/Tool-Edit.md +0 -46
  935. package/concepts/en/Tool-EnterPlanMode.md +0 -128
  936. package/concepts/en/Tool-EnterWorktree.md +0 -56
  937. package/concepts/en/Tool-ExitPlanMode.md +0 -62
  938. package/concepts/en/Tool-Glob.md +0 -39
  939. package/concepts/en/Tool-Grep.md +0 -57
  940. package/concepts/en/Tool-NotebookEdit.md +0 -33
  941. package/concepts/en/Tool-Read.md +0 -56
  942. package/concepts/en/Tool-SendMessage.md +0 -41
  943. package/concepts/en/Tool-Skill.md +0 -56
  944. package/concepts/en/Tool-Task.md +0 -51
  945. package/concepts/en/Tool-TaskCreate.md +0 -78
  946. package/concepts/en/Tool-TaskGet.md +0 -56
  947. package/concepts/en/Tool-TaskList.md +0 -56
  948. package/concepts/en/Tool-TaskOutput.md +0 -40
  949. package/concepts/en/Tool-TaskStop.md +0 -32
  950. package/concepts/en/Tool-TaskUpdate.md +0 -123
  951. package/concepts/en/Tool-TeamCreate.md +0 -38
  952. package/concepts/en/Tool-TeamDelete.md +0 -30
  953. package/concepts/en/Tool-WebFetch.md +0 -55
  954. package/concepts/en/Tool-WebSearch.md +0 -58
  955. package/concepts/en/Tool-Write.md +0 -39
  956. package/concepts/en/Tool-executeCode.md +0 -41
  957. package/concepts/en/Tool-getDiagnostics.md +0 -32
  958. package/concepts/es/CacheRebuild.md +0 -36
  959. package/concepts/es/KVCacheContent.md +0 -49
  960. package/concepts/es/Tool-Agent.md +0 -125
  961. package/concepts/es/Tool-AskUserQuestion.md +0 -75
  962. package/concepts/es/Tool-Bash.md +0 -167
  963. package/concepts/es/Tool-Edit.md +0 -46
  964. package/concepts/es/Tool-EnterPlanMode.md +0 -128
  965. package/concepts/es/Tool-EnterWorktree.md +0 -56
  966. package/concepts/es/Tool-ExitPlanMode.md +0 -62
  967. package/concepts/es/Tool-Glob.md +0 -39
  968. package/concepts/es/Tool-Grep.md +0 -57
  969. package/concepts/es/Tool-NotebookEdit.md +0 -33
  970. package/concepts/es/Tool-Read.md +0 -56
  971. package/concepts/es/Tool-SendMessage.md +0 -41
  972. package/concepts/es/Tool-Skill.md +0 -56
  973. package/concepts/es/Tool-Task.md +0 -51
  974. package/concepts/es/Tool-TaskCreate.md +0 -78
  975. package/concepts/es/Tool-TaskGet.md +0 -56
  976. package/concepts/es/Tool-TaskList.md +0 -56
  977. package/concepts/es/Tool-TaskOutput.md +0 -40
  978. package/concepts/es/Tool-TaskStop.md +0 -32
  979. package/concepts/es/Tool-TaskUpdate.md +0 -123
  980. package/concepts/es/Tool-TeamCreate.md +0 -38
  981. package/concepts/es/Tool-TeamDelete.md +0 -30
  982. package/concepts/es/Tool-WebFetch.md +0 -55
  983. package/concepts/es/Tool-WebSearch.md +0 -58
  984. package/concepts/es/Tool-Write.md +0 -39
  985. package/concepts/es/Tool-executeCode.md +0 -41
  986. package/concepts/es/Tool-getDiagnostics.md +0 -32
  987. package/concepts/es/Tools.md +0 -67
  988. package/concepts/fr/CacheRebuild.md +0 -36
  989. package/concepts/fr/KVCacheContent.md +0 -49
  990. package/concepts/fr/Tool-Agent.md +0 -125
  991. package/concepts/fr/Tool-AskUserQuestion.md +0 -75
  992. package/concepts/fr/Tool-Bash.md +0 -167
  993. package/concepts/fr/Tool-Edit.md +0 -46
  994. package/concepts/fr/Tool-EnterPlanMode.md +0 -128
  995. package/concepts/fr/Tool-EnterWorktree.md +0 -56
  996. package/concepts/fr/Tool-ExitPlanMode.md +0 -62
  997. package/concepts/fr/Tool-Glob.md +0 -39
  998. package/concepts/fr/Tool-Grep.md +0 -57
  999. package/concepts/fr/Tool-NotebookEdit.md +0 -33
  1000. package/concepts/fr/Tool-Read.md +0 -56
  1001. package/concepts/fr/Tool-SendMessage.md +0 -41
  1002. package/concepts/fr/Tool-Skill.md +0 -56
  1003. package/concepts/fr/Tool-Task.md +0 -51
  1004. package/concepts/fr/Tool-TaskCreate.md +0 -78
  1005. package/concepts/fr/Tool-TaskGet.md +0 -56
  1006. package/concepts/fr/Tool-TaskList.md +0 -56
  1007. package/concepts/fr/Tool-TaskOutput.md +0 -40
  1008. package/concepts/fr/Tool-TaskStop.md +0 -32
  1009. package/concepts/fr/Tool-TaskUpdate.md +0 -123
  1010. package/concepts/fr/Tool-TeamCreate.md +0 -38
  1011. package/concepts/fr/Tool-TeamDelete.md +0 -30
  1012. package/concepts/fr/Tool-WebFetch.md +0 -55
  1013. package/concepts/fr/Tool-WebSearch.md +0 -58
  1014. package/concepts/fr/Tool-Write.md +0 -39
  1015. package/concepts/fr/Tool-executeCode.md +0 -41
  1016. package/concepts/fr/Tool-getDiagnostics.md +0 -32
  1017. package/concepts/fr/Tools.md +0 -67
  1018. package/concepts/it/CacheRebuild.md +0 -36
  1019. package/concepts/it/KVCacheContent.md +0 -49
  1020. package/concepts/it/Tool-Agent.md +0 -125
  1021. package/concepts/it/Tool-AskUserQuestion.md +0 -75
  1022. package/concepts/it/Tool-Bash.md +0 -167
  1023. package/concepts/it/Tool-Edit.md +0 -46
  1024. package/concepts/it/Tool-EnterPlanMode.md +0 -128
  1025. package/concepts/it/Tool-EnterWorktree.md +0 -56
  1026. package/concepts/it/Tool-ExitPlanMode.md +0 -62
  1027. package/concepts/it/Tool-Glob.md +0 -39
  1028. package/concepts/it/Tool-Grep.md +0 -57
  1029. package/concepts/it/Tool-NotebookEdit.md +0 -33
  1030. package/concepts/it/Tool-Read.md +0 -56
  1031. package/concepts/it/Tool-SendMessage.md +0 -41
  1032. package/concepts/it/Tool-Skill.md +0 -56
  1033. package/concepts/it/Tool-Task.md +0 -51
  1034. package/concepts/it/Tool-TaskCreate.md +0 -78
  1035. package/concepts/it/Tool-TaskGet.md +0 -56
  1036. package/concepts/it/Tool-TaskList.md +0 -56
  1037. package/concepts/it/Tool-TaskOutput.md +0 -40
  1038. package/concepts/it/Tool-TaskStop.md +0 -32
  1039. package/concepts/it/Tool-TaskUpdate.md +0 -123
  1040. package/concepts/it/Tool-TeamCreate.md +0 -38
  1041. package/concepts/it/Tool-TeamDelete.md +0 -30
  1042. package/concepts/it/Tool-WebFetch.md +0 -55
  1043. package/concepts/it/Tool-WebSearch.md +0 -58
  1044. package/concepts/it/Tool-Write.md +0 -39
  1045. package/concepts/it/Tool-executeCode.md +0 -41
  1046. package/concepts/it/Tool-getDiagnostics.md +0 -32
  1047. package/concepts/it/Tools.md +0 -67
  1048. package/concepts/ja/CacheRebuild.md +0 -36
  1049. package/concepts/ja/KVCacheContent.md +0 -49
  1050. package/concepts/ja/Tool-Agent.md +0 -125
  1051. package/concepts/ja/Tool-AskUserQuestion.md +0 -75
  1052. package/concepts/ja/Tool-Bash.md +0 -167
  1053. package/concepts/ja/Tool-Edit.md +0 -46
  1054. package/concepts/ja/Tool-EnterPlanMode.md +0 -128
  1055. package/concepts/ja/Tool-EnterWorktree.md +0 -56
  1056. package/concepts/ja/Tool-ExitPlanMode.md +0 -62
  1057. package/concepts/ja/Tool-Glob.md +0 -39
  1058. package/concepts/ja/Tool-Grep.md +0 -57
  1059. package/concepts/ja/Tool-NotebookEdit.md +0 -33
  1060. package/concepts/ja/Tool-Read.md +0 -56
  1061. package/concepts/ja/Tool-SendMessage.md +0 -41
  1062. package/concepts/ja/Tool-Skill.md +0 -56
  1063. package/concepts/ja/Tool-Task.md +0 -51
  1064. package/concepts/ja/Tool-TaskCreate.md +0 -78
  1065. package/concepts/ja/Tool-TaskGet.md +0 -56
  1066. package/concepts/ja/Tool-TaskList.md +0 -56
  1067. package/concepts/ja/Tool-TaskOutput.md +0 -40
  1068. package/concepts/ja/Tool-TaskStop.md +0 -32
  1069. package/concepts/ja/Tool-TaskUpdate.md +0 -123
  1070. package/concepts/ja/Tool-TeamCreate.md +0 -38
  1071. package/concepts/ja/Tool-TeamDelete.md +0 -30
  1072. package/concepts/ja/Tool-WebFetch.md +0 -55
  1073. package/concepts/ja/Tool-WebSearch.md +0 -58
  1074. package/concepts/ja/Tool-Write.md +0 -39
  1075. package/concepts/ja/Tool-executeCode.md +0 -41
  1076. package/concepts/ja/Tool-getDiagnostics.md +0 -32
  1077. package/concepts/ja/Tools.md +0 -67
  1078. package/concepts/ko/CacheRebuild.md +0 -36
  1079. package/concepts/ko/KVCacheContent.md +0 -49
  1080. package/concepts/ko/Tool-Agent.md +0 -125
  1081. package/concepts/ko/Tool-AskUserQuestion.md +0 -75
  1082. package/concepts/ko/Tool-Bash.md +0 -167
  1083. package/concepts/ko/Tool-Edit.md +0 -46
  1084. package/concepts/ko/Tool-EnterPlanMode.md +0 -128
  1085. package/concepts/ko/Tool-EnterWorktree.md +0 -56
  1086. package/concepts/ko/Tool-ExitPlanMode.md +0 -62
  1087. package/concepts/ko/Tool-Glob.md +0 -39
  1088. package/concepts/ko/Tool-Grep.md +0 -57
  1089. package/concepts/ko/Tool-NotebookEdit.md +0 -33
  1090. package/concepts/ko/Tool-Read.md +0 -56
  1091. package/concepts/ko/Tool-SendMessage.md +0 -41
  1092. package/concepts/ko/Tool-Skill.md +0 -56
  1093. package/concepts/ko/Tool-Task.md +0 -51
  1094. package/concepts/ko/Tool-TaskCreate.md +0 -78
  1095. package/concepts/ko/Tool-TaskGet.md +0 -56
  1096. package/concepts/ko/Tool-TaskList.md +0 -56
  1097. package/concepts/ko/Tool-TaskOutput.md +0 -40
  1098. package/concepts/ko/Tool-TaskStop.md +0 -32
  1099. package/concepts/ko/Tool-TaskUpdate.md +0 -123
  1100. package/concepts/ko/Tool-TeamCreate.md +0 -38
  1101. package/concepts/ko/Tool-TeamDelete.md +0 -30
  1102. package/concepts/ko/Tool-WebFetch.md +0 -55
  1103. package/concepts/ko/Tool-WebSearch.md +0 -58
  1104. package/concepts/ko/Tool-Write.md +0 -39
  1105. package/concepts/ko/Tool-executeCode.md +0 -41
  1106. package/concepts/ko/Tool-getDiagnostics.md +0 -32
  1107. package/concepts/ko/Tools.md +0 -67
  1108. package/concepts/no/CacheRebuild.md +0 -36
  1109. package/concepts/no/KVCacheContent.md +0 -49
  1110. package/concepts/no/Tool-Agent.md +0 -125
  1111. package/concepts/no/Tool-AskUserQuestion.md +0 -75
  1112. package/concepts/no/Tool-Bash.md +0 -167
  1113. package/concepts/no/Tool-Edit.md +0 -46
  1114. package/concepts/no/Tool-EnterPlanMode.md +0 -128
  1115. package/concepts/no/Tool-EnterWorktree.md +0 -56
  1116. package/concepts/no/Tool-ExitPlanMode.md +0 -62
  1117. package/concepts/no/Tool-Glob.md +0 -39
  1118. package/concepts/no/Tool-Grep.md +0 -57
  1119. package/concepts/no/Tool-NotebookEdit.md +0 -33
  1120. package/concepts/no/Tool-Read.md +0 -56
  1121. package/concepts/no/Tool-SendMessage.md +0 -41
  1122. package/concepts/no/Tool-Skill.md +0 -56
  1123. package/concepts/no/Tool-Task.md +0 -51
  1124. package/concepts/no/Tool-TaskCreate.md +0 -78
  1125. package/concepts/no/Tool-TaskGet.md +0 -56
  1126. package/concepts/no/Tool-TaskList.md +0 -56
  1127. package/concepts/no/Tool-TaskOutput.md +0 -40
  1128. package/concepts/no/Tool-TaskStop.md +0 -32
  1129. package/concepts/no/Tool-TaskUpdate.md +0 -123
  1130. package/concepts/no/Tool-TeamCreate.md +0 -38
  1131. package/concepts/no/Tool-TeamDelete.md +0 -30
  1132. package/concepts/no/Tool-WebFetch.md +0 -55
  1133. package/concepts/no/Tool-WebSearch.md +0 -58
  1134. package/concepts/no/Tool-Write.md +0 -39
  1135. package/concepts/no/Tool-executeCode.md +0 -41
  1136. package/concepts/no/Tool-getDiagnostics.md +0 -32
  1137. package/concepts/no/Tools.md +0 -67
  1138. package/concepts/pl/CacheRebuild.md +0 -36
  1139. package/concepts/pl/KVCacheContent.md +0 -49
  1140. package/concepts/pl/Tool-Agent.md +0 -125
  1141. package/concepts/pl/Tool-AskUserQuestion.md +0 -75
  1142. package/concepts/pl/Tool-Bash.md +0 -167
  1143. package/concepts/pl/Tool-Edit.md +0 -46
  1144. package/concepts/pl/Tool-EnterPlanMode.md +0 -128
  1145. package/concepts/pl/Tool-EnterWorktree.md +0 -56
  1146. package/concepts/pl/Tool-ExitPlanMode.md +0 -62
  1147. package/concepts/pl/Tool-Glob.md +0 -39
  1148. package/concepts/pl/Tool-Grep.md +0 -57
  1149. package/concepts/pl/Tool-NotebookEdit.md +0 -33
  1150. package/concepts/pl/Tool-Read.md +0 -56
  1151. package/concepts/pl/Tool-SendMessage.md +0 -41
  1152. package/concepts/pl/Tool-Skill.md +0 -56
  1153. package/concepts/pl/Tool-Task.md +0 -51
  1154. package/concepts/pl/Tool-TaskCreate.md +0 -78
  1155. package/concepts/pl/Tool-TaskGet.md +0 -56
  1156. package/concepts/pl/Tool-TaskList.md +0 -56
  1157. package/concepts/pl/Tool-TaskOutput.md +0 -40
  1158. package/concepts/pl/Tool-TaskStop.md +0 -32
  1159. package/concepts/pl/Tool-TaskUpdate.md +0 -123
  1160. package/concepts/pl/Tool-TeamCreate.md +0 -38
  1161. package/concepts/pl/Tool-TeamDelete.md +0 -30
  1162. package/concepts/pl/Tool-WebFetch.md +0 -55
  1163. package/concepts/pl/Tool-WebSearch.md +0 -58
  1164. package/concepts/pl/Tool-Write.md +0 -39
  1165. package/concepts/pl/Tool-executeCode.md +0 -41
  1166. package/concepts/pl/Tool-getDiagnostics.md +0 -32
  1167. package/concepts/pl/Tools.md +0 -67
  1168. package/concepts/pt-BR/CacheRebuild.md +0 -36
  1169. package/concepts/pt-BR/KVCacheContent.md +0 -49
  1170. package/concepts/pt-BR/Tool-Agent.md +0 -125
  1171. package/concepts/pt-BR/Tool-AskUserQuestion.md +0 -75
  1172. package/concepts/pt-BR/Tool-Bash.md +0 -167
  1173. package/concepts/pt-BR/Tool-Edit.md +0 -46
  1174. package/concepts/pt-BR/Tool-EnterPlanMode.md +0 -128
  1175. package/concepts/pt-BR/Tool-EnterWorktree.md +0 -56
  1176. package/concepts/pt-BR/Tool-ExitPlanMode.md +0 -62
  1177. package/concepts/pt-BR/Tool-Glob.md +0 -39
  1178. package/concepts/pt-BR/Tool-Grep.md +0 -57
  1179. package/concepts/pt-BR/Tool-NotebookEdit.md +0 -33
  1180. package/concepts/pt-BR/Tool-Read.md +0 -56
  1181. package/concepts/pt-BR/Tool-SendMessage.md +0 -41
  1182. package/concepts/pt-BR/Tool-Skill.md +0 -56
  1183. package/concepts/pt-BR/Tool-Task.md +0 -51
  1184. package/concepts/pt-BR/Tool-TaskCreate.md +0 -78
  1185. package/concepts/pt-BR/Tool-TaskGet.md +0 -56
  1186. package/concepts/pt-BR/Tool-TaskList.md +0 -56
  1187. package/concepts/pt-BR/Tool-TaskOutput.md +0 -40
  1188. package/concepts/pt-BR/Tool-TaskStop.md +0 -32
  1189. package/concepts/pt-BR/Tool-TaskUpdate.md +0 -123
  1190. package/concepts/pt-BR/Tool-TeamCreate.md +0 -38
  1191. package/concepts/pt-BR/Tool-TeamDelete.md +0 -30
  1192. package/concepts/pt-BR/Tool-WebFetch.md +0 -55
  1193. package/concepts/pt-BR/Tool-WebSearch.md +0 -58
  1194. package/concepts/pt-BR/Tool-Write.md +0 -39
  1195. package/concepts/pt-BR/Tool-executeCode.md +0 -41
  1196. package/concepts/pt-BR/Tool-getDiagnostics.md +0 -32
  1197. package/concepts/pt-BR/Tools.md +0 -67
  1198. package/concepts/ru/CacheRebuild.md +0 -36
  1199. package/concepts/ru/KVCacheContent.md +0 -49
  1200. package/concepts/ru/Tool-Agent.md +0 -125
  1201. package/concepts/ru/Tool-AskUserQuestion.md +0 -75
  1202. package/concepts/ru/Tool-Bash.md +0 -167
  1203. package/concepts/ru/Tool-Edit.md +0 -46
  1204. package/concepts/ru/Tool-EnterPlanMode.md +0 -128
  1205. package/concepts/ru/Tool-EnterWorktree.md +0 -56
  1206. package/concepts/ru/Tool-ExitPlanMode.md +0 -62
  1207. package/concepts/ru/Tool-Glob.md +0 -39
  1208. package/concepts/ru/Tool-Grep.md +0 -57
  1209. package/concepts/ru/Tool-NotebookEdit.md +0 -33
  1210. package/concepts/ru/Tool-Read.md +0 -56
  1211. package/concepts/ru/Tool-SendMessage.md +0 -41
  1212. package/concepts/ru/Tool-Skill.md +0 -56
  1213. package/concepts/ru/Tool-Task.md +0 -51
  1214. package/concepts/ru/Tool-TaskCreate.md +0 -78
  1215. package/concepts/ru/Tool-TaskGet.md +0 -56
  1216. package/concepts/ru/Tool-TaskList.md +0 -56
  1217. package/concepts/ru/Tool-TaskOutput.md +0 -40
  1218. package/concepts/ru/Tool-TaskStop.md +0 -32
  1219. package/concepts/ru/Tool-TaskUpdate.md +0 -123
  1220. package/concepts/ru/Tool-TeamCreate.md +0 -38
  1221. package/concepts/ru/Tool-TeamDelete.md +0 -30
  1222. package/concepts/ru/Tool-WebFetch.md +0 -55
  1223. package/concepts/ru/Tool-WebSearch.md +0 -58
  1224. package/concepts/ru/Tool-Write.md +0 -39
  1225. package/concepts/ru/Tool-executeCode.md +0 -41
  1226. package/concepts/ru/Tool-getDiagnostics.md +0 -32
  1227. package/concepts/ru/Tools.md +0 -67
  1228. package/concepts/th/CacheRebuild.md +0 -36
  1229. package/concepts/th/KVCacheContent.md +0 -49
  1230. package/concepts/th/Tool-Agent.md +0 -125
  1231. package/concepts/th/Tool-AskUserQuestion.md +0 -75
  1232. package/concepts/th/Tool-Bash.md +0 -167
  1233. package/concepts/th/Tool-Edit.md +0 -46
  1234. package/concepts/th/Tool-EnterPlanMode.md +0 -128
  1235. package/concepts/th/Tool-EnterWorktree.md +0 -56
  1236. package/concepts/th/Tool-ExitPlanMode.md +0 -62
  1237. package/concepts/th/Tool-Glob.md +0 -39
  1238. package/concepts/th/Tool-Grep.md +0 -57
  1239. package/concepts/th/Tool-NotebookEdit.md +0 -33
  1240. package/concepts/th/Tool-Read.md +0 -56
  1241. package/concepts/th/Tool-SendMessage.md +0 -41
  1242. package/concepts/th/Tool-Skill.md +0 -56
  1243. package/concepts/th/Tool-Task.md +0 -51
  1244. package/concepts/th/Tool-TaskCreate.md +0 -78
  1245. package/concepts/th/Tool-TaskGet.md +0 -56
  1246. package/concepts/th/Tool-TaskList.md +0 -56
  1247. package/concepts/th/Tool-TaskOutput.md +0 -40
  1248. package/concepts/th/Tool-TaskStop.md +0 -32
  1249. package/concepts/th/Tool-TaskUpdate.md +0 -123
  1250. package/concepts/th/Tool-TeamCreate.md +0 -38
  1251. package/concepts/th/Tool-TeamDelete.md +0 -30
  1252. package/concepts/th/Tool-WebFetch.md +0 -55
  1253. package/concepts/th/Tool-WebSearch.md +0 -58
  1254. package/concepts/th/Tool-Write.md +0 -39
  1255. package/concepts/th/Tool-executeCode.md +0 -41
  1256. package/concepts/th/Tool-getDiagnostics.md +0 -32
  1257. package/concepts/th/Tools.md +0 -67
  1258. package/concepts/tr/CacheRebuild.md +0 -36
  1259. package/concepts/tr/KVCacheContent.md +0 -49
  1260. package/concepts/tr/Tool-Agent.md +0 -125
  1261. package/concepts/tr/Tool-AskUserQuestion.md +0 -75
  1262. package/concepts/tr/Tool-Bash.md +0 -167
  1263. package/concepts/tr/Tool-Edit.md +0 -46
  1264. package/concepts/tr/Tool-EnterPlanMode.md +0 -128
  1265. package/concepts/tr/Tool-EnterWorktree.md +0 -56
  1266. package/concepts/tr/Tool-ExitPlanMode.md +0 -62
  1267. package/concepts/tr/Tool-Glob.md +0 -39
  1268. package/concepts/tr/Tool-Grep.md +0 -57
  1269. package/concepts/tr/Tool-NotebookEdit.md +0 -33
  1270. package/concepts/tr/Tool-Read.md +0 -56
  1271. package/concepts/tr/Tool-SendMessage.md +0 -41
  1272. package/concepts/tr/Tool-Skill.md +0 -56
  1273. package/concepts/tr/Tool-Task.md +0 -51
  1274. package/concepts/tr/Tool-TaskCreate.md +0 -78
  1275. package/concepts/tr/Tool-TaskGet.md +0 -56
  1276. package/concepts/tr/Tool-TaskList.md +0 -56
  1277. package/concepts/tr/Tool-TaskOutput.md +0 -40
  1278. package/concepts/tr/Tool-TaskStop.md +0 -32
  1279. package/concepts/tr/Tool-TaskUpdate.md +0 -123
  1280. package/concepts/tr/Tool-TeamCreate.md +0 -38
  1281. package/concepts/tr/Tool-TeamDelete.md +0 -30
  1282. package/concepts/tr/Tool-WebFetch.md +0 -55
  1283. package/concepts/tr/Tool-WebSearch.md +0 -58
  1284. package/concepts/tr/Tool-Write.md +0 -39
  1285. package/concepts/tr/Tool-executeCode.md +0 -41
  1286. package/concepts/tr/Tool-getDiagnostics.md +0 -32
  1287. package/concepts/tr/Tools.md +0 -67
  1288. package/concepts/uk/CacheRebuild.md +0 -36
  1289. package/concepts/uk/KVCacheContent.md +0 -49
  1290. package/concepts/uk/Tool-Agent.md +0 -125
  1291. package/concepts/uk/Tool-AskUserQuestion.md +0 -75
  1292. package/concepts/uk/Tool-Bash.md +0 -167
  1293. package/concepts/uk/Tool-Edit.md +0 -46
  1294. package/concepts/uk/Tool-EnterPlanMode.md +0 -128
  1295. package/concepts/uk/Tool-EnterWorktree.md +0 -56
  1296. package/concepts/uk/Tool-ExitPlanMode.md +0 -62
  1297. package/concepts/uk/Tool-Glob.md +0 -39
  1298. package/concepts/uk/Tool-Grep.md +0 -57
  1299. package/concepts/uk/Tool-NotebookEdit.md +0 -33
  1300. package/concepts/uk/Tool-Read.md +0 -56
  1301. package/concepts/uk/Tool-SendMessage.md +0 -41
  1302. package/concepts/uk/Tool-Skill.md +0 -56
  1303. package/concepts/uk/Tool-Task.md +0 -51
  1304. package/concepts/uk/Tool-TaskCreate.md +0 -78
  1305. package/concepts/uk/Tool-TaskGet.md +0 -56
  1306. package/concepts/uk/Tool-TaskList.md +0 -56
  1307. package/concepts/uk/Tool-TaskOutput.md +0 -40
  1308. package/concepts/uk/Tool-TaskStop.md +0 -32
  1309. package/concepts/uk/Tool-TaskUpdate.md +0 -123
  1310. package/concepts/uk/Tool-TeamCreate.md +0 -38
  1311. package/concepts/uk/Tool-TeamDelete.md +0 -30
  1312. package/concepts/uk/Tool-WebFetch.md +0 -55
  1313. package/concepts/uk/Tool-WebSearch.md +0 -58
  1314. package/concepts/uk/Tool-Write.md +0 -39
  1315. package/concepts/uk/Tool-executeCode.md +0 -41
  1316. package/concepts/uk/Tool-getDiagnostics.md +0 -32
  1317. package/concepts/uk/Tools.md +0 -67
  1318. package/concepts/zh/CacheRebuild.md +0 -36
  1319. package/concepts/zh/KVCacheContent.md +0 -49
  1320. package/concepts/zh/Tool-Agent.md +0 -125
  1321. package/concepts/zh/Tool-AskUserQuestion.md +0 -75
  1322. package/concepts/zh/Tool-Bash.md +0 -167
  1323. package/concepts/zh/Tool-Edit.md +0 -46
  1324. package/concepts/zh/Tool-EnterPlanMode.md +0 -128
  1325. package/concepts/zh/Tool-EnterWorktree.md +0 -56
  1326. package/concepts/zh/Tool-ExitPlanMode.md +0 -62
  1327. package/concepts/zh/Tool-Glob.md +0 -39
  1328. package/concepts/zh/Tool-Grep.md +0 -57
  1329. package/concepts/zh/Tool-NotebookEdit.md +0 -33
  1330. package/concepts/zh/Tool-Read.md +0 -56
  1331. package/concepts/zh/Tool-SendMessage.md +0 -41
  1332. package/concepts/zh/Tool-Skill.md +0 -56
  1333. package/concepts/zh/Tool-Task.md +0 -51
  1334. package/concepts/zh/Tool-TaskCreate.md +0 -78
  1335. package/concepts/zh/Tool-TaskGet.md +0 -56
  1336. package/concepts/zh/Tool-TaskList.md +0 -56
  1337. package/concepts/zh/Tool-TaskOutput.md +0 -40
  1338. package/concepts/zh/Tool-TaskStop.md +0 -32
  1339. package/concepts/zh/Tool-TaskUpdate.md +0 -123
  1340. package/concepts/zh/Tool-TeamCreate.md +0 -38
  1341. package/concepts/zh/Tool-TeamDelete.md +0 -30
  1342. package/concepts/zh/Tool-WebFetch.md +0 -55
  1343. package/concepts/zh/Tool-WebSearch.md +0 -58
  1344. package/concepts/zh/Tool-Write.md +0 -39
  1345. package/concepts/zh/Tool-executeCode.md +0 -41
  1346. package/concepts/zh/Tool-getDiagnostics.md +0 -32
  1347. package/concepts/zh-TW/CacheRebuild.md +0 -36
  1348. package/concepts/zh-TW/KVCacheContent.md +0 -49
  1349. package/concepts/zh-TW/Tool-Agent.md +0 -125
  1350. package/concepts/zh-TW/Tool-AskUserQuestion.md +0 -75
  1351. package/concepts/zh-TW/Tool-Bash.md +0 -167
  1352. package/concepts/zh-TW/Tool-Edit.md +0 -46
  1353. package/concepts/zh-TW/Tool-EnterPlanMode.md +0 -128
  1354. package/concepts/zh-TW/Tool-EnterWorktree.md +0 -56
  1355. package/concepts/zh-TW/Tool-ExitPlanMode.md +0 -62
  1356. package/concepts/zh-TW/Tool-Glob.md +0 -39
  1357. package/concepts/zh-TW/Tool-Grep.md +0 -57
  1358. package/concepts/zh-TW/Tool-NotebookEdit.md +0 -33
  1359. package/concepts/zh-TW/Tool-Read.md +0 -56
  1360. package/concepts/zh-TW/Tool-SendMessage.md +0 -41
  1361. package/concepts/zh-TW/Tool-Skill.md +0 -56
  1362. package/concepts/zh-TW/Tool-Task.md +0 -51
  1363. package/concepts/zh-TW/Tool-TaskCreate.md +0 -78
  1364. package/concepts/zh-TW/Tool-TaskGet.md +0 -56
  1365. package/concepts/zh-TW/Tool-TaskList.md +0 -56
  1366. package/concepts/zh-TW/Tool-TaskOutput.md +0 -40
  1367. package/concepts/zh-TW/Tool-TaskStop.md +0 -32
  1368. package/concepts/zh-TW/Tool-TaskUpdate.md +0 -123
  1369. package/concepts/zh-TW/Tool-TeamCreate.md +0 -38
  1370. package/concepts/zh-TW/Tool-TeamDelete.md +0 -30
  1371. package/concepts/zh-TW/Tool-WebFetch.md +0 -55
  1372. package/concepts/zh-TW/Tool-WebSearch.md +0 -58
  1373. package/concepts/zh-TW/Tool-Write.md +0 -39
  1374. package/concepts/zh-TW/Tool-executeCode.md +0 -41
  1375. package/concepts/zh-TW/Tool-getDiagnostics.md +0 -32
  1376. package/concepts/zh-TW/Tools.md +0 -67
  1377. package/dist/assets/App-BN2YmKSu.js +0 -41
  1378. package/dist/assets/App-fG2r3jFq.css +0 -1
  1379. package/dist/assets/AppHeader-BqUGBbBx.css +0 -41
  1380. package/dist/assets/AppHeader.module-CvH9GQQ2.js +0 -1250
  1381. package/dist/assets/Mobile-BnDkLcBv.css +0 -1
  1382. package/dist/assets/Mobile-CbC8YD3O.js +0 -10
  1383. package/dist/assets/_baseUniq-B2ddYY2A.js +0 -1
  1384. package/dist/assets/arc-DFPOHgcd.js +0 -1
  1385. package/dist/assets/architectureDiagram-Q4EWVU46-1tuXixQv.js +0 -36
  1386. package/dist/assets/blockDiagram-DXYQGD6D-BfVKQPAV.js +0 -132
  1387. package/dist/assets/c4Diagram-AHTNJAMY-Bua8O4-1.js +0 -10
  1388. package/dist/assets/channel-Cf9uPxYW.js +0 -1
  1389. package/dist/assets/chunk-4BX2VUAB-YOIkSNn_.js +0 -1
  1390. package/dist/assets/chunk-4TB4RGXK-CjZt-To5.js +0 -206
  1391. package/dist/assets/chunk-55IACEB6-BAEfMF5S.js +0 -1
  1392. package/dist/assets/chunk-EDXVE4YY-BUYDmLXU.js +0 -1
  1393. package/dist/assets/chunk-FMBD7UC4-Cw_LDap-.js +0 -15
  1394. package/dist/assets/chunk-OYMX7WX6-PlfZFFxd.js +0 -231
  1395. package/dist/assets/chunk-QZHKN3VN-C2ReFZl_.js +0 -1
  1396. package/dist/assets/chunk-YZCP3GAM-B7IVGkPB.js +0 -1
  1397. package/dist/assets/classDiagram-6PBFFD2Q-DdwVeNLZ.js +0 -1
  1398. package/dist/assets/classDiagram-v2-HSJHXN6E-DdwVeNLZ.js +0 -1
  1399. package/dist/assets/clone-C8Lz0121.js +0 -1
  1400. package/dist/assets/cose-bilkent-S5V4N54A-M6rBKf0y.js +0 -1
  1401. package/dist/assets/cytoscape.esm-DxGcaOPV.js +0 -331
  1402. package/dist/assets/dagre-KV5264BT-UPacTWnL.js +0 -4
  1403. package/dist/assets/defaultLocale-DX6XiGOO.js +0 -1
  1404. package/dist/assets/diagram-5BDNPKRD-Cjjtnh0e.js +0 -10
  1405. package/dist/assets/diagram-G4DWMVQ6-CjXILMP0.js +0 -24
  1406. package/dist/assets/diagram-MMDJMWI5-C_-XZ9gc.js +0 -43
  1407. package/dist/assets/diagram-TYMM5635-Dxe2GxUR.js +0 -24
  1408. package/dist/assets/erDiagram-SMLLAGMA-1w-wtgMd.js +0 -85
  1409. package/dist/assets/flowDiagram-DWJPFMVM-B9naMGCj.js +0 -162
  1410. package/dist/assets/ganttDiagram-T4ZO3ILL-BPZBdhPv.js +0 -292
  1411. package/dist/assets/gitGraphDiagram-UUTBAWPF-_P9PdiGG.js +0 -106
  1412. package/dist/assets/graph-CjOY8lRz.js +0 -1
  1413. package/dist/assets/html2canvas.esm-QH1iLAAe.js +0 -22
  1414. package/dist/assets/index-BcCW9op4.js +0 -41
  1415. package/dist/assets/index-DCtZ2KSX.css +0 -1
  1416. package/dist/assets/infoDiagram-42DDH7IO-Ch8SOTtq.js +0 -2
  1417. package/dist/assets/init-Gi6I4Gst.js +0 -1
  1418. package/dist/assets/ishikawaDiagram-UXIWVN3A-XLscQrJT.js +0 -70
  1419. package/dist/assets/journeyDiagram-VCZTEJTY-C3FQ_QPk.js +0 -139
  1420. package/dist/assets/kanban-definition-6JOO6SKY-DIQDTOi3.js +0 -89
  1421. package/dist/assets/katex-DkKDou_j.js +0 -257
  1422. package/dist/assets/layout-DO9W0X_b.js +0 -1
  1423. package/dist/assets/linear-ClCJqwn1.js +0 -1
  1424. package/dist/assets/mermaid.core-BW02B1TS.js +0 -308
  1425. package/dist/assets/min-BuzClhio.js +0 -1
  1426. package/dist/assets/mindmap-definition-QFDTVHPH-DuCaTeZu.js +0 -96
  1427. package/dist/assets/ordinal-Cboi1Yqb.js +0 -1
  1428. package/dist/assets/pieDiagram-DEJITSTG-BZoZ6CI1.js +0 -30
  1429. package/dist/assets/quadrantDiagram-34T5L4WZ-DFNwvtmc.js +0 -7
  1430. package/dist/assets/requirementDiagram-MS252O5E-DPG-7raV.js +0 -84
  1431. package/dist/assets/sankeyDiagram-XADWPNL6-Bp92e1ie.js +0 -10
  1432. package/dist/assets/sequenceDiagram-FGHM5R23-C6ADwqJY.js +0 -157
  1433. package/dist/assets/stateDiagram-FHFEXIEX-BfrwZGmF.js +0 -1
  1434. package/dist/assets/stateDiagram-v2-QKLJ7IA2-4gBW7EPI.js +0 -1
  1435. package/dist/assets/timeline-definition-GMOUNBTQ-Bb-TxYx2.js +0 -120
  1436. package/dist/assets/vennDiagram-DHZGUBPP-DTRiNXJu.js +0 -34
  1437. package/dist/assets/wardley-RL74JXVD-C8j_kjXS.js +0 -162
  1438. package/dist/assets/wardleyDiagram-NUSXRM2D-CvICMc3N.js +0 -20
  1439. package/dist/assets/xychartDiagram-5P7HB3ND-DI0bBGwq.js +0 -7
  1440. package/lib/kv-cache-analyzer.js +0 -164
@@ -0,0 +1 @@
1
+ var _a;import{g as getDiagramElement}from"./chunk-XXDRQBXY-BPj05P7g.js";import{s as setupViewPortForSVG}from"./chunk-VR4S4FIN-Bomuor1h.js";import{_ as __name,l as log,c as getConfig2,x as render,y as utils_default,a as getAccTitle,b as setAccTitle,g as getAccDescription,s as setAccDescription,o as setDiagramTitle,p as getDiagramTitle,a8 as generateId,k as common_default,q as clear,d as select}from"./mermaid.core-Cy9iVxov.js";import{f as createTooltip}from"./chunk-32BRIVSS-VNg3Ylzs.js";import{p as purify}from"./vendor-markdown-BN3QLsBu.js";var parser=function(){var o=__name(function(k,v,o2,l){for(o2=o2||{},l=k.length;l--;o2[k[l]]=v);return o2},"o"),$V0=[1,2],$V1=[1,3],$V2=[1,4],$V3=[2,4],$V4=[1,9],$V5=[1,11],$V6=[1,16],$V7=[1,17],$V8=[1,18],$V9=[1,19],$Va=[1,33],$Vb=[1,20],$Vc=[1,21],$Vd=[1,22],$Ve=[1,23],$Vf=[1,24],$Vg=[1,26],$Vh=[1,27],$Vi=[1,28],$Vj=[1,29],$Vk=[1,30],$Vl=[1,31],$Vm=[1,32],$Vn=[1,35],$Vo=[1,36],$Vp=[1,37],$Vq=[1,38],$Vr=[1,34],$Vs=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],$Vt=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,39,40,41,45,48,51,52,53,54,57],$Vu=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],parser2={trace:__name(function(){},"trace"),yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,SD:6,document:7,line:8,statement:9,classDefStatement:10,styleStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"--\x3e":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,CLICK:38,STRING:39,HREF:40,classDef:41,CLASSDEF_ID:42,CLASSDEF_STYLEOPTS:43,DEFAULT:44,style:45,STYLE_IDS:46,STYLEDEF_STYLEOPTS:47,class:48,CLASSENTITY_IDS:49,STYLECLASS:50,direction_tb:51,direction_bt:52,direction_rl:53,direction_lr:54,eol:55,";":56,EDGE_STATE:57,STYLE_SEPARATOR:58,left_of:59,right_of:60,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",6:"SD",14:"DESCR",15:"--\x3e",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"CLICK",39:"STRING",40:"HREF",41:"classDef",42:"CLASSDEF_ID",43:"CLASSDEF_STYLEOPTS",44:"DEFAULT",45:"style",46:"STYLE_IDS",47:"STYLEDEF_STYLEOPTS",48:"class",49:"CLASSENTITY_IDS",50:"STYLECLASS",51:"direction_tb",52:"direction_bt",53:"direction_rl",54:"direction_lr",56:";",57:"EDGE_STATE",58:"STYLE_SEPARATOR",59:"left_of",60:"right_of"},productions_:[0,[3,2],[3,2],[3,2],[7,0],[7,2],[8,2],[8,1],[8,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,3],[9,4],[9,1],[9,2],[9,1],[9,4],[9,3],[9,6],[9,1],[9,1],[9,1],[9,1],[9,4],[9,4],[9,1],[9,2],[9,2],[9,1],[9,5],[9,5],[10,3],[10,3],[11,3],[12,3],[32,1],[32,1],[32,1],[32,1],[55,1],[55,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1]],performAction:__name(function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 3:return yy.setRootDoc($$[$0]),$$[$0];case 4:this.$=[];break;case 5:"nl"!=$$[$0]&&($$[$0-1].push($$[$0]),this.$=$$[$0-1]);break;case 6:case 7:case 12:this.$=$$[$0];break;case 8:this.$="nl";break;case 13:const stateStmt=$$[$0-1];stateStmt.description=yy.trimColon($$[$0]),this.$=stateStmt;break;case 14:this.$={stmt:"relation",state1:$$[$0-2],state2:$$[$0]};break;case 15:const relDescription=yy.trimColon($$[$0]);this.$={stmt:"relation",state1:$$[$0-3],state2:$$[$0-1],description:relDescription};break;case 19:this.$={stmt:"state",id:$$[$0-3],type:"default",description:"",doc:$$[$0-1]};break;case 20:var id=$$[$0],description=$$[$0-2].trim();if($$[$0].match(":")){var parts=$$[$0].split(":");id=parts[0],description=[description,parts[1]]}this.$={stmt:"state",id:id,type:"default",description:description};break;case 21:this.$={stmt:"state",id:$$[$0-3],type:"default",description:$$[$0-5],doc:$$[$0-1]};break;case 22:this.$={stmt:"state",id:$$[$0],type:"fork"};break;case 23:this.$={stmt:"state",id:$$[$0],type:"join"};break;case 24:this.$={stmt:"state",id:$$[$0],type:"choice"};break;case 25:this.$={stmt:"state",id:yy.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:$$[$0-1].trim(),note:{position:$$[$0-2].trim(),text:$$[$0].trim()}};break;case 29:this.$=$$[$0].trim(),yy.setAccTitle(this.$);break;case 30:case 31:this.$=$$[$0].trim(),yy.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:$$[$0-3],url:$$[$0-2],tooltip:$$[$0-1]};break;case 33:this.$={stmt:"click",id:$$[$0-3],url:$$[$0-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:$$[$0-1].trim(),classes:$$[$0].trim()};break;case 36:this.$={stmt:"style",id:$$[$0-1].trim(),styleClass:$$[$0].trim()};break;case 37:this.$={stmt:"applyClass",id:$$[$0-1].trim(),styleClass:$$[$0].trim()};break;case 38:yy.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:yy.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:yy.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:yy.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:$$[$0].trim(),type:"default",description:""};break;case 46:case 47:this.$={stmt:"state",id:$$[$0-2].trim(),classes:[$$[$0].trim()],type:"default",description:""}}},"anonymous"),table:[{3:1,4:$V0,5:$V1,6:$V2},{1:[3]},{3:5,4:$V0,5:$V1,6:$V2},{3:6,4:$V0,5:$V1,6:$V2},o([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,41,45,48,51,52,53,54,57],$V3,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:$V4,5:$V5,8:8,9:10,10:12,11:13,12:14,13:15,16:$V6,17:$V7,19:$V8,22:$V9,24:$Va,25:$Vb,26:$Vc,27:$Vd,28:$Ve,29:$Vf,32:25,33:$Vg,35:$Vh,37:$Vi,38:$Vj,41:$Vk,45:$Vl,48:$Vm,51:$Vn,52:$Vo,53:$Vp,54:$Vq,57:$Vr},o($Vs,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:$V6,17:$V7,19:$V8,22:$V9,24:$Va,25:$Vb,26:$Vc,27:$Vd,28:$Ve,29:$Vf,32:25,33:$Vg,35:$Vh,37:$Vi,38:$Vj,41:$Vk,45:$Vl,48:$Vm,51:$Vn,52:$Vo,53:$Vp,54:$Vq,57:$Vr},o($Vs,[2,7]),o($Vs,[2,8]),o($Vs,[2,9]),o($Vs,[2,10]),o($Vs,[2,11]),o($Vs,[2,12],{14:[1,40],15:[1,41]}),o($Vs,[2,16]),{18:[1,42]},o($Vs,[2,18],{20:[1,43]}),{23:[1,44]},o($Vs,[2,22]),o($Vs,[2,23]),o($Vs,[2,24]),o($Vs,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},o($Vs,[2,28]),{34:[1,49]},{36:[1,50]},o($Vs,[2,31]),{13:51,24:$Va,57:$Vr},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},o($Vt,[2,44],{58:[1,56]}),o($Vt,[2,45],{58:[1,57]}),o($Vs,[2,38]),o($Vs,[2,39]),o($Vs,[2,40]),o($Vs,[2,41]),o($Vs,[2,6]),o($Vs,[2,13]),{13:58,24:$Va,57:$Vr},o($Vs,[2,17]),o($Vu,$V3,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},o($Vs,[2,29]),o($Vs,[2,30]),{39:[1,63],40:[1,64]},{43:[1,65]},{43:[1,66]},{47:[1,67]},{50:[1,68]},{24:[1,69]},{24:[1,70]},o($Vs,[2,14],{14:[1,71]}),{4:$V4,5:$V5,8:8,9:10,10:12,11:13,12:14,13:15,16:$V6,17:$V7,19:$V8,21:[1,72],22:$V9,24:$Va,25:$Vb,26:$Vc,27:$Vd,28:$Ve,29:$Vf,32:25,33:$Vg,35:$Vh,37:$Vi,38:$Vj,41:$Vk,45:$Vl,48:$Vm,51:$Vn,52:$Vo,53:$Vp,54:$Vq,57:$Vr},o($Vs,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},o($Vs,[2,34]),o($Vs,[2,35]),o($Vs,[2,36]),o($Vs,[2,37]),o($Vt,[2,46]),o($Vt,[2,47]),o($Vs,[2,15]),o($Vs,[2,19]),o($Vu,$V3,{7:78}),o($Vs,[2,26]),o($Vs,[2,27]),{5:[1,79]},{5:[1,80]},{4:$V4,5:$V5,8:8,9:10,10:12,11:13,12:14,13:15,16:$V6,17:$V7,19:$V8,21:[1,81],22:$V9,24:$Va,25:$Vb,26:$Vc,27:$Vd,28:$Ve,29:$Vf,32:25,33:$Vg,35:$Vh,37:$Vi,38:$Vj,41:$Vk,45:$Vl,48:$Vm,51:$Vn,52:$Vo,53:$Vp,54:$Vq,57:$Vr},o($Vs,[2,32]),o($Vs,[2,33]),o($Vs,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:__name(function(str,hash){if(!hash.recoverable){var error=new Error(str);throw error.hash=hash,error}this.trace(str)},"parseError"),parse:__name(function(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,args=lstack.slice.call(arguments,1),lexer2=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer2.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer2,sharedState.yy.parser=this,void 0===lexer2.yylloc&&(lexer2.yylloc={});var yyloc=lexer2.yylloc;lstack.push(yyloc);var ranges=lexer2.options&&lexer2.options.ranges;function lex(){var token;return"number"!=typeof(token=tstack.pop()||lexer2.lex()||1)&&(token instanceof Array&&(token=(tstack=token).pop()),token=self.symbols_[token]||token),token}"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,__name(function(n){stack.length=stack.length-2*n,vstack.length=vstack.length-n,lstack.length=lstack.length-n},"popStack"),__name(lex,"lex");for(var symbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null==symbol&&(symbol=lex()),action=table[state]&&table[state][symbol]),void 0===action||!action.length||!action[0]){var errStr="";for(p in expected=[],table[state])this.terminals_[p]&&p>2&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer2.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer2.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(1==symbol?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer2.match,token:this.terminals_[symbol]||symbol,line:lexer2.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer2.yytext),lstack.push(lexer2.yylloc),stack.push(action[1]),symbol=null,yyleng=lexer2.yyleng,yytext=lexer2.yytext,yylineno=lexer2.yylineno,yyloc=lexer2.yylloc;break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),void 0!==(r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args))))return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0},"parse")},lexer=function(){return{EOF:1,parseError:__name(function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},"parseError"),setInput:__name(function(input,yy){return this.yy=yy||this.yy||{},this._input=input,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:__name(function(){var ch=this._input[0];return this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch,ch.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ch},"input"),unput:__name(function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),lines.length-1&&(this.yylineno-=lines.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},"unput"),more:__name(function(){return this._more=!0,this},"more"),reject:__name(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:__name(function(n){this.unput(this.match.slice(n))},"less"),pastInput:__name(function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:__name(function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:__name(function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},"showPosition"),test_match:__name(function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(backup.yylloc.range=this.yylloc.range.slice(0))),(lines=match[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},"test_match"),next:__name(function(){if(this.done)return this.EOF;var token,match,tempMatch,index;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;i<rules.length;i++)if((tempMatch=this._input.match(this.rules[rules[i]]))&&(!match||tempMatch[0].length>match[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(!1!==(token=this.test_match(tempMatch,rules[i])))return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?!1!==(token=this.test_match(match,rules[index]))&&token:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:__name(function(){var r=this.next();return r||this.lex()},"lex"),begin:__name(function(condition){this.conditionStack.push(condition)},"begin"),popState:__name(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:__name(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:__name(function(n){return(n=this.conditionStack.length-1-Math.abs(n||0))>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:__name(function(condition){this.begin(condition)},"pushState"),stateStackSize:__name(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:__name(function(yy,yy_,$avoiding_name_collisions,YY_START){function processId(){const idx=yy_.yytext.indexOf("%%");if(0===idx)return!1;if(idx>0){const before=yy_.yytext.slice(0,idx),after=yy_.yytext.slice(idx);after&&yy.lexer.unput(after),yy_.yytext=before}return!0}switch(__name(processId,"processId"),$avoiding_name_collisions){case 0:return 38;case 1:return 40;case 2:return 39;case 3:return 44;case 4:case 43:return 51;case 5:case 44:return 52;case 6:case 45:return 53;case 7:case 46:return 54;case 8:case 78:return 5;case 9:case 10:case 11:case 12:case 57:case 63:break;case 13:case 33:return this.pushState("SCALE"),17;case 14:case 34:return 18;case 15:case 21:case 35:case 50:case 54:this.popState();break;case 16:return this.begin("acc_title"),33;case 17:return this.popState(),"acc_title_value";case 18:return this.begin("acc_descr"),35;case 19:return this.popState(),"acc_descr_value";case 20:this.begin("acc_descr_multiline");break;case 22:return"acc_descr_multiline_value";case 23:return this.pushState("CLASSDEF"),41;case 24:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 25:return this.popState(),this.pushState("CLASSDEFID"),42;case 26:return this.popState(),43;case 27:return this.pushState("CLASS"),48;case 28:return this.popState(),this.pushState("CLASS_STYLE"),49;case 29:return this.popState(),50;case 30:return this.pushState("STYLE"),45;case 31:return this.popState(),this.pushState("STYLEDEF_STYLES"),46;case 32:return this.popState(),47;case 36:this.pushState("STATE");break;case 37:case 40:return this.popState(),yy_.yytext=yy_.yytext.slice(0,-8).trim(),25;case 38:case 41:return this.popState(),yy_.yytext=yy_.yytext.slice(0,-8).trim(),26;case 39:case 42:return this.popState(),yy_.yytext=yy_.yytext.slice(0,-10).trim(),27;case 47:this.pushState("STATE_STRING");break;case 48:return this.pushState("STATE_ID"),"AS";case 49:case 65:if(!processId())return;return this.popState(),"ID";case 51:return"STATE_DESCR";case 52:throw new Error('Error: State name must be a single word. Found: "'+yy_.yytext.trim()+'"');case 53:return 19;case 55:return this.popState(),this.pushState("struct"),20;case 56:return this.popState(),21;case 58:return this.begin("NOTE"),29;case 59:return this.popState(),this.pushState("NOTE_ID"),59;case 60:return this.popState(),this.pushState("NOTE_ID"),60;case 61:this.popState(),this.pushState("FLOATING_NOTE");break;case 62:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:return"NOTE_TEXT";case 66:if(!processId())return;return this.popState(),this.pushState("NOTE_TEXT"),24;case 67:return this.popState(),yy_.yytext=yy_.yytext.substr(2).trim(),31;case 68:return this.popState(),yy_.yytext=yy_.yytext.slice(0,-8).trim(),31;case 69:case 70:return 6;case 71:return 16;case 72:return 57;case 73:if(!processId())return;return 24;case 74:return yy_.yytext=yy_.yytext.trim(),14;case 75:return 15;case 76:return 28;case 77:return 58;case 79:return"INVALID"}},"anonymous"),rules:[/^(?:click\b)/i,/^(?:href\b)/i,/^(?:"[^"]*")/i,/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:style\s+)/i,/^(?:[\w,]+\s+)/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<<fork>>)/i,/^(?:.*<<join>>)/i,/^(?:.*<<choice>>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:\w+\s+\w+.*?\{)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?\n\s*end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:(?:[^:\n;]|:[^:\n;])+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[10,11,12],inclusive:!1},struct:{rules:[10,11,12,23,27,30,36,43,44,45,46,56,57,58,72,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[65],inclusive:!1},FLOATING_NOTE:{rules:[62,63,64],inclusive:!1},NOTE_TEXT:{rules:[67,68],inclusive:!1},NOTE_ID:{rules:[66],inclusive:!1},NOTE:{rules:[59,60,61],inclusive:!1},STYLEDEF_STYLEOPTS:{rules:[],inclusive:!1},STYLEDEF_STYLES:{rules:[32],inclusive:!1},STYLE_IDS:{rules:[],inclusive:!1},STYLE:{rules:[31],inclusive:!1},CLASS_STYLE:{rules:[29],inclusive:!1},CLASS:{rules:[28],inclusive:!1},CLASSDEFID:{rules:[26],inclusive:!1},CLASSDEF:{rules:[24,25],inclusive:!1},acc_descr_multiline:{rules:[21,22],inclusive:!1},acc_descr:{rules:[19],inclusive:!1},acc_title:{rules:[17],inclusive:!1},SCALE:{rules:[14,15,34,35],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[49],inclusive:!1},STATE_STRING:{rules:[50,51],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[10,11,12,37,38,39,40,41,42,47,48,52,53,54,55],inclusive:!1},ID:{rules:[10,11,12],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,7,8,9,11,12,13,16,18,20,23,27,30,33,36,55,58,69,70,71,72,73,74,75,77,78,79],inclusive:!0}}}}();function Parser(){this.yy={}}return parser2.lexer=lexer,__name(Parser,"Parser"),Parser.prototype=parser2,parser2.Parser=Parser,new Parser}();parser.parser=parser;var stateDiagram_default=parser,getDir=__name((parsedItem,defaultDir="TB")=>{if(!parsedItem.doc)return defaultDir;let dir=defaultDir;for(const parsedItemDoc of parsedItem.doc)"dir"===parsedItemDoc.stmt&&(dir=parsedItemDoc.value);return dir},"getDir"),stateRenderer_v3_unified_default={getClasses:__name(function(text,diagramObj){return diagramObj.db.getClasses()},"getClasses"),draw:__name(async function(text,id,_version,diag){log.info("REF0:"),log.info("Drawing state diagram (v2)",id);const{securityLevel:securityLevel,state:conf,layout:layout}=getConfig2();diag.db.extract(diag.db.getRootDocV2());const data4Layout=diag.db.getData(),svg=getDiagramElement(id,securityLevel);data4Layout.type=diag.type,data4Layout.layoutAlgorithm=layout,data4Layout.nodeSpacing=(null==conf?void 0:conf.nodeSpacing)||50,data4Layout.rankSpacing=(null==conf?void 0:conf.rankSpacing)||50;"neo"===getConfig2().look?data4Layout.markers=["barbNeo"]:data4Layout.markers=["barb"],data4Layout.diagramId=id,await render(data4Layout,svg);try{("function"==typeof diag.db.getLinks?diag.db.getLinks():new Map).forEach((linkInfo,key)=>{var _a2;const stateId="string"==typeof key?key:"string"==typeof(null==key?void 0:key.id)?key.id:"",stateNode=data4Layout.nodes.find(node=>node.id===stateId);if(!stateId)return void log.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(key));const allNodes=null==(_a2=svg.node())?void 0:_a2.querySelectorAll("g.node, g.rough-node");let matchedElem;if(null==allNodes||allNodes.forEach(g=>{var _a3;const text2=null==(_a3=g.textContent)?void 0:_a3.trim();g.id!==(null==stateNode?void 0:stateNode.domId)&&text2!==stateId||(matchedElem=g)}),!matchedElem)return void log.warn("⚠️ Could not find node matching text:",stateId);const parent=matchedElem.parentNode;if(!parent)return void log.warn("⚠️ Node has no parent, cannot wrap:",stateId);const a=document.createElementNS("http://www.w3.org/2000/svg","a"),cleanedUrl=linkInfo.url.replace(/^"+|"+$/g,"");if(a.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",cleanedUrl),a.setAttribute("target","_blank"),linkInfo.tooltip){const tooltip=linkInfo.tooltip.replace(/^"+|"+$/g,"");a.setAttribute("title",tooltip),matchedElem.setAttribute("title",tooltip)}parent.replaceChild(a,matchedElem),a.appendChild(matchedElem),log.info("🔗 Wrapped node in <a> tag for:",stateId,linkInfo.url)})}catch(err){log.error("❌ Error injecting clickable links:",err)}utils_default.insertTitle(svg,"statediagramTitleText",(null==conf?void 0:conf.titleTopMargin)??25,diag.db.getDiagramTitle()),setupViewPortForSVG(svg,8,"statediagram",(null==conf?void 0:conf.useMaxWidth)??!0)},"draw"),getDir:getDir},nodeDb=new Map,graphItemCount=0;function stateDomId(itemId="",counter=0,type="",typeSpacer="----"){return`state-${itemId}${null!==type&&type.length>0?`${typeSpacer}${type}`:""}-${counter}`}__name(stateDomId,"stateDomId");var setupDoc=__name((parentParsedItem,doc,diagramStates,nodes,edges,altFlag,look,classes)=>{log.trace("items",doc),doc.forEach(item=>{switch(item.stmt){case"state":case"default":dataFetcher(parentParsedItem,item,diagramStates,nodes,edges,altFlag,look,classes);break;case"relation":{dataFetcher(parentParsedItem,item.state1,diagramStates,nodes,edges,altFlag,look,classes),dataFetcher(parentParsedItem,item.state2,diagramStates,nodes,edges,altFlag,look,classes);const isNeo="neo"===look,edgeData={id:"edge"+graphItemCount,start:item.state1.id,end:item.state2.id,arrowhead:"normal",arrowTypeEnd:isNeo?"arrow_barb_neo":"arrow_barb",style:"fill:none",labelStyle:"",label:common_default.sanitizeText(item.description??"",getConfig2()),arrowheadStyle:"fill: #333",labelpos:"c",labelType:"markdown",thickness:"normal",classes:"transition",look:look};edges.push(edgeData),graphItemCount++}}})},"setupDoc"),getDir2=__name((parsedItem,defaultDir="TB")=>{let dir=defaultDir;if(parsedItem.doc)for(const parsedItemDoc of parsedItem.doc)"dir"===parsedItemDoc.stmt&&(dir=parsedItemDoc.value);return dir},"getDir");function insertOrUpdateNode(nodes,nodeData,classes){if(!nodeData.id||"</join></fork>"===nodeData.id||"</choice>"===nodeData.id)return;nodeData.cssClasses&&(Array.isArray(nodeData.cssCompiledStyles)||(nodeData.cssCompiledStyles=[]),nodeData.cssClasses.split(" ").forEach(cssClass=>{const classDef=classes.get(cssClass);classDef&&(nodeData.cssCompiledStyles=[...nodeData.cssCompiledStyles??[],...classDef.styles])}));const existingNodeData=nodes.find(node=>node.id===nodeData.id);existingNodeData?Object.assign(existingNodeData,nodeData):nodes.push(nodeData)}function getClassesFromDbInfo(dbInfoItem){var _a2;return(null==(_a2=null==dbInfoItem?void 0:dbInfoItem.classes)?void 0:_a2.join(" "))??""}function getStylesFromDbInfo(dbInfoItem){return(null==dbInfoItem?void 0:dbInfoItem.styles)??[]}__name(insertOrUpdateNode,"insertOrUpdateNode"),__name(getClassesFromDbInfo,"getClassesFromDbInfo"),__name(getStylesFromDbInfo,"getStylesFromDbInfo");var dataFetcher=__name((parent,parsedItem,diagramStates,nodes,edges,altFlag,look,classes)=>{var _a2,_b,_c;const itemId=parsedItem.id,dbState=diagramStates.get(itemId),classStr=getClassesFromDbInfo(dbState),style=getStylesFromDbInfo(dbState),config=getConfig2();if(log.info("dataFetcher parsedItem",parsedItem,dbState,style),"root"!==itemId){let shape="rect";!0===parsedItem.start?shape="stateStart":!1===parsedItem.start&&(shape="stateEnd"),"default"!==parsedItem.type&&(shape=parsedItem.type),nodeDb.get(itemId)||nodeDb.set(itemId,{id:itemId,shape:shape,description:common_default.sanitizeText(itemId,config),cssClasses:`${classStr} statediagram-state`,cssStyles:style});const newNode=nodeDb.get(itemId);parsedItem.description&&(Array.isArray(newNode.description)?(newNode.shape="rectWithTitle",newNode.description.push(parsedItem.description)):(null==(_a2=newNode.description)?void 0:_a2.length)&&newNode.description.length>0?(newNode.shape="rectWithTitle",newNode.description===itemId?newNode.description=[parsedItem.description]:newNode.description=[newNode.description,parsedItem.description]):(newNode.shape="rect",newNode.description=parsedItem.description),newNode.description=common_default.sanitizeTextOrArray(newNode.description,config)),1===(null==(_b=newNode.description)?void 0:_b.length)&&"rectWithTitle"===newNode.shape&&("group"===newNode.type?newNode.shape="roundedWithTitle":newNode.shape="rect"),!newNode.type&&parsedItem.doc&&(log.info("Setting cluster for XCX",itemId,getDir2(parsedItem)),newNode.type="group",newNode.isGroup=!0,newNode.dir=getDir2(parsedItem),newNode.explicitDir=parsedItem.doc.some(s=>"dir"===s.stmt),newNode.shape="divider"===parsedItem.type?"divider":"roundedWithTitle",newNode.cssClasses=`${newNode.cssClasses} statediagram-cluster ${altFlag?"statediagram-cluster-alt":""}`);const nodeData={labelStyle:"",shape:newNode.shape,label:newNode.description,cssClasses:newNode.cssClasses,cssCompiledStyles:[],cssStyles:newNode.cssStyles,id:itemId,dir:newNode.dir,domId:stateDomId(itemId,graphItemCount),type:newNode.type,isGroup:"group"===newNode.type,padding:8,rx:10,ry:10,look:look,labelType:"markdown"};if("divider"===nodeData.shape&&(nodeData.label=""),parent&&"root"!==parent.id&&(log.trace("Setting node ",itemId," to be child of its parent ",parent.id),nodeData.parentId=parent.id),nodeData.centerLabel=!0,parsedItem.note){const noteData={labelStyle:"",shape:"note",label:parsedItem.note.text,labelType:"markdown",cssClasses:"statediagram-note",cssStyles:[],cssCompiledStyles:[],id:itemId+"----note-"+graphItemCount,domId:stateDomId(itemId,graphItemCount,"note"),type:newNode.type,isGroup:"group"===newNode.type,padding:null==(_c=config.flowchart)?void 0:_c.padding,look:look,position:parsedItem.note.position},parentNodeId=itemId+"----parent",groupData={labelStyle:"",shape:"noteGroup",label:parsedItem.note.text,cssClasses:newNode.cssClasses,cssStyles:[],id:itemId+"----parent",domId:stateDomId(itemId,graphItemCount,"parent"),type:"group",isGroup:!0,padding:16,look:look,position:parsedItem.note.position};graphItemCount++,groupData.id=parentNodeId,noteData.parentId=parentNodeId,insertOrUpdateNode(nodes,groupData,classes),insertOrUpdateNode(nodes,noteData,classes),insertOrUpdateNode(nodes,nodeData,classes);let from=itemId,to=noteData.id;"left of"===parsedItem.note.position&&(from=noteData.id,to=itemId),edges.push({id:from+"-"+to,start:from,end:to,arrowhead:"none",arrowTypeEnd:"",style:"fill:none",labelStyle:"",classes:"transition note-edge",arrowheadStyle:"fill: #333",labelpos:"c",labelType:"markdown",thickness:"normal",look:look})}else insertOrUpdateNode(nodes,nodeData,classes)}parsedItem.doc&&(log.trace("Adding nodes children "),setupDoc(parsedItem,parsedItem.doc,diagramStates,nodes,edges,!altFlag,look,classes))},"dataFetcher"),reset=__name(()=>{nodeDb.clear(),graphItemCount=0},"reset"),CONSTANTS_START_NODE="[*]",CONSTANTS_START_TYPE="start",CONSTANTS_END_NODE="[*]",CONSTANTS_END_TYPE="end",CONSTANTS_COLOR_KEYWORD="color",CONSTANTS_FILL_KEYWORD="fill",CONSTANTS_BG_FILL="bgFill",CONSTANTS_STYLECLASS_SEP=",",newClassesList=__name(()=>new Map,"newClassesList"),newDoc=__name(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),clone=__name(o=>JSON.parse(JSON.stringify(o)),"clone"),StateDB=(__name(_a=class{constructor(version){this.version=version,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=newClassesList(),this.documents={root:newDoc()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.funs=[],this.getAccTitle=getAccTitle,this.setAccTitle=setAccTitle,this.getAccDescription=getAccDescription,this.setAccDescription=setAccDescription,this.setDiagramTitle=setDiagramTitle,this.getDiagramTitle=getDiagramTitle,this.clear(),this.setRootDoc=this.setRootDoc.bind(this),this.getDividerId=this.getDividerId.bind(this),this.setDirection=this.setDirection.bind(this),this.trimColon=this.trimColon.bind(this),this.bindFunctions=this.bindFunctions.bind(this)}extract(statements){this.clear(!0);for(const item of Array.isArray(statements)?statements:statements.doc)switch(item.stmt){case"state":this.addState(item.id.trim(),item.type,item.doc,item.description,item.note);break;case"relation":this.addRelation(item.state1,item.state2,item.description);break;case"classDef":this.addStyleClass(item.id.trim(),item.classes);break;case"style":this.handleStyleDef(item);break;case"applyClass":this.setCssClass(item.id.trim(),item.styleClass);break;case"click":this.addLink(item.id,item.url,item.tooltip)}const diagramStates=this.getStates(),config=getConfig2();reset(),dataFetcher(void 0,this.getRootDocV2(),diagramStates,this.nodes,this.edges,!0,config.look,this.classes);for(const node of this.nodes)if(Array.isArray(node.label)){if(node.description=node.label.slice(1),node.isGroup&&node.description.length>0)throw new Error(`Group nodes can only have label. Remove the additional description for node [${node.id}]`);node.label=node.label[0]}}handleStyleDef(item){const ids=item.id.trim().split(","),styles=item.styleClass.split(",");for(const id of ids){let state=this.getState(id);if(!state){const trimmedId=id.trim();this.addState(trimmedId),state=this.getState(trimmedId)}state&&(state.styles=styles.map(s=>{var _a2;return null==(_a2=s.replace(/;/g,""))?void 0:_a2.trim()}))}}setRootDoc(o){log.info("Setting root doc",o),this.rootDoc=o,1===this.version?this.extract(o):this.extract(this.getRootDocV2())}docTranslator(parent,node,first){if("relation"===node.stmt)return this.docTranslator(parent,node.state1,!0),void this.docTranslator(parent,node.state2,!1);if("state"===node.stmt&&(node.id===CONSTANTS_START_NODE?(node.id=parent.id+(first?"_start":"_end"),node.start=first):node.id=node.id.trim()),"root"!==node.stmt&&"state"!==node.stmt||!node.doc)return;const doc=[];let currentDoc=[];for(const stmt of node.doc)if("divider"===stmt.type){const newNode=clone(stmt);newNode.doc=clone(currentDoc),doc.push(newNode),currentDoc=[]}else currentDoc.push(stmt);if(doc.length>0&&currentDoc.length>0){const newNode={stmt:"state",id:generateId(),type:"divider",doc:clone(currentDoc)};doc.push(clone(newNode)),node.doc=doc}node.doc.forEach(docNode=>this.docTranslator(node,docNode,!0))}getRootDocV2(){return this.docTranslator({id:"root",stmt:"root"},{id:"root",stmt:"root",doc:this.rootDoc},!0),{id:"root",doc:this.rootDoc}}addState(id,type="default",doc=void 0,descr=void 0,note=void 0,classes=void 0,styles=void 0,textStyles=void 0){const trimmedId=null==id?void 0:id.trim();if(this.currentDocument.states.has(trimmedId)){const state=this.currentDocument.states.get(trimmedId);if(!state)throw new Error(`State not found: ${trimmedId}`);state.doc||(state.doc=doc),state.type||(state.type=type)}else log.info("Adding state ",trimmedId,descr),this.currentDocument.states.set(trimmedId,{stmt:"state",id:trimmedId,descriptions:[],type:type,doc:doc,note:note,classes:[],styles:[],textStyles:[]});if(descr){log.info("Setting state description",trimmedId,descr);(Array.isArray(descr)?descr:[descr]).forEach(des=>this.addDescription(trimmedId,des.trim()))}if(note){const doc2=this.currentDocument.states.get(trimmedId);if(!doc2)throw new Error(`State not found: ${trimmedId}`);doc2.note=note,doc2.note.text=common_default.sanitizeText(doc2.note.text,getConfig2())}if(classes){log.info("Setting state classes",trimmedId,classes);(Array.isArray(classes)?classes:[classes]).forEach(cssClass=>this.setCssClass(trimmedId,cssClass.trim()))}if(styles){log.info("Setting state styles",trimmedId,styles);(Array.isArray(styles)?styles:[styles]).forEach(style=>this.setStyle(trimmedId,style.trim()))}if(textStyles){log.info("Setting state styles",trimmedId,styles);(Array.isArray(textStyles)?textStyles:[textStyles]).forEach(textStyle=>this.setTextStyle(trimmedId,textStyle.trim()))}}clear(saveCommon){this.nodes=[],this.edges=[],this.funs=[this.setupToolTips.bind(this)],this.documents={root:newDoc()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=newClassesList(),saveCommon||(this.links=new Map,clear())}getState(id){return this.currentDocument.states.get(id)}getStates(){return this.currentDocument.states}logDocuments(){log.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(stateId,url,tooltip){this.links.set(stateId,{url:url,tooltip:tooltip}),log.warn("Adding link",stateId,url,tooltip)}getLinks(){return this.links}startIdIfNeeded(id=""){return id===CONSTANTS_START_NODE?(this.startEndCount++,`${CONSTANTS_START_TYPE}${this.startEndCount}`):id}startTypeIfNeeded(id="",type="default"){return id===CONSTANTS_START_NODE?CONSTANTS_START_TYPE:type}endIdIfNeeded(id=""){return id===CONSTANTS_END_NODE?(this.startEndCount++,`${CONSTANTS_END_TYPE}${this.startEndCount}`):id}endTypeIfNeeded(id="",type="default"){return id===CONSTANTS_END_NODE?CONSTANTS_END_TYPE:type}addRelationObjs(item1,item2,relationTitle=""){const id1=this.startIdIfNeeded(item1.id.trim()),type1=this.startTypeIfNeeded(item1.id.trim(),item1.type),id2=this.startIdIfNeeded(item2.id.trim()),type2=this.startTypeIfNeeded(item2.id.trim(),item2.type);this.addState(id1,type1,item1.doc,item1.description,item1.note,item1.classes,item1.styles,item1.textStyles),this.addState(id2,type2,item2.doc,item2.description,item2.note,item2.classes,item2.styles,item2.textStyles),this.currentDocument.relations.push({id1:id1,id2:id2,relationTitle:common_default.sanitizeText(relationTitle,getConfig2())})}addRelation(item1,item2,title){if("object"==typeof item1&&"object"==typeof item2)this.addRelationObjs(item1,item2,title);else if("string"==typeof item1&&"string"==typeof item2){const id1=this.startIdIfNeeded(item1.trim()),type1=this.startTypeIfNeeded(item1),id2=this.endIdIfNeeded(item2.trim()),type2=this.endTypeIfNeeded(item2);this.addState(id1,type1),this.addState(id2,type2),this.currentDocument.relations.push({id1:id1,id2:id2,relationTitle:title?common_default.sanitizeText(title,getConfig2()):void 0})}}addDescription(id,descr){var _a2;const theState=this.currentDocument.states.get(id),_descr=descr.startsWith(":")?descr.replace(":","").trim():descr;null==(_a2=null==theState?void 0:theState.descriptions)||_a2.push(common_default.sanitizeText(_descr,getConfig2()))}cleanupLabel(label){return label.startsWith(":")?label.slice(2).trim():label.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(id,styleAttributes=""){this.classes.has(id)||this.classes.set(id,{id:id,styles:[],textStyles:[]});const foundClass=this.classes.get(id);styleAttributes&&foundClass&&styleAttributes.split(CONSTANTS_STYLECLASS_SEP).forEach(attrib=>{const fixedAttrib=attrib.replace(/([^;]*);/,"$1").trim();if(RegExp(CONSTANTS_COLOR_KEYWORD).exec(attrib)){const newStyle2=fixedAttrib.replace(CONSTANTS_FILL_KEYWORD,CONSTANTS_BG_FILL).replace(CONSTANTS_COLOR_KEYWORD,CONSTANTS_FILL_KEYWORD);foundClass.textStyles.push(newStyle2)}foundClass.styles.push(fixedAttrib)})}getClasses(){return this.classes}setupToolTips(element){const tooltipElem=createTooltip();select(element).select("svg").selectAll("g.node, g.rough-node").on("mouseover",e=>{var _a2;const el=select(e.currentTarget),title=el.attr("title");if(null===title)return;const rect=null==(_a2=e.currentTarget)?void 0:_a2.getBoundingClientRect();tooltipElem.transition().duration(200).style("opacity",".9"),tooltipElem.style("left",window.scrollX+rect.left+(rect.right-rect.left)/2+"px").style("top",window.scrollY+rect.bottom+"px"),tooltipElem.html(purify.sanitize(title)),el.classed("hover",!0)}).on("mouseout",e=>{tooltipElem.transition().duration(500).style("opacity",0);select(e.currentTarget).classed("hover",!1)})}setCssClass(itemIds,cssClassName){itemIds.split(",").forEach(id=>{var _a2;let foundState=this.getState(id);if(!foundState){const trimmedId=id.trim();this.addState(trimmedId),foundState=this.getState(trimmedId)}null==(_a2=null==foundState?void 0:foundState.classes)||_a2.push(cssClassName)})}setStyle(itemId,styleText){var _a2,_b;null==(_b=null==(_a2=this.getState(itemId))?void 0:_a2.styles)||_b.push(styleText)}setTextStyle(itemId,cssClassName){var _a2,_b;null==(_b=null==(_a2=this.getState(itemId))?void 0:_a2.textStyles)||_b.push(cssClassName)}bindFunctions(element){this.funs.forEach(fun=>{fun(element)})}getDirectionStatement(){return this.rootDoc.find(doc=>"dir"===doc.stmt)}getDirection(){var _a2;return(null==(_a2=this.getDirectionStatement())?void 0:_a2.value)??"TB"}setDirection(dir){const doc=this.getDirectionStatement();doc?doc.value=dir:this.rootDoc.unshift({stmt:"dir",value:dir})}trimColon(str){return str.startsWith(":")?str.slice(1).trim():str.trim()}getData(){const config=getConfig2();return{nodes:this.nodes,edges:this.edges,other:{},config:config,direction:getDir(this.getRootDocV2())}}getConfig(){return getConfig2().state}},"StateDB"),_a.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},_a),styles_default=__name(options=>`\ndefs [id$="-barbEnd"] {\n fill: ${options.transitionColor};\n stroke: ${options.transitionColor};\n }\ng.stateGroup text {\n fill: ${options.nodeBorder};\n stroke: none;\n font-size: 10px;\n}\ng.stateGroup text {\n fill: ${options.textColor};\n stroke: none;\n font-size: 10px;\n\n}\ng.stateGroup .state-title {\n font-weight: bolder;\n fill: ${options.stateLabelColor};\n}\n\ng.stateGroup rect {\n fill: ${options.mainBkg};\n stroke: ${options.nodeBorder};\n}\n\ng.stateGroup line {\n stroke: ${options.lineColor};\n stroke-width: ${options.strokeWidth||1};\n}\n\n.transition {\n stroke: ${options.transitionColor};\n stroke-width: ${options.strokeWidth||1};\n fill: none;\n}\n\n.stateGroup .composit {\n fill: ${options.background};\n border-bottom: 1px\n}\n\n.stateGroup .alt-composit {\n fill: #e0e0e0;\n border-bottom: 1px\n}\n\n.state-note {\n stroke: ${options.noteBorderColor};\n fill: ${options.noteBkgColor};\n\n text {\n fill: ${options.noteTextColor};\n stroke: none;\n font-size: 10px;\n }\n}\n\n.stateLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${options.mainBkg};\n opacity: 0.5;\n}\n\n.edgeLabel .label rect {\n fill: ${options.labelBackgroundColor};\n opacity: 0.5;\n}\n.edgeLabel {\n background-color: ${options.edgeLabelBackground};\n p {\n background-color: ${options.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${options.edgeLabelBackground};\n fill: ${options.edgeLabelBackground};\n }\n text-align: center;\n}\n.edgeLabel .label text {\n fill: ${options.transitionLabelColor||options.tertiaryTextColor};\n}\n.label div .edgeLabel {\n color: ${options.transitionLabelColor||options.tertiaryTextColor};\n}\n\n.stateLabel text {\n fill: ${options.stateLabelColor};\n font-size: 10px;\n font-weight: bold;\n}\n\n.node circle.state-start {\n fill: ${options.specialStateColor};\n stroke: ${options.specialStateColor};\n}\n\n.node .fork-join {\n fill: ${options.specialStateColor};\n stroke: ${options.specialStateColor};\n}\n\n.node circle.state-end {\n fill: ${options.innerEndBackground};\n stroke: ${options.background};\n stroke-width: 1.5\n}\n.end-state-inner {\n fill: ${options.compositeBackground||options.background};\n // stroke: ${options.background};\n stroke-width: 1.5\n}\n\n.node rect {\n fill: ${options.stateBkg||options.mainBkg};\n stroke: ${options.stateBorder||options.nodeBorder};\n stroke-width: ${options.strokeWidth||1}px;\n}\n.node polygon {\n fill: ${options.mainBkg};\n stroke: ${options.stateBorder||options.nodeBorder};;\n stroke-width: ${options.strokeWidth||1}px;\n}\n[id$="-barbEnd"] {\n fill: ${options.lineColor};\n}\n\n.statediagram-cluster rect {\n fill: ${options.compositeTitleBackground};\n stroke: ${options.stateBorder||options.nodeBorder};\n stroke-width: ${options.strokeWidth||1}px;\n}\n\n.cluster-label, .nodeLabel {\n color: ${options.stateLabelColor};\n // line-height: 1;\n}\n\n.statediagram-cluster rect.outer {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state .divider {\n stroke: ${options.stateBorder||options.nodeBorder};\n}\n\n.statediagram-state .title-state {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-cluster.statediagram-cluster .inner {\n fill: ${options.compositeBackground||options.background};\n}\n.statediagram-cluster.statediagram-cluster-alt .inner {\n fill: ${options.altBackground?options.altBackground:"#efefef"};\n}\n\n.statediagram-cluster .inner {\n rx:0;\n ry:0;\n}\n\n.statediagram-state rect.basic {\n rx: 5px;\n ry: 5px;\n}\n.statediagram-state rect.divider {\n stroke-dasharray: 10,10;\n fill: ${options.altBackground?options.altBackground:"#efefef"};\n}\n\n.note-edge {\n stroke-dasharray: 5;\n}\n\n.statediagram-note rect {\n fill: ${options.noteBkgColor};\n stroke: ${options.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n.statediagram-note rect {\n fill: ${options.noteBkgColor};\n stroke: ${options.noteBorderColor};\n stroke-width: 1px;\n rx: 0;\n ry: 0;\n}\n\n.statediagram-note text {\n fill: ${options.noteTextColor};\n}\n\n.statediagram-note .nodeLabel {\n color: ${options.noteTextColor};\n}\n.statediagram .edgeLabel {\n color: red; // ${options.noteTextColor};\n}\n\n[id$="-dependencyStart"], [id$="-dependencyEnd"] {\n fill: ${options.lineColor};\n stroke: ${options.lineColor};\n stroke-width: ${options.strokeWidth||1};\n}\n\n.statediagramTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${options.textColor};\n}\n\n[data-look="neo"].statediagram-cluster rect {\n fill: ${options.mainBkg};\n stroke: ${options.useGradient?"url("+options.svgId+"-gradient)":options.stateBorder||options.nodeBorder};\n stroke-width: ${options.strokeWidth??1};\n}\n[data-look="neo"].statediagram-cluster rect.outer {\n rx: ${options.radius}px;\n ry: ${options.radius}px;\n filter: ${options.dropShadow?options.dropShadow.replace("url(#drop-shadow)",`url(${options.svgId}-drop-shadow)`):"none"}\n}\n`,"getStyles");export{StateDB as S,stateDiagram_default as a,stateRenderer_v3_unified_default as b,styles_default as s};
@@ -0,0 +1 @@
1
+ import{_ as __name}from"./mermaid.core-Cy9iVxov.js";function populateCommonDb(ast,db){var _a,_b,_c;ast.accDescr&&(null==(_a=db.setAccDescription)||_a.call(db,ast.accDescr)),ast.accTitle&&(null==(_b=db.setAccTitle)||_b.call(db,ast.accTitle)),ast.title&&(null==(_c=db.setDiagramTitle)||_c.call(db,ast.title))}__name(populateCommonDb,"populateCommonDb");export{populateCommonDb as p};
@@ -0,0 +1 @@
1
+ var _a,_b;import{_ as __name,l as log,F as selectSvgElement,z as getConfig,q as clear,W as getThemeVariables3,e as configureSvgSize,i as sanitizeText,c as getConfig2}from"./mermaid.core-Cy9iVxov.js";var diagramTitle="",accTitle="",accDescription="",rules=[],ruleMap=new Map,sanitizeText2=__name(text=>sanitizeText(text,getConfig2()),"sanitizeText"),sanitizeAstNode=__name(node=>{switch(node.type){case"terminal":return{...node,value:sanitizeText2(node.value)};case"nonterminal":return{...node,name:sanitizeText2(node.name)};case"sequence":return{...node,elements:node.elements.map(sanitizeAstNode)};case"choice":return{...node,alternatives:node.alternatives.map(sanitizeAstNode)};case"optional":return{...node,element:sanitizeAstNode(node.element)};case"repetition":return{...node,element:sanitizeAstNode(node.element),separator:node.separator?sanitizeAstNode(node.separator):void 0};case"special":return{...node,text:sanitizeText2(node.text)}}},"sanitizeAstNode"),clear2=__name(()=>{diagramTitle="",accTitle="",accDescription="",rules.length=0,ruleMap.clear(),clear(),log.debug("[Railroad] Database cleared")},"clear"),setTitle=__name(text=>{diagramTitle=sanitizeText2(text),log.debug("[Railroad] Title set:",text)},"setTitle"),getTitle=__name(()=>diagramTitle,"getTitle"),db={clear:clear2,setTitle:setTitle,getTitle:getTitle,addRule:__name(rule=>{const sanitizedRule={...rule,name:sanitizeText2(rule.name),definition:sanitizeAstNode(rule.definition),comment:rule.comment?sanitizeText2(rule.comment):void 0};log.debug("[Railroad] Adding rule:",sanitizedRule.name),ruleMap.has(sanitizedRule.name)&&log.warn(`[Railroad] Rule '${sanitizedRule.name}' is already defined. Overwriting.`),rules.push(sanitizedRule),ruleMap.set(sanitizedRule.name,sanitizedRule)},"addRule"),getRules:__name(()=>rules,"getRules"),getRule:__name(name=>ruleMap.get(name),"getRule"),setAccTitle:__name(text=>{accTitle=sanitizeText2(text).replace(/^\s+/g,""),log.debug("[Railroad] Accessibility title set:",text)},"setAccTitle"),getAccTitle:__name(()=>accTitle,"getAccTitle"),setAccDescription:__name(text=>{accDescription=sanitizeText2(text).replace(/\n\s+/g,"\n"),log.debug("[Railroad] Accessibility description set:",text)},"setAccDescription"),getAccDescription:__name(()=>accDescription,"getAccDescription"),setDiagramTitle:setTitle,getDiagramTitle:getTitle},DEFAULT_RAILROAD_CONFIG={compactMode:!1,padding:10,verticalSeparation:8,horizontalSeparation:10,arcRadius:10,fontSize:14,fontFamily:"monospace",terminalFill:"#FFFFC0",terminalStroke:"#000000",terminalTextColor:"#000000",nonTerminalFill:"#FFFFFF",nonTerminalStroke:"#000000",nonTerminalTextColor:"#000000",lineColor:"#000000",strokeWidth:2,markerFill:"#000000",commentFill:"#E8E8E8",commentStroke:"#888888",commentTextColor:"#666666",specialFill:"#F0E0FF",specialStroke:"#8800CC",ruleNameColor:"#000066",showMarkers:!0,markerRadius:5},COLOR_VALUE_PATTERN=/^#(?:[\da-f]{3,4}|[\da-f]{6}|[\da-f]{8})$|^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch)\([\d\s%+,./-]+\)$|^[a-z]+$/i,FONT_FAMILY_PATTERN=/^[\w "',.-]+$/,RAILROAD_STYLE_OPTION_KEYS=new Set(["compactMode","padding","verticalSeparation","horizontalSeparation","arcRadius","fontSize","fontFamily","terminalFill","terminalStroke","terminalTextColor","nonTerminalFill","nonTerminalStroke","nonTerminalTextColor","lineColor","strokeWidth","markerFill","commentFill","commentStroke","commentTextColor","specialFill","specialStroke","ruleNameColor","showMarkers","markerRadius"]),isRailroadStyleOptions=__name(options=>!!options&&Object.keys(options).every(key=>"railroad"===key||RAILROAD_STYLE_OPTION_KEYS.has(key)),"isRailroadStyleOptions"),extractRailroadOverrides=__name(options=>options?"railroad"in options&&options.railroad?options.railroad:isRailroadStyleOptions(options)?options:{}:{},"extractRailroadOverrides"),extractThemeOverrides=__name(options=>{if(!options||isRailroadStyleOptions(options))return{};const{railroad:_railroad,svgId:_svgId,theme:_theme,look:_look,...themeOverrides}=options;return themeOverrides},"extractThemeOverrides"),sanitizeColorValue=__name((value,fallback)=>{if("string"!=typeof value)return fallback;const normalized=value.trim();return COLOR_VALUE_PATTERN.test(normalized)?normalized:fallback},"sanitizeColorValue"),sanitizeFontFamilyValue=__name((value,fallback)=>{if("string"!=typeof value)return fallback;const normalized=value.trim();return FONT_FAMILY_PATTERN.test(normalized)?normalized:fallback},"sanitizeFontFamilyValue"),sanitizeNumberValue=__name((value,fallback)=>{const parsed="number"==typeof value?value:"string"==typeof value?Number.parseFloat(value):Number.NaN;return Number.isFinite(parsed)&&parsed>=0?parsed:fallback},"sanitizeNumberValue"),parseThemeFontSize=__name(value=>{const parsed="number"==typeof value?value:"string"==typeof value?Number.parseFloat(value):Number.NaN;return Number.isFinite(parsed)&&parsed>0?parsed:void 0},"parseThemeFontSize"),buildThemeDefaults=__name(themeVariables=>{const fontFamily=sanitizeFontFamilyValue(themeVariables.fontFamily,DEFAULT_RAILROAD_CONFIG.fontFamily),fontSize=parseThemeFontSize(themeVariables.fontSize)??DEFAULT_RAILROAD_CONFIG.fontSize;return{...DEFAULT_RAILROAD_CONFIG,fontFamily:fontFamily,fontSize:fontSize,terminalFill:sanitizeColorValue(themeVariables.secondBkg??themeVariables.secondaryColor,DEFAULT_RAILROAD_CONFIG.terminalFill),terminalStroke:sanitizeColorValue(themeVariables.secondaryBorderColor??themeVariables.lineColor,DEFAULT_RAILROAD_CONFIG.terminalStroke),terminalTextColor:sanitizeColorValue(themeVariables.secondaryTextColor??themeVariables.textColor,DEFAULT_RAILROAD_CONFIG.terminalTextColor),nonTerminalFill:sanitizeColorValue(themeVariables.mainBkg??themeVariables.background,DEFAULT_RAILROAD_CONFIG.nonTerminalFill),nonTerminalStroke:sanitizeColorValue(themeVariables.primaryBorderColor??themeVariables.lineColor,DEFAULT_RAILROAD_CONFIG.nonTerminalStroke),nonTerminalTextColor:sanitizeColorValue(themeVariables.primaryTextColor??themeVariables.textColor,DEFAULT_RAILROAD_CONFIG.nonTerminalTextColor),lineColor:sanitizeColorValue(themeVariables.lineColor,DEFAULT_RAILROAD_CONFIG.lineColor),markerFill:sanitizeColorValue(themeVariables.lineColor,DEFAULT_RAILROAD_CONFIG.markerFill),commentFill:sanitizeColorValue(themeVariables.labelBackground??themeVariables.tertiaryColor,DEFAULT_RAILROAD_CONFIG.commentFill),commentStroke:sanitizeColorValue(themeVariables.tertiaryBorderColor??themeVariables.lineColor,DEFAULT_RAILROAD_CONFIG.commentStroke),commentTextColor:sanitizeColorValue(themeVariables.tertiaryTextColor??themeVariables.textColor,DEFAULT_RAILROAD_CONFIG.commentTextColor),specialFill:sanitizeColorValue(themeVariables.tertiaryColor??themeVariables.secondaryColor,DEFAULT_RAILROAD_CONFIG.specialFill),specialStroke:sanitizeColorValue(themeVariables.tertiaryBorderColor??themeVariables.secondaryBorderColor,DEFAULT_RAILROAD_CONFIG.specialStroke),ruleNameColor:sanitizeColorValue(themeVariables.titleColor??themeVariables.textColor,DEFAULT_RAILROAD_CONFIG.ruleNameColor)}},"buildThemeDefaults"),buildRailroadStyleOptions=__name(options=>{const currentConfig=getConfig(),themeVariables={...getThemeVariables3(),...currentConfig.themeVariables??{},...extractThemeOverrides(options)},themeDefaults=buildThemeDefaults(themeVariables),railroadOptions={...currentConfig.railroad??{},...extractRailroadOverrides(options)};return{compactMode:railroadOptions.compactMode??themeDefaults.compactMode,padding:sanitizeNumberValue(railroadOptions.padding,themeDefaults.padding),verticalSeparation:sanitizeNumberValue(railroadOptions.verticalSeparation,themeDefaults.verticalSeparation),horizontalSeparation:sanitizeNumberValue(railroadOptions.horizontalSeparation,themeDefaults.horizontalSeparation),arcRadius:sanitizeNumberValue(railroadOptions.arcRadius,themeDefaults.arcRadius),fontSize:sanitizeNumberValue(railroadOptions.fontSize,themeDefaults.fontSize),fontFamily:sanitizeFontFamilyValue(railroadOptions.fontFamily,themeDefaults.fontFamily),terminalFill:sanitizeColorValue(railroadOptions.terminalFill,themeDefaults.terminalFill),terminalStroke:sanitizeColorValue(railroadOptions.terminalStroke,themeDefaults.terminalStroke),terminalTextColor:sanitizeColorValue(railroadOptions.terminalTextColor,themeDefaults.terminalTextColor),nonTerminalFill:sanitizeColorValue(railroadOptions.nonTerminalFill,themeDefaults.nonTerminalFill),nonTerminalStroke:sanitizeColorValue(railroadOptions.nonTerminalStroke,themeDefaults.nonTerminalStroke),nonTerminalTextColor:sanitizeColorValue(railroadOptions.nonTerminalTextColor,themeDefaults.nonTerminalTextColor),lineColor:sanitizeColorValue(railroadOptions.lineColor,themeDefaults.lineColor),strokeWidth:sanitizeNumberValue(railroadOptions.strokeWidth,themeDefaults.strokeWidth),markerFill:sanitizeColorValue(railroadOptions.markerFill,themeDefaults.markerFill),commentFill:sanitizeColorValue(railroadOptions.commentFill,themeDefaults.commentFill),commentStroke:sanitizeColorValue(railroadOptions.commentStroke,themeDefaults.commentStroke),commentTextColor:sanitizeColorValue(railroadOptions.commentTextColor,themeDefaults.commentTextColor),specialFill:sanitizeColorValue(railroadOptions.specialFill,themeDefaults.specialFill),specialStroke:sanitizeColorValue(railroadOptions.specialStroke,themeDefaults.specialStroke),ruleNameColor:sanitizeColorValue(railroadOptions.ruleNameColor,themeDefaults.ruleNameColor),showMarkers:railroadOptions.showMarkers??themeDefaults.showMarkers,markerRadius:sanitizeNumberValue(railroadOptions.markerRadius,themeDefaults.markerRadius)}},"buildRailroadStyleOptions"),getStyles=__name(options=>{const{fontFamily:fontFamily,fontSize:fontSize,terminalFill:terminalFill,terminalStroke:terminalStroke,terminalTextColor:terminalTextColor,nonTerminalFill:nonTerminalFill,nonTerminalStroke:nonTerminalStroke,nonTerminalTextColor:nonTerminalTextColor,lineColor:lineColor,strokeWidth:strokeWidth,markerFill:markerFill,commentFill:commentFill,commentStroke:commentStroke,commentTextColor:commentTextColor,specialFill:specialFill,specialStroke:specialStroke,ruleNameColor:ruleNameColor}=buildRailroadStyleOptions(options);return`\n .railroad-diagram {\n font-family: ${fontFamily};\n font-size: ${fontSize}px;\n }\n\n .railroad-terminal rect {\n fill: ${terminalFill};\n stroke: ${terminalStroke};\n stroke-width: ${strokeWidth}px;\n }\n\n .railroad-terminal text {\n fill: ${terminalTextColor};\n font-family: ${fontFamily};\n font-size: ${fontSize}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-nonterminal rect {\n fill: ${nonTerminalFill};\n stroke: ${nonTerminalStroke};\n stroke-width: ${strokeWidth}px;\n }\n\n .railroad-nonterminal text {\n fill: ${nonTerminalTextColor};\n font-family: ${fontFamily};\n font-size: ${fontSize}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-line {\n stroke: ${lineColor};\n stroke-width: ${strokeWidth}px;\n fill: none;\n }\n\n .railroad-start circle,\n .railroad-end circle {\n fill: ${markerFill};\n }\n\n .railroad-comment ellipse {\n fill: ${commentFill};\n stroke: ${commentStroke};\n stroke-width: ${strokeWidth}px;\n }\n\n .railroad-comment text {\n fill: ${commentTextColor};\n font-style: italic;\n font-family: ${fontFamily};\n font-size: ${fontSize}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-special rect {\n fill: ${specialFill};\n stroke: ${specialStroke};\n stroke-width: ${strokeWidth}px;\n stroke-dasharray: 5,3;\n }\n\n .railroad-special text {\n fill: ${nonTerminalTextColor};\n font-family: ${fontFamily};\n font-size: ${fontSize}px;\n text-anchor: middle;\n dominant-baseline: middle;\n }\n\n .railroad-rule-name {\n font-weight: bold;\n fill: ${ruleNameColor};\n font-family: ${fontFamily};\n font-size: ${fontSize}px;\n }\n\n .railroad-group {\n /* Grouping container, no specific styles */\n }\n`},"getStyles"),PathBuilder=(__name(_a=class{constructor(){this.d=""}moveTo(x,y){return this.d+=`M ${x} ${y} `,this}lineTo(x,y){return this.d+=`L ${x} ${y} `,this}horizontalTo(x){return this.d+=`H ${x} `,this}verticalTo(y){return this.d+=`V ${y} `,this}arcTo(rx,ry,rotation,largeArc,sweep,x,y){return this.d+=`A ${rx} ${ry} ${rotation} ${largeArc?1:0} ${sweep?1:0} ${x} ${y} `,this}build(){return this.d.trim()}},"PathBuilder"),_a),RailroadRenderer=(__name(_b=class{constructor(svg,config=buildRailroadStyleOptions()){this.textCache=new Map,this.svg=svg,this.config=config}measureText(text){if(this.textCache.has(text))return this.textCache.get(text);const tempText=this.svg.append("text").attr("font-family",this.config.fontFamily).attr("font-size",this.config.fontSize).text(text),bbox=tempText.node().getBBox(),dimensions={width:bbox.width,height:bbox.height};return tempText.remove(),this.textCache.set(text,dimensions),dimensions}renderTerminal(parent,value){const textDim=this.measureText(value),width=textDim.width+2*this.config.padding,height=textDim.height+2*this.config.padding,group=parent.append("g").attr("class","railroad-terminal");return group.append("rect").attr("x",0).attr("y",0).attr("width",width).attr("height",height).attr("rx",10).attr("ry",10),group.append("text").attr("x",width/2).attr("y",height/2).text(value),{element:group.node(),dimensions:{width:width,height:height,up:height/2,down:height/2}}}renderNonTerminal(parent,name){const textDim=this.measureText(name),width=textDim.width+2*this.config.padding,height=textDim.height+2*this.config.padding,group=parent.append("g").attr("class","railroad-nonterminal");return group.append("rect").attr("x",0).attr("y",0).attr("width",width).attr("height",height),group.append("text").attr("x",width/2).attr("y",height/2).text(name),{element:group.node(),dimensions:{width:width,height:height,up:height/2,down:height/2}}}renderSequence(parent,elements){const rendered=elements.map(e=>this.renderExpression(parent,e));let totalWidth=0,maxUp=0,maxDown=0;for(const r of rendered)totalWidth+=r.dimensions.width,maxUp=Math.max(maxUp,r.dimensions.up),maxDown=Math.max(maxDown,r.dimensions.down);totalWidth+=(rendered.length-1)*this.config.horizontalSeparation;const group=parent.append("g").attr("class","railroad-sequence");let x=0;for(let i=0;i<rendered.length;i++){const r=rendered[i],y=maxUp-r.dimensions.up;if(group.node().appendChild(r.element).setAttribute("transform",`translate(${x}, ${y})`),i<rendered.length-1){const lineX1=x+r.dimensions.width,lineX2=lineX1+this.config.horizontalSeparation,lineY=maxUp;group.append("path").attr("class","railroad-line").attr("d",(new PathBuilder).moveTo(lineX1,lineY).lineTo(lineX2,lineY).build())}x+=r.dimensions.width+this.config.horizontalSeparation}return{element:group.node(),dimensions:{width:totalWidth,height:maxUp+maxDown,up:maxUp,down:maxDown}}}renderChoice(parent,alternatives){const rendered=alternatives.map(a=>this.renderExpression(parent,a));let maxWidth=0,totalHeight=0;for(const r of rendered)maxWidth=Math.max(maxWidth,r.dimensions.width),totalHeight+=r.dimensions.height;totalHeight+=(rendered.length-1)*this.config.verticalSeparation;const arcRadius=this.config.arcRadius,totalWidth=maxWidth+4*arcRadius,group=parent.append("g").attr("class","railroad-choice");let y=0;const centerY=totalHeight/2;for(const r of rendered){const elemY=y,elemCenterY=elemY+r.dimensions.up,elemX=2*arcRadius+(maxWidth-r.dimensions.width)/2;group.node().appendChild(r.element).setAttribute("transform",`translate(${elemX}, ${elemY})`);const leftPath=new PathBuilder,isBelowCenter=elemCenterY>centerY;elemCenterY===centerY?leftPath.moveTo(0,centerY).lineTo(elemX,elemCenterY):leftPath.moveTo(0,centerY).arcTo(arcRadius,arcRadius,0,!1,isBelowCenter,arcRadius,centerY+(isBelowCenter?arcRadius:-arcRadius)).lineTo(arcRadius,elemCenterY-(isBelowCenter?arcRadius:-arcRadius)).arcTo(arcRadius,arcRadius,0,!1,!isBelowCenter,2*arcRadius,elemCenterY).lineTo(elemX,elemCenterY),group.append("path").attr("class","railroad-line").attr("d",leftPath.build());const rightPath=new PathBuilder,rightStart=elemX+r.dimensions.width,rightLaneX=totalWidth-2*arcRadius;elemCenterY===centerY?rightPath.moveTo(rightStart,elemCenterY).lineTo(totalWidth,centerY):rightPath.moveTo(rightStart,elemCenterY).lineTo(rightLaneX,elemCenterY).arcTo(arcRadius,arcRadius,0,!1,!isBelowCenter,totalWidth-arcRadius,elemCenterY+(isBelowCenter?-arcRadius:arcRadius)).lineTo(totalWidth-arcRadius,centerY+(isBelowCenter?arcRadius:-arcRadius)).arcTo(arcRadius,arcRadius,0,!1,isBelowCenter,totalWidth,centerY),group.append("path").attr("class","railroad-line").attr("d",rightPath.build()),y+=r.dimensions.height+this.config.verticalSeparation}return{element:group.node(),dimensions:{width:totalWidth,height:totalHeight,up:centerY,down:totalHeight-centerY}}}renderOptional(parent,element){const inner=this.renderExpression(parent,element),arcRadius=this.config.arcRadius,arcHeight=2*arcRadius,totalWidth=inner.dimensions.width+4*arcRadius,totalHeight=inner.dimensions.height+arcHeight,group=parent.append("g").attr("class","railroad-optional"),elemX=2*arcRadius,elemY=arcHeight;group.node().appendChild(inner.element).setAttribute("transform",`translate(${elemX}, ${elemY})`);const centerY=elemY+inner.dimensions.up,lowerPath=(new PathBuilder).moveTo(0,centerY).lineTo(2*arcRadius,centerY);group.append("path").attr("class","railroad-line").attr("d",lowerPath.build());const lowerPath2=(new PathBuilder).moveTo(elemX+inner.dimensions.width,centerY).lineTo(totalWidth,centerY);group.append("path").attr("class","railroad-line").attr("d",lowerPath2.build());const bypassPath=(new PathBuilder).moveTo(0,centerY).arcTo(arcRadius,arcRadius,0,!1,!1,arcRadius,centerY-arcRadius).lineTo(arcRadius,arcRadius).arcTo(arcRadius,arcRadius,0,!1,!0,2*arcRadius,0).lineTo(totalWidth-2*arcRadius,0).arcTo(arcRadius,arcRadius,0,!1,!0,totalWidth-arcRadius,arcRadius).lineTo(totalWidth-arcRadius,centerY-arcRadius).arcTo(arcRadius,arcRadius,0,!1,!1,totalWidth,centerY);return group.append("path").attr("class","railroad-line").attr("d",bypassPath.build()),{element:group.node(),dimensions:{width:totalWidth,height:totalHeight,up:centerY,down:totalHeight-centerY}}}renderRepetition(parent,element,min){const inner=this.renderExpression(parent,element),arcRadius=this.config.arcRadius,arcHeight=2*arcRadius,totalWidth=inner.dimensions.width+4*arcRadius,hasBypass=0===min,totalHeight=inner.dimensions.height+arcHeight+(hasBypass?arcHeight:0),group=parent.append("g").attr("class","railroad-repetition"),elemX=2*arcRadius,elemY=hasBypass?arcHeight:0;group.node().appendChild(inner.element).setAttribute("transform",`translate(${elemX}, ${elemY})`);const centerY=elemY+inner.dimensions.up;group.append("path").attr("class","railroad-line").attr("d",(new PathBuilder).moveTo(0,centerY).lineTo(2*arcRadius,centerY).build()),group.append("path").attr("class","railroad-line").attr("d",(new PathBuilder).moveTo(elemX+inner.dimensions.width,centerY).lineTo(totalWidth,centerY).build());const loopY=elemY+inner.dimensions.height+arcRadius,loopPath=(new PathBuilder).moveTo(elemX+inner.dimensions.width,centerY).arcTo(arcRadius,arcRadius,0,!1,!0,elemX+inner.dimensions.width+arcRadius,centerY+arcRadius).lineTo(elemX+inner.dimensions.width+arcRadius,loopY).arcTo(arcRadius,arcRadius,0,!1,!0,elemX+inner.dimensions.width,loopY+arcRadius).lineTo(2*arcRadius,loopY+arcRadius).arcTo(arcRadius,arcRadius,0,!1,!0,arcRadius,loopY).lineTo(arcRadius,centerY+arcRadius).arcTo(arcRadius,arcRadius,0,!1,!0,2*arcRadius,centerY);if(group.append("path").attr("class","railroad-line").attr("d",loopPath.build()),hasBypass){const bypassPath=(new PathBuilder).moveTo(0,centerY).arcTo(arcRadius,arcRadius,0,!1,!1,arcRadius,centerY-arcRadius).lineTo(arcRadius,arcRadius).arcTo(arcRadius,arcRadius,0,!1,!0,2*arcRadius,0).lineTo(totalWidth-2*arcRadius,0).arcTo(arcRadius,arcRadius,0,!1,!0,totalWidth-arcRadius,arcRadius).lineTo(totalWidth-arcRadius,centerY-arcRadius).arcTo(arcRadius,arcRadius,0,!1,!1,totalWidth,centerY);group.append("path").attr("class","railroad-line").attr("d",bypassPath.build())}return{element:group.node(),dimensions:{width:totalWidth,height:totalHeight,up:centerY,down:totalHeight-centerY}}}renderSpecial(parent,text){const textDim=this.measureText("? "+text+" ?"),width=textDim.width+2*this.config.padding,height=textDim.height+2*this.config.padding,group=parent.append("g").attr("class","railroad-special");return group.append("rect").attr("x",0).attr("y",0).attr("width",width).attr("height",height),group.append("text").attr("x",width/2).attr("y",height/2).text("? "+text+" ?"),{element:group.node(),dimensions:{width:width,height:height,up:height/2,down:height/2}}}renderExpression(parent,node){switch(node.type){case"terminal":return this.renderTerminal(parent,node.value);case"nonterminal":return this.renderNonTerminal(parent,node.name);case"sequence":return this.renderSequence(parent,node.elements);case"choice":return this.renderChoice(parent,node.alternatives);case"optional":return this.renderOptional(parent,node.element);case"repetition":return this.renderRepetition(parent,node.element,node.min);case"special":return this.renderSpecial(parent,node.text);default:throw new Error(`Unknown node type: ${node.type}`)}}renderRule(rule,y){const group=this.svg.append("g").attr("class","railroad-rule").attr("transform",`translate(0, ${y})`),ruleName=rule.name+" =",nameWidth=this.measureText(ruleName).width+20,definitionX=nameWidth+20,defGroup=group.append("g"),result=this.renderExpression(defGroup,rule.definition),baselineY=Math.max(20,result.dimensions.up),definitionY=baselineY-result.dimensions.up;defGroup.attr("transform",`translate(${definitionX}, ${definitionY})`);group.append("g").attr("class","railroad-rule-name-group").append("text").attr("class","railroad-rule-name").attr("x",0).attr("y",baselineY).text(ruleName);group.append("g").attr("class","railroad-start").append("circle").attr("cx",nameWidth).attr("cy",baselineY).attr("r",this.config.markerRadius);return group.append("g").attr("class","railroad-end").append("circle").attr("cx",definitionX+result.dimensions.width+10).attr("cy",baselineY).attr("r",this.config.markerRadius),group.append("path").attr("class","railroad-line").attr("d",(new PathBuilder).moveTo(nameWidth+this.config.markerRadius,baselineY).lineTo(definitionX,baselineY).build()),group.append("path").attr("class","railroad-line").attr("d",(new PathBuilder).moveTo(definitionX+result.dimensions.width,baselineY).lineTo(definitionX+result.dimensions.width+10-this.config.markerRadius,baselineY).build()),{height:Math.max(40,definitionY+result.dimensions.height+2*this.config.padding),width:definitionX+result.dimensions.width+10+this.config.markerRadius}}renderDiagram(rules2){let y=this.config.padding,maxWidth=0;for(const rule of rules2){const result=this.renderRule(rule,y);y+=result.height+this.config.verticalSeparation,maxWidth=Math.max(maxWidth,result.width)}return{width:maxWidth+2*this.config.padding,height:y+this.config.padding}}},"RailroadRenderer"),_b),configureRailroadSvgSize=__name((svg,dimensions,useMaxWidth)=>{configureSvgSize(svg,dimensions.height,dimensions.width,useMaxWidth),svg.attr("viewBox",`0 0 ${dimensions.width} ${dimensions.height}`)},"configureRailroadSvgSize"),renderer={draw:__name((text,id,_version)=>{log.debug("[Railroad] Rendering diagram\n"+text);try{const svg=selectSvgElement(id);svg.attr("class","railroad-diagram");const railroadConfig=getConfig().railroad,useMaxWidth=(null==railroadConfig?void 0:railroadConfig.useMaxWidth)??!0,rules2=db.getRules();if(log.debug(`[Railroad] Rendering ${rules2.length} rules`),0===rules2.length)return log.warn("[Railroad] No rules to render"),void configureRailroadSvgSize(svg,{height:100,width:200},useMaxWidth);const dimensions=new RailroadRenderer(svg,buildRailroadStyleOptions()).renderDiagram(rules2);configureRailroadSvgSize(svg,dimensions,useMaxWidth),log.debug("[Railroad] Render complete")}catch(error){throw log.error("[Railroad] Render error:",error),error}},"draw")};export{db as d,getStyles as g,renderer as r};
@@ -0,0 +1 @@
1
+ import{_ as __name,l as log}from"./mermaid.core-Cy9iVxov.js";import{i as isUndefined,G as Graph}from"./graph-CnJdn47S.js";import{b as baseClone,m as map}from"./map-DQeg2hXV.js";function write(g){var value,json={options:{directed:g.isDirected(),multigraph:g.isMultigraph(),compound:g.isCompound()},nodes:writeNodes(g),edges:writeEdges(g)};return isUndefined(g.graph())||(json.value=(value=g.graph(),baseClone(value,4))),json}function writeNodes(g){return map(g.nodes(),function(v){var nodeValue=g.node(v),parent=g.parent(v),node={v:v};return isUndefined(nodeValue)||(node.value=nodeValue),isUndefined(parent)||(node.parent=parent),node})}function writeEdges(g){return map(g.edges(),function(e){var edgeValue=g.edge(e),edge={v:e.v,w:e.w};return isUndefined(e.name)||(edge.name=e.name),isUndefined(edgeValue)||(edge.value=edgeValue),edge})}var clusterDb=new Map,descendants=new Map,parents=new Map,clear=__name(()=>{descendants.clear(),parents.clear(),clusterDb.clear()},"clear"),isDescendant=__name((id,ancestorId)=>{const ancestorDescendants=descendants.get(ancestorId)||[];return log.trace("In isDescendant",ancestorId," ",id," = ",ancestorDescendants.includes(id)),ancestorDescendants.includes(id)},"isDescendant"),edgeInCluster=__name((edge,clusterId)=>{const clusterDescendants=descendants.get(clusterId)||[];return log.info("Descendants of ",clusterId," is ",clusterDescendants),log.info("Edge is ",edge),edge.v!==clusterId&&edge.w!==clusterId&&(clusterDescendants?clusterDescendants.includes(edge.v)||isDescendant(edge.v,clusterId)||isDescendant(edge.w,clusterId)||clusterDescendants.includes(edge.w):(log.debug("Tilt, ",clusterId,",not in descendants"),!1))},"edgeInCluster"),copy=__name((clusterId,graph,newGraph,rootId)=>{log.warn("Copying children of ",clusterId,"root",rootId,"data",graph.node(clusterId),rootId);const nodes=graph.children(clusterId)||[];clusterId!==rootId&&nodes.push(clusterId),log.warn("Copying (nodes) clusterId",clusterId,"nodes",nodes),nodes.forEach(node=>{if(graph.children(node).length>0)copy(node,graph,newGraph,rootId);else{const data=graph.node(node);log.info("cp ",node," to ",rootId," with parent ",clusterId),newGraph.setNode(node,data),rootId!==graph.parent(node)&&(log.warn("Setting parent",node,graph.parent(node)),newGraph.setParent(node,graph.parent(node))),clusterId!==rootId&&node!==clusterId?(log.debug("Setting parent",node,clusterId),newGraph.setParent(node,clusterId)):(log.info("In copy ",clusterId,"root",rootId,"data",graph.node(clusterId),rootId),log.debug("Not Setting parent for node=",node,"cluster!==rootId",clusterId!==rootId,"node!==clusterId",node!==clusterId));const edges=graph.edges(node);log.debug("Copying Edges",edges),edges.forEach(edge=>{log.info("Edge",edge);const data2=graph.edge(edge.v,edge.w,edge.name);log.info("Edge data",data2,rootId);try{if(edgeInCluster(edge,rootId)){const rootDescendants=descendants.get(rootId)||[],vIn=rootDescendants.includes(edge.v)||isDescendant(edge.v,rootId)||edge.v===rootId,wIn=rootDescendants.includes(edge.w)||isDescendant(edge.w,rootId)||edge.w===rootId;if(vIn&&wIn)log.info("Copying as ",edge.v,edge.w,data2,edge.name),newGraph.setEdge(edge.v,edge.w,data2,edge.name),log.info("newGraph edges ",newGraph.edges(),newGraph.edge(newGraph.edges()[0]));else{const newV=vIn?rootId:edge.v,newW=wIn?rootId:edge.w;log.info("Rebinding cross-boundary edge as ",newV,newW,data2,edge.name),graph.setEdge(newV,newW,data2,edge.name)}}else log.info("Skipping copy of edge ",edge.v,"--\x3e",edge.w," rootId: ",rootId," clusterId:",clusterId)}catch(e){log.error(e)}})}log.debug("Removing node",node),graph.removeNode(node)})},"copy"),extractDescendants=__name((id,graph)=>{const children=graph.children(id);let res=[...children];for(const child of children)parents.set(child,id),res=[...res,...extractDescendants(child,graph)];return res},"extractDescendants"),findCommonEdges=__name((graph,id1,id2)=>{const edges1=graph.edges().filter(edge=>edge.v===id1||edge.w===id1),edges2=graph.edges().filter(edge=>edge.v===id2||edge.w===id2),edges1Prim=edges1.map(edge=>({v:edge.v===id1?id2:edge.v,w:edge.w===id1?id1:edge.w})),edges2Prim=edges2.map(edge=>({v:edge.v,w:edge.w}));return edges1Prim.filter(edgeIn1=>edges2Prim.some(edge=>edgeIn1.v===edge.v&&edgeIn1.w===edge.w))},"findCommonEdges"),findNonClusterChild=__name((id,graph,clusterId)=>{const children=graph.children(id);if(log.trace("Searching children of id ",id,children),children.length<1)return id;let reserve;for(const child of children){const _id=findNonClusterChild(child,graph,clusterId),commonEdges=findCommonEdges(graph,clusterId,_id);if(_id){if(!(commonEdges.length>0))return _id;reserve=_id}}return reserve},"findNonClusterChild"),getAnchorId=__name(id=>clusterDb.has(id)&&clusterDb.get(id).externalConnections&&clusterDb.has(id)?clusterDb.get(id).id:id,"getAnchorId"),adjustClustersAndEdges=__name((graph,depth)=>{var _a;if(!graph||depth>10)log.debug("Opting out, no graph ");else{log.debug("Opting in, graph "),graph.nodes().forEach(function(id){graph.children(id).length>0&&(log.warn("Cluster identified",id," Replacement id in edges: ",findNonClusterChild(id,graph,id)),descendants.set(id,extractDescendants(id,graph)),clusterDb.set(id,{id:findNonClusterChild(id,graph,id),clusterData:graph.node(id)}))}),graph.nodes().forEach(function(id){const children=graph.children(id),edges=graph.edges();children.length>0?(log.debug("Cluster identified",id,descendants),edges.forEach(edge=>{isDescendant(edge.v,id)^isDescendant(edge.w,id)&&(log.warn("Edge: ",edge," leaves cluster ",id),log.warn("Descendants of XXX ",id,": ",descendants.get(id)),clusterDb.get(id).externalConnections=!0)})):log.debug("Not a cluster ",id,descendants)});for(let id of clusterDb.keys()){const nonClusterChild=clusterDb.get(id).id,parent=graph.parent(nonClusterChild);parent!==id&&clusterDb.has(parent)&&!clusterDb.get(parent).externalConnections&&(clusterDb.get(id).id=parent);const hasDirectOutgoingEdge=graph.edges().some(edge=>edge.v===id);if(nonClusterChild&&(null==(_a=clusterDb.get(id))?void 0:_a.externalConnections)&&hasDirectOutgoingEdge&&isNodeInExtractableCluster(graph,nonClusterChild,id)){const safeAnchor=findSafeAnchorNode(graph,id,graph.parent(nonClusterChild));safeAnchor&&(clusterDb.get(id).id=safeAnchor)}}graph.edges().forEach(function(e){const edge=graph.edge(e);log.warn("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(e)),log.warn("Edge "+e.v+" -> "+e.w+": "+JSON.stringify(graph.edge(e)));let v=e.v,w=e.w;if(log.warn("Fix XXX",clusterDb,"ids:",e.v,e.w,"Translating: ",clusterDb.get(e.v)," --- ",clusterDb.get(e.w)),clusterDb.get(e.v)||clusterDb.get(e.w)){if(log.warn("Fixing and trying - removing XXX",e.v,e.w,e.name),v=getAnchorId(e.v),w=getAnchorId(e.w),graph.removeEdge(e.v,e.w,e.name),v!==e.v){const parent=graph.parent(v);clusterDb.get(parent).externalConnections=!0,edge.fromCluster=e.v}if(w!==e.w){const parent=graph.parent(w);clusterDb.get(parent).externalConnections=!0,edge.toCluster=e.w}log.warn("Fix Replacing with XXX",v,w,e.name),graph.setEdge(v,w,edge,e.name)}}),log.warn("Adjusted Graph",write(graph)),extractor(graph,0),log.trace(clusterDb)}},"adjustClustersAndEdges"),extractor=__name((graph,depth)=>{var _a,_b,_c,_d;if(log.warn("extractor - ",depth,write(graph),graph.children("D")),depth>10)return void log.error("Bailing out");let nodes=graph.nodes(),hasChildren=!1;for(const node of nodes){const children=graph.children(node);hasChildren=hasChildren||children.length>0}if(hasChildren){log.debug("Nodes = ",nodes,depth);for(const node of nodes)if(log.debug("Extracting node",node,clusterDb,clusterDb.has(node)&&!clusterDb.get(node).externalConnections,!graph.parent(node),graph.node(node),graph.children("D")," Depth ",depth),clusterDb.has(node))if((null==(_b=null==(_a=clusterDb.get(node))?void 0:_a.clusterData)?void 0:_b.explicitDir)&&graph.children(node)&&graph.children(node).length>0){log.warn("Cluster with explicit dir, creating subgraph for children",node,depth);const dir=clusterDb.get(node).clusterData.dir,clusterGraph=new Graph({multigraph:!0,compound:!0}).setGraph({rankdir:dir,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});copy(node,graph,clusterGraph,node);const clusterNodeData=graph.node(node)||{};graph.setNode(node,{...clusterNodeData,clusterNode:!0,id:node,clusterData:clusterDb.get(node).clusterData,label:clusterDb.get(node).label,graph:clusterGraph}),log.warn("Subgraph for cluster with explicit dir created:",node,write(clusterGraph))}else if(!clusterDb.get(node).externalConnections&&graph.children(node)&&graph.children(node).length>0){log.warn("Cluster without external connections, without a parent and with children",node,depth);let dir="TB"===graph.graph().rankdir?"LR":"TB";(null==(_d=null==(_c=clusterDb.get(node))?void 0:_c.clusterData)?void 0:_d.dir)&&(dir=clusterDb.get(node).clusterData.dir,log.warn("Fixing dir",clusterDb.get(node).clusterData.dir,dir));const clusterGraph=new Graph({multigraph:!0,compound:!0}).setGraph({rankdir:dir,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});copy(node,graph,clusterGraph,node);const clusterNodeData=graph.node(node)||{};graph.setNode(node,{...clusterNodeData,clusterNode:!0,id:node,clusterData:clusterDb.get(node).clusterData,label:clusterDb.get(node).label,graph:clusterGraph}),log.debug("Old graph after copy",write(graph))}else log.warn("Cluster ** ",node," **not meeting the criteria !externalConnections:",!clusterDb.get(node).externalConnections," no parent: ",!graph.parent(node)," children ",graph.children(node)&&graph.children(node).length>0,graph.children("D"),depth),log.debug(clusterDb);else log.debug("Not a cluster",node,depth);nodes=graph.nodes(),log.warn("New list of nodes",nodes);for(const node of nodes){const data=graph.node(node);log.warn(" Now next level",node,data),(null==data?void 0:data.clusterNode)&&extractor(data.graph,depth+1)}}else log.debug("Done, no node has children",graph.nodes())},"extractor"),sorter=__name((graph,nodes)=>{if(0===nodes.length)return[];let result=Object.assign([],nodes);return nodes.forEach(node=>{const children=graph.children(node),sorted=sorter(graph,children);result=[...result,...sorted]}),result},"sorter"),sortNodesByHierarchy=__name(graph=>sorter(graph,graph.children()),"sortNodesByHierarchy"),isNodeInExtractableCluster=__name((graph,node,rootId)=>{let parent=graph.parent(node);for(;parent&&parent!==rootId;){const cluster=clusterDb.get(parent);if(cluster&&!cluster.externalConnections)return!0;parent=graph.parent(parent)}return!1},"isNodeInExtractableCluster"),findSafeAnchorNode=__name((graph,clusterId,excludedCluster)=>{const children=graph.children(clusterId)??[];for(const child of children){if(child===excludedCluster||isDescendant(child,excludedCluster))continue;const candidate=findNonClusterChild(child,graph,clusterId);if(candidate&&!isNodeInExtractableCluster(graph,candidate,clusterId))return candidate}return null},"findSafeAnchorNode");export{adjustClustersAndEdges as a,clusterDb as b,clear as c,findNonClusterChild as f,sortNodesByHierarchy as s,write as w};
@@ -0,0 +1 @@
1
+ var _a,_b;import{g as getIconStyles}from"./chunk-5VM5RSS4-DFhufY9o.js";import{g as getDiagramElement}from"./chunk-XXDRQBXY-BPj05P7g.js";import{s as setupViewPortForSVG}from"./chunk-VR4S4FIN-Bomuor1h.js";import{_ as __name,l as log,c as getConfig2,v as getRegisteredLayoutAlgorithm,x as render,y as utils_default,d as select,b as setAccTitle,a as getAccTitle,s as setAccDescription,g as getAccDescription,o as setDiagramTitle,p as getDiagramTitle,k as common_default,q as clear,r as getEdgeId,i as sanitizeText,a5 as parseGenericTypes}from"./mermaid.core-Cy9iVxov.js";import{f as createTooltip}from"./chunk-32BRIVSS-VNg3Ylzs.js";import{p as purify}from"./vendor-markdown-BN3QLsBu.js";var parser=function(){var o=__name(function(k,v,o2,l){for(o2=o2||{},l=k.length;l--;o2[k[l]]=v);return o2},"o"),$V0=[1,18],$V1=[1,19],$V2=[1,20],$V3=[1,41],$V4=[1,26],$V5=[1,42],$V6=[1,24],$V7=[1,25],$V8=[1,32],$V9=[1,33],$Va=[1,34],$Vb=[1,45],$Vc=[1,35],$Vd=[1,36],$Ve=[1,37],$Vf=[1,38],$Vg=[1,27],$Vh=[1,28],$Vi=[1,29],$Vj=[1,30],$Vk=[1,31],$Vl=[1,44],$Vm=[1,46],$Vn=[1,43],$Vo=[1,47],$Vp=[1,9],$Vq=[1,8,9],$Vr=[1,58],$Vs=[1,59],$Vt=[1,60],$Vu=[1,61],$Vv=[1,62],$Vw=[1,63],$Vx=[1,64],$Vy=[1,8,9,41],$Vz=[1,77],$VA=[1,8,9,12,13,22,39,41,44,46,68,69,70,71,72,73,74,79,81],$VB=[1,8,9,12,13,18,20,22,39,41,44,46,47,60,68,69,70,71,72,73,74,79,81,86,100,102,103],$VC=[13,60,86,100,102,103],$VD=[13,60,73,74,86,100,102,103],$VE=[13,60,68,69,70,71,72,86,100,102,103],$VF=[1,103],$VG=[1,121],$VH=[1,117],$VI=[1,113],$VJ=[1,119],$VK=[1,114],$VL=[1,115],$VM=[1,116],$VN=[1,118],$VO=[1,120],$VP=[22,50,60,61,82,86,87,88,89,90],$VQ=[1,128],$VR=[12,39],$VS=[1,8,9,39,41,44,46],$VT=[1,8,9,22],$VU=[1,153],$VV=[1,8,9,61],$VW=[1,8,9,22,50,60,61,82,86,87,88,89,90],parser2={trace:__name(function(){},"trace"),yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statements:5,graphConfig:6,CLASS_DIAGRAM:7,NEWLINE:8,EOF:9,statement:10,classLabel:11,SQS:12,STR:13,SQE:14,namespaceName:15,alphaNumToken:16,classLiteralName:17,DOT:18,className:19,GENERICTYPE:20,relationStatement:21,LABEL:22,namespaceStatement:23,classStatement:24,memberStatement:25,annotationStatement:26,clickStatement:27,styleStatement:28,cssClassStatement:29,noteStatement:30,classDefStatement:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,namespaceIdentifier:38,STRUCT_START:39,classStatements:40,STRUCT_STOP:41,NAMESPACE:42,classIdentifier:43,STYLE_SEPARATOR:44,members:45,ANNOTATION_START:46,ANNOTATION_END:47,CLASS:48,emptyBody:49,SPACE:50,MEMBER:51,SEPARATOR:52,relation:53,NOTE_FOR:54,noteText:55,NOTE:56,CLASSDEF:57,classList:58,stylesOpt:59,ALPHA:60,COMMA:61,direction_tb:62,direction_bt:63,direction_rl:64,direction_lr:65,relationType:66,lineType:67,AGGREGATION:68,EXTENSION:69,COMPOSITION:70,DEPENDENCY:71,LOLLIPOP:72,LINE:73,DOTTED_LINE:74,CALLBACK:75,LINK:76,LINK_TARGET:77,CLICK:78,CALLBACK_NAME:79,CALLBACK_ARGS:80,HREF:81,STYLE:82,CSSCLASS:83,style:84,styleComponent:85,NUM:86,COLON:87,UNIT:88,BRKT:89,PCT:90,commentToken:91,textToken:92,graphCodeTokens:93,textNoTagsToken:94,TAGSTART:95,TAGEND:96,"==":97,"--":98,DEFAULT:99,MINUS:100,keywords:101,UNICODE_TEXT:102,BQUOTE_STR:103,$accept:0,$end:1},terminals_:{2:"error",7:"CLASS_DIAGRAM",8:"NEWLINE",9:"EOF",12:"SQS",13:"STR",14:"SQE",18:"DOT",20:"GENERICTYPE",22:"LABEL",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",39:"STRUCT_START",41:"STRUCT_STOP",42:"NAMESPACE",44:"STYLE_SEPARATOR",46:"ANNOTATION_START",47:"ANNOTATION_END",48:"CLASS",50:"SPACE",51:"MEMBER",52:"SEPARATOR",54:"NOTE_FOR",56:"NOTE",57:"CLASSDEF",60:"ALPHA",61:"COMMA",62:"direction_tb",63:"direction_bt",64:"direction_rl",65:"direction_lr",68:"AGGREGATION",69:"EXTENSION",70:"COMPOSITION",71:"DEPENDENCY",72:"LOLLIPOP",73:"LINE",74:"DOTTED_LINE",75:"CALLBACK",76:"LINK",77:"LINK_TARGET",78:"CLICK",79:"CALLBACK_NAME",80:"CALLBACK_ARGS",81:"HREF",82:"STYLE",83:"CSSCLASS",86:"NUM",87:"COLON",88:"UNIT",89:"BRKT",90:"PCT",93:"graphCodeTokens",95:"TAGSTART",96:"TAGEND",97:"==",98:"--",99:"DEFAULT",100:"MINUS",101:"keywords",102:"UNICODE_TEXT",103:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[4,1],[6,4],[5,1],[5,2],[5,3],[11,3],[15,1],[15,1],[15,3],[15,2],[19,1],[19,3],[19,1],[19,2],[19,2],[19,2],[10,1],[10,2],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,1],[10,2],[10,2],[10,1],[23,4],[23,5],[38,2],[38,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[40,1],[40,2],[40,3],[24,1],[24,3],[24,4],[24,3],[24,6],[24,4],[24,7],[24,6],[43,2],[43,3],[49,0],[49,2],[49,2],[26,4],[45,1],[45,2],[25,1],[25,2],[25,1],[25,1],[21,3],[21,4],[21,4],[21,5],[30,3],[30,2],[31,3],[58,1],[58,3],[32,1],[32,1],[32,1],[32,1],[53,3],[53,2],[53,2],[53,1],[66,1],[66,1],[66,1],[66,1],[66,1],[67,1],[67,1],[27,3],[27,4],[27,3],[27,4],[27,4],[27,5],[27,3],[27,4],[27,4],[27,5],[27,4],[27,5],[27,5],[27,6],[28,3],[29,3],[59,1],[59,3],[84,1],[84,2],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[91,1],[91,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[92,1],[94,1],[94,1],[94,1],[94,1],[16,1],[16,1],[16,1],[16,1],[17,1],[55,1]],performAction:__name(function(yytext,yyleng,yylineno,yy,yystate,$$,_$){var $0=$$.length-1;switch(yystate){case 8:this.$=$$[$0-1];break;case 9:case 10:case 13:case 15:case 46:this.$=$$[$0];break;case 11:case 14:this.$=$$[$0-2]+"."+$$[$0];break;case 12:case 16:case 110:this.$=$$[$0-1]+$$[$0];break;case 17:case 18:this.$=$$[$0-1]+"~"+$$[$0]+"~";break;case 19:yy.addRelation($$[$0]);break;case 20:$$[$0-1].title=yy.cleanupLabel($$[$0]),yy.addRelation($$[$0-1]);break;case 31:this.$=$$[$0].trim(),yy.setAccTitle(this.$);break;case 32:case 33:this.$=$$[$0].trim(),yy.setAccDescription(this.$);break;case 34:yy.addClassesToNamespace($$[$0-3],$$[$0-1][0],$$[$0-1][1]),yy.popNamespace();break;case 35:yy.addClassesToNamespace($$[$0-4],$$[$0-1][0],$$[$0-1][1]),yy.popNamespace();break;case 36:this.$=yy.addNamespace($$[$0]);break;case 37:this.$=yy.addNamespace($$[$0-1],$$[$0]);break;case 38:this.$=[[$$[$0]],[]];break;case 39:this.$=[[$$[$0-1]],[]];break;case 40:$$[$0][0].unshift($$[$0-2]),this.$=$$[$0];break;case 41:this.$=[[],[$$[$0]]];break;case 42:this.$=[[],[$$[$0-1]]];break;case 43:$$[$0][1].unshift($$[$0-2]),this.$=$$[$0];break;case 44:case 45:this.$=[[],[]];break;case 48:yy.setCssClass($$[$0-2],$$[$0]);break;case 49:yy.addMembers($$[$0-3],$$[$0-1]);break;case 51:yy.setCssClass($$[$0-5],$$[$0-3]),yy.addMembers($$[$0-5],$$[$0-1]);break;case 52:yy.addAnnotation($$[$0-3],$$[$0-1]);break;case 53:yy.addAnnotation($$[$0-6],$$[$0-4]),yy.addMembers($$[$0-6],$$[$0-1]);break;case 54:yy.addAnnotation($$[$0-5],$$[$0-3]);break;case 55:this.$=$$[$0],yy.addClass($$[$0]);break;case 56:this.$=$$[$0-1],yy.addClass($$[$0-1]),yy.setClassLabel($$[$0-1],$$[$0]);break;case 60:yy.addAnnotation($$[$0],$$[$0-2]);break;case 61:case 74:case 107:this.$=[$$[$0]];break;case 62:$$[$0].push($$[$0-1]),this.$=$$[$0];break;case 63:case 65:case 66:break;case 64:yy.addMember($$[$0-1],yy.cleanupLabel($$[$0]));break;case 67:this.$={id1:$$[$0-2],id2:$$[$0],relation:$$[$0-1],relationTitle1:"none",relationTitle2:"none"};break;case 68:this.$={id1:$$[$0-3],id2:$$[$0],relation:$$[$0-1],relationTitle1:$$[$0-2],relationTitle2:"none"};break;case 69:this.$={id1:$$[$0-3],id2:$$[$0],relation:$$[$0-2],relationTitle1:"none",relationTitle2:$$[$0-1]};break;case 70:this.$={id1:$$[$0-4],id2:$$[$0],relation:$$[$0-2],relationTitle1:$$[$0-3],relationTitle2:$$[$0-1]};break;case 71:this.$=yy.addNote($$[$0],$$[$0-1]);break;case 72:this.$=yy.addNote($$[$0]);break;case 73:this.$=$$[$0-2],yy.defineClass($$[$0-1],$$[$0]);break;case 75:this.$=$$[$0-2].concat([$$[$0]]);break;case 76:yy.setDirection("TB");break;case 77:yy.setDirection("BT");break;case 78:yy.setDirection("RL");break;case 79:yy.setDirection("LR");break;case 80:this.$={type1:$$[$0-2],type2:$$[$0],lineType:$$[$0-1]};break;case 81:this.$={type1:"none",type2:$$[$0],lineType:$$[$0-1]};break;case 82:this.$={type1:$$[$0-1],type2:"none",lineType:$$[$0]};break;case 83:this.$={type1:"none",type2:"none",lineType:$$[$0]};break;case 84:this.$=yy.relationType.AGGREGATION;break;case 85:this.$=yy.relationType.EXTENSION;break;case 86:this.$=yy.relationType.COMPOSITION;break;case 87:this.$=yy.relationType.DEPENDENCY;break;case 88:this.$=yy.relationType.LOLLIPOP;break;case 89:this.$=yy.lineType.LINE;break;case 90:this.$=yy.lineType.DOTTED_LINE;break;case 91:case 97:this.$=$$[$0-2],yy.setClickEvent($$[$0-1],$$[$0]);break;case 92:case 98:this.$=$$[$0-3],yy.setClickEvent($$[$0-2],$$[$0-1]),yy.setTooltip($$[$0-2],$$[$0]);break;case 93:this.$=$$[$0-2],yy.setLink($$[$0-1],$$[$0]);break;case 94:this.$=$$[$0-3],yy.setLink($$[$0-2],$$[$0-1],$$[$0]);break;case 95:this.$=$$[$0-3],yy.setLink($$[$0-2],$$[$0-1]),yy.setTooltip($$[$0-2],$$[$0]);break;case 96:this.$=$$[$0-4],yy.setLink($$[$0-3],$$[$0-2],$$[$0]),yy.setTooltip($$[$0-3],$$[$0-1]);break;case 99:this.$=$$[$0-3],yy.setClickEvent($$[$0-2],$$[$0-1],$$[$0]);break;case 100:this.$=$$[$0-4],yy.setClickEvent($$[$0-3],$$[$0-2],$$[$0-1]),yy.setTooltip($$[$0-3],$$[$0]);break;case 101:this.$=$$[$0-3],yy.setLink($$[$0-2],$$[$0]);break;case 102:this.$=$$[$0-4],yy.setLink($$[$0-3],$$[$0-1],$$[$0]);break;case 103:this.$=$$[$0-4],yy.setLink($$[$0-3],$$[$0-1]),yy.setTooltip($$[$0-3],$$[$0]);break;case 104:this.$=$$[$0-5],yy.setLink($$[$0-4],$$[$0-2],$$[$0]),yy.setTooltip($$[$0-4],$$[$0-1]);break;case 105:this.$=$$[$0-2],yy.setCssStyle($$[$0-1],$$[$0]);break;case 106:yy.setCssClass($$[$0-1],$$[$0]);break;case 108:$$[$0-2].push($$[$0]),this.$=$$[$0-2]}},"anonymous"),table:[{3:1,4:2,5:3,6:4,7:[1,6],10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:$V0,35:$V1,37:$V2,38:22,42:$V3,43:23,46:$V4,48:$V5,51:$V6,52:$V7,54:$V8,56:$V9,57:$Va,60:$Vb,62:$Vc,63:$Vd,64:$Ve,65:$Vf,75:$Vg,76:$Vh,78:$Vi,82:$Vj,83:$Vk,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},o($Vp,[2,5],{8:[1,48]}),{8:[1,49]},o($Vq,[2,19],{22:[1,50]}),o($Vq,[2,21]),o($Vq,[2,22]),o($Vq,[2,23]),o($Vq,[2,24]),o($Vq,[2,25]),o($Vq,[2,26]),o($Vq,[2,27]),o($Vq,[2,28]),o($Vq,[2,29]),o($Vq,[2,30]),{34:[1,51]},{36:[1,52]},o($Vq,[2,33]),o($Vq,[2,63],{53:53,66:56,67:57,13:[1,54],22:[1,55],68:$Vr,69:$Vs,70:$Vt,71:$Vu,72:$Vv,73:$Vw,74:$Vx}),{39:[1,65]},o($Vy,[2,47],{39:[1,67],44:[1,66],46:[1,68]}),o($Vq,[2,65]),o($Vq,[2,66]),{16:69,60:$Vb,86:$Vl,100:$Vm,102:$Vn},{16:39,17:40,19:70,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{16:39,17:40,19:71,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{16:39,17:40,19:72,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{60:[1,73]},{13:[1,74]},{16:39,17:40,19:75,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{13:$Vz,55:76},{58:78,60:[1,79]},o($Vq,[2,76]),o($Vq,[2,77]),o($Vq,[2,78]),o($Vq,[2,79]),o($VA,[2,13],{16:39,17:40,19:81,18:[1,80],20:[1,82],60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo}),o($VA,[2,15],{20:[1,83]}),{15:84,16:85,17:86,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{16:39,17:40,19:87,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($VB,[2,133]),o($VB,[2,134]),o($VB,[2,135]),o($VB,[2,136]),o([1,8,9,12,13,20,22,39,41,44,46,68,69,70,71,72,73,74,79,81],[2,137]),o($Vp,[2,6],{10:5,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,19:21,38:22,43:23,16:39,17:40,5:88,33:$V0,35:$V1,37:$V2,42:$V3,46:$V4,48:$V5,51:$V6,52:$V7,54:$V8,56:$V9,57:$Va,60:$Vb,62:$Vc,63:$Vd,64:$Ve,65:$Vf,75:$Vg,76:$Vh,78:$Vi,82:$Vj,83:$Vk,86:$Vl,100:$Vm,102:$Vn,103:$Vo}),{5:89,10:5,16:39,17:40,19:21,21:7,23:8,24:9,25:10,26:11,27:12,28:13,29:14,30:15,31:16,32:17,33:$V0,35:$V1,37:$V2,38:22,42:$V3,43:23,46:$V4,48:$V5,51:$V6,52:$V7,54:$V8,56:$V9,57:$Va,60:$Vb,62:$Vc,63:$Vd,64:$Ve,65:$Vf,75:$Vg,76:$Vh,78:$Vi,82:$Vj,83:$Vk,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($Vq,[2,20]),o($Vq,[2,31]),o($Vq,[2,32]),{13:[1,91],16:39,17:40,19:90,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{53:92,66:56,67:57,68:$Vr,69:$Vs,70:$Vt,71:$Vu,72:$Vv,73:$Vw,74:$Vx},o($Vq,[2,64]),{67:93,73:$Vw,74:$Vx},o($VC,[2,83],{66:94,68:$Vr,69:$Vs,70:$Vt,71:$Vu,72:$Vv}),o($VD,[2,84]),o($VD,[2,85]),o($VD,[2,86]),o($VD,[2,87]),o($VD,[2,88]),o($VE,[2,89]),o($VE,[2,90]),{8:[1,96],23:99,24:97,30:98,38:22,40:95,42:$V3,43:23,48:$V5,54:$V8,56:$V9},{16:100,60:$Vb,86:$Vl,100:$Vm,102:$Vn},{41:[1,102],45:101,51:$VF},{16:104,60:$Vb,86:$Vl,100:$Vm,102:$Vn},{47:[1,105]},{13:[1,106]},{13:[1,107]},{79:[1,108],81:[1,109]},{22:$VG,50:$VH,59:110,60:$VI,82:$VJ,84:111,85:112,86:$VK,87:$VL,88:$VM,89:$VN,90:$VO},{60:[1,122]},{13:$Vz,55:123},o($Vy,[2,72]),o($Vy,[2,138]),{22:$VG,50:$VH,59:124,60:$VI,61:[1,125],82:$VJ,84:111,85:112,86:$VK,87:$VL,88:$VM,89:$VN,90:$VO},o($VP,[2,74]),{16:39,17:40,19:126,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($VA,[2,16]),o($VA,[2,17]),o($VA,[2,18]),{11:127,12:$VQ,39:[2,36]},o($VR,[2,9],{16:85,17:86,15:130,18:[1,129],60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo}),o($VR,[2,10]),o($VS,[2,55],{11:131,12:$VQ}),o($Vp,[2,7]),{9:[1,132]},o($VT,[2,67]),{16:39,17:40,19:133,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},{13:[1,135],16:39,17:40,19:134,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($VC,[2,82],{66:136,68:$Vr,69:$Vs,70:$Vt,71:$Vu,72:$Vv}),o($VC,[2,81]),{41:[1,137]},{23:99,24:97,30:98,38:22,40:138,42:$V3,43:23,48:$V5,54:$V8,56:$V9},{8:[1,139],41:[2,38]},{8:[1,140],41:[2,41]},{8:[1,141],41:[2,44]},o($Vy,[2,48],{39:[1,142]}),{41:[1,143]},o($Vy,[2,50]),{41:[2,61],45:144,51:$VF},{47:[1,145]},{16:39,17:40,19:146,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($Vq,[2,91],{13:[1,147]}),o($Vq,[2,93],{13:[1,149],77:[1,148]}),o($Vq,[2,97],{13:[1,150],80:[1,151]}),{13:[1,152]},o($Vq,[2,105],{61:$VU}),o($VV,[2,107],{85:154,22:$VG,50:$VH,60:$VI,82:$VJ,86:$VK,87:$VL,88:$VM,89:$VN,90:$VO}),o($VW,[2,109]),o($VW,[2,111]),o($VW,[2,112]),o($VW,[2,113]),o($VW,[2,114]),o($VW,[2,115]),o($VW,[2,116]),o($VW,[2,117]),o($VW,[2,118]),o($VW,[2,119]),o($Vq,[2,106]),o($Vy,[2,71]),o($Vq,[2,73],{61:$VU}),{60:[1,155]},o($VA,[2,14]),{39:[2,37]},{13:[1,156]},{15:157,16:85,17:86,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($VR,[2,12]),o($VS,[2,56]),{1:[2,4]},o($VT,[2,69]),o($VT,[2,68]),{16:39,17:40,19:158,60:$Vb,86:$Vl,100:$Vm,102:$Vn,103:$Vo},o($VC,[2,80]),o($Vy,[2,34]),{41:[1,159]},{23:99,24:97,30:98,38:22,40:160,41:[2,39],42:$V3,43:23,48:$V5,54:$V8,56:$V9},{23:99,24:97,30:98,38:22,40:161,41:[2,42],42:$V3,43:23,48:$V5,54:$V8,56:$V9},{23:99,24:97,30:98,38:22,40:162,41:[2,45],42:$V3,43:23,48:$V5,54:$V8,56:$V9},{45:163,51:$VF},o($Vy,[2,49]),{41:[2,62]},o($Vy,[2,52],{39:[1,164]}),o($Vq,[2,60]),o($Vq,[2,92]),o($Vq,[2,94]),o($Vq,[2,95],{77:[1,165]}),o($Vq,[2,98]),o($Vq,[2,99],{13:[1,166]}),o($Vq,[2,101],{13:[1,168],77:[1,167]}),{22:$VG,50:$VH,60:$VI,82:$VJ,84:169,85:112,86:$VK,87:$VL,88:$VM,89:$VN,90:$VO},o($VW,[2,110]),o($VP,[2,75]),{14:[1,170]},o($VR,[2,11]),o($VT,[2,70]),o($Vy,[2,35]),{41:[2,40]},{41:[2,43]},{41:[2,46]},{41:[1,171]},{41:[1,173],45:172,51:$VF},o($Vq,[2,96]),o($Vq,[2,100]),o($Vq,[2,102]),o($Vq,[2,103],{77:[1,174]}),o($VV,[2,108],{85:154,22:$VG,50:$VH,60:$VI,82:$VJ,86:$VK,87:$VL,88:$VM,89:$VN,90:$VO}),o($VS,[2,8]),o($Vy,[2,51]),{41:[1,175]},o($Vy,[2,54]),o($Vq,[2,104]),o($Vy,[2,53])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],127:[2,37],132:[2,4],144:[2,62],160:[2,40],161:[2,43],162:[2,46]},parseError:__name(function(str,hash){if(!hash.recoverable){var error=new Error(str);throw error.hash=hash,error}this.trace(str)},"parseError"),parse:__name(function(input){var self=this,stack=[0],tstack=[],vstack=[null],lstack=[],table=this.table,yytext="",yylineno=0,yyleng=0,args=lstack.slice.call(arguments,1),lexer2=Object.create(this.lexer),sharedState={yy:{}};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(sharedState.yy[k]=this.yy[k]);lexer2.setInput(input,sharedState.yy),sharedState.yy.lexer=lexer2,sharedState.yy.parser=this,void 0===lexer2.yylloc&&(lexer2.yylloc={});var yyloc=lexer2.yylloc;lstack.push(yyloc);var ranges=lexer2.options&&lexer2.options.ranges;function lex(){var token;return"number"!=typeof(token=tstack.pop()||lexer2.lex()||1)&&(token instanceof Array&&(token=(tstack=token).pop()),token=self.symbols_[token]||token),token}"function"==typeof sharedState.yy.parseError?this.parseError=sharedState.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError,__name(function(n){stack.length=stack.length-2*n,vstack.length=vstack.length-n,lstack.length=lstack.length-n},"popStack"),__name(lex,"lex");for(var symbol,state,action,r,p,len,newState,expected,yyval={};;){if(state=stack[stack.length-1],this.defaultActions[state]?action=this.defaultActions[state]:(null==symbol&&(symbol=lex()),action=table[state]&&table[state][symbol]),void 0===action||!action.length||!action[0]){var errStr="";for(p in expected=[],table[state])this.terminals_[p]&&p>2&&expected.push("'"+this.terminals_[p]+"'");errStr=lexer2.showPosition?"Parse error on line "+(yylineno+1)+":\n"+lexer2.showPosition()+"\nExpecting "+expected.join(", ")+", got '"+(this.terminals_[symbol]||symbol)+"'":"Parse error on line "+(yylineno+1)+": Unexpected "+(1==symbol?"end of input":"'"+(this.terminals_[symbol]||symbol)+"'"),this.parseError(errStr,{text:lexer2.match,token:this.terminals_[symbol]||symbol,line:lexer2.yylineno,loc:yyloc,expected:expected})}if(action[0]instanceof Array&&action.length>1)throw new Error("Parse Error: multiple actions possible at state: "+state+", token: "+symbol);switch(action[0]){case 1:stack.push(symbol),vstack.push(lexer2.yytext),lstack.push(lexer2.yylloc),stack.push(action[1]),symbol=null,yyleng=lexer2.yyleng,yytext=lexer2.yytext,yylineno=lexer2.yylineno,yyloc=lexer2.yylloc;break;case 2:if(len=this.productions_[action[1]][1],yyval.$=vstack[vstack.length-len],yyval._$={first_line:lstack[lstack.length-(len||1)].first_line,last_line:lstack[lstack.length-1].last_line,first_column:lstack[lstack.length-(len||1)].first_column,last_column:lstack[lstack.length-1].last_column},ranges&&(yyval._$.range=[lstack[lstack.length-(len||1)].range[0],lstack[lstack.length-1].range[1]]),void 0!==(r=this.performAction.apply(yyval,[yytext,yyleng,yylineno,sharedState.yy,action[1],vstack,lstack].concat(args))))return r;len&&(stack=stack.slice(0,-1*len*2),vstack=vstack.slice(0,-1*len),lstack=lstack.slice(0,-1*len)),stack.push(this.productions_[action[1]][0]),vstack.push(yyval.$),lstack.push(yyval._$),newState=table[stack[stack.length-2]][stack[stack.length-1]],stack.push(newState);break;case 3:return!0}}return!0},"parse")},lexer=function(){return{EOF:1,parseError:__name(function(str,hash){if(!this.yy.parser)throw new Error(str);this.yy.parser.parseError(str,hash)},"parseError"),setInput:__name(function(input,yy){return this.yy=yy||this.yy||{},this._input=input,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:__name(function(){var ch=this._input[0];return this.yytext+=ch,this.yyleng++,this.offset++,this.match+=ch,this.matched+=ch,ch.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),ch},"input"),unput:__name(function(ch){var len=ch.length,lines=ch.split(/(?:\r\n?|\n)/g);this._input=ch+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-len),this.offset-=len;var oldLines=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),lines.length-1&&(this.yylineno-=lines.length-1);var r=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:lines?(lines.length===oldLines.length?this.yylloc.first_column:0)+oldLines[oldLines.length-lines.length].length-lines[0].length:this.yylloc.first_column-len},this.options.ranges&&(this.yylloc.range=[r[0],r[0]+this.yyleng-len]),this.yyleng=this.yytext.length,this},"unput"),more:__name(function(){return this._more=!0,this},"more"),reject:__name(function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"reject"),less:__name(function(n){this.unput(this.match.slice(n))},"less"),pastInput:__name(function(){var past=this.matched.substr(0,this.matched.length-this.match.length);return(past.length>20?"...":"")+past.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:__name(function(){var next=this.match;return next.length<20&&(next+=this._input.substr(0,20-next.length)),(next.substr(0,20)+(next.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:__name(function(){var pre=this.pastInput(),c=new Array(pre.length+1).join("-");return pre+this.upcomingInput()+"\n"+c+"^"},"showPosition"),test_match:__name(function(match,indexed_rule){var token,lines,backup;if(this.options.backtrack_lexer&&(backup={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(backup.yylloc.range=this.yylloc.range.slice(0))),(lines=match[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=lines.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:lines?lines[lines.length-1].length-lines[lines.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+match[0].length},this.yytext+=match[0],this.match+=match[0],this.matches=match,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(match[0].length),this.matched+=match[0],token=this.performAction.call(this,this.yy,this,indexed_rule,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),token)return token;if(this._backtrack){for(var k in backup)this[k]=backup[k];return!1}return!1},"test_match"),next:__name(function(){if(this.done)return this.EOF;var token,match,tempMatch,index;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var rules=this._currentRules(),i=0;i<rules.length;i++)if((tempMatch=this._input.match(this.rules[rules[i]]))&&(!match||tempMatch[0].length>match[0].length)){if(match=tempMatch,index=i,this.options.backtrack_lexer){if(!1!==(token=this.test_match(tempMatch,rules[i])))return token;if(this._backtrack){match=!1;continue}return!1}if(!this.options.flex)break}return match?!1!==(token=this.test_match(match,rules[index]))&&token:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:__name(function(){var r=this.next();return r||this.lex()},"lex"),begin:__name(function(condition){this.conditionStack.push(condition)},"begin"),popState:__name(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:__name(function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},"_currentRules"),topState:__name(function(n){return(n=this.conditionStack.length-1-Math.abs(n||0))>=0?this.conditionStack[n]:"INITIAL"},"topState"),pushState:__name(function(condition){this.begin(condition)},"pushState"),stateStackSize:__name(function(){return this.conditionStack.length},"stateStackSize"),options:{},performAction:__name(function(yy,yy_,$avoiding_name_collisions,YY_START){switch($avoiding_name_collisions){case 0:return 62;case 1:return 63;case 2:return 64;case 3:return 65;case 4:case 5:case 14:case 31:case 37:case 41:case 48:break;case 6:return this.begin("acc_title"),33;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),35;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:case 19:case 22:case 24:case 59:case 62:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:case 36:return 8;case 15:case 16:return 7;case 17:case 38:case 46:return"EDGE_STATE";case 18:this.begin("callback_name");break;case 20:this.popState(),this.begin("callback_args");break;case 21:return 79;case 23:return 80;case 25:return"STR";case 26:this.begin("string");break;case 27:return 82;case 28:return 57;case 29:return this.begin("namespace"),42;case 30:case 40:return this.popState(),8;case 32:return this.begin("namespace-body"),39;case 33:this.popState(),this.less(0);break;case 34:case 44:return this.popState(),41;case 35:case 45:return"EOF_IN_STRUCT";case 39:return this.begin("class"),48;case 42:return this.popState(),this.popState(),41;case 43:return this.begin("class-body"),39;case 47:return"OPEN_IN_STRUCT";case 49:return"MEMBER";case 50:return 83;case 51:return 75;case 52:return 76;case 53:return 78;case 54:return 54;case 55:return 56;case 56:return 46;case 57:return 47;case 58:return 81;case 60:return"GENERICTYPE";case 61:this.begin("generic");break;case 63:return"BQUOTE_STR";case 64:this.begin("bqstring");break;case 65:case 66:case 67:case 68:return 77;case 69:case 70:return 69;case 71:case 72:return 71;case 73:return 70;case 74:return 68;case 75:return 72;case 76:return 73;case 77:return 74;case 78:return 22;case 79:return 44;case 80:return 100;case 81:return 18;case 82:return"PLUS";case 83:return 87;case 84:return 61;case 85:case 86:return 89;case 87:return 90;case 88:case 89:return"EQUALS";case 90:return 60;case 91:return 12;case 92:return 14;case 93:return"PUNCTUATION";case 94:return 86;case 95:return 102;case 96:case 97:return 50;case 98:return 9}},"anonymous"),rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:\[\*\])/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:["])/,/^(?:[^"]*)/,/^(?:["])/,/^(?:style\b)/,/^(?:classDef\b)/,/^(?:namespace\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[{])/,/^(?:[}])/,/^(?:[}])/,/^(?:$)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:\[\*\])/,/^(?:class\b)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:[}])/,/^(?:[{])/,/^(?:[}])/,/^(?:$)/,/^(?:\[\*\])/,/^(?:[{])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:href\b)/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:~)/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:[`])/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?::)/,/^(?:,)/,/^(?:#)/,/^(?:#)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:\[)/,/^(?:\])/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:\s)/,/^(?:$)/],conditions:{"namespace-body":{rules:[26,29,34,35,36,37,38,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},namespace:{rules:[26,29,30,31,32,33,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},"class-body":{rules:[26,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},class:{rules:[26,40,41,42,43,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr_multiline:{rules:[11,12,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_descr:{rules:[9,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},acc_title:{rules:[7,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_args:{rules:[22,23,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},callback_name:{rules:[19,20,21,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},href:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},struct:{rules:[26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},generic:{rules:[26,50,51,52,53,54,55,56,57,58,59,60,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},bqstring:{rules:[26,50,51,52,53,54,55,56,57,58,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},string:{rules:[24,25,26,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,87,88,89,90,91,92,93,94,95,96,98],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,26,27,28,29,39,50,51,52,53,54,55,56,57,58,61,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98],inclusive:!0}}}}();function Parser(){this.yy={}}return parser2.lexer=lexer,__name(Parser,"Parser"),Parser.prototype=parser2,parser2.Parser=Parser,new Parser}();parser.parser=parser;var classDiagram_default=parser,visibilityValues=["#","+","~","-",""],ClassMember=(__name(_a=class{constructor(input,memberType){this.memberType=memberType,this.visibility="",this.classifier="",this.text="";const sanitizedInput=sanitizeText(input,getConfig2());this.parseMember(sanitizedInput)}getDisplayDetails(){let displayText=this.visibility+parseGenericTypes(this.id);"method"===this.memberType&&(displayText+=`(${parseGenericTypes(this.parameters.trim())})`,this.returnType&&(displayText+=" : "+parseGenericTypes(this.returnType))),displayText=displayText.trim();return{displayText:displayText,cssStyle:this.parseClassifier()}}parseMember(input){let potentialClassifier="";if("method"===this.memberType){const match=/([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(input);if(match){const detectedVisibility=match[1]?match[1].trim():"";if(visibilityValues.includes(detectedVisibility)&&(this.visibility=detectedVisibility),this.id=match[2],this.parameters=match[3]?match[3].trim():"",potentialClassifier=match[4]?match[4].trim():"",this.returnType=match[5]?match[5].trim():"",""===potentialClassifier){const lastChar=this.returnType.substring(this.returnType.length-1);/[$*]/.exec(lastChar)&&(potentialClassifier=lastChar,this.returnType=this.returnType.substring(0,this.returnType.length-1))}}}else{const length=input.length,firstChar=input.substring(0,1),lastChar=input.substring(length-1);visibilityValues.includes(firstChar)&&(this.visibility=firstChar),/[$*]/.exec(lastChar)&&(potentialClassifier=lastChar),this.id=input.substring(""===this.visibility?0:1,""===potentialClassifier?length:length-1)}this.classifier=potentialClassifier,this.id=this.id.startsWith(" ")?" "+this.id.trim():this.id.trim();const combinedText=`${this.visibility?"\\"+this.visibility:""}${parseGenericTypes(this.id)}${"method"===this.memberType?`(${parseGenericTypes(this.parameters)})${this.returnType?" : "+parseGenericTypes(this.returnType):""}`:""}`;this.text=combinedText.replaceAll("<","&lt;").replaceAll(">","&gt;"),this.text.startsWith("\\&lt;")&&(this.text=this.text.replace("\\&lt;","~"))}parseClassifier(){switch(this.classifier){case"*":return"font-style:italic;";case"$":return"text-decoration:underline;";default:return""}}},"ClassMember"),_a),classCounter=0,sanitizeText2=__name(txt=>common_default.sanitizeText(txt,getConfig2()),"sanitizeText"),ClassDB=(__name(_b=class{constructor(){this.relations=[],this.classes=new Map,this.styleClasses=new Map,this.notes=new Map,this.interfaces=[],this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.functions=[],this.lineType={LINE:0,DOTTED_LINE:1},this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3,LOLLIPOP:4},this.setupToolTips=__name(element=>{const tooltipElem=createTooltip();select(element).select("svg").selectAll("g").filter(function(){return null!==select(this).attr("title")}).on("mouseover",event=>{const el=select(event.currentTarget),title=el.attr("title");if(!title)return;const rect=event.currentTarget.getBoundingClientRect();tooltipElem.transition().duration(200).style("opacity",".9"),tooltipElem.html(purify.sanitize(title)).style("left",`${window.scrollX+rect.left+rect.width/2}px`).style("top",`${window.scrollY+rect.bottom+4}px`),el.classed("hover",!0)}).on("mouseout",event=>{tooltipElem.transition().duration(500).style("opacity",0),select(event.currentTarget).classed("hover",!1)})},"setupToolTips"),this.direction="TB",this.setAccTitle=setAccTitle,this.getAccTitle=getAccTitle,this.setAccDescription=setAccDescription,this.getAccDescription=getAccDescription,this.setDiagramTitle=setDiagramTitle,this.getDiagramTitle=getDiagramTitle,this.getConfig=__name(()=>getConfig2().class,"getConfig"),this.functions.push(this.setupToolTips.bind(this)),this.clear(),this.addRelation=this.addRelation.bind(this),this.addClassesToNamespace=this.addClassesToNamespace.bind(this),this.addNamespace=this.addNamespace.bind(this),this.popNamespace=this.popNamespace.bind(this),this.setCssClass=this.setCssClass.bind(this),this.addMembers=this.addMembers.bind(this),this.addClass=this.addClass.bind(this),this.setClassLabel=this.setClassLabel.bind(this),this.addAnnotation=this.addAnnotation.bind(this),this.addMember=this.addMember.bind(this),this.cleanupLabel=this.cleanupLabel.bind(this),this.addNote=this.addNote.bind(this),this.defineClass=this.defineClass.bind(this),this.setDirection=this.setDirection.bind(this),this.setLink=this.setLink.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.clear=this.clear.bind(this),this.setTooltip=this.setTooltip.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setCssStyle=this.setCssStyle.bind(this)}splitClassNameAndType(_id){const id=common_default.sanitizeText(_id,getConfig2());let genericType="",className=id;if(id.indexOf("~")>0){const split=id.split("~");className=sanitizeText2(split[0]),genericType=sanitizeText2(split[1])}return{className:className,type:genericType}}setClassLabel(_id,label){const id=common_default.sanitizeText(_id,getConfig2());label&&(label=sanitizeText2(label));const{className:className}=this.splitClassNameAndType(id);this.classes.get(className).label=label,this.classes.get(className).text=`${label}${this.classes.get(className).type?`<${this.classes.get(className).type}>`:""}`}addClass(_id){const id=common_default.sanitizeText(_id,getConfig2()),{className:className,type:type}=this.splitClassNameAndType(id);if(this.classes.has(className))return;const name=common_default.sanitizeText(className,getConfig2());this.classes.set(name,{id:name,type:type,label:name,text:`${name}${type?`&lt;${type}&gt;`:""}`,shape:"classBox",cssClasses:"default",methods:[],members:[],annotations:[],styles:[],domId:"classId-"+name+"-"+classCounter}),classCounter++}addInterface(label,classId){const classInterface={id:`interface${this.interfaces.length}`,label:label,classId:classId};this.interfaces.push(classInterface)}setDiagramId(svgElementId){this.diagramId=svgElementId}lookUpDomId(_id){const id=common_default.sanitizeText(_id,getConfig2());if(this.classes.has(id)){const domId=this.classes.get(id).domId;return this.diagramId?`${this.diagramId}-${domId}`:domId}throw new Error("Class not found: "+id)}clear(){this.relations=[],this.classes=new Map,this.notes=new Map,this.interfaces=[],this.functions=[],this.functions.push(this.setupToolTips.bind(this)),this.namespaces=new Map,this.namespaceCounter=0,this.namespaceStack=[],this.diagramId="",this.direction="TB",clear()}getClass(id){return this.classes.get(id)}getClasses(){return this.classes}getRelations(){return this.relations}getNote(id){const key="number"==typeof id?`note${id}`:id;return this.notes.get(key)}getNotes(){return this.notes}addRelation(classRelation){log.debug("Adding relation: "+JSON.stringify(classRelation));const invalidTypes=[this.relationType.LOLLIPOP,this.relationType.AGGREGATION,this.relationType.COMPOSITION,this.relationType.DEPENDENCY,this.relationType.EXTENSION];classRelation.relation.type1!==this.relationType.LOLLIPOP||invalidTypes.includes(classRelation.relation.type2)?classRelation.relation.type2!==this.relationType.LOLLIPOP||invalidTypes.includes(classRelation.relation.type1)?(this.addClass(classRelation.id1),this.addClass(classRelation.id2)):(this.addClass(classRelation.id1),this.addInterface(classRelation.id2,classRelation.id1),classRelation.id2="interface"+(this.interfaces.length-1)):(this.addClass(classRelation.id2),this.addInterface(classRelation.id1,classRelation.id2),classRelation.id1="interface"+(this.interfaces.length-1)),classRelation.id1=this.splitClassNameAndType(classRelation.id1).className,classRelation.id2=this.splitClassNameAndType(classRelation.id2).className,classRelation.relationTitle1=common_default.sanitizeText(classRelation.relationTitle1.trim(),getConfig2()),classRelation.relationTitle2=common_default.sanitizeText(classRelation.relationTitle2.trim(),getConfig2()),this.relations.push(classRelation)}addAnnotation(className,annotation){const validatedClassName=this.splitClassNameAndType(className).className;this.classes.get(validatedClassName).annotations.push(annotation)}addMember(className,member){this.addClass(className);const validatedClassName=this.splitClassNameAndType(className).className,theClass=this.classes.get(validatedClassName);if("string"==typeof member){const memberString=member.trim();memberString.startsWith("<<")&&memberString.endsWith(">>")?theClass.annotations.push(sanitizeText2(memberString.substring(2,memberString.length-2))):memberString.indexOf(")")>0?theClass.methods.push(new ClassMember(memberString,"method")):memberString&&theClass.members.push(new ClassMember(memberString,"attribute"))}}addMembers(className,members){Array.isArray(members)&&(members.reverse(),members.forEach(member=>this.addMember(className,member)))}addNote(text,className){const index=this.notes.size,note={id:`note${index}`,class:className,text:text,index:index};return this.notes.set(note.id,note),note.id}cleanupLabel(label){return label.startsWith(":")&&(label=label.substring(1)),sanitizeText2(label.trim())}setCssClass(ids,className){ids.split(",").forEach(_id=>{let id=_id;/\d/.exec(_id[0])&&(id="classId-"+id),id=this.splitClassNameAndType(id).className;const classNode=this.classes.get(id);classNode&&(classNode.cssClasses+=" "+className)})}defineClass(ids,style){for(const id of ids){let styleClass=this.styleClasses.get(id);void 0===styleClass&&(styleClass={id:id,styles:[],textStyles:[]},this.styleClasses.set(id,styleClass)),style&&style.forEach(s=>{if(/color/.exec(s)){const newStyle=s.replace("fill","bgFill");styleClass.textStyles.push(newStyle)}styleClass.styles.push(s)}),this.classes.forEach(value=>{value.cssClasses.includes(id)&&value.styles.push(...style.flatMap(s=>s.split(",")))})}}setTooltip(ids,tooltip){ids.split(",").forEach(id=>{if(void 0!==tooltip){const className=this.splitClassNameAndType(id).className,classNode=this.classes.get(className);classNode&&(classNode.tooltip=sanitizeText2(tooltip))}})}getTooltip(id,namespace){return namespace&&this.namespaces.has(namespace)?this.namespaces.get(namespace).classes.get(id).tooltip:this.classes.get(id).tooltip}setLink(ids,linkStr,target){const config=getConfig2();ids.split(",").forEach(_id=>{let id=_id;/\d/.exec(_id[0])&&(id="classId-"+id),id=this.splitClassNameAndType(id).className;const theClass=this.classes.get(id);theClass&&(theClass.link=utils_default.formatUrl(linkStr,config),"sandbox"===config.securityLevel?theClass.linkTarget="_top":theClass.linkTarget="string"==typeof target?sanitizeText2(target):"_blank")}),this.setCssClass(ids,"clickable")}setClickEvent(ids,functionName,functionArgs){ids.split(",").forEach(id=>{this.setClickFunc(id,functionName,functionArgs);const className=this.splitClassNameAndType(id).className,classNode=this.classes.get(className);classNode&&(classNode.haveCallback=!0)}),this.setCssClass(ids,"clickable")}setClickFunc(_domId,functionName,functionArgs){const domId=common_default.sanitizeText(_domId,getConfig2());if("loose"!==getConfig2().securityLevel)return;if(void 0===functionName)return;const id=this.splitClassNameAndType(domId).className;if(this.classes.has(id)){let argList=[];if("string"==typeof functionArgs){argList=functionArgs.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let i=0;i<argList.length;i++){let item=argList[i].trim();item.startsWith('"')&&item.endsWith('"')&&(item=item.substr(1,item.length-2)),argList[i]=item}}0===argList.length&&argList.push(id),this.functions.push(()=>{const elemId=this.lookUpDomId(id),elem=document.querySelector(`[id="${elemId}"]`);null!==elem&&elem.addEventListener("click",()=>{utils_default.runFunc(functionName,...argList)},!1)})}}bindFunctions(element){this.functions.forEach(fun=>{fun(element)})}escapeHtml(str){return str.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}getDirection(){return this.direction}setDirection(dir){this.direction=dir}static resolveQualifiedId(id,stack){const prefix=stack.at(-1);return prefix?`${prefix}.${id}`:id}static getAncestorIds(qualifiedId){const parts=qualifiedId.split("."),ids=new Array(parts.length);ids[0]=parts[0];for(let i=1;i<parts.length;i++)ids[i]=`${ids[i-1]}.${parts[i]}`;return ids}createNamespaceNode(id,label,parentId,explicit=!1){return{id:id,label:label,classes:new Map,notes:new Map,children:new Map,domId:"classId-"+id+"-"+this.namespaceCounter++,parent:parentId,explicit:explicit}}linkParentChild(parentId,childId){const parent=this.namespaces.get(parentId),child=this.namespaces.get(childId);parent&&child&&(parent.children.has(childId)||parent.children.set(childId,child),child.parent??(child.parent=parentId))}addNamespace(id,label){const qualifiedId=_b.resolveQualifiedId(id,this.namespaceStack);if(this.namespaceStack.push(qualifiedId),this.namespaces.has(qualifiedId)){const existing=this.namespaces.get(qualifiedId);return existing.explicit=!0,label&&(existing.label=label),qualifiedId}const parts=qualifiedId.split("."),ancestorIds=_b.getAncestorIds(qualifiedId);for(let i=0;i<ancestorIds.length;i++){const currentId=ancestorIds[i],parentId=i>0?ancestorIds[i-1]:void 0,isLeaf=i===ancestorIds.length-1,nodeLabel=isLeaf&&label?label:parts[i];this.namespaces.has(currentId)?isLeaf&&(this.namespaces.get(currentId).explicit=!0):this.namespaces.set(currentId,this.createNamespaceNode(currentId,nodeLabel,parentId,isLeaf)),parentId&&this.linkParentChild(parentId,currentId)}return qualifiedId}popNamespace(){this.namespaceStack.pop()}getNamespace(name){return this.namespaces.get(name)}getNamespaces(){return this.namespaces}addClassesToNamespace(id,classNames,noteNames){if(this.namespaces.has(id)){for(const name of classNames){const{className:className}=this.splitClassNameAndType(name),classNode=this.getClass(className);classNode.parent=id,this.namespaces.get(id).classes.set(className,classNode)}for(const noteName of noteNames){const noteNode=this.getNote(noteName);noteNode.parent=id,this.namespaces.get(id).notes.set(noteName,noteNode)}}}setCssStyle(id,styles){const thisClass=this.classes.get(id);if(styles&&thisClass)for(const s of styles)s.includes(",")?thisClass.styles.push(...s.split(",")):thisClass.styles.push(s)}getArrowMarker(type){let marker;switch(type){case 0:marker="aggregation";break;case 1:marker="extension";break;case 2:marker="composition";break;case 3:marker="dependency";break;case 4:marker="lollipop";break;default:marker="none"}return marker}resolveExplicitAncestor(id){let current=id;for(;current;){const ns=this.namespaces.get(current);if(!ns)return;if(ns.explicit)return current;current=ns.parent}}getData(){var _a2,_b2;const nodes=[],edges=[],config=getConfig2(),hierarchical=(null==(_a2=config.class)?void 0:_a2.hierarchicalNamespaces)??!0;for(const namespace of this.namespaces.values()){if(!hierarchical&&!namespace.explicit)continue;const node={id:namespace.id,label:hierarchical?namespace.label:namespace.id,isGroup:!0,padding:config.class.padding??16,shape:"rect",cssStyles:[],look:config.look,parentId:hierarchical?namespace.parent:void 0};nodes.push(node)}for(const classNode of this.classes.values()){const parentId=hierarchical?classNode.parent:this.resolveExplicitAncestor(classNode.parent),node={...classNode,type:void 0,isGroup:!1,parentId:parentId,look:config.look};nodes.push(node)}for(const note of this.notes.values()){const noteParentId=hierarchical?note.parent:this.resolveExplicitAncestor(note.parent),noteNode={id:note.id,label:note.text,isGroup:!1,shape:"note",padding:config.class.padding??6,cssStyles:["text-align: left","white-space: nowrap",`fill: ${config.themeVariables.noteBkgColor}`,`stroke: ${config.themeVariables.noteBorderColor}`],look:config.look,parentId:noteParentId,labelType:"markdown"};nodes.push(noteNode);const noteClassId=null==(_b2=this.classes.get(note.class))?void 0:_b2.id;if(noteClassId){const edge={id:`edgeNote${note.index}`,start:note.id,end:noteClassId,type:"normal",thickness:"normal",classes:"relation",arrowTypeStart:"none",arrowTypeEnd:"none",arrowheadStyle:"",labelStyle:[""],style:["fill: none"],pattern:"dotted",look:config.look};edges.push(edge)}}for(const _interface of this.interfaces){const interfaceNode={id:_interface.id,label:_interface.label,isGroup:!1,shape:"rect",cssStyles:["opacity: 0;"],look:config.look};nodes.push(interfaceNode)}let cnt=0;for(const classRelation of this.relations){cnt++;const edge={id:getEdgeId(classRelation.id1,classRelation.id2,{prefix:"id",counter:cnt}),start:classRelation.id1,end:classRelation.id2,type:"normal",label:classRelation.title,labelpos:"c",thickness:"normal",classes:"relation",arrowTypeStart:this.getArrowMarker(classRelation.relation.type1),arrowTypeEnd:this.getArrowMarker(classRelation.relation.type2),startLabelRight:"none"===classRelation.relationTitle1?"":classRelation.relationTitle1,endLabelLeft:"none"===classRelation.relationTitle2?"":classRelation.relationTitle2,arrowheadStyle:"",labelStyle:["display: inline-block"],style:classRelation.style||"",pattern:1==classRelation.relation.lineType?"dashed":"solid",look:config.look,labelType:"markdown"};edges.push(edge)}return{nodes:nodes,edges:edges,other:{},config:config,direction:this.getDirection()}}},"ClassDB"),_b),styles_default=__name(options=>`g.classGroup text {\n fill: ${options.nodeBorder||options.classText};\n stroke: none;\n font-family: ${options.fontFamily};\n font-size: 10px;\n\n .title {\n font-weight: bolder;\n }\n\n}\n\n .cluster-label text {\n fill: ${options.titleColor};\n }\n .cluster-label span {\n color: ${options.titleColor};\n }\n .cluster-label span p {\n background-color: transparent;\n }\n\n .cluster rect {\n fill: ${options.clusterBkg};\n stroke: ${options.clusterBorder};\n stroke-width: 1px;\n }\n\n .cluster text {\n fill: ${options.titleColor};\n }\n\n .cluster span {\n color: ${options.titleColor};\n }\n\n.nodeLabel, .edgeLabel {\n color: ${options.classText};\n}\n\n.noteLabel .nodeLabel, .noteLabel .edgeLabel {\n color: ${options.noteTextColor};\n}\n.edgeLabel .label rect {\n fill: ${options.mainBkg};\n}\n.label text {\n fill: ${options.classText};\n}\n\n.labelBkg {\n background: ${options.mainBkg};\n}\n.edgeLabel .label span {\n background: ${options.mainBkg};\n}\n\n.classTitle {\n font-weight: bolder;\n}\n.node rect,\n .node circle,\n .node ellipse,\n .node polygon,\n .node path {\n fill: ${options.mainBkg};\n stroke: ${options.nodeBorder};\n stroke-width: ${options.strokeWidth};\n }\n\n\n.divider {\n stroke: ${options.nodeBorder};\n stroke-width: 1;\n}\n\ng.clickable {\n cursor: pointer;\n}\n\ng.classGroup rect {\n fill: ${options.mainBkg};\n stroke: ${options.nodeBorder};\n}\n\ng.classGroup line {\n stroke: ${options.nodeBorder};\n stroke-width: 1;\n}\n\n.classLabel .box {\n stroke: none;\n stroke-width: 0;\n fill: ${options.mainBkg};\n opacity: 0.5;\n}\n\n.classLabel .label {\n fill: ${options.nodeBorder};\n font-size: 10px;\n}\n\n.relation {\n stroke: ${options.lineColor};\n stroke-width: ${options.strokeWidth};\n fill: none;\n}\n\n.dashed-line{\n stroke-dasharray: 3;\n}\n\n.dotted-line{\n stroke-dasharray: 1 2;\n}\n\n[id$="-compositionStart"], .composition {\n fill: ${options.lineColor} !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-compositionEnd"], .composition {\n fill: ${options.lineColor} !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-dependencyStart"], .dependency {\n fill: ${options.lineColor} !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-dependencyEnd"], .dependency {\n fill: ${options.lineColor} !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-extensionStart"], .extension {\n fill: transparent !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-extensionEnd"], .extension {\n fill: transparent !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-aggregationStart"], .aggregation {\n fill: transparent !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-aggregationEnd"], .aggregation {\n fill: transparent !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-lollipopStart"], .lollipop {\n fill: ${options.mainBkg} !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n[id$="-lollipopEnd"], .lollipop {\n fill: ${options.mainBkg} !important;\n stroke: ${options.lineColor} !important;\n stroke-width: 1;\n}\n\n.edgeTerminals {\n font-size: 11px;\n line-height: initial;\n}\n\n.classTitleText {\n text-anchor: middle;\n font-size: 18px;\n fill: ${options.textColor};\n}\n\n.edgeLabel[data-look="neo"] {\n background-color: ${options.edgeLabelBackground};\n p {\n background-color: ${options.edgeLabelBackground};\n }\n rect {\n opacity: 0.5;\n background-color: ${options.edgeLabelBackground};\n fill: ${options.edgeLabelBackground};\n }\n text-align: center;\n}\n ${getIconStyles()}\n`,"getStyles"),getDir=__name((parsedItem,defaultDir="TB")=>{if(!parsedItem.doc)return defaultDir;let dir=defaultDir;for(const parsedItemDoc of parsedItem.doc)"dir"===parsedItemDoc.stmt&&(dir=parsedItemDoc.value);return dir},"getDir"),classRenderer_v3_unified_default={getClasses:__name(function(text,diagramObj){return diagramObj.db.getClasses()},"getClasses"),draw:__name(async function(text,id,_version,diag){log.info("REF0:"),log.info("Drawing class diagram (v3)",id);const{securityLevel:securityLevel,state:conf,layout:layout}=getConfig2();diag.db.setDiagramId(id);const data4Layout=diag.db.getData(),svg=getDiagramElement(id,securityLevel);data4Layout.type=diag.type,data4Layout.layoutAlgorithm=getRegisteredLayoutAlgorithm(layout),data4Layout.nodeSpacing=(null==conf?void 0:conf.nodeSpacing)||50,data4Layout.rankSpacing=(null==conf?void 0:conf.rankSpacing)||50,data4Layout.markers=["aggregation","extension","composition","dependency","lollipop"],data4Layout.diagramId=id,await render(data4Layout,svg);utils_default.insertTitle(svg,"classDiagramTitleText",(null==conf?void 0:conf.titleTopMargin)??25,diag.db.getDiagramTitle()),setupViewPortForSVG(svg,8,"classDiagram",(null==conf?void 0:conf.useMaxWidth)??!0)},"draw"),getDir:getDir};export{ClassDB as C,classDiagram_default as a,classRenderer_v3_unified_default as c,styles_default as s};
@@ -0,0 +1 @@
1
+ import{_ as __name,e as configureSvgSize,l as log}from"./mermaid.core-Cy9iVxov.js";var setupViewPortForSVG=__name((svg,padding,cssDiagram,useMaxWidth)=>{svg.attr("class",cssDiagram);const{width:width,height:height,x:x,y:y}=calculateDimensionsWithPadding(svg,padding);configureSvgSize(svg,height,width,useMaxWidth);const viewBox=createViewBox(x,y,width,height,padding);svg.attr("viewBox",viewBox),log.debug(`viewBox configured: ${viewBox} with padding: ${padding}`)},"setupViewPortForSVG"),calculateDimensionsWithPadding=__name((svg,padding)=>{var _a;const bounds=(null==(_a=svg.node())?void 0:_a.getBBox())||{width:0,height:0,x:0,y:0};return{width:bounds.width+2*padding,height:bounds.height+2*padding,x:bounds.x,y:bounds.y}},"calculateDimensionsWithPadding"),createViewBox=__name((x,y,width,height,padding)=>`${x-padding} ${y-padding} ${width} ${height}`,"createViewBox");export{setupViewPortForSVG as s};
@@ -0,0 +1 @@
1
+ import{_ as __name,d as select}from"./mermaid.core-Cy9iVxov.js";var getDiagramElement=__name((id,securityLevel)=>{let sandboxElement;"sandbox"===securityLevel&&(sandboxElement=select("#i"+id));return select("sandbox"===securityLevel?sandboxElement.nodes()[0].contentDocument.body:"body").select(`[id="${id}"]`)},"getDiagramElement");export{getDiagramElement as g};
@@ -0,0 +1 @@
1
+ import{s as styles_default,c as classRenderer_v3_unified_default,a as classDiagram_default,C as ClassDB}from"./chunk-V7JOEXUC-aLHBmfOc.js";import{_ as __name}from"./mermaid.core-Cy9iVxov.js";import"./vendor-antd-Bzi1WuBb.js";import"./chunk-5VM5RSS4-DFhufY9o.js";import"./chunk-XXDRQBXY-BPj05P7g.js";import"./chunk-VR4S4FIN-Bomuor1h.js";import"./chunk-32BRIVSS-VNg3Ylzs.js";import"./vendor-markdown-BN3QLsBu.js";import"./vendor-mdxeditor-4PbKH6K7.js";import"./vendor-codemirror-CKTrJd47.js";var diagram={parser:classDiagram_default,get db(){return new ClassDB},renderer:classRenderer_v3_unified_default,styles:styles_default,init:__name(cnf=>{cnf.class||(cnf.class={}),cnf.class.arrowMarkerAbsolute=cnf.arrowMarkerAbsolute},"init")};export{diagram};
@@ -0,0 +1 @@
1
+ import{s as styles_default,c as classRenderer_v3_unified_default,a as classDiagram_default,C as ClassDB}from"./chunk-V7JOEXUC-aLHBmfOc.js";import{_ as __name}from"./mermaid.core-Cy9iVxov.js";import"./vendor-antd-Bzi1WuBb.js";import"./chunk-5VM5RSS4-DFhufY9o.js";import"./chunk-XXDRQBXY-BPj05P7g.js";import"./chunk-VR4S4FIN-Bomuor1h.js";import"./chunk-32BRIVSS-VNg3Ylzs.js";import"./vendor-markdown-BN3QLsBu.js";import"./vendor-mdxeditor-4PbKH6K7.js";import"./vendor-codemirror-CKTrJd47.js";var diagram={parser:classDiagram_default,get db(){return new ClassDB},renderer:classRenderer_v3_unified_default,styles:styles_default,init:__name(cnf=>{cnf.class||(cnf.class={}),cnf.class.arrowMarkerAbsolute=cnf.arrowMarkerAbsolute},"init")};export{diagram};
@@ -0,0 +1 @@
1
+ function Context(indented,column,type,info,align,prev){this.indented=indented,this.column=column,this.type=type,this.info=info,this.align=align,this.prev=prev}function pushContext(state,col,type,info){var indent=state.indented;return state.context&&"statement"==state.context.type&&"statement"!=type&&(indent=state.context.indented),state.context=new Context(indent,col,type,info,null,state.context)}function popContext(state){var t=state.context.type;return")"!=t&&"]"!=t&&"}"!=t||(state.indented=state.context.indented),state.context=state.context.prev}function typeBefore(stream,state,pos){return"variable"==state.prevToken||"type"==state.prevToken||(!!/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(stream.string.slice(0,pos))||(!(!state.typeAtEndOfLine||stream.column()!=stream.indentation())||void 0))}function isTopScope(context){for(;;){if(!context||"top"==context.type)return!0;if("}"==context.type&&"namespace"!=context.prev.info)return!1;context=context.prev}}function clike(parserConfig){var curPunc,isDefKeyword,statementIndentUnit=parserConfig.statementIndentUnit,dontAlignCalls=parserConfig.dontAlignCalls,keywords=parserConfig.keywords||{},types=parserConfig.types||{},builtin=parserConfig.builtin||{},blockKeywords=parserConfig.blockKeywords||{},defKeywords=parserConfig.defKeywords||{},atoms=parserConfig.atoms||{},hooks=parserConfig.hooks||{},multiLineStrings=parserConfig.multiLineStrings,indentStatements=!1!==parserConfig.indentStatements,indentSwitch=!1!==parserConfig.indentSwitch,namespaceSeparator=parserConfig.namespaceSeparator,isPunctuationChar=parserConfig.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,numberStart=parserConfig.numberStart||/[\d\.]/,number=parserConfig.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,isOperatorChar=parserConfig.isOperatorChar||/[+\-*&%=<>!?|\/]/,isIdentifierChar=parserConfig.isIdentifierChar||/[\w\$_\xa1-\uffff]/,isReservedIdentifier=parserConfig.isReservedIdentifier||!1;function tokenBase(stream,state){var quote,ch=stream.next();if(hooks[ch]){var result=hooks[ch](stream,state);if(!1!==result)return result}if('"'==ch||"'"==ch)return state.tokenize=(quote=ch,function(stream,state){for(var next,escaped=!1,end=!1;null!=(next=stream.next());){if(next==quote&&!escaped){end=!0;break}escaped=!escaped&&"\\"==next}return(end||!escaped&&!multiLineStrings)&&(state.tokenize=null),"string"}),state.tokenize(stream,state);if(numberStart.test(ch)){if(stream.backUp(1),stream.match(number))return"number";stream.next()}if(isPunctuationChar.test(ch))return curPunc=ch,null;if("/"==ch){if(stream.eat("*"))return state.tokenize=tokenComment,tokenComment(stream,state);if(stream.eat("/"))return stream.skipToEnd(),"comment"}if(isOperatorChar.test(ch)){for(;!stream.match(/^\/[\/*]/,!1)&&stream.eat(isOperatorChar););return"operator"}if(stream.eatWhile(isIdentifierChar),namespaceSeparator)for(;stream.match(namespaceSeparator);)stream.eatWhile(isIdentifierChar);var cur=stream.current();return contains(keywords,cur)?(contains(blockKeywords,cur)&&(curPunc="newstatement"),contains(defKeywords,cur)&&(isDefKeyword=!0),"keyword"):contains(types,cur)?"type":contains(builtin,cur)||isReservedIdentifier&&isReservedIdentifier(cur)?(contains(blockKeywords,cur)&&(curPunc="newstatement"),"builtin"):contains(atoms,cur)?"atom":"variable"}function tokenComment(stream,state){for(var ch,maybeEnd=!1;ch=stream.next();){if("/"==ch&&maybeEnd){state.tokenize=null;break}maybeEnd="*"==ch}return"comment"}function maybeEOL(stream,state){parserConfig.typeFirstDefinitions&&stream.eol()&&isTopScope(state.context)&&(state.typeAtEndOfLine=typeBefore(stream,state,stream.pos))}return{name:parserConfig.name,startState:function(indentUnit){return{tokenize:null,context:new Context(-indentUnit,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(stream,state){var ctx=state.context;if(stream.sol()&&(null==ctx.align&&(ctx.align=!1),state.indented=stream.indentation(),state.startOfLine=!0),stream.eatSpace())return maybeEOL(stream,state),null;curPunc=isDefKeyword=null;var style=(state.tokenize||tokenBase)(stream,state);if("comment"==style||"meta"==style)return style;if(null==ctx.align&&(ctx.align=!0),";"==curPunc||":"==curPunc||","==curPunc&&stream.match(/^\s*(?:\/\/.*)?$/,!1))for(;"statement"==state.context.type;)popContext(state);else if("{"==curPunc)pushContext(state,stream.column(),"}");else if("["==curPunc)pushContext(state,stream.column(),"]");else if("("==curPunc)pushContext(state,stream.column(),")");else if("}"==curPunc){for(;"statement"==ctx.type;)ctx=popContext(state);for("}"==ctx.type&&(ctx=popContext(state));"statement"==ctx.type;)ctx=popContext(state)}else curPunc==ctx.type?popContext(state):indentStatements&&(("}"==ctx.type||"top"==ctx.type)&&";"!=curPunc||"statement"==ctx.type&&"newstatement"==curPunc)&&pushContext(state,stream.column(),"statement",stream.current());if("variable"==style&&("def"==state.prevToken||parserConfig.typeFirstDefinitions&&typeBefore(stream,state,stream.start)&&isTopScope(state.context)&&stream.match(/^\s*\(/,!1))&&(style="def"),hooks.token){var result=hooks.token(stream,state,style);void 0!==result&&(style=result)}return"def"==style&&!1===parserConfig.styleDefs&&(style="variable"),state.startOfLine=!1,state.prevToken=isDefKeyword?"def":style||curPunc,maybeEOL(stream,state),style},indent:function(state,textAfter,context){if(state.tokenize!=tokenBase&&null!=state.tokenize||state.typeAtEndOfLine&&isTopScope(state.context))return null;var ctx=state.context,firstChar=textAfter&&textAfter.charAt(0),closing=firstChar==ctx.type;if("statement"==ctx.type&&"}"==firstChar&&(ctx=ctx.prev),parserConfig.dontIndentStatements)for(;"statement"==ctx.type&&parserConfig.dontIndentStatements.test(ctx.info);)ctx=ctx.prev;if(hooks.indent){var hook=hooks.indent(state,ctx,textAfter,context.unit);if("number"==typeof hook)return hook}var switchBlock=ctx.prev&&"switch"==ctx.prev.info;if(parserConfig.allmanIndentation&&/[{(]/.test(firstChar)){for(;"top"!=ctx.type&&"}"!=ctx.type;)ctx=ctx.prev;return ctx.indented}return"statement"==ctx.type?ctx.indented+("{"==firstChar?0:statementIndentUnit||context.unit):!ctx.align||dontAlignCalls&&")"==ctx.type?")"!=ctx.type||closing?ctx.indented+(closing?0:context.unit)+(closing||!switchBlock||/^(?:case|default)\b/.test(textAfter)?0:context.unit):ctx.indented+(statementIndentUnit||context.unit):ctx.column+(closing?0:1)},languageData:{indentOnInput:indentSwitch?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,commentTokens:{line:"//",block:{open:"/*",close:"*/"}},autocomplete:Object.keys(keywords).concat(Object.keys(types)).concat(Object.keys(builtin)).concat(Object.keys(atoms)),...parserConfig.languageData}}}function words(str){for(var obj={},words2=str.split(" "),i=0;i<words2.length;++i)obj[words2[i]]=!0;return obj}function contains(words2,word){return"function"==typeof words2?words2(word):words2.propertyIsEnumerable(word)}var cKeywords="auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran",cppKeywords="alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq",objCKeywords="bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available",objCBuiltins="FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT",basicCTypes=words("int long char short double float unsigned signed void bool"),basicObjCTypes=words("SEL instancetype id Class Protocol BOOL");function cTypes(identifier){return contains(basicCTypes,identifier)||/.+_t$/.test(identifier)}function objCTypes(identifier){return cTypes(identifier)||contains(basicObjCTypes,identifier)}var cBlockKeywords="case do else for if switch while struct enum union";function cppHook(stream,state){if(!state.startOfLine)return!1;for(var ch,next=null;ch=stream.peek();){if("\\"==ch&&stream.match(/^.$/)){next=cppHook;break}if("/"==ch&&stream.match(/^\/[\/\*]/,!1))break;stream.next()}return state.tokenize=next,"meta"}function pointerHook(_stream,state){return"type"==state.prevToken&&"type"}function cIsReservedIdentifier(token){return!(!token||token.length<2)&&("_"==token[0]&&("_"==token[1]||token[1]!==token[1].toLowerCase()))}function cpp14Literal(stream){return stream.eatWhile(/[\w\.']/),"number"}function cpp11StringHook(stream,state){if(stream.backUp(1),stream.match(/^(?:R|u8R|uR|UR|LR)/)){var match=stream.match(/^"([^\s\\()]{0,16})\(/);return!!match&&(state.cpp11RawStringDelim=match[1],state.tokenize=tokenRawString,tokenRawString(stream,state))}return stream.match(/^(?:u8|u|U|L)/)?!!stream.match(/^["']/,!1)&&"string":(stream.next(),!1)}function cppLooksLikeConstructor(word){var lastTwo=/(\w+)::~?(\w+)$/.exec(word);return lastTwo&&lastTwo[1]==lastTwo[2]}function tokenAtString(stream,state){for(var next;null!=(next=stream.next());)if('"'==next&&!stream.eat('"')){state.tokenize=null;break}return"string"}function tokenRawString(stream,state){var delim=state.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&");return stream.match(new RegExp(".*?\\)"+delim+'"'))?state.tokenize=null:stream.skipToEnd(),"string"}const c=clike({name:"c",keywords:words(cKeywords),types:cTypes,blockKeywords:words(cBlockKeywords),defKeywords:words("struct enum union"),typeFirstDefinitions:!0,atoms:words("NULL true false"),isReservedIdentifier:cIsReservedIdentifier,hooks:{"#":cppHook,"*":pointerHook}}),cpp=clike({name:"cpp",keywords:words(cKeywords+" "+cppKeywords),types:cTypes,blockKeywords:words(cBlockKeywords+" class try catch"),defKeywords:words("struct enum union class namespace"),typeFirstDefinitions:!0,atoms:words("true false NULL nullptr"),dontIndentStatements:/^template$/,isIdentifierChar:/[\w\$_~\xa1-\uffff]/,isReservedIdentifier:cIsReservedIdentifier,hooks:{"#":cppHook,"*":pointerHook,u:cpp11StringHook,U:cpp11StringHook,L:cpp11StringHook,R:cpp11StringHook,0:cpp14Literal,1:cpp14Literal,2:cpp14Literal,3:cpp14Literal,4:cpp14Literal,5:cpp14Literal,6:cpp14Literal,7:cpp14Literal,8:cpp14Literal,9:cpp14Literal,token:function(stream,state,style){if("variable"==style&&"("==stream.peek()&&(";"==state.prevToken||null==state.prevToken||"}"==state.prevToken)&&cppLooksLikeConstructor(stream.current()))return"def"}},namespaceSeparator:"::"}),java=clike({name:"java",keywords:words("abstract assert break case catch class const continue default do else enum extends final finally for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while @interface"),types:words("var byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:words("catch class do else finally for if switch try while"),defKeywords:words("class interface enum @interface"),typeFirstDefinitions:!0,atoms:words("true false null"),number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+\.?\d*|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,hooks:{"@":function(stream){return!stream.match("interface",!1)&&(stream.eatWhile(/[\w\$_]/),"meta")},'"':function(stream,state){return!!stream.match(/""$/)&&(state.tokenize=tokenTripleString,state.tokenize(stream,state))}}}),csharp=clike({name:"csharp",keywords:words("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in init interface internal is lock namespace new operator out override params private protected public readonly record ref required return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:words("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:words("catch class do else finally for foreach if struct switch try while"),defKeywords:words("class interface namespace record struct var"),typeFirstDefinitions:!0,atoms:words("true false null"),hooks:{"@":function(stream,state){return stream.eat('"')?(state.tokenize=tokenAtString,tokenAtString(stream,state)):(stream.eatWhile(/[\w\$_]/),"meta")}}});function tokenTripleString(stream,state){for(var escaped=!1;!stream.eol();){if(!escaped&&stream.match('"""')){state.tokenize=null;break}escaped="\\"==stream.next()&&!escaped}return"string"}function tokenNestedComment(depth){return function(stream,state){for(var ch;ch=stream.next();){if("*"==ch&&stream.eat("/")){if(1==depth){state.tokenize=null;break}return state.tokenize=tokenNestedComment(depth-1),state.tokenize(stream,state)}if("/"==ch&&stream.eat("*"))return state.tokenize=tokenNestedComment(depth+1),state.tokenize(stream,state)}return"comment"}}const scala=clike({name:"scala",keywords:words("abstract case catch class def do else extends final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble"),types:words("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Int Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:words("catch class enum do else finally for forSome if match switch try while"),defKeywords:words("class enum def object package trait type val var"),atoms:words("true false null"),indentStatements:!1,indentSwitch:!1,isOperatorChar:/[+\-*&%=<>!?|\/#:@]/,hooks:{"@":function(stream){return stream.eatWhile(/[\w\$_]/),"meta"},'"':function(stream,state){return!!stream.match('""')&&(state.tokenize=tokenTripleString,state.tokenize(stream,state))},"'":function(stream){return stream.match(/^(\\[^'\s]+|[^\\'])'/)?"character":(stream.eatWhile(/[\w\$_\xa1-\uffff]/),"atom")},"=":function(stream,state){var cx=state.context;return!("}"!=cx.type||!cx.align||!stream.eat(">"))&&(state.context=new Context(cx.indented,cx.column,cx.type,cx.info,null,cx.prev),"operator")},"/":function(stream,state){return!!stream.eat("*")&&(state.tokenize=tokenNestedComment(1),state.tokenize(stream,state))}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}});const kotlin=clike({name:"kotlin",keywords:words("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam"),types:words("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(ul?|l|f)?/i,blockKeywords:words("catch class do else finally for if where try while enum"),defKeywords:words("class val var object interface fun"),atoms:words("true false null this"),hooks:{"@":function(stream){return stream.eatWhile(/[\w\$_]/),"meta"},"*":function(_stream,state){return"."==state.prevToken?"variable":"operator"},'"':function(stream,state){var tripleString;return state.tokenize=(tripleString=stream.match('""'),function(stream,state){for(var next,escaped=!1,end=!1;!stream.eol();){if(!tripleString&&!escaped&&stream.match('"')){end=!0;break}if(tripleString&&stream.match('"""')){end=!0;break}next=stream.next(),!escaped&&"$"==next&&stream.match("{")&&stream.skipTo("}"),escaped=!escaped&&"\\"==next&&!tripleString}return!end&&tripleString||(state.tokenize=null),"string"}),state.tokenize(stream,state)},"/":function(stream,state){return!!stream.eat("*")&&(state.tokenize=tokenNestedComment(1),state.tokenize(stream,state))},indent:function(state,ctx,textAfter,indentUnit){var firstChar=textAfter&&textAfter.charAt(0);return"}"!=state.prevToken&&")"!=state.prevToken||""!=textAfter?"operator"==state.prevToken&&"}"!=textAfter&&"}"!=state.context.type||"variable"==state.prevToken&&"."==firstChar||("}"==state.prevToken||")"==state.prevToken)&&"."==firstChar?2*indentUnit+ctx.indented:ctx.align&&"}"==ctx.type?ctx.indented+(state.context.type==(textAfter||"").charAt(0)?0:indentUnit):void 0:state.indented}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}}),shader=clike({name:"shader",keywords:words("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:words("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:words("for while do if else struct"),builtin:words("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:words("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":cppHook}}),nesC=clike({name:"nesc",keywords:words(cKeywords+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:cTypes,blockKeywords:words(cBlockKeywords),atoms:words("null true false"),hooks:{"#":cppHook}}),objectiveC=clike({name:"objectivec",keywords:words(cKeywords+" "+objCKeywords),types:objCTypes,builtin:words(objCBuiltins),blockKeywords:words(cBlockKeywords+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:words("struct enum union @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:words("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:cIsReservedIdentifier,hooks:{"#":cppHook,"*":pointerHook}}),objectiveCpp=clike({name:"objectivecpp",keywords:words(cKeywords+" "+objCKeywords+" "+cppKeywords),types:objCTypes,builtin:words(objCBuiltins),blockKeywords:words(cBlockKeywords+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:words("struct enum union @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:words("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:cIsReservedIdentifier,hooks:{"#":cppHook,"*":pointerHook,u:cpp11StringHook,U:cpp11StringHook,L:cpp11StringHook,R:cpp11StringHook,0:cpp14Literal,1:cpp14Literal,2:cpp14Literal,3:cpp14Literal,4:cpp14Literal,5:cpp14Literal,6:cpp14Literal,7:cpp14Literal,8:cpp14Literal,9:cpp14Literal,token:function(stream,state,style){if("variable"==style&&"("==stream.peek()&&(";"==state.prevToken||null==state.prevToken||"}"==state.prevToken)&&cppLooksLikeConstructor(stream.current()))return"def"}},namespaceSeparator:"::"}),squirrel=clike({name:"squirrel",keywords:words("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:cTypes,blockKeywords:words("case catch class else for foreach if switch try while"),defKeywords:words("function local class"),typeFirstDefinitions:!0,atoms:words("true false null"),hooks:{"#":cppHook}});var stringTokenizer=null;function tokenCeylonString(type){return function(stream,state){for(var next,escaped=!1,end=!1;!stream.eol();){if(!escaped&&stream.match('"')&&("single"==type||stream.match('""'))){end=!0;break}if(!escaped&&stream.match("``")){stringTokenizer=tokenCeylonString(type),end=!0;break}next=stream.next(),escaped="single"==type&&!escaped&&"\\"==next}return end&&(state.tokenize=null),"string"}}const ceylon=clike({name:"ceylon",keywords:words("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(word){var first=word.charAt(0);return first===first.toUpperCase()&&first!==first.toLowerCase()},blockKeywords:words("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:words("class dynamic function interface module object package value"),builtin:words("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:words("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(stream){return stream.eatWhile(/[\w\$_]/),"meta"},'"':function(stream,state){return state.tokenize=tokenCeylonString(stream.match('""')?"triple":"single"),state.tokenize(stream,state)},"`":function(stream,state){return!(!stringTokenizer||!stream.match("`"))&&(state.tokenize=stringTokenizer,stringTokenizer=null,state.tokenize(stream,state))},"'":function(stream){return stream.match(/^(\\[^'\s]+|[^\\'])'/)?"string.special":(stream.eatWhile(/[\w\$_\xa1-\uffff]/),"atom")},token:function(_stream,state,style){if(("variable"==style||"type"==style)&&"."==state.prevToken)return"variableName.special"}},languageData:{closeBrackets:{brackets:["(","[","{","'",'"','"""']}}});function pushInterpolationStack(state){(state.interpolationStack||(state.interpolationStack=[])).push(state.tokenize)}function popInterpolationStack(state){return(state.interpolationStack||(state.interpolationStack=[])).pop()}function tokenDartString(quote,stream,state,raw){var tripleQuoted=!1;if(stream.eat(quote)){if(!stream.eat(quote))return"string";tripleQuoted=!0}function tokenStringHelper(stream2,state2){for(var escaped=!1;!stream2.eol();){if(!raw&&!escaped&&"$"==stream2.peek())return pushInterpolationStack(state2),state2.tokenize=tokenInterpolation,"string";var next=stream2.next();if(next==quote&&!escaped&&(!tripleQuoted||stream2.match(quote+quote))){state2.tokenize=null;break}escaped=!raw&&!escaped&&"\\"==next}return"string"}return state.tokenize=tokenStringHelper,tokenStringHelper(stream,state)}function tokenInterpolation(stream,state){return stream.eat("$"),stream.eat("{")?state.tokenize=null:state.tokenize=tokenInterpolationIdentifier,null}function tokenInterpolationIdentifier(stream,state){return stream.eatWhile(/[\w_]/),state.tokenize=popInterpolationStack(state),"variable"}const dart=clike({name:"dart",keywords:words("this super static final const abstract class extends external factory implements mixin get native set typedef with enum throw rethrow assert break case continue default in return new deferred async await covariant try catch finally do else for if switch while import library export part of show hide is as extension on yield late required sealed base interface when inline"),blockKeywords:words("try catch finally do else for if switch while"),builtin:words("void bool num int double dynamic var String Null Never"),atoms:words("true false null"),number:/^(?:0x[a-f\d_]+|(?:[\d_]+\.?[\d_]*|\.[\d_]+)(?:e[-+]?[\d_]+)?)/i,hooks:{"@":function(stream){return stream.eatWhile(/[\w\$_\.]/),"meta"},"'":function(stream,state){return tokenDartString("'",stream,state,!1)},'"':function(stream,state){return tokenDartString('"',stream,state,!1)},r:function(stream,state){var peek=stream.peek();return("'"==peek||'"'==peek)&&tokenDartString(stream.next(),stream,state,!0)},"}":function(_stream,state){return function(state){return state.interpolationStack?state.interpolationStack.length:0}(state)>0&&(state.tokenize=popInterpolationStack(state),null)},"/":function(stream,state){return!!stream.eat("*")&&(state.tokenize=tokenNestedComment(1),state.tokenize(stream,state))},token:function(stream,_,style){if("variable"==style&&RegExp("^[_$]*[A-Z][a-zA-Z0-9_$]*$","g").test(stream.current()))return"type"}}});export{c,ceylon,clike,cpp,csharp,dart,java,kotlin,nesC,objectiveC,objectiveCpp,scala,shader,squirrel};
@@ -0,0 +1 @@
1
+ var atoms=["false","nil","true"],specialForms=[".","catch","def","do","if","monitor-enter","monitor-exit","new","quote","recur","set!","throw","try","var"],coreSymbols=["*","*'","*1","*2","*3","*agent*","*allow-unresolved-vars*","*assert*","*clojure-version*","*command-line-args*","*compile-files*","*compile-path*","*compiler-options*","*data-readers*","*default-data-reader-fn*","*e","*err*","*file*","*flush-on-newline*","*fn-loader*","*in*","*math-context*","*ns*","*out*","*print-dup*","*print-length*","*print-level*","*print-meta*","*print-namespace-maps*","*print-readably*","*read-eval*","*reader-resolver*","*source-path*","*suppress-read*","*unchecked-math*","*use-context-classloader*","*verbose-defrecords*","*warn-on-reflection*","+","+'","-","-'","->","->>","->ArrayChunk","->Eduction","->Vec","->VecNode","->VecSeq","-cache-protocol-fn","-reset-methods","..","/","<","<=","=","==",">",">=","EMPTY-NODE","Inst","StackTraceElement->vec","Throwable->map","accessor","aclone","add-classpath","add-watch","agent","agent-error","agent-errors","aget","alength","alias","all-ns","alter","alter-meta!","alter-var-root","amap","ancestors","and","any?","apply","areduce","array-map","as->","aset","aset-boolean","aset-byte","aset-char","aset-double","aset-float","aset-int","aset-long","aset-short","assert","assoc","assoc!","assoc-in","associative?","atom","await","await-for","await1","bases","bean","bigdec","bigint","biginteger","binding","bit-and","bit-and-not","bit-clear","bit-flip","bit-not","bit-or","bit-set","bit-shift-left","bit-shift-right","bit-test","bit-xor","boolean","boolean-array","boolean?","booleans","bound-fn","bound-fn*","bound?","bounded-count","butlast","byte","byte-array","bytes","bytes?","case","cast","cat","char","char-array","char-escape-string","char-name-string","char?","chars","chunk","chunk-append","chunk-buffer","chunk-cons","chunk-first","chunk-next","chunk-rest","chunked-seq?","class","class?","clear-agent-errors","clojure-version","coll?","comment","commute","comp","comparator","compare","compare-and-set!","compile","complement","completing","concat","cond","cond->","cond->>","condp","conj","conj!","cons","constantly","construct-proxy","contains?","count","counted?","create-ns","create-struct","cycle","dec","dec'","decimal?","declare","dedupe","default-data-readers","definline","definterface","defmacro","defmethod","defmulti","defn","defn-","defonce","defprotocol","defrecord","defstruct","deftype","delay","delay?","deliver","denominator","deref","derive","descendants","destructure","disj","disj!","dissoc","dissoc!","distinct","distinct?","doall","dorun","doseq","dosync","dotimes","doto","double","double-array","double?","doubles","drop","drop-last","drop-while","eduction","empty","empty?","ensure","ensure-reduced","enumeration-seq","error-handler","error-mode","eval","even?","every-pred","every?","ex-data","ex-info","extend","extend-protocol","extend-type","extenders","extends?","false?","ffirst","file-seq","filter","filterv","find","find-keyword","find-ns","find-protocol-impl","find-protocol-method","find-var","first","flatten","float","float-array","float?","floats","flush","fn","fn?","fnext","fnil","for","force","format","frequencies","future","future-call","future-cancel","future-cancelled?","future-done?","future?","gen-class","gen-interface","gensym","get","get-in","get-method","get-proxy-class","get-thread-bindings","get-validator","group-by","halt-when","hash","hash-combine","hash-map","hash-ordered-coll","hash-set","hash-unordered-coll","ident?","identical?","identity","if-let","if-not","if-some","ifn?","import","in-ns","inc","inc'","indexed?","init-proxy","inst-ms","inst-ms*","inst?","instance?","int","int-array","int?","integer?","interleave","intern","interpose","into","into-array","ints","io!","isa?","iterate","iterator-seq","juxt","keep","keep-indexed","key","keys","keyword","keyword?","last","lazy-cat","lazy-seq","let","letfn","line-seq","list","list*","list?","load","load-file","load-reader","load-string","loaded-libs","locking","long","long-array","longs","loop","macroexpand","macroexpand-1","make-array","make-hierarchy","map","map-entry?","map-indexed","map?","mapcat","mapv","max","max-key","memfn","memoize","merge","merge-with","meta","method-sig","methods","min","min-key","mix-collection-hash","mod","munge","name","namespace","namespace-munge","nat-int?","neg-int?","neg?","newline","next","nfirst","nil?","nnext","not","not-any?","not-empty","not-every?","not=","ns","ns-aliases","ns-imports","ns-interns","ns-map","ns-name","ns-publics","ns-refers","ns-resolve","ns-unalias","ns-unmap","nth","nthnext","nthrest","num","number?","numerator","object-array","odd?","or","parents","partial","partition","partition-all","partition-by","pcalls","peek","persistent!","pmap","pop","pop!","pop-thread-bindings","pos-int?","pos?","pr","pr-str","prefer-method","prefers","primitives-classnames","print","print-ctor","print-dup","print-method","print-simple","print-str","printf","println","println-str","prn","prn-str","promise","proxy","proxy-call-with-super","proxy-mappings","proxy-name","proxy-super","push-thread-bindings","pvalues","qualified-ident?","qualified-keyword?","qualified-symbol?","quot","rand","rand-int","rand-nth","random-sample","range","ratio?","rational?","rationalize","re-find","re-groups","re-matcher","re-matches","re-pattern","re-seq","read","read-line","read-string","reader-conditional","reader-conditional?","realized?","record?","reduce","reduce-kv","reduced","reduced?","reductions","ref","ref-history-count","ref-max-history","ref-min-history","ref-set","refer","refer-clojure","reify","release-pending-sends","rem","remove","remove-all-methods","remove-method","remove-ns","remove-watch","repeat","repeatedly","replace","replicate","require","reset!","reset-meta!","reset-vals!","resolve","rest","restart-agent","resultset-seq","reverse","reversible?","rseq","rsubseq","run!","satisfies?","second","select-keys","send","send-off","send-via","seq","seq?","seqable?","seque","sequence","sequential?","set","set-agent-send-executor!","set-agent-send-off-executor!","set-error-handler!","set-error-mode!","set-validator!","set?","short","short-array","shorts","shuffle","shutdown-agents","simple-ident?","simple-keyword?","simple-symbol?","slurp","some","some->","some->>","some-fn","some?","sort","sort-by","sorted-map","sorted-map-by","sorted-set","sorted-set-by","sorted?","special-symbol?","spit","split-at","split-with","str","string?","struct","struct-map","subs","subseq","subvec","supers","swap!","swap-vals!","symbol","symbol?","sync","tagged-literal","tagged-literal?","take","take-last","take-nth","take-while","test","the-ns","thread-bound?","time","to-array","to-array-2d","trampoline","transduce","transient","tree-seq","true?","type","unchecked-add","unchecked-add-int","unchecked-byte","unchecked-char","unchecked-dec","unchecked-dec-int","unchecked-divide-int","unchecked-double","unchecked-float","unchecked-inc","unchecked-inc-int","unchecked-int","unchecked-long","unchecked-multiply","unchecked-multiply-int","unchecked-negate","unchecked-negate-int","unchecked-remainder-int","unchecked-short","unchecked-subtract","unchecked-subtract-int","underive","unquote","unquote-splicing","unreduced","unsigned-bit-shift-right","update","update-in","update-proxy","uri?","use","uuid?","val","vals","var-get","var-set","var?","vary-meta","vec","vector","vector-of","vector?","volatile!","volatile?","vreset!","vswap!","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn","xml-seq","zero?","zipmap"],atom=createLookupMap(atoms),specialForm=createLookupMap(specialForms),coreSymbol=createLookupMap(coreSymbols),hasBodyParameter=createLookupMap(["->","->>","as->","binding","bound-fn","case","catch","comment","cond","cond->","cond->>","condp","def","definterface","defmethod","defn","defmacro","defprotocol","defrecord","defstruct","deftype","do","doseq","dotimes","doto","extend","extend-protocol","extend-type","fn","for","future","if","if-let","if-not","if-some","let","letfn","locking","loop","ns","proxy","reify","struct-map","some->","some->>","try","when","when-first","when-let","when-not","when-some","while","with-bindings","with-bindings*","with-in-str","with-loading-context","with-local-vars","with-meta","with-open","with-out-str","with-precision","with-redefs","with-redefs-fn"]),delimiter=/^(?:[\\\[\]\s"(),;@^`{}~]|$)/,numberLiteral=/^(?:[+\-]?\d+(?:(?:N|(?:[eE][+\-]?\d+))|(?:\.?\d*(?:M|(?:[eE][+\-]?\d+))?)|\/\d+|[xX][0-9a-fA-F]+|r[0-9a-zA-Z]+)?(?=[\\\[\]\s"#'(),;@^`{}~]|$))/,characterLiteral=/^(?:\\(?:backspace|formfeed|newline|return|space|tab|o[0-7]{3}|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{4}|.)?(?=[\\\[\]\s"(),;@^`{}~]|$))/,qualifiedSymbol=/^(?:(?:[^\\\/\[\]\d\s"#'(),;@^`{}~.][^\\\[\]\s"(),;@^`{}~.\/]*(?:\.[^\\\/\[\]\d\s"#'(),;@^`{}~.][^\\\[\]\s"(),;@^`{}~.\/]*)*\/)?(?:\/|[^\\\/\[\]\d\s"#'(),;@^`{}~][^\\\[\]\s"(),;@^`{}~]*)*(?=[\\\[\]\s"(),;@^`{}~]|$))/;function base(stream,state){if(stream.eatSpace()||stream.eat(","))return["space",null];if(stream.match(numberLiteral))return[null,"number"];if(stream.match(characterLiteral))return[null,"string.special"];if(stream.eat(/^"/))return(state.tokenize=inString)(stream,state);if(stream.eat(/^[(\[{]/))return["open","bracket"];if(stream.eat(/^[)\]}]/))return["close","bracket"];if(stream.eat(/^;/))return stream.skipToEnd(),["space","comment"];if(stream.eat(/^[#'@^`~]/))return[null,"meta"];var matches=stream.match(qualifiedSymbol),symbol=matches&&matches[0];return symbol?"comment"===symbol&&"("===state.lastToken?(state.tokenize=inComment)(stream,state):is(symbol,atom)||":"===symbol.charAt(0)?["symbol","atom"]:is(symbol,specialForm)||is(symbol,coreSymbol)?["symbol","keyword"]:"("===state.lastToken?["symbol","builtin"]:["symbol","variable"]:(stream.next(),stream.eatWhile(function(c){return!is(c,delimiter)}),[null,"error"])}function inString(stream,state){for(var next,escaped=!1;next=stream.next();){if('"'===next&&!escaped){state.tokenize=base;break}escaped=!escaped&&"\\"===next}return[null,"string"]}function inComment(stream,state){for(var next,parenthesisCount=1;next=stream.next();)if(")"===next&&parenthesisCount--,"("===next&&parenthesisCount++,0===parenthesisCount){stream.backUp(1),state.tokenize=base;break}return["space","comment"]}function createLookupMap(words){for(var obj={},i=0;i<words.length;++i)obj[words[i]]=!0;return obj}function is(value,test){return test instanceof RegExp?test.test(value):test instanceof Object?test.propertyIsEnumerable(value):void 0}const clojure={name:"clojure",startState:function(){return{ctx:{prev:null,start:0,indentTo:0},lastToken:null,tokenize:base}},token:function(stream,state){stream.sol()&&"number"!=typeof state.ctx.indentTo&&(state.ctx.indentTo=state.ctx.start+1);var typeStylePair=state.tokenize(stream,state),type=typeStylePair[0],style=typeStylePair[1],current=stream.current();return"space"!==type&&("("===state.lastToken&&null===state.ctx.indentTo?"symbol"===type&&is(current,hasBodyParameter)?state.ctx.indentTo=state.ctx.start+stream.indentUnit:state.ctx.indentTo="next":"next"===state.ctx.indentTo&&(state.ctx.indentTo=stream.column()),state.lastToken=current),"open"===type?state.ctx={prev:state.ctx,start:stream.column(),indentTo:null}:"close"===type&&(state.ctx=state.ctx.prev||state.ctx),style},indent:function(state){var i=state.ctx.indentTo;return"number"==typeof i?i:state.ctx.start+1},languageData:{closeBrackets:{brackets:["(","[","{",'"']},commentTokens:{line:";;"},autocomplete:[].concat(atoms,specialForms,coreSymbols)}};export{clojure};
@@ -0,0 +1 @@
1
+ var variable_regex=/({)?[a-zA-Z0-9_]+(})?/;function tokenString(stream,state){for(var current,prev,found_var=!1;!stream.eol()&&(current=stream.next())!=state.pending;){if("$"===current&&"\\"!=prev&&'"'==state.pending){found_var=!0;break}prev=current}return found_var&&stream.backUp(1),current==state.pending?state.continueString=!1:state.continueString=!0,"string"}const cmake={name:"cmake",startState:function(){var state={inDefinition:!1,inInclude:!1,continueString:!1,pending:!1};return state},token:function(stream,state){return stream.eatSpace()?null:function(stream,state){var ch=stream.next();return"$"===ch?stream.match(variable_regex)?"variableName.special":"variable":state.continueString?(stream.backUp(1),tokenString(stream,state)):stream.match(/(\s+)?\w+\(/)||stream.match(/(\s+)?\w+\ \(/)?(stream.backUp(1),"def"):"#"==ch?(stream.skipToEnd(),"comment"):"'"==ch||'"'==ch?(state.pending=ch,tokenString(stream,state)):"("==ch||")"==ch?"bracket":ch.match(/[0-9]/)?"number":(stream.eatWhile(/[\w-]/),null)}(stream,state)}};export{cmake};
@@ -0,0 +1 @@
1
+ function makeKeywords(str){for(var obj={},words=str.split(" "),i=0;i<words.length;++i)obj[words[i]]=!0;return obj}var atoms=makeKeywords("TRUE FALSE ZEROES ZEROS ZERO SPACES SPACE LOW-VALUE LOW-VALUES "),keywords=makeKeywords("ACCEPT ACCESS ACQUIRE ADD ADDRESS ADVANCING AFTER ALIAS ALL ALPHABET ALPHABETIC ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED ALSO ALTER ALTERNATE AND ANY ARE AREA AREAS ARITHMETIC ASCENDING ASSIGN AT ATTRIBUTE AUTHOR AUTO AUTO-SKIP AUTOMATIC B-AND B-EXOR B-LESS B-NOT B-OR BACKGROUND-COLOR BACKGROUND-COLOUR BEEP BEFORE BELL BINARY BIT BITS BLANK BLINK BLOCK BOOLEAN BOTTOM BY CALL CANCEL CD CF CH CHARACTER CHARACTERS CLASS CLOCK-UNITS CLOSE COBOL CODE CODE-SET COL COLLATING COLUMN COMMA COMMIT COMMITMENT COMMON COMMUNICATION COMP COMP-0 COMP-1 COMP-2 COMP-3 COMP-4 COMP-5 COMP-6 COMP-7 COMP-8 COMP-9 COMPUTATIONAL COMPUTATIONAL-0 COMPUTATIONAL-1 COMPUTATIONAL-2 COMPUTATIONAL-3 COMPUTATIONAL-4 COMPUTATIONAL-5 COMPUTATIONAL-6 COMPUTATIONAL-7 COMPUTATIONAL-8 COMPUTATIONAL-9 COMPUTE CONFIGURATION CONNECT CONSOLE CONTAINED CONTAINS CONTENT CONTINUE CONTROL CONTROL-AREA CONTROLS CONVERTING COPY CORR CORRESPONDING COUNT CRT CRT-UNDER CURRENCY CURRENT CURSOR DATA DATE DATE-COMPILED DATE-WRITTEN DAY DAY-OF-WEEK DB DB-ACCESS-CONTROL-KEY DB-DATA-NAME DB-EXCEPTION DB-FORMAT-NAME DB-RECORD-NAME DB-SET-NAME DB-STATUS DBCS DBCS-EDITED DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING DECIMAL-POINT DECLARATIVES DEFAULT DELETE DELIMITED DELIMITER DEPENDING DESCENDING DESCRIBED DESTINATION DETAIL DISABLE DISCONNECT DISPLAY DISPLAY-1 DISPLAY-2 DISPLAY-3 DISPLAY-4 DISPLAY-5 DISPLAY-6 DISPLAY-7 DISPLAY-8 DISPLAY-9 DIVIDE DIVISION DOWN DROP DUPLICATE DUPLICATES DYNAMIC EBCDIC EGI EJECT ELSE EMI EMPTY EMPTY-CHECK ENABLE END END. END-ACCEPT END-ACCEPT. END-ADD END-CALL END-COMPUTE END-DELETE END-DISPLAY END-DIVIDE END-EVALUATE END-IF END-INVOKE END-MULTIPLY END-OF-PAGE END-PERFORM END-READ END-RECEIVE END-RETURN END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT END-UNSTRING END-WRITE END-XML ENTER ENTRY ENVIRONMENT EOP EQUAL EQUALS ERASE ERROR ESI EVALUATE EVERY EXCEEDS EXCEPTION EXCLUSIVE EXIT EXTEND EXTERNAL EXTERNALLY-DESCRIBED-KEY FD FETCH FILE FILE-CONTROL FILE-STREAM FILES FILLER FINAL FIND FINISH FIRST FOOTING FOR FOREGROUND-COLOR FOREGROUND-COLOUR FORMAT FREE FROM FULL FUNCTION GENERATE GET GIVING GLOBAL GO GOBACK GREATER GROUP HEADING HIGH-VALUE HIGH-VALUES HIGHLIGHT I-O I-O-CONTROL ID IDENTIFICATION IF IN INDEX INDEX-1 INDEX-2 INDEX-3 INDEX-4 INDEX-5 INDEX-6 INDEX-7 INDEX-8 INDEX-9 INDEXED INDIC INDICATE INDICATOR INDICATORS INITIAL INITIALIZE INITIATE INPUT INPUT-OUTPUT INSPECT INSTALLATION INTO INVALID INVOKE IS JUST JUSTIFIED KANJI KEEP KEY LABEL LAST LD LEADING LEFT LEFT-JUSTIFY LENGTH LENGTH-CHECK LESS LIBRARY LIKE LIMIT LIMITS LINAGE LINAGE-COUNTER LINE LINE-COUNTER LINES LINKAGE LOCAL-STORAGE LOCALE LOCALLY LOCK MEMBER MEMORY MERGE MESSAGE METACLASS MODE MODIFIED MODIFY MODULES MOVE MULTIPLE MULTIPLY NATIONAL NATIVE NEGATIVE NEXT NO NO-ECHO NONE NOT NULL NULL-KEY-MAP NULL-MAP NULLS NUMBER NUMERIC NUMERIC-EDITED OBJECT OBJECT-COMPUTER OCCURS OF OFF OMITTED ON ONLY OPEN OPTIONAL OR ORDER ORGANIZATION OTHER OUTPUT OVERFLOW OWNER PACKED-DECIMAL PADDING PAGE PAGE-COUNTER PARSE PERFORM PF PH PIC PICTURE PLUS POINTER POSITION POSITIVE PREFIX PRESENT PRINTING PRIOR PROCEDURE PROCEDURE-POINTER PROCEDURES PROCEED PROCESS PROCESSING PROGRAM PROGRAM-ID PROMPT PROTECTED PURGE QUEUE QUOTE QUOTES RANDOM RD READ READY REALM RECEIVE RECONNECT RECORD RECORD-NAME RECORDS RECURSIVE REDEFINES REEL REFERENCE REFERENCE-MONITOR REFERENCES RELATION RELATIVE RELEASE REMAINDER REMOVAL RENAMES REPEATED REPLACE REPLACING REPORT REPORTING REPORTS REPOSITORY REQUIRED RERUN RESERVE RESET RETAINING RETRIEVAL RETURN RETURN-CODE RETURNING REVERSE-VIDEO REVERSED REWIND REWRITE RF RH RIGHT RIGHT-JUSTIFY ROLLBACK ROLLING ROUNDED RUN SAME SCREEN SD SEARCH SECTION SECURE SECURITY SEGMENT SEGMENT-LIMIT SELECT SEND SENTENCE SEPARATE SEQUENCE SEQUENTIAL SET SHARED SIGN SIZE SKIP1 SKIP2 SKIP3 SORT SORT-MERGE SORT-RETURN SOURCE SOURCE-COMPUTER SPACE-FILL SPECIAL-NAMES STANDARD STANDARD-1 STANDARD-2 START STARTING STATUS STOP STORE STRING SUB-QUEUE-1 SUB-QUEUE-2 SUB-QUEUE-3 SUB-SCHEMA SUBFILE SUBSTITUTE SUBTRACT SUM SUPPRESS SYMBOLIC SYNC SYNCHRONIZED SYSIN SYSOUT TABLE TALLYING TAPE TENANT TERMINAL TERMINATE TEST TEXT THAN THEN THROUGH THRU TIME TIMES TITLE TO TOP TRAILING TRAILING-SIGN TRANSACTION TYPE TYPEDEF UNDERLINE UNEQUAL UNIT UNSTRING UNTIL UP UPDATE UPON USAGE USAGE-MODE USE USING VALID VALIDATE VALUE VALUES VARYING VLR WAIT WHEN WHEN-COMPILED WITH WITHIN WORDS WORKING-STORAGE WRITE XML XML-CODE XML-EVENT XML-NTEXT XML-TEXT ZERO ZERO-FILL "),builtins=makeKeywords("- * ** / + < <= = > >= "),tests={digit:/\d/,digit_or_colon:/[\d:]/,hex:/[0-9a-f]/i,sign:/[+-]/,exponent:/e/i,symbol:/[\w*+\-]/};const cobol={name:"cobol",startState:function(){return{indentStack:null,indentation:0,mode:!1}},token:function(stream,state){if(null==state.indentStack&&stream.sol()&&(state.indentation=6),stream.eatSpace())return null;var returnType=null;if("string"===state.mode){for(var next=!1;null!=(next=stream.next());)if(('"'==next||"'"==next)&&!stream.match(/['"]/,!1)){state.mode=!1;break}returnType="string"}else{var ch=stream.next(),col=stream.column();if(col>=0&&col<=5)returnType="def";else if(col>=72&&col<=79)stream.skipToEnd(),returnType="header";else if("*"==ch&&6==col)stream.skipToEnd(),returnType="comment";else if('"'==ch||"'"==ch)state.mode="string",returnType="string";else if("'"!=ch||tests.digit_or_colon.test(stream.peek()))if("."==ch)returnType="link";else if(function(ch,stream){return"0"===ch&&stream.eat(/x/i)?(stream.eatWhile(tests.hex),!0):("+"!=ch&&"-"!=ch||!tests.digit.test(stream.peek())||(stream.eat(tests.sign),ch=stream.next()),!!tests.digit.test(ch)&&(stream.eat(ch),stream.eatWhile(tests.digit),"."==stream.peek()&&(stream.eat("."),stream.eatWhile(tests.digit)),stream.eat(tests.exponent)&&(stream.eat(tests.sign),stream.eatWhile(tests.digit)),!0))}(ch,stream))returnType="number";else{if(stream.current().match(tests.symbol))for(;col<71&&void 0!==stream.eat(tests.symbol);)col++;returnType=keywords&&keywords.propertyIsEnumerable(stream.current().toUpperCase())?"keyword":builtins&&builtins.propertyIsEnumerable(stream.current().toUpperCase())?"builtin":atoms&&atoms.propertyIsEnumerable(stream.current().toUpperCase())?"atom":null}else returnType="atom"}return returnType},indent:function(state){return null==state.indentStack?state.indentation:state.indentStack.indent}};export{cobol};
@@ -0,0 +1 @@
1
+ function wordRegexp(words){return new RegExp("^(("+words.join(")|(")+"))\\b")}var operators=/^(?:->|=>|\+[+=]?|-[\-=]?|\*[\*=]?|\/[\/=]?|[=!]=|<[><]?=?|>>?=?|%=?|&=?|\|=?|\^=?|\~|!|\?|(or|and|\|\||&&|\?)=)/,delimiters=/^(?:[()\[\]{},:`=;]|\.\.?\.?)/,identifiers=/^[_A-Za-z$][_A-Za-z$0-9]*/,atProp=/^@[_A-Za-z$][_A-Za-z$0-9]*/,wordOperators=wordRegexp(["and","or","not","is","isnt","in","instanceof","typeof"]),indentKeywords=["for","while","loop","if","unless","else","switch","try","catch","finally","class"],keywords=wordRegexp(indentKeywords.concat(["break","by","continue","debugger","delete","do","in","of","new","return","then","this","@","throw","when","until","extends"]));indentKeywords=wordRegexp(indentKeywords);var stringPrefixes=/^('{3}|\"{3}|['\"])/,regexPrefixes=/^(\/{3}|\/)/,constants=wordRegexp(["Infinity","NaN","undefined","null","true","false","on","off","yes","no"]);function tokenBase(stream,state){if(stream.sol()){null===state.scope.align&&(state.scope.align=!1);var scopeOffset=state.scope.offset;if(stream.eatSpace()){var lineOffset=stream.indentation();return lineOffset>scopeOffset&&"coffee"==state.scope.type?"indent":lineOffset<scopeOffset?"dedent":null}scopeOffset>0&&dedent(stream,state)}if(stream.eatSpace())return null;var ch=stream.peek();if(stream.match("####"))return stream.skipToEnd(),"comment";if(stream.match("###"))return state.tokenize=longComment,state.tokenize(stream,state);if("#"===ch)return stream.skipToEnd(),"comment";if(stream.match(/^-?[0-9\.]/,!1)){var floatLiteral=!1;if(stream.match(/^-?\d*\.\d+(e[\+\-]?\d+)?/i)&&(floatLiteral=!0),stream.match(/^-?\d+\.\d*/)&&(floatLiteral=!0),stream.match(/^-?\.\d+/)&&(floatLiteral=!0),floatLiteral)return"."==stream.peek()&&stream.backUp(1),"number";var intLiteral=!1;if(stream.match(/^-?0x[0-9a-f]+/i)&&(intLiteral=!0),stream.match(/^-?[1-9]\d*(e[\+\-]?\d+)?/)&&(intLiteral=!0),stream.match(/^-?0(?![\dx])/i)&&(intLiteral=!0),intLiteral)return"number"}if(stream.match(stringPrefixes))return state.tokenize=tokenFactory(stream.current(),!1,"string"),state.tokenize(stream,state);if(stream.match(regexPrefixes)){if("/"!=stream.current()||stream.match(/^.*\//,!1))return state.tokenize=tokenFactory(stream.current(),!0,"string.special"),state.tokenize(stream,state);stream.backUp(1)}return stream.match(operators)||stream.match(wordOperators)?"operator":stream.match(delimiters)?"punctuation":stream.match(constants)?"atom":stream.match(atProp)||state.prop&&stream.match(identifiers)?"property":stream.match(keywords)?"keyword":stream.match(identifiers)?"variable":(stream.next(),"error")}function tokenFactory(delimiter,singleline,outclass){return function(stream,state){for(;!stream.eol();)if(stream.eatWhile(/[^'"\/\\]/),stream.eat("\\")){if(stream.next(),singleline&&stream.eol())return outclass}else{if(stream.match(delimiter))return state.tokenize=tokenBase,outclass;stream.eat(/['"\/]/)}return singleline&&(state.tokenize=tokenBase),outclass}}function longComment(stream,state){for(;!stream.eol();){if(stream.eatWhile(/[^#]/),stream.match("###")){state.tokenize=tokenBase;break}stream.eatWhile("#")}return"comment"}function indent(stream,state,type="coffee"){for(var offset=0,align=!1,alignOffset=null,scope=state.scope;scope;scope=scope.prev)if("coffee"===scope.type||"}"==scope.type){offset=scope.offset+stream.indentUnit;break}"coffee"!==type?(align=null,alignOffset=stream.column()+stream.current().length):state.scope.align&&(state.scope.align=!1),state.scope={offset:offset,type:type,prev:state.scope,align:align,alignOffset:alignOffset}}function dedent(stream,state){if(state.scope.prev){if("coffee"===state.scope.type){for(var _indent=stream.indentation(),matched=!1,scope=state.scope;scope;scope=scope.prev)if(_indent===scope.offset){matched=!0;break}if(!matched)return!0;for(;state.scope.prev&&state.scope.offset!==_indent;)state.scope=state.scope.prev;return!1}return state.scope=state.scope.prev,!1}}const coffeeScript={name:"coffeescript",startState:function(){return{tokenize:tokenBase,scope:{offset:0,type:"coffee",prev:null,align:!1},prop:!1,dedent:0}},token:function(stream,state){var fillAlign=null===state.scope.align&&state.scope;fillAlign&&stream.sol()&&(fillAlign.align=!1);var style=function(stream,state){var style=state.tokenize(stream,state),current=stream.current();"return"===current&&(state.dedent=!0),(("->"===current||"=>"===current)&&stream.eol()||"indent"===style)&&indent(stream,state);var delimiter_index="[({".indexOf(current);if(-1!==delimiter_index&&indent(stream,state,"])}".slice(delimiter_index,delimiter_index+1)),indentKeywords.exec(current)&&indent(stream,state),"then"==current&&dedent(stream,state),"dedent"===style&&dedent(stream,state))return"error";if(-1!==(delimiter_index="])}".indexOf(current))){for(;"coffee"==state.scope.type&&state.scope.prev;)state.scope=state.scope.prev;state.scope.type==current&&(state.scope=state.scope.prev)}return state.dedent&&stream.eol()&&("coffee"==state.scope.type&&state.scope.prev&&(state.scope=state.scope.prev),state.dedent=!1),"indent"==style||"dedent"==style?null:style}(stream,state);return style&&"comment"!=style&&(fillAlign&&(fillAlign.align=!0),state.prop="punctuation"==style&&"."==stream.current()),style},indent:function(state,text){if(state.tokenize!=tokenBase)return 0;var scope=state.scope,closer=text&&"])}".indexOf(text.charAt(0))>-1;if(closer)for(;"coffee"==scope.type&&scope.prev;)scope=scope.prev;var closes=closer&&scope.type===text.charAt(0);return scope.align?scope.alignOffset-(closes?1:0):(closes?scope.prev:scope).offset},languageData:{commentTokens:{line:"#"}}};export{coffeeScript};
@@ -0,0 +1 @@
1
+ var type,specialForm=/^(block|let*|return-from|catch|load-time-value|setq|eval-when|locally|symbol-macrolet|flet|macrolet|tagbody|function|multiple-value-call|the|go|multiple-value-prog1|throw|if|progn|unwind-protect|labels|progv|let|quote)$/,assumeBody=/^with|^def|^do|^prog|case$|^cond$|bind$|when$|unless$/,numLiteral=/^(?:[+\-]?(?:\d+|\d*\.\d+)(?:[efd][+\-]?\d+)?|[+\-]?\d+(?:\/[+\-]?\d+)?|#b[+\-]?[01]+|#o[+\-]?[0-7]+|#x[+\-]?[\da-f]+)/,symbol=/[^\s'`,@()\[\]";]/;function readSym(stream){for(var ch;ch=stream.next();)if("\\"==ch)stream.next();else if(!symbol.test(ch)){stream.backUp(1);break}return stream.current()}function base(stream,state){if(stream.eatSpace())return type="ws",null;if(stream.match(numLiteral))return"number";var ch;if("\\"==(ch=stream.next())&&(ch=stream.next()),'"'==ch)return(state.tokenize=inString)(stream,state);if("("==ch)return type="open","bracket";if(")"==ch)return type="close","bracket";if(";"==ch)return stream.skipToEnd(),type="ws","comment";if(/['`,@]/.test(ch))return null;if("|"==ch)return stream.skipTo("|")?(stream.next(),"variableName"):(stream.skipToEnd(),"error");if("#"==ch)return"("==(ch=stream.next())?(type="open","bracket"):/[+\-=\.']/.test(ch)||/\d/.test(ch)&&stream.match(/^\d*#/)?null:"|"==ch?(state.tokenize=inComment)(stream,state):":"==ch?(readSym(stream),"meta"):"\\"==ch?(stream.next(),readSym(stream),"string.special"):"error";var name=readSym(stream);return"."==name?null:(type="symbol","nil"==name||"t"==name||":"==name.charAt(0)?"atom":"open"==state.lastType&&(specialForm.test(name)||assumeBody.test(name))?"keyword":"&"==name.charAt(0)?"variableName.special":"variableName")}function inString(stream,state){for(var next,escaped=!1;next=stream.next();){if('"'==next&&!escaped){state.tokenize=base;break}escaped=!escaped&&"\\"==next}return"string"}function inComment(stream,state){for(var next,last;next=stream.next();){if("#"==next&&"|"==last){state.tokenize=base;break}last=next}return type="ws","comment"}const commonLisp={name:"commonlisp",startState:function(){return{ctx:{prev:null,start:0,indentTo:0},lastType:null,tokenize:base}},token:function(stream,state){stream.sol()&&"number"!=typeof state.ctx.indentTo&&(state.ctx.indentTo=state.ctx.start+1),type=null;var style=state.tokenize(stream,state);return"ws"!=type&&(null==state.ctx.indentTo?"symbol"==type&&assumeBody.test(stream.current())?state.ctx.indentTo=state.ctx.start+stream.indentUnit:state.ctx.indentTo="next":"next"==state.ctx.indentTo&&(state.ctx.indentTo=stream.column()),state.lastType=type),"open"==type?state.ctx={prev:state.ctx,start:stream.column(),indentTo:null}:"close"==type&&(state.ctx=state.ctx.prev||state.ctx),style},indent:function(state){var i=state.ctx.indentTo;return"number"==typeof i?i:state.ctx.start+1},languageData:{commentTokens:{line:";;",block:{open:"#|",close:"|#"}},closeBrackets:{brackets:["(","[","{",'"']}}};export{commonLisp};