@seqyuan/annodex 0.1.31 → 0.1.36

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 (354) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +4 -5
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/diagnostics/build-diagnostics.json +1 -1
  5. package/.next/prerender-manifest.json +4 -273
  6. package/.next/react-loadable-manifest.json +2 -3
  7. package/.next/required-server-files.js +5 -50
  8. package/.next/required-server-files.json +5 -50
  9. package/.next/routes-manifest.json +0 -8
  10. package/.next/server/app/_global-error/page.js +3 -3
  11. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/_global-error.html +1 -1
  13. package/.next/server/app/_global-error.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  18. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  19. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  20. package/.next/server/app/_not-found/page.js +2 -2
  21. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  22. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  23. package/.next/server/app/_not-found.html +1 -1
  24. package/.next/server/app/_not-found.rsc +3 -3
  25. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  26. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  27. package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  28. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  29. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  30. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  31. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  32. package/.next/server/app/api/agent/[id]/events/route.js.nft.json +1 -1
  33. package/.next/server/app/api/agent/[id]/route.js +1 -1
  34. package/.next/server/app/api/agent/[id]/route.js.nft.json +1 -1
  35. package/.next/server/app/api/agent/new/route.js +1 -1
  36. package/.next/server/app/api/agent/new/route.js.nft.json +1 -1
  37. package/.next/server/app/api/agent/runtime/route.js +1 -1
  38. package/.next/server/app/api/agent/runtime/route.js.nft.json +1 -1
  39. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  40. package/.next/server/app/api/auth/all-providers/route.js.nft.json +1 -1
  41. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  42. package/.next/server/app/api/auth/api-key/[provider]/route.js.nft.json +1 -1
  43. package/.next/server/app/api/auth/login/[provider]/route.js +1 -1
  44. package/.next/server/app/api/auth/login/[provider]/route.js.nft.json +1 -1
  45. package/.next/server/app/api/auth/login/route.js +1 -1
  46. package/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  47. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  48. package/.next/server/app/api/auth/logout/[provider]/route.js.nft.json +1 -1
  49. package/.next/server/app/api/auth/providers/route.js +1 -1
  50. package/.next/server/app/api/auth/providers/route.js.nft.json +1 -1
  51. package/.next/server/app/api/auth/status/route.js +1 -1
  52. package/.next/server/app/api/auth/status/route.js.nft.json +1 -1
  53. package/.next/server/app/api/default-cwd/route.js +1 -1
  54. package/.next/server/app/api/default-cwd/route.js.nft.json +1 -1
  55. package/.next/server/app/api/files/[...path]/route.js +1 -1
  56. package/.next/server/app/api/files/[...path]/route.js.nft.json +1 -1
  57. package/.next/server/app/api/harness/route.js +1 -1
  58. package/.next/server/app/api/harness/route.js.nft.json +1 -1
  59. package/.next/server/app/api/home/route.js +1 -1
  60. package/.next/server/app/api/home/route.js.nft.json +1 -1
  61. package/.next/server/app/api/internal/runtime/route.js +1 -1
  62. package/.next/server/app/api/internal/runtime/route.js.nft.json +1 -1
  63. package/.next/server/app/api/models/route.js +1 -1
  64. package/.next/server/app/api/models/route.js.nft.json +1 -1
  65. package/.next/server/app/api/models-config/discover/route.js +1 -1
  66. package/.next/server/app/api/models-config/discover/route.js.nft.json +1 -1
  67. package/.next/server/app/api/models-config/route.js +1 -1
  68. package/.next/server/app/api/models-config/route.js.nft.json +1 -1
  69. package/.next/server/app/api/models-config/test/route.js +1 -1
  70. package/.next/server/app/api/models-config/test/route.js.nft.json +1 -1
  71. package/.next/server/app/api/projects/browse/route.js +1 -1
  72. package/.next/server/app/api/projects/browse/route.js.nft.json +1 -1
  73. package/.next/server/app/api/projects/route.js +1 -1
  74. package/.next/server/app/api/projects/route.js.nft.json +1 -1
  75. package/.next/server/app/api/search/route.js +1 -1
  76. package/.next/server/app/api/search/route.js.nft.json +1 -1
  77. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  78. package/.next/server/app/api/sessions/[id]/context/route.js.nft.json +1 -1
  79. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  80. package/.next/server/app/api/sessions/[id]/route.js.nft.json +1 -1
  81. package/.next/server/app/api/sessions/new/route.js +1 -1
  82. package/.next/server/app/api/sessions/new/route.js.nft.json +1 -1
  83. package/.next/server/app/api/sessions/route.js +1 -1
  84. package/.next/server/app/api/sessions/route.js.nft.json +1 -1
  85. package/.next/server/app/api/settings/route.js +1 -1
  86. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  87. package/.next/server/app/api/skills/install/route.js +2 -2
  88. package/.next/server/app/api/skills/install/route.js.nft.json +1 -1
  89. package/.next/server/app/api/skills/route.js +2 -2
  90. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  91. package/.next/server/app/api/skills/search/route.js +1 -1
  92. package/.next/server/app/api/skills/search/route.js.nft.json +1 -1
  93. package/.next/server/app/api/soul/route.js +1 -1
  94. package/.next/server/app/api/soul/route.js.nft.json +1 -1
  95. package/.next/server/app/api/version/route.js +1 -1
  96. package/.next/server/app/api/version/route.js.nft.json +1 -1
  97. package/.next/server/app/index.html +1 -2
  98. package/.next/server/app/index.meta +2 -0
  99. package/.next/server/app/index.rsc +13 -25
  100. package/.next/server/app/index.segments/__PAGE__.segment.rsc +5 -14
  101. package/.next/server/app/index.segments/_full.segment.rsc +13 -25
  102. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  103. package/.next/server/app/index.segments/_index.segment.rsc +3 -3
  104. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  105. package/.next/server/app/login/page.js +2 -2
  106. package/.next/server/app/login/page.js.nft.json +1 -1
  107. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  108. package/.next/server/app/login.html +1 -1
  109. package/.next/server/app/login.rsc +3 -3
  110. package/.next/server/app/login.segments/_full.segment.rsc +3 -3
  111. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  112. package/.next/server/app/login.segments/_index.segment.rsc +3 -3
  113. package/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  114. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  115. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  116. package/.next/server/app/page.js +2 -3
  117. package/.next/server/app/page.js.nft.json +1 -1
  118. package/.next/server/app/page_client-reference-manifest.js +1 -1
  119. package/.next/server/app/workspace/page.js +6 -6
  120. package/.next/server/app/workspace/page.js.nft.json +1 -1
  121. package/.next/server/app/workspace/page_client-reference-manifest.js +1 -1
  122. package/.next/server/app/workspace.html +1 -1
  123. package/.next/server/app/workspace.rsc +4 -4
  124. package/.next/server/app/workspace.segments/_full.segment.rsc +4 -4
  125. package/.next/server/app/workspace.segments/_head.segment.rsc +1 -1
  126. package/.next/server/app/workspace.segments/_index.segment.rsc +3 -3
  127. package/.next/server/app/workspace.segments/_tree.segment.rsc +2 -2
  128. package/.next/server/app/workspace.segments/workspace/__PAGE__.segment.rsc +2 -2
  129. package/.next/server/app/workspace.segments/workspace.segment.rsc +1 -1
  130. package/.next/server/app-paths-manifest.json +4 -5
  131. package/.next/server/chunks/1381.js +1 -1
  132. package/.next/server/chunks/1681.js +2 -2
  133. package/.next/server/chunks/1703.js +2 -2
  134. package/.next/server/chunks/2719.js +3 -0
  135. package/.next/server/chunks/3031.js +1 -1
  136. package/.next/server/chunks/3493.js +1 -1
  137. package/.next/server/chunks/402.js +1 -1
  138. package/.next/server/chunks/4035.js +1 -1
  139. package/.next/server/chunks/5293.js +2 -2
  140. package/.next/server/chunks/6429.js +1 -1
  141. package/.next/server/chunks/6718.js +5 -0
  142. package/.next/server/chunks/7073.js +1 -1
  143. package/.next/server/chunks/8916.js +1 -1
  144. package/.next/server/chunks/9537.js +1 -1
  145. package/.next/server/chunks/966.js +1 -1
  146. package/.next/server/middleware-build-manifest.js +1 -1
  147. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  148. package/.next/server/pages/404.html +1 -1
  149. package/.next/server/pages/500.html +1 -1
  150. package/.next/server/server-reference-manifest.json +1 -1
  151. package/.next/static/{c12uc5Ebna-CqP4_lL37X → Bio25alNNfdoaph-M3KCN}/_buildManifest.js +1 -1
  152. package/.next/static/Bio25alNNfdoaph-M3KCN/_ssgManifest.js +1 -0
  153. package/.next/static/chunks/4550-a87684eaeae37462.js +3 -0
  154. package/.next/static/chunks/9695.9e959b13b18c3485.js +5 -0
  155. package/.next/static/chunks/app/_global-error/{page-d7ea01cb10afabab.js → page-59077df354d3cef3.js} +1 -1
  156. package/.next/static/chunks/app/api/agent/[id]/events/{route-d7ea01cb10afabab.js → route-59077df354d3cef3.js} +1 -1
  157. package/.next/static/chunks/app/api/agent/[id]/{route-d7ea01cb10afabab.js → route-59077df354d3cef3.js} +1 -1
  158. package/.next/static/chunks/app/api/agent/new/{route-d7ea01cb10afabab.js → route-59077df354d3cef3.js} +1 -1
  159. package/.next/static/chunks/app/api/agent/runtime/route-59077df354d3cef3.js +1 -0
  160. package/.next/static/chunks/app/api/auth/all-providers/route-59077df354d3cef3.js +1 -0
  161. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-59077df354d3cef3.js +1 -0
  162. package/.next/static/chunks/app/api/auth/login/[provider]/route-59077df354d3cef3.js +1 -0
  163. package/.next/static/chunks/app/api/auth/login/route-59077df354d3cef3.js +1 -0
  164. package/.next/static/chunks/app/api/auth/logout/[provider]/route-59077df354d3cef3.js +1 -0
  165. package/.next/static/chunks/app/api/auth/providers/route-59077df354d3cef3.js +1 -0
  166. package/.next/static/chunks/app/api/auth/status/route-59077df354d3cef3.js +1 -0
  167. package/.next/static/chunks/app/api/default-cwd/route-59077df354d3cef3.js +1 -0
  168. package/.next/static/chunks/app/api/files/[...path]/route-59077df354d3cef3.js +1 -0
  169. package/.next/static/chunks/app/api/harness/route-59077df354d3cef3.js +1 -0
  170. package/.next/static/chunks/app/api/home/route-59077df354d3cef3.js +1 -0
  171. package/.next/static/chunks/app/api/internal/runtime/route-59077df354d3cef3.js +1 -0
  172. package/.next/static/chunks/app/api/models/route-59077df354d3cef3.js +1 -0
  173. package/.next/static/chunks/app/api/models-config/discover/route-59077df354d3cef3.js +1 -0
  174. package/.next/static/chunks/app/api/models-config/route-59077df354d3cef3.js +1 -0
  175. package/.next/static/chunks/app/api/models-config/test/route-59077df354d3cef3.js +1 -0
  176. package/.next/static/chunks/app/api/projects/browse/route-59077df354d3cef3.js +1 -0
  177. package/.next/static/chunks/app/api/projects/route-59077df354d3cef3.js +1 -0
  178. package/.next/static/chunks/app/api/search/route-59077df354d3cef3.js +1 -0
  179. package/.next/static/chunks/app/api/sessions/[id]/context/route-59077df354d3cef3.js +1 -0
  180. package/.next/static/chunks/app/api/sessions/[id]/route-59077df354d3cef3.js +1 -0
  181. package/.next/static/chunks/app/api/sessions/new/route-59077df354d3cef3.js +1 -0
  182. package/.next/static/chunks/app/api/sessions/route-59077df354d3cef3.js +1 -0
  183. package/.next/static/chunks/app/api/settings/route-59077df354d3cef3.js +1 -0
  184. package/.next/static/chunks/app/api/skills/install/route-59077df354d3cef3.js +1 -0
  185. package/.next/static/chunks/app/api/skills/route-59077df354d3cef3.js +1 -0
  186. package/.next/static/chunks/app/api/skills/search/route-59077df354d3cef3.js +1 -0
  187. package/.next/static/chunks/app/api/soul/route-59077df354d3cef3.js +1 -0
  188. package/.next/static/chunks/app/api/version/route-59077df354d3cef3.js +1 -0
  189. package/.next/static/chunks/app/layout-6f383e02b7aa4d93.js +1 -0
  190. package/.next/static/chunks/app/page-59077df354d3cef3.js +1 -0
  191. package/.next/static/chunks/app/workspace/{page-696a330100ac0387.js → page-f1d7eb46492b571d.js} +8 -8
  192. package/.next/static/chunks/next/dist/client/components/builtin/app-error-59077df354d3cef3.js +1 -0
  193. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-59077df354d3cef3.js +1 -0
  194. package/.next/static/chunks/next/dist/client/components/builtin/not-found-59077df354d3cef3.js +1 -0
  195. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-59077df354d3cef3.js +1 -0
  196. package/.next/static/chunks/webpack-4056c182d935c524.js +1 -0
  197. package/.next/static/css/a3dc0b6797dcdda6.css +1 -0
  198. package/lib/default-SOUL.md +1 -1
  199. package/next.config.ts +1 -4
  200. package/package.json +1 -1
  201. package/.next/server/app/docs/[[...slug]]/page.js +0 -4
  202. package/.next/server/app/docs/[[...slug]]/page.js.nft.json +0 -1
  203. package/.next/server/app/docs/[[...slug]]/page_client-reference-manifest.js +0 -1
  204. package/.next/server/app/docs/architecture.html +0 -26
  205. package/.next/server/app/docs/architecture.meta +0 -16
  206. package/.next/server/app/docs/architecture.rsc +0 -36
  207. package/.next/server/app/docs/architecture.segments/_full.segment.rsc +0 -36
  208. package/.next/server/app/docs/architecture.segments/_head.segment.rsc +0 -6
  209. package/.next/server/app/docs/architecture.segments/_index.segment.rsc +0 -7
  210. package/.next/server/app/docs/architecture.segments/_tree.segment.rsc +0 -5
  211. package/.next/server/app/docs/architecture.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -12
  212. package/.next/server/app/docs/architecture.segments/docs/$oc$slug.segment.rsc +0 -5
  213. package/.next/server/app/docs/architecture.segments/docs.segment.rsc +0 -6
  214. package/.next/server/app/docs/configuration.html +0 -28
  215. package/.next/server/app/docs/configuration.meta +0 -16
  216. package/.next/server/app/docs/configuration.rsc +0 -34
  217. package/.next/server/app/docs/configuration.segments/_full.segment.rsc +0 -34
  218. package/.next/server/app/docs/configuration.segments/_head.segment.rsc +0 -6
  219. package/.next/server/app/docs/configuration.segments/_index.segment.rsc +0 -7
  220. package/.next/server/app/docs/configuration.segments/_tree.segment.rsc +0 -5
  221. package/.next/server/app/docs/configuration.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -10
  222. package/.next/server/app/docs/configuration.segments/docs/$oc$slug.segment.rsc +0 -5
  223. package/.next/server/app/docs/configuration.segments/docs.segment.rsc +0 -6
  224. package/.next/server/app/docs/file-and-report-viewing.html +0 -29
  225. package/.next/server/app/docs/file-and-report-viewing.meta +0 -16
  226. package/.next/server/app/docs/file-and-report-viewing.rsc +0 -34
  227. package/.next/server/app/docs/file-and-report-viewing.segments/_full.segment.rsc +0 -34
  228. package/.next/server/app/docs/file-and-report-viewing.segments/_head.segment.rsc +0 -6
  229. package/.next/server/app/docs/file-and-report-viewing.segments/_index.segment.rsc +0 -7
  230. package/.next/server/app/docs/file-and-report-viewing.segments/_tree.segment.rsc +0 -5
  231. package/.next/server/app/docs/file-and-report-viewing.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -10
  232. package/.next/server/app/docs/file-and-report-viewing.segments/docs/$oc$slug.segment.rsc +0 -5
  233. package/.next/server/app/docs/file-and-report-viewing.segments/docs.segment.rsc +0 -6
  234. package/.next/server/app/docs/installation-and-deployment.html +0 -30
  235. package/.next/server/app/docs/installation-and-deployment.meta +0 -16
  236. package/.next/server/app/docs/installation-and-deployment.rsc +0 -39
  237. package/.next/server/app/docs/installation-and-deployment.segments/_full.segment.rsc +0 -39
  238. package/.next/server/app/docs/installation-and-deployment.segments/_head.segment.rsc +0 -6
  239. package/.next/server/app/docs/installation-and-deployment.segments/_index.segment.rsc +0 -7
  240. package/.next/server/app/docs/installation-and-deployment.segments/_tree.segment.rsc +0 -5
  241. package/.next/server/app/docs/installation-and-deployment.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -16
  242. package/.next/server/app/docs/installation-and-deployment.segments/docs/$oc$slug.segment.rsc +0 -5
  243. package/.next/server/app/docs/installation-and-deployment.segments/docs.segment.rsc +0 -6
  244. package/.next/server/app/docs/models-and-tools.html +0 -29
  245. package/.next/server/app/docs/models-and-tools.meta +0 -16
  246. package/.next/server/app/docs/models-and-tools.rsc +0 -34
  247. package/.next/server/app/docs/models-and-tools.segments/_full.segment.rsc +0 -34
  248. package/.next/server/app/docs/models-and-tools.segments/_head.segment.rsc +0 -6
  249. package/.next/server/app/docs/models-and-tools.segments/_index.segment.rsc +0 -7
  250. package/.next/server/app/docs/models-and-tools.segments/_tree.segment.rsc +0 -5
  251. package/.next/server/app/docs/models-and-tools.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -10
  252. package/.next/server/app/docs/models-and-tools.segments/docs/$oc$slug.segment.rsc +0 -5
  253. package/.next/server/app/docs/models-and-tools.segments/docs.segment.rsc +0 -6
  254. package/.next/server/app/docs/quick-start.html +0 -24
  255. package/.next/server/app/docs/quick-start.meta +0 -16
  256. package/.next/server/app/docs/quick-start.rsc +0 -36
  257. package/.next/server/app/docs/quick-start.segments/_full.segment.rsc +0 -36
  258. package/.next/server/app/docs/quick-start.segments/_head.segment.rsc +0 -6
  259. package/.next/server/app/docs/quick-start.segments/_index.segment.rsc +0 -7
  260. package/.next/server/app/docs/quick-start.segments/_tree.segment.rsc +0 -5
  261. package/.next/server/app/docs/quick-start.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -12
  262. package/.next/server/app/docs/quick-start.segments/docs/$oc$slug.segment.rsc +0 -5
  263. package/.next/server/app/docs/quick-start.segments/docs.segment.rsc +0 -6
  264. package/.next/server/app/docs/runtime-and-sse.html +0 -28
  265. package/.next/server/app/docs/runtime-and-sse.meta +0 -16
  266. package/.next/server/app/docs/runtime-and-sse.rsc +0 -34
  267. package/.next/server/app/docs/runtime-and-sse.segments/_full.segment.rsc +0 -34
  268. package/.next/server/app/docs/runtime-and-sse.segments/_head.segment.rsc +0 -6
  269. package/.next/server/app/docs/runtime-and-sse.segments/_index.segment.rsc +0 -7
  270. package/.next/server/app/docs/runtime-and-sse.segments/_tree.segment.rsc +0 -5
  271. package/.next/server/app/docs/runtime-and-sse.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -10
  272. package/.next/server/app/docs/runtime-and-sse.segments/docs/$oc$slug.segment.rsc +0 -5
  273. package/.next/server/app/docs/runtime-and-sse.segments/docs.segment.rsc +0 -6
  274. package/.next/server/app/docs/sessions-and-projects.html +0 -27
  275. package/.next/server/app/docs/sessions-and-projects.meta +0 -16
  276. package/.next/server/app/docs/sessions-and-projects.rsc +0 -34
  277. package/.next/server/app/docs/sessions-and-projects.segments/_full.segment.rsc +0 -34
  278. package/.next/server/app/docs/sessions-and-projects.segments/_head.segment.rsc +0 -6
  279. package/.next/server/app/docs/sessions-and-projects.segments/_index.segment.rsc +0 -7
  280. package/.next/server/app/docs/sessions-and-projects.segments/_tree.segment.rsc +0 -5
  281. package/.next/server/app/docs/sessions-and-projects.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -10
  282. package/.next/server/app/docs/sessions-and-projects.segments/docs/$oc$slug.segment.rsc +0 -5
  283. package/.next/server/app/docs/sessions-and-projects.segments/docs.segment.rsc +0 -6
  284. package/.next/server/app/docs/workspace.html +0 -28
  285. package/.next/server/app/docs/workspace.meta +0 -16
  286. package/.next/server/app/docs/workspace.rsc +0 -34
  287. package/.next/server/app/docs/workspace.segments/_full.segment.rsc +0 -34
  288. package/.next/server/app/docs/workspace.segments/_head.segment.rsc +0 -6
  289. package/.next/server/app/docs/workspace.segments/_index.segment.rsc +0 -7
  290. package/.next/server/app/docs/workspace.segments/_tree.segment.rsc +0 -5
  291. package/.next/server/app/docs/workspace.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -10
  292. package/.next/server/app/docs/workspace.segments/docs/$oc$slug.segment.rsc +0 -5
  293. package/.next/server/app/docs/workspace.segments/docs.segment.rsc +0 -6
  294. package/.next/server/app/docs.html +0 -41
  295. package/.next/server/app/docs.meta +0 -16
  296. package/.next/server/app/docs.rsc +0 -35
  297. package/.next/server/app/docs.segments/_full.segment.rsc +0 -35
  298. package/.next/server/app/docs.segments/_head.segment.rsc +0 -6
  299. package/.next/server/app/docs.segments/_index.segment.rsc +0 -7
  300. package/.next/server/app/docs.segments/_tree.segment.rsc +0 -5
  301. package/.next/server/app/docs.segments/docs/$oc$slug/__PAGE__.segment.rsc +0 -11
  302. package/.next/server/app/docs.segments/docs/$oc$slug.segment.rsc +0 -5
  303. package/.next/server/app/docs.segments/docs.segment.rsc +0 -6
  304. package/.next/server/chunks/2098.js +0 -1
  305. package/.next/server/chunks/4091.js +0 -5
  306. package/.next/server/chunks/4443.js +0 -3
  307. package/.next/server/chunks/76.js +0 -1
  308. package/.next/static/c12uc5Ebna-CqP4_lL37X/_ssgManifest.js +0 -1
  309. package/.next/static/chunks/2679.f76721dbd8ec617f.js +0 -5
  310. package/.next/static/chunks/4894-e27a35edd6176226.js +0 -1
  311. package/.next/static/chunks/5122-6e0d29bd15f079e1.js +0 -3
  312. package/.next/static/chunks/5166-58bbf85cbd32ad99.js +0 -1
  313. package/.next/static/chunks/8500-f62a38ff68ab7f42.js +0 -1
  314. package/.next/static/chunks/9278-58ee6294b32318a5.js +0 -3
  315. package/.next/static/chunks/app/api/agent/runtime/route-d7ea01cb10afabab.js +0 -1
  316. package/.next/static/chunks/app/api/auth/all-providers/route-d7ea01cb10afabab.js +0 -1
  317. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-d7ea01cb10afabab.js +0 -1
  318. package/.next/static/chunks/app/api/auth/login/[provider]/route-d7ea01cb10afabab.js +0 -1
  319. package/.next/static/chunks/app/api/auth/login/route-d7ea01cb10afabab.js +0 -1
  320. package/.next/static/chunks/app/api/auth/logout/[provider]/route-d7ea01cb10afabab.js +0 -1
  321. package/.next/static/chunks/app/api/auth/providers/route-d7ea01cb10afabab.js +0 -1
  322. package/.next/static/chunks/app/api/auth/status/route-d7ea01cb10afabab.js +0 -1
  323. package/.next/static/chunks/app/api/default-cwd/route-d7ea01cb10afabab.js +0 -1
  324. package/.next/static/chunks/app/api/files/[...path]/route-d7ea01cb10afabab.js +0 -1
  325. package/.next/static/chunks/app/api/harness/route-d7ea01cb10afabab.js +0 -1
  326. package/.next/static/chunks/app/api/home/route-d7ea01cb10afabab.js +0 -1
  327. package/.next/static/chunks/app/api/internal/runtime/route-d7ea01cb10afabab.js +0 -1
  328. package/.next/static/chunks/app/api/models/route-d7ea01cb10afabab.js +0 -1
  329. package/.next/static/chunks/app/api/models-config/discover/route-d7ea01cb10afabab.js +0 -1
  330. package/.next/static/chunks/app/api/models-config/route-d7ea01cb10afabab.js +0 -1
  331. package/.next/static/chunks/app/api/models-config/test/route-d7ea01cb10afabab.js +0 -1
  332. package/.next/static/chunks/app/api/projects/browse/route-d7ea01cb10afabab.js +0 -1
  333. package/.next/static/chunks/app/api/projects/route-d7ea01cb10afabab.js +0 -1
  334. package/.next/static/chunks/app/api/search/route-d7ea01cb10afabab.js +0 -1
  335. package/.next/static/chunks/app/api/sessions/[id]/context/route-d7ea01cb10afabab.js +0 -1
  336. package/.next/static/chunks/app/api/sessions/[id]/route-d7ea01cb10afabab.js +0 -1
  337. package/.next/static/chunks/app/api/sessions/new/route-d7ea01cb10afabab.js +0 -1
  338. package/.next/static/chunks/app/api/sessions/route-d7ea01cb10afabab.js +0 -1
  339. package/.next/static/chunks/app/api/settings/route-d7ea01cb10afabab.js +0 -1
  340. package/.next/static/chunks/app/api/skills/install/route-d7ea01cb10afabab.js +0 -1
  341. package/.next/static/chunks/app/api/skills/route-d7ea01cb10afabab.js +0 -1
  342. package/.next/static/chunks/app/api/skills/search/route-d7ea01cb10afabab.js +0 -1
  343. package/.next/static/chunks/app/api/soul/route-d7ea01cb10afabab.js +0 -1
  344. package/.next/static/chunks/app/api/version/route-d7ea01cb10afabab.js +0 -1
  345. package/.next/static/chunks/app/docs/[[...slug]]/page-d232277716ab7921.js +0 -1
  346. package/.next/static/chunks/app/docs/layout-4809bb9dd4b49bff.js +0 -1
  347. package/.next/static/chunks/app/layout-11cc1f48ff425fd0.js +0 -1
  348. package/.next/static/chunks/app/page-eb62ac677a87b790.js +0 -1
  349. package/.next/static/chunks/next/dist/client/components/builtin/app-error-d7ea01cb10afabab.js +0 -1
  350. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-d7ea01cb10afabab.js +0 -1
  351. package/.next/static/chunks/next/dist/client/components/builtin/not-found-d7ea01cb10afabab.js +0 -1
  352. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-d7ea01cb10afabab.js +0 -1
  353. package/.next/static/chunks/webpack-ced9e639bb94bd30.js +0 -1
  354. package/.next/static/css/876e881d7ba02ed2.css +0 -1
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=3031,exports.ids=[3031],exports.modules={56472:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(65246),e=c(21143),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},80339:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(21143),e=c(69085),f=(0,d.K2)((a,b)=>{let c;return"sandbox"===b&&(c=(0,e.Ltv)("#i"+a)),("sandbox"===b?(0,e.Ltv)(c.nodes()[0].contentDocument.body):(0,e.Ltv)("body")).select(`[id="${a}"]`)},"getDiagramElement")},83031:(a,b,c)=>{c.d(b,{Zk:()=>k,q7:()=>M,tM:()=>ac,u4:()=>ab});var d=c(80339),e=c(56472),f=c(44906),g=c(70400),h=c(65246),i=c(21143),j=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,2],c=[1,3],d=[1,4],e=[2,4],f=[1,9],g=[1,11],h=[1,16],j=[1,17],k=[1,18],l=[1,19],m=[1,33],n=[1,20],o=[1,21],p=[1,22],q=[1,23],r=[1,24],s=[1,26],t=[1,27],u=[1,28],v=[1,29],w=[1,30],x=[1,31],y=[1,32],z=[1,35],A=[1,36],B=[1,37],C=[1,38],D=[1,34],E=[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],F=[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],G=[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],H={trace:(0,i.K2)(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:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 3:return d.setRootDoc(f[h]),f[h];case 4:this.$=[];break;case 5:"nl"!=f[h]&&(f[h-1].push(f[h]),this.$=f[h-1]);break;case 6:case 7:case 12:this.$=f[h];break;case 8:this.$="nl";break;case 13:let i=f[h-1];i.description=d.trimColon(f[h]),this.$=i;break;case 14:this.$={stmt:"relation",state1:f[h-2],state2:f[h]};break;case 15:let j=d.trimColon(f[h]);this.$={stmt:"relation",state1:f[h-3],state2:f[h-1],description:j};break;case 19:this.$={stmt:"state",id:f[h-3],type:"default",description:"",doc:f[h-1]};break;case 20:var k=f[h],l=f[h-2].trim();if(f[h].match(":")){var m=f[h].split(":");k=m[0],l=[l,m[1]]}this.$={stmt:"state",id:k,type:"default",description:l};break;case 21:this.$={stmt:"state",id:f[h-3],type:"default",description:f[h-5],doc:f[h-1]};break;case 22:this.$={stmt:"state",id:f[h],type:"fork"};break;case 23:this.$={stmt:"state",id:f[h],type:"join"};break;case 24:this.$={stmt:"state",id:f[h],type:"choice"};break;case 25:this.$={stmt:"state",id:d.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:f[h-1].trim(),note:{position:f[h-2].trim(),text:f[h].trim()}};break;case 29:this.$=f[h].trim(),d.setAccTitle(this.$);break;case 30:case 31:this.$=f[h].trim(),d.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:f[h-3],url:f[h-2],tooltip:f[h-1]};break;case 33:this.$={stmt:"click",id:f[h-3],url:f[h-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:f[h-1].trim(),classes:f[h].trim()};break;case 36:this.$={stmt:"style",id:f[h-1].trim(),styleClass:f[h].trim()};break;case 37:this.$={stmt:"applyClass",id:f[h-1].trim(),styleClass:f[h].trim()};break;case 38:d.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:d.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:d.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:d.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:f[h].trim(),type:"default",description:""};break;case 46:case 47:this.$={stmt:"state",id:f[h-2].trim(),classes:[f[h].trim()],type:"default",description:""}}},"anonymous"),table:[{3:1,4:b,5:c,6:d},{1:[3]},{3:5,4:b,5:c,6:d},{3:6,4:b,5:c,6:d},a([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],e,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:f,5:g,8:8,9:10,10:12,11:13,12:14,13:15,16:h,17:j,19:k,22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:h,17:j,19:k,22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,7]),a(E,[2,8]),a(E,[2,9]),a(E,[2,10]),a(E,[2,11]),a(E,[2,12],{14:[1,40],15:[1,41]}),a(E,[2,16]),{18:[1,42]},a(E,[2,18],{20:[1,43]}),{23:[1,44]},a(E,[2,22]),a(E,[2,23]),a(E,[2,24]),a(E,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},a(E,[2,28]),{34:[1,49]},{36:[1,50]},a(E,[2,31]),{13:51,24:m,57:D},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},a(F,[2,44],{58:[1,56]}),a(F,[2,45],{58:[1,57]}),a(E,[2,38]),a(E,[2,39]),a(E,[2,40]),a(E,[2,41]),a(E,[2,6]),a(E,[2,13]),{13:58,24:m,57:D},a(E,[2,17]),a(G,e,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},a(E,[2,29]),a(E,[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]},a(E,[2,14],{14:[1,71]}),{4:f,5:g,8:8,9:10,10:12,11:13,12:14,13:15,16:h,17:j,19:k,21:[1,72],22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},a(E,[2,34]),a(E,[2,35]),a(E,[2,36]),a(E,[2,37]),a(F,[2,46]),a(F,[2,47]),a(E,[2,15]),a(E,[2,19]),a(G,e,{7:78}),a(E,[2,26]),a(E,[2,27]),{5:[1,79]},{5:[1,80]},{4:f,5:g,8:8,9:10,10:12,11:13,12:14,13:15,16:h,17:j,19:k,21:[1,81],22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,32]),a(E,[2,33]),a(E,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function I(){this.yy={}}return H.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,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:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.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),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=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),c.length-1&&(this.yylineno-=c.length-1);var e=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:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(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:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={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&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===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:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(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:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){function e(){let c=b.yytext.indexOf("%%");if(0===c)return!1;if(c>0){let d=b.yytext.slice(0,c),e=b.yytext.slice(c);e&&a.lexer.unput(e),b.yytext=d}return!0}switch((0,i.K2)(e,"processId"),c){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 77:return 5;case 9:case 10:case 11:case 12:case 56:case 62: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 53: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(),b.yytext=b.yytext.slice(0,-8).trim(),25;case 38:case 41:return this.popState(),b.yytext=b.yytext.slice(0,-8).trim(),26;case 39:case 42:return this.popState(),b.yytext=b.yytext.slice(0,-10).trim(),27;case 47:this.pushState("STATE_STRING");break;case 48:return this.pushState("STATE_ID"),"AS";case 49:case 64:if(!e())return;return this.popState(),"ID";case 51:return"STATE_DESCR";case 52:return 19;case 54:return this.popState(),this.pushState("struct"),20;case 55:return this.popState(),21;case 57:return this.begin("NOTE"),29;case 58:return this.popState(),this.pushState("NOTE_ID"),59;case 59:return this.popState(),this.pushState("NOTE_ID"),60;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 63:return"NOTE_TEXT";case 65:if(!e())return;return this.popState(),this.pushState("NOTE_TEXT"),24;case 66:return this.popState(),b.yytext=b.yytext.substr(2).trim(),31;case 67:return this.popState(),b.yytext=b.yytext.slice(0,-8).trim(),31;case 68:case 69:return 6;case 70:return 16;case 71:return 57;case 72:if(!e())return;return 24;case 73:return b.yytext=b.yytext.trim(),14;case 74:return 15;case 75:return 28;case 76:return 58;case 78: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,/^(?:[^\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,55,56,57,71,72,73,74,75,76],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],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],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,54,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}},(0,i.K2)(I,"Parser"),I.prototype=H,H.Parser=I,new I}();j.parser=j;var k=j,l="TB",m="state",n="root",o="relation",p="default",q="divider",r="fill:none",s="fill: #333",t="markdown",u="normal",v="rect",w="rectWithTitle",x="divider",y="roundedWithTitle",z="statediagram",A=`${z}-state`,B="transition",C=`${B} note-edge`,D=`${z}-note`,E=`${z}-cluster`,F=`${z}-cluster-alt`,G="parent",H="note",I="----",J=`${I}${H}`,K=`${I}${G}`,L=(0,i.K2)((a,b=l)=>{if(!a.doc)return b;let c=b;for(let b of a.doc)"dir"===b.stmt&&(c=b.value);return c},"getDir"),M={getClasses:(0,i.K2)(function(a,b){return b.db.getClasses()},"getClasses"),draw:(0,i.K2)(async function(a,b,c,j){i.Rm.info("REF0:"),i.Rm.info("Drawing state diagram (v2)",b);let{securityLevel:k,state:l,layout:m}=(0,h.D7)();j.db.extract(j.db.getRootDocV2());let n=j.db.getData(),o=(0,d.A)(b,k);n.type=j.type,n.layoutAlgorithm=m,n.nodeSpacing=l?.nodeSpacing||50,n.rankSpacing=l?.rankSpacing||50,"neo"===(0,h.D7)().look?n.markers=["barbNeo"]:n.markers=["barb"],n.diagramId=b,await (0,f.XX)(n,o);try{("function"==typeof j.db.getLinks?j.db.getLinks():new Map).forEach((a,b)=>{let c,d="string"==typeof b?b:"string"==typeof b?.id?b.id:"";if(!d)return void i.Rm.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(b));let e=o.node()?.querySelectorAll("g");if(e?.forEach(a=>{a.textContent?.trim()===d&&(c=a)}),!c)return void i.Rm.warn("⚠️ Could not find node matching text:",d);let f=c.parentNode;if(!f)return void i.Rm.warn("⚠️ Node has no parent, cannot wrap:",d);let g=document.createElementNS("http://www.w3.org/2000/svg","a"),h=a.url.replace(/^"+|"+$/g,"");if(g.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",h),g.setAttribute("target","_blank"),a.tooltip){let b=a.tooltip.replace(/^"+|"+$/g,"");g.setAttribute("title",b)}f.replaceChild(g,c),g.appendChild(c),i.Rm.info("\uD83D\uDD17 Wrapped node in <a> tag for:",d,a.url)})}catch(a){i.Rm.error("❌ Error injecting clickable links:",a)}g._K.insertTitle(o,"statediagramTitleText",l?.titleTopMargin??25,j.db.getDiagramTitle()),(0,e.P)(o,8,z,l?.useMaxWidth??!0)},"draw"),getDir:L},N=new Map,O=0;function P(a="",b=0,c="",d=I){let e=null!==c&&c.length>0?`${d}${c}`:"";return`state-${a}${e}-${b}`}(0,i.K2)(P,"stateDomId");var Q=(0,i.K2)((a,b,c,d,e,f,g,j)=>{i.Rm.trace("items",b),b.forEach(b=>{switch(b.stmt){case m:case p:V(a,b,c,d,e,f,g,j);break;case o:{V(a,b.state1,c,d,e,f,g,j),V(a,b.state2,c,d,e,f,g,j);let i="neo"===g,k={id:"edge"+O,start:b.state1.id,end:b.state2.id,arrowhead:"normal",arrowTypeEnd:i?"arrow_barb_neo":"arrow_barb",style:r,labelStyle:"",label:h.Y2.sanitizeText(b.description??"",(0,h.D7)()),arrowheadStyle:s,labelpos:"c",labelType:t,thickness:u,classes:B,look:g};e.push(k),O++}}})},"setupDoc"),R=(0,i.K2)((a,b=l)=>{let c=b;if(a.doc)for(let b of a.doc)"dir"===b.stmt&&(c=b.value);return c},"getDir");function S(a,b,c){if(!b.id||"</join></fork>"===b.id||"</choice>"===b.id)return;b.cssClasses&&(Array.isArray(b.cssCompiledStyles)||(b.cssCompiledStyles=[]),b.cssClasses.split(" ").forEach(a=>{let d=c.get(a);d&&(b.cssCompiledStyles=[...b.cssCompiledStyles??[],...d.styles])}));let d=a.find(a=>a.id===b.id);d?Object.assign(d,b):a.push(b)}function T(a){return a?.classes?.join(" ")??""}function U(a){return a?.styles??[]}(0,i.K2)(S,"insertOrUpdateNode"),(0,i.K2)(T,"getClassesFromDbInfo"),(0,i.K2)(U,"getStylesFromDbInfo");var V=(0,i.K2)((a,b,c,d,e,f,g,j)=>{let k=b.id,l=c.get(k),m=T(l),n=U(l),o=(0,h.D7)();if(i.Rm.info("dataFetcher parsedItem",b,l,n),"root"!==k){let c=v;!0===b.start?c="stateStart":!1===b.start&&(c="stateEnd"),b.type!==p&&(c=b.type),N.get(k)||N.set(k,{id:k,shape:c,description:h.Y2.sanitizeText(k,o),cssClasses:`${m} ${A}`,cssStyles:n});let l=N.get(k);b.description&&(Array.isArray(l.description)?(l.shape=w,l.description.push(b.description)):l.description?.length&&l.description.length>0?(l.shape=w,l.description===k?l.description=[b.description]:l.description=[l.description,b.description]):(l.shape=v,l.description=b.description),l.description=h.Y2.sanitizeTextOrArray(l.description,o)),l.description?.length===1&&l.shape===w&&("group"===l.type?l.shape=y:l.shape=v),!l.type&&b.doc&&(i.Rm.info("Setting cluster for XCX",k,R(b)),l.type="group",l.isGroup=!0,l.dir=R(b),l.shape=b.type===q?x:y,l.cssClasses=`${l.cssClasses} ${E} ${f?F:""}`);let z={labelStyle:"",shape:l.shape,label:l.description,cssClasses:l.cssClasses,cssCompiledStyles:[],cssStyles:l.cssStyles,id:k,dir:l.dir,domId:P(k,O),type:l.type,isGroup:"group"===l.type,padding:8,rx:10,ry:10,look:g,labelType:"markdown"};if(z.shape===x&&(z.label=""),a&&"root"!==a.id&&(i.Rm.trace("Setting node ",k," to be child of its parent ",a.id),z.parentId=a.id),z.centerLabel=!0,b.note){let a={labelStyle:"",shape:"note",label:b.note.text,labelType:"markdown",cssClasses:D,cssStyles:[],cssCompiledStyles:[],id:k+J+"-"+O,domId:P(k,O,H),type:l.type,isGroup:"group"===l.type,padding:o.flowchart?.padding,look:g,position:b.note.position},c=k+K,f={labelStyle:"",shape:"noteGroup",label:b.note.text,cssClasses:l.cssClasses,cssStyles:[],id:k+K,domId:P(k,O,G),type:"group",isGroup:!0,padding:16,look:g,position:b.note.position};O++,f.id=c,a.parentId=c,S(d,f,j),S(d,a,j),S(d,z,j);let h=k,i=a.id;"left of"===b.note.position&&(h=a.id,i=k),e.push({id:h+"-"+i,start:h,end:i,arrowhead:"none",arrowTypeEnd:"",style:r,labelStyle:"",classes:C,arrowheadStyle:s,labelpos:"c",labelType:t,thickness:u,look:g})}else S(d,z,j)}b.doc&&(i.Rm.trace("Adding nodes children "),Q(b,b.doc,c,d,e,!f,g,j))},"dataFetcher"),W=(0,i.K2)(()=>{N.clear(),O=0},"reset"),X="start",Y="color",Z="fill",$=(0,i.K2)(()=>new Map,"newClassesList"),_=(0,i.K2)(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),aa=(0,i.K2)(a=>JSON.parse(JSON.stringify(a)),"clone"),ab=class{constructor(a){this.version=a,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=$(),this.documents={root:_()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.getAccTitle=h.iN,this.setAccTitle=h.SV,this.getAccDescription=h.m7,this.setAccDescription=h.EI,this.setDiagramTitle=h.ke,this.getDiagramTitle=h.ab,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)}static{(0,i.K2)(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(a){for(let b of(this.clear(!0),Array.isArray(a)?a:a.doc))switch(b.stmt){case m:this.addState(b.id.trim(),b.type,b.doc,b.description,b.note);break;case o:this.addRelation(b.state1,b.state2,b.description);break;case"classDef":this.addStyleClass(b.id.trim(),b.classes);break;case"style":this.handleStyleDef(b);break;case"applyClass":this.setCssClass(b.id.trim(),b.styleClass);break;case"click":this.addLink(b.id,b.url,b.tooltip)}let b=this.getStates(),c=(0,h.D7)();for(let a of(W(),V(void 0,this.getRootDocV2(),b,this.nodes,this.edges,!0,c.look,this.classes),this.nodes))if(Array.isArray(a.label)){if(a.description=a.label.slice(1),a.isGroup&&a.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${a.id}]`);a.label=a.label[0]}}handleStyleDef(a){let b=a.id.trim().split(","),c=a.styleClass.split(",");for(let a of b){let b=this.getState(a);if(!b){let c=a.trim();this.addState(c),b=this.getState(c)}b&&(b.styles=c.map(a=>a.replace(/;/g,"")?.trim()))}}setRootDoc(a){i.Rm.info("Setting root doc",a),this.rootDoc=a,1===this.version?this.extract(a):this.extract(this.getRootDocV2())}docTranslator(a,b,c){if(b.stmt===o){this.docTranslator(a,b.state1,!0),this.docTranslator(a,b.state2,!1);return}if(b.stmt===m&&("[*]"===b.id?(b.id=a.id+(c?"_start":"_end"),b.start=c):b.id=b.id.trim()),b.stmt!==n&&b.stmt!==m||!b.doc)return;let d=[],e=[];for(let a of b.doc)if(a.type===q){let b=aa(a);b.doc=aa(e),d.push(b),e=[]}else e.push(a);if(d.length>0&&e.length>0){let a={stmt:m,id:(0,g.$C)(),type:"divider",doc:aa(e)};d.push(aa(a)),b.doc=d}b.doc.forEach(a=>this.docTranslator(b,a,!0))}getRootDocV2(){return this.docTranslator({id:n,stmt:n},{id:n,stmt:n,doc:this.rootDoc},!0),{id:n,doc:this.rootDoc}}addState(a,b=p,c,d,e,f,g,j){let k=a?.trim();if(this.currentDocument.states.has(k)){let a=this.currentDocument.states.get(k);if(!a)throw Error(`State not found: ${k}`);a.doc||(a.doc=c),a.type||(a.type=b)}else i.Rm.info("Adding state ",k,d),this.currentDocument.states.set(k,{stmt:m,id:k,descriptions:[],type:b,doc:c,note:e,classes:[],styles:[],textStyles:[]});if(d&&(i.Rm.info("Setting state description",k,d),(Array.isArray(d)?d:[d]).forEach(a=>this.addDescription(k,a.trim()))),e){let a=this.currentDocument.states.get(k);if(!a)throw Error(`State not found: ${k}`);a.note=e,a.note.text=h.Y2.sanitizeText(a.note.text,(0,h.D7)())}f&&(i.Rm.info("Setting state classes",k,f),(Array.isArray(f)?f:[f]).forEach(a=>this.setCssClass(k,a.trim()))),g&&(i.Rm.info("Setting state styles",k,g),(Array.isArray(g)?g:[g]).forEach(a=>this.setStyle(k,a.trim()))),j&&(i.Rm.info("Setting state styles",k,g),(Array.isArray(j)?j:[j]).forEach(a=>this.setTextStyle(k,a.trim())))}clear(a){this.nodes=[],this.edges=[],this.documents={root:_()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=$(),a||(this.links=new Map,(0,h.IU)())}getState(a){return this.currentDocument.states.get(a)}getStates(){return this.currentDocument.states}logDocuments(){i.Rm.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(a,b,c){this.links.set(a,{url:b,tooltip:c}),i.Rm.warn("Adding link",a,b,c)}getLinks(){return this.links}startIdIfNeeded(a=""){return"[*]"===a?(this.startEndCount++,`${X}${this.startEndCount}`):a}startTypeIfNeeded(a="",b=p){return"[*]"===a?X:b}endIdIfNeeded(a=""){return"[*]"===a?(this.startEndCount++,`end${this.startEndCount}`):a}endTypeIfNeeded(a="",b=p){return"[*]"===a?"end":b}addRelationObjs(a,b,c=""){let d=this.startIdIfNeeded(a.id.trim()),e=this.startTypeIfNeeded(a.id.trim(),a.type),f=this.startIdIfNeeded(b.id.trim()),g=this.startTypeIfNeeded(b.id.trim(),b.type);this.addState(d,e,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles),this.addState(f,g,b.doc,b.description,b.note,b.classes,b.styles,b.textStyles),this.currentDocument.relations.push({id1:d,id2:f,relationTitle:h.Y2.sanitizeText(c,(0,h.D7)())})}addRelation(a,b,c){if("object"==typeof a&&"object"==typeof b)this.addRelationObjs(a,b,c);else if("string"==typeof a&&"string"==typeof b){let d=this.startIdIfNeeded(a.trim()),e=this.startTypeIfNeeded(a),f=this.endIdIfNeeded(b.trim()),g=this.endTypeIfNeeded(b);this.addState(d,e),this.addState(f,g),this.currentDocument.relations.push({id1:d,id2:f,relationTitle:c?h.Y2.sanitizeText(c,(0,h.D7)()):void 0})}}addDescription(a,b){let c=this.currentDocument.states.get(a),d=b.startsWith(":")?b.replace(":","").trim():b;c?.descriptions?.push(h.Y2.sanitizeText(d,(0,h.D7)()))}cleanupLabel(a){return a.startsWith(":")?a.slice(2).trim():a.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(a,b=""){this.classes.has(a)||this.classes.set(a,{id:a,styles:[],textStyles:[]});let c=this.classes.get(a);b&&c&&b.split(",").forEach(a=>{let b=a.replace(/([^;]*);/,"$1").trim();if(RegExp(Y).exec(a)){let a=b.replace(Z,"bgFill").replace(Y,Z);c.textStyles.push(a)}c.styles.push(b)})}getClasses(){return this.classes}setCssClass(a,b){a.split(",").forEach(a=>{let c=this.getState(a);if(!c){let b=a.trim();this.addState(b),c=this.getState(b)}c?.classes?.push(b)})}setStyle(a,b){this.getState(a)?.styles?.push(b)}setTextStyle(a,b){this.getState(a)?.textStyles?.push(b)}getDirectionStatement(){return this.rootDoc.find(a=>"dir"===a.stmt)}getDirection(){return this.getDirectionStatement()?.value??"TB"}setDirection(a){let b=this.getDirectionStatement();b?b.value=a:this.rootDoc.unshift({stmt:"dir",value:a})}trimColon(a){return a.startsWith(":")?a.slice(1).trim():a.trim()}getData(){let a=(0,h.D7)();return{nodes:this.nodes,edges:this.edges,other:{},config:a,direction:L(this.getRootDocV2())}}getConfig(){return(0,h.D7)().state}},ac=(0,i.K2)(a=>`
1
+ "use strict";exports.id=3031,exports.ids=[3031],exports.modules={34091:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(65246),e=c(21143),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},80339:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(21143),e=c(69085),f=(0,d.K2)((a,b)=>{let c;return"sandbox"===b&&(c=(0,e.Ltv)("#i"+a)),("sandbox"===b?(0,e.Ltv)(c.nodes()[0].contentDocument.body):(0,e.Ltv)("body")).select(`[id="${a}"]`)},"getDiagramElement")},83031:(a,b,c)=>{c.d(b,{Zk:()=>k,q7:()=>M,tM:()=>ac,u4:()=>ab});var d=c(80339),e=c(34091),f=c(44906),g=c(70400),h=c(65246),i=c(21143),j=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[1,2],c=[1,3],d=[1,4],e=[2,4],f=[1,9],g=[1,11],h=[1,16],j=[1,17],k=[1,18],l=[1,19],m=[1,33],n=[1,20],o=[1,21],p=[1,22],q=[1,23],r=[1,24],s=[1,26],t=[1,27],u=[1,28],v=[1,29],w=[1,30],x=[1,31],y=[1,32],z=[1,35],A=[1,36],B=[1,37],C=[1,38],D=[1,34],E=[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],F=[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],G=[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],H={trace:(0,i.K2)(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:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 3:return d.setRootDoc(f[h]),f[h];case 4:this.$=[];break;case 5:"nl"!=f[h]&&(f[h-1].push(f[h]),this.$=f[h-1]);break;case 6:case 7:case 12:this.$=f[h];break;case 8:this.$="nl";break;case 13:let i=f[h-1];i.description=d.trimColon(f[h]),this.$=i;break;case 14:this.$={stmt:"relation",state1:f[h-2],state2:f[h]};break;case 15:let j=d.trimColon(f[h]);this.$={stmt:"relation",state1:f[h-3],state2:f[h-1],description:j};break;case 19:this.$={stmt:"state",id:f[h-3],type:"default",description:"",doc:f[h-1]};break;case 20:var k=f[h],l=f[h-2].trim();if(f[h].match(":")){var m=f[h].split(":");k=m[0],l=[l,m[1]]}this.$={stmt:"state",id:k,type:"default",description:l};break;case 21:this.$={stmt:"state",id:f[h-3],type:"default",description:f[h-5],doc:f[h-1]};break;case 22:this.$={stmt:"state",id:f[h],type:"fork"};break;case 23:this.$={stmt:"state",id:f[h],type:"join"};break;case 24:this.$={stmt:"state",id:f[h],type:"choice"};break;case 25:this.$={stmt:"state",id:d.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:f[h-1].trim(),note:{position:f[h-2].trim(),text:f[h].trim()}};break;case 29:this.$=f[h].trim(),d.setAccTitle(this.$);break;case 30:case 31:this.$=f[h].trim(),d.setAccDescription(this.$);break;case 32:this.$={stmt:"click",id:f[h-3],url:f[h-2],tooltip:f[h-1]};break;case 33:this.$={stmt:"click",id:f[h-3],url:f[h-1],tooltip:""};break;case 34:case 35:this.$={stmt:"classDef",id:f[h-1].trim(),classes:f[h].trim()};break;case 36:this.$={stmt:"style",id:f[h-1].trim(),styleClass:f[h].trim()};break;case 37:this.$={stmt:"applyClass",id:f[h-1].trim(),styleClass:f[h].trim()};break;case 38:d.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:d.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:d.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:d.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:f[h].trim(),type:"default",description:""};break;case 46:case 47:this.$={stmt:"state",id:f[h-2].trim(),classes:[f[h].trim()],type:"default",description:""}}},"anonymous"),table:[{3:1,4:b,5:c,6:d},{1:[3]},{3:5,4:b,5:c,6:d},{3:6,4:b,5:c,6:d},a([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],e,{7:7}),{1:[2,1]},{1:[2,2]},{1:[2,3],4:f,5:g,8:8,9:10,10:12,11:13,12:14,13:15,16:h,17:j,19:k,22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,5]),{9:39,10:12,11:13,12:14,13:15,16:h,17:j,19:k,22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,7]),a(E,[2,8]),a(E,[2,9]),a(E,[2,10]),a(E,[2,11]),a(E,[2,12],{14:[1,40],15:[1,41]}),a(E,[2,16]),{18:[1,42]},a(E,[2,18],{20:[1,43]}),{23:[1,44]},a(E,[2,22]),a(E,[2,23]),a(E,[2,24]),a(E,[2,25]),{30:45,31:[1,46],59:[1,47],60:[1,48]},a(E,[2,28]),{34:[1,49]},{36:[1,50]},a(E,[2,31]),{13:51,24:m,57:D},{42:[1,52],44:[1,53]},{46:[1,54]},{49:[1,55]},a(F,[2,44],{58:[1,56]}),a(F,[2,45],{58:[1,57]}),a(E,[2,38]),a(E,[2,39]),a(E,[2,40]),a(E,[2,41]),a(E,[2,6]),a(E,[2,13]),{13:58,24:m,57:D},a(E,[2,17]),a(G,e,{7:59}),{24:[1,60]},{24:[1,61]},{23:[1,62]},{24:[2,48]},{24:[2,49]},a(E,[2,29]),a(E,[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]},a(E,[2,14],{14:[1,71]}),{4:f,5:g,8:8,9:10,10:12,11:13,12:14,13:15,16:h,17:j,19:k,21:[1,72],22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,20],{20:[1,73]}),{31:[1,74]},{24:[1,75]},{39:[1,76]},{39:[1,77]},a(E,[2,34]),a(E,[2,35]),a(E,[2,36]),a(E,[2,37]),a(F,[2,46]),a(F,[2,47]),a(E,[2,15]),a(E,[2,19]),a(G,e,{7:78}),a(E,[2,26]),a(E,[2,27]),{5:[1,79]},{5:[1,80]},{4:f,5:g,8:8,9:10,10:12,11:13,12:14,13:15,16:h,17:j,19:k,21:[1,81],22:l,24:m,25:n,26:o,27:p,28:q,29:r,32:25,33:s,35:t,37:u,38:v,41:w,45:x,48:y,51:z,52:A,53:B,54:C,57:D},a(E,[2,32]),a(E,[2,33]),a(E,[2,21])],defaultActions:{5:[2,1],6:[2,2],47:[2,48],48:[2,49]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function I(){this.yy={}}return H.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,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:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.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),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=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),c.length-1&&(this.yylineno-=c.length-1);var e=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:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(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:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={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&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===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:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(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:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){function e(){let c=b.yytext.indexOf("%%");if(0===c)return!1;if(c>0){let d=b.yytext.slice(0,c),e=b.yytext.slice(c);e&&a.lexer.unput(e),b.yytext=d}return!0}switch((0,i.K2)(e,"processId"),c){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 77:return 5;case 9:case 10:case 11:case 12:case 56:case 62: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 53: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(),b.yytext=b.yytext.slice(0,-8).trim(),25;case 38:case 41:return this.popState(),b.yytext=b.yytext.slice(0,-8).trim(),26;case 39:case 42:return this.popState(),b.yytext=b.yytext.slice(0,-10).trim(),27;case 47:this.pushState("STATE_STRING");break;case 48:return this.pushState("STATE_ID"),"AS";case 49:case 64:if(!e())return;return this.popState(),"ID";case 51:return"STATE_DESCR";case 52:return 19;case 54:return this.popState(),this.pushState("struct"),20;case 55:return this.popState(),21;case 57:return this.begin("NOTE"),29;case 58:return this.popState(),this.pushState("NOTE_ID"),59;case 59:return this.popState(),this.pushState("NOTE_ID"),60;case 60:this.popState(),this.pushState("FLOATING_NOTE");break;case 61:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 63:return"NOTE_TEXT";case 65:if(!e())return;return this.popState(),this.pushState("NOTE_TEXT"),24;case 66:return this.popState(),b.yytext=b.yytext.substr(2).trim(),31;case 67:return this.popState(),b.yytext=b.yytext.slice(0,-8).trim(),31;case 68:case 69:return 6;case 70:return 16;case 71:return 57;case 72:if(!e())return;return 24;case 73:return b.yytext=b.yytext.trim(),14;case 74:return 15;case 75:return 28;case 76:return 58;case 78: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,/^(?:[^\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,55,56,57,71,72,73,74,75,76],inclusive:!1},FLOATING_NOTE_ID:{rules:[64],inclusive:!1},FLOATING_NOTE:{rules:[61,62,63],inclusive:!1},NOTE_TEXT:{rules:[66,67],inclusive:!1},NOTE_ID:{rules:[65],inclusive:!1},NOTE:{rules:[58,59,60],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],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,54,57,68,69,70,71,72,73,74,76,77,78],inclusive:!0}}},(0,i.K2)(I,"Parser"),I.prototype=H,H.Parser=I,new I}();j.parser=j;var k=j,l="TB",m="state",n="root",o="relation",p="default",q="divider",r="fill:none",s="fill: #333",t="markdown",u="normal",v="rect",w="rectWithTitle",x="divider",y="roundedWithTitle",z="statediagram",A=`${z}-state`,B="transition",C=`${B} note-edge`,D=`${z}-note`,E=`${z}-cluster`,F=`${z}-cluster-alt`,G="parent",H="note",I="----",J=`${I}${H}`,K=`${I}${G}`,L=(0,i.K2)((a,b=l)=>{if(!a.doc)return b;let c=b;for(let b of a.doc)"dir"===b.stmt&&(c=b.value);return c},"getDir"),M={getClasses:(0,i.K2)(function(a,b){return b.db.getClasses()},"getClasses"),draw:(0,i.K2)(async function(a,b,c,j){i.Rm.info("REF0:"),i.Rm.info("Drawing state diagram (v2)",b);let{securityLevel:k,state:l,layout:m}=(0,h.D7)();j.db.extract(j.db.getRootDocV2());let n=j.db.getData(),o=(0,d.A)(b,k);n.type=j.type,n.layoutAlgorithm=m,n.nodeSpacing=l?.nodeSpacing||50,n.rankSpacing=l?.rankSpacing||50,"neo"===(0,h.D7)().look?n.markers=["barbNeo"]:n.markers=["barb"],n.diagramId=b,await (0,f.XX)(n,o);try{("function"==typeof j.db.getLinks?j.db.getLinks():new Map).forEach((a,b)=>{let c,d="string"==typeof b?b:"string"==typeof b?.id?b.id:"";if(!d)return void i.Rm.warn("⚠️ Invalid or missing stateId from key:",JSON.stringify(b));let e=o.node()?.querySelectorAll("g");if(e?.forEach(a=>{a.textContent?.trim()===d&&(c=a)}),!c)return void i.Rm.warn("⚠️ Could not find node matching text:",d);let f=c.parentNode;if(!f)return void i.Rm.warn("⚠️ Node has no parent, cannot wrap:",d);let g=document.createElementNS("http://www.w3.org/2000/svg","a"),h=a.url.replace(/^"+|"+$/g,"");if(g.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",h),g.setAttribute("target","_blank"),a.tooltip){let b=a.tooltip.replace(/^"+|"+$/g,"");g.setAttribute("title",b)}f.replaceChild(g,c),g.appendChild(c),i.Rm.info("\uD83D\uDD17 Wrapped node in <a> tag for:",d,a.url)})}catch(a){i.Rm.error("❌ Error injecting clickable links:",a)}g._K.insertTitle(o,"statediagramTitleText",l?.titleTopMargin??25,j.db.getDiagramTitle()),(0,e.P)(o,8,z,l?.useMaxWidth??!0)},"draw"),getDir:L},N=new Map,O=0;function P(a="",b=0,c="",d=I){let e=null!==c&&c.length>0?`${d}${c}`:"";return`state-${a}${e}-${b}`}(0,i.K2)(P,"stateDomId");var Q=(0,i.K2)((a,b,c,d,e,f,g,j)=>{i.Rm.trace("items",b),b.forEach(b=>{switch(b.stmt){case m:case p:V(a,b,c,d,e,f,g,j);break;case o:{V(a,b.state1,c,d,e,f,g,j),V(a,b.state2,c,d,e,f,g,j);let i="neo"===g,k={id:"edge"+O,start:b.state1.id,end:b.state2.id,arrowhead:"normal",arrowTypeEnd:i?"arrow_barb_neo":"arrow_barb",style:r,labelStyle:"",label:h.Y2.sanitizeText(b.description??"",(0,h.D7)()),arrowheadStyle:s,labelpos:"c",labelType:t,thickness:u,classes:B,look:g};e.push(k),O++}}})},"setupDoc"),R=(0,i.K2)((a,b=l)=>{let c=b;if(a.doc)for(let b of a.doc)"dir"===b.stmt&&(c=b.value);return c},"getDir");function S(a,b,c){if(!b.id||"</join></fork>"===b.id||"</choice>"===b.id)return;b.cssClasses&&(Array.isArray(b.cssCompiledStyles)||(b.cssCompiledStyles=[]),b.cssClasses.split(" ").forEach(a=>{let d=c.get(a);d&&(b.cssCompiledStyles=[...b.cssCompiledStyles??[],...d.styles])}));let d=a.find(a=>a.id===b.id);d?Object.assign(d,b):a.push(b)}function T(a){return a?.classes?.join(" ")??""}function U(a){return a?.styles??[]}(0,i.K2)(S,"insertOrUpdateNode"),(0,i.K2)(T,"getClassesFromDbInfo"),(0,i.K2)(U,"getStylesFromDbInfo");var V=(0,i.K2)((a,b,c,d,e,f,g,j)=>{let k=b.id,l=c.get(k),m=T(l),n=U(l),o=(0,h.D7)();if(i.Rm.info("dataFetcher parsedItem",b,l,n),"root"!==k){let c=v;!0===b.start?c="stateStart":!1===b.start&&(c="stateEnd"),b.type!==p&&(c=b.type),N.get(k)||N.set(k,{id:k,shape:c,description:h.Y2.sanitizeText(k,o),cssClasses:`${m} ${A}`,cssStyles:n});let l=N.get(k);b.description&&(Array.isArray(l.description)?(l.shape=w,l.description.push(b.description)):l.description?.length&&l.description.length>0?(l.shape=w,l.description===k?l.description=[b.description]:l.description=[l.description,b.description]):(l.shape=v,l.description=b.description),l.description=h.Y2.sanitizeTextOrArray(l.description,o)),l.description?.length===1&&l.shape===w&&("group"===l.type?l.shape=y:l.shape=v),!l.type&&b.doc&&(i.Rm.info("Setting cluster for XCX",k,R(b)),l.type="group",l.isGroup=!0,l.dir=R(b),l.shape=b.type===q?x:y,l.cssClasses=`${l.cssClasses} ${E} ${f?F:""}`);let z={labelStyle:"",shape:l.shape,label:l.description,cssClasses:l.cssClasses,cssCompiledStyles:[],cssStyles:l.cssStyles,id:k,dir:l.dir,domId:P(k,O),type:l.type,isGroup:"group"===l.type,padding:8,rx:10,ry:10,look:g,labelType:"markdown"};if(z.shape===x&&(z.label=""),a&&"root"!==a.id&&(i.Rm.trace("Setting node ",k," to be child of its parent ",a.id),z.parentId=a.id),z.centerLabel=!0,b.note){let a={labelStyle:"",shape:"note",label:b.note.text,labelType:"markdown",cssClasses:D,cssStyles:[],cssCompiledStyles:[],id:k+J+"-"+O,domId:P(k,O,H),type:l.type,isGroup:"group"===l.type,padding:o.flowchart?.padding,look:g,position:b.note.position},c=k+K,f={labelStyle:"",shape:"noteGroup",label:b.note.text,cssClasses:l.cssClasses,cssStyles:[],id:k+K,domId:P(k,O,G),type:"group",isGroup:!0,padding:16,look:g,position:b.note.position};O++,f.id=c,a.parentId=c,S(d,f,j),S(d,a,j),S(d,z,j);let h=k,i=a.id;"left of"===b.note.position&&(h=a.id,i=k),e.push({id:h+"-"+i,start:h,end:i,arrowhead:"none",arrowTypeEnd:"",style:r,labelStyle:"",classes:C,arrowheadStyle:s,labelpos:"c",labelType:t,thickness:u,look:g})}else S(d,z,j)}b.doc&&(i.Rm.trace("Adding nodes children "),Q(b,b.doc,c,d,e,!f,g,j))},"dataFetcher"),W=(0,i.K2)(()=>{N.clear(),O=0},"reset"),X="start",Y="color",Z="fill",$=(0,i.K2)(()=>new Map,"newClassesList"),_=(0,i.K2)(()=>({relations:[],states:new Map,documents:{}}),"newDoc"),aa=(0,i.K2)(a=>JSON.parse(JSON.stringify(a)),"clone"),ab=class{constructor(a){this.version=a,this.nodes=[],this.edges=[],this.rootDoc=[],this.classes=$(),this.documents={root:_()},this.currentDocument=this.documents.root,this.startEndCount=0,this.dividerCnt=0,this.links=new Map,this.getAccTitle=h.iN,this.setAccTitle=h.SV,this.getAccDescription=h.m7,this.setAccDescription=h.EI,this.setDiagramTitle=h.ke,this.getDiagramTitle=h.ab,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)}static{(0,i.K2)(this,"StateDB")}static{this.relationType={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3}}extract(a){for(let b of(this.clear(!0),Array.isArray(a)?a:a.doc))switch(b.stmt){case m:this.addState(b.id.trim(),b.type,b.doc,b.description,b.note);break;case o:this.addRelation(b.state1,b.state2,b.description);break;case"classDef":this.addStyleClass(b.id.trim(),b.classes);break;case"style":this.handleStyleDef(b);break;case"applyClass":this.setCssClass(b.id.trim(),b.styleClass);break;case"click":this.addLink(b.id,b.url,b.tooltip)}let b=this.getStates(),c=(0,h.D7)();for(let a of(W(),V(void 0,this.getRootDocV2(),b,this.nodes,this.edges,!0,c.look,this.classes),this.nodes))if(Array.isArray(a.label)){if(a.description=a.label.slice(1),a.isGroup&&a.description.length>0)throw Error(`Group nodes can only have label. Remove the additional description for node [${a.id}]`);a.label=a.label[0]}}handleStyleDef(a){let b=a.id.trim().split(","),c=a.styleClass.split(",");for(let a of b){let b=this.getState(a);if(!b){let c=a.trim();this.addState(c),b=this.getState(c)}b&&(b.styles=c.map(a=>a.replace(/;/g,"")?.trim()))}}setRootDoc(a){i.Rm.info("Setting root doc",a),this.rootDoc=a,1===this.version?this.extract(a):this.extract(this.getRootDocV2())}docTranslator(a,b,c){if(b.stmt===o){this.docTranslator(a,b.state1,!0),this.docTranslator(a,b.state2,!1);return}if(b.stmt===m&&("[*]"===b.id?(b.id=a.id+(c?"_start":"_end"),b.start=c):b.id=b.id.trim()),b.stmt!==n&&b.stmt!==m||!b.doc)return;let d=[],e=[];for(let a of b.doc)if(a.type===q){let b=aa(a);b.doc=aa(e),d.push(b),e=[]}else e.push(a);if(d.length>0&&e.length>0){let a={stmt:m,id:(0,g.$C)(),type:"divider",doc:aa(e)};d.push(aa(a)),b.doc=d}b.doc.forEach(a=>this.docTranslator(b,a,!0))}getRootDocV2(){return this.docTranslator({id:n,stmt:n},{id:n,stmt:n,doc:this.rootDoc},!0),{id:n,doc:this.rootDoc}}addState(a,b=p,c,d,e,f,g,j){let k=a?.trim();if(this.currentDocument.states.has(k)){let a=this.currentDocument.states.get(k);if(!a)throw Error(`State not found: ${k}`);a.doc||(a.doc=c),a.type||(a.type=b)}else i.Rm.info("Adding state ",k,d),this.currentDocument.states.set(k,{stmt:m,id:k,descriptions:[],type:b,doc:c,note:e,classes:[],styles:[],textStyles:[]});if(d&&(i.Rm.info("Setting state description",k,d),(Array.isArray(d)?d:[d]).forEach(a=>this.addDescription(k,a.trim()))),e){let a=this.currentDocument.states.get(k);if(!a)throw Error(`State not found: ${k}`);a.note=e,a.note.text=h.Y2.sanitizeText(a.note.text,(0,h.D7)())}f&&(i.Rm.info("Setting state classes",k,f),(Array.isArray(f)?f:[f]).forEach(a=>this.setCssClass(k,a.trim()))),g&&(i.Rm.info("Setting state styles",k,g),(Array.isArray(g)?g:[g]).forEach(a=>this.setStyle(k,a.trim()))),j&&(i.Rm.info("Setting state styles",k,g),(Array.isArray(j)?j:[j]).forEach(a=>this.setTextStyle(k,a.trim())))}clear(a){this.nodes=[],this.edges=[],this.documents={root:_()},this.currentDocument=this.documents.root,this.startEndCount=0,this.classes=$(),a||(this.links=new Map,(0,h.IU)())}getState(a){return this.currentDocument.states.get(a)}getStates(){return this.currentDocument.states}logDocuments(){i.Rm.info("Documents = ",this.documents)}getRelations(){return this.currentDocument.relations}addLink(a,b,c){this.links.set(a,{url:b,tooltip:c}),i.Rm.warn("Adding link",a,b,c)}getLinks(){return this.links}startIdIfNeeded(a=""){return"[*]"===a?(this.startEndCount++,`${X}${this.startEndCount}`):a}startTypeIfNeeded(a="",b=p){return"[*]"===a?X:b}endIdIfNeeded(a=""){return"[*]"===a?(this.startEndCount++,`end${this.startEndCount}`):a}endTypeIfNeeded(a="",b=p){return"[*]"===a?"end":b}addRelationObjs(a,b,c=""){let d=this.startIdIfNeeded(a.id.trim()),e=this.startTypeIfNeeded(a.id.trim(),a.type),f=this.startIdIfNeeded(b.id.trim()),g=this.startTypeIfNeeded(b.id.trim(),b.type);this.addState(d,e,a.doc,a.description,a.note,a.classes,a.styles,a.textStyles),this.addState(f,g,b.doc,b.description,b.note,b.classes,b.styles,b.textStyles),this.currentDocument.relations.push({id1:d,id2:f,relationTitle:h.Y2.sanitizeText(c,(0,h.D7)())})}addRelation(a,b,c){if("object"==typeof a&&"object"==typeof b)this.addRelationObjs(a,b,c);else if("string"==typeof a&&"string"==typeof b){let d=this.startIdIfNeeded(a.trim()),e=this.startTypeIfNeeded(a),f=this.endIdIfNeeded(b.trim()),g=this.endTypeIfNeeded(b);this.addState(d,e),this.addState(f,g),this.currentDocument.relations.push({id1:d,id2:f,relationTitle:c?h.Y2.sanitizeText(c,(0,h.D7)()):void 0})}}addDescription(a,b){let c=this.currentDocument.states.get(a),d=b.startsWith(":")?b.replace(":","").trim():b;c?.descriptions?.push(h.Y2.sanitizeText(d,(0,h.D7)()))}cleanupLabel(a){return a.startsWith(":")?a.slice(2).trim():a.trim()}getDividerId(){return this.dividerCnt++,`divider-id-${this.dividerCnt}`}addStyleClass(a,b=""){this.classes.has(a)||this.classes.set(a,{id:a,styles:[],textStyles:[]});let c=this.classes.get(a);b&&c&&b.split(",").forEach(a=>{let b=a.replace(/([^;]*);/,"$1").trim();if(RegExp(Y).exec(a)){let a=b.replace(Z,"bgFill").replace(Y,Z);c.textStyles.push(a)}c.styles.push(b)})}getClasses(){return this.classes}setCssClass(a,b){a.split(",").forEach(a=>{let c=this.getState(a);if(!c){let b=a.trim();this.addState(b),c=this.getState(b)}c?.classes?.push(b)})}setStyle(a,b){this.getState(a)?.styles?.push(b)}setTextStyle(a,b){this.getState(a)?.textStyles?.push(b)}getDirectionStatement(){return this.rootDoc.find(a=>"dir"===a.stmt)}getDirection(){return this.getDirectionStatement()?.value??"TB"}setDirection(a){let b=this.getDirectionStatement();b?b.value=a:this.rootDoc.unshift({stmt:"dir",value:a})}trimColon(a){return a.startsWith(":")?a.slice(1).trim():a.trim()}getData(){let a=(0,h.D7)();return{nodes:this.nodes,edges:this.edges,other:{},config:a,direction:L(this.getRootDocV2())}}getConfig(){return(0,h.D7)().state}},ac=(0,i.K2)(a=>`
2
2
  defs [id$="-barbEnd"] {
3
3
  fill: ${a.transitionColor};
4
4
  stroke: ${a.transitionColor};
@@ -1 +1 @@
1
- "use strict";exports.id=3493,exports.ids=[3493],exports.modules={63493:(a,b,c)=>{c.d(b,{diagram:()=>f});var d=c(83031);c(80339),c(56472),c(44906),c(73865),c(65144),c(30800),c(90355),c(19203),c(31792),c(70400),c(65246);var e=c(21143),f={parser:d.Zk,get db(){return new d.u4(2)},renderer:d.q7,styles:d.tM,init:(0,e.K2)(a=>{a.state||(a.state={}),a.state.arrowMarkerAbsolute=a.arrowMarkerAbsolute},"init")}}};
1
+ "use strict";exports.id=3493,exports.ids=[3493],exports.modules={63493:(a,b,c)=>{c.d(b,{diagram:()=>f});var d=c(83031);c(80339),c(34091),c(44906),c(73865),c(65144),c(30800),c(90355),c(19203),c(31792),c(70400),c(65246);var e=c(21143),f={parser:d.Zk,get db(){return new d.u4(2)},renderer:d.q7,styles:d.tM,init:(0,e.K2)(a=>{a.state||(a.state={}),a.state.arrowMarkerAbsolute=a.arrowMarkerAbsolute},"init")}}};
@@ -1,2 +1,2 @@
1
- "use strict";exports.id=402,exports.ids=[402],exports.modules={26257:(a,b,c)=>{c.d(b,{s:()=>n,yJ:()=>m,zZ:()=>l});var d=c(29021),e=c(33873),f=c(21820);function g(){return(0,e.join)(process.env.ANNODEX_CONFIG_DIR??process.env.ANNOVIBE_CONFIG_DIR??(0,e.join)((0,f.homedir)(),".config","annodex"),"session-runtime.json")}function h(){return{version:1,sessions:{}}}function i(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function j(){let a=g();if(!(0,d.existsSync)(a))return h();try{let b=JSON.parse((0,d.readFileSync)(a,"utf-8"));if(!i(b)||!i(b.sessions))return h();let c={};for(let[a,d]of Object.entries(b.sessions)){let b=function(a){if(!i(a)||"string"!=typeof a.sessionId)return null;let b=a.sessionId.trim();return b?{sessionId:b,cwd:"string"==typeof a.cwd&&a.cwd.trim()?a.cwd:void 0,provider:"string"==typeof a.provider&&a.provider.trim()?a.provider:void 0,modelId:"string"==typeof a.modelId&&a.modelId.trim()?a.modelId:void 0,thinkingLevel:"string"==typeof a.thinkingLevel&&a.thinkingLevel.trim()?a.thinkingLevel:void 0,sandboxMode:"workspace-write"===a.sandboxMode||"danger-full-access"===a.sandboxMode?a.sandboxMode:void 0,updatedAt:"string"==typeof a.updatedAt?a.updatedAt:new Date(0).toISOString()}:null}(d);b&&b.sessionId===a&&(c[a]=b)}return{version:1,sessions:c}}catch{return h()}}function k(a){let b=g(),c=(0,e.dirname)(b);(0,d.existsSync)(c)||(0,d.mkdirSync)(c,{recursive:!0}),(0,d.writeFileSync)(b,JSON.stringify(a,null,2),"utf-8")}function l(a){return a?j().sessions[a]??null:null}function m(a,b){let c=j(),d={...c.sessions[a]??{sessionId:a,updatedAt:new Date(0).toISOString()},sessionId:a,updatedAt:new Date().toISOString()};return void 0!==b.cwd&&(d.cwd=b.cwd),void 0!==b.provider&&(d.provider=b.provider),void 0!==b.modelId&&(d.modelId=b.modelId),void 0!==b.thinkingLevel&&(d.thinkingLevel=b.thinkingLevel),void 0!==b.sandboxMode&&(d.sandboxMode=b.sandboxMode),c.sessions[a]=d,k(c),d}function n(a){let b=j();b.sessions[a]&&(delete b.sessions[a],k(b))}},40402:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$M:()=>o,BR:()=>r,K9:()=>J,PF:()=>u,Qx:()=>t,T0:()=>S,aU:()=>T,bd:()=>V,dQ:()=>v,os:()=>s,r1:()=>Q});var e=c(33873),f=c(29021),g=c(46983),h=c(89035),i=c(26257),j=c(65369),k=c(72801),l=c(55132),m=c(54167),n=a([g]);function o(){let a=process.env.HOME??process.env.USERPROFILE??"/tmp";return(0,e.join)(a,".config","annodex")}function p(){return globalThis.__annodexSessionPathCache||(globalThis.__annodexSessionPathCache=new Map),globalThis.__annodexSessionPathCache}function q(a,b){p().set(a,b)}function r(a){p().delete(a)}async function s(a){let b=p().get(a);return b||(Q(a)?.cwd??null)}function t(a){let b=F((0,i.zZ)(a)),c=F(W(a)),d={provider:b?.provider??c?.provider,modelId:b?.modelId??c?.modelId,thinkingLevel:b?.thinkingLevel??c?.thinkingLevel};return d.provider||d.modelId||d.thinkingLevel?d:null}function u(a){return!!V(a)}async function v(a={}){let b=a.cwd?.trim()?x(a.cwd):void 0;if(b)try{return await P(b)}catch{}return function(a={}){var b;let c,d,g=[],h=new Set,i=a.cwd?.trim()?x(a.cwd):void 0,j=w();if(!(0,f.existsSync)(j))return g;let k=I(),l={};for(let a of y(j)){let b=G(a);if(!b)continue;let c=k.records[a],d=c&&c.size===b.size&&c.mtimeMs===b.mtimeMs?c:null;if(!d){let c=M(a);if(!c)continue;d=O(a,c,b)}if(!d)continue;l[a]=d;let e={...d.summary,modified:new Date(d.mtimeMs).toISOString(),cwdExists:(0,f.existsSync)(d.summary.cwd)};q(e.id,e.cwd),(!i||x(e.cwd)===i)&&(!e||h.has(e.id)||(h.add(e.id),g.push(e)))}return b={version:1,records:l},c=H(),d=(0,e.dirname)(c),(0,f.existsSync)(d)||(0,f.mkdirSync)(d,{recursive:!0}),(0,f.writeFileSync)(c,JSON.stringify(b,null,2),"utf-8"),g.sort((a,b)=>b.modified.localeCompare(a.modified))}(a)}function w(){return(0,e.join)((0,h.R)(),"sessions")}function x(a){let b=a.trim();return b.replace(/[\\/]+$/,"")||b}function y(a,b=[]){try{for(let c of(0,f.readdirSync)(a,{withFileTypes:!0})){let d=(0,e.join)(a,c.name);c.isDirectory()?y(d,b):c.isFile()&&c.name.endsWith(".jsonl")&&b.push(d)}}catch{}return b}function z(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function A(a){try{let b=JSON.parse(a);return z(b)?b:null}catch{return null}}function B(a){return z(a.payload)?a.payload:null}function C(a,b){let c=a[b];return"string"==typeof c&&c.trim()?c:void 0}function D(a,b=!1){if(a)try{return(0,l.wB)((0,l.Dw)(),a,{preferCodex:b})}catch{return a}}function E(a){if(!a)return{};if(a.modelProvider===m.so)try{let b=(0,m.w5)((0,l.Dw)().providers,a.modelProvider,a.model);if(b.provider!==m.so)return b}catch{}return{provider:(0,g.g8)(a.modelProvider),modelId:a.model}}function F(a){if(!a)return null;if(a.provider!==m.so)return a;try{let b=(0,m.w5)((0,l.Dw)().providers,a.provider,a.modelId);if(b.provider!==m.so)return{...a,provider:b.provider,modelId:b.modelId}}catch{}return a}function G(a){try{let b=(0,f.statSync)(a);return{size:Number(b.size),mtimeMs:Number(b.mtimeMs),modified:b.mtime.toISOString()}}catch{return null}}function H(){return(0,e.join)(o(),"session-history-cache.json")}function I(){let a=H();if(!(0,f.existsSync)(a))return{version:1,records:{}};try{let b=JSON.parse((0,f.readFileSync)(a,"utf-8"));return{version:1,records:b.records&&"object"==typeof b.records?b.records:{}}}catch{return{version:1,records:{}}}}function J(){let a=new Map,b=I();for(let c of Object.values(b.records)){let b=c?.summary,d="string"==typeof b?.cwd?x(b.cwd):"";if(!d)continue;let e="string"==typeof b.modified?b.modified:c?.mtimeMs?new Date(c.mtimeMs).toISOString():"",f="string"==typeof b.created?b.created:null,g=a.get(d)??{count:0,last:null,created:null};g.count+=1,e&&(!g.last||e>g.last)&&(g.last=e),f&&(!g.created||f<g.created)&&(g.created=f),a.set(d,g)}return a}function K(a,b=65536){let c=null;try{c=(0,f.openSync)(a,"r");let d=Buffer.alloc(b),e=(0,f.readSync)(c,d,0,b,0);return d.subarray(0,e).toString("utf-8")}catch{return""}finally{if(null!==c)try{(0,f.closeSync)(c)}catch{}}}function L(a){try{return JSON.parse(`"${a}"`)}catch{return a}}function M(a){let b=K(a);if(!/"type"\s*:\s*"session_meta"/.test(b))return null;let c=b.split(/\r?\n/,1)[0]??"",d=A(c),e=(d?B(d):null)??d;if(e){let a=C(e,"id"),b=C(e,"cwd");if(a&&b){let c=z(e.source)&&z(e.source.subagent)&&z(e.source.subagent.thread_spawn)?C(e.source.subagent.thread_spawn,"parent_thread_id"):void 0;return{id:a,cwd:x(b),created:C(e,"timestamp")??C(d??{},"timestamp")??new Date(0).toISOString(),modelProvider:D(C(e,"model_provider"),!0),parentSessionId:C(e,"forked_from_id")??c}}}let f=/"id"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),g=/"cwd"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),h=/"timestamp"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),i=/"model_provider"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),j=/"forked_from_id"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),k=f?L(f[1]):null,l=g?x(L(g[1])):null;if(!k||!l)return null;let m=h?L(h[1]):new Date(0).toISOString();return{id:k,cwd:l,created:m,modelProvider:D(i?L(i[1]):void 0,!0),parentSessionId:j?L(j[1]):void 0}}function N(a){let b=a.trim();if(!b||b.includes("AGENTS.md instructions"))return"";let c=b.lastIndexOf("<environment_context>"),d=(c>=0?b.slice(c).replace(/^<environment_context>[\s\S]*?<\/environment_context>\s*/m,"").trim():b).replace(/\s+/g," ").trim();return d.length>180?`${d.slice(0,180)}...`:d}function O(a,b,c){let d,e,g=K(a,2097152);if(!g)return null;let h=g.split("\n").filter(a=>a.trim()),j="",k=0,l=0;for(let a of h){var m,n,o,p,r;let b=A(a);if(!b)continue;let c=B(b)??b;if("event_msg"===b.type){let a=c.type;("user_message"===a||"agent_message"===a)&&k++,"user_message"===a&&"string"==typeof c.message&&(m=j,n=c.message,j=m||N(n)||m);continue}if("response_item"===b.type&&"message"===c.type){let a=c.role;("user"===a||"assistant"===a)&&l++,"user"===a&&(p=j,r=(o=c.content,"string"==typeof o?o:Array.isArray(o)?o.map(a=>z(a)?"string"==typeof a.text?a.text:"string"==typeof a.content?a.content:"":"").filter(Boolean).join("\n"):""),j=p||N(r)||p);continue}"turn_context"===b.type&&(d=C(c,"model")??d,e=C(c,"effort")??e)}q(b.id,b.cwd);let s={id:b.id,path:a,cwd:b.cwd,cwdExists:(0,f.existsSync)(b.cwd),created:b.created,modified:c.modified,messageCount:k||l||+!!j,firstMessage:j||"(no messages)",parentSessionId:b.parentSessionId},t=E({model:d,modelProvider:b.modelProvider}),u={provider:t.provider??b.modelProvider,modelId:t.modelId??d,thinkingLevel:e},v=F((0,i.zZ)(b.id)),w={cwd:b.cwd,provider:v?.provider??u.provider,modelId:v?.modelId??u.modelId,thinkingLevel:v?.thinkingLevel??u.thinkingLevel};return(w.provider||w.modelId||w.thinkingLevel)&&(0,i.yJ)(b.id,{cwd:w.cwd,provider:w.provider,modelId:w.modelId,thinkingLevel:w.thinkingLevel}),{filePath:a,size:c.size,mtimeMs:c.mtimeMs,summary:s,model:u}}async function P(a){let b,c=x(a),d=function(a={}){let b=[],c=new Set,d=a.cwd?.trim()?x(a.cwd):void 0,e=I();for(let a of Object.values(e.records)){let e=a?.summary;if(!e?.id||!e.cwd)continue;let g=x(e.cwd);(!d||g===d)&&(c.has(e.id)||(c.add(e.id),b.push({...e,cwd:g,modified:new Date(a.mtimeMs).toISOString(),cwdExists:(0,f.existsSync)(g)})))}return b.sort((a,b)=>b.modified.localeCompare(a.modified))}({cwd:c}),e=new Map(d.map(a=>[a.id,a])),h=(0,g.DY)(c);b=h||await (0,g.gu)(c,(0,g.H3)((0,l.Dw)().providers));try{let a=await (0,g.Mi)(b,c),d=new Map;for(let b of a){if(x(b.cwd||"")!==c)continue;let a=function(a,b){let c=x(a.cwd||b?.cwd||""),d=R(a.createdAt||b?.created),e=R(a.updatedAt||b?.modified),g=N(a.preview??"")||b?.firstMessage||a.name||"(no messages)";return{path:b?.path??a.path??"",id:a.id,cwd:c,cwdExists:(0,f.existsSync)(c),name:a.name??b?.name,created:d,modified:e,messageCount:b?.messageCount??0,firstMessage:g,parentSessionId:b?.parentSessionId}}(b,e.get(b.id));q(a.id,a.cwd),d.set(a.id,a),e.delete(b.id)}for(let a of e.values())q(a.id,a.cwd),d.set(a.id,a);return[...d.values()].sort((a,b)=>b.modified.localeCompare(a.modified))}finally{h||(0,g.sM)(b)}}function Q(a){let b=w();if(!a||!(0,f.existsSync)(b))return null;let c=y(b);for(let b of[...c.filter(b=>b.includes(a)),...c.filter(b=>!b.includes(a))]){let c=G(b);if(!c)continue;let d=M(b);if(d?.id!==a)continue;let e=O(b,d,c);if(!e)break;return{...e.summary,modified:new Date(e.mtimeMs).toISOString(),cwdExists:(0,f.existsSync)(e.summary.cwd)}}return null}function R(a){return"number"==typeof a&&Number.isFinite(a)?new Date(1e3*a).toISOString():"string"==typeof a&&a?a:new Date(0).toISOString()}async function S(a,b,c){var d,e;let h,m,n=(0,g.DY)(b);m=n||await (0,g.gu)(b,(0,g.H3)((0,l.Dw)().providers));let o=null;try{o=await (0,g.nj)(m,a)}finally{n||(0,g.sM)(m)}if(!o)return{context:{messages:[],entryIds:[],thinkingLevel:"off",model:null,subagentRuns:[],sessionStats:null,contextUsage:null},tree:[],leafId:null,thread:null};q(o.id,o.cwd||b);let p=(0,i.zZ)(o.id),r=E(o);(r.modelId||r.provider)&&(!p?.provider||!p?.modelId)&&(0,i.yJ)(o.id,{cwd:o.cwd||b,provider:p?.provider??r.provider,modelId:p?.modelId??r.modelId});let s=F(W(o.id)),t=F((0,i.zZ)(o.id)),u=t?.provider??s?.provider,v=t?.modelId??s?.modelId,w=t?.thinkingLevel??s?.thinkingLevel,x=r.provider,y=r.modelId,z=o.model?{provider:u??x??"codex",modelId:v??y??o.model}:v?{provider:u??"codex",modelId:v}:null,C=U(o,z),D=c?(d=C,e=c,(h=d.findIndex(a=>a.id===e))>=0?d.slice(0,h+1):d):C,G=(0,k.l)(V(o.id),v??o.model),H=new Map;for(let a of D)a.turnId&&"assistant"===a.message.role&&a.message.content.some(a=>"text"===a.type&&a.text.trim())&&H.set(a.turnId,a.id);let I=[],J=[];for(let a of D){let b=a.message;if(a.turnId&&"assistant"===b.role&&H.get(a.turnId)===a.id){let c=G.messageUsageByTurnId.get(a.turnId);I.push(c?{...b,usage:c}:b)}else I.push(b);J.push(a.id)}let K=D[D.length-1]?.id??C[C.length-1]?.id??null,L=o.model?{provider:u??x??"codex",modelId:v??y??o.model}:v?{provider:u??"codex",modelId:v}:null;return{context:{messages:I,entryIds:J,thinkingLevel:w??"off",model:L,subagentRuns:(0,j.oO)(function(a){if(!a)return[];let b=[];for(let c of a.turns??[])for(let d of c.items)"collabAgentToolCall"===d.type&&b.push(...(0,j.k8)(d,a.updatedAt?1e3*a.updatedAt:void 0));return b}(o),function(a){let b=V(a);if(!b)return[];let c="";try{c=(0,f.readFileSync)(b,"utf-8")}catch{return[]}if(!c)return[];let d=[];for(let a of c.split("\n")){if(!a.trim()||!a.includes("collab_"))continue;let b=A(a);if(!b||"event_msg"!==b.type)continue;let c=B(b);c&&d.push(...(0,j.nG)(c,function(a){if("string"!=typeof a||!a)return;let b=Date.parse(a);return Number.isFinite(b)?b:void 0}(b.timestamp)))}return d}(a)),sessionStats:G.sessionStats,contextUsage:G.contextUsage},tree:function(a){let b=new Map,c=new Map,d=0;for(let e of a)b.set(e.id,e),e.parentId?c.set(e.parentId,(c.get(e.parentId)??0)+1):d++;let e=d>1;if(!e){for(let a of c.values())if(a>1){e=!0;break}}if(!e)return[];let f=new Set;for(let b of a){let a=c.get(b.id)??0,e=b.parentId?c.get(b.parentId)??0:d;(!b.parentId||0===a||a>1||e>1)&&f.add(b.id)}let g=new Map,h=[];for(let b of a)f.has(b.id)&&g.set(b.id,{entry:b,children:[]});for(let c of a){if(!f.has(c.id))continue;let a=g.get(c.id);if(!a)continue;let d=c.parentId;for(;d&&!f.has(d);)d=b.get(d)?.parentId??null;d&&g.has(d)?g.get(d).children.push(a):h.push(a)}return h}(C),leafId:K,thread:o}}async function T(a,b){let c=await S(a,b),d=F((0,i.zZ)(a)),e=F(W(a)),f=d?.provider??e?.provider,g=d?.modelId??e?.modelId,h=E(c.thread),j=h.provider,k=h.modelId,l=c.thread?.model?{provider:f??j??"codex",modelId:g??k??c.thread.model}:g?{provider:f??"codex",modelId:g}:null;return U(c.thread,l)}function U(a,b){if(!a)return[];let c=[],d=null;for(let e of a.turns??[]){let f=R(a.updatedAt);for(let g of e.items){let h=function(a,b,c){if("userMessage"===a.type)return{role:"user",content:function(a){let b=[];for(let c of a)"text"===c.type?b.push({type:"text",text:c.text}):"image"===c.type?b.push({type:"text",text:`[image] ${c.url.slice(0,120)}`}):"localImage"===c.type?b.push({type:"text",text:`[image] ${c.path}`}):"mention"===c.type?b.push({type:"text",text:`@${c.path}`}):"skill"===c.type&&b.push({type:"text",text:`$${c.name}`});return 0===b.length?"":1===b.length?b[0].text:b}(a.content??[])};if("agentMessage"===a.type){let d=c??E(b);return{role:"assistant",content:[{type:"text",text:a.text??""}],model:d.modelId??"",provider:d.provider??""}}if("reasoning"===a.type){let d=[...a.summary??[],...a.content??[]].join("\n").trim();if(!d)return null;let e=c??E(b);return{role:"assistant",content:[{type:"thinking",thinking:d}],model:e.modelId??"",provider:e.provider??""}}if("commandExecution"===a.type){let b=[a.aggregatedOutput??"",null!==a.exitCode&&void 0!==a.exitCode?`Exit code: ${a.exitCode}`:""].filter(Boolean).join("\n");return X(a.id,"bash",b,"failed"===a.status||"declined"===a.status)}if("fileChange"===a.type)return X(a.id,"edit",JSON.stringify(a.changes??[]),"failed"===a.status||"declined"===a.status);if("mcpToolCall"===a.type)return X(a.id,a.tool||a.server||"mcp",JSON.stringify(a.result??a.error??""),!!a.error);if("dynamicToolCall"===a.type)return X(a.id,a.tool||"tool",JSON.stringify(a.contentItems??[]),!1===a.success);if("collabAgentToolCall"===a.type){let c=(0,j.k8)(a,b.updatedAt?1e3*b.updatedAt:void 0);return{role:"custom",customType:"subagent-progress",content:"Agent progress updated",display:!1,details:{runs:c},timestamp:b.updatedAt?1e3*b.updatedAt:void 0}}return null}(g,a,b);if(!h)continue;let i={type:"message",id:g.id,parentId:d,timestamp:f,message:h,turnId:e.id};c.push(i),d=g.id}}return c}function V(a){let b=w();if(!a||!(0,f.existsSync)(b))return null;let c=y(b);return c.find(b=>b.includes(a))??c.find(b=>{let c=M(b);return c?.id===a})??null}function W(a){let b,c,d,e=V(a);if(!e)return null;let f="";try{f=K(e,2097152)}catch{return null}for(let a of f.split("\n")){if(!a.trim())continue;let e=A(a);if(!e)continue;let f=B(e)??e;if("session_meta"===e.type){b=D(C(f,"model_provider"),!0)??b;continue}"turn_context"===e.type&&(c=C(f,"model")??c,d=C(f,"effort")??d)}return b||c||d?{provider:b,modelId:c,thinkingLevel:d}:null}function X(a,b,c,d){return{role:"toolResult",toolCallId:a,toolName:b,content:[{type:"text",text:c}],isError:d}}g=(n.then?(await n)():n)[0],d()}catch(a){d(a)}})},45594:a=>{a.exports={rE:"0.1.31"}},46983:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{DY:()=>G,H3:()=>w,Mi:()=>E,g8:()=>u,gu:()=>C,kW:()=>v,nj:()=>F,nt:()=>r,pU:()=>q,sM:()=>D});var e=c(79646),f=c(55511),g=c(56220),h=c(29021),i=c(33873),j=c(91645),k=c(55399),l=c(54167),m=c(65833),n=c(99526),o=c(45594),p=a([g]);function q(a){let b="string"==typeof a?.status?a.status.toLowerCase():"";return"inprogress"===b||"in_progress"===b||"running"===b||"pending"===b||"queued"===b}function r(a){return!!a?.turns?.some(a=>q(a))}g=(p.then?(await p)():p)[0];class H{constructor(a,b,c){this.cwd=a,this.url=b,this.serverKey=c,this.ws=null,this.pending=new Map,this.nextId=1,this.notificationHandlers=new Map,this.serverRequestHandlers=[],this.reconnectAttempts=0,this.maxReconnectAttempts=5,this.reconnectDelay=1e3,this._closed=!1}isConnected(){return this.ws?.readyState===g.WebSocket.OPEN}isClosed(){return this._closed}async connect(){let{default:a}=await Promise.resolve().then(c.bind(c,56220)),b=this.url;return this._closed=!1,new Promise((c,d)=>{let e=new a(b);this.ws=e,e.on("open",()=>{this.reconnectAttempts=0,this.initialize().then(c).catch(d)}),e.on("message",a=>{try{let b=JSON.parse(a.toString());this.handleMessage(b)}catch{}}),e.on("close",()=>{this.handleDisconnect()}),e.on("error",a=>{0===this.reconnectAttempts&&d(a)})})}async initialize(){let a=await this.request("initialize",{clientInfo:{name:"annodex",title:m.C3,version:o.rE},capabilities:{experimentalApi:!0}});this.serverInfo=a}request(a,b,c=3e5){if(!this.ws||this.ws.readyState!==g.WebSocket.OPEN)return Promise.reject(Error(`Codex server not connected (method: ${a})`));let d=this.nextId++;return new Promise((e,f)=>{let g=setTimeout(()=>{this.pending.delete(d),f(Error(`Request timeout: ${a}`))},c);this.pending.set(d,{resolve:e,reject:f,timer:g}),this.ws.send(JSON.stringify({jsonrpc:"2.0",id:d,method:a,params:b}))})}onNotification(a,b){let c=this.notificationHandlers.get(a)??[];return c.push(b),this.notificationHandlers.set(a,c),()=>{let c=this.notificationHandlers.get(a);if(c){let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}onServerRequest(a){return this.serverRequestHandlers.push(a),()=>{let b=this.serverRequestHandlers.indexOf(a);-1!==b&&this.serverRequestHandlers.splice(b,1)}}handleMessage(a){if("method"in a&&"id"in a)return void this.respondToServerRequest(a);if("method"in a&&!("id"in a)){let b=this.notificationHandlers.get(a.method);if(b)for(let c of[...b])c(a.params);return}if("id"in a&&("result"in a||"error"in a)){let b=this.pending.get(a.id);b&&(clearTimeout(b.timer),this.pending.delete(a.id),"error"in a&&a.error?b.reject(Error(a.error.message??"JSON-RPC error")):b.resolve(a.result))}}async respondToServerRequest(a){let b;if(!this.ws||this.ws.readyState!==g.WebSocket.OPEN)return;for(let c of[...this.serverRequestHandlers]){try{b=await c({id:a.id,method:a.method,params:a.params})}catch{b=void 0}if(void 0!==b)break}void 0===b&&(b=function(a){switch(a){case"item/commandExecution/requestApproval":case"item/fileChange/requestApproval":return{decision:"decline"};case"applyPatchApproval":case"execCommandApproval":return{decision:"denied"};case"item/tool/requestUserInput":return{answers:{}};case"mcpServer/elicitation/request":return{action:"decline",content:null,_meta:null};case"item/permissions/requestApproval":return{permissions:{},scope:"turn"};case"item/tool/call":return{contentItems:[],success:!1};case"account/chatgptAuthTokens/refresh":return{accessToken:"",chatgptAccountId:"",chatgptPlanType:null};default:return{}}}(a.method));let c={jsonrpc:"2.0",id:a.id,result:b};this.ws.send(JSON.stringify(c))}handleDisconnect(){for(let[,a]of this.pending)clearTimeout(a.timer),a.reject(Error("Codex server disconnected"));if(this.pending.clear(),!this._closed&&this.reconnectAttempts<this.maxReconnectAttempts){this.reconnectAttempts++;let a=this.reconnectDelay*Math.pow(2,this.reconnectAttempts-1);setTimeout(()=>{this._closed||this.connect().catch(()=>{})},a)}}close(){this._closed=!0,this.ws?.close(),this.ws=null}}function s(a){if(a.connection?.close(),a.process?.pid)try{"win32"!==process.platform?process.kill(-a.process.pid,"SIGTERM"):a.process.kill("SIGTERM")}catch{try{a.process.kill("SIGTERM")}catch{}}for(let b of a.compatProxies)b.stop().catch(()=>{});for(let b of a.annodexRouters)b.stop().catch(()=>{})}function t(){if(!globalThis.__codexServers){globalThis.__codexServers=new Map;let a=()=>{globalThis.__codexServers?.forEach(a=>{s(a)})};process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__codexServers}function u(a){if(a)return a.replace(/#(?:chat|responses)-[a-f0-9]{10}$/i,"")}function v(a,b,c){let d=a.find(a=>a.id===b);return{provider:l.so,modelId:d?(0,l.XO)(b,c):c}}function w(a){return{workspace:!0,contextWindow:function(a){let b=0;for(let c of a)for(let a of c.models)"number"==typeof a.contextWindow&&a.contextWindow>b&&(b=a.contextWindow);return b>0?b:void 0}(a),routerProviders:a,providers:[{id:l.so,name:"Annodex Router",baseUrl:"__annodex_router__",api:"openai-responses",requiresOpenAiAuth:!1}]}}function x(a){let b=a?.trim();if(b){if(b.startsWith("!"))try{return(0,e.execSync)(b.slice(1),{encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:1e4}).trim()||void 0}catch{return}return/^[A-Za-z_][A-Za-z0-9_]*$/.test(b)&&process.env[b]?process.env[b]:b}}function y(a){return JSON.stringify(a)}function z(a){return/^[A-Za-z0-9_-]+$/.test(a)?a:y(a)}function A(a,b){if(b)return"responses";let c=(0,n.pp)(a);return"openai-responses"===c?"responses":"openai-completions"===c?"chat":null}async function B(a,b,c,d,e,g){let h,i=a.baseUrl?.trim().replace(/\/+$/,"")||"";if(a.id===l.so&&"__annodex_router__"===i){let a=new l.Po({providers:e??[],defaultThinking:g??"disabled"});await a.start(),d.push(a),i=a.getBaseUrl(),console.log(`[codex-server] Annodex router started on port ${a.getPort()}`)}let j=x(a.apiKey),m=(0,n.pp)(a.api,i,a.id),o="openai-completions"===m,p=!1;if(o&&i&&j&&(0,k.s3)(i)){let b=(0,k.xh)(i),d=new k.F6({targetUrl:b,apiKey:j,defaultThinking:g??"disabled",reasoningConfig:a.reasoningConfig});try{await d.start(),c.push(d),i=d.getBaseUrl(),p=!0,console.log(`[codex-server] Compat proxy started on port ${d.getPort()} for ${b}`)}catch(a){console.error("[codex-server] Failed to start compat proxy:",a)}}if(j){var q;let c;q=a.id,c=(0,f.createHash)("sha256").update(q).digest("hex").slice(0,16).toUpperCase(),b[h=`ANNODEX_PROVIDER_${c}_API_KEY`]=j}return{id:a.id,name:a.name,baseUrl:i,wireApi:A(m,p),envKey:h,requiresOpenAiAuth:a.requiresOpenAiAuth??!!j}}async function C(a,b){let c=t(),d=a.replace(/\/+$/,"")||a,g=function(a,b){let c=a.replace(/\/+$/,"")||a;if(b?.workspace){let a=JSON.stringify({providers:b.providers??[],routerProviders:b.routerProviders??[]}),d=(0,f.createHash)("sha256").update(a).digest("hex").slice(0,16),e=b?.contextWindow?String(b.contextWindow):"default";return`${c}\0workspace\0${e}\0${d}`}let d=b?.providerId||b?.baseUrl||"default",e=b?.baseUrl?.replace(/\/+$/,"")||"default",g=b?.api||"default",h=b?.apiKey||"default",i=b?.contextWindow?String(b.contextWindow):"default",j=b?.reasoningConfig?`${b.reasoningConfig.thinkingParam??""}|${b.reasoningConfig.effortParam??""}|${b.reasoningConfig.effortValueMode??""}`:"default";return`${c}\0${d}\0${e}\0${g}\0${h}\0${i}\0${j}`}(d,b),l=c.get(g);if(l?.connection?.isConnected())return l.refCount++,l.connection;if(l?.startPromise)try{let a=await l.startPromise,b=c.get(g);return b&&b.refCount++,a}catch{}else l&&(s(l),c.delete(g));let m=await new Promise((a,b)=>{let c=(0,j.createServer)();c.unref(),c.on("error",b),c.listen(0,"127.0.0.1",()=>{let d=c.address();c.close(()=>{d&&"object"==typeof d?a(d.port):b(Error("Failed to allocate a local port"))})})}),o=`ws://127.0.0.1:${m}`,p=function(){let a=process.cwd();for(let b of[(0,i.join)(a,"node_modules",".bin","codex"),(0,i.join)(a,"..","..","node_modules",".bin","codex")])if((0,h.existsSync)(b))return b;return"codex"}(),q=(async()=>{let a=[],f=[],h=null,i=b?.baseUrl||void 0,j=x(b?.apiKey),l=b?.requiresOpenAiAuth??!!j,q=(0,n.pp)(b?.api,i,b?.providerId),r="openai-completions"===q,s=!1;if(r&&i&&j&&(0,k.s3)(i)){let c=(0,k.xh)(i);h=new k.F6({targetUrl:c,apiKey:j,defaultThinking:b?.thinkingLevel??"disabled",reasoningConfig:b?.reasoningConfig});try{await h.start(),a.push(h),i=h.getBaseUrl(),s=!0,console.log(`[codex-server] Compat proxy started on port ${h.getPort()} for ${c}`)}catch(a){console.error("[codex-server] Failed to start compat proxy:",a),h=null}}let t={...process.env};j&&!b?.workspace&&(t.OPENAI_API_KEY=j),i&&(t.OPENAI_BASE_URL=i);let u=[];if(b?.contextWindow&&b.contextWindow>0&&u.push("-c",`model_context_window=${b.contextWindow}`),b?.workspace){let c=[];for(let d of b.providers??[])d.id&&d.baseUrl&&c.push(await B(d,t,a,f,b.routerProviders,b.thinkingLevel));for(let a of c)!function(a,b){if(!b.id||!b.baseUrl)return;let c=z(b.id);a.push("-c",`model_providers.${c}.name=${y(b.name||b.id)}`),a.push("-c",`model_providers.${c}.base_url=${y(b.baseUrl.replace(/\/+$/,""))}`),b.wireApi&&a.push("-c",`model_providers.${c}.wire_api=${y(b.wireApi)}`),a.push("-c",`model_providers.${c}.requires_openai_auth=${b.requiresOpenAiAuth?"true":"false"}`),b.envKey&&a.push("-c",`model_providers.${c}.env_key=${y(b.envKey)}`)}(u,a)}else if(b?.providerId&&i){let a=z(b.providerId),c=A(q,s);u.push("-c",`model_provider=${y(b.providerId)}`),u.push("-c",`model_providers.${a}.name=${y(b.providerId)}`),u.push("-c",`model_providers.${a}.base_url=${y(i.replace(/\/+$/,""))}`),c&&u.push("-c",`model_providers.${a}.wire_api=${y(c)}`),u.push("-c",`model_providers.${a}.requires_openai_auth=${l?"true":"false"}`)}let v=[...u,"app-server","--listen",o],w=null,C=(0,e.spawn)(p,v,{cwd:d,stdio:["ignore","pipe","pipe"],env:t,detached:"win32"!==process.platform}),D=[];C.stderr?.on("data",a=>{D.push(a.toString())}),C.stdout?.on("data",()=>{}),C.on("error",a=>{console.error(`[codex-server] Process error for ${d}:`,a.message)}),C.on("exit",()=>{let b=c.get(g);if(b?.process===C){for(let b of(c.delete(g),a))b.stop().catch(()=>{});for(let a of f)a.stop().catch(()=>{});w?.close()}}),await new Promise(a=>setTimeout(a,500)),w=new H(d,o,g);for(let b=0;b<10;b++)try{await w.connect();break}catch{if(b<9)await new Promise(a=>setTimeout(a,500));else{try{"win32"!==process.platform?process.kill(-C.pid,"SIGTERM"):C.kill("SIGTERM")}catch{C.kill("SIGTERM")}for(let b of a)await b.stop().catch(()=>{});for(let a of f)await a.stop().catch(()=>{});let b=D.join("");throw Error(`Failed to connect to codex app-server after 10 attempts.
1
+ "use strict";exports.id=402,exports.ids=[402],exports.modules={26257:(a,b,c)=>{c.d(b,{s:()=>n,yJ:()=>m,zZ:()=>l});var d=c(29021),e=c(33873),f=c(21820);function g(){return(0,e.join)(process.env.ANNODEX_CONFIG_DIR??process.env.ANNOVIBE_CONFIG_DIR??(0,e.join)((0,f.homedir)(),".config","annodex"),"session-runtime.json")}function h(){return{version:1,sessions:{}}}function i(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function j(){let a=g();if(!(0,d.existsSync)(a))return h();try{let b=JSON.parse((0,d.readFileSync)(a,"utf-8"));if(!i(b)||!i(b.sessions))return h();let c={};for(let[a,d]of Object.entries(b.sessions)){let b=function(a){if(!i(a)||"string"!=typeof a.sessionId)return null;let b=a.sessionId.trim();return b?{sessionId:b,cwd:"string"==typeof a.cwd&&a.cwd.trim()?a.cwd:void 0,provider:"string"==typeof a.provider&&a.provider.trim()?a.provider:void 0,modelId:"string"==typeof a.modelId&&a.modelId.trim()?a.modelId:void 0,thinkingLevel:"string"==typeof a.thinkingLevel&&a.thinkingLevel.trim()?a.thinkingLevel:void 0,sandboxMode:"workspace-write"===a.sandboxMode||"danger-full-access"===a.sandboxMode?a.sandboxMode:void 0,updatedAt:"string"==typeof a.updatedAt?a.updatedAt:new Date(0).toISOString()}:null}(d);b&&b.sessionId===a&&(c[a]=b)}return{version:1,sessions:c}}catch{return h()}}function k(a){let b=g(),c=(0,e.dirname)(b);(0,d.existsSync)(c)||(0,d.mkdirSync)(c,{recursive:!0}),(0,d.writeFileSync)(b,JSON.stringify(a,null,2),"utf-8")}function l(a){return a?j().sessions[a]??null:null}function m(a,b){let c=j(),d={...c.sessions[a]??{sessionId:a,updatedAt:new Date(0).toISOString()},sessionId:a,updatedAt:new Date().toISOString()};return void 0!==b.cwd&&(d.cwd=b.cwd),void 0!==b.provider&&(d.provider=b.provider),void 0!==b.modelId&&(d.modelId=b.modelId),void 0!==b.thinkingLevel&&(d.thinkingLevel=b.thinkingLevel),void 0!==b.sandboxMode&&(d.sandboxMode=b.sandboxMode),c.sessions[a]=d,k(c),d}function n(a){let b=j();b.sessions[a]&&(delete b.sessions[a],k(b))}},39006:a=>{a.exports={rE:"0.1.36"}},40402:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{$M:()=>o,BR:()=>r,K9:()=>K,PF:()=>u,Qx:()=>t,T0:()=>U,aU:()=>V,bd:()=>X,dQ:()=>v,os:()=>s,r1:()=>S});var e=c(33873),f=c(29021),g=c(46983),h=c(89035),i=c(26257),j=c(65369),k=c(72801),l=c(55132),m=c(54167),n=a([g]);function o(){let a=process.env.HOME??process.env.USERPROFILE??"/tmp";return(0,e.join)(a,".config","annodex")}function p(){return globalThis.__annodexSessionPathCache||(globalThis.__annodexSessionPathCache=new Map),globalThis.__annodexSessionPathCache}function q(a,b){p().set(a,b)}function r(a){p().delete(a)}async function s(a){let b=p().get(a);return b||(S(a)?.cwd??null)}function t(a){let b=F((0,i.zZ)(a)),c=F(Y(a)),d={provider:b?.provider??c?.provider,modelId:b?.modelId??c?.modelId,thinkingLevel:b?.thinkingLevel??c?.thinkingLevel};return d.provider||d.modelId||d.thinkingLevel?d:null}function u(a){return!!X(a)}async function v(a={}){let b=a.cwd?.trim()?x(a.cwd):void 0;if(b)try{return await R(b)}catch{}return function(a={}){var b;let c,d,g=[],h=new Set,i=a.cwd?.trim()?x(a.cwd):void 0,j=w();if(!(0,f.existsSync)(j))return g;let k=J(),l={};for(let a of y(j)){let b=H(a);if(!b)continue;let c=k.records[a],d=c&&c.size===b.size&&c.mtimeMs===b.mtimeMs?c:null;if(!d){let c=O(a);if(!c)continue;d=Q(a,c,b)}if(!d)continue;l[a]=d;let e={...d.summary,modified:new Date(d.mtimeMs).toISOString(),cwdExists:(0,f.existsSync)(d.summary.cwd)};q(e.id,e.cwd),(!i||x(e.cwd)===i)&&(!e||h.has(e.id)||(h.add(e.id),g.push(e)))}return b={version:1,records:l},c=I(),d=(0,e.dirname)(c),(0,f.existsSync)(d)||(0,f.mkdirSync)(d,{recursive:!0}),(0,f.writeFileSync)(c,JSON.stringify(b,null,2),"utf-8"),g.sort((a,b)=>b.modified.localeCompare(a.modified))}(a)}function w(){return(0,e.join)((0,h.R)(),"sessions")}function x(a){let b=a.trim();return b.replace(/[\\/]+$/,"")||b}function y(a,b=[]){try{for(let c of(0,f.readdirSync)(a,{withFileTypes:!0})){let d=(0,e.join)(a,c.name);c.isDirectory()?y(d,b):c.isFile()&&c.name.endsWith(".jsonl")&&b.push(d)}}catch{}return b}function z(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function A(a){try{let b=JSON.parse(a);return z(b)?b:null}catch{return null}}function B(a){return z(a.payload)?a.payload:null}function C(a,b){let c=a[b];return"string"==typeof c&&c.trim()?c:void 0}function D(a,b=!1){if(a)try{return(0,l.wB)((0,l.Dw)(),a,{preferCodex:b})}catch{return a}}function E(a){if(!a)return{};if(a.modelProvider===m.so)try{let b=(0,m.w5)((0,l.Dw)().providers,a.modelProvider,a.model);if(b.provider!==m.so)return b}catch{}return{provider:(0,g.g8)(a.modelProvider),modelId:a.model}}function F(a){if(!a)return null;if(a.provider!==m.so)return a;try{let b=(0,m.w5)((0,l.Dw)().providers,a.provider,a.modelId);if(b.provider!==m.so)return{...a,provider:b.provider,modelId:b.modelId}}catch{}return a}function G(a){if("string"!=typeof a||!a)return;let b=Date.parse(a);return Number.isFinite(b)?b:void 0}function H(a){try{let b=(0,f.statSync)(a);return{size:Number(b.size),mtimeMs:Number(b.mtimeMs),modified:b.mtime.toISOString()}}catch{return null}}function I(){return(0,e.join)(o(),"session-history-cache.json")}function J(){let a=I();if(!(0,f.existsSync)(a))return{version:1,records:{}};try{let b=JSON.parse((0,f.readFileSync)(a,"utf-8"));return{version:1,records:b.records&&"object"==typeof b.records?b.records:{}}}catch{return{version:1,records:{}}}}function K(){let a=new Map,b=J();for(let c of Object.values(b.records)){let b=c?.summary,d="string"==typeof b?.cwd?x(b.cwd):"";if(!d)continue;let e="string"==typeof b.modified?b.modified:c?.mtimeMs?new Date(c.mtimeMs).toISOString():"",f="string"==typeof b.created?b.created:null,g=a.get(d)??{count:0,last:null,created:null};g.count+=1,e&&(!g.last||e>g.last)&&(g.last=e),f&&(!g.created||f<g.created)&&(g.created=f),a.set(d,g)}return a}function L(a,b=65536){let c=null;try{c=(0,f.openSync)(a,"r");let d=Buffer.alloc(b),e=(0,f.readSync)(c,d,0,b,0);return d.subarray(0,e).toString("utf-8")}catch{return""}finally{if(null!==c)try{(0,f.closeSync)(c)}catch{}}}function M(a){return a.replace(/\s+/g," ").trim()}function N(a){try{return JSON.parse(`"${a}"`)}catch{return a}}function O(a){let b=L(a);if(!/"type"\s*:\s*"session_meta"/.test(b))return null;let c=b.split(/\r?\n/,1)[0]??"",d=A(c),e=(d?B(d):null)??d;if(e){let a=C(e,"id"),b=C(e,"cwd");if(a&&b){let c=z(e.source)&&z(e.source.subagent)&&z(e.source.subagent.thread_spawn)?C(e.source.subagent.thread_spawn,"parent_thread_id"):void 0;return{id:a,cwd:x(b),created:C(e,"timestamp")??C(d??{},"timestamp")??new Date(0).toISOString(),modelProvider:D(C(e,"model_provider"),!0),parentSessionId:C(e,"forked_from_id")??c}}}let f=/"id"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),g=/"cwd"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),h=/"timestamp"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),i=/"model_provider"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),j=/"forked_from_id"\s*:\s*"((?:\\.|[^"\\])*)"/.exec(b),k=f?N(f[1]):null,l=g?x(N(g[1])):null;if(!k||!l)return null;let m=h?N(h[1]):new Date(0).toISOString();return{id:k,cwd:l,created:m,modelProvider:D(i?N(i[1]):void 0,!0),parentSessionId:j?N(j[1]):void 0}}function P(a){let b=a.trim();if(!b||b.includes("AGENTS.md instructions"))return"";let c=b.lastIndexOf("<environment_context>"),d=(c>=0?b.slice(c).replace(/^<environment_context>[\s\S]*?<\/environment_context>\s*/m,"").trim():b).replace(/\s+/g," ").trim();return d.length>180?`${d.slice(0,180)}...`:d}function Q(a,b,c){let d,e,g=L(a,2097152);if(!g)return null;let h=g.split("\n").filter(a=>a.trim()),j="",k=0,l=0;for(let a of h){var m,n,o,p,r;let b=A(a);if(!b)continue;let c=B(b)??b;if("event_msg"===b.type){let a=c.type;("user_message"===a||"agent_message"===a)&&k++,"user_message"===a&&"string"==typeof c.message&&(m=j,n=c.message,j=m||P(n)||m);continue}if("response_item"===b.type&&"message"===c.type){let a=c.role;("user"===a||"assistant"===a)&&l++,"user"===a&&(p=j,r=(o=c.content,"string"==typeof o?o:Array.isArray(o)?o.map(a=>z(a)?"string"==typeof a.text?a.text:"string"==typeof a.content?a.content:"":"").filter(Boolean).join("\n"):""),j=p||P(r)||p);continue}"turn_context"===b.type&&(d=C(c,"model")??d,e=C(c,"effort")??e)}q(b.id,b.cwd);let s={id:b.id,path:a,cwd:b.cwd,cwdExists:(0,f.existsSync)(b.cwd),created:b.created,modified:c.modified,messageCount:k||l||+!!j,firstMessage:j||"(no messages)",parentSessionId:b.parentSessionId},t=E({model:d,modelProvider:b.modelProvider}),u={provider:t.provider??b.modelProvider,modelId:t.modelId??d,thinkingLevel:e},v=F((0,i.zZ)(b.id)),w={cwd:b.cwd,provider:v?.provider??u.provider,modelId:v?.modelId??u.modelId,thinkingLevel:v?.thinkingLevel??u.thinkingLevel};return(w.provider||w.modelId||w.thinkingLevel)&&(0,i.yJ)(b.id,{cwd:w.cwd,provider:w.provider,modelId:w.modelId,thinkingLevel:w.thinkingLevel}),{filePath:a,size:c.size,mtimeMs:c.mtimeMs,summary:s,model:u}}async function R(a){let b,c=x(a),d=function(a={}){let b=[],c=new Set,d=a.cwd?.trim()?x(a.cwd):void 0,e=J();for(let a of Object.values(e.records)){let e=a?.summary;if(!e?.id||!e.cwd)continue;let g=x(e.cwd);(!d||g===d)&&(c.has(e.id)||(c.add(e.id),b.push({...e,cwd:g,modified:new Date(a.mtimeMs).toISOString(),cwdExists:(0,f.existsSync)(g)})))}return b.sort((a,b)=>b.modified.localeCompare(a.modified))}({cwd:c}),e=new Map(d.map(a=>[a.id,a])),h=(0,g.DY)(c);b=h||await (0,g.gu)(c,(0,g.H3)((0,l.Dw)().providers));try{let a=await (0,g.Mi)(b,c),d=new Map;for(let b of a){if(x(b.cwd||"")!==c)continue;let a=function(a,b){let c=x(a.cwd||b?.cwd||""),d=T(a.createdAt||b?.created),e=T(a.updatedAt||b?.modified),g=P(a.preview??"")||b?.firstMessage||a.name||"(no messages)";return{path:b?.path??a.path??"",id:a.id,cwd:c,cwdExists:(0,f.existsSync)(c),name:a.name??b?.name,created:d,modified:e,messageCount:b?.messageCount??0,firstMessage:g,parentSessionId:b?.parentSessionId}}(b,e.get(b.id));q(a.id,a.cwd),d.set(a.id,a),e.delete(b.id)}for(let a of e.values())q(a.id,a.cwd),d.set(a.id,a);return[...d.values()].sort((a,b)=>b.modified.localeCompare(a.modified))}finally{h||(0,g.sM)(b)}}function S(a){let b=w();if(!a||!(0,f.existsSync)(b))return null;let c=y(b);for(let b of[...c.filter(b=>b.includes(a)),...c.filter(b=>!b.includes(a))]){let c=H(b);if(!c)continue;let d=O(b);if(d?.id!==a)continue;let e=Q(b,d,c);if(!e)break;return{...e.summary,modified:new Date(e.mtimeMs).toISOString(),cwdExists:(0,f.existsSync)(e.summary.cwd)}}return null}function T(a){return"number"==typeof a&&Number.isFinite(a)?new Date(1e3*a).toISOString():"string"==typeof a&&a?a:new Date(0).toISOString()}async function U(a,b,c){var d,e;let h,m,n=(0,g.DY)(b);m=n||await (0,g.gu)(b,(0,g.H3)((0,l.Dw)().providers));let o=null;try{o=await (0,g.nj)(m,a)}finally{n||(0,g.sM)(m)}if(!o)return{context:{messages:[],entryIds:[],thinkingLevel:"off",model:null,subagentRuns:[],sessionStats:null,contextUsage:null},tree:[],leafId:null,thread:null};q(o.id,o.cwd||b);let p=(0,i.zZ)(o.id),r=E(o);(r.modelId||r.provider)&&(!p?.provider||!p?.modelId)&&(0,i.yJ)(o.id,{cwd:o.cwd||b,provider:p?.provider??r.provider,modelId:p?.modelId??r.modelId});let s=F(Y(o.id)),t=F((0,i.zZ)(o.id)),u=t?.provider??s?.provider,v=t?.modelId??s?.modelId,w=t?.thinkingLevel??s?.thinkingLevel,x=r.provider,y=r.modelId,z=o.model?{provider:u??x??"codex",modelId:v??y??o.model}:v?{provider:u??"codex",modelId:v}:null,C=W(o,z),D=c?(d=C,e=c,(h=d.findIndex(a=>a.id===e))>=0?d.slice(0,h+1):d):C,H=(0,k.l)(X(o.id),v??o.model),I=new Map;for(let a of D)a.turnId&&"assistant"===a.message.role&&a.message.content.some(a=>"text"===a.type&&a.text.trim())&&I.set(a.turnId,a.id);let J=[],K=[];for(let a of D){let b=a.message;if(a.turnId&&"assistant"===b.role&&I.get(a.turnId)===a.id){let c=H.messageUsageByTurnId.get(a.turnId);J.push(c?{...b,usage:c}:b)}else J.push(b);K.push(a.id)}let L=D[D.length-1]?.id??C[C.length-1]?.id??null,M=o.model?{provider:u??x??"codex",modelId:v??y??o.model}:v?{provider:u??"codex",modelId:v}:null;return{context:{messages:J,entryIds:K,thinkingLevel:w??"off",model:M,subagentRuns:(0,j.oO)(function(a){if(!a)return[];let b=[];for(let c of a.turns??[])for(let d of c.items)"collabAgentToolCall"===d.type&&b.push(...(0,j.k8)(d,a.updatedAt?1e3*a.updatedAt:void 0));return b}(o),function(a){let b=X(a);if(!b)return[];let c="";try{c=(0,f.readFileSync)(b,"utf-8")}catch{return[]}if(!c)return[];let d=[];for(let a of c.split("\n")){if(!a.trim()||!a.includes("collab_"))continue;let b=A(a);if(!b||"event_msg"!==b.type)continue;let c=B(b);c&&d.push(...(0,j.nG)(c,G(b.timestamp)))}return d}(a)),sessionStats:H.sessionStats,contextUsage:H.contextUsage},tree:function(a){let b=new Map,c=new Map,d=0;for(let e of a)b.set(e.id,e),e.parentId?c.set(e.parentId,(c.get(e.parentId)??0)+1):d++;let e=d>1;if(!e){for(let a of c.values())if(a>1){e=!0;break}}if(!e)return[];let f=new Set;for(let b of a){let a=c.get(b.id)??0,e=b.parentId?c.get(b.parentId)??0:d;(!b.parentId||0===a||a>1||e>1)&&f.add(b.id)}let g=new Map,h=[];for(let b of a)f.has(b.id)&&g.set(b.id,{entry:b,children:[]});for(let c of a){if(!f.has(c.id))continue;let a=g.get(c.id);if(!a)continue;let d=c.parentId;for(;d&&!f.has(d);)d=b.get(d)?.parentId??null;d&&g.has(d)?g.get(d).children.push(a):h.push(a)}return h}(C),leafId:L,thread:o}}async function V(a,b){let c=await U(a,b),d=F((0,i.zZ)(a)),e=F(Y(a)),f=d?.provider??e?.provider,g=d?.modelId??e?.modelId,h=E(c.thread),j=h.provider,k=h.modelId,l=c.thread?.model?{provider:f??j??"codex",modelId:g??k??c.thread.model}:g?{provider:f??"codex",modelId:g}:null;return W(c.thread,l)}function W(a,b){if(!a)return[];let c=[],d=null;for(let e of a.turns??[]){let f=T(a.updatedAt);for(let g of e.items){let h=function(a,b,c){if("userMessage"===a.type)return{role:"user",content:function(a){let b=[];for(let c of a)"text"===c.type?b.push({type:"text",text:c.text}):"image"===c.type?b.push({type:"text",text:`[image] ${c.url.slice(0,120)}`}):"localImage"===c.type?b.push({type:"text",text:`[image] ${c.path}`}):"mention"===c.type?b.push({type:"text",text:`@${c.path}`}):"skill"===c.type&&b.push({type:"text",text:`$${c.name}`});return 0===b.length?"":1===b.length?b[0].text:b}(a.content??[])};if("agentMessage"===a.type){let d=c??E(b);return{role:"assistant",content:[{type:"text",text:a.text??""}],model:d.modelId??"",provider:d.provider??""}}if("reasoning"===a.type){let d=[...a.summary??[],...a.content??[]].join("\n").trim();if(!d)return null;let e=c??E(b);return{role:"assistant",content:[{type:"thinking",thinking:d}],model:e.modelId??"",provider:e.provider??""}}if("commandExecution"===a.type){let b=[a.aggregatedOutput??"",null!==a.exitCode&&void 0!==a.exitCode?`Exit code: ${a.exitCode}`:""].filter(Boolean).join("\n");return Z(a.id,"bash",b,"failed"===a.status||"declined"===a.status)}if("fileChange"===a.type)return Z(a.id,"edit",JSON.stringify(a.changes??[]),"failed"===a.status||"declined"===a.status);if("mcpToolCall"===a.type)return Z(a.id,a.tool||a.server||"mcp",JSON.stringify(a.result??a.error??""),!!a.error);if("dynamicToolCall"===a.type)return Z(a.id,a.tool||"tool",JSON.stringify(a.contentItems??[]),!1===a.success);if("collabAgentToolCall"===a.type){let c=(0,j.k8)(a,b.updatedAt?1e3*b.updatedAt:void 0);return{role:"custom",customType:"subagent-progress",content:"Agent progress updated",display:!1,details:{runs:c},timestamp:b.updatedAt?1e3*b.updatedAt:void 0}}return null}(g,a,b);if(!h)continue;let i={type:"message",id:g.id,parentId:d,timestamp:f,message:h,turnId:e.id};c.push(i),d=g.id}}var e=function(a){let b=X(a);if(!b)return null;let c="";try{c=(0,f.readFileSync)(b,"utf-8")}catch{return null}if(!c.trim())return null;let d={userTimestamps:[],assistantTimestamps:[],toolResultTimestamps:new Map};for(let a of c.split("\n")){if(!a.trim())continue;let b=function(a){try{let b=JSON.parse(a);return z(b)?b:null}catch{return null}}(a);if(!b)continue;let c=function(a){let b=B(a)??a;if("response_item"!==a.type||"message"!==b.type)return null;let c="string"==typeof b.role?b.role:"";if(!c)return null;let d=(Array.isArray(b.content)?b.content:[]).map(a=>{if(!z(a))return"";let b=a.text;return"string"==typeof b?b:""}).filter(Boolean).join(" ");return{role:c,text:M(d)}}(b);if(c){let a=G(b.timestamp);if(!a)continue;"user"===c.role?c.text.startsWith("<environment_context>")||d.userTimestamps.push(a):"assistant"===c.role&&d.assistantTimestamps.push(a);continue}if("event_msg"!==b.type)continue;let e=B(b);if(!e)continue;let f="string"==typeof e.type?e.type:"";if("exec_command_end"!==f&&"patch_apply_end"!==f&&"web_search_end"!==f)continue;let g=function(a){let b=a.call_id;if("string"==typeof b&&b)return b;let c=a.callId;return"string"==typeof c&&c?c:null}(e),h=G(b.timestamp);g&&h&&d.toolResultTimestamps.set(g,h)}return d}(a.id);if(!e)return c;let g=[...e.userTimestamps],h=[...e.assistantTimestamps];return c.map(a=>{if("message"!==a.type)return a;let b=a.message;if("user"===b.role){var c;let d,e=(c=b.content,d="string"==typeof c?c:c.filter(a=>"text"===a.type).map(a=>a.text).join("\n"),M(d)),f=g[0];return void 0!==f&&e?(g.shift(),{...a,timestamp:new Date(f).toISOString(),message:{...b,timestamp:f}}):a}if("assistant"===b.role){let c=h.shift();return void 0!==c?{...a,timestamp:new Date(c).toISOString(),message:{...b,timestamp:c}}:a}if("toolResult"===b.role){let c=e.toolResultTimestamps.get(b.toolCallId);return void 0!==c?{...a,timestamp:new Date(c).toISOString(),message:{...b,timestamp:c}}:a}return"custom"===b.role&&b.timestamp?{...a,timestamp:new Date(b.timestamp).toISOString()}:a})}function X(a){let b=w();if(!a||!(0,f.existsSync)(b))return null;let c=y(b);return c.find(b=>b.includes(a))??c.find(b=>{let c=O(b);return c?.id===a})??null}function Y(a){let b,c,d,e=X(a);if(!e)return null;let f="";try{f=L(e,2097152)}catch{return null}for(let a of f.split("\n")){if(!a.trim())continue;let e=A(a);if(!e)continue;let f=B(e)??e;if("session_meta"===e.type){b=D(C(f,"model_provider"),!0)??b;continue}"turn_context"===e.type&&(c=C(f,"model")??c,d=C(f,"effort")??d)}return b||c||d?{provider:b,modelId:c,thinkingLevel:d}:null}function Z(a,b,c,d){return{role:"toolResult",toolCallId:a,toolName:b,content:[{type:"text",text:c}],isError:d}}g=(n.then?(await n)():n)[0],d()}catch(a){d(a)}})},46983:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{DY:()=>G,H3:()=>w,Mi:()=>E,g8:()=>u,gu:()=>C,kW:()=>v,nj:()=>F,nt:()=>r,pU:()=>q,sM:()=>D});var e=c(79646),f=c(55511),g=c(56220),h=c(29021),i=c(33873),j=c(91645),k=c(55399),l=c(54167),m=c(65833),n=c(99526),o=c(39006),p=a([g]);function q(a){let b="string"==typeof a?.status?a.status.toLowerCase():"";return"inprogress"===b||"in_progress"===b||"running"===b||"pending"===b||"queued"===b}function r(a){return!!a?.turns?.some(a=>q(a))}g=(p.then?(await p)():p)[0];class H{constructor(a,b,c){this.cwd=a,this.url=b,this.serverKey=c,this.ws=null,this.pending=new Map,this.nextId=1,this.notificationHandlers=new Map,this.serverRequestHandlers=[],this.reconnectAttempts=0,this.maxReconnectAttempts=5,this.reconnectDelay=1e3,this._closed=!1}isConnected(){return this.ws?.readyState===g.WebSocket.OPEN}isClosed(){return this._closed}async connect(){let{default:a}=await Promise.resolve().then(c.bind(c,56220)),b=this.url;return this._closed=!1,new Promise((c,d)=>{let e=new a(b);this.ws=e,e.on("open",()=>{this.reconnectAttempts=0,this.initialize().then(c).catch(d)}),e.on("message",a=>{try{let b=JSON.parse(a.toString());this.handleMessage(b)}catch{}}),e.on("close",()=>{this.handleDisconnect()}),e.on("error",a=>{0===this.reconnectAttempts&&d(a)})})}async initialize(){let a=await this.request("initialize",{clientInfo:{name:"annodex",title:m.C3,version:o.rE},capabilities:{experimentalApi:!0}});this.serverInfo=a}request(a,b,c=3e5){if(!this.ws||this.ws.readyState!==g.WebSocket.OPEN)return Promise.reject(Error(`Codex server not connected (method: ${a})`));let d=this.nextId++;return new Promise((e,f)=>{let g=setTimeout(()=>{this.pending.delete(d),f(Error(`Request timeout: ${a}`))},c);this.pending.set(d,{resolve:e,reject:f,timer:g}),this.ws.send(JSON.stringify({jsonrpc:"2.0",id:d,method:a,params:b}))})}onNotification(a,b){let c=this.notificationHandlers.get(a)??[];return c.push(b),this.notificationHandlers.set(a,c),()=>{let c=this.notificationHandlers.get(a);if(c){let a=c.indexOf(b);-1!==a&&c.splice(a,1)}}}onServerRequest(a){return this.serverRequestHandlers.push(a),()=>{let b=this.serverRequestHandlers.indexOf(a);-1!==b&&this.serverRequestHandlers.splice(b,1)}}handleMessage(a){if("method"in a&&"id"in a)return void this.respondToServerRequest(a);if("method"in a&&!("id"in a)){let b=this.notificationHandlers.get(a.method);if(b)for(let c of[...b])c(a.params);return}if("id"in a&&("result"in a||"error"in a)){let b=this.pending.get(a.id);b&&(clearTimeout(b.timer),this.pending.delete(a.id),"error"in a&&a.error?b.reject(Error(a.error.message??"JSON-RPC error")):b.resolve(a.result))}}async respondToServerRequest(a){let b;if(!this.ws||this.ws.readyState!==g.WebSocket.OPEN)return;for(let c of[...this.serverRequestHandlers]){try{b=await c({id:a.id,method:a.method,params:a.params})}catch{b=void 0}if(void 0!==b)break}void 0===b&&(b=function(a){switch(a){case"item/commandExecution/requestApproval":case"item/fileChange/requestApproval":return{decision:"decline"};case"applyPatchApproval":case"execCommandApproval":return{decision:"denied"};case"item/tool/requestUserInput":return{answers:{}};case"mcpServer/elicitation/request":return{action:"decline",content:null,_meta:null};case"item/permissions/requestApproval":return{permissions:{},scope:"turn"};case"item/tool/call":return{contentItems:[],success:!1};case"account/chatgptAuthTokens/refresh":return{accessToken:"",chatgptAccountId:"",chatgptPlanType:null};default:return{}}}(a.method));let c={jsonrpc:"2.0",id:a.id,result:b};this.ws.send(JSON.stringify(c))}handleDisconnect(){for(let[,a]of this.pending)clearTimeout(a.timer),a.reject(Error("Codex server disconnected"));if(this.pending.clear(),!this._closed&&this.reconnectAttempts<this.maxReconnectAttempts){this.reconnectAttempts++;let a=this.reconnectDelay*Math.pow(2,this.reconnectAttempts-1);setTimeout(()=>{this._closed||this.connect().catch(()=>{})},a)}}close(){this._closed=!0,this.ws?.close(),this.ws=null}}function s(a){if(a.connection?.close(),a.process?.pid)try{"win32"!==process.platform?process.kill(-a.process.pid,"SIGTERM"):a.process.kill("SIGTERM")}catch{try{a.process.kill("SIGTERM")}catch{}}for(let b of a.compatProxies)b.stop().catch(()=>{});for(let b of a.annodexRouters)b.stop().catch(()=>{})}function t(){if(!globalThis.__codexServers){globalThis.__codexServers=new Map;let a=()=>{globalThis.__codexServers?.forEach(a=>{s(a)})};process.once("exit",a),process.once("SIGINT",a),process.once("SIGTERM",a)}return globalThis.__codexServers}function u(a){if(a)return a.replace(/#(?:chat|responses)-[a-f0-9]{10}$/i,"")}function v(a,b,c){let d=a.find(a=>a.id===b);return{provider:l.so,modelId:d?(0,l.XO)(b,c):c}}function w(a){return{workspace:!0,contextWindow:function(a){let b=0;for(let c of a)for(let a of c.models)"number"==typeof a.contextWindow&&a.contextWindow>b&&(b=a.contextWindow);return b>0?b:void 0}(a),routerProviders:a,providers:[{id:l.so,name:"Annodex Router",baseUrl:"__annodex_router__",api:"openai-responses",requiresOpenAiAuth:!1}]}}function x(a){let b=a?.trim();if(b){if(b.startsWith("!"))try{return(0,e.execSync)(b.slice(1),{encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:1e4}).trim()||void 0}catch{return}return/^[A-Za-z_][A-Za-z0-9_]*$/.test(b)&&process.env[b]?process.env[b]:b}}function y(a){return JSON.stringify(a)}function z(a){return/^[A-Za-z0-9_-]+$/.test(a)?a:y(a)}function A(a,b){if(b)return"responses";let c=(0,n.pp)(a);return"openai-responses"===c?"responses":"openai-completions"===c?"chat":null}async function B(a,b,c,d,e,g){let h,i=a.baseUrl?.trim().replace(/\/+$/,"")||"";if(a.id===l.so&&"__annodex_router__"===i){let a=new l.Po({providers:e??[],defaultThinking:g??"disabled"});await a.start(),d.push(a),i=a.getBaseUrl(),console.log(`[codex-server] Annodex router started on port ${a.getPort()}`)}let j=x(a.apiKey),m=(0,n.pp)(a.api,i,a.id),o="openai-completions"===m,p=!1;if(o&&i&&j&&(0,k.s3)(i)){let b=(0,k.xh)(i),d=new k.F6({targetUrl:b,apiKey:j,defaultThinking:g??"disabled",reasoningConfig:a.reasoningConfig});try{await d.start(),c.push(d),i=d.getBaseUrl(),p=!0,console.log(`[codex-server] Compat proxy started on port ${d.getPort()} for ${b}`)}catch(a){console.error("[codex-server] Failed to start compat proxy:",a)}}if(j){var q;let c;q=a.id,c=(0,f.createHash)("sha256").update(q).digest("hex").slice(0,16).toUpperCase(),b[h=`ANNODEX_PROVIDER_${c}_API_KEY`]=j}return{id:a.id,name:a.name,baseUrl:i,wireApi:A(m,p),envKey:h,requiresOpenAiAuth:a.requiresOpenAiAuth??!!j}}async function C(a,b){let c=t(),d=a.replace(/\/+$/,"")||a,g=function(a,b){let c=a.replace(/\/+$/,"")||a;if(b?.workspace){let a=JSON.stringify({providers:b.providers??[],routerProviders:b.routerProviders??[]}),d=(0,f.createHash)("sha256").update(a).digest("hex").slice(0,16),e=b?.contextWindow?String(b.contextWindow):"default";return`${c}\0workspace\0${e}\0${d}`}let d=b?.providerId||b?.baseUrl||"default",e=b?.baseUrl?.replace(/\/+$/,"")||"default",g=b?.api||"default",h=b?.apiKey||"default",i=b?.contextWindow?String(b.contextWindow):"default",j=b?.reasoningConfig?`${b.reasoningConfig.thinkingParam??""}|${b.reasoningConfig.effortParam??""}|${b.reasoningConfig.effortValueMode??""}`:"default";return`${c}\0${d}\0${e}\0${g}\0${h}\0${i}\0${j}`}(d,b),l=c.get(g);if(l?.connection?.isConnected())return l.refCount++,l.connection;if(l?.startPromise)try{let a=await l.startPromise,b=c.get(g);return b&&b.refCount++,a}catch{}else l&&(s(l),c.delete(g));let m=await new Promise((a,b)=>{let c=(0,j.createServer)();c.unref(),c.on("error",b),c.listen(0,"127.0.0.1",()=>{let d=c.address();c.close(()=>{d&&"object"==typeof d?a(d.port):b(Error("Failed to allocate a local port"))})})}),o=`ws://127.0.0.1:${m}`,p=function(){let a=process.cwd();for(let b of[(0,i.join)(a,"node_modules",".bin","codex"),(0,i.join)(a,"..","..","node_modules",".bin","codex")])if((0,h.existsSync)(b))return b;return"codex"}(),q=(async()=>{let a=[],f=[],h=null,i=b?.baseUrl||void 0,j=x(b?.apiKey),l=b?.requiresOpenAiAuth??!!j,q=(0,n.pp)(b?.api,i,b?.providerId),r="openai-completions"===q,s=!1;if(r&&i&&j&&(0,k.s3)(i)){let c=(0,k.xh)(i);h=new k.F6({targetUrl:c,apiKey:j,defaultThinking:b?.thinkingLevel??"disabled",reasoningConfig:b?.reasoningConfig});try{await h.start(),a.push(h),i=h.getBaseUrl(),s=!0,console.log(`[codex-server] Compat proxy started on port ${h.getPort()} for ${c}`)}catch(a){console.error("[codex-server] Failed to start compat proxy:",a),h=null}}let t={...process.env};j&&!b?.workspace&&(t.OPENAI_API_KEY=j),i&&(t.OPENAI_BASE_URL=i);let u=[];if(b?.contextWindow&&b.contextWindow>0&&u.push("-c",`model_context_window=${b.contextWindow}`),b?.workspace){let c=[];for(let d of b.providers??[])d.id&&d.baseUrl&&c.push(await B(d,t,a,f,b.routerProviders,b.thinkingLevel));for(let a of c)!function(a,b){if(!b.id||!b.baseUrl)return;let c=z(b.id);a.push("-c",`model_providers.${c}.name=${y(b.name||b.id)}`),a.push("-c",`model_providers.${c}.base_url=${y(b.baseUrl.replace(/\/+$/,""))}`),b.wireApi&&a.push("-c",`model_providers.${c}.wire_api=${y(b.wireApi)}`),a.push("-c",`model_providers.${c}.requires_openai_auth=${b.requiresOpenAiAuth?"true":"false"}`),b.envKey&&a.push("-c",`model_providers.${c}.env_key=${y(b.envKey)}`)}(u,a)}else if(b?.providerId&&i){let a=z(b.providerId),c=A(q,s);u.push("-c",`model_provider=${y(b.providerId)}`),u.push("-c",`model_providers.${a}.name=${y(b.providerId)}`),u.push("-c",`model_providers.${a}.base_url=${y(i.replace(/\/+$/,""))}`),c&&u.push("-c",`model_providers.${a}.wire_api=${y(c)}`),u.push("-c",`model_providers.${a}.requires_openai_auth=${l?"true":"false"}`)}let v=[...u,"app-server","--listen",o],w=null,C=(0,e.spawn)(p,v,{cwd:d,stdio:["ignore","pipe","pipe"],env:t,detached:"win32"!==process.platform}),D=[];C.stderr?.on("data",a=>{D.push(a.toString())}),C.stdout?.on("data",()=>{}),C.on("error",a=>{console.error(`[codex-server] Process error for ${d}:`,a.message)}),C.on("exit",()=>{let b=c.get(g);if(b?.process===C){for(let b of(c.delete(g),a))b.stop().catch(()=>{});for(let a of f)a.stop().catch(()=>{});w?.close()}}),await new Promise(a=>setTimeout(a,500)),w=new H(d,o,g);for(let b=0;b<10;b++)try{await w.connect();break}catch{if(b<9)await new Promise(a=>setTimeout(a,500));else{try{"win32"!==process.platform?process.kill(-C.pid,"SIGTERM"):C.kill("SIGTERM")}catch{C.kill("SIGTERM")}for(let b of a)await b.stop().catch(()=>{});for(let a of f)await a.stop().catch(()=>{});let b=D.join("");throw Error(`Failed to connect to codex app-server after 10 attempts.
2
2
  stderr: ${b.slice(-500)}`)}}let E={process:C,connection:w,compatProxies:a,annodexRouters:f,port:m,cwd:d,workspace:!!b?.workspace,refCount:1,startPromise:null};return c.set(g,E),w})(),r={process:null,connection:null,compatProxies:[],annodexRouters:[],port:m,cwd:d,workspace:!!b?.workspace,refCount:0,startPromise:q};c.set(g,r);try{return await q}catch(a){throw c.delete(g),a}}function D(a){let b=t(),c=b.get(a.serverKey);c&&(c.refCount--,c.refCount<=0&&(s(c),b.delete(a.serverKey)))}async function E(a,b){let c=[],d=null;do{let e=await a.request("thread/list",{...d?{cursor:d}:{},...b?{cwd:b}:{},limit:100,sortKey:"updated_at",archived:!1});c.push(...e.data??[]),d=e.nextCursor??null}while(d);return c}async function F(a,b){try{return(await a.request("thread/read",{threadId:b,includeTurns:!0})).thread??null}catch(b){let a=b instanceof Error?b.message:String(b);if(/no rollout found|thread not found|not found/i.test(a))return null;throw b}}function G(a){let b=t(),c=a.replace(/\/+$/,"")||a;for(let a of b.values())if(a.cwd===c&&a.workspace&&a.connection?.isConnected())return a.connection}d()}catch(a){d(a)}})},54167:(a,b,c)=>{c.d(b,{Po:()=>o,XO:()=>l,so:()=>k,w5:()=>n});var d=c(81630),e=c(55591),f=c(79646),g=c(55511),h=c(1932),i=c(99526),j=c(55399);let k="annodex-router";function l(a,b){let c=(0,g.createHash)("sha256").update(`${a}\0${b}`).digest("hex").slice(0,10),d=a.replace(/[^A-Za-z0-9_.-]+/g,"-"),e=b.replace(/[^A-Za-z0-9_.-]+/g,"-");return`annodex-${d}-${e}-${c}`}function m(a){let b=[];for(let c of a){let a=c.baseUrl.trim().replace(/\/+$/,"");if(!a)continue;let d=(0,i.pp)(c.api,a,c.id);for(let e of c.models.length?c.models:[{id:c.id,name:c.name||c.id}]){let g=(0,i.pp)(e.api??d,a,c.id);("openai-responses"===g||"openai-completions"===g)&&b.push({key:l(c.id,e.id),providerId:c.id,modelId:e.id,upstreamModelId:e.id,baseUrl:a,apiKey:function(a){let b=a?.trim();if(b){if(b.startsWith("!"))try{return(0,f.execSync)(b.slice(1),{encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:1e4}).trim()||void 0}catch{return}return/^[A-Za-z_][A-Za-z0-9_]*$/.test(b)&&process.env[b]?process.env[b]:b}}(c.apiKey),api:g,requiresOpenAiAuth:c.requiresOpenAiAuth,reasoningConfig:e.reasoningConfig??c.reasoningConfig})}}return b}function n(a,b,c){if(b!==k)return{provider:b??void 0,modelId:c??void 0};let d=function(a,b){if(b)return m(a).find(a=>a.key===b)}(a,c);return d?{provider:d.providerId,modelId:d.modelId}:{provider:b??void 0,modelId:c??void 0}}class o{constructor(a){for(const b of(this.server=null,this.port=0,this.targets=new Map,this.defaultThinking=a.defaultThinking??"disabled",a.port&&(this.port=a.port),m(a.providers)))this.targets.set(b.key,b)}async start(){return new Promise((a,b)=>{this.server=(0,d.createServer)((a,b)=>this.handleRequest(a,b)),this.server.on("error",b),this.server.listen(this.port,"127.0.0.1",()=>{let c=this.server?.address();c&&"object"==typeof c?(this.port=c.port,a(this.port)):b(Error("Failed to get annodex router address"))})})}async stop(){return new Promise(a=>{this.server?(this.server.close(()=>a()),this.server=null):a()})}getPort(){return this.port}getBaseUrl(){return`http://127.0.0.1:${this.port}/v1`}handleRequest(a,b){if("/health"===a.url){b.writeHead(200,{"Content-Type":"application/json"}),b.end(JSON.stringify({status:"ok",models:this.targets.size}));return}if("POST"!==a.method||!a.url?.startsWith("/v1/responses")){b.writeHead(404),b.end();return}let c=[];a.on("data",a=>c.push(a)),a.on("end",()=>{try{let a=JSON.parse(Buffer.concat(c).toString());this.proxyRequest(a,b)}catch{b.writeHead(400,{"Content-Type":"application/json"}),b.end(JSON.stringify({error:{message:"Invalid JSON",type:"invalid_request_error"}}))}})}proxyRequest(a,b){let c="string"==typeof a.model?a.model:"",d=this.targets.get(c);if(!d){b.writeHead(404,{"Content-Type":"application/json"}),b.end(JSON.stringify({error:{message:`Unknown Annodex router model: ${c}`,type:"invalid_request_error"}}));return}let e={...a,model:d.upstreamModelId};"openai-completions"===d.api?(0,j.y3)(e,b,{targetUrl:d.baseUrl,apiKey:d.apiKey??"",defaultThinking:this.defaultThinking,reasoningConfig:d.reasoningConfig}):this.proxyResponsesNative(e,d,b)}proxyResponsesNative(a,b,c){let f=new h.URL(function(a){let b=a.trim().replace(/\/+$/,"");if(!b||/\/responses$/i.test(b))return b;let c=(b.split("://")[1]??b).includes("/")?`${b}/responses`:`${b}/v1/responses`;for(;c.includes("/v1/v1/");)c=c.replace("/v1/v1/","/v1/");return c}(b.baseUrl)),g="https:"===f.protocol,i=(g?e.request:d.request)({hostname:f.hostname,port:f.port||(g?443:80),path:f.pathname+f.search,method:"POST",headers:{"Content-Type":"application/json",...b.apiKey?{Authorization:`Bearer ${b.apiKey}`}:{}}},b=>{let d={},e=b.headers["content-type"];if("string"==typeof e)d["Content-Type"]=e;else d["Content-Type"]="object"!=typeof a||null===a||Array.isArray(a)||!0!==a.stream?"application/json":"text/event-stream";c.writeHead(b.statusCode??502,d),b.pipe(c)});i.on("error",a=>{c.writeHead(502,{"Content-Type":"application/json"}),c.end(JSON.stringify({error:{message:`Upstream error: ${a.message}`,type:"upstream_error"}}))}),i.write(JSON.stringify(a)),i.end()}}},65369:(a,b,c)=>{function d(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function e(a){return"string"==typeof a&&a.trim()?a:void 0}function f(a,b=1200){return a.length>b?`${a.slice(0,b)}...`:a}function g(a){if("string"==typeof a)return f(a);if(null!=a)try{return f(JSON.stringify(a))}catch{return f(String(a))}}function h(a){if(d(a)){if("completed"in a)return"completed";if("failed"in a||"error"in a)return"failed";if("paused"in a||"blocked"in a)return"paused";if("not_found"in a)return"not_found";if("running"in a||"in_progress"in a||"pending"in a)return"running"}let b="string"==typeof a?a.toLowerCase().trim():"";return"completed"===b||"complete"===b||"done"===b||"success"===b||"succeeded"===b?"completed":"failed"===b||"failure"===b||"error"===b||"cancelled"===b||"canceled"===b?"failed":"paused"===b||"blocked"===b||"interrupted"===b?"paused":"not_found"===b||"not-found"===b||"missing"===b?"not_found":("pending"===b||"pending_init"===b||"starting"===b||"started"===b,"running")}function i(a){if(d(a))return g(a.completed??a.failed??a.error??a.blocked??a.paused??a.running??a.pending)}function j(a,b){let c=e(a.thread_id)??e(a.threadId)??e(a.id)??b.threadId,d=e(a.agent_nickname)??e(a.agentNickname)??e(a.nickname)??e(a.agent)??b.agent??"agent",f=a.status??a.state??b.status;return{id:e(a.call_id)??e(a.callId)??c??b.id??d,agent:d,status:h(f),role:e(a.agent_role)??e(a.agentRole)??e(a.role)??b.role,task:e(a.prompt)??e(a.task)??b.task,summary:i(f)??e(a.summary)??b.summary,threadId:c,parentThreadId:e(a.parent_thread_id)??e(a.parentThreadId)??b.parentThreadId,model:e(a.model)??b.model,reasoningEffort:e(a.reasoning_effort)??e(a.reasoningEffort)??b.reasoningEffort,timestamp:function(a){if("string"!=typeof a||!a)return;let b=Date.parse(a);return Number.isFinite(b)?b:void 0}(a.timestamp)??b.timestamp}}function k(a,b){return Object.entries(a).map(([a,c])=>d(c)?j({...c,thread_id:a},{...b,id:a,threadId:a}):{id:a,agent:b.agent??"agent",status:h(c),role:b.role,task:b.task,summary:i(c),threadId:a,parentThreadId:b.parentThreadId,model:b.model,reasoningEffort:b.reasoningEffort,timestamp:b.timestamp})}function l(a,b){var c;let f;if(!d(a)||"collabAgentToolCall"!==a.type)return[];let l={id:e(a.id),agent:(f="string"==typeof(c=a.tool)&&c.trim()?c:d(c)?e(c.name)??e(c.agent)??e(c.agent_nickname)??e(c.agentNickname)??e(c.nickname):void 0)?f.toLowerCase().endsWith("agent")?"agent":f:"agent",status:h(a.status),task:e(a.prompt),parentThreadId:e(a.senderThreadId)??e(a.sender_thread_id),model:e(a.model),reasoningEffort:g(a.reasoningEffort??a.reasoning_effort),timestamp:b},m=function(a,b){if(Array.isArray(a))return a.filter(d).map((a,c)=>j(a,{...b,id:`${b.id??"agent"}:${c}`}));if(!d(a))return[];let c=a.agent_statuses??a.agentStatuses;if(Array.isArray(c))return c.filter(d).map((a,c)=>j(a,{...b,id:`${b.id??"agent"}:${c}`}));let e=a.statuses;return d(e)?k(e,b):Object.entries(a).map(([a,c])=>d(c)?j(c,{...b,id:a,threadId:a}):{id:a,agent:b.agent??"agent",status:h(c),role:b.role,task:b.task,summary:i(c),threadId:a,parentThreadId:b.parentThreadId,model:b.model,reasoningEffort:b.reasoningEffort,timestamp:b.timestamp})}(a.agentsStates??a.agents_states,l);if(m.length>0)return m;let n=Array.isArray(a.receiverThreadIds)?a.receiverThreadIds.filter(a=>"string"==typeof a&&!!a):[];return n.length>0?n.map((c,d)=>({id:`${e(a.id)??"agents"}:${c}`,agent:l.agent??`agent ${d+1}`,status:l.status??"running",task:l.task,threadId:c,parentThreadId:l.parentThreadId,model:l.model,reasoningEffort:l.reasoningEffort,timestamp:b})):[{id:e(a.id)??`agents:${b??Date.now()}`,agent:l.agent??"agents",status:l.status??"running",task:l.task,parentThreadId:l.parentThreadId,model:l.model,reasoningEffort:l.reasoningEffort,timestamp:b}]}function m(a,b){if(!d(a))return[];let c=e(a.type);if(!c?.startsWith("collab_"))return[];let f={id:e(a.call_id)??e(a.callId),parentThreadId:e(a.sender_thread_id)??e(a.senderThreadId),task:e(a.prompt),model:e(a.model),reasoningEffort:e(a.reasoning_effort)??e(a.reasoningEffort),timestamp:b},g=a.agent_statuses??a.agentStatuses;return Array.isArray(g)?g.filter(d).map((a,b)=>j(a,{...f,id:`${f.id??"agent"}:${b}`})):d(a.statuses)?k(a.statuses,f):"collab_agent_spawn_end"===c?[j({call_id:a.call_id,thread_id:a.new_thread_id,agent_nickname:a.new_agent_nickname,agent_role:a.new_agent_role,prompt:a.prompt,model:a.model,reasoning_effort:a.reasoning_effort,status:a.status},f)]:"collab_close_end"===c||"collab_agent_interaction_end"===c?[j({call_id:a.call_id,thread_id:a.receiver_thread_id,agent_nickname:a.receiver_agent_nickname,agent_role:a.receiver_agent_role,prompt:a.prompt,status:a.status},f)]:[]}function n(...a){let b=new Map;for(let c of a)for(let a of c??[]){let c=b.get(a.id);b.set(a.id,{...c,...a,timestamp:Math.max(c?.timestamp??0,a.timestamp??0)||c?.timestamp||a.timestamp,summary:a.summary??c?.summary,task:a.task??c?.task,role:a.role??c?.role,threadId:a.threadId??c?.threadId})}return[...b.values()].sort((a,b)=>(b.timestamp??0)-(a.timestamp??0))}c.d(b,{k8:()=>l,nG:()=>m,oO:()=>n})},65833:(a,b,c)=>{c.d(b,{AQ:()=>f,C3:()=>d,JD:()=>e});let d="annodex",e="@seqyuan/annodex",f="annodex update"},72801:(a,b,c)=>{c.d(b,{l:()=>l});var d=c(29021),e=c(55132),f=c(54167);function g(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function h(a){return"number"==typeof a&&Number.isFinite(a)?a:0}function i(a){if(!g(a))return{inputTokens:0,outputTokens:0,totalTokens:0,cachedTokens:0};let b=h(a.input_tokens??a.prompt_tokens??a.promptTokenCount),c=h(a.output_tokens??a.completion_tokens??a.candidatesTokenCount),d=h(a.cached_input_tokens??a.cache_read_input_tokens??a.prompt_cache_hit_tokens??(g(a.input_tokens_details)?a.input_tokens_details.cached_tokens:void 0)??(g(a.prompt_tokens_details)?a.prompt_tokens_details.cached_tokens:void 0)??a.cachedContentTokenCount),e=h(a.total_tokens??a.totalTokens)||b+c;return{inputTokens:b,outputTokens:c,totalTokens:e,cachedTokens:d}}function j(a){return a.inputTokens>0||a.outputTokens>0||a.totalTokens>0||a.cachedTokens>0}function k(a){if(!a)return 0;let b=(0,e.rv)(a);if(b?.contextWindow)return b.contextWindow;try{let b=(0,e.Dw)(),c=(0,f.w5)(b.providers,f.so,a).modelId??a,d=(0,e.KR)(b).find(a=>a.modelId===c);return d?.contextWindow??0}catch{return 0}}function l(a,b){if(!a||!(0,d.existsSync)(a))return{messageUsageByTurnId:new Map,sessionStats:null,contextUsage:null};let c="";try{c=(0,d.readFileSync)(a,"utf-8")}catch{return{messageUsageByTurnId:new Map,sessionStats:null,contextUsage:null}}let e=[],f=null,l=b??null,m="";for(let a of c.split("\n")){if(!a.trim())continue;let b=function(a){try{let b=JSON.parse(a);return g(b)?b:null}catch{return null}}(a);if(!b)continue;let c=(g(b.payload)?b.payload:null)??b;if("turn_context"===b.type){f="string"==typeof c.turn_id?c.turn_id:null,"string"==typeof c.model&&c.model.trim()&&(l=c.model);continue}if("event_msg"!==b.type||"token_count"!==c.type||!g(c.info))continue;let d=i(c.info.last_token_usage),n=i(c.info.total_token_usage),o=h(c.info.model_context_window)||k(l),p=n.totalTokens||d.totalTokens;if(!j(d)&&!j(n)&&p<=0)continue;let q={turnId:f,observedAt:"string"==typeof b.timestamp?b.timestamp:"",last:d,total:n,contextWindow:o},r=[q.turnId??"",q.last.inputTokens,q.last.outputTokens,q.last.totalTokens,q.last.cachedTokens,q.total.inputTokens,q.total.outputTokens,q.total.totalTokens,q.total.cachedTokens,q.contextWindow].join("|");r!==m&&(m=r,e.push(q))}let n=new Map;for(let a of e)a.turnId&&n.set(a.turnId,a);let o=new Map;for(let[a,b]of n)o.set(a,function(a){let b=a.last.inputTokens;return{input:b,output:a.last.outputTokens,cacheRead:a.last.cachedTokens,cacheWrite:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}}}(b));let p=e[e.length-1],q=p?.total,r=q?.inputTokens??0,s=q?.outputTokens??0,t=q?.cachedTokens??0,u=p?.contextWindow??k(l),v=p&&(p.last.totalTokens||p.last.inputTokens)||null;return{messageUsageByTurnId:o,sessionStats:r+s+t>0?{tokens:{input:r,output:s,cacheRead:t,cacheWrite:0},cost:0}:null,contextUsage:u>0?{percent:null!==v?Math.min(100,v/u*100):null,contextWindow:u,tokens:v}:null}}}};
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=4035,exports.ids=[4035],exports.modules={56472:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(65246),e=c(21143),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},75899:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(73946),e=c(363);let f=(a,b)=>d.A.lang.round(e.A.parse(a)[b])},80339:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(21143),e=c(69085),f=(0,d.K2)((a,b)=>{let c;return"sandbox"===b&&(c=(0,e.Ltv)("#i"+a)),("sandbox"===b?(0,e.Ltv)(c.nodes()[0].contentDocument.body):(0,e.Ltv)("body")).select(`[id="${a}"]`)},"getDiagramElement")},94035:(a,b,c)=>{c.d(b,{diagram:()=>t});var d=c(80339),e=c(56472),f=c(44906);c(73865),c(65144),c(30800),c(90355),c(19203),c(31792);var g=c(70400),h=c(65246),i=c(21143),j=c(69085),k=c(75899),l=c(14120),m=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],c=[1,10],d=[1,11],e=[1,12],f=[1,13],g=[1,23],h=[1,24],j=[1,25],k=[1,26],l=[1,27],m=[1,19],n=[1,28],o=[1,29],p=[1,20],q=[1,18],r=[1,21],s=[1,22],t=[1,36],u=[1,37],v=[1,38],w=[1,39],x=[1,40],y=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,65,66,67,68,69],z=[1,45],A=[1,46],B=[1,55],C=[40,48,50,51,52,70,71],D=[1,66],E=[1,64],F=[1,61],G=[1,65],H=[1,67],I=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,65,66,67,68,69],J=[65,66,67,68,69],K=[1,84],L=[1,83],M=[1,81],N=[1,82],O=[6,10,42,47],P=[6,10,13,41,42,47,48,49],Q=[1,92],R=[1,91],S=[1,90],T=[19,58],U=[1,101],V=[1,100],W=[19,58,60,62],X={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,attributeKeyType:59,",":60,ATTRIBUTE_KEY:61,COMMENT:62,cardinality:63,relType:64,ZERO_OR_ONE:65,ZERO_OR_MORE:66,ONE_OR_MORE:67,ONLY_ONE:68,MD_PARENT:69,NON_IDENTIFYING:70,IDENTIFYING:71,WORD:72,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",60:",",61:"ATTRIBUTE_KEY",62:"COMMENT",65:"ZERO_OR_ONE",66:"ZERO_OR_MORE",67:"ONE_OR_MORE",68:"ONLY_ONE",69:"MD_PARENT",70:"NON_IDENTIFYING",71:"IDENTIFYING",72:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[55,1],[56,1],[56,3],[59,1],[57,1],[12,3],[63,1],[63,1],[63,1],[63,1],[63,1],[64,1],[64,1],[14,1],[14,1],[14,1]],performAction:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 1:break;case 2:case 6:case 7:this.$=[];break;case 3:f[h-1].push(f[h]),this.$=f[h-1];break;case 4:case 5:case 55:case 56:case 57:case 58:case 81:case 65:case 66:case 69:this.$=f[h];break;case 8:d.addEntity(f[h-4]),d.addEntity(f[h-2]),d.addRelationship(f[h-4],f[h],f[h-2],f[h-3]);break;case 9:d.addEntity(f[h-8]),d.addEntity(f[h-4]),d.addRelationship(f[h-8],f[h],f[h-4],f[h-5]),d.setClass([f[h-8]],f[h-6]),d.setClass([f[h-4]],f[h-2]);break;case 10:d.addEntity(f[h-6]),d.addEntity(f[h-2]),d.addRelationship(f[h-6],f[h],f[h-2],f[h-3]),d.setClass([f[h-6]],f[h-4]);break;case 11:d.addEntity(f[h-6]),d.addEntity(f[h-4]),d.addRelationship(f[h-6],f[h],f[h-4],f[h-5]),d.setClass([f[h-4]],f[h-2]);break;case 12:d.addEntity(f[h-3]),d.addAttributes(f[h-3],f[h-1]);break;case 13:d.addEntity(f[h-5]),d.addAttributes(f[h-5],f[h-1]),d.setClass([f[h-5]],f[h-3]);break;case 14:d.addEntity(f[h-2]);break;case 15:d.addEntity(f[h-4]),d.setClass([f[h-4]],f[h-2]);break;case 16:d.addEntity(f[h]);break;case 17:d.addEntity(f[h-2]),d.setClass([f[h-2]],f[h]);break;case 18:d.addEntity(f[h-6],f[h-4]),d.addAttributes(f[h-6],f[h-1]);break;case 19:d.addEntity(f[h-8],f[h-6]),d.addAttributes(f[h-8],f[h-1]),d.setClass([f[h-8]],f[h-3]);break;case 20:d.addEntity(f[h-5],f[h-3]);break;case 21:d.addEntity(f[h-7],f[h-5]),d.setClass([f[h-7]],f[h-2]);break;case 22:d.addEntity(f[h-3],f[h-1]);break;case 23:d.addEntity(f[h-5],f[h-3]),d.setClass([f[h-5]],f[h]);break;case 24:case 25:this.$=f[h].trim(),d.setAccTitle(this.$);break;case 26:case 27:this.$=f[h].trim(),d.setAccDescription(this.$);break;case 32:d.setDirection("TB");break;case 33:d.setDirection("BT");break;case 34:d.setDirection("RL");break;case 35:d.setDirection("LR");break;case 36:this.$=f[h-3],d.addClass(f[h-2],f[h-1]);break;case 37:case 38:case 59:case 67:case 43:this.$=[f[h]];break;case 39:case 40:this.$=f[h-2].concat([f[h]]);break;case 41:this.$=f[h-2],d.setClass(f[h-1],f[h]);break;case 42:this.$=f[h-3],d.addCssStyles(f[h-2],f[h-1]);break;case 44:case 68:f[h-2].push(f[h]),this.$=f[h-2];break;case 46:this.$=f[h-1]+f[h];break;case 54:case 79:case 80:case 70:this.$=f[h].replace(/"/g,"");break;case 60:f[h].push(f[h-1]),this.$=f[h];break;case 61:this.$={type:f[h-1],name:f[h]};break;case 62:this.$={type:f[h-2],name:f[h-1],keys:f[h]};break;case 63:this.$={type:f[h-2],name:f[h-1],comment:f[h]};break;case 64:this.$={type:f[h-3],name:f[h-2],keys:f[h-1],comment:f[h]};break;case 71:this.$={cardA:f[h],relType:f[h-1],cardB:f[h-2]};break;case 72:this.$=d.Cardinality.ZERO_OR_ONE;break;case 73:this.$=d.Cardinality.ZERO_OR_MORE;break;case 74:this.$=d.Cardinality.ONE_OR_MORE;break;case 75:this.$=d.Cardinality.ONLY_ONE;break;case 76:this.$=d.Cardinality.MD_PARENT;break;case 77:this.$=d.Identification.NON_IDENTIFYING;break;case 78:this.$=d.Identification.IDENTIFYING}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},a(b,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:c,24:d,26:e,28:f,29:14,30:15,31:16,32:17,33:g,34:h,35:j,36:k,37:l,40:m,43:n,44:o,48:p,50:q,51:r,52:s},a(b,[2,7],{1:[2,1]}),a(b,[2,3]),{9:30,11:9,22:c,24:d,26:e,28:f,29:14,30:15,31:16,32:17,33:g,34:h,35:j,36:k,37:l,40:m,43:n,44:o,48:p,50:q,51:r,52:s},a(b,[2,5]),a(b,[2,6]),a(b,[2,16],{12:31,63:35,15:[1,32],17:[1,33],20:[1,34],65:t,66:u,67:v,68:w,69:x}),{23:[1,41]},{25:[1,42]},{27:[1,43]},a(b,[2,27]),a(b,[2,28]),a(b,[2,29]),a(b,[2,30]),a(b,[2,31]),a(y,[2,54]),a(y,[2,55]),a(y,[2,56]),a(y,[2,57]),a(y,[2,58]),a(b,[2,32]),a(b,[2,33]),a(b,[2,34]),a(b,[2,35]),{16:44,40:z,41:A},{16:47,40:z,41:A},{16:48,40:z,41:A},a(b,[2,4]),{11:49,40:m,48:p,50:q,51:r,52:s},{16:50,40:z,41:A},{18:51,19:[1,52],53:53,54:54,58:B},{11:56,40:m,48:p,50:q,51:r,52:s},{64:57,70:[1,58],71:[1,59]},a(C,[2,72]),a(C,[2,73]),a(C,[2,74]),a(C,[2,75]),a(C,[2,76]),a(b,[2,24]),a(b,[2,25]),a(b,[2,26]),{13:D,38:60,41:E,42:F,45:62,46:63,48:G,49:H},a(I,[2,37]),a(I,[2,38]),{16:68,40:z,41:A,42:F},{13:D,38:69,41:E,42:F,45:62,46:63,48:G,49:H},{13:[1,70],15:[1,71]},a(b,[2,17],{63:35,12:72,17:[1,73],42:F,65:t,66:u,67:v,68:w,69:x}),{19:[1,74]},a(b,[2,14]),{18:75,19:[2,59],53:53,54:54,58:B},{55:76,58:[1,77]},{58:[2,65]},{21:[1,78]},{63:79,65:t,66:u,67:v,68:w,69:x},a(J,[2,77]),a(J,[2,78]),{6:K,10:L,39:80,42:M,47:N},{40:[1,85],41:[1,86]},a(O,[2,43],{46:87,13:D,41:E,48:G,49:H}),a(P,[2,45]),a(P,[2,50]),a(P,[2,51]),a(P,[2,52]),a(P,[2,53]),a(b,[2,41],{42:F}),{6:K,10:L,39:88,42:M,47:N},{14:89,40:Q,50:R,72:S},{16:93,40:z,41:A},{11:94,40:m,48:p,50:q,51:r,52:s},{18:95,19:[1,96],53:53,54:54,58:B},a(b,[2,12]),{19:[2,60]},a(T,[2,61],{56:97,57:98,59:99,61:U,62:V}),a([19,58,61,62],[2,66]),a(b,[2,22],{15:[1,103],17:[1,102]}),a([40,48,50,51,52],[2,71]),a(b,[2,36]),{13:D,41:E,45:104,46:63,48:G,49:H},a(b,[2,47]),a(b,[2,48]),a(b,[2,49]),a(I,[2,39]),a(I,[2,40]),a(P,[2,46]),a(b,[2,42]),a(b,[2,8]),a(b,[2,79]),a(b,[2,80]),a(b,[2,81]),{13:[1,105],42:F},{13:[1,107],15:[1,106]},{19:[1,108]},a(b,[2,15]),a(T,[2,62],{57:109,60:[1,110],62:V}),a(T,[2,63]),a(W,[2,67]),a(T,[2,70]),a(W,[2,69]),{18:111,19:[1,112],53:53,54:54,58:B},{16:113,40:z,41:A},a(O,[2,44],{46:87,13:D,41:E,48:G,49:H}),{14:114,40:Q,50:R,72:S},{16:115,40:z,41:A},{14:116,40:Q,50:R,72:S},a(b,[2,13]),a(T,[2,64]),{59:117,61:U},{19:[1,118]},a(b,[2,20]),a(b,[2,23],{17:[1,119],42:F}),a(b,[2,11]),{13:[1,120],42:F},a(b,[2,10]),a(W,[2,68]),a(b,[2,18]),{18:121,19:[1,122],53:53,54:54,58:B},{14:123,40:Q,50:R,72:S},{19:[1,124]},a(b,[2,21]),a(b,[2,9]),a(b,[2,19])],defaultActions:{55:[2,65],75:[2,60]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function Y(){this.yy={}}return X.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,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:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.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),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=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),c.length-1&&(this.yylineno-=c.length-1);var e=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:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(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:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={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&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===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:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(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:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){switch(c){case 0:return this.begin("acc_title"),24;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),26;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:case 23:case 28:case 35:break;case 13:return 8;case 14:return 50;case 15:return 72;case 16:return 4;case 17:return this.begin("block"),17;case 18:case 19:case 38:return 49;case 20:case 37:return 42;case 21:return 15;case 22:case 36:return 13;case 24:return 61;case 25:case 26:return 58;case 27:return 62;case 29:return this.popState(),19;case 30:case 77:return b.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;case 34:return this.popState(),10;case 39:return this.begin("style"),37;case 40:return 43;case 41:case 45:case 46:case 64:return 65;case 42:case 43:case 44:case 52:case 54:case 66:return 67;case 47:case 48:case 49:case 50:case 51:case 53:case 65:return 66;case 55:case 56:case 58:case 59:case 60:case 63:return 68;case 57:return 51;case 61:return 52;case 62:return 48;case 67:return 69;case 68:case 71:case 72:case 73:return 70;case 69:case 70:return 71;case 74:return 41;case 75:return 47;case 76:return 40;case 78:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/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,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,74,75],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,76,77,78],inclusive:!0}}},(0,i.K2)(Y,"Parser"),Y.prototype=X,X.Parser=Y,new Y}();m.parser=m;var n=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=h.SV,this.getAccTitle=h.iN,this.setAccDescription=h.EI,this.getAccDescription=h.m7,this.setDiagramTitle=h.ke,this.getDiagramTitle=h.ab,this.getConfig=(0,i.K2)(()=>(0,h.D7)().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{(0,i.K2)(this,"ErDB")}addEntity(a,b=""){return this.entities.has(a)?!this.entities.get(a)?.alias&&b&&(this.entities.get(a).alias=b,i.Rm.info(`Add alias '${b}' to entity '${a}'`)):(this.entities.set(a,{id:`entity-${a}-${this.entities.size}`,label:a,attributes:[],alias:b,shape:"erBox",look:(0,h.D7)().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),i.Rm.info("Added new entity :",a)),this.entities.get(a)}getEntity(a){return this.entities.get(a)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(a,b){let c,d=this.addEntity(a);for(c=b.length-1;c>=0;c--)b[c].keys||(b[c].keys=[]),b[c].comment||(b[c].comment=""),d.attributes.push(b[c]),i.Rm.debug("Added attribute ",b[c].name)}addRelationship(a,b,c,d){let e=this.entities.get(a),f=this.entities.get(c);if(!e||!f)return;let g={entityA:e.id,roleA:b,entityB:f.id,relSpec:d};this.relationships.push(g),i.Rm.debug("Added new relationship :",g)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(a){this.direction=a}getCompiledStyles(a){let b=[];for(let c of a){let a=this.classes.get(c);a?.styles&&(b=[...b,...a.styles??[]].map(a=>a.trim())),a?.textStyles&&(b=[...b,...a.textStyles??[]].map(a=>a.trim()))}return b}addCssStyles(a,b){for(let c of a){let a=this.entities.get(c);if(!b||!a)return;for(let c of b)a.cssStyles.push(c)}}addClass(a,b){a.forEach(a=>{let c=this.classes.get(a);void 0===c&&(c={id:a,styles:[],textStyles:[]},this.classes.set(a,c)),b&&b.forEach(function(a){if(/color/.exec(a)){let b=a.replace("fill","bgFill");c.textStyles.push(b)}c.styles.push(a)})})}setClass(a,b){for(let c of a){let a=this.entities.get(c);if(a)for(let c of b)a.cssClasses+=" "+c}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],(0,h.IU)()}getData(){let a=[],b=[],c=(0,h.D7)(),d=0;for(let b of this.entities.keys()){let c=this.entities.get(b);c&&(c.cssCompiledStyles=this.getCompiledStyles(c.cssClasses.split(" ")),c.colorIndex=d++,a.push(c))}let e=0;for(let a of this.relationships){let d={id:(0,g.rY)(a.entityA,a.entityB,{prefix:"id",counter:e++}),type:"normal",curve:"basis",start:a.entityA,end:a.entityB,label:a.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:a.relSpec.cardB.toLowerCase(),arrowTypeEnd:a.relSpec.cardA.toLowerCase(),pattern:"IDENTIFYING"==a.relSpec.relType?"solid":"dashed",look:c.look,labelType:"markdown"};b.push(d)}return{nodes:a,edges:b,other:{},config:c,direction:"TB"}}},o={};(0,i.VA)(o,{draw:()=>p});var p=(0,i.K2)(async function(a,b,c,k){i.Rm.info("REF0:"),i.Rm.info("Drawing er diagram (unified)",b);let{securityLevel:l,er:m,layout:n}=(0,h.D7)(),o=k.db.getData(),p=(0,d.A)(b,l);o.type=k.type,o.layoutAlgorithm=(0,f.q7)(n),o.config.flowchart.nodeSpacing=m?.nodeSpacing||140,o.config.flowchart.rankSpacing=m?.rankSpacing||80,o.direction=k.db.getDirection();let{config:q}=o,{look:r}=q;"neo"===r?o.markers=["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"]:o.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],o.diagramId=b,await (0,f.XX)(o,p),"elk"===o.layoutAlgorithm&&p.select(".edges").lower();let s=p.selectAll('[id*="-background"]');Array.from(s).length>0&&s.each(function(){let a=(0,j.Ltv)(this),b=a.attr("id").replace("-background",""),c=p.select(`#${CSS.escape(b)}`);if(!c.empty()){let b=c.attr("transform");a.attr("transform",b)}}),g._K.insertTitle(p,"erDiagramTitleText",m?.titleTopMargin??25,k.db.getDiagramTitle()),(0,e.P)(p,8,"erDiagram",m?.useMaxWidth??!0)},"draw"),q=(0,i.K2)((a,b)=>{let c=k.A,d=c(a,"r"),e=c(a,"g"),f=c(a,"b");return l.A(d,e,f,b)},"fade"),r=new Set(["redux-color","redux-dark-color"]),s=(0,i.K2)(a=>{let{theme:b,look:c,bkgColorArray:d,borderColorArray:e}=a;if(!r.has(b))return"";let f=d?.length>0,g="";for(let b=0;b<a.THEME_COLOR_LIMIT;b++)g+=`
1
+ "use strict";exports.id=4035,exports.ids=[4035],exports.modules={34091:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(65246),e=c(21143),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},75899:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(73946),e=c(363);let f=(a,b)=>d.A.lang.round(e.A.parse(a)[b])},80339:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(21143),e=c(69085),f=(0,d.K2)((a,b)=>{let c;return"sandbox"===b&&(c=(0,e.Ltv)("#i"+a)),("sandbox"===b?(0,e.Ltv)(c.nodes()[0].contentDocument.body):(0,e.Ltv)("body")).select(`[id="${a}"]`)},"getDiagramElement")},94035:(a,b,c)=>{c.d(b,{diagram:()=>t});var d=c(80339),e=c(34091),f=c(44906);c(73865),c(65144),c(30800),c(90355),c(19203),c(31792);var g=c(70400),h=c(65246),i=c(21143),j=c(69085),k=c(75899),l=c(14120),m=function(){var a=(0,i.K2)(function(a,b,c,d){for(c=c||{},d=a.length;d--;c[a[d]]=b);return c},"o"),b=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],c=[1,10],d=[1,11],e=[1,12],f=[1,13],g=[1,23],h=[1,24],j=[1,25],k=[1,26],l=[1,27],m=[1,19],n=[1,28],o=[1,29],p=[1,20],q=[1,18],r=[1,21],s=[1,22],t=[1,36],u=[1,37],v=[1,38],w=[1,39],x=[1,40],y=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,65,66,67,68,69],z=[1,45],A=[1,46],B=[1,55],C=[40,48,50,51,52,70,71],D=[1,66],E=[1,64],F=[1,61],G=[1,65],H=[1,67],I=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,65,66,67,68,69],J=[65,66,67,68,69],K=[1,84],L=[1,83],M=[1,81],N=[1,82],O=[6,10,42,47],P=[6,10,13,41,42,47,48,49],Q=[1,92],R=[1,91],S=[1,90],T=[19,58],U=[1,101],V=[1,100],W=[19,58,60,62],X={trace:(0,i.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,attributeKeyType:59,",":60,ATTRIBUTE_KEY:61,COMMENT:62,cardinality:63,relType:64,ZERO_OR_ONE:65,ZERO_OR_MORE:66,ONE_OR_MORE:67,ONLY_ONE:68,MD_PARENT:69,NON_IDENTIFYING:70,IDENTIFYING:71,WORD:72,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",8:"SPACE",10:"NEWLINE",13:"COLON",15:"STYLE_SEPARATOR",17:"BLOCK_START",19:"BLOCK_STOP",20:"SQS",21:"SQE",22:"title",23:"title_value",24:"acc_title",25:"acc_title_value",26:"acc_descr",27:"acc_descr_value",28:"acc_descr_multiline_value",33:"direction_tb",34:"direction_bt",35:"direction_rl",36:"direction_lr",37:"CLASSDEF",40:"UNICODE_TEXT",41:"STYLE_TEXT",42:"COMMA",43:"CLASS",44:"STYLE",47:"SEMI",48:"NUM",49:"BRKT",50:"ENTITY_NAME",51:"DECIMAL_NUM",52:"ENTITY_ONE",58:"ATTRIBUTE_WORD",60:",",61:"ATTRIBUTE_KEY",62:"COMMENT",65:"ZERO_OR_ONE",66:"ZERO_OR_MORE",67:"ONE_OR_MORE",68:"ONLY_ONE",69:"MD_PARENT",70:"NON_IDENTIFYING",71:"IDENTIFYING",72:"WORD"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[55,1],[56,1],[56,3],[59,1],[57,1],[12,3],[63,1],[63,1],[63,1],[63,1],[63,1],[64,1],[64,1],[14,1],[14,1],[14,1]],performAction:(0,i.K2)(function(a,b,c,d,e,f,g){var h=f.length-1;switch(e){case 1:break;case 2:case 6:case 7:this.$=[];break;case 3:f[h-1].push(f[h]),this.$=f[h-1];break;case 4:case 5:case 55:case 56:case 57:case 58:case 81:case 65:case 66:case 69:this.$=f[h];break;case 8:d.addEntity(f[h-4]),d.addEntity(f[h-2]),d.addRelationship(f[h-4],f[h],f[h-2],f[h-3]);break;case 9:d.addEntity(f[h-8]),d.addEntity(f[h-4]),d.addRelationship(f[h-8],f[h],f[h-4],f[h-5]),d.setClass([f[h-8]],f[h-6]),d.setClass([f[h-4]],f[h-2]);break;case 10:d.addEntity(f[h-6]),d.addEntity(f[h-2]),d.addRelationship(f[h-6],f[h],f[h-2],f[h-3]),d.setClass([f[h-6]],f[h-4]);break;case 11:d.addEntity(f[h-6]),d.addEntity(f[h-4]),d.addRelationship(f[h-6],f[h],f[h-4],f[h-5]),d.setClass([f[h-4]],f[h-2]);break;case 12:d.addEntity(f[h-3]),d.addAttributes(f[h-3],f[h-1]);break;case 13:d.addEntity(f[h-5]),d.addAttributes(f[h-5],f[h-1]),d.setClass([f[h-5]],f[h-3]);break;case 14:d.addEntity(f[h-2]);break;case 15:d.addEntity(f[h-4]),d.setClass([f[h-4]],f[h-2]);break;case 16:d.addEntity(f[h]);break;case 17:d.addEntity(f[h-2]),d.setClass([f[h-2]],f[h]);break;case 18:d.addEntity(f[h-6],f[h-4]),d.addAttributes(f[h-6],f[h-1]);break;case 19:d.addEntity(f[h-8],f[h-6]),d.addAttributes(f[h-8],f[h-1]),d.setClass([f[h-8]],f[h-3]);break;case 20:d.addEntity(f[h-5],f[h-3]);break;case 21:d.addEntity(f[h-7],f[h-5]),d.setClass([f[h-7]],f[h-2]);break;case 22:d.addEntity(f[h-3],f[h-1]);break;case 23:d.addEntity(f[h-5],f[h-3]),d.setClass([f[h-5]],f[h]);break;case 24:case 25:this.$=f[h].trim(),d.setAccTitle(this.$);break;case 26:case 27:this.$=f[h].trim(),d.setAccDescription(this.$);break;case 32:d.setDirection("TB");break;case 33:d.setDirection("BT");break;case 34:d.setDirection("RL");break;case 35:d.setDirection("LR");break;case 36:this.$=f[h-3],d.addClass(f[h-2],f[h-1]);break;case 37:case 38:case 59:case 67:case 43:this.$=[f[h]];break;case 39:case 40:this.$=f[h-2].concat([f[h]]);break;case 41:this.$=f[h-2],d.setClass(f[h-1],f[h]);break;case 42:this.$=f[h-3],d.addCssStyles(f[h-2],f[h-1]);break;case 44:case 68:f[h-2].push(f[h]),this.$=f[h-2];break;case 46:this.$=f[h-1]+f[h];break;case 54:case 79:case 80:case 70:this.$=f[h].replace(/"/g,"");break;case 60:f[h].push(f[h-1]),this.$=f[h];break;case 61:this.$={type:f[h-1],name:f[h]};break;case 62:this.$={type:f[h-2],name:f[h-1],keys:f[h]};break;case 63:this.$={type:f[h-2],name:f[h-1],comment:f[h]};break;case 64:this.$={type:f[h-3],name:f[h-2],keys:f[h-1],comment:f[h]};break;case 71:this.$={cardA:f[h],relType:f[h-1],cardB:f[h-2]};break;case 72:this.$=d.Cardinality.ZERO_OR_ONE;break;case 73:this.$=d.Cardinality.ZERO_OR_MORE;break;case 74:this.$=d.Cardinality.ONE_OR_MORE;break;case 75:this.$=d.Cardinality.ONLY_ONE;break;case 76:this.$=d.Cardinality.MD_PARENT;break;case 77:this.$=d.Identification.NON_IDENTIFYING;break;case 78:this.$=d.Identification.IDENTIFYING}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},a(b,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:c,24:d,26:e,28:f,29:14,30:15,31:16,32:17,33:g,34:h,35:j,36:k,37:l,40:m,43:n,44:o,48:p,50:q,51:r,52:s},a(b,[2,7],{1:[2,1]}),a(b,[2,3]),{9:30,11:9,22:c,24:d,26:e,28:f,29:14,30:15,31:16,32:17,33:g,34:h,35:j,36:k,37:l,40:m,43:n,44:o,48:p,50:q,51:r,52:s},a(b,[2,5]),a(b,[2,6]),a(b,[2,16],{12:31,63:35,15:[1,32],17:[1,33],20:[1,34],65:t,66:u,67:v,68:w,69:x}),{23:[1,41]},{25:[1,42]},{27:[1,43]},a(b,[2,27]),a(b,[2,28]),a(b,[2,29]),a(b,[2,30]),a(b,[2,31]),a(y,[2,54]),a(y,[2,55]),a(y,[2,56]),a(y,[2,57]),a(y,[2,58]),a(b,[2,32]),a(b,[2,33]),a(b,[2,34]),a(b,[2,35]),{16:44,40:z,41:A},{16:47,40:z,41:A},{16:48,40:z,41:A},a(b,[2,4]),{11:49,40:m,48:p,50:q,51:r,52:s},{16:50,40:z,41:A},{18:51,19:[1,52],53:53,54:54,58:B},{11:56,40:m,48:p,50:q,51:r,52:s},{64:57,70:[1,58],71:[1,59]},a(C,[2,72]),a(C,[2,73]),a(C,[2,74]),a(C,[2,75]),a(C,[2,76]),a(b,[2,24]),a(b,[2,25]),a(b,[2,26]),{13:D,38:60,41:E,42:F,45:62,46:63,48:G,49:H},a(I,[2,37]),a(I,[2,38]),{16:68,40:z,41:A,42:F},{13:D,38:69,41:E,42:F,45:62,46:63,48:G,49:H},{13:[1,70],15:[1,71]},a(b,[2,17],{63:35,12:72,17:[1,73],42:F,65:t,66:u,67:v,68:w,69:x}),{19:[1,74]},a(b,[2,14]),{18:75,19:[2,59],53:53,54:54,58:B},{55:76,58:[1,77]},{58:[2,65]},{21:[1,78]},{63:79,65:t,66:u,67:v,68:w,69:x},a(J,[2,77]),a(J,[2,78]),{6:K,10:L,39:80,42:M,47:N},{40:[1,85],41:[1,86]},a(O,[2,43],{46:87,13:D,41:E,48:G,49:H}),a(P,[2,45]),a(P,[2,50]),a(P,[2,51]),a(P,[2,52]),a(P,[2,53]),a(b,[2,41],{42:F}),{6:K,10:L,39:88,42:M,47:N},{14:89,40:Q,50:R,72:S},{16:93,40:z,41:A},{11:94,40:m,48:p,50:q,51:r,52:s},{18:95,19:[1,96],53:53,54:54,58:B},a(b,[2,12]),{19:[2,60]},a(T,[2,61],{56:97,57:98,59:99,61:U,62:V}),a([19,58,61,62],[2,66]),a(b,[2,22],{15:[1,103],17:[1,102]}),a([40,48,50,51,52],[2,71]),a(b,[2,36]),{13:D,41:E,45:104,46:63,48:G,49:H},a(b,[2,47]),a(b,[2,48]),a(b,[2,49]),a(I,[2,39]),a(I,[2,40]),a(P,[2,46]),a(b,[2,42]),a(b,[2,8]),a(b,[2,79]),a(b,[2,80]),a(b,[2,81]),{13:[1,105],42:F},{13:[1,107],15:[1,106]},{19:[1,108]},a(b,[2,15]),a(T,[2,62],{57:109,60:[1,110],62:V}),a(T,[2,63]),a(W,[2,67]),a(T,[2,70]),a(W,[2,69]),{18:111,19:[1,112],53:53,54:54,58:B},{16:113,40:z,41:A},a(O,[2,44],{46:87,13:D,41:E,48:G,49:H}),{14:114,40:Q,50:R,72:S},{16:115,40:z,41:A},{14:116,40:Q,50:R,72:S},a(b,[2,13]),a(T,[2,64]),{59:117,61:U},{19:[1,118]},a(b,[2,20]),a(b,[2,23],{17:[1,119],42:F}),a(b,[2,11]),{13:[1,120],42:F},a(b,[2,10]),a(W,[2,68]),a(b,[2,18]),{18:121,19:[1,122],53:53,54:54,58:B},{14:123,40:Q,50:R,72:S},{19:[1,124]},a(b,[2,21]),a(b,[2,9]),a(b,[2,19])],defaultActions:{55:[2,65],75:[2,60]},parseError:(0,i.K2)(function(a,b){if(b.recoverable)this.trace(a);else{var c=Error(a);throw c.hash=b,c}},"parseError"),parse:(0,i.K2)(function(a){var b=this,c=[0],d=[],e=[null],f=[],g=this.table,h="",j=0,k=0,l=0,m=f.slice.call(arguments,1),n=Object.create(this.lexer),o={};for(var p in this.yy)Object.prototype.hasOwnProperty.call(this.yy,p)&&(o[p]=this.yy[p]);n.setInput(a,o),o.lexer=n,o.parser=this,void 0===n.yylloc&&(n.yylloc={});var q=n.yylloc;f.push(q);var r=n.options&&n.options.ranges;function s(){var a;return"number"!=typeof(a=d.pop()||n.lex()||1)&&(a instanceof Array&&(a=(d=a).pop()),a=b.symbols_[a]||a),a}"function"==typeof o.parseError?this.parseError=o.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,i.K2)(function(a){c.length=c.length-2*a,e.length=e.length-a,f.length=f.length-a},"popStack"),(0,i.K2)(s,"lex");for(var t,u,v,w,x,y,z,A,B,C={};;){if(v=c[c.length-1],this.defaultActions[v]?w=this.defaultActions[v]:(null==t&&(t=s()),w=g[v]&&g[v][t]),void 0===w||!w.length||!w[0]){var D="";for(y in B=[],g[v])this.terminals_[y]&&y>2&&B.push("'"+this.terminals_[y]+"'");D=n.showPosition?"Parse error on line "+(j+1)+":\n"+n.showPosition()+"\nExpecting "+B.join(", ")+", got '"+(this.terminals_[t]||t)+"'":"Parse error on line "+(j+1)+": Unexpected "+(1==t?"end of input":"'"+(this.terminals_[t]||t)+"'"),this.parseError(D,{text:n.match,token:this.terminals_[t]||t,line:n.yylineno,loc:q,expected:B})}if(w[0]instanceof Array&&w.length>1)throw Error("Parse Error: multiple actions possible at state: "+v+", token: "+t);switch(w[0]){case 1:c.push(t),e.push(n.yytext),f.push(n.yylloc),c.push(w[1]),t=null,u?(t=u,u=null):(k=n.yyleng,h=n.yytext,j=n.yylineno,q=n.yylloc,l>0&&l--);break;case 2:if(z=this.productions_[w[1]][1],C.$=e[e.length-z],C._$={first_line:f[f.length-(z||1)].first_line,last_line:f[f.length-1].last_line,first_column:f[f.length-(z||1)].first_column,last_column:f[f.length-1].last_column},r&&(C._$.range=[f[f.length-(z||1)].range[0],f[f.length-1].range[1]]),void 0!==(x=this.performAction.apply(C,[h,k,j,o,w[1],e,f].concat(m))))return x;z&&(c=c.slice(0,-1*z*2),e=e.slice(0,-1*z),f=f.slice(0,-1*z)),c.push(this.productions_[w[1]][0]),e.push(C.$),f.push(C._$),A=g[c[c.length-2]][c[c.length-1]],c.push(A);break;case 3:return!0}}return!0},"parse")};function Y(){this.yy={}}return X.lexer={EOF:1,parseError:(0,i.K2)(function(a,b){if(this.yy.parser)this.yy.parser.parseError(a,b);else throw Error(a)},"parseError"),setInput:(0,i.K2)(function(a,b){return this.yy=b||this.yy||{},this._input=a,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:(0,i.K2)(function(){var a=this._input[0];return this.yytext+=a,this.yyleng++,this.offset++,this.match+=a,this.matched+=a,a.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),a},"input"),unput:(0,i.K2)(function(a){var b=a.length,c=a.split(/(?:\r\n?|\n)/g);this._input=a+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-b),this.offset-=b;var d=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),c.length-1&&(this.yylineno-=c.length-1);var e=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:c?(c.length===d.length?this.yylloc.first_column:0)+d[d.length-c.length].length-c[0].length:this.yylloc.first_column-b},this.options.ranges&&(this.yylloc.range=[e[0],e[0]+this.yyleng-b]),this.yyleng=this.yytext.length,this},"unput"),more:(0,i.K2)(function(){return this._more=!0,this},"more"),reject:(0,i.K2)(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:(0,i.K2)(function(a){this.unput(this.match.slice(a))},"less"),pastInput:(0,i.K2)(function(){var a=this.matched.substr(0,this.matched.length-this.match.length);return(a.length>20?"...":"")+a.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,i.K2)(function(){var a=this.match;return a.length<20&&(a+=this._input.substr(0,20-a.length)),(a.substr(0,20)+(a.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,i.K2)(function(){var a=this.pastInput(),b=Array(a.length+1).join("-");return a+this.upcomingInput()+"\n"+b+"^"},"showPosition"),test_match:(0,i.K2)(function(a,b){var c,d,e;if(this.options.backtrack_lexer&&(e={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&&(e.yylloc.range=this.yylloc.range.slice(0))),(d=a[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,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(a[0].length),this.matched+=a[0],c=this.performAction.call(this,this.yy,this,b,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),c)return c;if(this._backtrack)for(var f in e)this[f]=e[f];return!1},"test_match"),next:(0,i.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var a,b,c,d,e=this._currentRules(),f=0;f<e.length;f++)if((c=this._input.match(this.rules[e[f]]))&&(!b||c[0].length>b[0].length)){if(b=c,d=f,this.options.backtrack_lexer){if(!1!==(a=this.test_match(c,e[f])))return a;if(!this._backtrack)return!1;b=!1;continue}if(!this.options.flex)break}return b?!1!==(a=this.test_match(b,e[d]))&&a:""===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:(0,i.K2)(function(){var a=this.next();return a||this.lex()},"lex"),begin:(0,i.K2)(function(a){this.conditionStack.push(a)},"begin"),popState:(0,i.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,i.K2)(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:(0,i.K2)(function(a){return(a=this.conditionStack.length-1-Math.abs(a||0))>=0?this.conditionStack[a]:"INITIAL"},"topState"),pushState:(0,i.K2)(function(a){this.begin(a)},"pushState"),stateStackSize:(0,i.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,i.K2)(function(a,b,c,d){switch(c){case 0:return this.begin("acc_title"),24;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),26;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return 33;case 8:return 34;case 9:return 35;case 10:return 36;case 11:return 10;case 12:case 23:case 28:case 35:break;case 13:return 8;case 14:return 50;case 15:return 72;case 16:return 4;case 17:return this.begin("block"),17;case 18:case 19:case 38:return 49;case 20:case 37:return 42;case 21:return 15;case 22:case 36:return 13;case 24:return 61;case 25:case 26:return 58;case 27:return 62;case 29:return this.popState(),19;case 30:case 77:return b.yytext[0];case 31:return 20;case 32:return 21;case 33:return this.begin("style"),44;case 34:return this.popState(),10;case 39:return this.begin("style"),37;case 40:return 43;case 41:case 45:case 46:case 64:return 65;case 42:case 43:case 44:case 52:case 54:case 66:return 67;case 47:case 48:case 49:case 50:case 51:case 53:case 65:return 66;case 55:case 56:case 58:case 59:case 60:case 63:return 68;case 57:return 51;case 61:return 52;case 62:return 48;case 67:return 69;case 68:case 71:case 72:case 73:return 70;case 69:case 70:return 71;case 74:return 41;case 75:return 47;case 76:return 40;case 78:return 6}},"anonymous"),rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/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,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:#)/i,/^(?:#)/i,/^(?:,)/i,/^(?::::)/i,/^(?::)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:([^\s]*)[~].*[~]([^\s]*))/i,/^(?:([\*A-Za-z_\u00C0-\uFFFF][A-Za-z0-9\-\_\[\]\(\)\u00C0-\uFFFF\*]*))/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:\[)/i,/^(?:\])/i,/^(?:style\b)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?::)/i,/^(?:,)/i,/^(?:#)/i,/^(?:classDef\b)/i,/^(?:class\b)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:[0-9]+\.[0-9]+)/i,/^(?:1(?=\s+[A-Za-z_"']))/i,/^(?:1(?=\s+[0-9]))/i,/^(?:1(?=(--|\.\.|\.-|-\.)))/i,/^(?:1\b)/i,/^(?:[0-9]+)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:u(?=[\.\-\|]))/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:([^\x00-\x7F]|\w|-|\*)+)/i,/^(?:;)/i,/^(?:([^\x00-\x7F]|\w|-|\*|\.)+)/i,/^(?:.)/i,/^(?:$)/i],conditions:{style:{rules:[34,35,36,37,38,74,75],inclusive:!1},acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},block:{rules:[23,24,25,26,27,28,29,30],inclusive:!1},INITIAL:{rules:[0,2,4,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,31,32,33,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,76,77,78],inclusive:!0}}},(0,i.K2)(Y,"Parser"),Y.prototype=X,X.Parser=Y,new Y}();m.parser=m;var n=class{constructor(){this.entities=new Map,this.relationships=[],this.classes=new Map,this.direction="TB",this.Cardinality={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE",MD_PARENT:"MD_PARENT"},this.Identification={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},this.setAccTitle=h.SV,this.getAccTitle=h.iN,this.setAccDescription=h.EI,this.getAccDescription=h.m7,this.setDiagramTitle=h.ke,this.getDiagramTitle=h.ab,this.getConfig=(0,i.K2)(()=>(0,h.D7)().er,"getConfig"),this.clear(),this.addEntity=this.addEntity.bind(this),this.addAttributes=this.addAttributes.bind(this),this.addRelationship=this.addRelationship.bind(this),this.setDirection=this.setDirection.bind(this),this.addCssStyles=this.addCssStyles.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.setAccTitle=this.setAccTitle.bind(this),this.setAccDescription=this.setAccDescription.bind(this)}static{(0,i.K2)(this,"ErDB")}addEntity(a,b=""){return this.entities.has(a)?!this.entities.get(a)?.alias&&b&&(this.entities.get(a).alias=b,i.Rm.info(`Add alias '${b}' to entity '${a}'`)):(this.entities.set(a,{id:`entity-${a}-${this.entities.size}`,label:a,attributes:[],alias:b,shape:"erBox",look:(0,h.D7)().look??"default",cssClasses:"default",cssStyles:[],labelType:"markdown"}),i.Rm.info("Added new entity :",a)),this.entities.get(a)}getEntity(a){return this.entities.get(a)}getEntities(){return this.entities}getClasses(){return this.classes}addAttributes(a,b){let c,d=this.addEntity(a);for(c=b.length-1;c>=0;c--)b[c].keys||(b[c].keys=[]),b[c].comment||(b[c].comment=""),d.attributes.push(b[c]),i.Rm.debug("Added attribute ",b[c].name)}addRelationship(a,b,c,d){let e=this.entities.get(a),f=this.entities.get(c);if(!e||!f)return;let g={entityA:e.id,roleA:b,entityB:f.id,relSpec:d};this.relationships.push(g),i.Rm.debug("Added new relationship :",g)}getRelationships(){return this.relationships}getDirection(){return this.direction}setDirection(a){this.direction=a}getCompiledStyles(a){let b=[];for(let c of a){let a=this.classes.get(c);a?.styles&&(b=[...b,...a.styles??[]].map(a=>a.trim())),a?.textStyles&&(b=[...b,...a.textStyles??[]].map(a=>a.trim()))}return b}addCssStyles(a,b){for(let c of a){let a=this.entities.get(c);if(!b||!a)return;for(let c of b)a.cssStyles.push(c)}}addClass(a,b){a.forEach(a=>{let c=this.classes.get(a);void 0===c&&(c={id:a,styles:[],textStyles:[]},this.classes.set(a,c)),b&&b.forEach(function(a){if(/color/.exec(a)){let b=a.replace("fill","bgFill");c.textStyles.push(b)}c.styles.push(a)})})}setClass(a,b){for(let c of a){let a=this.entities.get(c);if(a)for(let c of b)a.cssClasses+=" "+c}}clear(){this.entities=new Map,this.classes=new Map,this.relationships=[],(0,h.IU)()}getData(){let a=[],b=[],c=(0,h.D7)(),d=0;for(let b of this.entities.keys()){let c=this.entities.get(b);c&&(c.cssCompiledStyles=this.getCompiledStyles(c.cssClasses.split(" ")),c.colorIndex=d++,a.push(c))}let e=0;for(let a of this.relationships){let d={id:(0,g.rY)(a.entityA,a.entityB,{prefix:"id",counter:e++}),type:"normal",curve:"basis",start:a.entityA,end:a.entityB,label:a.roleA,labelpos:"c",thickness:"normal",classes:"relationshipLine",arrowTypeStart:a.relSpec.cardB.toLowerCase(),arrowTypeEnd:a.relSpec.cardA.toLowerCase(),pattern:"IDENTIFYING"==a.relSpec.relType?"solid":"dashed",look:c.look,labelType:"markdown"};b.push(d)}return{nodes:a,edges:b,other:{},config:c,direction:"TB"}}},o={};(0,i.VA)(o,{draw:()=>p});var p=(0,i.K2)(async function(a,b,c,k){i.Rm.info("REF0:"),i.Rm.info("Drawing er diagram (unified)",b);let{securityLevel:l,er:m,layout:n}=(0,h.D7)(),o=k.db.getData(),p=(0,d.A)(b,l);o.type=k.type,o.layoutAlgorithm=(0,f.q7)(n),o.config.flowchart.nodeSpacing=m?.nodeSpacing||140,o.config.flowchart.rankSpacing=m?.rankSpacing||80,o.direction=k.db.getDirection();let{config:q}=o,{look:r}=q;"neo"===r?o.markers=["only_one_neo","zero_or_one_neo","one_or_more_neo","zero_or_more_neo"]:o.markers=["only_one","zero_or_one","one_or_more","zero_or_more"],o.diagramId=b,await (0,f.XX)(o,p),"elk"===o.layoutAlgorithm&&p.select(".edges").lower();let s=p.selectAll('[id*="-background"]');Array.from(s).length>0&&s.each(function(){let a=(0,j.Ltv)(this),b=a.attr("id").replace("-background",""),c=p.select(`#${CSS.escape(b)}`);if(!c.empty()){let b=c.attr("transform");a.attr("transform",b)}}),g._K.insertTitle(p,"erDiagramTitleText",m?.titleTopMargin??25,k.db.getDiagramTitle()),(0,e.P)(p,8,"erDiagram",m?.useMaxWidth??!0)},"draw"),q=(0,i.K2)((a,b)=>{let c=k.A,d=c(a,"r"),e=c(a,"g"),f=c(a,"b");return l.A(d,e,f,b)},"fade"),r=new Set(["redux-color","redux-dark-color"]),s=(0,i.K2)(a=>{let{theme:b,look:c,bkgColorArray:d,borderColorArray:e}=a;if(!r.has(b))return"";let f=d?.length>0,g="";for(let b=0;b<a.THEME_COLOR_LIMIT;b++)g+=`
2
2
 
3
3
  [data-look="${c}"][data-color-id="color-${b}"].node path {
4
4
  stroke: ${e[b]};
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=5293,exports.ids=[5293],exports.modules={21661:(a,b,c)=>{c.d(b,{CP:()=>l,Ck:()=>o,HT:()=>n,PB:()=>m,aC:()=>k,lC:()=>i,m:()=>j,tk:()=>h});var d=c(65246),e=c(21143),f=c(65207),g=c(69085),h=(0,e.K2)((a,b)=>{let c=a.append("rect");if(c.attr("x",b.x),c.attr("y",b.y),c.attr("fill",b.fill),c.attr("stroke",b.stroke),c.attr("width",b.width),c.attr("height",b.height),b.name&&c.attr("name",b.name),b.rx&&c.attr("rx",b.rx),b.ry&&c.attr("ry",b.ry),void 0!==b.attrs)for(let a in b.attrs)c.attr(a,b.attrs[a]);return b.class&&c.attr("class",b.class),c},"drawRect"),i=(0,e.K2)((a,b)=>{h(a,{x:b.startx,y:b.starty,width:b.stopx-b.startx,height:b.stopy-b.starty,fill:b.fill,stroke:b.stroke,class:"rect"}).lower()},"drawBackgroundRect"),j=(0,e.K2)((a,b)=>{let c=b.text.replace(d.H1," "),e=a.append("text");e.attr("x",b.x),e.attr("y",b.y),e.attr("class","legend"),e.style("text-anchor",b.anchor),b.class&&e.attr("class",b.class);let f=e.append("tspan");return f.attr("x",b.x+2*b.textMargin),f.text(c),e},"drawText"),k=(0,e.K2)((a,b,c,d)=>{let e=a.append("image");e.attr("x",b),e.attr("y",c);let g=(0,f.J)(d);e.attr("xlink:href",g)},"drawImage"),l=(0,e.K2)((a,b,c,d)=>{let e=a.append("use");e.attr("x",b),e.attr("y",c);let g=(0,f.J)(d);e.attr("xlink:href",`#${g}`)},"drawEmbeddedImage"),m=(0,e.K2)(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),n=(0,e.K2)(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),o=(0,e.K2)(()=>{let a=(0,g.Ltv)(".mermaidTooltip");return a.empty()&&(a=(0,g.Ltv)("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),a},"createTooltip")},35293:(a,b,c)=>{c.d(b,{diagram:()=>x});var d=c(61827),e=c(30193),f=c(21661),g=c(80339),h=c(56472),i=c(44906);c(73865),c(65144);var j=c(30800);c(90355),c(19203),c(31792);var k=c(70400),l=c(65246),m=c(21143),n=c(69085),o=c(11656),p=c(75899),q=c(14120),r=class{constructor(){this.vertexCounter=0,this.config=(0,l.D7)(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=l.SV,this.setAccDescription=l.EI,this.setDiagramTitle=l.ke,this.getAccTitle=l.iN,this.getAccDescription=l.m7,this.getDiagramTitle=l.ab,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{(0,m.K2)(this,"FlowDB")}sanitizeText(a){return l.Y2.sanitizeText(a,this.config)}sanitizeNodeLabelType(a){switch(a){case"markdown":case"string":case"text":return a;default:return"markdown"}}setDiagramId(a){this.diagramId=a}lookUpDomId(a){for(let b of this.vertices.values())if(b.id===a)return this.diagramId?`${this.diagramId}-${b.domId}`:b.domId;return this.diagramId?`${this.diagramId}-${a}`:a}addVertex(a,b,c,d,f,g,h={},i){let k,n;if(!a||0===a.trim().length)return;if(void 0!==i){let a;a=i.includes("\n")?i+"\n":"{\n"+i+"\n}",k=(0,e.H)(a,{schema:e.r})}let o=this.edges.find(b=>b.id===a);if(o){let a=k;a?.animate!==void 0&&(o.animate=a.animate),a?.animation!==void 0&&(o.animation=a.animation),a?.curve!==void 0&&(o.interpolate=a.curve);return}let p=this.vertices.get(a);if(void 0===p&&(void 0===b&&void 0===c&&null!=d&&m.Rm.warn(`Style applied to unknown node "${a}". This may indicate a typo. The node will be created automatically.`),p={id:a,labelType:"text",domId:"flowchart-"+a+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(a,p)),this.vertexCounter++,void 0!==b?(this.config=(0,l.D7)(),n=this.sanitizeText(b.text.trim()),p.labelType=b.type,n.startsWith('"')&&n.endsWith('"')&&(n=n.substring(1,n.length-1)),p.text=n):void 0===p.text&&(p.text=a),void 0!==c&&(p.type=c),null!=d&&d.forEach(a=>{p.styles.push(a)}),null!=f&&f.forEach(a=>{p.classes.push(a)}),void 0!==g&&(p.dir=g),void 0===p.props?p.props=h:void 0!==h&&Object.assign(p.props,h),void 0!==k){if(k.shape){if(k.shape!==k.shape.toLowerCase()||k.shape.includes("_"))throw Error(`No such shape: ${k.shape}. Shape names should be lowercase.`);if(!(0,j.aP)(k.shape))throw Error(`No such shape: ${k.shape}.`);p.type=k?.shape}k?.label&&(p.text=k?.label,p.labelType=this.sanitizeNodeLabelType(k?.labelType)),k?.icon&&(p.icon=k?.icon,k.label?.trim()||p.text!==a||(p.text="")),k?.form&&(p.form=k?.form),k?.pos&&(p.pos=k?.pos),k?.img&&(p.img=k?.img,k.label?.trim()||p.text!==a||(p.text="")),k?.constraint&&(p.constraint=k.constraint),k.w&&(p.assetWidth=Number(k.w)),k.h&&(p.assetHeight=Number(k.h))}}addSingleLink(a,b,c,d){let e={start:a,end:b,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};m.Rm.info("abc78 Got edge...",e);let f=c.text;if(void 0!==f&&(e.text=this.sanitizeText(f.text.trim()),e.text.startsWith('"')&&e.text.endsWith('"')&&(e.text=e.text.substring(1,e.text.length-1)),e.labelType=this.sanitizeNodeLabelType(f.type)),void 0!==c&&(e.type=c.type,e.stroke=c.stroke,e.length=c.length>10?10:c.length),d&&!this.edges.some(a=>a.id===d))e.id=d,e.isUserDefinedId=!0;else{let a=this.edges.filter(a=>a.start===e.start&&a.end===e.end);0===a.length?e.id=(0,k.rY)(e.start,e.end,{counter:0,prefix:"L"}):e.id=(0,k.rY)(e.start,e.end,{counter:a.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))m.Rm.info("Pushing edge..."),this.edges.push(e);else throw Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
1
+ "use strict";exports.id=5293,exports.ids=[5293],exports.modules={21661:(a,b,c)=>{c.d(b,{CP:()=>l,Ck:()=>o,HT:()=>n,PB:()=>m,aC:()=>k,lC:()=>i,m:()=>j,tk:()=>h});var d=c(65246),e=c(21143),f=c(65207),g=c(69085),h=(0,e.K2)((a,b)=>{let c=a.append("rect");if(c.attr("x",b.x),c.attr("y",b.y),c.attr("fill",b.fill),c.attr("stroke",b.stroke),c.attr("width",b.width),c.attr("height",b.height),b.name&&c.attr("name",b.name),b.rx&&c.attr("rx",b.rx),b.ry&&c.attr("ry",b.ry),void 0!==b.attrs)for(let a in b.attrs)c.attr(a,b.attrs[a]);return b.class&&c.attr("class",b.class),c},"drawRect"),i=(0,e.K2)((a,b)=>{h(a,{x:b.startx,y:b.starty,width:b.stopx-b.startx,height:b.stopy-b.starty,fill:b.fill,stroke:b.stroke,class:"rect"}).lower()},"drawBackgroundRect"),j=(0,e.K2)((a,b)=>{let c=b.text.replace(d.H1," "),e=a.append("text");e.attr("x",b.x),e.attr("y",b.y),e.attr("class","legend"),e.style("text-anchor",b.anchor),b.class&&e.attr("class",b.class);let f=e.append("tspan");return f.attr("x",b.x+2*b.textMargin),f.text(c),e},"drawText"),k=(0,e.K2)((a,b,c,d)=>{let e=a.append("image");e.attr("x",b),e.attr("y",c);let g=(0,f.J)(d);e.attr("xlink:href",g)},"drawImage"),l=(0,e.K2)((a,b,c,d)=>{let e=a.append("use");e.attr("x",b),e.attr("y",c);let g=(0,f.J)(d);e.attr("xlink:href",`#${g}`)},"drawEmbeddedImage"),m=(0,e.K2)(()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),"getNoteRect"),n=(0,e.K2)(()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),"getTextObj"),o=(0,e.K2)(()=>{let a=(0,g.Ltv)(".mermaidTooltip");return a.empty()&&(a=(0,g.Ltv)("body").append("div").attr("class","mermaidTooltip").style("opacity",0).style("position","absolute").style("text-align","center").style("max-width","200px").style("padding","2px").style("font-size","12px").style("background","#ffffde").style("border","1px solid #333").style("border-radius","2px").style("pointer-events","none").style("z-index","100")),a},"createTooltip")},34091:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(65246),e=c(21143),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},35293:(a,b,c)=>{c.d(b,{diagram:()=>x});var d=c(61827),e=c(30193),f=c(21661),g=c(80339),h=c(34091),i=c(44906);c(73865),c(65144);var j=c(30800);c(90355),c(19203),c(31792);var k=c(70400),l=c(65246),m=c(21143),n=c(69085),o=c(11656),p=c(75899),q=c(14120),r=class{constructor(){this.vertexCounter=0,this.config=(0,l.D7)(),this.diagramId="",this.vertices=new Map,this.edges=[],this.classes=new Map,this.subGraphs=[],this.subGraphLookup=new Map,this.tooltips=new Map,this.subCount=0,this.firstGraphFlag=!0,this.secCount=-1,this.posCrossRef=[],this.funs=[],this.setAccTitle=l.SV,this.setAccDescription=l.EI,this.setDiagramTitle=l.ke,this.getAccTitle=l.iN,this.getAccDescription=l.m7,this.getDiagramTitle=l.ab,this.funs.push(this.setupToolTips.bind(this)),this.addVertex=this.addVertex.bind(this),this.firstGraph=this.firstGraph.bind(this),this.setDirection=this.setDirection.bind(this),this.addSubGraph=this.addSubGraph.bind(this),this.addLink=this.addLink.bind(this),this.setLink=this.setLink.bind(this),this.updateLink=this.updateLink.bind(this),this.addClass=this.addClass.bind(this),this.setClass=this.setClass.bind(this),this.destructLink=this.destructLink.bind(this),this.setClickEvent=this.setClickEvent.bind(this),this.setTooltip=this.setTooltip.bind(this),this.updateLinkInterpolate=this.updateLinkInterpolate.bind(this),this.setClickFun=this.setClickFun.bind(this),this.bindFunctions=this.bindFunctions.bind(this),this.lex={firstGraph:this.firstGraph.bind(this)},this.clear(),this.setGen("gen-2")}static{(0,m.K2)(this,"FlowDB")}sanitizeText(a){return l.Y2.sanitizeText(a,this.config)}sanitizeNodeLabelType(a){switch(a){case"markdown":case"string":case"text":return a;default:return"markdown"}}setDiagramId(a){this.diagramId=a}lookUpDomId(a){for(let b of this.vertices.values())if(b.id===a)return this.diagramId?`${this.diagramId}-${b.domId}`:b.domId;return this.diagramId?`${this.diagramId}-${a}`:a}addVertex(a,b,c,d,f,g,h={},i){let k,n;if(!a||0===a.trim().length)return;if(void 0!==i){let a;a=i.includes("\n")?i+"\n":"{\n"+i+"\n}",k=(0,e.H)(a,{schema:e.r})}let o=this.edges.find(b=>b.id===a);if(o){let a=k;a?.animate!==void 0&&(o.animate=a.animate),a?.animation!==void 0&&(o.animation=a.animation),a?.curve!==void 0&&(o.interpolate=a.curve);return}let p=this.vertices.get(a);if(void 0===p&&(void 0===b&&void 0===c&&null!=d&&m.Rm.warn(`Style applied to unknown node "${a}". This may indicate a typo. The node will be created automatically.`),p={id:a,labelType:"text",domId:"flowchart-"+a+"-"+this.vertexCounter,styles:[],classes:[]},this.vertices.set(a,p)),this.vertexCounter++,void 0!==b?(this.config=(0,l.D7)(),n=this.sanitizeText(b.text.trim()),p.labelType=b.type,n.startsWith('"')&&n.endsWith('"')&&(n=n.substring(1,n.length-1)),p.text=n):void 0===p.text&&(p.text=a),void 0!==c&&(p.type=c),null!=d&&d.forEach(a=>{p.styles.push(a)}),null!=f&&f.forEach(a=>{p.classes.push(a)}),void 0!==g&&(p.dir=g),void 0===p.props?p.props=h:void 0!==h&&Object.assign(p.props,h),void 0!==k){if(k.shape){if(k.shape!==k.shape.toLowerCase()||k.shape.includes("_"))throw Error(`No such shape: ${k.shape}. Shape names should be lowercase.`);if(!(0,j.aP)(k.shape))throw Error(`No such shape: ${k.shape}.`);p.type=k?.shape}k?.label&&(p.text=k?.label,p.labelType=this.sanitizeNodeLabelType(k?.labelType)),k?.icon&&(p.icon=k?.icon,k.label?.trim()||p.text!==a||(p.text="")),k?.form&&(p.form=k?.form),k?.pos&&(p.pos=k?.pos),k?.img&&(p.img=k?.img,k.label?.trim()||p.text!==a||(p.text="")),k?.constraint&&(p.constraint=k.constraint),k.w&&(p.assetWidth=Number(k.w)),k.h&&(p.assetHeight=Number(k.h))}}addSingleLink(a,b,c,d){let e={start:a,end:b,type:void 0,text:"",labelType:"text",classes:[],isUserDefinedId:!1,interpolate:this.edges.defaultInterpolate};m.Rm.info("abc78 Got edge...",e);let f=c.text;if(void 0!==f&&(e.text=this.sanitizeText(f.text.trim()),e.text.startsWith('"')&&e.text.endsWith('"')&&(e.text=e.text.substring(1,e.text.length-1)),e.labelType=this.sanitizeNodeLabelType(f.type)),void 0!==c&&(e.type=c.type,e.stroke=c.stroke,e.length=c.length>10?10:c.length),d&&!this.edges.some(a=>a.id===d))e.id=d,e.isUserDefinedId=!0;else{let a=this.edges.filter(a=>a.start===e.start&&a.end===e.end);0===a.length?e.id=(0,k.rY)(e.start,e.end,{counter:0,prefix:"L"}):e.id=(0,k.rY)(e.start,e.end,{counter:a.length+1,prefix:"L"})}if(this.edges.length<(this.config.maxEdges??500))m.Rm.info("Pushing edge..."),this.edges.push(e);else throw Error(`Edge limit exceeded. ${this.edges.length} edges found, but the limit is ${this.config.maxEdges}.
2
2
 
3
3
  Initialize mermaid with maxEdges set to a higher number to allow more edges.
4
4
  You cannot set this config via configuration inside the diagram as it is a secure config.
@@ -149,7 +149,7 @@ You have to call mermaid.initialize.`)}isLinkData(a){return null!==a&&"object"==
149
149
  text-align: center;
150
150
  }
151
151
  ${(0,d.o)()}
152
- `,"getStyles"),init:(0,m.K2)(a=>{a.flowchart||(a.flowchart={}),a.layout&&(0,l.XV)({layout:a.layout}),a.flowchart.arrowMarkerAbsolute=a.arrowMarkerAbsolute,(0,l.XV)({flowchart:{arrowMarkerAbsolute:a.arrowMarkerAbsolute}})},"init")}},56472:(a,b,c)=>{c.d(b,{P:()=>f});var d=c(65246),e=c(21143),f=(0,e.K2)((a,b,c,f)=>{a.attr("class",c);let{width:i,height:j,x:k,y:l}=g(a,b);(0,d.a$)(a,j,i,f);let m=h(k,l,i,j,b);a.attr("viewBox",m),e.Rm.debug(`viewBox configured: ${m} with padding: ${b}`)},"setupViewPortForSVG"),g=(0,e.K2)((a,b)=>{let c=a.node()?.getBBox()||{width:0,height:0,x:0,y:0};return{width:c.width+2*b,height:c.height+2*b,x:c.x,y:c.y}},"calculateDimensionsWithPadding"),h=(0,e.K2)((a,b,c,d,e)=>`${a-e} ${b-e} ${c} ${d}`,"createViewBox")},61827:(a,b,c)=>{c.d(b,{o:()=>d});var d=(0,c(21143).K2)(()=>`
152
+ `,"getStyles"),init:(0,m.K2)(a=>{a.flowchart||(a.flowchart={}),a.layout&&(0,l.XV)({layout:a.layout}),a.flowchart.arrowMarkerAbsolute=a.arrowMarkerAbsolute,(0,l.XV)({flowchart:{arrowMarkerAbsolute:a.arrowMarkerAbsolute}})},"init")}},61827:(a,b,c)=>{c.d(b,{o:()=>d});var d=(0,c(21143).K2)(()=>`
153
153
  /* Font Awesome icon styling - consolidated */
154
154
  .label-icon {
155
155
  display: inline-block;