@seqyuan/annodex 0.1.28 → 0.1.30

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 (298) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +7 -5
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/diagnostics/build-diagnostics.json +1 -1
  5. package/.next/prerender-manifest.json +297 -4
  6. package/.next/react-loadable-manifest.json +44 -0
  7. package/.next/required-server-files.js +50 -5
  8. package/.next/required-server-files.json +50 -5
  9. package/.next/routes-manifest.json +14 -0
  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 +17 -15
  25. package/.next/server/app/_not-found.segments/_full.segment.rsc +17 -15
  26. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  27. package/.next/server/app/_not-found.segments/_index.segment.rsc +6 -4
  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 +3 -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/docs/[[...slug]]/page.js +4 -0
  98. package/.next/server/app/docs/[[...slug]]/page.js.nft.json +1 -0
  99. package/.next/server/app/docs/[[...slug]]/page_client-reference-manifest.js +1 -0
  100. package/.next/server/app/docs/architecture.html +26 -0
  101. package/.next/server/app/docs/architecture.meta +16 -0
  102. package/.next/server/app/docs/architecture.rsc +36 -0
  103. package/.next/server/app/docs/architecture.segments/_full.segment.rsc +36 -0
  104. package/.next/server/app/docs/architecture.segments/_head.segment.rsc +6 -0
  105. package/.next/server/app/docs/architecture.segments/_index.segment.rsc +7 -0
  106. package/.next/server/app/docs/architecture.segments/_tree.segment.rsc +5 -0
  107. package/.next/server/app/docs/architecture.segments/docs/$oc$slug/__PAGE__.segment.rsc +12 -0
  108. package/.next/server/app/docs/architecture.segments/docs/$oc$slug.segment.rsc +5 -0
  109. package/.next/server/app/docs/architecture.segments/docs.segment.rsc +6 -0
  110. package/.next/server/app/docs/configuration.html +28 -0
  111. package/.next/server/app/docs/configuration.meta +16 -0
  112. package/.next/server/app/docs/configuration.rsc +34 -0
  113. package/.next/server/app/docs/configuration.segments/_full.segment.rsc +34 -0
  114. package/.next/server/app/docs/configuration.segments/_head.segment.rsc +6 -0
  115. package/.next/server/app/docs/configuration.segments/_index.segment.rsc +7 -0
  116. package/.next/server/app/docs/configuration.segments/_tree.segment.rsc +5 -0
  117. package/.next/server/app/docs/configuration.segments/docs/$oc$slug/__PAGE__.segment.rsc +10 -0
  118. package/.next/server/app/docs/configuration.segments/docs/$oc$slug.segment.rsc +5 -0
  119. package/.next/server/app/docs/configuration.segments/docs.segment.rsc +6 -0
  120. package/.next/server/app/docs/file-and-report-viewing.html +29 -0
  121. package/.next/server/app/docs/file-and-report-viewing.meta +16 -0
  122. package/.next/server/app/docs/file-and-report-viewing.rsc +34 -0
  123. package/.next/server/app/docs/file-and-report-viewing.segments/_full.segment.rsc +34 -0
  124. package/.next/server/app/docs/file-and-report-viewing.segments/_head.segment.rsc +6 -0
  125. package/.next/server/app/docs/file-and-report-viewing.segments/_index.segment.rsc +7 -0
  126. package/.next/server/app/docs/file-and-report-viewing.segments/_tree.segment.rsc +5 -0
  127. package/.next/server/app/docs/file-and-report-viewing.segments/docs/$oc$slug/__PAGE__.segment.rsc +10 -0
  128. package/.next/server/app/docs/file-and-report-viewing.segments/docs/$oc$slug.segment.rsc +5 -0
  129. package/.next/server/app/docs/file-and-report-viewing.segments/docs.segment.rsc +6 -0
  130. package/.next/server/app/docs/installation-and-deployment.html +30 -0
  131. package/.next/server/app/docs/installation-and-deployment.meta +16 -0
  132. package/.next/server/app/docs/installation-and-deployment.rsc +39 -0
  133. package/.next/server/app/docs/installation-and-deployment.segments/_full.segment.rsc +39 -0
  134. package/.next/server/app/docs/installation-and-deployment.segments/_head.segment.rsc +6 -0
  135. package/.next/server/app/docs/installation-and-deployment.segments/_index.segment.rsc +7 -0
  136. package/.next/server/app/docs/installation-and-deployment.segments/_tree.segment.rsc +5 -0
  137. package/.next/server/app/docs/installation-and-deployment.segments/docs/$oc$slug/__PAGE__.segment.rsc +16 -0
  138. package/.next/server/app/docs/installation-and-deployment.segments/docs/$oc$slug.segment.rsc +5 -0
  139. package/.next/server/app/docs/installation-and-deployment.segments/docs.segment.rsc +6 -0
  140. package/.next/server/app/docs/models-and-tools.html +29 -0
  141. package/.next/server/app/docs/models-and-tools.meta +16 -0
  142. package/.next/server/app/docs/models-and-tools.rsc +34 -0
  143. package/.next/server/app/docs/models-and-tools.segments/_full.segment.rsc +34 -0
  144. package/.next/server/app/docs/models-and-tools.segments/_head.segment.rsc +6 -0
  145. package/.next/server/app/docs/models-and-tools.segments/_index.segment.rsc +7 -0
  146. package/.next/server/app/docs/models-and-tools.segments/_tree.segment.rsc +5 -0
  147. package/.next/server/app/docs/models-and-tools.segments/docs/$oc$slug/__PAGE__.segment.rsc +10 -0
  148. package/.next/server/app/docs/models-and-tools.segments/docs/$oc$slug.segment.rsc +5 -0
  149. package/.next/server/app/docs/models-and-tools.segments/docs.segment.rsc +6 -0
  150. package/.next/server/app/docs/quick-start.html +24 -0
  151. package/.next/server/app/docs/quick-start.meta +16 -0
  152. package/.next/server/app/docs/quick-start.rsc +36 -0
  153. package/.next/server/app/docs/quick-start.segments/_full.segment.rsc +36 -0
  154. package/.next/server/app/docs/quick-start.segments/_head.segment.rsc +6 -0
  155. package/.next/server/app/docs/quick-start.segments/_index.segment.rsc +7 -0
  156. package/.next/server/app/docs/quick-start.segments/_tree.segment.rsc +5 -0
  157. package/.next/server/app/docs/quick-start.segments/docs/$oc$slug/__PAGE__.segment.rsc +12 -0
  158. package/.next/server/app/docs/quick-start.segments/docs/$oc$slug.segment.rsc +5 -0
  159. package/.next/server/app/docs/quick-start.segments/docs.segment.rsc +6 -0
  160. package/.next/server/app/docs/runtime-and-sse.html +28 -0
  161. package/.next/server/app/docs/runtime-and-sse.meta +16 -0
  162. package/.next/server/app/docs/runtime-and-sse.rsc +34 -0
  163. package/.next/server/app/docs/runtime-and-sse.segments/_full.segment.rsc +34 -0
  164. package/.next/server/app/docs/runtime-and-sse.segments/_head.segment.rsc +6 -0
  165. package/.next/server/app/docs/runtime-and-sse.segments/_index.segment.rsc +7 -0
  166. package/.next/server/app/docs/runtime-and-sse.segments/_tree.segment.rsc +5 -0
  167. package/.next/server/app/docs/runtime-and-sse.segments/docs/$oc$slug/__PAGE__.segment.rsc +10 -0
  168. package/.next/server/app/docs/runtime-and-sse.segments/docs/$oc$slug.segment.rsc +5 -0
  169. package/.next/server/app/docs/runtime-and-sse.segments/docs.segment.rsc +6 -0
  170. package/.next/server/app/docs/sessions-and-projects.html +27 -0
  171. package/.next/server/app/docs/sessions-and-projects.meta +16 -0
  172. package/.next/server/app/docs/sessions-and-projects.rsc +34 -0
  173. package/.next/server/app/docs/sessions-and-projects.segments/_full.segment.rsc +34 -0
  174. package/.next/server/app/docs/sessions-and-projects.segments/_head.segment.rsc +6 -0
  175. package/.next/server/app/docs/sessions-and-projects.segments/_index.segment.rsc +7 -0
  176. package/.next/server/app/docs/sessions-and-projects.segments/_tree.segment.rsc +5 -0
  177. package/.next/server/app/docs/sessions-and-projects.segments/docs/$oc$slug/__PAGE__.segment.rsc +10 -0
  178. package/.next/server/app/docs/sessions-and-projects.segments/docs/$oc$slug.segment.rsc +5 -0
  179. package/.next/server/app/docs/sessions-and-projects.segments/docs.segment.rsc +6 -0
  180. package/.next/server/app/docs/workspace.html +28 -0
  181. package/.next/server/app/docs/workspace.meta +16 -0
  182. package/.next/server/app/docs/workspace.rsc +34 -0
  183. package/.next/server/app/docs/workspace.segments/_full.segment.rsc +34 -0
  184. package/.next/server/app/docs/workspace.segments/_head.segment.rsc +6 -0
  185. package/.next/server/app/docs/workspace.segments/_index.segment.rsc +7 -0
  186. package/.next/server/app/docs/workspace.segments/_tree.segment.rsc +5 -0
  187. package/.next/server/app/docs/workspace.segments/docs/$oc$slug/__PAGE__.segment.rsc +10 -0
  188. package/.next/server/app/docs/workspace.segments/docs/$oc$slug.segment.rsc +5 -0
  189. package/.next/server/app/docs/workspace.segments/docs.segment.rsc +6 -0
  190. package/.next/server/app/docs.html +41 -0
  191. package/.next/server/app/docs.meta +16 -0
  192. package/.next/server/app/docs.rsc +35 -0
  193. package/.next/server/app/docs.segments/_full.segment.rsc +35 -0
  194. package/.next/server/app/docs.segments/_head.segment.rsc +6 -0
  195. package/.next/server/app/docs.segments/_index.segment.rsc +7 -0
  196. package/.next/server/app/docs.segments/_tree.segment.rsc +5 -0
  197. package/.next/server/app/docs.segments/docs/$oc$slug/__PAGE__.segment.rsc +11 -0
  198. package/.next/server/app/docs.segments/docs/$oc$slug.segment.rsc +5 -0
  199. package/.next/server/app/docs.segments/docs.segment.rsc +6 -0
  200. package/.next/server/app/index.html +2 -1
  201. package/.next/server/app/index.rsc +28 -14
  202. package/.next/server/app/index.segments/__PAGE__.segment.rsc +14 -5
  203. package/.next/server/app/index.segments/_full.segment.rsc +28 -14
  204. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  205. package/.next/server/app/index.segments/_index.segment.rsc +6 -4
  206. package/.next/server/app/index.segments/_tree.segment.rsc +3 -2
  207. package/.next/server/app/login/page.js +2 -2
  208. package/.next/server/app/login/page.js.nft.json +1 -1
  209. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  210. package/.next/server/app/login.html +1 -1
  211. package/.next/server/app/login.rsc +21 -19
  212. package/.next/server/app/login.segments/_full.segment.rsc +21 -19
  213. package/.next/server/app/login.segments/_head.segment.rsc +1 -1
  214. package/.next/server/app/login.segments/_index.segment.rsc +6 -4
  215. package/.next/server/app/login.segments/_tree.segment.rsc +3 -2
  216. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  217. package/.next/server/app/login.segments/login.segment.rsc +1 -1
  218. package/.next/server/app/page.js +3 -263
  219. package/.next/server/app/page.js.nft.json +1 -1
  220. package/.next/server/app/page_client-reference-manifest.js +1 -1
  221. package/.next/server/app/workspace/page.js +263 -0
  222. package/.next/server/app/workspace/page.js.nft.json +1 -0
  223. package/.next/server/app/workspace/page_client-reference-manifest.js +1 -0
  224. package/.next/server/app/workspace.html +1 -0
  225. package/.next/server/app/workspace.meta +15 -0
  226. package/.next/server/app/workspace.rsc +21 -0
  227. package/.next/server/app/workspace.segments/_full.segment.rsc +21 -0
  228. package/.next/server/app/workspace.segments/_head.segment.rsc +6 -0
  229. package/.next/server/app/workspace.segments/_index.segment.rsc +7 -0
  230. package/.next/server/app/workspace.segments/_tree.segment.rsc +5 -0
  231. package/.next/server/app/workspace.segments/workspace/__PAGE__.segment.rsc +6 -0
  232. package/.next/server/app/workspace.segments/workspace.segment.rsc +5 -0
  233. package/.next/server/app-paths-manifest.json +7 -5
  234. package/.next/server/chunks/1106.js +1 -0
  235. package/.next/server/chunks/1381.js +1 -1
  236. package/.next/server/chunks/1681.js +2 -2
  237. package/.next/server/chunks/1703.js +2 -2
  238. package/.next/server/chunks/2098.js +1 -0
  239. package/.next/server/chunks/2220.js +1 -0
  240. package/.next/server/chunks/3031.js +1 -1
  241. package/.next/server/chunks/3353.js +1 -0
  242. package/.next/server/chunks/3493.js +1 -1
  243. package/.next/server/chunks/402.js +1 -1
  244. package/.next/server/chunks/4035.js +1 -1
  245. package/.next/server/chunks/4091.js +5 -0
  246. package/.next/server/chunks/4443.js +3 -0
  247. package/.next/server/chunks/5293.js +2 -2
  248. package/.next/server/chunks/5488.js +1 -0
  249. package/.next/server/chunks/7073.js +1 -1
  250. package/.next/server/chunks/7526.js +1 -0
  251. package/.next/server/chunks/76.js +1 -0
  252. package/.next/server/chunks/8875.js +1 -0
  253. package/.next/server/chunks/8916.js +1 -1
  254. package/.next/server/chunks/9175.js +10 -0
  255. package/.next/server/chunks/9537.js +1 -1
  256. package/.next/server/chunks/966.js +1 -1
  257. package/.next/server/middleware-build-manifest.js +1 -1
  258. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  259. package/.next/server/middleware.js +1 -1
  260. package/.next/server/pages/404.html +1 -1
  261. package/.next/server/pages/500.html +1 -1
  262. package/.next/server/server-reference-manifest.json +1 -1
  263. package/.next/server/webpack-runtime.js +1 -1
  264. package/.next/static/chunks/2632.f12f984b8009d7f1.js +1 -0
  265. package/.next/static/chunks/2679.f76721dbd8ec617f.js +5 -0
  266. package/.next/static/chunks/4660.6d9fc47e6ed8e7e4.js +10 -0
  267. package/.next/static/chunks/4894-e27a35edd6176226.js +1 -0
  268. package/.next/static/chunks/5122-6e0d29bd15f079e1.js +3 -0
  269. package/.next/static/chunks/5166-58bbf85cbd32ad99.js +1 -0
  270. package/.next/static/chunks/6606.789f1fc26b9150dd.js +1 -0
  271. package/.next/static/chunks/6878.3d114dd7c83aa676.js +1 -0
  272. package/.next/static/chunks/7627-1f8c705195c83044.js +1 -0
  273. package/.next/static/chunks/8500-f62a38ff68ab7f42.js +1 -0
  274. package/.next/static/chunks/9211-21786f967f9c2826.js +1 -0
  275. package/.next/static/chunks/9278-58ee6294b32318a5.js +3 -0
  276. package/.next/static/chunks/9566.2b92edbd162fb97d.js +1 -0
  277. package/.next/static/chunks/9855.1127e644bd68ced0.js +1 -0
  278. package/.next/static/chunks/app/docs/[[...slug]]/page-d232277716ab7921.js +1 -0
  279. package/.next/static/chunks/app/docs/layout-4809bb9dd4b49bff.js +1 -0
  280. package/.next/static/chunks/app/layout-11cc1f48ff425fd0.js +1 -0
  281. package/.next/static/chunks/app/login/page-870e0ee50453c2ba.js +1 -0
  282. package/.next/static/chunks/app/page-eb62ac677a87b790.js +1 -0
  283. package/.next/static/chunks/app/{page-565250b6825f66ad.js → workspace/page-af7e4803e0815c0e.js} +5 -5
  284. package/.next/static/chunks/webpack-ced9e639bb94bd30.js +1 -0
  285. package/.next/static/css/876e881d7ba02ed2.css +1 -0
  286. package/.next/static/css/fddca953485158e4.css +1 -0
  287. package/.next/static/oIqDpdOWwl7oIU6o8NnNp/_buildManifest.js +1 -0
  288. package/.next/static/oIqDpdOWwl7oIU6o8NnNp/_ssgManifest.js +1 -0
  289. package/README.md +3 -3
  290. package/next.config.ts +4 -1
  291. package/package.json +6 -1
  292. package/.next/static/9Y_YDTnjV-FM3PWThKWpw/_buildManifest.js +0 -1
  293. package/.next/static/9Y_YDTnjV-FM3PWThKWpw/_ssgManifest.js +0 -1
  294. package/.next/static/chunks/8771-3e14b6810486df1f.js +0 -1
  295. package/.next/static/chunks/app/layout-be148b7ae915b22a.js +0 -1
  296. package/.next/static/chunks/app/login/page-ebf0e6de99062783.js +0 -1
  297. package/.next/static/chunks/webpack-fcf4a889ecbd753c.js +0 -1
  298. package/.next/static/css/df604d0d99136435.css +0 -3
@@ -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))}},39006:a=>{a.exports={rE:"0.1.28"}},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)}})},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.
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.30"}},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.
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={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+=`
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+=`
2
2
 
3
3
  [data-look="${c}"][data-color-id="color-${b}"].node path {
4
4
  stroke: ${e[b]};