@seqyuan/annovibe 0.8.137 → 0.8.139

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 (426) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +13 -14
  3. package/.next/build-manifest.json +6 -6
  4. package/.next/diagnostics/framework.json +1 -1
  5. package/.next/prerender-manifest.json +33 -3
  6. package/.next/react-loadable-manifest.json +64 -64
  7. package/.next/required-server-files.js +45 -10
  8. package/.next/required-server-files.json +45 -10
  9. package/.next/routes-manifest.json +0 -6
  10. package/.next/server/app/_global-error/page.js +6 -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.meta +24 -5
  14. package/.next/server/app/_global-error.rsc +19 -12
  15. package/.next/server/app/_global-error.segments/_full.segment.rsc +19 -12
  16. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +25 -4
  17. package/.next/server/app/_global-error.segments/_tree.segment.rsc +3 -1
  18. package/.next/server/app/_not-found/page.js +5 -2
  19. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/server/app/_not-found.html +1 -1
  21. package/.next/server/app/_not-found.meta +24 -5
  22. package/.next/server/app/_not-found.rsc +23 -15
  23. package/.next/server/app/_not-found.segments/_full.segment.rsc +23 -15
  24. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +30 -4
  25. package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -1
  26. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  27. package/.next/server/app/api/agent/[id]/prepare/route.js +1 -1
  28. package/.next/server/app/api/agent/[id]/route.js +1 -1
  29. package/.next/server/app/api/agent/new/route.js +2 -2
  30. package/.next/server/app/api/agent/running/events/route.js +2 -2
  31. package/.next/server/app/api/agent/running/route.js +1 -1
  32. package/.next/server/app/api/agent/runtime/route.js +1 -1
  33. package/.next/server/app/api/apps/[id]/[[...path]]/route.js +2 -2
  34. package/.next/server/app/api/apps/route.js +2 -2
  35. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  36. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  37. package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
  38. package/.next/server/app/api/auth/login/route.js +1 -1
  39. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  40. package/.next/server/app/api/auth/providers/route.js +1 -1
  41. package/.next/server/app/api/auth/status/route.js +1 -1
  42. package/.next/server/app/api/auth/totp/route.js +1 -1
  43. package/.next/server/app/api/debug-models/route.js +1 -1
  44. package/.next/server/app/api/default-cwd/route.js +1 -1
  45. package/.next/server/app/api/file-index/route.js +1 -1
  46. package/.next/server/app/api/file-tree/delete/route.js +1 -1
  47. package/.next/server/app/api/file-tree/mkdir/route.js +1 -1
  48. package/.next/server/app/api/file-tree/rename/route.js +1 -1
  49. package/.next/server/app/api/file-tree/reveal/route.js +1 -1
  50. package/.next/server/app/api/file-tree/write/route.js +1 -1
  51. package/.next/server/app/api/file-watch/route.js +3 -3
  52. package/.next/server/app/api/files/[...path]/route.js +2 -2
  53. package/.next/server/app/api/harness/route.js +1 -1
  54. package/.next/server/app/api/home/route.js +1 -1
  55. package/.next/server/app/api/im/cancel/route.js +1 -1
  56. package/.next/server/app/api/im/gateway-status/route.js +1 -1
  57. package/.next/server/app/api/im/project/route.js +1 -1
  58. package/.next/server/app/api/im/projects/route.js +1 -1
  59. package/.next/server/app/api/im/session-ids/route.js +1 -1
  60. package/.next/server/app/api/im/turn/route.js +3 -3
  61. package/.next/server/app/api/images/upload/route.js +1 -1
  62. package/.next/server/app/api/internal/runtime/route.js +1 -1
  63. package/.next/server/app/api/memory/dismiss/route.js +3 -3
  64. package/.next/server/app/api/memory/promote/route.js +3 -3
  65. package/.next/server/app/api/models/route.js +1 -1
  66. package/.next/server/app/api/models-config/discover/route.js +1 -1
  67. package/.next/server/app/api/models-config/route.js +1 -1
  68. package/.next/server/app/api/models-config/test/route.js +1 -1
  69. package/.next/server/app/api/plot-kernels/route.js +1 -1
  70. package/.next/server/app/api/plot-kernels/save/route.js +1 -1
  71. package/.next/server/app/api/plot-kernels/status/route.js +1 -1
  72. package/.next/server/app/api/plot-kernels/stop/route.js +1 -1
  73. package/.next/server/app/api/plugins/route.js +1 -1
  74. package/.next/server/app/api/project-trust/route.js +1 -1
  75. package/.next/server/app/api/projects/browse/route.js +1 -1
  76. package/.next/server/app/api/projects/route.js +1 -1
  77. package/.next/server/app/api/search/route.js +1 -1
  78. package/.next/server/app/api/session-index/events/route.js +2 -2
  79. package/.next/server/app/api/sessions/[id]/auto-name/route.js +6 -7
  80. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  81. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  82. package/.next/server/app/api/sessions/[id]/media/route.js +1 -1
  83. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  84. package/.next/server/app/api/sessions/[id]/shadowed/route.js +1 -1
  85. package/.next/server/app/api/sessions/new/route.js +1 -1
  86. package/.next/server/app/api/sessions/route.js +1 -1
  87. package/.next/server/app/api/settings/route.js +1 -1
  88. package/.next/server/app/api/skills/check/route.js +1 -1
  89. package/.next/server/app/api/skills/install/route.js +5 -5
  90. package/.next/server/app/api/skills/route.js +5 -5
  91. package/.next/server/app/api/skills/search/route.js +1 -1
  92. package/.next/server/app/api/skills/update/route.js +2 -2
  93. package/.next/server/app/api/smoke/prompt-admission/route.js +1 -1
  94. package/.next/server/app/api/soul/route.js +1 -1
  95. package/.next/server/app/api/subagents/status/route.js +1 -1
  96. package/.next/server/app/api/version/route.js +1 -1
  97. package/.next/server/app/favicon.ico/route.js +1 -1
  98. package/.next/server/app/favicon.ico.meta +1 -1
  99. package/.next/server/app/icon.svg/route.js +1 -1
  100. package/.next/server/app/icon.svg.meta +1 -1
  101. package/.next/server/app/index.html +1 -1
  102. package/.next/server/app/index.meta +19 -4
  103. package/.next/server/app/index.rsc +32 -14
  104. package/.next/server/app/index.segments/__PAGE__.segment.rsc +38 -5
  105. package/.next/server/app/index.segments/_full.segment.rsc +32 -14
  106. package/.next/server/app/index.segments/_tree.segment.rsc +2 -1
  107. package/.next/server/app/login/page.js +5 -2
  108. package/.next/server/app/login/page_client-reference-manifest.js +1 -1
  109. package/.next/server/app/login.html +1 -1
  110. package/.next/server/app/login.meta +24 -5
  111. package/.next/server/app/login.rsc +28 -19
  112. package/.next/server/app/login.segments/_full.segment.rsc +28 -19
  113. package/.next/server/app/login.segments/_tree.segment.rsc +3 -1
  114. package/.next/server/app/login.segments/login/__PAGE__.segment.rsc +35 -8
  115. package/.next/server/app/page.js +4 -5
  116. package/.next/server/app/page_client-reference-manifest.js +1 -1
  117. package/.next/server/app/smoke/page.js +5 -6
  118. package/.next/server/app/smoke/page_client-reference-manifest.js +1 -1
  119. package/.next/server/app/smoke/session-stream/page.js +1 -2
  120. package/.next/server/app/smoke/session-stream/page_client-reference-manifest.js +1 -1
  121. package/.next/server/app/smoke/session-stream.html +1 -1
  122. package/.next/server/app/smoke/session-stream.meta +29 -6
  123. package/.next/server/app/smoke/session-stream.rsc +35 -19
  124. package/.next/server/app/smoke/session-stream.segments/_full.segment.rsc +35 -19
  125. package/.next/server/app/smoke/session-stream.segments/_tree.segment.rsc +4 -1
  126. package/.next/server/app/smoke/session-stream.segments/smoke/session-stream/__PAGE__.segment.rsc +43 -8
  127. package/.next/server/app/smoke.html +2 -2
  128. package/.next/server/app/smoke.meta +24 -5
  129. package/.next/server/app/smoke.rsc +36 -19
  130. package/.next/server/app/smoke.segments/_full.segment.rsc +36 -19
  131. package/.next/server/app/smoke.segments/_tree.segment.rsc +3 -1
  132. package/.next/server/app/smoke.segments/smoke/__PAGE__.segment.rsc +43 -8
  133. package/.next/server/app-paths-manifest.json +13 -14
  134. package/.next/server/chunks/1367.js +1 -1
  135. package/.next/server/chunks/1589.js +1 -0
  136. package/.next/server/chunks/1681.js +1 -1
  137. package/.next/server/chunks/1688.js +3 -3
  138. package/.next/server/chunks/1761.js +1 -1
  139. package/.next/server/chunks/1813.js +23 -1
  140. package/.next/server/chunks/2242.js +1 -1
  141. package/.next/server/chunks/2325.js +28 -28
  142. package/.next/server/chunks/2671.js +2 -2
  143. package/.next/server/chunks/2970.js +46 -0
  144. package/.next/server/chunks/402.js +1 -1
  145. package/.next/server/chunks/42.js +44 -44
  146. package/.next/server/chunks/4367.js +1 -1
  147. package/.next/server/chunks/4406.js +1 -1
  148. package/.next/server/chunks/4779.js +1 -0
  149. package/.next/server/chunks/4980.js +1 -1
  150. package/.next/server/chunks/5193.js +3 -3
  151. package/.next/server/chunks/5715.js +1 -1
  152. package/.next/server/chunks/5851.js +1 -1
  153. package/.next/server/chunks/6346.js +1 -1
  154. package/.next/server/chunks/6429.js +13 -13
  155. package/.next/server/chunks/6644.js +108 -0
  156. package/.next/server/chunks/716.js +1 -1
  157. package/.next/server/chunks/7307.js +1 -1
  158. package/.next/server/chunks/7734.js +22 -0
  159. package/.next/server/chunks/7765.js +1 -1
  160. package/.next/server/chunks/7890.js +1 -1
  161. package/.next/server/chunks/8305.js +264 -0
  162. package/.next/server/chunks/8363.js +1 -1
  163. package/.next/server/chunks/8973.js +1 -1
  164. package/.next/server/chunks/9557.js +1 -0
  165. package/.next/server/chunks/9868.js +1 -1
  166. package/.next/server/chunks/static/media/pdf.worker.min.94f8ceaf.mjs +6 -0
  167. package/.next/server/functions-config-manifest.json +1 -1
  168. package/.next/server/middleware-build-manifest.js +1 -1
  169. package/.next/server/middleware-react-loadable-manifest.js +1 -1
  170. package/.next/server/middleware.js +54 -6
  171. package/.next/server/pages/404.html +1 -1
  172. package/.next/server/pages/500.html +1 -1
  173. package/.next/server/prefetch-hints.json +86 -1
  174. package/.next/server/preview-props.json +5 -0
  175. package/.next/server/server-reference-manifest.json +1 -1
  176. package/.next/static/chunks/{0b9a0da7-9075af772487e743.js → 0b9a0da7-373b544740862358.js} +1 -1
  177. package/.next/static/chunks/{1209.6d037cb2674eafa2.js → 1209.4f7491c863d512f0.js} +1 -1
  178. package/.next/static/chunks/2170a4aa.4301f7c49f3f0a6e.js +1 -0
  179. package/.next/static/chunks/2254-db22997b60e1dc27.js +1 -0
  180. package/.next/static/chunks/2257-a948751c1a3d4608.js +22 -0
  181. package/.next/static/chunks/2619.8f686be8e2479c20.js +1 -0
  182. package/.next/static/chunks/{2623.d20fabd8e18197c6.js → 2623.a6bf38491c50cb6e.js} +2 -2
  183. package/.next/static/chunks/2693-421c2e9d9c92a666.js +173 -0
  184. package/.next/static/chunks/{2774.0811cda036dfeb94.js → 2774.ba50ba9e8b3ebf4a.js} +1 -1
  185. package/.next/static/chunks/2821.d15f14bd03d9d290.js +1 -0
  186. package/.next/static/chunks/{3307.e638f7fa43f28bac.js → 3307.c87aab94f4464604.js} +1 -1
  187. package/.next/static/chunks/{5690.332f301b9df6f2dd.js → 3309.d0c34b5ef504a551.js} +1 -1
  188. package/.next/static/chunks/363642f4-a09fcaca7af039e5.js +1 -0
  189. package/.next/static/chunks/{3689.0336d97dde6c9084.js → 3689.93592a22c737d185.js} +1 -1
  190. package/.next/static/chunks/3794-fba3f76785a3c234.js +52 -0
  191. package/.next/static/chunks/{425.9a3434a28926566a.js → 425.8fe80c34648b01ec.js} +1 -1
  192. package/.next/static/chunks/{4453.91a357dc43c21745.js → 4453.ba05c4805425ceeb.js} +1 -1
  193. package/.next/static/chunks/4936-799f05324bb5c236.js +1 -0
  194. package/.next/static/chunks/4bd1b696-8cd12253b448cc13.js +1 -0
  195. package/.next/static/chunks/51fb665c.b01d5a04c27e9091.js +45 -0
  196. package/.next/static/chunks/{547.902a733488cfe3f7.js → 547.0f08d4931c0f04a2.js} +1 -1
  197. package/.next/static/chunks/{5567.540d7fc108ad6ee5.js → 5567.6674301d1337d738.js} +1 -1
  198. package/.next/static/chunks/{5618-5cda45604cf32c2a.js → 5618-8aecfc54df369be5.js} +1 -1
  199. package/.next/static/chunks/5690.64d843d3db8e1b4b.js +1 -0
  200. package/.next/static/chunks/{58bb9007.1ccb6bba34b4c635.js → 58bb9007.3d4e7356b1e96b6a.js} +28 -28
  201. package/.next/static/chunks/6121.333d793734b9abf7.js +1 -0
  202. package/.next/static/chunks/6586.775a449050e0e9cc.js +138 -0
  203. package/.next/static/chunks/{6696.a41aec266e657d54.js → 6696.345b3cd62db13cb6.js} +1 -1
  204. package/.next/static/chunks/{7874.8db6929b94cdf697.js → 7874.7faccf8fab087120.js} +1 -1
  205. package/.next/static/chunks/8489.514938fd5e801cf7.js +36 -0
  206. package/.next/static/chunks/{8863.4b2faadd47deb00c.js → 8863.2ae457485a63aa22.js} +1 -1
  207. package/.next/static/chunks/90542734.6b9fbcabf095d1a0.js +1 -0
  208. package/.next/static/chunks/9867-1b73c62e8b604095.js +260 -0
  209. package/.next/static/chunks/app/_global-error/{page-6908129cec5a3264.js → page-ebf7ae60150d40d4.js} +1 -1
  210. package/.next/static/chunks/app/api/agent/[id]/events/{route-6908129cec5a3264.js → route-ebf7ae60150d40d4.js} +1 -1
  211. package/.next/static/chunks/app/api/agent/[id]/prepare/{route-6908129cec5a3264.js → route-ebf7ae60150d40d4.js} +1 -1
  212. package/.next/static/chunks/app/api/agent/[id]/{route-6908129cec5a3264.js → route-ebf7ae60150d40d4.js} +1 -1
  213. package/.next/static/chunks/app/api/agent/new/route-ebf7ae60150d40d4.js +1 -0
  214. package/.next/static/chunks/app/api/agent/running/events/route-ebf7ae60150d40d4.js +1 -0
  215. package/.next/static/chunks/app/api/agent/running/route-ebf7ae60150d40d4.js +1 -0
  216. package/.next/static/chunks/app/api/agent/runtime/route-ebf7ae60150d40d4.js +1 -0
  217. package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-ebf7ae60150d40d4.js +1 -0
  218. package/.next/static/chunks/app/api/apps/route-ebf7ae60150d40d4.js +1 -0
  219. package/.next/static/chunks/app/api/auth/all-providers/route-ebf7ae60150d40d4.js +1 -0
  220. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-ebf7ae60150d40d4.js +1 -0
  221. package/.next/static/chunks/app/api/auth/login/[provider]/route-ebf7ae60150d40d4.js +1 -0
  222. package/.next/static/chunks/app/api/auth/login/route-ebf7ae60150d40d4.js +1 -0
  223. package/.next/static/chunks/app/api/auth/logout/[provider]/route-ebf7ae60150d40d4.js +1 -0
  224. package/.next/static/chunks/app/api/auth/providers/route-ebf7ae60150d40d4.js +1 -0
  225. package/.next/static/chunks/app/api/auth/status/route-ebf7ae60150d40d4.js +1 -0
  226. package/.next/static/chunks/app/api/auth/totp/route-ebf7ae60150d40d4.js +1 -0
  227. package/.next/static/chunks/app/api/debug-models/route-ebf7ae60150d40d4.js +1 -0
  228. package/.next/static/chunks/app/api/default-cwd/route-ebf7ae60150d40d4.js +1 -0
  229. package/.next/static/chunks/app/api/file-index/route-ebf7ae60150d40d4.js +1 -0
  230. package/.next/static/chunks/app/api/file-tree/delete/route-ebf7ae60150d40d4.js +1 -0
  231. package/.next/static/chunks/app/api/file-tree/mkdir/route-ebf7ae60150d40d4.js +1 -0
  232. package/.next/static/chunks/app/api/file-tree/rename/route-ebf7ae60150d40d4.js +1 -0
  233. package/.next/static/chunks/app/api/file-tree/reveal/route-ebf7ae60150d40d4.js +1 -0
  234. package/.next/static/chunks/app/api/file-tree/write/route-ebf7ae60150d40d4.js +1 -0
  235. package/.next/static/chunks/app/api/file-watch/route-ebf7ae60150d40d4.js +1 -0
  236. package/.next/static/chunks/app/api/files/[...path]/route-ebf7ae60150d40d4.js +1 -0
  237. package/.next/static/chunks/app/api/harness/route-ebf7ae60150d40d4.js +1 -0
  238. package/.next/static/chunks/app/api/home/route-ebf7ae60150d40d4.js +1 -0
  239. package/.next/static/chunks/app/api/im/cancel/route-ebf7ae60150d40d4.js +1 -0
  240. package/.next/static/chunks/app/api/im/gateway-status/route-ebf7ae60150d40d4.js +1 -0
  241. package/.next/static/chunks/app/api/im/project/route-ebf7ae60150d40d4.js +1 -0
  242. package/.next/static/chunks/app/api/im/projects/route-ebf7ae60150d40d4.js +1 -0
  243. package/.next/static/chunks/app/api/im/session-ids/route-ebf7ae60150d40d4.js +1 -0
  244. package/.next/static/chunks/app/api/im/turn/route-ebf7ae60150d40d4.js +1 -0
  245. package/.next/static/chunks/app/api/images/upload/route-ebf7ae60150d40d4.js +1 -0
  246. package/.next/static/chunks/app/api/internal/runtime/route-ebf7ae60150d40d4.js +1 -0
  247. package/.next/static/chunks/app/api/memory/dismiss/route-ebf7ae60150d40d4.js +1 -0
  248. package/.next/static/chunks/app/api/memory/promote/route-ebf7ae60150d40d4.js +1 -0
  249. package/.next/static/chunks/app/api/models/route-ebf7ae60150d40d4.js +1 -0
  250. package/.next/static/chunks/app/api/models-config/discover/route-ebf7ae60150d40d4.js +1 -0
  251. package/.next/static/chunks/app/api/models-config/route-ebf7ae60150d40d4.js +1 -0
  252. package/.next/static/chunks/app/api/models-config/test/route-ebf7ae60150d40d4.js +1 -0
  253. package/.next/static/chunks/app/api/plot-kernels/route-ebf7ae60150d40d4.js +1 -0
  254. package/.next/static/chunks/app/api/plot-kernels/save/route-ebf7ae60150d40d4.js +1 -0
  255. package/.next/static/chunks/app/api/plot-kernels/status/route-ebf7ae60150d40d4.js +1 -0
  256. package/.next/static/chunks/app/api/plot-kernels/stop/route-ebf7ae60150d40d4.js +1 -0
  257. package/.next/static/chunks/app/api/plugins/route-ebf7ae60150d40d4.js +1 -0
  258. package/.next/static/chunks/app/api/project-trust/route-ebf7ae60150d40d4.js +1 -0
  259. package/.next/static/chunks/app/api/projects/browse/route-ebf7ae60150d40d4.js +1 -0
  260. package/.next/static/chunks/app/api/projects/route-ebf7ae60150d40d4.js +1 -0
  261. package/.next/static/chunks/app/api/search/route-ebf7ae60150d40d4.js +1 -0
  262. package/.next/static/chunks/app/api/session-index/events/route-ebf7ae60150d40d4.js +1 -0
  263. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-ebf7ae60150d40d4.js +1 -0
  264. package/.next/static/chunks/app/api/sessions/[id]/context/route-ebf7ae60150d40d4.js +1 -0
  265. package/.next/static/chunks/app/api/sessions/[id]/export/route-ebf7ae60150d40d4.js +1 -0
  266. package/.next/static/chunks/app/api/sessions/[id]/media/route-ebf7ae60150d40d4.js +1 -0
  267. package/.next/static/chunks/app/api/sessions/[id]/route-ebf7ae60150d40d4.js +1 -0
  268. package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-ebf7ae60150d40d4.js +1 -0
  269. package/.next/static/chunks/app/api/sessions/new/route-ebf7ae60150d40d4.js +1 -0
  270. package/.next/static/chunks/app/api/sessions/route-ebf7ae60150d40d4.js +1 -0
  271. package/.next/static/chunks/app/api/settings/route-ebf7ae60150d40d4.js +1 -0
  272. package/.next/static/chunks/app/api/skills/check/route-ebf7ae60150d40d4.js +1 -0
  273. package/.next/static/chunks/app/api/skills/install/route-ebf7ae60150d40d4.js +1 -0
  274. package/.next/static/chunks/app/api/skills/route-ebf7ae60150d40d4.js +1 -0
  275. package/.next/static/chunks/app/api/skills/search/route-ebf7ae60150d40d4.js +1 -0
  276. package/.next/static/chunks/app/api/skills/update/route-ebf7ae60150d40d4.js +1 -0
  277. package/.next/static/chunks/app/api/smoke/prompt-admission/route-ebf7ae60150d40d4.js +1 -0
  278. package/.next/static/chunks/app/api/soul/route-ebf7ae60150d40d4.js +1 -0
  279. package/.next/static/chunks/app/api/subagents/status/route-ebf7ae60150d40d4.js +1 -0
  280. package/.next/static/chunks/app/api/version/route-ebf7ae60150d40d4.js +1 -0
  281. package/.next/static/chunks/app/error-6309e3e4cdf79d40.js +3 -0
  282. package/.next/static/chunks/app/favicon.ico/route-ebf7ae60150d40d4.js +1 -0
  283. package/.next/static/chunks/app/global-error-7595c826cec2c048.js +3 -0
  284. package/.next/static/chunks/app/layout-31265427e43f6876.js +1 -0
  285. package/.next/static/chunks/app/{page-18dafddef38f1693.js → page-621baff414be5f53.js} +5 -5
  286. package/.next/static/chunks/app/smoke/{page-32674afc320aa48b.js → page-82db33b4fdd2e0b4.js} +3 -3
  287. package/.next/static/chunks/app/smoke/session-stream/{page-e754151f65003821.js → page-9c9a9a2aafa69000.js} +2 -2
  288. package/.next/static/chunks/framework-461b899b66554474.js +1 -0
  289. package/.next/static/chunks/main-4c5c62a3f03fc745.js +5 -0
  290. package/.next/static/chunks/main-app-a8a207cb34d209aa.js +1 -0
  291. package/.next/static/chunks/next/dist/client/components/builtin/app-error-ebf7ae60150d40d4.js +1 -0
  292. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-ebf7ae60150d40d4.js +1 -0
  293. package/.next/static/chunks/next/dist/client/components/builtin/not-found-ebf7ae60150d40d4.js +1 -0
  294. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-ebf7ae60150d40d4.js +1 -0
  295. package/.next/static/chunks/{webpack-87d310cefc6fab2a.js → webpack-36fa69ae1e15e7ce.js} +1 -1
  296. package/.next/static/gQqswid5tIZgg-wzkoMn9/_buildManifest.js +1 -0
  297. package/.next/static/media/pdf.worker.min.7a62f52c.mjs +6 -0
  298. package/bin/annovibe-im-gateway.js +98 -21
  299. package/bin/pi-web.js +16 -9
  300. package/package.json +3 -4
  301. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +0 -5
  302. package/.next/server/app/_global-error.segments/_head.segment.rsc +0 -5
  303. package/.next/server/app/_global-error.segments/_index.segment.rsc +0 -5
  304. package/.next/server/app/_not-found.segments/_head.segment.rsc +0 -6
  305. package/.next/server/app/_not-found.segments/_index.segment.rsc +0 -7
  306. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +0 -5
  307. package/.next/server/app/api/im/gateway-token/route.js +0 -1
  308. package/.next/server/app/api/im/gateway-token/route_client-reference-manifest.js +0 -1
  309. package/.next/server/app/index.segments/_head.segment.rsc +0 -6
  310. package/.next/server/app/index.segments/_index.segment.rsc +0 -7
  311. package/.next/server/app/login.segments/_head.segment.rsc +0 -6
  312. package/.next/server/app/login.segments/_index.segment.rsc +0 -7
  313. package/.next/server/app/login.segments/login.segment.rsc +0 -5
  314. package/.next/server/app/smoke/session-stream.segments/_head.segment.rsc +0 -6
  315. package/.next/server/app/smoke/session-stream.segments/_index.segment.rsc +0 -7
  316. package/.next/server/app/smoke/session-stream.segments/smoke/session-stream.segment.rsc +0 -5
  317. package/.next/server/app/smoke/session-stream.segments/smoke.segment.rsc +0 -5
  318. package/.next/server/app/smoke.segments/_head.segment.rsc +0 -6
  319. package/.next/server/app/smoke.segments/_index.segment.rsc +0 -7
  320. package/.next/server/app/smoke.segments/smoke.segment.rsc +0 -5
  321. package/.next/server/chunks/4741.js +0 -18
  322. package/.next/server/chunks/63.js +0 -45
  323. package/.next/server/chunks/7303.js +0 -260
  324. package/.next/server/chunks/7365.js +0 -1
  325. package/.next/server/chunks/8304.js +0 -1
  326. package/.next/server/chunks/8797.js +0 -22
  327. package/.next/server/chunks/static/media/pdf.worker.min.c476e1a0.mjs +0 -6
  328. package/.next/static/Dhz0OCkGsLWL775zzzmMs/_buildManifest.js +0 -1
  329. package/.next/static/chunks/2170a4aa.4213bb2183c9cdf9.js +0 -1
  330. package/.next/static/chunks/2254-fa3fcc88564ee18d.js +0 -1
  331. package/.next/static/chunks/2619.9aac8983f30c7c8a.js +0 -1
  332. package/.next/static/chunks/2693-52c358cf5d84b069.js +0 -173
  333. package/.next/static/chunks/2821.934bcf60fbdc28c6.js +0 -1
  334. package/.next/static/chunks/291-e0c3c616f67fe126.js +0 -22
  335. package/.next/static/chunks/3309.581b04bacfeed701.js +0 -1
  336. package/.next/static/chunks/363642f4-dc35a7a659350f8e.js +0 -1
  337. package/.next/static/chunks/3794-123fdf632563f469.js +0 -32
  338. package/.next/static/chunks/4936-9558484c46c3ecc8.js +0 -1
  339. package/.next/static/chunks/4bd1b696-e356ca5ba0218e27.js +0 -1
  340. package/.next/static/chunks/51fb665c.e2bfdae35ef4d790.js +0 -45
  341. package/.next/static/chunks/6121.f3f43f1896ea0cd9.js +0 -1
  342. package/.next/static/chunks/6586.25e1a0135b5e5bba.js +0 -138
  343. package/.next/static/chunks/8489.45f22859734f514f.js +0 -36
  344. package/.next/static/chunks/90542734.ecc36ada79772529.js +0 -1
  345. package/.next/static/chunks/9867-d66ff8fa3cb21f14.js +0 -260
  346. package/.next/static/chunks/app/api/agent/new/route-6908129cec5a3264.js +0 -1
  347. package/.next/static/chunks/app/api/agent/running/events/route-6908129cec5a3264.js +0 -1
  348. package/.next/static/chunks/app/api/agent/running/route-6908129cec5a3264.js +0 -1
  349. package/.next/static/chunks/app/api/agent/runtime/route-6908129cec5a3264.js +0 -1
  350. package/.next/static/chunks/app/api/apps/[id]/[[...path]]/route-6908129cec5a3264.js +0 -1
  351. package/.next/static/chunks/app/api/apps/route-6908129cec5a3264.js +0 -1
  352. package/.next/static/chunks/app/api/auth/all-providers/route-6908129cec5a3264.js +0 -1
  353. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-6908129cec5a3264.js +0 -1
  354. package/.next/static/chunks/app/api/auth/login/[provider]/route-6908129cec5a3264.js +0 -1
  355. package/.next/static/chunks/app/api/auth/login/route-6908129cec5a3264.js +0 -1
  356. package/.next/static/chunks/app/api/auth/logout/[provider]/route-6908129cec5a3264.js +0 -1
  357. package/.next/static/chunks/app/api/auth/providers/route-6908129cec5a3264.js +0 -1
  358. package/.next/static/chunks/app/api/auth/status/route-6908129cec5a3264.js +0 -1
  359. package/.next/static/chunks/app/api/auth/totp/route-6908129cec5a3264.js +0 -1
  360. package/.next/static/chunks/app/api/debug-models/route-6908129cec5a3264.js +0 -1
  361. package/.next/static/chunks/app/api/default-cwd/route-6908129cec5a3264.js +0 -1
  362. package/.next/static/chunks/app/api/file-index/route-6908129cec5a3264.js +0 -1
  363. package/.next/static/chunks/app/api/file-tree/delete/route-6908129cec5a3264.js +0 -1
  364. package/.next/static/chunks/app/api/file-tree/mkdir/route-6908129cec5a3264.js +0 -1
  365. package/.next/static/chunks/app/api/file-tree/rename/route-6908129cec5a3264.js +0 -1
  366. package/.next/static/chunks/app/api/file-tree/reveal/route-6908129cec5a3264.js +0 -1
  367. package/.next/static/chunks/app/api/file-tree/write/route-6908129cec5a3264.js +0 -1
  368. package/.next/static/chunks/app/api/file-watch/route-6908129cec5a3264.js +0 -1
  369. package/.next/static/chunks/app/api/files/[...path]/route-6908129cec5a3264.js +0 -1
  370. package/.next/static/chunks/app/api/harness/route-6908129cec5a3264.js +0 -1
  371. package/.next/static/chunks/app/api/home/route-6908129cec5a3264.js +0 -1
  372. package/.next/static/chunks/app/api/im/cancel/route-6908129cec5a3264.js +0 -1
  373. package/.next/static/chunks/app/api/im/gateway-status/route-6908129cec5a3264.js +0 -1
  374. package/.next/static/chunks/app/api/im/gateway-token/route-6908129cec5a3264.js +0 -1
  375. package/.next/static/chunks/app/api/im/project/route-6908129cec5a3264.js +0 -1
  376. package/.next/static/chunks/app/api/im/projects/route-6908129cec5a3264.js +0 -1
  377. package/.next/static/chunks/app/api/im/session-ids/route-6908129cec5a3264.js +0 -1
  378. package/.next/static/chunks/app/api/im/turn/route-6908129cec5a3264.js +0 -1
  379. package/.next/static/chunks/app/api/images/upload/route-6908129cec5a3264.js +0 -1
  380. package/.next/static/chunks/app/api/internal/runtime/route-6908129cec5a3264.js +0 -1
  381. package/.next/static/chunks/app/api/memory/dismiss/route-6908129cec5a3264.js +0 -1
  382. package/.next/static/chunks/app/api/memory/promote/route-6908129cec5a3264.js +0 -1
  383. package/.next/static/chunks/app/api/models/route-6908129cec5a3264.js +0 -1
  384. package/.next/static/chunks/app/api/models-config/discover/route-6908129cec5a3264.js +0 -1
  385. package/.next/static/chunks/app/api/models-config/route-6908129cec5a3264.js +0 -1
  386. package/.next/static/chunks/app/api/models-config/test/route-6908129cec5a3264.js +0 -1
  387. package/.next/static/chunks/app/api/plot-kernels/route-6908129cec5a3264.js +0 -1
  388. package/.next/static/chunks/app/api/plot-kernels/save/route-6908129cec5a3264.js +0 -1
  389. package/.next/static/chunks/app/api/plot-kernels/status/route-6908129cec5a3264.js +0 -1
  390. package/.next/static/chunks/app/api/plot-kernels/stop/route-6908129cec5a3264.js +0 -1
  391. package/.next/static/chunks/app/api/plugins/route-6908129cec5a3264.js +0 -1
  392. package/.next/static/chunks/app/api/project-trust/route-6908129cec5a3264.js +0 -1
  393. package/.next/static/chunks/app/api/projects/browse/route-6908129cec5a3264.js +0 -1
  394. package/.next/static/chunks/app/api/projects/route-6908129cec5a3264.js +0 -1
  395. package/.next/static/chunks/app/api/search/route-6908129cec5a3264.js +0 -1
  396. package/.next/static/chunks/app/api/session-index/events/route-6908129cec5a3264.js +0 -1
  397. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-6908129cec5a3264.js +0 -1
  398. package/.next/static/chunks/app/api/sessions/[id]/context/route-6908129cec5a3264.js +0 -1
  399. package/.next/static/chunks/app/api/sessions/[id]/export/route-6908129cec5a3264.js +0 -1
  400. package/.next/static/chunks/app/api/sessions/[id]/media/route-6908129cec5a3264.js +0 -1
  401. package/.next/static/chunks/app/api/sessions/[id]/route-6908129cec5a3264.js +0 -1
  402. package/.next/static/chunks/app/api/sessions/[id]/shadowed/route-6908129cec5a3264.js +0 -1
  403. package/.next/static/chunks/app/api/sessions/new/route-6908129cec5a3264.js +0 -1
  404. package/.next/static/chunks/app/api/sessions/route-6908129cec5a3264.js +0 -1
  405. package/.next/static/chunks/app/api/settings/route-6908129cec5a3264.js +0 -1
  406. package/.next/static/chunks/app/api/skills/check/route-6908129cec5a3264.js +0 -1
  407. package/.next/static/chunks/app/api/skills/install/route-6908129cec5a3264.js +0 -1
  408. package/.next/static/chunks/app/api/skills/route-6908129cec5a3264.js +0 -1
  409. package/.next/static/chunks/app/api/skills/search/route-6908129cec5a3264.js +0 -1
  410. package/.next/static/chunks/app/api/skills/update/route-6908129cec5a3264.js +0 -1
  411. package/.next/static/chunks/app/api/smoke/prompt-admission/route-6908129cec5a3264.js +0 -1
  412. package/.next/static/chunks/app/api/soul/route-6908129cec5a3264.js +0 -1
  413. package/.next/static/chunks/app/api/subagents/status/route-6908129cec5a3264.js +0 -1
  414. package/.next/static/chunks/app/api/version/route-6908129cec5a3264.js +0 -1
  415. package/.next/static/chunks/app/favicon.ico/route-6908129cec5a3264.js +0 -1
  416. package/.next/static/chunks/app/layout-101c4ccdf12880f0.js +0 -1
  417. package/.next/static/chunks/framework-594babcea68f40f6.js +0 -1
  418. package/.next/static/chunks/main-0371fd3122de9512.js +0 -5
  419. package/.next/static/chunks/main-app-8d81a93b58bb990f.js +0 -1
  420. package/.next/static/chunks/next/dist/client/components/builtin/app-error-6908129cec5a3264.js +0 -1
  421. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-6908129cec5a3264.js +0 -1
  422. package/.next/static/chunks/next/dist/client/components/builtin/global-error-a7f3f044c72f9137.js +0 -1
  423. package/.next/static/chunks/next/dist/client/components/builtin/not-found-6908129cec5a3264.js +0 -1
  424. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-6908129cec5a3264.js +0 -1
  425. package/.next/static/media/pdf.worker.min.29aaf158.mjs +0 -6
  426. /package/.next/static/{Dhz0OCkGsLWL775zzzmMs → gQqswid5tIZgg-wzkoMn9}/_ssgManifest.js +0 -0
@@ -0,0 +1,22 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2257],{12257:(e,t,n)=>{n.d(t,{T:()=>Q});var r=n(12115);function a(e){return e?.phase==="running_tools"?{kind:"running_tools",tools:(e.activeTools??[]).map(e=>({id:e.id,name:e.name}))}:e?.phase==="streaming"||e?.phase==="compacting"||e?.phase==="idle"?null:{kind:"waiting_model"}}function o(e){if("assistant"!==e.role)return e;let t=e.content;if(!Array.isArray(t))return e;let n=t.map(e=>("object"!=typeof e||null===e||Array.isArray(e)||"toolCall"!==e.type?null:{type:"toolCall",toolCallId:"string"==typeof e.toolCallId?e.toolCallId:"string"==typeof e.id?e.id:"",toolName:"string"==typeof e.toolName?e.toolName:"string"==typeof e.name?e.name:"",input:"object"!=typeof e.input||null===e.input||Array.isArray(e.input)?"object"!=typeof e.arguments||null===e.arguments||Array.isArray(e.arguments)?{}:e.arguments:e.input})??e);return{...e,content:n}}let s={isStreaming:!1,streamingMessage:null};function l(){return{role:"assistant",content:[],model:"",provider:"",timestamp:Date.now()}}function i(e,t,n){if(!Number.isInteger(t)||void 0===t||t<0)return e;let r=e.streamingMessage??l(),a=[...r.content],o=n(a[t]);return o?(a[t]=o,{isStreaming:!0,streamingMessage:{...r,content:a}}):e}function u(e){if(e.id||e.toolName)return{...e.id?{id:e.id}:{},...e.toolName?{toolName:e.toolName}:{}};let t=e.partial,n=e.contentIndex;if(!t||!Array.isArray(t.content)||void 0===n)return{};let r=t.content[n];return r&&"toolCall"===r.type?{..."string"==typeof r.id?{id:r.id}:"string"==typeof r.toolCallId?{id:r.toolCallId}:{},..."string"==typeof r.name?{toolName:r.name}:"string"==typeof r.toolName?{toolName:r.toolName}:{}}:{}}function c(e,t){switch(t.type){case"start":return{isStreaming:!0,streamingMessage:null};case"snapshot":return"assistant"===t.message.role?{isStreaming:!0,streamingMessage:t.message}:e;case"delta":var n=t.event;switch(n.type){case"start":return{isStreaming:!0,streamingMessage:e.streamingMessage??l()};case"text_start":return i(e,n.contentIndex,e=>e?.type==="text"?e:{type:"text",text:""});case"text_delta":return i(e,n.contentIndex,e=>({type:"text",text:(e?.type==="text"?e.text:"")+(n.delta??"")}));case"text_end":return i(e,n.contentIndex,e=>({type:"text",text:n.content??(e?.type==="text"?e.text:"")}));case"thinking_start":return i(e,n.contentIndex,e=>e?.type==="thinking"?e:{type:"thinking",thinking:""});case"thinking_delta":return i(e,n.contentIndex,e=>({type:"thinking",thinking:(e?.type==="thinking"?e.thinking:"")+(n.delta??"")}));case"thinking_end":return i(e,n.contentIndex,e=>({type:"thinking",thinking:n.content??(e?.type==="thinking"?e.thinking:"")}));case"toolcall_start":return i(e,n.contentIndex,e=>{let t=u(n);return e?.type==="toolCall"?{...e,...t.id?{toolCallId:t.id}:{},...t.toolName?{toolName:t.toolName}:{},rawInput:e.rawInput??""}:{type:"toolCall",toolCallId:t.id??"",toolName:t.toolName??"tool",input:{},rawInput:""}});case"toolcall_delta":return i(e,n.contentIndex,e=>{let t=u(n),r=e?.type==="toolCall"?e:{type:"toolCall",toolCallId:t.id??"",toolName:t.toolName??"tool",input:{}};return{...r,...t.id?{toolCallId:t.id}:{},...t.toolName?{toolName:t.toolName}:{},rawInput:(r.rawInput??"")+(n.delta??"")}});case"toolcall_end":return i(e,n.contentIndex,()=>({type:"toolCall",toolCallId:n.toolCall?.id??"",toolName:n.toolCall?.name??"tool",input:n.toolCall?.arguments??{}}));default:return e}case"end":case"reset":return s;default:return e}}function d(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function p(e){if("assistant"!==e.role)return null;let t=e.timestamp;return"number"!=typeof t?null:`assistant:${t}`}class m extends Error{constructor(e,t,n){super(e),this.status=t,this.code=n,this.name="AgentCommandError"}}async function f(e,t){let n=await fetch(`/api/agent/${encodeURIComponent(e)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));if(!n.ok||r.error)throw new m(r.error??`HTTP ${n.status}`,n.status,r.code);return r.data}var g=n(28999);async function h(e,t){if(!t.length)return[];let n=await fetch("/api/images/upload",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:e,images:t.map(e=>({data:e.data,mimeType:e.mimeType,name:e.name}))})}),r=await n.json().catch(()=>({}));if(!n.ok||r.error)throw Error(r.error??`Upload failed (HTTP ${n.status})`);return(r.uploaded??[]).map((e,n)=>({...e,previewUrl:t[n]?.previewUrl}))}async function y(e,t,n){let r,a=new TextDecoder,o="",s=e=>{if(e.startsWith("id: ")){r=e.slice(4);return}if(!e.startsWith("data: "))return;let n=e.slice(6);if("[DONE]"!==n)try{t(n,r)}catch{}finally{r=void 0}},l=new Promise(e=>{n?.aborted?e():n?.addEventListener("abort",()=>e(),{once:!0})});for(;;){let t=await Promise.race([e.read(),l.then(()=>({done:!0,value:void 0}))]);if(t.done)break;let n=(o+=a.decode(t.value,{stream:!0})).split("\n");for(let e of(o=n.pop()||"",n))s(e)}if(o.trim())for(let e of o.split("\n"))s(e)}var w=n(16865);let k="__annovibeStreamSessions__",v="__annovibeStreamListeners__",b="__annovibeStreamErrorCallbacks__";function C(){let e=globalThis;return e[k]||(e[k]=new Map),e[k]}function x(){let e=globalThis;return e[b]||(e[b]=new Map),e[b]}function _(e){return{sessionId:e,phase:"idle",startedAt:null,lastEventAt:null,lastHeartbeatAt:null,reconnectCount:0,lastSyncReason:null,accumulatedText:"",toolCalls:[],toolResults:[],statusText:null,streamingMessage:null,isStreaming:!1,error:null}}function T(e,t){let n;for(let r of(!(n=globalThis)[v]&&(n[v]=new Map),n[v]).get(e)??[])try{r(t)}catch{}}function I(e){e.textThrottleTimer&&(clearTimeout(e.textThrottleTimer),e.textThrottleTimer=null),e.textDirty&&(e.textDirty=!1,M(e))}function S(e,t=!1){let n=Date.now();if(e.snapshot.lastEventAt=n,!t){e.textDirty=!0,e.textThrottleTimer||(e.textThrottleTimer=setTimeout(()=>{e.textThrottleTimer=null,e.textDirty&&(e.textDirty=!1,M(e))},100));return}I(e),M(e)}function M(e,t){let n=Date.now(),r=function(e){let t=[];for(let n of e.toolCalls.values())t.push({type:"toolCall",toolCallId:n.toolCallId,toolName:n.toolName,input:n.input??{}});let n=e.accumulatedText.trim();return n&&t.push({type:"text",text:n}),t}(e),a=(t??e.snapshot.phase)==="active";e.snapshot={...e.snapshot,phase:t??e.snapshot.phase,lastEventAt:n,accumulatedText:e.accumulatedText,toolCalls:[...e.toolCalls.values()],toolResults:[...e.toolResults.values()],statusText:a?function(e){if(e.activeToolId){let t=e.toolCalls.get(e.activeToolId);if(t){let e=Math.max(0,Math.floor((Date.now()-t.startedAt)/1e3));return`Running ${t.toolName||"tool"}… (${e}s)`}}return e.accumulatedText.trim()?"Generating response…":e.toolCalls.size>0?"Finishing tool results…":null}(e):e.snapshot.statusText,streamingMessage:a&&r.length>0?{role:"assistant",content:r}:null,isStreaming:a},T(e.snapshot.sessionId,{type:"snapshot-updated",snapshot:e.snapshot})}function A(e){E(e),e.idleCheckTimer=setInterval(()=>{if("connected"!==e.connectionState)return;let t=Math.max(e.snapshot.lastEventAt??0,e.snapshot.lastHeartbeatAt??0);if(Date.now()-t>=18e4){R(e),I(e);let t="Stream idle timeout — no activity for 180s.";e.snapshot={...e.snapshot,phase:"error",isStreaming:!1,streamingMessage:null,statusText:null,error:t},E(e),T(e.snapshot.sessionId,{type:"error",snapshot:e.snapshot});let n=x().get(e.snapshot.sessionId);if(n)try{n(e.snapshot.sessionId,t)}catch{}}},1e4)}function E(e){e.idleCheckTimer&&(clearInterval(e.idleCheckTimer),e.idleCheckTimer=null)}function R(e){e.toolProgressTimer&&(clearInterval(e.toolProgressTimer),e.toolProgressTimer=null)}function $(e){let t=C(),n=t.get(e);return n||(n={snapshot:_(e),accumulatedText:"",toolCalls:new Map,toolResults:new Map,toolProgressTimer:null,activeToolId:null,textThrottleTimer:null,textDirty:!1,connectionState:"idle",idleCheckTimer:null},t.set(e,n)),n}function N(e,t){let n=x();return n.set(e,t),()=>{n.get(e)===t&&n.delete(e)}}function D(e){let t=C(),n=t.get(e);n&&(R(n),E(n),I(n)),t.delete(e)}function L(e){let t=C().get(e);t&&(t.snapshot={...t.snapshot,reconnectCount:t.snapshot.reconnectCount+1,lastSyncReason:"sse-reconnect",lastEventAt:Date.now()},S(t,!0))}let U="__annovibeSessionMessageCache__";function P(){let e=globalThis;if(!e[U]){var t;let n={entries:new Map,cleanupTimer:null};e[U]=n,(t=n).cleanupTimer||(t.cleanupTimer=setInterval(()=>{let e=Date.now();for(let[n,r]of t.entries)e-r.loadedAt>72e5&&t.entries.delete(n)},6e4))}return e[U]}function j(e){let t=P(),n=t.entries.get(e);return n?Date.now()-n.loadedAt>72e5?(t.entries.delete(e),null):(n.loadedAt=Date.now(),{...n,messages:[...n.messages],entryIds:[...n.entryIds]}):null}function O(e,t,n,r,a){let o=P(),s=o.entries.get(e);if(!s)return;let l=new Set(s.entryIds),i=[],u=[];for(let e=0;e<t.length;e++){let r=n[e];r&&!l.has(r)&&(i.push(t[e]),u.push(r))}0!==i.length&&o.entries.set(e,{...s,messages:[...i,...s.messages],entryIds:[...u,...s.entryIds],hasMore:r,loadedMessagesCount:a,loadedAt:Date.now()})}function F(e){P().entries.delete(e)}var q=n(14755);function H(e){return{steering:e?.steering??[],followUp:e?.followUp??[]}}let B=[500,1500,3e3];function W(e,t){return new DOMException(e,t)}function J(){return"u">typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,11)}-${Math.random().toString(36).slice(2,11)}`}function K(e,t){return e.trim()||0!==t?`text:${e}|images:${t}`:null}function z(e){return"string"==typeof e?K(e,0):Array.isArray(e)?K(e.filter(e=>!!e&&"object"==typeof e&&"text"===e.type&&"string"==typeof e.text).map(e=>e.text).join("\n"),e.filter(e=>!!e&&"object"==typeof e&&"image"===e.type).length):null}function G(e){let t=new Map;for(let n of e){let e="user"!==n.role?null:z(n.content);e&&t.set(e,(t.get(e)??0)+1)}return t}function V(e,t,n){return e.sessionId===t&&(!e.leafId||n.includes(e.leafId))}function Y(e,t){let n=e.timestamp,r=t.timestamp;if("number"!=typeof n||"number"!=typeof r||n!==r||e.role!==t.role)return!1;try{return JSON.stringify(e)===JSON.stringify(t)}catch{return!1}}function Q(e){let{session:t,newSessionCwd:n,onAgentEnd:l,onSessionCreated:i,onSessionForked:u,modelsRefreshKey:k,onBranchDataChange:v,chatInputRef:b}=e,x=null===t&&null!==n,[M,U]=(0,r.useState)(null),[Q,X]=(0,r.useState)(!x),[Z,ee]=(0,r.useState)(null),[et,en]=(0,r.useState)(null),[er,ea]=(0,r.useState)([]),[eo,es]=(0,r.useState)([]),[el,ei]=(0,r.useState)(0),[eu,ec]=(0,r.useState)(!1),[ed,ep]=(0,r.useState)(0),[em,ef]=(0,r.useReducer)(c,s),[eg,eh]=(0,r.useState)(!1),[ey,ew]=(0,r.useState)({}),[ek,ev]=(0,r.useState)([]),[eb,eC]=(0,r.useState)({}),[ex,e_]=(0,r.useState)({}),[eT,eI]=(0,r.useState)(null),[eS,eM]=(0,r.useState)("full"),[eA,eE]=(0,r.useState)([...q.SN]),[eR,e$]=(0,r.useState)([]),[eN,eD]=(0,r.useState)(null),[eL,eU]=(0,r.useState)(!1),[eP,ej]=(0,r.useState)("auto"),[eO,eF]=(0,r.useState)(null),[eq,eH]=(0,r.useState)(null),[eB,eW]=(0,r.useState)(null),[eJ,eK]=(0,r.useState)(null),[ez,eG]=(0,r.useState)(null),[eV,eY]=(0,r.useState)(null),[eQ,eX]=(0,r.useState)(!1),[eZ,e0]=(0,r.useState)(null),[e1,e3]=(0,r.useState)(null),[e4,e5]=(0,r.useState)(null),[e2,e6]=(0,r.useState)({steering:[],followUp:[]}),[e8,e7]=(0,r.useState)(null),e9=(0,r.useRef)(null),te=(0,r.useRef)(t?.id??null),{statuses:tt,widgets:tn,dialog:tr,notices:ta,applyFromState:to,handleEvent:ts,respond:tl,dismissNotice:ti}=function({chatInputRef:e,sessionIdRef:t,onError:n,noticeTtlMs:a=8e3}){let[o,s]=(0,r.useState)([]),[l,i]=(0,r.useState)([]),[u,c]=(0,r.useState)(null),[d,p]=(0,r.useState)([]),m=(0,r.useRef)(new Set),g=(0,r.useCallback)(()=>{for(let e of m.current)clearTimeout(e);m.current.clear()},[]);(0,r.useEffect)(()=>g,[g]);let h=(0,r.useCallback)((e,t)=>{let n={id:`${Date.now()}-${Math.random().toString(36).slice(2,8)}`,message:e,type:t};p(e=>[...e,n].slice(-4));let r=setTimeout(()=>{m.current.delete(r),p(e=>e.filter(e=>e.id!==n.id))},a);m.current.add(r)},[a]),y=(0,r.useCallback)(e=>{e&&(Array.isArray(e.extensionStatuses)&&s(e.extensionStatuses),Array.isArray(e.extensionWidgets)&&i(e.extensionWidgets))},[]),w=(0,r.useCallback)(t=>{if("extension_error"===t.type)return h("string"==typeof t.error?t.error:"Extension command failed","error"),!0;if("extension_ui_request"!==t.type)return!1;let n="string"==typeof t.method?t.method:"";if("select"===n||"confirm"===n||"input"===n||"editor"===n)return c({id:String(t.id??""),method:n,title:"string"==typeof t.title?t.title:"",...Array.isArray(t.options)?{options:t.options}:{},..."string"==typeof t.message?{message:t.message}:{},..."string"==typeof t.placeholder?{placeholder:t.placeholder}:{},..."string"==typeof t.prefill?{prefill:t.prefill}:{}}),!0;if("notify"===n){let e="warning"===t.notifyType||"error"===t.notifyType?t.notifyType:"info";return h(String(t.message??""),e),!0}if("setStatus"===n){let e=String(t.statusKey??"");if(!e)return!0;let n="string"==typeof t.statusText?t.statusText:null;return s(t=>{let r=t.filter(t=>t.key!==e);return n?[...r,{key:e,text:n}]:r}),!0}if("setWidget"===n){let e=String(t.widgetKey??"");if(!e)return!0;let n=Array.isArray(t.widgetLines)?t.widgetLines.filter(e=>"string"==typeof e):null;return i(r=>{let a=r.filter(t=>t.key!==e);return n&&n.length>0?[...a,{key:e,lines:n,placement:"string"==typeof t.widgetPlacement?t.widgetPlacement:"aboveEditor"}]:a}),!0}return"dismiss"===n?c(e=>e?.id===t.id?null:e):"set_editor_text"===n&&"string"==typeof t.text?e?.current?.setText?.(t.text):"setTitle"===n&&"string"==typeof t.title&&(document.title=t.title),!0},[e,h]),k=(0,r.useCallback)(async(e,r)=>{let a=t.current;if(c(t=>t?.id===e?null:t),a)try{await f(a,{type:"extension_ui_response",id:e,...r})}catch(e){n(e instanceof Error?e.message:String(e))}},[n,t]);return{statuses:o,widgets:l,dialog:u,notices:d,applyFromState:y,handleEvent:w,respond:k,dismissNotice:(0,r.useCallback)(e=>{p(t=>t.filter(t=>t.id!==e))},[]),reset:(0,r.useCallback)(()=>{g(),s([]),i([]),c(null),p([])},[g])}}({chatInputRef:b,sessionIdRef:te,onError:e7}),tu=(0,r.useRef)(!1),tc=(0,r.useRef)(null),td=(0,r.useRef)(null),tp=(0,r.useRef)(null),tm=(0,r.useRef)(!1),tf=(0,r.useRef)(null),tg=(0,r.useRef)(!1),th=(0,r.useRef)(null),ty=(0,r.useRef)(null),tw=(0,r.useRef)(new Map),tk=(0,r.useRef)(new Map),tv=(0,r.useRef)(new Map),tb=(0,r.useRef)(new Map),tC=(0,r.useRef)(null),tx=(0,r.useRef)([]),t_=(0,r.useRef)(null),tT=(0,r.useRef)(0),tI=(0,r.useRef)(!1),tS=(0,r.useRef)(0),tM=(0,r.useRef)(!1),tA=(0,r.useRef)(!1),tE=(0,r.useRef)(0),tR=(0,r.useRef)(null),t$=(0,r.useRef)(null),tN=(0,r.useRef)(0),tD=(0,r.useRef)(!1),tL=(0,r.useRef)(!1),tU=(0,r.useRef)(""),tP=(0,r.useRef)(null);(0,r.useEffect)(()=>{tC.current=et},[et]),(0,r.useEffect)(()=>{tD.current=em.isStreaming},[em.isStreaming]),(0,r.useEffect)(()=>{tb.current.clear()},[t?.id]);let tj=e.setNewSessionModel??eI,tO=e.setToolPreset??eM,tF=e.setMemoryTools??eE,tq=ez??M?.context.model??eV??null,tH=x?eT:tq,tB=(0,r.useCallback)(()=>(0,q.tE)(eS,eA),[eA,eS]),tW=(0,r.useCallback)(e=>e?.length?e.map((e,t)=>{let n=`Attachment ${t+1}: ${e.fileName} (${e.mimeType||"application/octet-stream"}, ${e.size} bytes)`;if(e.extractedText){let t=e.truncated?"\n[The extracted text was truncated before sending.]":"";return`${n}
2
+ ${t}
3
+ ${e.extractedText}`.trim()}return`${n}
4
+ [Text extraction unavailable: ${e.extractionError??"unsupported file type"}]`}).join("\n\n---\n\n"):"",[]),tJ=(0,r.useCallback)(async e=>{let t=await fetch(`/api/agent/${encodeURIComponent(e)}/prepare`,{method:"POST"});if(!t.ok)throw Error((await t.json().catch(()=>({}))).error??`Failed to prepare session (HTTP ${t.status})`)},[]),tK=(()=>{let e={input:0,output:0,cacheRead:0,cacheWrite:0};for(let t of er){if("assistant"!==t.role)continue;let n=t.usage;n&&(e.input+=n.input??0,e.output+=n.output??0,e.cacheRead+=n.cacheRead??0,e.cacheWrite+=n.cacheWrite??0)}return e.input+e.output+e.cacheRead+e.cacheWrite>0?{tokens:e}:null})(),tz=(0,r.useRef)(!1),tG=(0,r.useCallback)(async()=>{let e=te.current;if(!e||tz.current||tM.current)return;tz.current=!0,tI.current=!0;let t=0,n=j(e);t=n?n.loadedMessagesCount:50;try{for(;;)try{let n=await fetch(`/api/sessions/${encodeURIComponent(e)}?limit=100&offset=${t}&deferThinking=1&deferMedia=1`);if(!n.ok)break;let r=await n.json();if(te.current!==e)break;let a=r.context.messages,o=r.context.entryIds??[];if(0===a.length)break;ea(e=>[...a,...e]),es(e=>{let t=[...o,...e];return tx.current=t,t});let s=t+a.length;if(ep(s),tS.current=s,ec(r.hasMore??!1),O(e,a,o,r.hasMore??!1,s),t=s,!r.hasMore)break;await new Promise(e=>setTimeout(e,800))}catch{break}}finally{tz.current=!1,tM.current=!0,tI.current=!1}},[]),tV=(0,r.useCallback)(async(e,t=!1,n=!1,r=!1)=>{var a;let o=null;try{if(t&&X(!0),!n&&!tu.current&&!r){let n=j(e);if(n)return ei(n.totalMessages),ec(n.hasMore),ep(n.loadedMessagesCount),ea(n.messages),tx.current=n.entryIds,es(n.entryIds),tC.current=n.leafId,en(n.leafId),tS.current=n.loadedMessagesCount,t&&X(!1),n.hasMore&&!tM.current&&setTimeout(()=>{tG()},1500),null}let s=n?`/api/sessions/${encodeURIComponent(e)}?includeState&deferThinking=1&deferMedia=1`:`/api/sessions/${encodeURIComponent(e)}?limit=50&offset=0&deferThinking=1&deferMedia=1`,l=t$.current;if(l?.sid===e&&!t)return null;l?.controller.abort(W("Session load superseded","AbortError"));let i=new AbortController;o=i,t$.current={sid:e,controller:i};let u=setTimeout(()=>{i.abort(W("Session load timed out after 30 seconds","TimeoutError"))},3e4),c=await fetch(s,{signal:i.signal}).finally(()=>clearTimeout(u));if(te.current&&te.current!==e)return null;if(404===c.status)return t&&(U(null),tC.current=null,en(null),ea([]),ee(null)),null;if(!c.ok)throw Error(`HTTP ${c.status}`);let d=await c.json();n?(ei(d.totalMessages??d.context.messages.length),ec(!1)):(ei(d.totalMessages??d.context.messages.length),ec(d.hasMore??!1)),ep(d.context.messages.length),U(d),tC.current=d.leafId,en(d.leafId);let m=d.context.messages,f=G(m),g=new Map,h=Date.now();for(let[t,n]of tw.current)if(n.sessionId===e){if(h-n.createdAt>12e4){tw.current.delete(t);continue}if(n.confirmKey){let e=f.get(n.confirmKey)??0,r=g.get(n.confirmKey)??0;e-r>n.confirmCountAtCreate&&(tw.current.delete(t),g.set(n.confirmKey,r+1))}}tk.current=f;let y=d.context.entryIds??[],w=[...tw.current.values()].filter(t=>V(t,e,y)).map(e=>e.message),k=w.length>0?[...m,...w]:m,v=function(e,t,n){if(0===t.size)return e;let r=!1,a=e.map(e=>{let a=p(e);if(!a)return e;let o=t.get(a);return o?n-o.observedAt>5e3||function(e,t){let n=e.timestamp,r=t.timestamp;if("number"!=typeof n||"number"!=typeof r||n!==r||e.role!==t.role)return!1;try{return JSON.stringify(e)===JSON.stringify(t)}catch{return!1}}(o.message,e)?(t.delete(a),e):(r=!0,o.message):e});return r?a:e}(k,tb.current,Date.now()),b=tv.current.get(e);if(b){for(let[e,t]of b)h-t>12e4&&b.delete(e);0===b.size&&tv.current.delete(e)}let C=b?.size?b:null,x=C?new Set(y):null,_=!!C&&!!x&&[...C.keys()].some(e=>!x.has(e));C&&x&&!_&&tv.current.delete(e);let T=v.length;return!n&&(tS.current>T||_)?(ei(d.totalMessages??d.context.messages.length),ec(d.hasMore??!1)):(ea(e=>(function(e,t){if(e.length!==t.length)return t;let n=!1,r=t.map((t,r)=>Y(e[r],t)?e[r]:(n=!0,t));return n?r:e})(e,v)),tx.current=y,es(y),n?tS.current=T:tS.current=Math.max(tS.current,T),a={sessionId:e,leafId:d.leafId,messages:v,entryIds:y,totalMessages:d.totalMessages??d.context.messages.length,hasMore:!n&&(d.hasMore??!1),loadedMessagesCount:d.context.messages.length},P().entries.set(e,{...a,loadedAt:Date.now()})),eG(e=>{if(!e)return null;let t=d.context.model;return t?.provider===e.provider&&t.modelId===e.modelId?null:e}),ee(null),!d.agentState?.state?.thinkingLevel&&d.context.thinkingLevel&&"off"!==d.context.thinkingLevel&&ej(d.context.thinkingLevel),d.agentState??null}catch(e){if(e instanceof DOMException&&("AbortError"===e.name||"TimeoutError"===e.name)||e instanceof Error&&/aborted without reason|AbortError|Session load (?:timed out|superseded)/i.test(e.message))return null;return ee(String(e)),null}finally{o&&t$.current?.controller===o&&(t$.current=null),t&&X(!1)}},[tG]),tY=(0,r.useRef)(!1),tQ=(0,r.useCallback)(async()=>{if(tY.current)return;tY.current=!0;let e=te.current;if(!e){tY.current=!1;return}try{let t=await fetch(`/api/sessions/${encodeURIComponent(e)}?limit=50&offset=${ed}&deferThinking=1&deferMedia=1`);if(!t.ok)return;let n=await t.json(),r=n.context.messages,a=n.context.entryIds??[];ea(e=>[...r,...e]),es(e=>{let t=[...a,...e];return tx.current=t,t}),ep(e=>e+r.length),ec(n.hasMore??!1),O(e,r,a,n.hasMore??!1,ed+r.length)}catch{}finally{tY.current=!1}},[ed]),tX=(0,r.useCallback)(async e=>{let t=te.current;if(!t)return[];let n=tC.current,r=n?`?leafId=${encodeURIComponent(n)}`:"";try{let n=await fetch(`/api/sessions/${encodeURIComponent(t)}/shadowed${r}`);if(!n.ok)return[];let a=await n.json(),o=a.groups?.find(t=>t.compactionEntryId===e);return o?.messages??[]}catch{return[]}},[]),tZ=(0,r.useCallback)(async(e,t)=>{try{let n=t?`/api/sessions/${encodeURIComponent(e)}/context?leafId=${encodeURIComponent(t)}&deferThinking=1&deferMedia=1`:`/api/sessions/${encodeURIComponent(e)}/context?deferThinking=1&deferMedia=1`,r=await fetch(n);if(!r.ok)throw Error(`HTTP ${r.status}`);let a=await r.json(),o=a.context.messages,s=a.context.entryIds??[],l=G(o),i=new Map,u=Date.now();for(let[t,n]of tw.current)if(n.sessionId===e){if(u-n.createdAt>12e4){tw.current.delete(t);continue}if(n.confirmKey){let e=l.get(n.confirmKey)??0,r=i.get(n.confirmKey)??0;e-r>n.confirmCountAtCreate&&(tw.current.delete(t),i.set(n.confirmKey,r+1))}}tk.current=l;let c=[...tw.current.values()].filter(t=>V(t,e,s)).map(e=>e.message);ea(c.length>0?[...o,...c]:o),tx.current=s,es(s)}catch(e){console.error("Failed to load context:",e)}},[]),t0=(0,r.useCallback)(async e=>{try{let t=await f(e,{type:"get_tools"});t&&(tO((0,q.ES)(t)),tF((0,q.IB)(t)))}catch(e){console.error("Failed to load tools:",e)}},[tF,tO]),t1=(0,r.useCallback)(async e=>{try{let t=await f(e,{type:"get_commands"});e$(Array.isArray(t?.commands)?t.commands:[])}catch{e$([])}},[]),t3=(0,r.useCallback)((e,t={})=>{e9.current?.close(),e9.current=null;let n=`/api/agent/${encodeURIComponent(e)}/events${t.replay?"?replay=1":""}`;return!function(e){let t=$(e);if("active"===t.snapshot.phase)return S(t,!0),A(t),t.snapshot;let n=Date.now();t.snapshot={..._(e),phase:"active",startedAt:n,lastEventAt:n,isStreaming:!0,streamingMessage:{role:"assistant",content:[]}},A(t),S(t,!0),t.snapshot}(e),new Promise((r,a)=>{let o=!1,s=!1,l=null,i=e=>{if(!o){if(o=!0,clearTimeout(u),e){l?.close(),e9.current===l&&(e9.current=null),a(e);return}r()}},u=setTimeout(()=>{t.requireConnected?i(Error("Timed out waiting for event stream connection")):i()},t.timeoutMs??3e4);e9.current=l=function(e){let{url:t,onEvent:n,onStateChange:r,onFatalError:a,maxReconnectAttempts:o=1/0,reconnectBaseMs:s=1e3,reconnectMaxMs:l=3e4,autoReconnect:i=!0}=e,u="idle",c=new AbortController,d=0,p=null,m=null,f=!1,g=(e,t)=>{t&&(m=t),n(e,t)},h=e=>{u!==e&&(u=e,r?.(e))},w=()=>{null!==p&&(clearTimeout(p),p=null)},k=()=>{if(f)return;if(!i)return void h("error");if(d>=o){h("error"),a?.(Error(`Max reconnect attempts (${o}) reached`));return}let e=Math.min(l,s*2**d);d+=1,h("connecting"),p=setTimeout(()=>{p=null,v()},e)},v=async()=>{if(!f){w(),c=new AbortController,h("connecting");try{let e=await fetch(t,{signal:c.signal,headers:{Accept:"text/event-stream","Cache-Control":"no-cache",...m?{"Last-Event-ID":m}:{}}});if(!e.ok)throw Error(`HTTP ${e.status}: ${e.statusText}`);let n=e.body;if(!n)throw Error("Response has no readable body");let r=n.getReader();if(h("connected"),d=0,await y(r,g,c.signal),c.signal.aborted)try{await r.cancel()}catch{}r.releaseLock(),h("closed"),!f&&i&&k()}catch(e){if(f||e instanceof DOMException&&"AbortError"===e.name)return void h("closed");h("error"),i&&k()}}};return{get state(){return u},connect:()=>{f=!1,d=0,w(),v()},close:()=>{f=!0,w(),c.abort(),h("closed")},get abortController(){return c}}}({url:n,onEvent:t=>{try{let n=JSON.parse(t);if("connected"===n.type&&i(),te.current!==e)return;tc.current?.(n)}catch{}},onStateChange:t=>{!function(e,t){let n=C().get(e);if(!n)return;let r=n.connectionState;n.connectionState=t,"connected"===t&&"connected"!==r&&(n.snapshot={...n.snapshot,lastEventAt:Date.now(),lastHeartbeatAt:Date.now()},A(n)),"connected"!==t&&"connected"===r&&E(n)}(e,t),"connected"===t&&(s&&(L(e),td.current?.(e,"sse_reconnected")),s=!0)},reconnectBaseMs:1e3,reconnectMaxMs:3e4}),l.connect()})},[]),t4=(0,r.useCallback)(async(e,t="manual")=>{if(!e||te.current!==e)return;let n=tT.current;try{let t=await fetch(`/api/agent/${encodeURIComponent(e)}`),r=await t.json().catch(()=>({}));if(te.current!==e||tT.current!==n)return;r.running?(tu.current=!0,eh(!0),e5(a(r.state)),e9.current&&"closed"!==e9.current.state&&"error"!==e9.current.state||(L(e),t3(e,{replay:!0}))):(tu.current=!1,e9.current?.close(),e9.current=null,D(e),eh(!1),e5(null),eF(null),ef({type:"end"}),F(e),await tV(e,!1,!1,!0)),r.state?.contextUsage!==void 0&&eH(r.state.contextUsage??null),r.state?.systemPrompt!==void 0&&eW(r.state.systemPrompt??null),r.state?.isCompacting!==void 0&&eX(r.state.isCompacting),r.state?.thinkingLevel!==void 0&&ej(r.state.thinkingLevel??"auto"),r.state?.queuedMessages!==void 0&&e6(H(r.state.queuedMessages)),to(r.state),r.state?.isBashRunning&&(tL.current=!0,eU(!0),eh(!0),e5({kind:"running_tools",tools:[{id:"bash",name:"bash"}]}))}catch{}},[t3,tV,to]);(0,r.useEffect)(()=>{td.current=t4},[t4]),(0,r.useEffect)(()=>{tu.current=eg},[eg]),tc.current=(0,r.useCallback)(e=>{let t=te.current;switch(t&&function(e,t){let n=$(e),r=Date.now();switch(t.type){case"agent_start":if("active"===n.snapshot.phase)return S(n,!0),n.snapshot;return R(n),n.accumulatedText="",n.toolCalls.clear(),n.toolResults.clear(),n.activeToolId=null,n.snapshot={..._(e),phase:"active",startedAt:r,lastEventAt:r,isStreaming:!0,streamingMessage:{role:"assistant",content:[]}},A(n),S(n,!0),n.snapshot;case"message_update":{let e=t.message;if(e?.role==="assistant"){let t=e.content;for(let e of Array.isArray(t)?t:[])"object"==typeof e&&null!==e&&"type"in e&&("text"===e.type?n.accumulatedText=e.text??"":"toolCall"===e.type&&e.toolCallId&&!n.toolCalls.has(e.toolCallId)&&n.toolCalls.set(e.toolCallId,{...e,startedAt:r}))}else{let e=t.assistantMessageEvent;e?.type==="text_delta"?n.accumulatedText+=e.delta??"":e?.type==="text_end"?n.accumulatedText=e.content??n.accumulatedText:(e?.type==="toolcall_start"||e?.type==="toolcall_delta")&&e.id&&!n.toolCalls.has(e.id)&&n.toolCalls.set(e.id,{type:"toolCall",toolCallId:e.id,toolName:e.toolName??"tool",input:{},startedAt:r})}return S(n,!1),n.snapshot}case"tool_execution_start":{let e="string"==typeof t.toolCallId?t.toolCallId:"",a="string"==typeof t.toolName?t.toolName:"tool",o=t.input??{};if(!e)return n.snapshot;let s=n.toolCalls.get(e);return n.toolCalls.set(e,{type:"toolCall",toolCallId:e,toolName:a,input:s&&Object.keys(s.input).length>0?s.input:o,startedAt:s?.startedAt??r}),n.activeToolId=e,R(n),n.activeToolId&&(n.toolProgressTimer=setInterval(()=>S(n,!0),1e3)),S(n,!0),n.snapshot}case"tool_execution_end":{let e="string"==typeof t.toolCallId?t.toolCallId:"",a="string"==typeof t.toolName?t.toolName:"tool",o="string"==typeof t.result?t.result:JSON.stringify(t.result??"");if(e){let s=n.toolCalls.get(e);s&&n.toolCalls.set(e,{...s,endedAt:r}),n.toolResults.set(e,{role:"toolResult",toolCallId:e,toolName:a,content:[{type:"text",text:o}],isError:!!t.isError,timestamp:r}),n.activeToolId===e&&(n.activeToolId=null,R(n))}return S(n,!0),n.snapshot}case"message_end":return I(n),S(n,!0),n.snapshot;case"agent_end":{if(I(n),R(n),n.activeToolId=null,!0===t.willRetry)return n.accumulatedText="",n.toolCalls.clear(),n.toolResults.clear(),n.snapshot={...n.snapshot,phase:"active",lastEventAt:r,accumulatedText:"",toolCalls:[],toolResults:[],statusText:null,streamingMessage:null,isStreaming:!0,error:null},A(n),T(e,{type:"snapshot-updated",snapshot:n.snapshot}),n.snapshot;E(n);let a="string"==typeof t.error?t.error:null;return n.snapshot={...n.snapshot,phase:a?"error":"completed",isStreaming:!1,streamingMessage:null,statusText:null,error:a},T(e,a?{type:"error",snapshot:n.snapshot}:{type:"completed",snapshot:n.snapshot}),n.snapshot}case"heartbeat":return n.snapshot={...n.snapshot,lastHeartbeatAt:r},n.snapshot;default:return n.snapshot}}(t,e),"heartbeat"!==e.type&&(tN.current=Date.now()),e.type){case"prompt_admitted":case"agent_start":e7(null),tu.current=!0,eh(!0),e5({kind:"waiting_model"}),ef({type:"start"});break;case"agent_end":if(!0===e.willRetry){tu.current=!0,eh(!0),e5({kind:"waiting_model"});break}if(tu.current=!1,eh(!1),e5(null),eF(null),ef({type:"end"}),t){tR.current&&clearTimeout(tR.current);let e=tT.current,n=0,r=async()=>{if(te.current!==t||tu.current||tT.current!==e)return;F(t),await tV(t,!1,!1,!0);let a=B[n++];void 0===a||te.current!==t||tu.current||tT.current!==e||(tR.current=setTimeout(()=>{tR.current=null,r()},a))};r(),fetch(`/api/agent/${encodeURIComponent(t)}`).then(e=>e.json()).then(e=>{e.state?.contextUsage!==void 0&&eH(e.state.contextUsage??null),e.state?.systemPrompt!==void 0&&eW(e.state.systemPrompt??null),e.state?.isCompacting!==void 0&&eX(e.state.isCompacting)}).catch(()=>{})}l?.();break;case"agent_settled":e5(null),eF(null),tu.current&&(tu.current=!1,eh(!1),ef({type:"end"}));break;case"message_start":case"message_update":{let t=e.message;if(t?.role==="user")break;tu.current||(tu.current=!0,eh(!0),e5({kind:"waiting_model"}));let n=e.assistantMessageEvent;t?.role==="assistant"?ef({type:"snapshot",message:o(t)}):n&&ef({type:"delta",event:n}),e5(null);break}case"message_end":{let n=e.message,r="string"==typeof e.__entryId?e.__entryId:null,a=tu.current;if(n&&"user"!==n.role){"assistant"===n.role&&"error"===n.stopReason&&n.errorMessage?.trim()&&e7(`Model response failed: ${n.errorMessage.trim()}`);let e=o(n),a=p(e);if(a&&tb.current.set(a,{observedAt:Date.now(),message:e}),!(r&&tx.current.includes(r))){if(t&&r){let e=tv.current.get(t)??new Map;e.set(r,Date.now()),tv.current.set(t,e)}ea(t=>t.some(t=>Y(t,e))?t:[...t,e]),r&&es(e=>{if(e.includes(r))return e;let t=[...e,r];return tx.current=t,t})}}a&&(ef({type:"reset"}),e5({kind:"waiting_model"}));break}case"replay_gap":t&&(F(t),tV(t,!1,!1,!0));break;case"prompt_done":if(!tu.current)break;t4(te.current??"","prompt_done");break;case"prompt_error":{let n="string"==typeof e.error&&e.error.trim()?e.error.trim():"The model request failed before producing a response.";if(tu.current=!1,eh(!1),e5(null),eF(null),ef({type:"end"}),e9.current?.close(),e9.current=null,t){for(let[e,n]of(D(t),tw.current))n.sessionId===t&&"prompt"===n.kind&&tw.current.delete(e);F(t),tV(t,!1,!1,!0)}e7(`Model request failed: ${n}`),l?.();break}case"tool_execution_start":{let t=e.toolCallId,n=e.toolName,r=e.args,a="bash"===n&&"string"==typeof r?.command?r.command:void 0;e5(e=>{let r=e?.kind==="running_tools"?[...e.tools]:[];return r.some(e=>e.id===t)||r.push({id:t,name:n,args:a}),{kind:"running_tools",tools:r}});break}case"tool_execution_update":{let t=e.toolCallId,n=e.toolName,r=function(e){if(!d(e))return null;let t=e.content;if(!Array.isArray(t))return null;let n=t.filter(e=>d(e)&&"text"===e.type&&"string"==typeof e.text).map(e=>e.text).join("\n").split(/\r?\n/),r="";for(let e=n.length-1;e>=0&&!(r=n[e].trim());e-=1);if(!r)return null;let a=r.replace(/\s+/g," ");return a.length<=500?a:`...${a.slice(-497)}`}(e.partialResult);if(!t)break;e5(e=>{let a=e?.kind==="running_tools"?[...e.tools]:[],o=a.find(e=>e.id===t),s={id:t,name:n||o?.name||"tool",args:o?.args,progress:r??o?.progress};return{kind:"running_tools",tools:[...a.filter(e=>e.id!==t),s]}});break}case"tool_execution_end":{let t=e.toolCallId;e5(e=>{if(e?.kind!=="running_tools")return e;let n=e.tools.filter(e=>e.id!==t);return 0===n.length?{kind:"waiting_model"}:{kind:"running_tools",tools:n}});break}case"extension_ui_request":case"extension_error":ts(e);break;case"bash_execution_start":{let t=String(e.command??"");tL.current=!0,eU(!0),eD({command:t,output:""}),eh(!0),e5({kind:"running_tools",tools:[{id:"bash",name:"bash",args:t}]});break}case"bash_execution_update":{let t="string"==typeof e.chunk?e.chunk:"";if(!t)break;tU.current+=t,tP.current||(tP.current=setTimeout(()=>{tP.current=null;let e=tU.current;tU.current="",e&&eD(t=>t?{...t,output:t.output+e}:t)},60));break}case"bash_done":{tP.current&&(clearTimeout(tP.current),tP.current=null),tU.current="",tL.current=!1,eU(!1),eD(null),eh(!1),e5(null);let e=te.current;e&&(F(e),tV(e,!1,!1,!0));break}case"queue_update":e6(H({steering:Array.isArray(e.steering)?e.steering:[],followUp:Array.isArray(e.followUp)?e.followUp:[]}));break;case"auto_retry_start":e7(null),tu.current=!0,eh(!0),e5({kind:"waiting_model"}),eF({attempt:e.attempt,maxAttempts:e.maxAttempts,errorMessage:e.errorMessage});break;case"auto_retry_end":eF(null),!1===e.success&&"string"==typeof e.finalError&&e.finalError.trim()?e7(`Model response failed after retries: ${e.finalError.trim()}`):!0===e.success&&e7(null);break;case"auto_compaction_start":case"compaction_start":eX(!0),e0(null);break;case"auto_compaction_end":case"compaction_end":eX(!1),e.errorMessage?e0(e.errorMessage):!e.aborted&&te.current&&tV(te.current)}},[tV,l,t4,ts]);let t5=(0,r.useCallback)(async(e,r,a,o)=>{if(!e.trim()&&!r?.length&&!a?.length||eg)return;tT.current+=1;let s=tW(a),l=e.trim()?s?`${e}
5
+
6
+ Attached document text:
7
+
8
+ ${s}`:e:s?`Attached document text:
9
+
10
+ ${s}`:"",u=[],c=x?n:t?.cwd??M?.info?.cwd;if(r?.length&&c)try{u=await h(c,r)}catch(e){e7(e instanceof Error?e.message:String(e));return}let d=u.length?u.map(e=>{var t;return{type:"image",path:e.path,mimeType:e.mimeType,name:e.name,source:{type:"url",url:(t=e.path,`/api/files/${(0,g.HG)(t)}?type=read`),media_type:e.mimeType}}}):r?.map(e=>({type:"image",source:{type:"base64",media_type:e.mimeType,data:e.data}})),p={role:"user",content:d?.length?[...l.trim()?[{type:"text",text:l}]:[],...d]:l,timestamp:Date.now()},y=J(),w=x?null:t?.id??null;w&&F(w);let k=tC.current,v=z(p.content);tw.current.set(y,{localId:y,sessionId:w??"__new__",leafId:k,message:p,createdAt:Date.now(),kind:"prompt",confirmKey:v,confirmCountAtCreate:x?0:v?tk.current.get(v)??0:0}),ea(e=>[...e,p]),e7(null),tu.current=!0,eh(!0),e5({kind:"waiting_model"}),ef({type:"start"}),tg.current=!0;let C=ek.find(e=>e.provider===tq?.provider&&e.id===tq?.modelId)?.input,_=!C||0===C.length||C.includes("image")?r?.map(e=>({type:"image",data:e.data,mimeType:e.mimeType})):void 0;try{if(x&&n){eT&&eY(eT);let t=o??tB(),r=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:n,type:"prompt",message:l,toolNames:t,deferPrompt:!0,..._?.length?{images:_}:{},...eT?{provider:eT.provider,modelId:eT.modelId}:{},..."auto"!==eP?{thinkingLevel:eP}:{}})}),a=await r.json().catch(()=>({}));if(!r.ok||a.error||!a.sessionId)throw Error(a.error??`HTTP ${r.status}`);let s=a.sessionId;te.current=s;let u=tw.current.get(y);u&&(u.sessionId=s),tp.current?.(),tp.current=N(s,()=>{te.current===s&&(eh(!1),e5(null))}),t_.current=s,await t3(s,{requireConnected:!0,timeoutMs:1e4}),await f(s,{type:"prompt",message:l,toolNames:t,..._?.length?{images:_}:{}}),i?.({id:s,path:"",cwd:n,name:void 0,created:new Date().toISOString(),modified:new Date().toISOString(),messageCount:1,firstMessage:e})}else if(t){let e=o??tB();await tJ(t.id),tp.current?.(),tp.current=N(t.id,()=>{te.current===t.id&&(eh(!1),e5(null))}),await t3(t.id,{requireConnected:!0,timeoutMs:1e4}),await f(t.id,{type:"prompt",message:l,toolNames:e,leafId:k,...tq?{provider:tq.provider,modelId:tq.modelId}:{},..."auto"!==eP?{thinkingLevel:eP}:{},..._?.length?{images:_}:{}})}}catch(n){let t=te.current;if(tw.current.delete(y),ea(e=>e.filter(e=>e!==p)),n instanceof m&&(409===n.status||"SESSION_BUSY"===n.code)){e7("This session is already running in another tab. Showing that active run instead."),tu.current=!0,eh(!0),e5({kind:"waiting_model"}),ef({type:"start"}),t&&(e9.current?.close(),e9.current=null,L(t),t3(t,{replay:!0}),td.current?.(t,"prompt_conflict"));return}if(console.error("Failed to send message:",n),x&&te.current){let e=te.current;te.current=null,t_.current=null,fetch(`/api/sessions/${encodeURIComponent(e)}`,{method:"DELETE"}).catch(()=>{})}b?.current&&e.trim()&&b.current.insertIfEmpty(e),b?.current&&r?.length&&b.current.addBase64Images?.(r.map(({data:e,mimeType:t})=>({data:e,mimeType:t}))),e7(n instanceof Error?n.message:String(n)),e9.current?.close(),e9.current=null,t&&D(t),tu.current=!1,eh(!1),e5(null),ef({type:"end"})}},[x,n,eT,tB,eP,t,M?.info?.cwd,eg,t3,i,tW,ek,tq,tJ,b]),t2=(0,r.useCallback)(async()=>{let e=te.current;if(!e)return;let t=tL.current;tu.current=!1,eU(!1),eD(null),e7(null),eh(!1),e5(null),ef({type:"end"}),e9.current?.close(),e9.current=null,D(e),F(e);try{await f(e,{type:t?"abort_bash":"abort"}),await tV(e,!1,!1,!0)}catch(t){console.error("Failed to abort:",t),await tV(e,!1,!1,!0)}finally{t&&(tL.current=!1,eU(!1),eD(null))}},[tV]),t6=(0,r.useCallback)(async(e,t)=>{let n=te.current,r=e.trim();if(n&&r){tL.current=!0,eU(!0),e7(null),eD({command:r,output:""}),tu.current=!0,eh(!0),e5({kind:"running_tools",tools:[{id:"bash",name:"bash",args:r}]});try{await f(n,{type:"bash",command:r,excludeFromContext:t})}catch(e){e7(e instanceof Error?e.message:String(e))}finally{tP.current&&(clearTimeout(tP.current),tP.current=null),tU.current="",tL.current=!1,eU(!1),eD(null),tu.current=!1,eh(!1),e5(null),F(n),await tV(n,!1,!1,!0)}}},[tV]),t8=(0,r.useCallback)(async e=>{let t=te.current;if(t){eK(e);try{let{cancelled:n,newSessionId:r}=await f(t,{type:"fork",entryId:e})??{};!n&&r&&u?.(r)}catch(e){console.error("Fork failed:",e)}finally{eK(null)}}},[u]),t7=(0,r.useCallback)(async e=>{let r=te.current,a=M?.info?.cwd??t?.cwd??n??null;if(!r||!a)return{ok:!1,error:"No active session to fork"};if(tu.current)return{ok:!1,error:"Agent is still running"};try{let t=tB(),n=await fetch("/api/agent/new",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({cwd:a,type:"prompt",parentSessionId:r,deferPrompt:!0,toolNames:t,...tq?{provider:tq.provider,modelId:tq.modelId}:{},..."auto"!==eP?{thinkingLevel:eP}:{}})}),o=await n.json().catch(()=>({}));if(!n.ok||o.error||!o.sessionId)return{ok:!1,error:o.error??`HTTP ${n.status}`};let s=o.sessionId;try{await f(s,{type:"append_message",message:e,customType:"fork_handoff",display:!0})}catch{}return i?.({id:s,path:"",cwd:a,created:new Date().toISOString(),modified:new Date().toISOString(),messageCount:1,firstMessage:e.slice(0,120),parentSessionId:r}),{ok:!0}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}},[M?.info?.cwd,t?.cwd,n,tq,eP,tB,i]),t9=(0,r.useCallback)(async e=>{let t=te.current;t&&(tv.current.delete(t),F(t),tC.current=e,en(e),await tZ(t,e))},[tZ]),ne=(0,r.useCallback)(async e=>{tC.current=e,en(e);let t=te.current;t&&(tv.current.delete(t),F(t),await tZ(t,e))},[tZ]),nt=(0,r.useCallback)(async(e,t)=>{if(x)return void tj({provider:e,modelId:t});let n=te.current;if(n)try{var r;e7(null);let a=await f(n,{type:"set_model",provider:e,modelId:t}),o={provider:a.provider,modelId:a.id};a.thinkingLevel&&(r=a.thinkingLevel,"auto"===r||"off"===r||"minimal"===r||"low"===r||"medium"===r||"high"===r||"xhigh"===r)&&ej(a.thinkingLevel),eG(o),U(e=>e?{...e,context:{...e.context,model:o}}:e)}catch(t){let e=t instanceof Error?t.message:String(t);console.error("Failed to set model:",t),e7(e)}},[x,tj]),nn=(0,r.useCallback)(async()=>{let e=te.current;if(e&&!eQ){eX(!0),e0(null),e3(null);try{let t=await f(e,{type:"compact"});t?.reducedBy!=null&&e3(`Compacted ~${t.tokensBefore??"?"} → ~${t.tokensAfter??"?"} tokens (−${t.reducedBy})`),await tV(e,!0)}catch(e){e0(e instanceof Error?e.message:String(e))}finally{eX(!1)}}},[eQ,tV]),nr=(0,r.useCallback)(async(e,t,n)=>{let r=te.current;if(!r)return;F(r);let a=tW(n),o=e.trim()?a?`${e}
11
+
12
+ Attached document text:
13
+
14
+ ${a}`:e:a?`Attached document text:
15
+
16
+ ${a}`:"",s=ek.find(e=>e.provider===tq?.provider&&e.id===tq?.modelId)?.input,l=!s||0===s.length||s.includes("image")?t?.map(e=>({type:"image",data:e.data,mimeType:e.mimeType})):void 0,i={role:"user",content:`[steer] ${o}`,timestamp:Date.now()},u=J(),c=K(o,l?.length??0);tw.current.set(u,{localId:u,sessionId:r,leafId:tC.current,message:i,createdAt:Date.now(),kind:"steer",confirmKey:c,confirmCountAtCreate:c?tk.current.get(c)??0:0}),ea(e=>[...e,i]);try{await f(r,{type:"steer",message:o,...l?.length?{images:l}:{}})}catch(e){tw.current.delete(u),console.error("Failed to steer:",e)}},[tW,ek,tq]),na=(0,r.useCallback)(async(e,t,n)=>{let r=te.current;if(!r)return;F(r);let a=tW(n),o=e.trim()?a?`${e}
17
+
18
+ Attached document text:
19
+
20
+ ${a}`:e:a?`Attached document text:
21
+
22
+ ${a}`:"",s=ek.find(e=>e.provider===tq?.provider&&e.id===tq?.modelId)?.input,l=!s||0===s.length||s.includes("image")?t?.map(e=>({type:"image",data:e.data,mimeType:e.mimeType})):void 0,i={role:"user",content:o,timestamp:Date.now()},u=J(),c=K(o,l?.length??0);tw.current.set(u,{localId:u,sessionId:r,leafId:tC.current,message:i,createdAt:Date.now(),kind:"follow_up",confirmKey:c,confirmCountAtCreate:c?tk.current.get(c)??0:0}),ea(e=>[...e,i]);try{await f(r,{type:"follow_up",message:o,...l?.length?{images:l}:{}})}catch(e){tw.current.delete(u),console.error("Failed to follow up:",e)}},[tW,ek,tq]),no=(0,r.useCallback)(async()=>{let e=te.current;if(e)try{await f(e,{type:"abort_compaction"})}catch(e){console.error("Failed to abort compaction:",e)}},[]),ns=(0,r.useCallback)(async e=>{if(ej(e),"auto"===e)return;let t=te.current;if(t)try{await f(t,{type:"set_thinking_level",level:e})}catch(e){console.error("Failed to set thinking level:",e)}},[]),nl=(0,r.useCallback)(async e=>{tO(e);let t=(0,q.tE)(e,eA),n=te.current;if(n)try{await f(n,{type:"set_tools",toolNames:t})}catch(e){console.error("Failed to set tools:",e)}},[eA,tO]),ni=(0,r.useCallback)(async e=>{tF(e);let t=(0,q.tE)(eS,e),n=te.current;if(n)try{await f(n,{type:"set_tools",toolNames:t})}catch(e){console.error("Failed to set memory tools:",e)}},[tF,eS]),nu=(0,r.useCallback)((e="smooth")=>{th.current?.scrollIntoView({behavior:e})},[]),nc=(0,r.useCallback)(()=>{let e=ty.current,t=tf.current;if(!e||!t)return;let n=t.getBoundingClientRect().top-e.getBoundingClientRect().top+e.scrollTop;e.scrollTo({top:n-16,behavior:"smooth"})},[]);(0,r.useEffect)(()=>{if(t){var e;let n;if(te.current=t.id,t.id===t_.current)return t_.current=null,()=>{tR.current&&clearTimeout(tR.current),tR.current=null,e9.current?.close(),e9.current=null,tp.current?.(),tp.current=null};tM.current=!1,tS.current=0;let r=(e=t.id,(n=C().get(e))&&"idle"!==n.snapshot.phase?n.snapshot:null);r?.phase==="active"&&(tu.current=!0,eh(!0),e5({kind:"waiting_model"}),ef({type:"start"})),(async()=>{let e=await tV(t.id,!0,!0,!0);te.current===t.id&&(await t0(t.id),t1(t.id),e?.running?(tu.current=!0,eh(!0),e5(a(e.state)),ef({type:"start"}),t3(t.id,{replay:!0}),tp.current?.(),tp.current=N(t.id,()=>{te.current===t.id&&td.current?.(t.id,"stream_watchdog")})):e&&r?.phase==="active"?(tu.current=!1,eh(!1),e5(null),ef({type:"end"}),D(t.id)):e||r?.phase!=="active"||td.current?.(t.id,"mount_state_load_failed"),e?.state&&(void 0!==e.state.isCompacting&&eX(e.state.isCompacting),void 0!==e.state.contextUsage&&eH(e.state.contextUsage??null),void 0!==e.state.systemPrompt&&eW(e.state.systemPrompt??null),void 0!==e.state.queuedMessages&&e6(H(e.state.queuedMessages)),to(e.state),e.state.isBashRunning&&(tL.current=!0,eU(!0),eh(!0),e5({kind:"running_tools",tools:[{id:"bash",name:"bash"}]})),void 0!==e.state.thinkingLevel&&ej(e.state.thinkingLevel??"auto")),e&&!tu.current&&e.state?.contextUsage===void 0&&td.current?.(t.id,"mount_context_usage"))})()}return()=>{t_.current&&te.current===t_.current||(tR.current&&clearTimeout(tR.current),tR.current=null,t$.current?.controller.abort(W("Session changed","AbortError")),t$.current=null,e9.current?.close(),e9.current=null,tp.current?.(),tp.current=null)}},[t3,tV,t0,t1,v,t,to]),(0,r.useEffect)(()=>{let e=()=>{let e=te.current;e&&t4(e,"foreground")},t=()=>{"visible"===document.visibilityState&&e()};return document.addEventListener("visibilitychange",t),window.addEventListener("focus",e),window.addEventListener("online",e),()=>{document.removeEventListener("visibilitychange",t),window.removeEventListener("focus",e),window.removeEventListener("online",e)}},[t4]),(0,r.useEffect)(()=>{let e=te.current;if(e)return tA.current=!1,(0,w.O)(t=>{let n=t.includes(e),r=tA.current;tA.current=n,n&&!tu.current?(F(e),t4(e,"running_feed_start")):!n&&r&&(F(e),tu.current?t4(e,"running_feed_stop"):tV(e,!1,!1,!0))})},[tV,t4,t?.id]),(0,r.useEffect)(()=>{let e=window.setInterval(()=>{let e=te.current;e&&(tu.current?(t4(e,"interval"),tD.current&&Date.now()-tN.current>25e3&&(tN.current=Date.now(),F(e),tV(e,!1,!1,!0))):Date.now()-tE.current>=3e4?(tE.current=Date.now(),F(e),tV(e,!1,!1,!0)):tV(e))},15e3);return()=>window.clearInterval(e)},[tV,t4]),(0,r.useEffect)(()=>{v&&v(M?.tree??[],et,ne)},[M?.tree,et,ne,v]),(0,r.useEffect)(()=>{er.length>0&&!tI.current&&(tg.current?(tg.current=!1,tm.current=!0,nc()):tm.current?tu.current||nu("smooth"):(tm.current=!0,nu("instant")))},[er.length,eg,nu,nc]),(0,r.useEffect)(()=>{fetch("/api/models").then(e=>e.json()).then(e=>{if(ew(e.models),e.thinkingLevels&&eC(e.thinkingLevels),e.thinkingLevelMaps&&e_(e.thinkingLevelMaps),e.modelList&&(ev(e.modelList),x&&e.modelList.length>0)){let t=e.defaultModel,n=t&&e.modelList.find(e=>e.id===t.modelId&&e.provider===t.provider);tj(n?{provider:n.provider,modelId:n.id}:{provider:e.modelList[0].provider,modelId:e.modelList[0].id})}}).catch(()=>{})},[x,k,tj]),(0,r.useEffect)(()=>{if(!eZ)return;let e=setTimeout(()=>e0(null),3e3);return()=>clearTimeout(e)},[eZ]),(0,r.useEffect)(()=>{if(!e1)return;let e=setTimeout(()=>e3(null),6e3);return()=>clearTimeout(e)},[e1]);let nd=(0,r.useCallback)(async()=>{let e=te.current;if(e)try{await f(e,{type:"clear_queue"}),e6({steering:[],followUp:[]})}catch(e){e7(e instanceof Error?e.message:String(e))}},[]);return{data:M,loading:Q,error:Z,activeLeafId:et,messages:er,entryIds:eo,streamState:em,agentRunning:eg,modelNames:ey,modelList:ek,modelThinkingLevels:eb,modelThinkingLevelMaps:ex,newSessionModel:eT,toolPreset:eS,memoryTools:eA,thinkingLevel:eP,retryInfo:eO,queuedMessages:e2,extensionStatuses:tt,extensionWidgets:tn,extensionDialog:tr,extensionNotices:ta,bashLive:eN,bashRunning:eL,contextUsage:eq,systemPrompt:eB,forkingEntryId:eJ,isCompacting:eQ,compactError:eZ,compactInfo:e1,currentModel:tq,displayModel:tH,sessionStats:tK,agentPhase:e4,agentError:e8,isNew:x,sessionIdRef:te,sseReaderRef:e9,messagesEndRef:th,scrollContainerRef:ty,lastUserMsgRef:tf,pendingScrollToUserRef:tg,initialScrollDoneRef:tm,handleSend:t5,handleAbort:t2,handleFork:t8,handleNavigate:t9,handleModelChange:nt,handleCompact:nn,handleSteer:nr,handleFollowUp:na,handleAbortCompaction:no,handleToolPresetChange:nl,handleMemoryToolsChange:ni,handleThinkingLevelChange:ns,handleClearQueue:nd,handleBash:t6,respondToExtensionUi:tl,dismissExtensionNotice:ti,loadTools:t0,loadSlashCommands:t1,slashCommands:eR,setActiveLeafId:en,setData:U,setMessages:ea,dispatch:ef,setAgentRunning:eh,setForkingEntryId:eK,forkToNewSession:t7,loadMoreMessages:tQ,hasMoreMessages:eu,totalMessages:el,loadedMessagesCount:ed,loadShadowedMessages:tX,handleAgentEventRef:tc}}},14755:(e,t,n)=>{n.d(t,{ES:()=>d,IB:()=>p,SN:()=>a,tE:()=>m});let r="subagent",a=["retain","recall","reflect"],o=[],s=["read","bash","edit","write"],l=["bash","read","edit","write","grep","find","ls"],i=[...l,"kernel_plot_run","kernel_plot_render","kernel_plot_inspect","kernel_plot_stop","kernel_plot_artifacts"],u=[...l,r];function c(e){return[...e].sort().join(",")}function d(e){let t=e.filter(e=>e.active).map(e=>e.name),n=t.filter(e=>!a.includes(e)),o=c(t),d=c(n);return""===o?"none":o===c(s)?"default":o===c(l)?"full":o===c(i)?"workbench":o===c(u)?"agent":""===d?"none":d===c(s)?"default":d===c(l)?"full":d===c(i)?"workbench":d===c(u)||t.includes(r)?"agent":"default"}function p(e){return a.filter(t=>e.some(e=>e.active&&e.name===t))}function m(e,t){return[...new Set([...function(e){switch(e){case"none":return o;case"default":return s;case"workbench":return i;case"agent":return u;default:return l}}(e),...t])]}},16865:(e,t,n)=>{n.d(t,{O:()=>w});let r=new Set,a=null,o=null,s=null,l=null,i=null,u=!1,c=!1;function d(e){for(let t of(a=[...new Set(e.filter(e=>"string"==typeof e))],r))try{t(a)}catch{}}async function p(){try{let e=await fetch("/api/agent/running",{cache:"no-store"});if(!e.ok)return;let t=await e.json();Array.isArray(t.runningSessionIds)&&d(t.runningSessionIds)}catch{}}function m(){s||0===r.size||(p(),s=setInterval(()=>{p()},5e3))}function f(){s&&(clearInterval(s),s=null)}function g(){if(!u){if(u=!0,window.__annovibeRunningSessionSubscribe){i=window.__annovibeRunningSessionSubscribe(d);return}if("u"<typeof SharedWorker)return void m();try{(o=new SharedWorker("/running-session-worker.js?v=1",{name:"annovibe-running-sessions-v1",type:"classic"})).port.onmessage=e=>{let t=e.data;"transport"===t.type?m():"running"===t.type&&Array.isArray(t.runningSessionIds)&&(l&&clearTimeout(l),l=null,f(),d(t.runningSessionIds.filter(e=>"string"==typeof e)))},o.onerror=()=>m(),o.port.start(),o.port.postMessage({type:"subscribe"}),l=setTimeout(()=>m(),3e3)}catch{o=null,m()}}}function h(){if(u){if(u=!1,l&&clearTimeout(l),l=null,f(),i?.(),i=null,o){try{o.port.postMessage({type:"disconnect"})}catch{}try{o.port.close()}catch{}}o=null,a=null}}function y(){r.size>0&&g()}function w(e){return r.add(e),a&&e(a),c||(c=!0,window.addEventListener("pagehide",h),window.addEventListener("pageshow",y)),g(),()=>{r.delete(e),0===r.size&&(h(),c&&(c=!1,window.removeEventListener("pagehide",h),window.removeEventListener("pageshow",y)))}}}}]);
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2619],{92619:t=>{var r={872:function(t,r){"use strict";r.byteLength=function(t){var r=s(t),e=r[0],n=r[1];return(e+n)*3/4-n},r.toByteArray=function(t){var r,e,i=s(t),f=i[0],u=i[1],h=new o((f+u)*3/4-u),a=0,p=u>0?f-4:f;for(e=0;e<p;e+=4)r=n[t.charCodeAt(e)]<<18|n[t.charCodeAt(e+1)]<<12|n[t.charCodeAt(e+2)]<<6|n[t.charCodeAt(e+3)],h[a++]=r>>16&255,h[a++]=r>>8&255,h[a++]=255&r;return 2===u&&(r=n[t.charCodeAt(e)]<<2|n[t.charCodeAt(e+1)]>>4,h[a++]=255&r),1===u&&(r=n[t.charCodeAt(e)]<<10|n[t.charCodeAt(e+1)]<<4|n[t.charCodeAt(e+2)]>>2,h[a++]=r>>8&255,h[a++]=255&r),h},r.fromByteArray=function(t){for(var r,n=t.length,o=n%3,i=[],f=0,u=n-o;f<u;f+=16383)i.push(function(t,r,n){for(var o,i=[],f=r;f<n;f+=3)o=(t[f]<<16&0xff0000)+(t[f+1]<<8&65280)+(255&t[f+2]),i.push(e[o>>18&63]+e[o>>12&63]+e[o>>6&63]+e[63&o]);return i.join("")}(t,f,f+16383>u?u:f+16383));return 1===o?i.push(e[(r=t[n-1])>>2]+e[r<<4&63]+"=="):2===o&&i.push(e[(r=(t[n-2]<<8)+t[n-1])>>10]+e[r>>4&63]+e[r<<2&63]+"="),i.join("")};for(var e=[],n=[],o="u">typeof Uint8Array?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f=0,u=i.length;f<u;++f)e[f]=i[f],n[i.charCodeAt(f)]=f;function s(t){var r=t.length;if(r%4>0)throw Error("Invalid string. Length must be a multiple of 4");var e=t.indexOf("=");-1===e&&(e=r);var n=e===r?0:4-e%4;return[e,n]}n[45]=62,n[95]=63},230:function(t,r,e){"use strict";var n=e(872),o=e(321),i="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;function f(t){if(t>0x7fffffff)throw RangeError('The value "'+t+'" is invalid for option "size"');var r=new Uint8Array(t);return Object.setPrototypeOf(r,u.prototype),r}function u(t,r,e){if("number"==typeof t){if("string"==typeof r)throw TypeError('The "string" argument must be of type string. Received type number');return a(t)}return s(t,r,e)}function s(t,r,e){if("string"==typeof t){var n=t,o=r;if(("string"!=typeof o||""===o)&&(o="utf8"),!u.isEncoding(o))throw TypeError("Unknown encoding: "+o);var i=0|l(n,o),s=f(i),h=s.write(n,o);return h!==i&&(s=s.slice(0,h)),s}if(ArrayBuffer.isView(t))return p(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(C(t,ArrayBuffer)||t&&C(t.buffer,ArrayBuffer)||"u">typeof SharedArrayBuffer&&(C(t,SharedArrayBuffer)||t&&C(t.buffer,SharedArrayBuffer)))return function(t,r,e){var n;if(r<0||t.byteLength<r)throw RangeError('"offset" is outside of buffer bounds');if(t.byteLength<r+(e||0))throw RangeError('"length" is outside of buffer bounds');return Object.setPrototypeOf(n=void 0===r&&void 0===e?new Uint8Array(t):void 0===e?new Uint8Array(t,r):new Uint8Array(t,r,e),u.prototype),n}(t,r,e);if("number"==typeof t)throw TypeError('The "value" argument must not be of type number. Received type number');var a=t.valueOf&&t.valueOf();if(null!=a&&a!==t)return u.from(a,r,e);var y=function(t){if(u.isBuffer(t)){var r=0|c(t.length),e=f(r);return 0===e.length||t.copy(e,0,0,r),e}return void 0!==t.length?"number"!=typeof t.length||function(t){return t!=t}(t.length)?f(0):p(t):"Buffer"===t.type&&Array.isArray(t.data)?p(t.data):void 0}(t);if(y)return y;if("u">typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return u.from(t[Symbol.toPrimitive]("string"),r,e);throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function h(t){if("number"!=typeof t)throw TypeError('"size" argument must be of type number');if(t<0)throw RangeError('The value "'+t+'" is invalid for option "size"')}function a(t){return h(t),f(t<0?0:0|c(t))}function p(t){for(var r=t.length<0?0:0|c(t.length),e=f(r),n=0;n<r;n+=1)e[n]=255&t[n];return e}r.Buffer=u,r.SlowBuffer=function(t){return+t!=t&&(t=0),u.alloc(+t)},r.INSPECT_MAX_BYTES=50,r.kMaxLength=0x7fffffff,u.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1),r={foo:function(){return 42}};return Object.setPrototypeOf(r,Uint8Array.prototype),Object.setPrototypeOf(t,r),42===t.foo()}catch(t){return!1}}(),!u.TYPED_ARRAY_SUPPORT&&"u">typeof console&&"function"==typeof console.error&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(u.prototype,"parent",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.buffer}}),Object.defineProperty(u.prototype,"offset",{enumerable:!0,get:function(){if(u.isBuffer(this))return this.byteOffset}}),u.poolSize=8192,u.from=function(t,r,e){return s(t,r,e)},Object.setPrototypeOf(u.prototype,Uint8Array.prototype),Object.setPrototypeOf(u,Uint8Array),u.alloc=function(t,r,e){return(h(t),t<=0)?f(t):void 0!==r?"string"==typeof e?f(t).fill(r,e):f(t).fill(r):f(t)},u.allocUnsafe=function(t){return a(t)},u.allocUnsafeSlow=function(t){return a(t)};function c(t){if(t>=0x7fffffff)throw RangeError("Attempt to allocate Buffer larger than maximum size: 0x7fffffff bytes");return 0|t}function l(t,r){if(u.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||C(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof t);var e=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===e)return 0;for(var o=!1;;)switch(r){case"ascii":case"latin1":case"binary":return e;case"utf8":case"utf-8":return x(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*e;case"hex":return e>>>1;case"base64":return I(t).length;default:if(o)return n?-1:x(t).length;r=(""+r).toLowerCase(),o=!0}}function y(t,r,e){var o,i,f,u=!1;if((void 0===r||r<0)&&(r=0),r>this.length||((void 0===e||e>this.length)&&(e=this.length),e<=0||(e>>>=0)<=(r>>>=0)))return"";for(t||(t="utf8");;)switch(t){case"hex":return function(t,r,e){var n=t.length;(!r||r<0)&&(r=0),(!e||e<0||e>n)&&(e=n);for(var o="",i=r;i<e;++i)o+=L[t[i]];return o}(this,r,e);case"utf8":case"utf-8":return b(this,r,e);case"ascii":return function(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;o<e;++o)n+=String.fromCharCode(127&t[o]);return n}(this,r,e);case"latin1":case"binary":return function(t,r,e){var n="";e=Math.min(t.length,e);for(var o=r;o<e;++o)n+=String.fromCharCode(t[o]);return n}(this,r,e);case"base64":return o=this,i=r,f=e,0===i&&f===o.length?n.fromByteArray(o):n.fromByteArray(o.slice(i,f));case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return function(t,r,e){for(var n=t.slice(r,e),o="",i=0;i<n.length;i+=2)o+=String.fromCharCode(n[i]+256*n[i+1]);return o}(this,r,e);default:if(u)throw TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),u=!0}}function g(t,r,e){var n=t[r];t[r]=t[e],t[e]=n}function v(t,r,e,n,o){var i;if(0===t.length)return -1;if("string"==typeof e?(n=e,e=0):e>0x7fffffff?e=0x7fffffff:e<-0x80000000&&(e=-0x80000000),(i=e*=1)!=i&&(e=o?0:t.length-1),e<0&&(e=t.length+e),e>=t.length)if(o)return -1;else e=t.length-1;else if(e<0)if(!o)return -1;else e=0;if("string"==typeof r&&(r=u.from(r,n)),u.isBuffer(r))return 0===r.length?-1:d(t,r,e,n,o);if("number"==typeof r){if(r&=255,"function"==typeof Uint8Array.prototype.indexOf)if(o)return Uint8Array.prototype.indexOf.call(t,r,e);else return Uint8Array.prototype.lastIndexOf.call(t,r,e);return d(t,[r],e,n,o)}throw TypeError("val must be string, number or Buffer")}function d(t,r,e,n,o){var i,f=1,u=t.length,s=r.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||r.length<2)return -1;f=2,u/=2,s/=2,e/=2}function h(t,r){return 1===f?t[r]:t.readUInt16BE(r*f)}if(o){var a=-1;for(i=e;i<u;i++)if(h(t,i)===h(r,-1===a?0:i-a)){if(-1===a&&(a=i),i-a+1===s)return a*f}else -1!==a&&(i-=i-a),a=-1}else for(e+s>u&&(e=u-s),i=e;i>=0;i--){for(var p=!0,c=0;c<s;c++)if(h(t,i+c)!==h(r,c)){p=!1;break}if(p)return i}return -1}u.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==u.prototype},u.compare=function(t,r){if(C(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),C(r,Uint8Array)&&(r=u.from(r,r.offset,r.byteLength)),!u.isBuffer(t)||!u.isBuffer(r))throw TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;for(var e=t.length,n=r.length,o=0,i=Math.min(e,n);o<i;++o)if(t[o]!==r[o]){e=t[o],n=r[o];break}return e<n?-1:+(n<e)},u.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},u.concat=function(t,r){if(!Array.isArray(t))throw TypeError('"list" argument must be an Array of Buffers');if(0===t.length)return u.alloc(0);if(void 0===r)for(e=0,r=0;e<t.length;++e)r+=t[e].length;var e,n=u.allocUnsafe(r),o=0;for(e=0;e<t.length;++e){var i=t[e];if(C(i,Uint8Array)&&(i=u.from(i)),!u.isBuffer(i))throw TypeError('"list" argument must be an Array of Buffers');i.copy(n,o),o+=i.length}return n},u.byteLength=l,u.prototype._isBuffer=!0,u.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw RangeError("Buffer size must be a multiple of 16-bits");for(var r=0;r<t;r+=2)g(this,r,r+1);return this},u.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw RangeError("Buffer size must be a multiple of 32-bits");for(var r=0;r<t;r+=4)g(this,r,r+3),g(this,r+1,r+2);return this},u.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw RangeError("Buffer size must be a multiple of 64-bits");for(var r=0;r<t;r+=8)g(this,r,r+7),g(this,r+1,r+6),g(this,r+2,r+5),g(this,r+3,r+4);return this},u.prototype.toString=function(){var t=this.length;return 0===t?"":0==arguments.length?b(this,0,t):y.apply(this,arguments)},u.prototype.toLocaleString=u.prototype.toString,u.prototype.equals=function(t){if(!u.isBuffer(t))throw TypeError("Argument must be a Buffer");return this===t||0===u.compare(this,t)},u.prototype.inspect=function(){var t="",e=r.INSPECT_MAX_BYTES;return t=this.toString("hex",0,e).replace(/(.{2})/g,"$1 ").trim(),this.length>e&&(t+=" ... "),"<Buffer "+t+">"},i&&(u.prototype[i]=u.prototype.inspect),u.prototype.compare=function(t,r,e,n,o){if(C(t,Uint8Array)&&(t=u.from(t,t.offset,t.byteLength)),!u.isBuffer(t))throw TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(void 0===r&&(r=0),void 0===e&&(e=t?t.length:0),void 0===n&&(n=0),void 0===o&&(o=this.length),r<0||e>t.length||n<0||o>this.length)throw RangeError("out of range index");if(n>=o&&r>=e)return 0;if(n>=o)return -1;if(r>=e)return 1;if(r>>>=0,e>>>=0,n>>>=0,o>>>=0,this===t)return 0;for(var i=o-n,f=e-r,s=Math.min(i,f),h=this.slice(n,o),a=t.slice(r,e),p=0;p<s;++p)if(h[p]!==a[p]){i=h[p],f=a[p];break}return i<f?-1:+(f<i)},u.prototype.includes=function(t,r,e){return -1!==this.indexOf(t,r,e)},u.prototype.indexOf=function(t,r,e){return v(this,t,r,e,!0)},u.prototype.lastIndexOf=function(t,r,e){return v(this,t,r,e,!1)};function b(t,r,e){e=Math.min(t.length,e);for(var n=[],o=r;o<e;){var i,f,u,s,h=t[o],a=null,p=h>239?4:h>223?3:h>191?2:1;if(o+p<=e)switch(p){case 1:h<128&&(a=h);break;case 2:(192&(i=t[o+1]))==128&&(s=(31&h)<<6|63&i)>127&&(a=s);break;case 3:i=t[o+1],f=t[o+2],(192&i)==128&&(192&f)==128&&(s=(15&h)<<12|(63&i)<<6|63&f)>2047&&(s<55296||s>57343)&&(a=s);break;case 4:i=t[o+1],f=t[o+2],u=t[o+3],(192&i)==128&&(192&f)==128&&(192&u)==128&&(s=(15&h)<<18|(63&i)<<12|(63&f)<<6|63&u)>65535&&s<1114112&&(a=s)}null===a?(a=65533,p=1):a>65535&&(a-=65536,n.push(a>>>10&1023|55296),a=56320|1023&a),n.push(a),o+=p}var c=n,l=c.length;if(l<=4096)return String.fromCharCode.apply(String,c);for(var y="",g=0;g<l;)y+=String.fromCharCode.apply(String,c.slice(g,g+=4096));return y}function w(t,r,e){if(t%1!=0||t<0)throw RangeError("offset is not uint");if(t+r>e)throw RangeError("Trying to access beyond buffer length")}function m(t,r,e,n,o,i){if(!u.isBuffer(t))throw TypeError('"buffer" argument must be a Buffer instance');if(r>o||r<i)throw RangeError('"value" argument is out of bounds');if(e+n>t.length)throw RangeError("Index out of range")}function E(t,r,e,n,o,i){if(e+n>t.length||e<0)throw RangeError("Index out of range")}function A(t,r,e,n,i){return r*=1,e>>>=0,i||E(t,r,e,4,34028234663852886e22,-34028234663852886e22),o.write(t,r,e,n,23,4),e+4}function B(t,r,e,n,i){return r*=1,e>>>=0,i||E(t,r,e,8,17976931348623157e292,-17976931348623157e292),o.write(t,r,e,n,52,8),e+8}u.prototype.write=function(t,r,e,n){if(void 0===r)n="utf8",e=this.length,r=0;else if(void 0===e&&"string"==typeof r)n=r,e=this.length,r=0;else if(isFinite(r))r>>>=0,isFinite(e)?(e>>>=0,void 0===n&&(n="utf8")):(n=e,e=void 0);else throw Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var o,i,f,u,s,h,a,p,c=this.length-r;if((void 0===e||e>c)&&(e=c),t.length>0&&(e<0||r<0)||r>this.length)throw RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var l=!1;;)switch(n){case"hex":return function(t,r,e,n){e=Number(e)||0;var o=t.length-e;n?(n=Number(n))>o&&(n=o):n=o;var i=r.length;n>i/2&&(n=i/2);for(var f=0;f<n;++f){var u,s=parseInt(r.substr(2*f,2),16);if((u=s)!=u)break;t[e+f]=s}return f}(this,t,r,e);case"utf8":case"utf-8":return o=r,i=e,S(x(t,this.length-o),this,o,i);case"ascii":return f=r,u=e,S(T(t),this,f,u);case"latin1":case"binary":return function(t,r,e,n){return S(T(r),t,e,n)}(this,t,r,e);case"base64":return s=r,h=e,S(I(t),this,s,h);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return a=r,p=e,S(function(t,r){for(var e,n,o=[],i=0;i<t.length&&!((r-=2)<0);++i)n=(e=t.charCodeAt(i))>>8,o.push(e%256),o.push(n);return o}(t,this.length-a),this,a,p);default:if(l)throw TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),l=!0}},u.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},u.prototype.slice=function(t,r){var e=this.length;t=~~t,r=void 0===r?e:~~r,t<0?(t+=e)<0&&(t=0):t>e&&(t=e),r<0?(r+=e)<0&&(r=0):r>e&&(r=e),r<t&&(r=t);var n=this.subarray(t,r);return Object.setPrototypeOf(n,u.prototype),n},u.prototype.readUIntLE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n},u.prototype.readUIntBE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t+--r],o=1;r>0&&(o*=256);)n+=this[t+--r]*o;return n},u.prototype.readUInt8=function(t,r){return t>>>=0,r||w(t,1,this.length),this[t]},u.prototype.readUInt16LE=function(t,r){return t>>>=0,r||w(t,2,this.length),this[t]|this[t+1]<<8},u.prototype.readUInt16BE=function(t,r){return t>>>=0,r||w(t,2,this.length),this[t]<<8|this[t+1]},u.prototype.readUInt32LE=function(t,r){return t>>>=0,r||w(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+0x1000000*this[t+3]},u.prototype.readUInt32BE=function(t,r){return t>>>=0,r||w(t,4,this.length),0x1000000*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},u.prototype.readIntLE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=this[t],o=1,i=0;++i<r&&(o*=256);)n+=this[t+i]*o;return n>=(o*=128)&&(n-=Math.pow(2,8*r)),n},u.prototype.readIntBE=function(t,r,e){t>>>=0,r>>>=0,e||w(t,r,this.length);for(var n=r,o=1,i=this[t+--n];n>0&&(o*=256);)i+=this[t+--n]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*r)),i},u.prototype.readInt8=function(t,r){return(t>>>=0,r||w(t,1,this.length),128&this[t])?-((255-this[t]+1)*1):this[t]},u.prototype.readInt16LE=function(t,r){t>>>=0,r||w(t,2,this.length);var e=this[t]|this[t+1]<<8;return 32768&e?0xffff0000|e:e},u.prototype.readInt16BE=function(t,r){t>>>=0,r||w(t,2,this.length);var e=this[t+1]|this[t]<<8;return 32768&e?0xffff0000|e:e},u.prototype.readInt32LE=function(t,r){return t>>>=0,r||w(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},u.prototype.readInt32BE=function(t,r){return t>>>=0,r||w(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},u.prototype.readFloatLE=function(t,r){return t>>>=0,r||w(t,4,this.length),o.read(this,t,!0,23,4)},u.prototype.readFloatBE=function(t,r){return t>>>=0,r||w(t,4,this.length),o.read(this,t,!1,23,4)},u.prototype.readDoubleLE=function(t,r){return t>>>=0,r||w(t,8,this.length),o.read(this,t,!0,52,8)},u.prototype.readDoubleBE=function(t,r){return t>>>=0,r||w(t,8,this.length),o.read(this,t,!1,52,8)},u.prototype.writeUIntLE=function(t,r,e,n){if(t*=1,r>>>=0,e>>>=0,!n){var o=Math.pow(2,8*e)-1;m(this,t,r,e,o,0)}var i=1,f=0;for(this[r]=255&t;++f<e&&(i*=256);)this[r+f]=t/i&255;return r+e},u.prototype.writeUIntBE=function(t,r,e,n){if(t*=1,r>>>=0,e>>>=0,!n){var o=Math.pow(2,8*e)-1;m(this,t,r,e,o,0)}var i=e-1,f=1;for(this[r+i]=255&t;--i>=0&&(f*=256);)this[r+i]=t/f&255;return r+e},u.prototype.writeUInt8=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,1,255,0),this[r]=255&t,r+1},u.prototype.writeUInt16LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,65535,0),this[r]=255&t,this[r+1]=t>>>8,r+2},u.prototype.writeUInt16BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=255&t,r+2},u.prototype.writeUInt32LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0xffffffff,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=255&t,r+4},u.prototype.writeUInt32BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0xffffffff,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t,r+4},u.prototype.writeIntLE=function(t,r,e,n){if(t*=1,r>>>=0,!n){var o=Math.pow(2,8*e-1);m(this,t,r,e,o-1,-o)}var i=0,f=1,u=0;for(this[r]=255&t;++i<e&&(f*=256);)t<0&&0===u&&0!==this[r+i-1]&&(u=1),this[r+i]=(t/f|0)-u&255;return r+e},u.prototype.writeIntBE=function(t,r,e,n){if(t*=1,r>>>=0,!n){var o=Math.pow(2,8*e-1);m(this,t,r,e,o-1,-o)}var i=e-1,f=1,u=0;for(this[r+i]=255&t;--i>=0&&(f*=256);)t<0&&0===u&&0!==this[r+i+1]&&(u=1),this[r+i]=(t/f|0)-u&255;return r+e},u.prototype.writeInt8=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=255&t,r+1},u.prototype.writeInt16LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,32767,-32768),this[r]=255&t,this[r+1]=t>>>8,r+2},u.prototype.writeInt16BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=255&t,r+2},u.prototype.writeInt32LE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0x7fffffff,-0x80000000),this[r]=255&t,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4},u.prototype.writeInt32BE=function(t,r,e){return t*=1,r>>>=0,e||m(this,t,r,4,0x7fffffff,-0x80000000),t<0&&(t=0xffffffff+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=255&t,r+4},u.prototype.writeFloatLE=function(t,r,e){return A(this,t,r,!0,e)},u.prototype.writeFloatBE=function(t,r,e){return A(this,t,r,!1,e)},u.prototype.writeDoubleLE=function(t,r,e){return B(this,t,r,!0,e)},u.prototype.writeDoubleBE=function(t,r,e){return B(this,t,r,!1,e)},u.prototype.copy=function(t,r,e,n){if(!u.isBuffer(t))throw TypeError("argument should be a Buffer");if(e||(e=0),n||0===n||(n=this.length),r>=t.length&&(r=t.length),r||(r=0),n>0&&n<e&&(n=e),n===e||0===t.length||0===this.length)return 0;if(r<0)throw RangeError("targetStart out of bounds");if(e<0||e>=this.length)throw RangeError("Index out of range");if(n<0)throw RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-r<n-e&&(n=t.length-r+e);var o=n-e;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(r,e,n);else if(this===t&&e<r&&r<n)for(var i=o-1;i>=0;--i)t[i+r]=this[i+e];else Uint8Array.prototype.set.call(t,this.subarray(e,n),r);return o},u.prototype.fill=function(t,r,e,n){if("string"==typeof t){if("string"==typeof r?(n=r,r=0,e=this.length):"string"==typeof e&&(n=e,e=this.length),void 0!==n&&"string"!=typeof n)throw TypeError("encoding must be a string");if("string"==typeof n&&!u.isEncoding(n))throw TypeError("Unknown encoding: "+n);if(1===t.length){var o,i=t.charCodeAt(0);("utf8"===n&&i<128||"latin1"===n)&&(t=i)}}else"number"==typeof t?t&=255:"boolean"==typeof t&&(t=Number(t));if(r<0||this.length<r||this.length<e)throw RangeError("Out of range index");if(e<=r)return this;if(r>>>=0,e=void 0===e?this.length:e>>>0,t||(t=0),"number"==typeof t)for(o=r;o<e;++o)this[o]=t;else{var f=u.isBuffer(t)?t:u.from(t,n),s=f.length;if(0===s)throw TypeError('The value "'+t+'" is invalid for argument "value"');for(o=0;o<e-r;++o)this[o+r]=f[o%s]}return this};var U=/[^+/0-9A-Za-z-_]/g;function x(t,r){r=r||1/0;for(var e,n=t.length,o=null,i=[],f=0;f<n;++f){if((e=t.charCodeAt(f))>55295&&e<57344){if(!o){if(e>56319||f+1===n){(r-=3)>-1&&i.push(239,191,189);continue}o=e;continue}if(e<56320){(r-=3)>-1&&i.push(239,191,189),o=e;continue}e=(o-55296<<10|e-56320)+65536}else o&&(r-=3)>-1&&i.push(239,191,189);if(o=null,e<128){if((r-=1)<0)break;i.push(e)}else if(e<2048){if((r-=2)<0)break;i.push(e>>6|192,63&e|128)}else if(e<65536){if((r-=3)<0)break;i.push(e>>12|224,e>>6&63|128,63&e|128)}else if(e<1114112){if((r-=4)<0)break;i.push(e>>18|240,e>>12&63|128,e>>6&63|128,63&e|128)}else throw Error("Invalid code point")}return i}function T(t){for(var r=[],e=0;e<t.length;++e)r.push(255&t.charCodeAt(e));return r}function I(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(U,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function S(t,r,e,n){for(var o=0;o<n&&!(o+e>=r.length)&&!(o>=t.length);++o)r[o+e]=t[o];return o}function C(t,r){return t instanceof r||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===r.name}var L=function(){for(var t="0123456789abcdef",r=Array(256),e=0;e<16;++e)for(var n=16*e,o=0;o<16;++o)r[n+o]=t[e]+t[o];return r}()},321:function(t,r){r.read=function(t,r,e,n,o){var i,f,u=8*o-n-1,s=(1<<u)-1,h=s>>1,a=-7,p=e?o-1:0,c=e?-1:1,l=t[r+p];for(p+=c,i=l&(1<<-a)-1,l>>=-a,a+=u;a>0;i=256*i+t[r+p],p+=c,a-=8);for(f=i&(1<<-a)-1,i>>=-a,a+=n;a>0;f=256*f+t[r+p],p+=c,a-=8);if(0===i)i=1-h;else{if(i===s)return f?0/0:(l?-1:1)*2e308;f+=Math.pow(2,n),i-=h}return(l?-1:1)*f*Math.pow(2,i-n)},r.write=function(t,r,e,n,o,i){var f,u,s,h=8*i-o-1,a=(1<<h)-1,p=a>>1,c=5960464477539062e-23*(23===o),l=n?0:i-1,y=n?1:-1,g=+(r<0||0===r&&1/r<0);for(isNaN(r=Math.abs(r))||1/0===r?(u=+!!isNaN(r),f=a):(f=Math.floor(Math.log(r)/Math.LN2),r*(s=Math.pow(2,-f))<1&&(f--,s*=2),f+p>=1?r+=c/s:r+=c*Math.pow(2,1-p),r*s>=2&&(f++,s/=2),f+p>=a?(u=0,f=a):f+p>=1?(u=(r*s-1)*Math.pow(2,o),f+=p):(u=r*Math.pow(2,p-1)*Math.pow(2,o),f=0));o>=8;t[e+l]=255&u,l+=y,u/=256,o-=8);for(f=f<<o|u,h+=o;h>0;t[e+l]=255&f,l+=y,f/=256,h-=8);t[e+l-y]|=128*g}}},e={};function n(t){var o=e[t];if(void 0!==o)return o.exports;var i=e[t]={exports:{}},f=!0;try{r[t](i,i.exports,n),f=!1}finally{f&&delete e[t]}return i.exports}n.ab="//",t.exports=n(230)}}]);
@@ -1,4 +1,4 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2623],{52623:(t,e,i)=>{"use strict";i.d(e,{diagram:()=>tF});var s,n,r,a=i(32563),o=i(97096),c=i(32165),l=i(84485),d=i(27866),u=i(60490),h=i(79942),f=i(62476),m=i(86981),k=i(33948),y=function(){var t=(0,c.K2)(function(t,e,i,s){for(i=i||{},s=t.length;s--;i[t[s]]=e);return i},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],i=[1,26],s=[1,27],n=[1,28],r=[1,29],a=[1,30],o=[1,31],l=[1,32],d=[1,33],u=[1,34],h=[1,9],f=[1,10],m=[1,11],k=[1,12],y=[1,13],g=[1,14],p=[1,15],v=[1,16],T=[1,19],x=[1,20],b=[1,21],$=[1,22],w=[1,23],_=[1,25],D=[1,35],S={trace:(0,c.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:(0,c.K2)(function(t,e,i,s,n,r,a){var o=r.length-1;switch(n){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:s.setWeekday("monday");break;case 9:s.setWeekday("tuesday");break;case 10:s.setWeekday("wednesday");break;case 11:s.setWeekday("thursday");break;case 12:s.setWeekday("friday");break;case 13:s.setWeekday("saturday");break;case 14:s.setWeekday("sunday");break;case 15:s.setWeekend("friday");break;case 16:s.setWeekend("saturday");break;case 17:s.setDateFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 18:s.enableInclusiveEndDates(),this.$=r[o].substr(18);break;case 19:s.TopAxis(),this.$=r[o].substr(8);break;case 20:s.setAxisFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 21:s.setTickInterval(r[o].substr(13)),this.$=r[o].substr(13);break;case 22:s.setExcludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 23:s.setIncludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 24:s.setTodayMarker(r[o].substr(12)),this.$=r[o].substr(12);break;case 27:s.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 28:this.$=r[o].trim(),s.setAccTitle(this.$);break;case 29:case 30:this.$=r[o].trim(),s.setAccDescription(this.$);break;case 31:s.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 33:s.addTask(r[o-1],r[o]),this.$="task";break;case 34:this.$=r[o-1],s.setClickEvent(r[o-1],r[o],null);break;case 35:this.$=r[o-2],s.setClickEvent(r[o-2],r[o-1],r[o]);break;case 36:this.$=r[o-2],s.setClickEvent(r[o-2],r[o-1],null),s.setLink(r[o-2],r[o]);break;case 37:this.$=r[o-3],s.setClickEvent(r[o-3],r[o-2],r[o-1]),s.setLink(r[o-3],r[o]);break;case 38:this.$=r[o-2],s.setClickEvent(r[o-2],r[o],null),s.setLink(r[o-2],r[o-1]);break;case 39:this.$=r[o-3],s.setClickEvent(r[o-3],r[o-1],r[o]),s.setLink(r[o-3],r[o-2]);break;case 40:this.$=r[o-1],s.setLink(r[o-1],r[o]);break;case 41:case 47:this.$=r[o-1]+" "+r[o];break;case 42:case 43:case 45:this.$=r[o-2]+" "+r[o-1]+" "+r[o];break;case 44:case 46:this.$=r[o-3]+" "+r[o-2]+" "+r[o-1]+" "+r[o]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:i,13:s,14:n,15:r,16:a,17:o,18:l,19:18,20:d,21:u,22:h,23:f,24:m,25:k,26:y,27:g,28:p,29:v,30:T,31:x,33:b,35:$,36:w,37:24,38:_,40:D},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:i,13:s,14:n,15:r,16:a,17:o,18:l,19:18,20:d,21:u,22:h,23:f,24:m,25:k,26:y,27:g,28:p,29:v,30:T,31:x,33:b,35:$,36:w,37:24,38:_,40:D},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:(0,c.K2)(function(t,e){if(e.recoverable)this.trace(t);else{var i=Error(t);throw i.hash=e,i}},"parseError"),parse:(0,c.K2)(function(t){var e=this,i=[0],s=[],n=[null],r=[],a=this.table,o="",l=0,d=0,u=0,h=r.slice.call(arguments,1),f=Object.create(this.lexer),m={};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(m[k]=this.yy[k]);f.setInput(t,m),m.lexer=f,m.parser=this,void 0===f.yylloc&&(f.yylloc={});var y=f.yylloc;r.push(y);var g=f.options&&f.options.ranges;function p(){var t;return"number"!=typeof(t=s.pop()||f.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof m.parseError?this.parseError=m.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,c.K2)(function(t){i.length=i.length-2*t,n.length=n.length-t,r.length=r.length-t},"popStack"),(0,c.K2)(p,"lex");for(var v,T,x,b,$,w,_,D,S,C={};;){if(x=i[i.length-1],this.defaultActions[x]?b=this.defaultActions[x]:(null==v&&(v=p()),b=a[x]&&a[x][v]),void 0===b||!b.length||!b[0]){var M="";for(w in S=[],a[x])this.terminals_[w]&&w>2&&S.push("'"+this.terminals_[w]+"'");M=f.showPosition?"Parse error on line "+(l+1)+":\n"+f.showPosition()+"\nExpecting "+S.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==v?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(M,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:S})}if(b[0]instanceof Array&&b.length>1)throw Error("Parse Error: multiple actions possible at state: "+x+", token: "+v);switch(b[0]){case 1:i.push(v),n.push(f.yytext),r.push(f.yylloc),i.push(b[1]),v=null,T?(v=T,T=null):(d=f.yyleng,o=f.yytext,l=f.yylineno,y=f.yylloc,u>0&&u--);break;case 2:if(_=this.productions_[b[1]][1],C.$=n[n.length-_],C._$={first_line:r[r.length-(_||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(_||1)].first_column,last_column:r[r.length-1].last_column},g&&(C._$.range=[r[r.length-(_||1)].range[0],r[r.length-1].range[1]]),void 0!==($=this.performAction.apply(C,[o,d,l,m,b[1],n,r].concat(h))))return $;_&&(i=i.slice(0,-1*_*2),n=n.slice(0,-1*_),r=r.slice(0,-1*_)),i.push(this.productions_[b[1]][0]),n.push(C.$),r.push(C._$),D=a[i[i.length-2]][i[i.length-1]],i.push(D);break;case 3:return!0}}return!0},"parse")};function C(){this.yy={}}return S.lexer={EOF:1,parseError:(0,c.K2)(function(t,e){if(this.yy.parser)this.yy.parser.parseError(t,e);else throw Error(t)},"parseError"),setInput:(0,c.K2)(function(t,e){return this.yy=e||this.yy||{},this._input=t,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,c.K2)(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.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),t},"input"),unput:(0,c.K2)(function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var s=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),i.length-1&&(this.yylineno-=i.length-1);var n=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:i?(i.length===s.length?this.yylloc.first_column:0)+s[s.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,c.K2)(function(){return this._more=!0,this},"more"),reject:(0,c.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,c.K2)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,c.K2)(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,c.K2)(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,c.K2)(function(){var t=this.pastInput(),e=Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,c.K2)(function(t,e){var i,s,n;if(this.options.backtrack_lexer&&(n={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&&(n.yylloc.range=this.yylloc.range.slice(0))),(s=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack)for(var r in n)this[r]=n[r];return!1},"test_match"),next:(0,c.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var t,e,i,s,n=this._currentRules(),r=0;r<n.length;r++)if((i=this._input.match(this.rules[n[r]]))&&(!e||i[0].length>e[0].length)){if(e=i,s=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,n[r])))return t;if(!this._backtrack)return!1;e=!1;continue}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[s]))&&t:""===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,c.K2)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,c.K2)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,c.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,c.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,c.K2)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,c.K2)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,c.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,c.K2)(function(t,e,i,s){switch(i){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),31;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),33;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 15:case 18:case 21:case 24:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:case 9:case 10:case 12:case 13:break;case 11:return 10;case 14:this.begin("href");break;case 16:return 43;case 17:this.begin("callbackname");break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 22:return 42;case 23:this.begin("click");break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}},(0,c.K2)(C,"Parser"),C.prototype=S,S.Parser=C,new C}();y.parser=y,d.extend(u),d.extend(h),d.extend(f);var g={friday:5,saturday:6},p="",v="",T=void 0,x="",b=[],$=[],w=new Map,_=[],D=[],S="",C="",M=["active","done","crit","milestone","vert"],K=[],Y="",E=!1,L=!1,O="sunday",A="saturday",I=0,F=(0,c.K2)(function(){_=[],D=[],S="",K=[],ty=0,s=void 0,n=void 0,tT=[],p="",v="",C="",T=void 0,x="",b=[],$=[],E=!1,L=!1,I=0,w=new Map,Y="",(0,o.IU)(),O="sunday",A="saturday"},"clear"),W=(0,c.K2)(function(t){Y=t},"setDiagramId"),P=(0,c.K2)(function(t){v=t},"setAxisFormat"),N=(0,c.K2)(function(){return v},"getAxisFormat"),H=(0,c.K2)(function(t){T=t},"setTickInterval"),z=(0,c.K2)(function(){return T},"getTickInterval"),B=(0,c.K2)(function(t){x=t},"setTodayMarker"),R=(0,c.K2)(function(){return x},"getTodayMarker"),G=(0,c.K2)(function(t){p=t},"setDateFormat"),j=(0,c.K2)(function(){E=!0},"enableInclusiveEndDates"),U=(0,c.K2)(function(){return E},"endDatesAreInclusive"),V=(0,c.K2)(function(){L=!0},"enableTopAxis"),Z=(0,c.K2)(function(){return L},"topAxisEnabled"),X=(0,c.K2)(function(t){C=t},"setDisplayMode"),q=(0,c.K2)(function(){return C},"getDisplayMode"),Q=(0,c.K2)(function(){return p},"getDateFormat"),J=(0,c.K2)(function(t){b=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),tt=(0,c.K2)(function(){return b},"getIncludes"),te=(0,c.K2)(function(t){$=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),ti=(0,c.K2)(function(){return $},"getExcludes"),ts=(0,c.K2)(function(){return w},"getLinks"),tn=(0,c.K2)(function(t){S=t,_.push(t)},"addSection"),tr=(0,c.K2)(function(){return _},"getSections"),ta=(0,c.K2)(function(){let t=t_(),e=0;for(;!t&&e<10;)t=t_(),e++;return D=tT},"getTasks"),to=(0,c.K2)(function(t,e,i,s){let n=t.format(e.trim()),r=t.format("YYYY-MM-DD");return!(s.includes(n)||s.includes(r))&&(!!(i.includes("weekends")&&(t.isoWeekday()===g[A]||t.isoWeekday()===g[A]+1)||i.includes(t.format("dddd").toLowerCase()))||i.includes(n)||i.includes(r))},"isInvalidDate"),tc=(0,c.K2)(function(t){O=t},"setWeekday"),tl=(0,c.K2)(function(){return O},"getWeekday"),td=(0,c.K2)(function(t){A=t},"setWeekend"),tu=(0,c.K2)(function(t,e,i,s){let n;if(!i.length||t.manualEndTime)return;let[r,a]=th(n=(n=t.startTime instanceof Date?d(t.startTime):d(t.startTime,e,!0)).add(1,"d"),t.endTime instanceof Date?d(t.endTime):d(t.endTime,e,!0),e,i,s);t.endTime=r.toDate(),t.renderEndTime=a},"checkTaskDates"),th=(0,c.K2)(function(t,e,i,s,n){let r=!1,a=null,o=e.add(1e4,"d");for(;t<=e;){if(r||(a=e.toDate()),(r=to(t,i,s,n))&&(e=e.add(1,"d"))>o)throw Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.");t=t.add(1,"d")}return[e,a]},"fixTaskDates"),tf=(0,c.K2)(function(t,e,i){if(i=i.trim(),(0,c.K2)(t=>{let e=t.trim();return"x"===e||"X"===e},"isTimestampFormat")(e)&&/^\d+$/.test(i))return new Date(Number(i));let s=/^after\s+(?<ids>[\d\w- ]+)/.exec(i);if(null!==s){let t=null;for(let e of s.groups.ids.split(" ")){let i=t$(e);void 0!==i&&(!t||i.endTime>t.endTime)&&(t=i)}if(t)return t.endTime;let e=new Date;return e.setHours(0,0,0,0),e}let n=d(i,e.trim(),!0);if(n.isValid())return n.toDate();{c.Rm.debug("Invalid date:"+i),c.Rm.debug("With date format:"+e.trim());let t=new Date(i);if(void 0===t||isNaN(t.getTime())||-1e4>t.getFullYear()||t.getFullYear()>1e4)throw Error("Invalid date:"+i);return t}},"getStartDate"),tm=(0,c.K2)(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return null!==e?[Number.parseFloat(e[1]),e[2]]:[NaN,"ms"]},"parseDuration"),tk=(0,c.K2)(function(t,e,i,s=!1){i=i.trim();let n=/^until\s+(?<ids>[\d\w- ]+)/.exec(i);if(null!==n){let t=null;for(let e of n.groups.ids.split(" ")){let i=t$(e);void 0!==i&&(!t||i.startTime<t.startTime)&&(t=i)}if(t)return t.startTime;let e=new Date;return e.setHours(0,0,0,0),e}let r=d(i,e.trim(),!0);if(r.isValid())return s&&(r=r.add(1,"d")),r.toDate();let a=d(t),[o,c]=tm(i);if(!Number.isNaN(o)){let t=a.add(o,c);t.isValid()&&(a=t)}return a.toDate()},"getEndDate"),ty=0,tg=(0,c.K2)(function(t){return void 0===t?"task"+(ty+=1):t},"parseId"),tp=(0,c.K2)(function(t,e){let i=(":"===e.substr(0,1)?e.substr(1,e.length):e).split(","),s={};tL(i,s,M);for(let t=0;t<i.length;t++)i[t]=i[t].trim();let n="";switch(i.length){case 1:s.id=tg(),s.startTime=t.endTime,n=i[0];break;case 2:s.id=tg(),s.startTime=tf(void 0,p,i[0]),n=i[1];break;case 3:s.id=tg(i[0]),s.startTime=tf(void 0,p,i[1]),n=i[2]}return n&&(s.endTime=tk(s.startTime,p,n,E),s.manualEndTime=d(n,"YYYY-MM-DD",!0).isValid(),tu(s,p,$,b)),s},"compileData"),tv=(0,c.K2)(function(t,e){let i=(":"===e.substr(0,1)?e.substr(1,e.length):e).split(","),s={};tL(i,s,M);for(let t=0;t<i.length;t++)i[t]=i[t].trim();switch(i.length){case 1:s.id=tg(),s.startTime={type:"prevTaskEnd",id:t},s.endTime={data:i[0]};break;case 2:s.id=tg(),s.startTime={type:"getStartDate",startData:i[0]},s.endTime={data:i[1]};break;case 3:s.id=tg(i[0]),s.startTime={type:"getStartDate",startData:i[1]},s.endTime={data:i[2]}}return s},"parseData"),tT=[],tx={},tb=(0,c.K2)(function(t,e){let i={section:S,type:S,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:e},task:t,classes:[]},s=tv(n,e);i.raw.startTime=s.startTime,i.raw.endTime=s.endTime,i.id=s.id,i.prevTaskId=n,i.active=s.active,i.done=s.done,i.crit=s.crit,i.milestone=s.milestone,i.vert=s.vert,i.order=I,I++;let r=tT.push(i);n=i.id,tx[i.id]=r-1},"addTask"),t$=(0,c.K2)(function(t){return tT[tx[t]]},"findTaskById"),tw=(0,c.K2)(function(t,e){let i={section:S,type:S,description:t,task:t,classes:[]},n=tp(s,e);i.startTime=n.startTime,i.endTime=n.endTime,i.id=n.id,i.active=n.active,i.done=n.done,i.crit=n.crit,i.milestone=n.milestone,i.vert=n.vert,s=i,D.push(i)},"addTaskOrg"),t_=(0,c.K2)(function(){let t=(0,c.K2)(function(t){let e=tT[t],i="";switch(tT[t].raw.startTime.type){case"prevTaskEnd":{let t=t$(e.prevTaskId);e.startTime=t.endTime;break}case"getStartDate":(i=tf(void 0,p,tT[t].raw.startTime.startData))&&(tT[t].startTime=i)}return tT[t].startTime&&(tT[t].endTime=tk(tT[t].startTime,p,tT[t].raw.endTime.data,E),tT[t].endTime&&(tT[t].processed=!0,tT[t].manualEndTime=d(tT[t].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),tu(tT[t],p,$,b))),tT[t].processed},"compileTask"),e=!0;for(let[i,s]of tT.entries())t(i),e=e&&s.processed;return e},"compileTasks"),tD=(0,c.K2)(function(t,e){let i=e;"loose"!==(0,o.D7)().securityLevel&&(i=(0,l.J)(e)),t.split(",").forEach(function(t){void 0!==t$(t)&&(tM(t,()=>{window.open(i,"_self")}),w.set(t,i))}),tS(t,"clickable")},"setLink"),tS=(0,c.K2)(function(t,e){t.split(",").forEach(function(t){let i=t$(t);void 0!==i&&i.classes.push(e)})},"setClass"),tC=(0,c.K2)(function(t,e,i){if("loose"!==(0,o.D7)().securityLevel||void 0===e)return;let s=[];if("string"==typeof i){s=i.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t<s.length;t++){let e=s[t].trim();e.startsWith('"')&&e.endsWith('"')&&(e=e.substr(1,e.length-2)),s[t]=e}}0===s.length&&s.push(t),void 0!==t$(t)&&tM(t,()=>{a._K.runFunc(e,...s)})},"setClickFun"),tM=(0,c.K2)(function(t,e){K.push(function(){let i=Y?`${Y}-${t}`:t,s=document.querySelector(`[id="${i}"]`);null!==s&&s.addEventListener("click",function(){e()})},function(){let i=Y?`${Y}-${t}`:t,s=document.querySelector(`[id="${i}-text"]`);null!==s&&s.addEventListener("click",function(){e()})})},"pushFun"),tK=(0,c.K2)(function(t,e,i){t.split(",").forEach(function(t){tC(t,e,i)}),tS(t,"clickable")},"setClickEvent"),tY=(0,c.K2)(function(t){K.forEach(function(e){e(t)})},"bindFunctions"),tE={getConfig:(0,c.K2)(()=>(0,o.D7)().gantt,"getConfig"),clear:F,setDateFormat:G,getDateFormat:Q,enableInclusiveEndDates:j,endDatesAreInclusive:U,enableTopAxis:V,topAxisEnabled:Z,setAxisFormat:P,getAxisFormat:N,setTickInterval:H,getTickInterval:z,setTodayMarker:B,getTodayMarker:R,setAccTitle:o.SV,getAccTitle:o.iN,setDiagramTitle:o.ke,getDiagramTitle:o.ab,setDiagramId:W,setDisplayMode:X,getDisplayMode:q,setAccDescription:o.EI,getAccDescription:o.m7,addSection:tn,getSections:tr,getTasks:ta,addTask:tb,findTaskById:t$,addTaskOrg:tw,setIncludes:J,getIncludes:tt,setExcludes:te,getExcludes:ti,setClickEvent:tK,setLink:tD,getLinks:ts,bindFunctions:tY,parseDuration:tm,isInvalidDate:to,setWeekday:tc,getWeekday:tl,setWeekend:td};function tL(t,e,i){let s=!0;for(;s;)s=!1,i.forEach(function(i){let n=RegExp("^\\s*"+i+"\\s*$");t[0].match(n)&&(e[i]=!0,t.shift(1),s=!0)})}(0,c.K2)(tL,"getTaskTags"),d.extend(m);var tO=(0,c.K2)(function(){c.Rm.debug("Something is calling, setConf, remove the call")},"setConf"),tA={monday:k.ABi,tuesday:k.PGu,wednesday:k.GuW,thursday:k.Mol,friday:k.TUC,saturday:k.rGn,sunday:k.YPH},tI=(0,c.K2)((t,e)=>{let i=[...t].map(()=>-1/0),s=[...t].sort((t,e)=>t.startTime-e.startTime||t.order-e.order),n=0;for(let t of s)for(let s=0;s<i.length;s++)if(t.startTime>=i[s]){i[s]=t.endTime,t.order=s+e,s>n&&(n=s);break}return n},"getMaxIntersections"),tF={parser:y,db:tE,renderer:{setConf:tO,draw:(0,c.K2)(function(t,e,i,s){let n,a=(0,o.D7)().gantt;s.db.setDiagramId(e);let l=(0,o.D7)().securityLevel;"sandbox"===l&&(n=(0,k.Ltv)("#i"+e));let u="sandbox"===l?(0,k.Ltv)(n.nodes()[0].contentDocument.body):(0,k.Ltv)("body"),h="sandbox"===l?n.nodes()[0].contentDocument:document,f=h.getElementById(e);void 0===(r=f.parentElement.offsetWidth)&&(r=1200),void 0!==a.useWidth&&(r=a.useWidth);let m=s.db.getTasks(),y=[];for(let t of m)y.push(t.type);y=M(y);let g={},p=2*a.topPadding;if("compact"===s.db.getDisplayMode()||"compact"===a.displayMode){let t={};for(let e of m)void 0===t[e.section]?t[e.section]=[e]:t[e.section].push(e);let e=0;for(let i of Object.keys(t)){let s=tI(t[i],e)+1;e+=s,p+=s*(a.barHeight+a.barGap),g[i]=s}}else for(let t of(p+=m.length*(a.barHeight+a.barGap),y))g[t]=m.filter(e=>e.type===t).length;f.setAttribute("viewBox","0 0 "+r+" "+p);let v=u.select(`[id="${e}"]`),T=(0,k.w7C)().domain([(0,k.jkA)(m,function(t){return t.startTime}),(0,k.T9B)(m,function(t){return t.endTime})]).rangeRound([0,r-a.leftPadding-a.rightPadding]);function x(t,e){let i=t.startTime,s=e.startTime,n=0;return i>s?n=1:i<s&&(n=-1),n}function b(t,e,i){let n=a.barHeight,r=n+a.barGap,o=a.topPadding,c=a.leftPadding,l=(0,k.m4Y)().domain([0,y.length]).range(["#00B9FA","#F95002"]).interpolate(k.bEH);w(r,o,c,e,i,t,s.db.getExcludes(),s.db.getIncludes()),D(c,o,e,i),$(t,r,o,c,n,l,e,i),S(r,o,c,n,l),C(c,o,e,i)}function $(t,i,n,r,c,l,d){t.sort((t,e)=>t.vert===e.vert?0:t.vert?1:-1);let u=[...new Set(t.map(t=>t.order))].map(e=>t.find(t=>t.order===e));v.append("g").selectAll("rect").data(u).enter().append("rect").attr("x",0).attr("y",function(t,e){return t.order*i+n-2}).attr("width",function(){return d-a.rightPadding/2}).attr("height",i).attr("class",function(t){for(let[e,i]of y.entries())if(t.type===i)return"section section"+e%a.numberSectionStyles;return"section section0"}).enter();let h=v.append("g").selectAll("rect").data(t).enter(),f=s.db.getLinks();if(h.append("rect").attr("id",function(t){return e+"-"+t.id}).attr("rx",3).attr("ry",3).attr("x",function(t){return t.milestone?T(t.startTime)+r+.5*(T(t.endTime)-T(t.startTime))-.5*c:T(t.startTime)+r}).attr("y",function(t,e){return(e=t.order,t.vert)?a.gridLineStartPadding:e*i+n}).attr("width",function(t){return t.milestone?c:t.vert?.08*c:T(t.renderEndTime||t.endTime)-T(t.startTime)}).attr("height",function(t){return t.vert?m.length*(a.barHeight+a.barGap)+2*a.barHeight:c}).attr("transform-origin",function(t,e){return e=t.order,(T(t.startTime)+r+.5*(T(t.endTime)-T(t.startTime))).toString()+"px "+(e*i+n+.5*c).toString()+"px"}).attr("class",function(t){let e="";t.classes.length>0&&(e=t.classes.join(" "));let i=0;for(let[e,s]of y.entries())t.type===s&&(i=e%a.numberSectionStyles);let s="";return t.active?t.crit?s+=" activeCrit":s=" active":t.done?s=t.crit?" doneCrit":" done":t.crit&&(s+=" crit"),0===s.length&&(s=" task"),t.milestone&&(s=" milestone "+s),t.vert&&(s=" vert "+s),s+=i,"task"+(s+=" "+e)}),h.append("text").attr("id",function(t){return e+"-"+t.id+"-text"}).text(function(t){return t.task}).attr("font-size",a.fontSize).attr("x",function(t){let e=T(t.startTime),i=T(t.renderEndTime||t.endTime);if(t.milestone&&(e+=.5*(T(t.endTime)-T(t.startTime))-.5*c,i=e+c),t.vert)return T(t.startTime)+r;let s=this.getBBox().width;return s>i-e?i+s+1.5*a.leftPadding>d?e+r-5:i+r+5:(i-e)/2+e+r}).attr("y",function(t,e){return t.vert?a.gridLineStartPadding+m.length*(a.barHeight+a.barGap)+60:t.order*i+a.barHeight/2+(a.fontSize/2-2)+n}).attr("text-height",c).attr("class",function(t){let e=T(t.startTime),i=T(t.endTime);t.milestone&&(i=e+c);let s=this.getBBox().width,n="";t.classes.length>0&&(n=t.classes.join(" "));let r=0;for(let[e,i]of y.entries())t.type===i&&(r=e%a.numberSectionStyles);let o="";return(t.active&&(o=t.crit?"activeCritText"+r:"activeText"+r),t.done?o=t.crit?o+" doneCritText"+r:o+" doneText"+r:t.crit&&(o=o+" critText"+r),t.milestone&&(o+=" milestoneText"),t.vert&&(o+=" vertText"),s>i-e)?i+s+1.5*a.leftPadding>d?n+" taskTextOutsideLeft taskTextOutside"+r+" "+o:n+" taskTextOutsideRight taskTextOutside"+r+" "+o+" width-"+s:n+" taskText taskText"+r+" "+o+" width-"+s}),"sandbox"===(0,o.D7)().securityLevel){let t=(0,k.Ltv)("#i"+e).nodes()[0].contentDocument;h.filter(function(t){return f.has(t.id)}).each(function(i){var s=t.querySelector("#"+CSS.escape(e+"-"+i.id)),n=t.querySelector("#"+CSS.escape(e+"-"+i.id+"-text"));let r=s.parentNode;var a=t.createElement("a");a.setAttribute("xlink:href",f.get(i.id)),a.setAttribute("target","_top"),r.appendChild(a),a.appendChild(s),a.appendChild(n)})}}function w(t,i,n,r,o,l,u,h){let f,m;if(0===u.length&&0===h.length)return;for(let{startTime:t,endTime:e}of l)(void 0===f||t<f)&&(f=t),(void 0===m||e>m)&&(m=e);if(!f||!m)return;if(d(m).diff(d(f),"year")>5)return void c.Rm.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");let k=s.db.getDateFormat(),y=[],g=null,p=d(f);for(;p.valueOf()<=m;)s.db.isInvalidDate(p,k,u,h)?g?g.end=p:g={start:p,end:p}:g&&(y.push(g),g=null),p=p.add(1,"d");v.append("g").selectAll("rect").data(y).enter().append("rect").attr("id",t=>e+"-exclude-"+t.start.format("YYYY-MM-DD")).attr("x",t=>T(t.start.startOf("day"))+n).attr("y",a.gridLineStartPadding).attr("width",t=>T(t.end.endOf("day"))-T(t.start.startOf("day"))).attr("height",o-i-a.gridLineStartPadding).attr("transform-origin",function(e,i){return(T(e.start)+n+.5*(T(e.end)-T(e.start))).toString()+"px "+(i*t+.5*o).toString()+"px"}).attr("class","exclude-range")}function _(t,e,i,s){if(i<=0||t>e)return 1/0;let n=d.duration({[s??"day"]:i}).asMilliseconds();return n<=0?1/0:Math.ceil((e-t)/n)}function D(t,e,i,n){let r,o=s.db.getDateFormat(),l=s.db.getAxisFormat();r=l||("D"===o?"%d":a.axisFormat??"%Y-%m-%d");let d=(0,k.l78)(T).tickSize(-n+e+a.gridLineStartPadding).tickFormat((0,k.DCK)(r)),u=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(s.db.getTickInterval()||a.tickInterval);if(null!==u){let t=parseInt(u[1],10);if(isNaN(t)||t<=0)c.Rm.warn(`Invalid tick interval value: "${u[1]}". Skipping custom tick interval.`);else{let e=u[2],i=s.db.getWeekday()||a.weekday,n=T.domain(),r=_(n[0],n[1],t,e);if(r>1e4)c.Rm.warn(`The tick interval "${t}${e}" would generate ${r} ticks, which exceeds the maximum allowed (10000). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(e){case"millisecond":d.ticks(k.t6C.every(t));break;case"second":d.ticks(k.ucG.every(t));break;case"minute":d.ticks(k.wXd.every(t));break;case"hour":d.ticks(k.Agd.every(t));break;case"day":d.ticks(k.UAC.every(t));break;case"week":d.ticks(tA[i].every(t));break;case"month":d.ticks(k.Ui6.every(t))}}}if(v.append("g").attr("class","grid").attr("transform","translate("+t+", "+(n-50)+")").call(d).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),s.db.topAxisEnabled()||a.topAxis){let i=(0,k.tlR)(T).tickSize(-n+e+a.gridLineStartPadding).tickFormat((0,k.DCK)(r));if(null!==u){let t=parseInt(u[1],10);if(isNaN(t)||t<=0)c.Rm.warn(`Invalid tick interval value: "${u[1]}". Skipping custom tick interval.`);else{let e=u[2],n=s.db.getWeekday()||a.weekday,r=T.domain();if(1e4>=_(r[0],r[1],t,e))switch(e){case"millisecond":i.ticks(k.t6C.every(t));break;case"second":i.ticks(k.ucG.every(t));break;case"minute":i.ticks(k.wXd.every(t));break;case"hour":i.ticks(k.Agd.every(t));break;case"day":i.ticks(k.UAC.every(t));break;case"week":i.ticks(tA[n].every(t));break;case"month":i.ticks(k.Ui6.every(t))}}}v.append("g").attr("class","grid").attr("transform","translate("+t+", "+e+")").call(i).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function S(t,e){let i=0,s=Object.keys(g).map(t=>[t,g[t]]);v.append("g").selectAll("text").data(s).enter().append(function(t){let e=t[0].split(o.Y2.lineBreakRegex),i=-(e.length-1)/2,s=h.createElementNS("http://www.w3.org/2000/svg","text");for(let[t,n]of(s.setAttribute("dy",i+"em"),e.entries())){let e=h.createElementNS("http://www.w3.org/2000/svg","tspan");e.setAttribute("alignment-baseline","central"),e.setAttribute("x","10"),t>0&&e.setAttribute("dy","1em"),e.textContent=n,s.appendChild(e)}return s}).attr("x",10).attr("y",function(n,r){if(!(r>0))return n[1]*t/2+e;for(let a=0;a<r;a++)return i+=s[r-1][1],n[1]*t/2+i*t+e}).attr("font-size",a.sectionFontSize).attr("class",function(t){for(let[e,i]of y.entries())if(t[0]===i)return"sectionTitle sectionTitle"+e%a.numberSectionStyles;return"sectionTitle"})}function C(t,e,i,n){let r=s.db.getTodayMarker();if("off"===r)return;let o=v.append("g").attr("class","today"),c=new Date,l=o.append("line");l.attr("x1",T(c)+t).attr("x2",T(c)+t).attr("y1",a.titleTopMargin).attr("y2",n-a.titleTopMargin).attr("class","today"),""!==r&&l.attr("style",r.replace(/,/g,";"))}function M(t){let e={},i=[];for(let s=0,n=t.length;s<n;++s)Object.prototype.hasOwnProperty.call(e,t[s])||(e[t[s]]=!0,i.push(t[s]));return i}(0,c.K2)(x,"taskCompare"),m.sort(x),b(m,r,p),(0,o.a$)(v,p,r,a.useMaxWidth),v.append("text").text(s.db.getDiagramTitle()).attr("x",r/2).attr("y",a.titleTopMargin).attr("class","titleText"),(0,c.K2)(b,"makeGantt"),(0,c.K2)($,"drawRects"),(0,c.K2)(w,"drawExcludeDays"),(0,c.K2)(_,"getEstimatedTickCount"),(0,c.K2)(D,"makeGrid"),(0,c.K2)(S,"vertLabels"),(0,c.K2)(C,"drawToday"),(0,c.K2)(M,"checkUnique")},"draw")},styles:(0,c.K2)(t=>`
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2623],{52623:(t,e,i)=>{"use strict";i.d(e,{diagram:()=>tF});var s,n,r,a=i(32563),o=i(97096),c=i(32165),l=i(84485),d=i(27866),u=i(60490),h=i(79942),f=i(62476),m=i(86981),k=i(33948),y=function(){var t=(0,c.K2)(function(t,e,i,s){for(i=i||{},s=t.length;s--;i[t[s]]=e);return i},"o"),e=[6,8,10,12,13,14,15,16,17,18,20,21,22,23,24,25,26,27,28,29,30,31,33,35,36,38,40],i=[1,26],s=[1,27],n=[1,28],r=[1,29],a=[1,30],o=[1,31],l=[1,32],d=[1,33],u=[1,34],h=[1,9],f=[1,10],m=[1,11],k=[1,12],y=[1,13],g=[1,14],p=[1,15],v=[1,16],T=[1,19],x=[1,20],b=[1,21],$=[1,22],w=[1,23],_=[1,25],D=[1,35],S={trace:(0,c.K2)(function(){},"trace"),yy:{},symbols_:{error:2,start:3,gantt:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NL:10,weekday:11,weekday_monday:12,weekday_tuesday:13,weekday_wednesday:14,weekday_thursday:15,weekday_friday:16,weekday_saturday:17,weekday_sunday:18,weekend:19,weekend_friday:20,weekend_saturday:21,dateFormat:22,inclusiveEndDates:23,topAxis:24,axisFormat:25,tickInterval:26,excludes:27,includes:28,todayMarker:29,title:30,acc_title:31,acc_title_value:32,acc_descr:33,acc_descr_value:34,acc_descr_multiline_value:35,section:36,clickStatement:37,taskTxt:38,taskData:39,click:40,callbackname:41,callbackargs:42,href:43,clickStatementDebug:44,$accept:0,$end:1},terminals_:{2:"error",4:"gantt",6:"EOF",8:"SPACE",10:"NL",12:"weekday_monday",13:"weekday_tuesday",14:"weekday_wednesday",15:"weekday_thursday",16:"weekday_friday",17:"weekday_saturday",18:"weekday_sunday",20:"weekend_friday",21:"weekend_saturday",22:"dateFormat",23:"inclusiveEndDates",24:"topAxis",25:"axisFormat",26:"tickInterval",27:"excludes",28:"includes",29:"todayMarker",30:"title",31:"acc_title",32:"acc_title_value",33:"acc_descr",34:"acc_descr_value",35:"acc_descr_multiline_value",36:"section",38:"taskTxt",39:"taskData",40:"click",41:"callbackname",42:"callbackargs",43:"href"},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[11,1],[19,1],[19,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,1],[9,2],[9,2],[9,1],[9,1],[9,1],[9,2],[37,2],[37,3],[37,3],[37,4],[37,3],[37,4],[37,2],[44,2],[44,3],[44,3],[44,4],[44,3],[44,4],[44,2]],performAction:(0,c.K2)(function(t,e,i,s,n,r,a){var o=r.length-1;switch(n){case 1:return r[o-1];case 2:case 6:case 7:this.$=[];break;case 3:r[o-1].push(r[o]),this.$=r[o-1];break;case 4:case 5:this.$=r[o];break;case 8:s.setWeekday("monday");break;case 9:s.setWeekday("tuesday");break;case 10:s.setWeekday("wednesday");break;case 11:s.setWeekday("thursday");break;case 12:s.setWeekday("friday");break;case 13:s.setWeekday("saturday");break;case 14:s.setWeekday("sunday");break;case 15:s.setWeekend("friday");break;case 16:s.setWeekend("saturday");break;case 17:s.setDateFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 18:s.enableInclusiveEndDates(),this.$=r[o].substr(18);break;case 19:s.TopAxis(),this.$=r[o].substr(8);break;case 20:s.setAxisFormat(r[o].substr(11)),this.$=r[o].substr(11);break;case 21:s.setTickInterval(r[o].substr(13)),this.$=r[o].substr(13);break;case 22:s.setExcludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 23:s.setIncludes(r[o].substr(9)),this.$=r[o].substr(9);break;case 24:s.setTodayMarker(r[o].substr(12)),this.$=r[o].substr(12);break;case 27:s.setDiagramTitle(r[o].substr(6)),this.$=r[o].substr(6);break;case 28:this.$=r[o].trim(),s.setAccTitle(this.$);break;case 29:case 30:this.$=r[o].trim(),s.setAccDescription(this.$);break;case 31:s.addSection(r[o].substr(8)),this.$=r[o].substr(8);break;case 33:s.addTask(r[o-1],r[o]),this.$="task";break;case 34:this.$=r[o-1],s.setClickEvent(r[o-1],r[o],null);break;case 35:this.$=r[o-2],s.setClickEvent(r[o-2],r[o-1],r[o]);break;case 36:this.$=r[o-2],s.setClickEvent(r[o-2],r[o-1],null),s.setLink(r[o-2],r[o]);break;case 37:this.$=r[o-3],s.setClickEvent(r[o-3],r[o-2],r[o-1]),s.setLink(r[o-3],r[o]);break;case 38:this.$=r[o-2],s.setClickEvent(r[o-2],r[o],null),s.setLink(r[o-2],r[o-1]);break;case 39:this.$=r[o-3],s.setClickEvent(r[o-3],r[o-1],r[o]),s.setLink(r[o-3],r[o-2]);break;case 40:this.$=r[o-1],s.setLink(r[o-1],r[o]);break;case 41:case 47:this.$=r[o-1]+" "+r[o];break;case 42:case 43:case 45:this.$=r[o-2]+" "+r[o-1]+" "+r[o];break;case 44:case 46:this.$=r[o-3]+" "+r[o-2]+" "+r[o-1]+" "+r[o]}},"anonymous"),table:[{3:1,4:[1,2]},{1:[3]},t(e,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:17,12:i,13:s,14:n,15:r,16:a,17:o,18:l,19:18,20:d,21:u,22:h,23:f,24:m,25:k,26:y,27:g,28:p,29:v,30:T,31:x,33:b,35:$,36:w,37:24,38:_,40:D},t(e,[2,7],{1:[2,1]}),t(e,[2,3]),{9:36,11:17,12:i,13:s,14:n,15:r,16:a,17:o,18:l,19:18,20:d,21:u,22:h,23:f,24:m,25:k,26:y,27:g,28:p,29:v,30:T,31:x,33:b,35:$,36:w,37:24,38:_,40:D},t(e,[2,5]),t(e,[2,6]),t(e,[2,17]),t(e,[2,18]),t(e,[2,19]),t(e,[2,20]),t(e,[2,21]),t(e,[2,22]),t(e,[2,23]),t(e,[2,24]),t(e,[2,25]),t(e,[2,26]),t(e,[2,27]),{32:[1,37]},{34:[1,38]},t(e,[2,30]),t(e,[2,31]),t(e,[2,32]),{39:[1,39]},t(e,[2,8]),t(e,[2,9]),t(e,[2,10]),t(e,[2,11]),t(e,[2,12]),t(e,[2,13]),t(e,[2,14]),t(e,[2,15]),t(e,[2,16]),{41:[1,40],43:[1,41]},t(e,[2,4]),t(e,[2,28]),t(e,[2,29]),t(e,[2,33]),t(e,[2,34],{42:[1,42],43:[1,43]}),t(e,[2,40],{41:[1,44]}),t(e,[2,35],{43:[1,45]}),t(e,[2,36]),t(e,[2,38],{42:[1,46]}),t(e,[2,37]),t(e,[2,39])],defaultActions:{},parseError:(0,c.K2)(function(t,e){if(e.recoverable)this.trace(t);else{var i=Error(t);throw i.hash=e,i}},"parseError"),parse:(0,c.K2)(function(t){var e=this,i=[0],s=[],n=[null],r=[],a=this.table,o="",l=0,d=0,u=0,h=r.slice.call(arguments,1),f=Object.create(this.lexer),m={};for(var k in this.yy)Object.prototype.hasOwnProperty.call(this.yy,k)&&(m[k]=this.yy[k]);f.setInput(t,m),m.lexer=f,m.parser=this,void 0===f.yylloc&&(f.yylloc={});var y=f.yylloc;r.push(y);var g=f.options&&f.options.ranges;function p(){var t;return"number"!=typeof(t=s.pop()||f.lex()||1)&&(t instanceof Array&&(t=(s=t).pop()),t=e.symbols_[t]||t),t}"function"==typeof m.parseError?this.parseError=m.parseError:this.parseError=Object.getPrototypeOf(this).parseError,(0,c.K2)(function(t){i.length=i.length-2*t,n.length=n.length-t,r.length=r.length-t},"popStack"),(0,c.K2)(p,"lex");for(var v,T,x,b,$,w,_,D,S,C={};;){if(x=i[i.length-1],this.defaultActions[x]?b=this.defaultActions[x]:(null==v&&(v=p()),b=a[x]&&a[x][v]),void 0===b||!b.length||!b[0]){var M="";for(w in S=[],a[x])this.terminals_[w]&&w>2&&S.push("'"+this.terminals_[w]+"'");M=f.showPosition?"Parse error on line "+(l+1)+":\n"+f.showPosition()+"\nExpecting "+S.join(", ")+", got '"+(this.terminals_[v]||v)+"'":"Parse error on line "+(l+1)+": Unexpected "+(1==v?"end of input":"'"+(this.terminals_[v]||v)+"'"),this.parseError(M,{text:f.match,token:this.terminals_[v]||v,line:f.yylineno,loc:y,expected:S})}if(b[0]instanceof Array&&b.length>1)throw Error("Parse Error: multiple actions possible at state: "+x+", token: "+v);switch(b[0]){case 1:i.push(v),n.push(f.yytext),r.push(f.yylloc),i.push(b[1]),v=null,T?(v=T,T=null):(d=f.yyleng,o=f.yytext,l=f.yylineno,y=f.yylloc,u>0&&u--);break;case 2:if(_=this.productions_[b[1]][1],C.$=n[n.length-_],C._$={first_line:r[r.length-(_||1)].first_line,last_line:r[r.length-1].last_line,first_column:r[r.length-(_||1)].first_column,last_column:r[r.length-1].last_column},g&&(C._$.range=[r[r.length-(_||1)].range[0],r[r.length-1].range[1]]),void 0!==($=this.performAction.apply(C,[o,d,l,m,b[1],n,r].concat(h))))return $;_&&(i=i.slice(0,-1*_*2),n=n.slice(0,-1*_),r=r.slice(0,-1*_)),i.push(this.productions_[b[1]][0]),n.push(C.$),r.push(C._$),D=a[i[i.length-2]][i[i.length-1]],i.push(D);break;case 3:return!0}}return!0},"parse")};function C(){this.yy={}}return S.lexer={EOF:1,parseError:(0,c.K2)(function(t,e){if(this.yy.parser)this.yy.parser.parseError(t,e);else throw Error(t)},"parseError"),setInput:(0,c.K2)(function(t,e){return this.yy=e||this.yy||{},this._input=t,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,c.K2)(function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.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),t},"input"),unput:(0,c.K2)(function(t){var e=t.length,i=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var s=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),i.length-1&&(this.yylineno-=i.length-1);var n=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:i?(i.length===s.length?this.yylloc.first_column:0)+s[s.length-i.length].length-i[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[n[0],n[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},"unput"),more:(0,c.K2)(function(){return this._more=!0,this},"more"),reject:(0,c.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,c.K2)(function(t){this.unput(this.match.slice(t))},"less"),pastInput:(0,c.K2)(function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:(0,c.K2)(function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:(0,c.K2)(function(){var t=this.pastInput(),e=Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},"showPosition"),test_match:(0,c.K2)(function(t,e){var i,s,n;if(this.options.backtrack_lexer&&(n={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&&(n.yylloc.range=this.yylloc.range.slice(0))),(s=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=s.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:s?s[s.length-1].length-s[s.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,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(t[0].length),this.matched+=t[0],i=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),i)return i;if(this._backtrack)for(var r in n)this[r]=n[r];return!1},"test_match"),next:(0,c.K2)(function(){if(this.done)return this.EOF;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var t,e,i,s,n=this._currentRules(),r=0;r<n.length;r++)if((i=this._input.match(this.rules[n[r]]))&&(!e||i[0].length>e[0].length)){if(e=i,s=r,this.options.backtrack_lexer){if(!1!==(t=this.test_match(i,n[r])))return t;if(!this._backtrack)return!1;e=!1;continue}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,n[s]))&&t:""===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,c.K2)(function(){var t=this.next();return t||this.lex()},"lex"),begin:(0,c.K2)(function(t){this.conditionStack.push(t)},"begin"),popState:(0,c.K2)(function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},"popState"),_currentRules:(0,c.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,c.K2)(function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},"topState"),pushState:(0,c.K2)(function(t){this.begin(t)},"pushState"),stateStackSize:(0,c.K2)(function(){return this.conditionStack.length},"stateStackSize"),options:{"case-insensitive":!0},performAction:(0,c.K2)(function(t,e,i,s){switch(i){case 0:return this.begin("open_directive"),"open_directive";case 1:return this.begin("acc_title"),31;case 2:return this.popState(),"acc_title_value";case 3:return this.begin("acc_descr"),33;case 4:return this.popState(),"acc_descr_value";case 5:this.begin("acc_descr_multiline");break;case 6:case 15:case 18:case 21:case 24:this.popState();break;case 7:return"acc_descr_multiline_value";case 8:case 9:case 10:case 12:case 13:break;case 11:return 10;case 14:this.begin("href");break;case 16:return 43;case 17:this.begin("callbackname");break;case 19:this.popState(),this.begin("callbackargs");break;case 20:return 41;case 22:return 42;case 23:this.begin("click");break;case 25:return 40;case 26:return 4;case 27:return 22;case 28:return 23;case 29:return 24;case 30:return 25;case 31:return 26;case 32:return 28;case 33:return 27;case 34:return 29;case 35:return 12;case 36:return 13;case 37:return 14;case 38:return 15;case 39:return 16;case 40:return 17;case 41:return 18;case 42:return 20;case 43:return 21;case 44:return"date";case 45:return 30;case 46:return"accDescription";case 47:return 36;case 48:return 38;case 49:return 39;case 50:return":";case 51:return 6;case 52:return"INVALID"}},"anonymous"),rules:[/^(?:%%\{)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:weekday\s+monday\b)/i,/^(?:weekday\s+tuesday\b)/i,/^(?:weekday\s+wednesday\b)/i,/^(?:weekday\s+thursday\b)/i,/^(?:weekday\s+friday\b)/i,/^(?:weekday\s+saturday\b)/i,/^(?:weekday\s+sunday\b)/i,/^(?:weekend\s+friday\b)/i,/^(?:weekend\s+saturday\b)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^\n]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^\n]+)/i,/^(?:[^:\n]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[6,7],inclusive:!1},acc_descr:{rules:[4],inclusive:!1},acc_title:{rules:[2],inclusive:!1},callbackargs:{rules:[21,22],inclusive:!1},callbackname:{rules:[18,19,20],inclusive:!1},href:{rules:[15,16],inclusive:!1},click:{rules:[24,25],inclusive:!1},INITIAL:{rules:[0,1,3,5,8,9,10,11,12,13,14,17,23,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],inclusive:!0}}},(0,c.K2)(C,"Parser"),C.prototype=S,S.Parser=C,new C}();y.parser=y,d.extend(u),d.extend(h),d.extend(f);var g={friday:5,saturday:6},p="",v="",T=void 0,x="",b=[],$=[],w=new Map,_=[],D=[],S="",C="",M=["active","done","crit","milestone","vert"],K=[],Y="",E=!1,L=!1,O="sunday",A="saturday",I=0,F=(0,c.K2)(function(){_=[],D=[],S="",K=[],ty=0,s=void 0,n=void 0,tT=[],p="",v="",C="",T=void 0,x="",b=[],$=[],E=!1,L=!1,I=0,w=new Map,Y="",(0,o.IU)(),O="sunday",A="saturday"},"clear"),W=(0,c.K2)(function(t){Y=t},"setDiagramId"),P=(0,c.K2)(function(t){v=t},"setAxisFormat"),H=(0,c.K2)(function(){return v},"getAxisFormat"),N=(0,c.K2)(function(t){T=t},"setTickInterval"),z=(0,c.K2)(function(){return T},"getTickInterval"),B=(0,c.K2)(function(t){x=t},"setTodayMarker"),R=(0,c.K2)(function(){return x},"getTodayMarker"),G=(0,c.K2)(function(t){p=t},"setDateFormat"),j=(0,c.K2)(function(){E=!0},"enableInclusiveEndDates"),U=(0,c.K2)(function(){return E},"endDatesAreInclusive"),V=(0,c.K2)(function(){L=!0},"enableTopAxis"),Z=(0,c.K2)(function(){return L},"topAxisEnabled"),X=(0,c.K2)(function(t){C=t},"setDisplayMode"),q=(0,c.K2)(function(){return C},"getDisplayMode"),Q=(0,c.K2)(function(){return p},"getDateFormat"),J=(0,c.K2)(function(t){b=t.toLowerCase().split(/[\s,]+/)},"setIncludes"),tt=(0,c.K2)(function(){return b},"getIncludes"),te=(0,c.K2)(function(t){$=t.toLowerCase().split(/[\s,]+/)},"setExcludes"),ti=(0,c.K2)(function(){return $},"getExcludes"),ts=(0,c.K2)(function(){return w},"getLinks"),tn=(0,c.K2)(function(t){S=t,_.push(t)},"addSection"),tr=(0,c.K2)(function(){return _},"getSections"),ta=(0,c.K2)(function(){let t=t_(),e=0;for(;!t&&e<10;)t=t_(),e++;return D=tT},"getTasks"),to=(0,c.K2)(function(t,e,i,s){let n=t.format(e.trim()),r=t.format("YYYY-MM-DD");return!(s.includes(n)||s.includes(r))&&(!!(i.includes("weekends")&&(t.isoWeekday()===g[A]||t.isoWeekday()===g[A]+1)||i.includes(t.format("dddd").toLowerCase()))||i.includes(n)||i.includes(r))},"isInvalidDate"),tc=(0,c.K2)(function(t){O=t},"setWeekday"),tl=(0,c.K2)(function(){return O},"getWeekday"),td=(0,c.K2)(function(t){A=t},"setWeekend"),tu=(0,c.K2)(function(t,e,i,s){let n;if(!i.length||t.manualEndTime)return;let[r,a]=th(n=(n=t.startTime instanceof Date?d(t.startTime):d(t.startTime,e,!0)).add(1,"d"),t.endTime instanceof Date?d(t.endTime):d(t.endTime,e,!0),e,i,s);t.endTime=r.toDate(),t.renderEndTime=a},"checkTaskDates"),th=(0,c.K2)(function(t,e,i,s,n){let r=!1,a=null,o=e.add(1e4,"d");for(;t<=e;){if(r||(a=e.toDate()),(r=to(t,i,s,n))&&(e=e.add(1,"d"))>o)throw Error("Failed to find a valid date that was not excluded by `excludes` after 10,000 iterations.");t=t.add(1,"d")}return[e,a]},"fixTaskDates"),tf=(0,c.K2)(function(t,e,i){if(i=i.trim(),(0,c.K2)(t=>{let e=t.trim();return"x"===e||"X"===e},"isTimestampFormat")(e)&&/^\d+$/.test(i))return new Date(Number(i));let s=/^after\s+(?<ids>[\d\w- ]+)/.exec(i);if(null!==s){let t=null;for(let e of s.groups.ids.split(" ")){let i=t$(e);void 0!==i&&(!t||i.endTime>t.endTime)&&(t=i)}if(t)return t.endTime;let e=new Date;return e.setHours(0,0,0,0),e}let n=d(i,e.trim(),!0);if(n.isValid())return n.toDate();{c.Rm.debug("Invalid date:"+i),c.Rm.debug("With date format:"+e.trim());let t=new Date(i);if(void 0===t||isNaN(t.getTime())||-1e4>t.getFullYear()||t.getFullYear()>1e4)throw Error("Invalid date:"+i);return t}},"getStartDate"),tm=(0,c.K2)(function(t){let e=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(t.trim());return null!==e?[Number.parseFloat(e[1]),e[2]]:[0/0,"ms"]},"parseDuration"),tk=(0,c.K2)(function(t,e,i,s=!1){i=i.trim();let n=/^until\s+(?<ids>[\d\w- ]+)/.exec(i);if(null!==n){let t=null;for(let e of n.groups.ids.split(" ")){let i=t$(e);void 0!==i&&(!t||i.startTime<t.startTime)&&(t=i)}if(t)return t.startTime;let e=new Date;return e.setHours(0,0,0,0),e}let r=d(i,e.trim(),!0);if(r.isValid())return s&&(r=r.add(1,"d")),r.toDate();let a=d(t),[o,c]=tm(i);if(!Number.isNaN(o)){let t=a.add(o,c);t.isValid()&&(a=t)}return a.toDate()},"getEndDate"),ty=0,tg=(0,c.K2)(function(t){return void 0===t?"task"+(ty+=1):t},"parseId"),tp=(0,c.K2)(function(t,e){let i=(":"===e.substr(0,1)?e.substr(1,e.length):e).split(","),s={};tL(i,s,M);for(let t=0;t<i.length;t++)i[t]=i[t].trim();let n="";switch(i.length){case 1:s.id=tg(),s.startTime=t.endTime,n=i[0];break;case 2:s.id=tg(),s.startTime=tf(void 0,p,i[0]),n=i[1];break;case 3:s.id=tg(i[0]),s.startTime=tf(void 0,p,i[1]),n=i[2]}return n&&(s.endTime=tk(s.startTime,p,n,E),s.manualEndTime=d(n,"YYYY-MM-DD",!0).isValid(),tu(s,p,$,b)),s},"compileData"),tv=(0,c.K2)(function(t,e){let i=(":"===e.substr(0,1)?e.substr(1,e.length):e).split(","),s={};tL(i,s,M);for(let t=0;t<i.length;t++)i[t]=i[t].trim();switch(i.length){case 1:s.id=tg(),s.startTime={type:"prevTaskEnd",id:t},s.endTime={data:i[0]};break;case 2:s.id=tg(),s.startTime={type:"getStartDate",startData:i[0]},s.endTime={data:i[1]};break;case 3:s.id=tg(i[0]),s.startTime={type:"getStartDate",startData:i[1]},s.endTime={data:i[2]}}return s},"parseData"),tT=[],tx={},tb=(0,c.K2)(function(t,e){let i={section:S,type:S,processed:!1,manualEndTime:!1,renderEndTime:null,raw:{data:e},task:t,classes:[]},s=tv(n,e);i.raw.startTime=s.startTime,i.raw.endTime=s.endTime,i.id=s.id,i.prevTaskId=n,i.active=s.active,i.done=s.done,i.crit=s.crit,i.milestone=s.milestone,i.vert=s.vert,i.order=I,I++;let r=tT.push(i);n=i.id,tx[i.id]=r-1},"addTask"),t$=(0,c.K2)(function(t){return tT[tx[t]]},"findTaskById"),tw=(0,c.K2)(function(t,e){let i={section:S,type:S,description:t,task:t,classes:[]},n=tp(s,e);i.startTime=n.startTime,i.endTime=n.endTime,i.id=n.id,i.active=n.active,i.done=n.done,i.crit=n.crit,i.milestone=n.milestone,i.vert=n.vert,s=i,D.push(i)},"addTaskOrg"),t_=(0,c.K2)(function(){let t=(0,c.K2)(function(t){let e=tT[t],i="";switch(tT[t].raw.startTime.type){case"prevTaskEnd":{let t=t$(e.prevTaskId);e.startTime=t.endTime;break}case"getStartDate":(i=tf(void 0,p,tT[t].raw.startTime.startData))&&(tT[t].startTime=i)}return tT[t].startTime&&(tT[t].endTime=tk(tT[t].startTime,p,tT[t].raw.endTime.data,E),tT[t].endTime&&(tT[t].processed=!0,tT[t].manualEndTime=d(tT[t].raw.endTime.data,"YYYY-MM-DD",!0).isValid(),tu(tT[t],p,$,b))),tT[t].processed},"compileTask"),e=!0;for(let[i,s]of tT.entries())t(i),e=e&&s.processed;return e},"compileTasks"),tD=(0,c.K2)(function(t,e){let i=e;"loose"!==(0,o.D7)().securityLevel&&(i=(0,l.J)(e)),t.split(",").forEach(function(t){void 0!==t$(t)&&(tM(t,()=>{window.open(i,"_self")}),w.set(t,i))}),tS(t,"clickable")},"setLink"),tS=(0,c.K2)(function(t,e){t.split(",").forEach(function(t){let i=t$(t);void 0!==i&&i.classes.push(e)})},"setClass"),tC=(0,c.K2)(function(t,e,i){if("loose"!==(0,o.D7)().securityLevel||void 0===e)return;let s=[];if("string"==typeof i){s=i.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let t=0;t<s.length;t++){let e=s[t].trim();e.startsWith('"')&&e.endsWith('"')&&(e=e.substr(1,e.length-2)),s[t]=e}}0===s.length&&s.push(t),void 0!==t$(t)&&tM(t,()=>{a._K.runFunc(e,...s)})},"setClickFun"),tM=(0,c.K2)(function(t,e){K.push(function(){let i=Y?`${Y}-${t}`:t,s=document.querySelector(`[id="${i}"]`);null!==s&&s.addEventListener("click",function(){e()})},function(){let i=Y?`${Y}-${t}`:t,s=document.querySelector(`[id="${i}-text"]`);null!==s&&s.addEventListener("click",function(){e()})})},"pushFun"),tK=(0,c.K2)(function(t,e,i){t.split(",").forEach(function(t){tC(t,e,i)}),tS(t,"clickable")},"setClickEvent"),tY=(0,c.K2)(function(t){K.forEach(function(e){e(t)})},"bindFunctions"),tE={getConfig:(0,c.K2)(()=>(0,o.D7)().gantt,"getConfig"),clear:F,setDateFormat:G,getDateFormat:Q,enableInclusiveEndDates:j,endDatesAreInclusive:U,enableTopAxis:V,topAxisEnabled:Z,setAxisFormat:P,getAxisFormat:H,setTickInterval:N,getTickInterval:z,setTodayMarker:B,getTodayMarker:R,setAccTitle:o.SV,getAccTitle:o.iN,setDiagramTitle:o.ke,getDiagramTitle:o.ab,setDiagramId:W,setDisplayMode:X,getDisplayMode:q,setAccDescription:o.EI,getAccDescription:o.m7,addSection:tn,getSections:tr,getTasks:ta,addTask:tb,findTaskById:t$,addTaskOrg:tw,setIncludes:J,getIncludes:tt,setExcludes:te,getExcludes:ti,setClickEvent:tK,setLink:tD,getLinks:ts,bindFunctions:tY,parseDuration:tm,isInvalidDate:to,setWeekday:tc,getWeekday:tl,setWeekend:td};function tL(t,e,i){let s=!0;for(;s;)s=!1,i.forEach(function(i){let n=RegExp("^\\s*"+i+"\\s*$");t[0].match(n)&&(e[i]=!0,t.shift(1),s=!0)})}(0,c.K2)(tL,"getTaskTags"),d.extend(m);var tO=(0,c.K2)(function(){c.Rm.debug("Something is calling, setConf, remove the call")},"setConf"),tA={monday:k.ABi,tuesday:k.PGu,wednesday:k.GuW,thursday:k.Mol,friday:k.TUC,saturday:k.rGn,sunday:k.YPH},tI=(0,c.K2)((t,e)=>{let i=[...t].map(()=>-1/0),s=[...t].sort((t,e)=>t.startTime-e.startTime||t.order-e.order),n=0;for(let t of s)for(let s=0;s<i.length;s++)if(t.startTime>=i[s]){i[s]=t.endTime,t.order=s+e,s>n&&(n=s);break}return n},"getMaxIntersections"),tF={parser:y,db:tE,renderer:{setConf:tO,draw:(0,c.K2)(function(t,e,i,s){let n,a=(0,o.D7)().gantt;s.db.setDiagramId(e);let l=(0,o.D7)().securityLevel;"sandbox"===l&&(n=(0,k.Ltv)("#i"+e));let u="sandbox"===l?(0,k.Ltv)(n.nodes()[0].contentDocument.body):(0,k.Ltv)("body"),h="sandbox"===l?n.nodes()[0].contentDocument:document,f=h.getElementById(e);void 0===(r=f.parentElement.offsetWidth)&&(r=1200),void 0!==a.useWidth&&(r=a.useWidth);let m=s.db.getTasks(),y=[];for(let t of m)y.push(t.type);y=M(y);let g={},p=2*a.topPadding;if("compact"===s.db.getDisplayMode()||"compact"===a.displayMode){let t={};for(let e of m)void 0===t[e.section]?t[e.section]=[e]:t[e.section].push(e);let e=0;for(let i of Object.keys(t)){let s=tI(t[i],e)+1;e+=s,p+=s*(a.barHeight+a.barGap),g[i]=s}}else for(let t of(p+=m.length*(a.barHeight+a.barGap),y))g[t]=m.filter(e=>e.type===t).length;f.setAttribute("viewBox","0 0 "+r+" "+p);let v=u.select(`[id="${e}"]`),T=(0,k.w7C)().domain([(0,k.jkA)(m,function(t){return t.startTime}),(0,k.T9B)(m,function(t){return t.endTime})]).rangeRound([0,r-a.leftPadding-a.rightPadding]);function x(t,e){let i=t.startTime,s=e.startTime,n=0;return i>s?n=1:i<s&&(n=-1),n}function b(t,e,i){let n=a.barHeight,r=n+a.barGap,o=a.topPadding,c=a.leftPadding,l=(0,k.m4Y)().domain([0,y.length]).range(["#00B9FA","#F95002"]).interpolate(k.bEH);w(r,o,c,e,i,t,s.db.getExcludes(),s.db.getIncludes()),D(c,o,e,i),$(t,r,o,c,n,l,e),S(r,o),C(c,o,e,i)}function $(t,i,n,r,c,l,d){t.sort((t,e)=>t.vert===e.vert?0:t.vert?1:-1);let u=[...new Set(t.map(t=>t.order))].map(e=>t.find(t=>t.order===e));v.append("g").selectAll("rect").data(u).enter().append("rect").attr("x",0).attr("y",function(t,e){return t.order*i+n-2}).attr("width",function(){return d-a.rightPadding/2}).attr("height",i).attr("class",function(t){for(let[e,i]of y.entries())if(t.type===i)return"section section"+e%a.numberSectionStyles;return"section section0"}).enter();let h=v.append("g").selectAll("rect").data(t).enter(),f=s.db.getLinks();if(h.append("rect").attr("id",function(t){return e+"-"+t.id}).attr("rx",3).attr("ry",3).attr("x",function(t){return t.milestone?T(t.startTime)+r+.5*(T(t.endTime)-T(t.startTime))-.5*c:T(t.startTime)+r}).attr("y",function(t,e){return(e=t.order,t.vert)?a.gridLineStartPadding:e*i+n}).attr("width",function(t){return t.milestone?c:t.vert?.08*c:T(t.renderEndTime||t.endTime)-T(t.startTime)}).attr("height",function(t){return t.vert?m.length*(a.barHeight+a.barGap)+2*a.barHeight:c}).attr("transform-origin",function(t,e){return e=t.order,(T(t.startTime)+r+.5*(T(t.endTime)-T(t.startTime))).toString()+"px "+(e*i+n+.5*c).toString()+"px"}).attr("class",function(t){let e="";t.classes.length>0&&(e=t.classes.join(" "));let i=0;for(let[e,s]of y.entries())t.type===s&&(i=e%a.numberSectionStyles);let s="";return t.active?t.crit?s+=" activeCrit":s=" active":t.done?s=t.crit?" doneCrit":" done":t.crit&&(s+=" crit"),0===s.length&&(s=" task"),t.milestone&&(s=" milestone "+s),t.vert&&(s=" vert "+s),s+=i,"task"+(s+=" "+e)}),h.append("text").attr("id",function(t){return e+"-"+t.id+"-text"}).text(function(t){return t.task}).attr("font-size",a.fontSize).attr("x",function(t){let e=T(t.startTime),i=T(t.renderEndTime||t.endTime);if(t.milestone&&(e+=.5*(T(t.endTime)-T(t.startTime))-.5*c,i=e+c),t.vert)return T(t.startTime)+r;let s=this.getBBox().width;return s>i-e?i+s+1.5*a.leftPadding>d?e+r-5:i+r+5:(i-e)/2+e+r}).attr("y",function(t,e){return t.vert?a.gridLineStartPadding+m.length*(a.barHeight+a.barGap)+60:t.order*i+a.barHeight/2+(a.fontSize/2-2)+n}).attr("text-height",c).attr("class",function(t){let e=T(t.startTime),i=T(t.endTime);t.milestone&&(i=e+c);let s=this.getBBox().width,n="";t.classes.length>0&&(n=t.classes.join(" "));let r=0;for(let[e,i]of y.entries())t.type===i&&(r=e%a.numberSectionStyles);let o="";return(t.active&&(o=t.crit?"activeCritText"+r:"activeText"+r),t.done?o=t.crit?o+" doneCritText"+r:o+" doneText"+r:t.crit&&(o=o+" critText"+r),t.milestone&&(o+=" milestoneText"),t.vert&&(o+=" vertText"),s>i-e)?i+s+1.5*a.leftPadding>d?n+" taskTextOutsideLeft taskTextOutside"+r+" "+o:n+" taskTextOutsideRight taskTextOutside"+r+" "+o+" width-"+s:n+" taskText taskText"+r+" "+o+" width-"+s}),"sandbox"===(0,o.D7)().securityLevel){let t=(0,k.Ltv)("#i"+e).nodes()[0].contentDocument;h.filter(function(t){return f.has(t.id)}).each(function(i){var s=t.querySelector("#"+CSS.escape(e+"-"+i.id)),n=t.querySelector("#"+CSS.escape(e+"-"+i.id+"-text"));let r=s.parentNode;var a=t.createElement("a");a.setAttribute("xlink:href",f.get(i.id)),a.setAttribute("target","_top"),r.appendChild(a),a.appendChild(s),a.appendChild(n)})}}function w(t,i,n,r,o,l,u,h){let f,m;if(0===u.length&&0===h.length)return;for(let{startTime:t,endTime:e}of l)(void 0===f||t<f)&&(f=t),(void 0===m||e>m)&&(m=e);if(!f||!m)return;if(d(m).diff(d(f),"year")>5)return void c.Rm.warn("The difference between the min and max time is more than 5 years. This will cause performance issues. Skipping drawing exclude days.");let k=s.db.getDateFormat(),y=[],g=null,p=d(f);for(;p.valueOf()<=m;)s.db.isInvalidDate(p,k,u,h)?g?g.end=p:g={start:p,end:p}:g&&(y.push(g),g=null),p=p.add(1,"d");v.append("g").selectAll("rect").data(y).enter().append("rect").attr("id",t=>e+"-exclude-"+t.start.format("YYYY-MM-DD")).attr("x",t=>T(t.start.startOf("day"))+n).attr("y",a.gridLineStartPadding).attr("width",t=>T(t.end.endOf("day"))-T(t.start.startOf("day"))).attr("height",o-i-a.gridLineStartPadding).attr("transform-origin",function(e,i){return(T(e.start)+n+.5*(T(e.end)-T(e.start))).toString()+"px "+(i*t+.5*o).toString()+"px"}).attr("class","exclude-range")}function _(t,e,i,s){if(i<=0||t>e)return 1/0;let n=d.duration({[s??"day"]:i}).asMilliseconds();return n<=0?1/0:Math.ceil((e-t)/n)}function D(t,e,i,n){let r,o=s.db.getDateFormat(),l=s.db.getAxisFormat();r=l||("D"===o?"%d":a.axisFormat??"%Y-%m-%d");let d=(0,k.l78)(T).tickSize(-n+e+a.gridLineStartPadding).tickFormat((0,k.DCK)(r)),u=/^([1-9]\d*)(millisecond|second|minute|hour|day|week|month)$/.exec(s.db.getTickInterval()||a.tickInterval);if(null!==u){let t=parseInt(u[1],10);if(isNaN(t)||t<=0)c.Rm.warn(`Invalid tick interval value: "${u[1]}". Skipping custom tick interval.`);else{let e=u[2],i=s.db.getWeekday()||a.weekday,n=T.domain(),r=_(n[0],n[1],t,e);if(r>1e4)c.Rm.warn(`The tick interval "${t}${e}" would generate ${r} ticks, which exceeds the maximum allowed (10000). This may indicate an invalid date or time range. Skipping custom tick interval.`);else switch(e){case"millisecond":d.ticks(k.t6C.every(t));break;case"second":d.ticks(k.ucG.every(t));break;case"minute":d.ticks(k.wXd.every(t));break;case"hour":d.ticks(k.Agd.every(t));break;case"day":d.ticks(k.UAC.every(t));break;case"week":d.ticks(tA[i].every(t));break;case"month":d.ticks(k.Ui6.every(t))}}}if(v.append("g").attr("class","grid").attr("transform","translate("+t+", "+(n-50)+")").call(d).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),s.db.topAxisEnabled()||a.topAxis){let i=(0,k.tlR)(T).tickSize(-n+e+a.gridLineStartPadding).tickFormat((0,k.DCK)(r));if(null!==u){let t=parseInt(u[1],10);if(isNaN(t)||t<=0)c.Rm.warn(`Invalid tick interval value: "${u[1]}". Skipping custom tick interval.`);else{let e=u[2],n=s.db.getWeekday()||a.weekday,r=T.domain();if(1e4>=_(r[0],r[1],t,e))switch(e){case"millisecond":i.ticks(k.t6C.every(t));break;case"second":i.ticks(k.ucG.every(t));break;case"minute":i.ticks(k.wXd.every(t));break;case"hour":i.ticks(k.Agd.every(t));break;case"day":i.ticks(k.UAC.every(t));break;case"week":i.ticks(tA[n].every(t));break;case"month":i.ticks(k.Ui6.every(t))}}}v.append("g").attr("class","grid").attr("transform","translate("+t+", "+e+")").call(i).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function S(t,e){let i=0,s=Object.keys(g).map(t=>[t,g[t]]);v.append("g").selectAll("text").data(s).enter().append(function(t){let e=t[0].split(o.Y2.lineBreakRegex),i=-(e.length-1)/2,s=h.createElementNS("http://www.w3.org/2000/svg","text");for(let[t,n]of(s.setAttribute("dy",i+"em"),e.entries())){let e=h.createElementNS("http://www.w3.org/2000/svg","tspan");e.setAttribute("alignment-baseline","central"),e.setAttribute("x","10"),t>0&&e.setAttribute("dy","1em"),e.textContent=n,s.appendChild(e)}return s}).attr("x",10).attr("y",function(n,r){if(!(r>0))return n[1]*t/2+e;for(let a=0;a<r;a++)return i+=s[r-1][1],n[1]*t/2+i*t+e}).attr("font-size",a.sectionFontSize).attr("class",function(t){for(let[e,i]of y.entries())if(t[0]===i)return"sectionTitle sectionTitle"+e%a.numberSectionStyles;return"sectionTitle"})}function C(t,e,i,n){let r=s.db.getTodayMarker();if("off"===r)return;let o=v.append("g").attr("class","today"),c=new Date,l=o.append("line");l.attr("x1",T(c)+t).attr("x2",T(c)+t).attr("y1",a.titleTopMargin).attr("y2",n-a.titleTopMargin).attr("class","today"),""!==r&&l.attr("style",r.replace(/,/g,";"))}function M(t){let e={},i=[];for(let s=0,n=t.length;s<n;++s)Object.prototype.hasOwnProperty.call(e,t[s])||(e[t[s]]=!0,i.push(t[s]));return i}(0,c.K2)(x,"taskCompare"),m.sort(x),b(m,r,p),(0,o.a$)(v,p,r,a.useMaxWidth),v.append("text").text(s.db.getDiagramTitle()).attr("x",r/2).attr("y",a.titleTopMargin).attr("class","titleText"),(0,c.K2)(b,"makeGantt"),(0,c.K2)($,"drawRects"),(0,c.K2)(w,"drawExcludeDays"),(0,c.K2)(_,"getEstimatedTickCount"),(0,c.K2)(D,"makeGrid"),(0,c.K2)(S,"vertLabels"),(0,c.K2)(C,"drawToday"),(0,c.K2)(M,"checkUnique")},"draw")},styles:(0,c.K2)(t=>`
2
2
  .mermaid-main-font {
3
3
  font-family: ${t.fontFamily};
4
4
  }
@@ -249,7 +249,7 @@
249
249
  fill: ${t.taskTextDarkColor} !important;
250
250
  }
251
251
 
252
- /* Done-crit task text outside the bar \u2014 same reasoning as doneText above. */
252
+ /* Done-crit task text outside the bar — same reasoning as doneText above. */
253
253
  .doneCritText0.taskTextOutsideLeft,
254
254
  .doneCritText0.taskTextOutsideRight,
255
255
  .doneCritText1.taskTextOutsideLeft,