@hienlh/ppm 0.23.12 → 0.23.13

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 (3214) hide show
  1. package/CHANGELOG.md +186 -0
  2. package/CLAUDE.md +41 -6
  3. package/THIRD-PARTY-NOTICES.md +2 -2
  4. package/assets/skills/ppm/SKILL.md +5 -4
  5. package/assets/skills/ppm/references/cli-reference.md +34 -8
  6. package/assets/skills/ppm/references/common-tasks.md +8 -4
  7. package/assets/skills/ppm/references/http-api.md +65 -17
  8. package/bun.lock +53 -41
  9. package/dist/web/assets/_basePickBy-CPcPjurU.js +1 -0
  10. package/dist/web/assets/_basePickBy-CPcPjurU.js.br +0 -0
  11. package/dist/web/assets/_basePickBy-CPcPjurU.js.gz +0 -0
  12. package/dist/web/assets/_baseUniq-DI0z-mx3.js +1 -0
  13. package/dist/web/assets/_baseUniq-DI0z-mx3.js.br +0 -0
  14. package/dist/web/assets/_baseUniq-DI0z-mx3.js.gz +0 -0
  15. package/dist/web/assets/accounts-settings-section-DU-lTifs.js +1 -0
  16. package/dist/web/assets/accounts-settings-section-DU-lTifs.js.br +0 -0
  17. package/dist/web/assets/accounts-settings-section-DU-lTifs.js.gz +0 -0
  18. package/dist/web/assets/adaptive-context-menu-Cq7ynvIn.js +1 -0
  19. package/dist/web/assets/adaptive-context-menu-Cq7ynvIn.js.br +0 -0
  20. package/dist/web/assets/adaptive-context-menu-Cq7ynvIn.js.gz +0 -0
  21. package/dist/web/assets/agent-session-sheet-At6Rt-Yf.js +2 -0
  22. package/dist/web/assets/agent-session-sheet-At6Rt-Yf.js.br +0 -0
  23. package/dist/web/assets/agent-session-sheet-At6Rt-Yf.js.gz +0 -0
  24. package/dist/web/assets/agent-session-sheet-store-BoBrAw5i.js +1 -0
  25. package/dist/web/assets/agent-session-window-content-CB_uvabH.js +1 -0
  26. package/dist/web/assets/agent-session-window-content-CB_uvabH.js.br +0 -0
  27. package/dist/web/assets/agent-session-window-content-CB_uvabH.js.gz +0 -0
  28. package/dist/web/assets/ai-resource-editor-Czearm3I.js +1 -0
  29. package/dist/web/assets/ai-resource-editor-Czearm3I.js.br +0 -0
  30. package/dist/web/assets/ai-resource-editor-Czearm3I.js.gz +0 -0
  31. package/dist/web/assets/ai-settings-section-AOgAUCgH.js +1 -0
  32. package/dist/web/assets/ai-settings-section-B_OFMlrt.js +1 -0
  33. package/dist/web/assets/ai-settings-section-B_OFMlrt.js.br +0 -0
  34. package/dist/web/assets/ai-settings-section-B_OFMlrt.js.gz +0 -0
  35. package/dist/web/assets/android-tab-L7DmLfHG.js +2 -0
  36. package/dist/web/assets/android-tab-L7DmLfHG.js.br +0 -0
  37. package/dist/web/assets/android-tab-L7DmLfHG.js.gz +0 -0
  38. package/dist/web/assets/angular-html-DUhpSne7.js +1 -0
  39. package/dist/web/assets/angular-html-DUhpSne7.js.br +0 -0
  40. package/dist/web/assets/angular-html-DUhpSne7.js.gz +0 -0
  41. package/dist/web/assets/angular-ts-_PmhBAvx.js +1 -0
  42. package/dist/web/assets/angular-ts-_PmhBAvx.js.br +0 -0
  43. package/dist/web/assets/angular-ts-_PmhBAvx.js.gz +0 -0
  44. package/dist/web/assets/api-client-DAQfiXg0.js +1 -0
  45. package/dist/web/assets/api-client-OiA8Ida1.js +1 -0
  46. package/dist/web/assets/api-client-OiA8Ida1.js.br +0 -0
  47. package/dist/web/assets/api-client-OiA8Ida1.js.gz +0 -0
  48. package/dist/web/assets/api-settings-D2H6gjen.js +1 -0
  49. package/dist/web/assets/api-settings-D2H6gjen.js.br +0 -0
  50. package/dist/web/assets/api-settings-D2H6gjen.js.gz +0 -0
  51. package/dist/web/assets/api-settings-DHhcUHtx.js +1 -0
  52. package/dist/web/assets/api-themes-CE8gPZ3X.js +1 -0
  53. package/dist/web/assets/apl-Qu0ab_nv.js +1 -0
  54. package/dist/web/assets/apl-Qu0ab_nv.js.br +0 -0
  55. package/dist/web/assets/apl-Qu0ab_nv.js.gz +0 -0
  56. package/dist/web/assets/appearance-settings-section-s3KWKTBm.js +1 -0
  57. package/dist/web/assets/appearance-settings-section-s3KWKTBm.js.br +0 -0
  58. package/dist/web/assets/appearance-settings-section-s3KWKTBm.js.gz +0 -0
  59. package/dist/web/assets/apps-panel-DaojtUvh.js +1 -0
  60. package/dist/web/assets/apps-panel-DaojtUvh.js.br +0 -0
  61. package/dist/web/assets/apps-panel-DaojtUvh.js.gz +0 -0
  62. package/dist/web/assets/arc-Cbj2MTZU.js +1 -0
  63. package/dist/web/assets/arc-Cbj2MTZU.js.br +0 -0
  64. package/dist/web/assets/arc-Cbj2MTZU.js.gz +0 -0
  65. package/dist/web/assets/architecture-PBZL5I3N-BsjZHebV.js +1 -0
  66. package/dist/web/assets/architectureDiagram-2XIMDMQ5-B5N-uzUB.js +36 -0
  67. package/dist/web/assets/architectureDiagram-2XIMDMQ5-B5N-uzUB.js.br +0 -0
  68. package/dist/web/assets/architectureDiagram-2XIMDMQ5-B5N-uzUB.js.gz +0 -0
  69. package/dist/web/assets/astro-6xSNo-2E.js +1 -0
  70. package/dist/web/assets/astro-6xSNo-2E.js.br +0 -0
  71. package/dist/web/assets/astro-6xSNo-2E.js.gz +0 -0
  72. package/dist/web/assets/audio-preview-CWcPZqTA.js +1 -0
  73. package/dist/web/assets/audio-preview-CWcPZqTA.js.br +4 -0
  74. package/dist/web/assets/audio-preview-CWcPZqTA.js.gz +0 -0
  75. package/dist/web/assets/blade-p7SMjkdK.js +1 -0
  76. package/dist/web/assets/blade-p7SMjkdK.js.br +0 -0
  77. package/dist/web/assets/blade-p7SMjkdK.js.gz +0 -0
  78. package/dist/web/assets/blockDiagram-WCTKOSBZ-CNZJl-ap.js +132 -0
  79. package/dist/web/assets/blockDiagram-WCTKOSBZ-CNZJl-ap.js.br +0 -0
  80. package/dist/web/assets/blockDiagram-WCTKOSBZ-CNZJl-ap.js.gz +0 -0
  81. package/dist/web/assets/branch-review-tab-9UB4ccpF.js +1 -0
  82. package/dist/web/assets/branch-review-tab-9UB4ccpF.js.br +0 -0
  83. package/dist/web/assets/branch-review-tab-9UB4ccpF.js.gz +0 -0
  84. package/dist/web/assets/bsl-D0bT3Wjp.js +1 -0
  85. package/dist/web/assets/bsl-D0bT3Wjp.js.br +0 -0
  86. package/dist/web/assets/bsl-D0bT3Wjp.js.gz +0 -0
  87. package/dist/web/assets/button-Br60hGkw.js +1 -0
  88. package/dist/web/assets/button-Br60hGkw.js.br +0 -0
  89. package/dist/web/assets/button-Br60hGkw.js.gz +0 -0
  90. package/dist/web/assets/c4Diagram-IC4MRINW-hDrfu-4_.js +10 -0
  91. package/dist/web/assets/c4Diagram-IC4MRINW-hDrfu-4_.js.br +0 -0
  92. package/dist/web/assets/c4Diagram-IC4MRINW-hDrfu-4_.js.gz +0 -0
  93. package/dist/web/assets/cairo-DTuGb2w7.js +1 -0
  94. package/dist/web/assets/cairo-DTuGb2w7.js.br +0 -0
  95. package/dist/web/assets/cairo-DTuGb2w7.js.gz +0 -0
  96. package/dist/web/assets/channel-BYWG7Wl4.js +1 -0
  97. package/dist/web/assets/chat-preparation-cache-CRX9WAK5.js +1 -0
  98. package/dist/web/assets/chat-preparation-cache-CRX9WAK5.js.br +0 -0
  99. package/dist/web/assets/chat-preparation-cache-CRX9WAK5.js.gz +0 -0
  100. package/dist/web/assets/chat-tab-DMVb_mgx.js +1 -0
  101. package/dist/web/assets/chat-tab-DMVb_mgx.js.br +0 -0
  102. package/dist/web/assets/chat-tab-DMVb_mgx.js.gz +0 -0
  103. package/dist/web/assets/chat-tab-s7uAnh-h.js +17 -0
  104. package/dist/web/assets/chat-tab-s7uAnh-h.js.br +0 -0
  105. package/dist/web/assets/chat-tab-s7uAnh-h.js.gz +0 -0
  106. package/dist/web/assets/chunk-4BX2VUAB-hVAt6yvs.js +1 -0
  107. package/dist/web/assets/chunk-55IACEB6-C01pkYAe.js +1 -0
  108. package/dist/web/assets/chunk-7E7YKBS2-DzI9lMJG.js +1 -0
  109. package/dist/web/assets/chunk-7R4GIKGN-vQspoIwd.js +80 -0
  110. package/dist/web/assets/chunk-7R4GIKGN-vQspoIwd.js.br +0 -0
  111. package/dist/web/assets/chunk-7R4GIKGN-vQspoIwd.js.gz +0 -0
  112. package/dist/web/assets/chunk-C72U2L5F-B6xz3XVo.js +1 -0
  113. package/dist/web/assets/chunk-EGIJ26TM-piMHBD4l.js +1 -0
  114. package/dist/web/assets/chunk-FMBD7UC4-e6MPEMRh.js +15 -0
  115. package/dist/web/assets/chunk-GEFDOKGD-DnsnpeGb.js +2 -0
  116. package/dist/web/assets/chunk-GEFDOKGD-DnsnpeGb.js.br +0 -0
  117. package/dist/web/assets/chunk-GEFDOKGD-DnsnpeGb.js.gz +0 -0
  118. package/dist/web/assets/chunk-GLR3WWYH-Co8QL50g.js +2 -0
  119. package/dist/web/assets/chunk-GLR3WWYH-Co8QL50g.js.br +0 -0
  120. package/dist/web/assets/chunk-GLR3WWYH-Co8QL50g.js.gz +0 -0
  121. package/dist/web/assets/chunk-HHEYEP7N-CErk3LHZ.js +1 -0
  122. package/dist/web/assets/chunk-JSJVCQXG-B8pwPgsI.js +1 -0
  123. package/dist/web/assets/chunk-JSJVCQXG-B8pwPgsI.js.br +0 -0
  124. package/dist/web/assets/chunk-JSJVCQXG-B8pwPgsI.js.gz +0 -0
  125. package/dist/web/assets/chunk-KX2RTZJC-DeYfi-Vl.js +1 -0
  126. package/dist/web/assets/chunk-KYZI473N-B6LAvX90.js +53 -0
  127. package/dist/web/assets/chunk-KYZI473N-B6LAvX90.js.br +0 -0
  128. package/dist/web/assets/chunk-KYZI473N-B6LAvX90.js.gz +0 -0
  129. package/dist/web/assets/chunk-L3YUKLVL-BM-EQ2IR.js +1 -0
  130. package/dist/web/assets/chunk-MX3YWQON-EGGLXe7u.js +1 -0
  131. package/dist/web/assets/chunk-MX3YWQON-EGGLXe7u.js.br +0 -0
  132. package/dist/web/assets/chunk-MX3YWQON-EGGLXe7u.js.gz +0 -0
  133. package/dist/web/assets/chunk-NQ4KR5QH-BHn5FEPA.js +220 -0
  134. package/dist/web/assets/chunk-NQ4KR5QH-BHn5FEPA.js.br +0 -0
  135. package/dist/web/assets/chunk-NQ4KR5QH-BHn5FEPA.js.gz +0 -0
  136. package/dist/web/assets/chunk-O4XLMI2P-DeFJl-l6.js +7 -0
  137. package/dist/web/assets/chunk-O4XLMI2P-DeFJl-l6.js.br +0 -0
  138. package/dist/web/assets/chunk-O4XLMI2P-DeFJl-l6.js.gz +0 -0
  139. package/dist/web/assets/chunk-OZEHJAEY-BwMHWpJ8.js +1 -0
  140. package/dist/web/assets/chunk-OZEHJAEY-BwMHWpJ8.js.br +0 -0
  141. package/dist/web/assets/chunk-OZEHJAEY-BwMHWpJ8.js.gz +0 -0
  142. package/dist/web/assets/chunk-PQ6SQG4A-B9GHRcOM.js +1 -0
  143. package/dist/web/assets/chunk-PQ6SQG4A-B9GHRcOM.js.br +0 -0
  144. package/dist/web/assets/chunk-PQ6SQG4A-B9GHRcOM.js.gz +0 -0
  145. package/dist/web/assets/chunk-PU5JKC2W-DJY3yjhJ.js +11 -0
  146. package/dist/web/assets/chunk-PU5JKC2W-DJY3yjhJ.js.br +0 -0
  147. package/dist/web/assets/chunk-PU5JKC2W-DJY3yjhJ.js.gz +0 -0
  148. package/dist/web/assets/chunk-QZHKN3VN--KxlfM05.js +1 -0
  149. package/dist/web/assets/chunk-R5LLSJPH-B8fEAHWI.js +1 -0
  150. package/dist/web/assets/chunk-WL4C6EOR-CTOYdnLV.js +189 -0
  151. package/dist/web/assets/chunk-WL4C6EOR-CTOYdnLV.js.br +0 -0
  152. package/dist/web/assets/chunk-WL4C6EOR-CTOYdnLV.js.gz +0 -0
  153. package/dist/web/assets/chunk-XIRO2GV7-CzjzQGr1.js +1 -0
  154. package/dist/web/assets/chunk-XPW4576I-CYBtYKPi.js +32 -0
  155. package/dist/web/assets/chunk-XPW4576I-CYBtYKPi.js.br +0 -0
  156. package/dist/web/assets/chunk-XPW4576I-CYBtYKPi.js.gz +0 -0
  157. package/dist/web/assets/chunk-XZSTWKYB-CkPHeT47.js +94 -0
  158. package/dist/web/assets/chunk-XZSTWKYB-CkPHeT47.js.br +0 -0
  159. package/dist/web/assets/chunk-XZSTWKYB-CkPHeT47.js.gz +0 -0
  160. package/dist/web/assets/chunk-YBOYWFTD-DVV5zPYi.js +1 -0
  161. package/dist/web/assets/classDiagram-VBA2DB6C-fXft2ivd.js +1 -0
  162. package/dist/web/assets/classDiagram-v2-RAHNMMFH-3Pc0szA4.js +1 -0
  163. package/dist/web/assets/clipboard-D3XnL7CB.js +1 -0
  164. package/dist/web/assets/clipboard-D3XnL7CB.js.br +0 -0
  165. package/dist/web/assets/clipboard-D3XnL7CB.js.gz +0 -0
  166. package/dist/web/assets/clone-BbqYojVU.js +1 -0
  167. package/dist/web/assets/cobol-N66t9bre.js +1 -0
  168. package/dist/web/assets/cobol-N66t9bre.js.br +0 -0
  169. package/dist/web/assets/cobol-N66t9bre.js.gz +0 -0
  170. package/dist/web/assets/code-editor-JK49X9EX.js +10 -0
  171. package/dist/web/assets/code-editor-JK49X9EX.js.br +0 -0
  172. package/dist/web/assets/code-editor-JK49X9EX.js.gz +0 -0
  173. package/dist/web/assets/code-fence-vHZyBehL.js +1 -0
  174. package/dist/web/assets/codex-reset-credit-button-CxJsBnff.js +1 -0
  175. package/dist/web/assets/codex-reset-credit-button-CxJsBnff.js.br +0 -0
  176. package/dist/web/assets/codex-reset-credit-button-CxJsBnff.js.gz +0 -0
  177. package/dist/web/assets/coffee-DH4EPzT2.js +1 -0
  178. package/dist/web/assets/coffee-DH4EPzT2.js.br +0 -0
  179. package/dist/web/assets/coffee-DH4EPzT2.js.gz +0 -0
  180. package/dist/web/assets/conflict-editor-rOpVkK9P.js +19 -0
  181. package/dist/web/assets/conflict-editor-rOpVkK9P.js.br +0 -0
  182. package/dist/web/assets/conflict-editor-rOpVkK9P.js.gz +0 -0
  183. package/dist/web/assets/connection-form-tab-BGmb918E.js +4 -0
  184. package/dist/web/assets/connection-form-tab-BGmb918E.js.br +0 -0
  185. package/dist/web/assets/connection-form-tab-BGmb918E.js.gz +0 -0
  186. package/dist/web/assets/context-menu-BoQ6lxte.js +1 -0
  187. package/dist/web/assets/context-menu-BoQ6lxte.js.br +0 -0
  188. package/dist/web/assets/context-menu-BoQ6lxte.js.gz +0 -0
  189. package/dist/web/assets/cose-bilkent-S5V4N54A-mB8HA52z.js +1 -0
  190. package/dist/web/assets/cose-bilkent-S5V4N54A-mB8HA52z.js.br +0 -0
  191. package/dist/web/assets/cose-bilkent-S5V4N54A-mB8HA52z.js.gz +0 -0
  192. package/dist/web/assets/cpp-D9qUQN_l.js +1 -0
  193. package/dist/web/assets/cpp-D9qUQN_l.js.br +0 -0
  194. package/dist/web/assets/cpp-D9qUQN_l.js.gz +0 -0
  195. package/dist/web/assets/crystal-BbeV_Mwx.js +1 -0
  196. package/dist/web/assets/crystal-BbeV_Mwx.js.br +0 -0
  197. package/dist/web/assets/crystal-BbeV_Mwx.js.gz +0 -0
  198. package/dist/web/assets/csv-preview-CM7su92m.js +10 -0
  199. package/dist/web/assets/csv-preview-CM7su92m.js.br +0 -0
  200. package/dist/web/assets/csv-preview-CM7su92m.js.gz +0 -0
  201. package/dist/web/assets/dagre-DCmRVAkd.js +1 -0
  202. package/dist/web/assets/dagre-DCmRVAkd.js.br +0 -0
  203. package/dist/web/assets/dagre-DCmRVAkd.js.gz +0 -0
  204. package/dist/web/assets/dagre-KLK3FWXG-BbiZfyLJ.js +4 -0
  205. package/dist/web/assets/dagre-KLK3FWXG-BbiZfyLJ.js.br +0 -0
  206. package/dist/web/assets/dagre-KLK3FWXG-BbiZfyLJ.js.gz +0 -0
  207. package/dist/web/assets/database-drivers-section-C6ZKPWaE.js +1 -0
  208. package/dist/web/assets/database-drivers-section-C6ZKPWaE.js.br +0 -0
  209. package/dist/web/assets/database-drivers-section-C6ZKPWaE.js.gz +0 -0
  210. package/dist/web/assets/db-explorer-store-BcLxq-X0.js +1 -0
  211. package/dist/web/assets/db-explorer-store-BcLxq-X0.js.br +0 -0
  212. package/dist/web/assets/db-explorer-store-BcLxq-X0.js.gz +0 -0
  213. package/dist/web/assets/db-tab-parts-DvmnlA6V.js +1 -0
  214. package/dist/web/assets/db-tab-parts-DvmnlA6V.js.br +0 -0
  215. package/dist/web/assets/db-tab-parts-DvmnlA6V.js.gz +0 -0
  216. package/dist/web/assets/db-types-9ac-eYxf.js +1 -0
  217. package/dist/web/assets/db-types-9ac-eYxf.js.br +0 -0
  218. package/dist/web/assets/db-types-9ac-eYxf.js.gz +0 -0
  219. package/dist/web/assets/design-canvas-check-Bo76Q6Qr.js +1 -0
  220. package/dist/web/assets/design-canvas-check-Bo76Q6Qr.js.br +0 -0
  221. package/dist/web/assets/design-canvas-check-Bo76Q6Qr.js.gz +0 -0
  222. package/dist/web/assets/design-export-client-ClwRg798.js +1 -0
  223. package/dist/web/assets/design-export-client-ClwRg798.js.br +0 -0
  224. package/dist/web/assets/design-export-client-ClwRg798.js.gz +0 -0
  225. package/dist/web/assets/design-responsive-dialog-Cdccv3Nw.js +1 -0
  226. package/dist/web/assets/design-responsive-dialog-Cdccv3Nw.js.br +0 -0
  227. package/dist/web/assets/design-responsive-dialog-Cdccv3Nw.js.gz +0 -0
  228. package/dist/web/assets/design-settings-section-CuxZSLAr.js +2 -0
  229. package/dist/web/assets/design-settings-section-CuxZSLAr.js.br +0 -0
  230. package/dist/web/assets/design-settings-section-CuxZSLAr.js.gz +0 -0
  231. package/dist/web/assets/design-skill-suggestion-DZQjG8FV.js +3 -0
  232. package/dist/web/assets/design-skill-suggestion-DZQjG8FV.js.br +0 -0
  233. package/dist/web/assets/design-skill-suggestion-DZQjG8FV.js.gz +0 -0
  234. package/dist/web/assets/design-tab-JlKmHVkd.js +57 -0
  235. package/dist/web/assets/design-tab-JlKmHVkd.js.br +0 -0
  236. package/dist/web/assets/design-tab-JlKmHVkd.js.gz +0 -0
  237. package/dist/web/assets/designs-sidebar-panel-C1EwWf4Z.js +1 -0
  238. package/dist/web/assets/designs-sidebar-panel-C1EwWf4Z.js.br +0 -0
  239. package/dist/web/assets/designs-sidebar-panel-C1EwWf4Z.js.gz +0 -0
  240. package/dist/web/assets/diagram-E7M64L7V-DqWzOwQy.js +24 -0
  241. package/dist/web/assets/diagram-E7M64L7V-DqWzOwQy.js.br +0 -0
  242. package/dist/web/assets/diagram-E7M64L7V-DqWzOwQy.js.gz +0 -0
  243. package/dist/web/assets/diagram-IFDJBPK2-Dxmm5YBr.js +43 -0
  244. package/dist/web/assets/diagram-IFDJBPK2-Dxmm5YBr.js.br +0 -0
  245. package/dist/web/assets/diagram-IFDJBPK2-Dxmm5YBr.js.gz +0 -0
  246. package/dist/web/assets/diagram-P4PSJMXO-D1gJGa3M.js +24 -0
  247. package/dist/web/assets/diagram-P4PSJMXO-D1gJGa3M.js.br +0 -0
  248. package/dist/web/assets/diagram-P4PSJMXO-D1gJGa3M.js.gz +0 -0
  249. package/dist/web/assets/dialog-DOaEX6AK.js +1 -0
  250. package/dist/web/assets/dialog-DOaEX6AK.js.br +0 -0
  251. package/dist/web/assets/dialog-DOaEX6AK.js.gz +0 -0
  252. package/dist/web/assets/diff-viewer-FidH7Nsq.js +4 -0
  253. package/dist/web/assets/diff-viewer-FidH7Nsq.js.br +0 -0
  254. package/dist/web/assets/diff-viewer-FidH7Nsq.js.gz +0 -0
  255. package/dist/web/assets/docx-preview-ENiLGqzy.js +12 -0
  256. package/dist/web/assets/docx-preview-ENiLGqzy.js.br +0 -0
  257. package/dist/web/assets/docx-preview-ENiLGqzy.js.gz +0 -0
  258. package/dist/web/assets/dropdown-menu-DB3yyoVz.js +1 -0
  259. package/dist/web/assets/dropdown-menu-DB3yyoVz.js.br +0 -0
  260. package/dist/web/assets/dropdown-menu-DB3yyoVz.js.gz +0 -0
  261. package/dist/web/assets/edge-vA_btsvt.js +1 -0
  262. package/dist/web/assets/edge-vA_btsvt.js.br +0 -0
  263. package/dist/web/assets/edge-vA_btsvt.js.gz +0 -0
  264. package/dist/web/assets/edit-diff-preview-D4EqC86X.js +7 -0
  265. package/dist/web/assets/edit-diff-preview-D4EqC86X.js.br +0 -0
  266. package/dist/web/assets/edit-diff-preview-D4EqC86X.js.gz +0 -0
  267. package/dist/web/assets/editor-dialog-DC7dUWAX.js +1 -0
  268. package/dist/web/assets/editor-dialog-DC7dUWAX.js.br +0 -0
  269. package/dist/web/assets/editor-dialog-DC7dUWAX.js.gz +0 -0
  270. package/dist/web/assets/editor-language-service-0pN0TxYN.js +1 -0
  271. package/dist/web/assets/editor-language-service-0pN0TxYN.js.br +0 -0
  272. package/dist/web/assets/editor-language-service-0pN0TxYN.js.gz +0 -0
  273. package/dist/web/assets/elixir-jDRKDZoF.js +1 -0
  274. package/dist/web/assets/elixir-jDRKDZoF.js.br +0 -0
  275. package/dist/web/assets/elixir-jDRKDZoF.js.gz +0 -0
  276. package/dist/web/assets/elm-DAS3eMJt.js +1 -0
  277. package/dist/web/assets/elm-DAS3eMJt.js.br +0 -0
  278. package/dist/web/assets/elm-DAS3eMJt.js.gz +0 -0
  279. package/dist/web/assets/erDiagram-INFDFZHY-DU44Y1XS.js +70 -0
  280. package/dist/web/assets/erDiagram-INFDFZHY-DU44Y1XS.js.br +0 -0
  281. package/dist/web/assets/erDiagram-INFDFZHY-DU44Y1XS.js.gz +0 -0
  282. package/dist/web/assets/erb-C7IJmpH8.js +1 -0
  283. package/dist/web/assets/erb-C7IJmpH8.js.br +0 -0
  284. package/dist/web/assets/erb-C7IJmpH8.js.gz +0 -0
  285. package/dist/web/assets/erlang-DW-GAdmv.js +1 -0
  286. package/dist/web/assets/erlang-DW-GAdmv.js.br +0 -0
  287. package/dist/web/assets/erlang-DW-GAdmv.js.gz +0 -0
  288. package/dist/web/assets/explorer-body-tFaUp9_Q.js +2 -0
  289. package/dist/web/assets/explorer-body-tFaUp9_Q.js.br +0 -0
  290. package/dist/web/assets/explorer-body-tFaUp9_Q.js.gz +0 -0
  291. package/dist/web/assets/explorer-model-BmgFEsj1.js +1 -0
  292. package/dist/web/assets/explorer-model-BmgFEsj1.js.br +0 -0
  293. package/dist/web/assets/explorer-model-BmgFEsj1.js.gz +0 -0
  294. package/dist/web/assets/explorer-window-content-XnRTZT_X.js +1 -0
  295. package/dist/web/assets/explorer-window-content-XnRTZT_X.js.br +0 -0
  296. package/dist/web/assets/explorer-window-content-XnRTZT_X.js.gz +0 -0
  297. package/dist/web/assets/extension-manager-section-DEbwRPf1.js +1 -0
  298. package/dist/web/assets/extension-manager-section-DEbwRPf1.js.br +0 -0
  299. package/dist/web/assets/extension-manager-section-DEbwRPf1.js.gz +0 -0
  300. package/dist/web/assets/extension-webview-C9ApceLU.js +12 -0
  301. package/dist/web/assets/extension-webview-C9ApceLU.js.br +0 -0
  302. package/dist/web/assets/extension-webview-C9ApceLU.js.gz +0 -0
  303. package/dist/web/assets/file-diff-lX1a7RLF.js +1 -0
  304. package/dist/web/assets/file-icons-DpwcJLL4.js +1 -0
  305. package/dist/web/assets/file-icons-DpwcJLL4.js.br +0 -0
  306. package/dist/web/assets/file-icons-DpwcJLL4.js.gz +0 -0
  307. package/dist/web/assets/file-icons.generated-BTxvyD8L.css +1 -0
  308. package/dist/web/assets/file-icons.generated-BTxvyD8L.css.br +0 -0
  309. package/dist/web/assets/file-icons.generated-BTxvyD8L.css.gz +0 -0
  310. package/dist/web/assets/file-store-Bk1WYfdy.js +1 -0
  311. package/dist/web/assets/file-store-Bk1WYfdy.js.br +0 -0
  312. package/dist/web/assets/file-store-Bk1WYfdy.js.gz +0 -0
  313. package/dist/web/assets/files-settings-section-C8MacVFQ.js +1 -0
  314. package/dist/web/assets/files-settings-section-C8MacVFQ.js.br +0 -0
  315. package/dist/web/assets/files-settings-section-C8MacVFQ.js.gz +0 -0
  316. package/dist/web/assets/filter-dialog-frame-CoWlaNRy.js +1 -0
  317. package/dist/web/assets/filter-dialog-frame-CoWlaNRy.js.br +0 -0
  318. package/dist/web/assets/filter-dialog-frame-CoWlaNRy.js.gz +0 -0
  319. package/dist/web/assets/flowDiagram-PKNHOUZH-XzNJSFMz.js +162 -0
  320. package/dist/web/assets/flowDiagram-PKNHOUZH-XzNJSFMz.js.br +0 -0
  321. package/dist/web/assets/flowDiagram-PKNHOUZH-XzNJSFMz.js.gz +0 -0
  322. package/dist/web/assets/format-file-meta-C0LKHE3e.js +1 -0
  323. package/dist/web/assets/format-file-meta-C0LKHE3e.js.br +0 -0
  324. package/dist/web/assets/format-file-meta-C0LKHE3e.js.gz +0 -0
  325. package/dist/web/assets/fortran-fixed-form-DrQbMSkt.js +1 -0
  326. package/dist/web/assets/fortran-fixed-form-DrQbMSkt.js.br +0 -0
  327. package/dist/web/assets/fortran-fixed-form-DrQbMSkt.js.gz +0 -0
  328. package/dist/web/assets/fs-api-BQrIEcvo.js +1 -0
  329. package/dist/web/assets/fs-api-BQrIEcvo.js.br +0 -0
  330. package/dist/web/assets/fs-api-BQrIEcvo.js.gz +0 -0
  331. package/dist/web/assets/fsharp-DvDj84Ys.js +1 -0
  332. package/dist/web/assets/fsharp-DvDj84Ys.js.br +0 -0
  333. package/dist/web/assets/fsharp-DvDj84Ys.js.gz +0 -0
  334. package/dist/web/assets/ganttDiagram-A5KZAMGK-5AL8Egrk.js +292 -0
  335. package/dist/web/assets/ganttDiagram-A5KZAMGK-5AL8Egrk.js.br +0 -0
  336. package/dist/web/assets/ganttDiagram-A5KZAMGK-5AL8Egrk.js.gz +0 -0
  337. package/dist/web/assets/gdresource-CPgY7R2s.js +1 -0
  338. package/dist/web/assets/gdresource-CPgY7R2s.js.br +0 -0
  339. package/dist/web/assets/gdresource-CPgY7R2s.js.gz +0 -0
  340. package/dist/web/assets/general-settings-section-DZRRGdlQ.js +1 -0
  341. package/dist/web/assets/general-settings-section-DZRRGdlQ.js.br +0 -0
  342. package/dist/web/assets/general-settings-section-DZRRGdlQ.js.gz +0 -0
  343. package/dist/web/assets/git-commit-NJ9iGbTd.js +1 -0
  344. package/dist/web/assets/git-commit-NJ9iGbTd.js.br +4 -0
  345. package/dist/web/assets/git-commit-NJ9iGbTd.js.gz +0 -0
  346. package/dist/web/assets/git-commit-horizontal-BVihXafd.js +1 -0
  347. package/dist/web/assets/git-log-panel-g2pBnu6r.js +1 -0
  348. package/dist/web/assets/git-log-panel-g2pBnu6r.js.br +0 -0
  349. package/dist/web/assets/git-log-panel-g2pBnu6r.js.gz +0 -0
  350. package/dist/web/assets/git-rebase-Cm4Uf8Bj.js +1 -0
  351. package/dist/web/assets/git-repo-store-BOYLnV67.js +1 -0
  352. package/dist/web/assets/git-repo-store-BOYLnV67.js.br +0 -0
  353. package/dist/web/assets/git-repo-store-BOYLnV67.js.gz +0 -0
  354. package/dist/web/assets/git-review-tab-BzI5mxWd.js +3 -0
  355. package/dist/web/assets/git-review-tab-BzI5mxWd.js.br +0 -0
  356. package/dist/web/assets/git-review-tab-BzI5mxWd.js.gz +0 -0
  357. package/dist/web/assets/gitGraph-HDMCJU4V-6AuIeDPs.js +1 -0
  358. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-DzKvk1bR.js +65 -0
  359. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-DzKvk1bR.js.br +0 -0
  360. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-DzKvk1bR.js.gz +0 -0
  361. package/dist/web/assets/glide-data-grid-BxvI3ehr.js +177 -0
  362. package/dist/web/assets/glide-data-grid-BxvI3ehr.js.br +0 -0
  363. package/dist/web/assets/glide-data-grid-BxvI3ehr.js.gz +0 -0
  364. package/dist/web/assets/glimmer-js-BrXGdFD2.js +1 -0
  365. package/dist/web/assets/glimmer-js-BrXGdFD2.js.br +0 -0
  366. package/dist/web/assets/glimmer-js-BrXGdFD2.js.gz +0 -0
  367. package/dist/web/assets/glimmer-ts-V0NFutRE.js +1 -0
  368. package/dist/web/assets/glimmer-ts-V0NFutRE.js.br +0 -0
  369. package/dist/web/assets/glimmer-ts-V0NFutRE.js.gz +0 -0
  370. package/dist/web/assets/glsl-DtvoVBT2.js +1 -0
  371. package/dist/web/assets/glsl-DtvoVBT2.js.br +0 -0
  372. package/dist/web/assets/glsl-DtvoVBT2.js.gz +0 -0
  373. package/dist/web/assets/graphlib-BpGCrXCx.js +1 -0
  374. package/dist/web/assets/graphlib-BpGCrXCx.js.br +0 -0
  375. package/dist/web/assets/graphlib-BpGCrXCx.js.gz +0 -0
  376. package/dist/web/assets/graphql-BM_SRktm.js +1 -0
  377. package/dist/web/assets/graphql-BM_SRktm.js.br +0 -0
  378. package/dist/web/assets/graphql-BM_SRktm.js.gz +0 -0
  379. package/dist/web/assets/grid-save-dialog-D55Po6Vu.js +2 -0
  380. package/dist/web/assets/grid-save-dialog-D55Po6Vu.js.br +0 -0
  381. package/dist/web/assets/grid-save-dialog-D55Po6Vu.js.gz +0 -0
  382. package/dist/web/assets/group-chat-tab-CoMC-Fx1.js +1 -0
  383. package/dist/web/assets/group-chat-tab-CoMC-Fx1.js.br +0 -0
  384. package/dist/web/assets/group-chat-tab-CoMC-Fx1.js.gz +0 -0
  385. package/dist/web/assets/hack-Ban3lpvB.js +1 -0
  386. package/dist/web/assets/hack-Ban3lpvB.js.br +0 -0
  387. package/dist/web/assets/hack-Ban3lpvB.js.gz +0 -0
  388. package/dist/web/assets/haml-CmZRp0VI.js +1 -0
  389. package/dist/web/assets/haml-CmZRp0VI.js.br +0 -0
  390. package/dist/web/assets/haml-CmZRp0VI.js.gz +0 -0
  391. package/dist/web/assets/handlebars-BTEDAMAb.js +1 -0
  392. package/dist/web/assets/handlebars-BTEDAMAb.js.br +0 -0
  393. package/dist/web/assets/handlebars-BTEDAMAb.js.gz +0 -0
  394. package/dist/web/assets/html-ItWVe1s-.js +1 -0
  395. package/dist/web/assets/html-ItWVe1s-.js.br +0 -0
  396. package/dist/web/assets/html-ItWVe1s-.js.gz +0 -0
  397. package/dist/web/assets/html-derivative-D_5yGE7d.js +1 -0
  398. package/dist/web/assets/http-7C1QiRf1.js +1 -0
  399. package/dist/web/assets/http-7C1QiRf1.js.br +0 -0
  400. package/dist/web/assets/http-7C1QiRf1.js.gz +0 -0
  401. package/dist/web/assets/hurl-Pypp_tSf.js +1 -0
  402. package/dist/web/assets/hurl-Pypp_tSf.js.br +0 -0
  403. package/dist/web/assets/hurl-Pypp_tSf.js.gz +0 -0
  404. package/dist/web/assets/hxml-C2EdtM37.js +1 -0
  405. package/dist/web/assets/hxml-C2EdtM37.js.br +0 -0
  406. package/dist/web/assets/hxml-C2EdtM37.js.gz +0 -0
  407. package/dist/web/assets/icons-JMA45Ifw.js +1 -0
  408. package/dist/web/assets/icons-JMA45Ifw.js.br +0 -0
  409. package/dist/web/assets/icons-JMA45Ifw.js.gz +0 -0
  410. package/dist/web/assets/image-preview-D7KR11Xo.js +1 -0
  411. package/dist/web/assets/impexp-state-BWKOuRGj.js +4 -0
  412. package/dist/web/assets/impexp-state-BWKOuRGj.js.br +0 -0
  413. package/dist/web/assets/impexp-state-BWKOuRGj.js.gz +0 -0
  414. package/dist/web/assets/impexp-tab-JF6JF8eO.js +1 -0
  415. package/dist/web/assets/impexp-tab-JF6JF8eO.js.br +0 -0
  416. package/dist/web/assets/impexp-tab-JF6JF8eO.js.gz +0 -0
  417. package/dist/web/assets/index-DyYGWFVa.css +1 -0
  418. package/dist/web/assets/index-DyYGWFVa.css.br +0 -0
  419. package/dist/web/assets/index-DyYGWFVa.css.gz +0 -0
  420. package/dist/web/assets/index-ItT-dTPV.js +59 -0
  421. package/dist/web/assets/index-ItT-dTPV.js.br +0 -0
  422. package/dist/web/assets/index-ItT-dTPV.js.gz +0 -0
  423. package/dist/web/assets/info-3K5VOQVL-CE88wNg6.js +1 -0
  424. package/dist/web/assets/infoDiagram-LFFYTUFH-BCnHmp4F.js +2 -0
  425. package/dist/web/assets/input-CKGoVpYv.js +1 -0
  426. package/dist/web/assets/isEmpty-dcb0OVvj.js +1 -0
  427. package/dist/web/assets/isEmpty-dcb0OVvj.js.br +0 -0
  428. package/dist/web/assets/isEmpty-dcb0OVvj.js.gz +0 -0
  429. package/dist/web/assets/ishikawaDiagram-PHBUUO56-gS3UZ04x.js +70 -0
  430. package/dist/web/assets/ishikawaDiagram-PHBUUO56-gS3UZ04x.js.br +0 -0
  431. package/dist/web/assets/ishikawaDiagram-PHBUUO56-gS3UZ04x.js.gz +0 -0
  432. package/dist/web/assets/jinja-CUU2G4qS.js +1 -0
  433. package/dist/web/assets/jinja-CUU2G4qS.js.br +0 -0
  434. package/dist/web/assets/jinja-CUU2G4qS.js.gz +0 -0
  435. package/dist/web/assets/jira-watcher-section-CvyXLyjO.js +1 -0
  436. package/dist/web/assets/jison-Cafe7d1m.js +1 -0
  437. package/dist/web/assets/jison-Cafe7d1m.js.br +0 -0
  438. package/dist/web/assets/jison-Cafe7d1m.js.gz +0 -0
  439. package/dist/web/assets/journeyDiagram-4ABVD52K-COVa2Vge.js +139 -0
  440. package/dist/web/assets/journeyDiagram-4ABVD52K-COVa2Vge.js.br +0 -0
  441. package/dist/web/assets/journeyDiagram-4ABVD52K-COVa2Vge.js.gz +0 -0
  442. package/dist/web/assets/julia-6B24A_s4.js +1 -0
  443. package/dist/web/assets/julia-6B24A_s4.js.br +0 -0
  444. package/dist/web/assets/julia-6B24A_s4.js.gz +0 -0
  445. package/dist/web/assets/just-B-sDN3xg.js +1 -0
  446. package/dist/web/assets/just-B-sDN3xg.js.br +0 -0
  447. package/dist/web/assets/just-B-sDN3xg.js.gz +0 -0
  448. package/dist/web/assets/kanban-definition-K7BYSVSG-CtqP4i48.js +89 -0
  449. package/dist/web/assets/kanban-definition-K7BYSVSG-CtqP4i48.js.br +0 -0
  450. package/dist/web/assets/kanban-definition-K7BYSVSG-CtqP4i48.js.gz +0 -0
  451. package/dist/web/assets/keybindings-store-CeEtx6js.js +1 -0
  452. package/dist/web/assets/keyboard-shortcuts-section-MUIE0Rvf.js +1 -0
  453. package/dist/web/assets/keyboard-shortcuts-section-MUIE0Rvf.js.br +0 -0
  454. package/dist/web/assets/keyboard-shortcuts-section-MUIE0Rvf.js.gz +0 -0
  455. package/dist/web/assets/language-servers-section-DiYURB24.js +2 -0
  456. package/dist/web/assets/language-servers-section-DiYURB24.js.br +0 -0
  457. package/dist/web/assets/language-servers-section-DiYURB24.js.gz +0 -0
  458. package/dist/web/assets/latex-BRjk2Rtm.js +1 -0
  459. package/dist/web/assets/latex-BRjk2Rtm.js.br +0 -0
  460. package/dist/web/assets/latex-BRjk2Rtm.js.gz +0 -0
  461. package/dist/web/assets/line-DXN3CJk7.js +1 -0
  462. package/dist/web/assets/linear-A-Z2llI9.js +1 -0
  463. package/dist/web/assets/linear-A-Z2llI9.js.br +0 -0
  464. package/dist/web/assets/linear-A-Z2llI9.js.gz +0 -0
  465. package/dist/web/assets/liquid-C5GHq6B-.js +1 -0
  466. package/dist/web/assets/liquid-C5GHq6B-.js.br +0 -0
  467. package/dist/web/assets/liquid-C5GHq6B-.js.gz +0 -0
  468. package/dist/web/assets/logs-app-C4OVSXwd.css +1 -0
  469. package/dist/web/assets/logs-app-C4OVSXwd.css.br +0 -0
  470. package/dist/web/assets/logs-app-C4OVSXwd.css.gz +0 -0
  471. package/dist/web/assets/logs-app-CJlNqOdc.js +13 -0
  472. package/dist/web/assets/logs-app-CJlNqOdc.js.br +0 -0
  473. package/dist/web/assets/logs-app-CJlNqOdc.js.gz +0 -0
  474. package/dist/web/assets/logs-tab-BoAlm_8H.js +1 -0
  475. package/dist/web/assets/logs-window-content-nNm4jl1s.js +1 -0
  476. package/dist/web/assets/lsp-client-LnKiMWeG.js +1 -0
  477. package/dist/web/assets/lsp-client-LnKiMWeG.js.br +0 -0
  478. package/dist/web/assets/lsp-client-LnKiMWeG.js.gz +0 -0
  479. package/dist/web/assets/lua-CREU2Cg5.js +1 -0
  480. package/dist/web/assets/lua-CREU2Cg5.js.br +0 -0
  481. package/dist/web/assets/lua-CREU2Cg5.js.gz +0 -0
  482. package/dist/web/assets/markdown-renderer-8Hef5MLx.js +1 -0
  483. package/dist/web/assets/markdown-renderer-BH_CFPJw.js +5 -0
  484. package/dist/web/assets/markdown-renderer-BH_CFPJw.js.br +0 -0
  485. package/dist/web/assets/markdown-renderer-BH_CFPJw.js.gz +0 -0
  486. package/dist/web/assets/marko-A01nJSfd.js +1 -0
  487. package/dist/web/assets/marko-A01nJSfd.js.br +0 -0
  488. package/dist/web/assets/marko-A01nJSfd.js.gz +0 -0
  489. package/dist/web/assets/mdc-coGBHeYV.js +1 -0
  490. package/dist/web/assets/mdc-coGBHeYV.js.br +0 -0
  491. package/dist/web/assets/mdc-coGBHeYV.js.gz +0 -0
  492. package/dist/web/assets/media-url-CsdZ6q_T.js +1 -0
  493. package/dist/web/assets/mermaid-parser.core-BwbMfUJY.js +4 -0
  494. package/dist/web/assets/mermaid-parser.core-BwbMfUJY.js.br +0 -0
  495. package/dist/web/assets/mermaid-parser.core-BwbMfUJY.js.gz +0 -0
  496. package/dist/web/assets/mermaid.core-DNHX7DSU.js +11 -0
  497. package/dist/web/assets/mermaid.core-DNHX7DSU.js.br +0 -0
  498. package/dist/web/assets/mermaid.core-DNHX7DSU.js.gz +0 -0
  499. package/dist/web/assets/mindmap-definition-YRQLILUH-B7las60M.js +68 -0
  500. package/dist/web/assets/mindmap-definition-YRQLILUH-B7las60M.js.br +0 -0
  501. package/dist/web/assets/mindmap-definition-YRQLILUH-B7las60M.js.gz +0 -0
  502. package/dist/web/assets/mobile-bottom-sheet-CGmmdp_5.js +1 -0
  503. package/dist/web/assets/mobile-bottom-sheet-CGmmdp_5.js.br +0 -0
  504. package/dist/web/assets/mobile-bottom-sheet-CGmmdp_5.js.gz +0 -0
  505. package/dist/web/assets/mobile-explorer-sheet-Dh2ZECzL.js +1 -0
  506. package/dist/web/assets/mobile-explorer-sheet-Dh2ZECzL.js.br +0 -0
  507. package/dist/web/assets/mobile-explorer-sheet-Dh2ZECzL.js.gz +0 -0
  508. package/dist/web/assets/monaco-dotenv-language-IZxwhtNA.js +1 -0
  509. package/dist/web/assets/new-design-dialog-CgBUrVFx.js +1 -0
  510. package/dist/web/assets/new-design-dialog-CgBUrVFx.js.br +0 -0
  511. package/dist/web/assets/new-design-dialog-CgBUrVFx.js.gz +0 -0
  512. package/dist/web/assets/nextflow-DKFYidyC.js +1 -0
  513. package/dist/web/assets/nextflow-DKFYidyC.js.br +0 -0
  514. package/dist/web/assets/nextflow-DKFYidyC.js.gz +0 -0
  515. package/dist/web/assets/nginx-B9Y4fsja.js +1 -0
  516. package/dist/web/assets/nginx-B9Y4fsja.js.br +0 -0
  517. package/dist/web/assets/nginx-B9Y4fsja.js.gz +0 -0
  518. package/dist/web/assets/nim-BEDyxLED.js +1 -0
  519. package/dist/web/assets/nim-BEDyxLED.js.br +0 -0
  520. package/dist/web/assets/nim-BEDyxLED.js.gz +0 -0
  521. package/dist/web/assets/notification-store-CXC7u6MW.js +1 -0
  522. package/dist/web/assets/notifications-settings-section-CPbx23nU.js +1 -0
  523. package/dist/web/assets/notifications-settings-section-CPbx23nU.js.br +0 -0
  524. package/dist/web/assets/notifications-settings-section-CPbx23nU.js.gz +0 -0
  525. package/dist/web/assets/onboarding-entry--MWe4amV.js +1 -0
  526. package/dist/web/assets/onboarding-entry--MWe4amV.js.br +0 -0
  527. package/dist/web/assets/onboarding-entry--MWe4amV.js.gz +0 -0
  528. package/dist/web/assets/onboarding-quick-orientation-DZYQekRt.js +1 -0
  529. package/dist/web/assets/onboarding-quick-orientation-DZYQekRt.js.br +0 -0
  530. package/dist/web/assets/onboarding-quick-orientation-DZYQekRt.js.gz +0 -0
  531. package/dist/web/assets/open-db-tabs-CkQe49j_.js +1 -0
  532. package/dist/web/assets/open-db-tabs-CkQe49j_.js.br +0 -0
  533. package/dist/web/assets/open-db-tabs-CkQe49j_.js.gz +0 -0
  534. package/dist/web/assets/open-settings-DsGBn73g.js +1 -0
  535. package/dist/web/assets/ordinal-U3GzwL7N.js +1 -0
  536. package/dist/web/assets/ordinal-U3GzwL7N.js.br +0 -0
  537. package/dist/web/assets/ordinal-U3GzwL7N.js.gz +0 -0
  538. package/dist/web/assets/overview-panel-CcUGDvnt.js +1 -0
  539. package/dist/web/assets/overview-panel-CcUGDvnt.js.br +0 -0
  540. package/dist/web/assets/overview-panel-CcUGDvnt.js.gz +0 -0
  541. package/dist/web/assets/packet-RMMSAZCW-m_QfwO7e.js +1 -0
  542. package/dist/web/assets/panel-store-DmP16Fo0.js +1 -0
  543. package/dist/web/assets/panel-store-DmP16Fo0.js.br +0 -0
  544. package/dist/web/assets/panel-store-DmP16Fo0.js.gz +0 -0
  545. package/dist/web/assets/patch-tab-metadata-B-jH5svY.js +1 -0
  546. package/dist/web/assets/pdf-preview-DMUIWb9B.js +1 -0
  547. package/dist/web/assets/pdf-preview-DMUIWb9B.js.br +0 -0
  548. package/dist/web/assets/pdf-preview-DMUIWb9B.js.gz +0 -0
  549. package/dist/web/assets/performance-panel-CJDLUwrs.js +3 -0
  550. package/dist/web/assets/performance-panel-CJDLUwrs.js.br +0 -0
  551. package/dist/web/assets/performance-panel-CJDLUwrs.js.gz +0 -0
  552. package/dist/web/assets/perl-CSnMi18C.js +1 -0
  553. package/dist/web/assets/perl-CSnMi18C.js.br +0 -0
  554. package/dist/web/assets/perl-CSnMi18C.js.gz +0 -0
  555. package/dist/web/assets/php-BXzT2401.js +1 -0
  556. package/dist/web/assets/php-BXzT2401.js.br +0 -0
  557. package/dist/web/assets/php-BXzT2401.js.gz +0 -0
  558. package/dist/web/assets/pie-UPGHQEXC-CLkXafuF.js +1 -0
  559. package/dist/web/assets/pieDiagram-SKSYHLDU-BO4P6Wpl.js +30 -0
  560. package/dist/web/assets/pieDiagram-SKSYHLDU-BO4P6Wpl.js.br +0 -0
  561. package/dist/web/assets/pieDiagram-SKSYHLDU-BO4P6Wpl.js.gz +0 -0
  562. package/dist/web/assets/ppmbot-settings-section-DTCTPQ-R.js +1 -0
  563. package/dist/web/assets/ppmbot-settings-section-DTCTPQ-R.js.br +0 -0
  564. package/dist/web/assets/ppmbot-settings-section-DTCTPQ-R.js.gz +0 -0
  565. package/dist/web/assets/pptx-export-BxmgltJ4.js +111 -0
  566. package/dist/web/assets/pptx-export-BxmgltJ4.js.br +0 -0
  567. package/dist/web/assets/pptx-export-BxmgltJ4.js.gz +0 -0
  568. package/dist/web/assets/problems-panel-DX32QDH_.js +1 -0
  569. package/dist/web/assets/problems-panel-DX32QDH_.js.br +0 -0
  570. package/dist/web/assets/problems-panel-DX32QDH_.js.gz +0 -0
  571. package/dist/web/assets/process-row-format-CBw-CQCx.js +1 -0
  572. package/dist/web/assets/process-table-CX-NhOg6.js +1 -0
  573. package/dist/web/assets/process-table-CX-NhOg6.js.br +0 -0
  574. package/dist/web/assets/process-table-CX-NhOg6.js.gz +0 -0
  575. package/dist/web/assets/project-framework-store-Bi5dyHdx.js +1 -0
  576. package/dist/web/assets/project-store-CEGoLMOl.js +1 -0
  577. package/dist/web/assets/project-store-CEGoLMOl.js.br +0 -0
  578. package/dist/web/assets/project-store-CEGoLMOl.js.gz +0 -0
  579. package/dist/web/assets/proxy-settings-section-BGNvFe7e.js +1 -0
  580. package/dist/web/assets/proxy-settings-section-BGNvFe7e.js.br +0 -0
  581. package/dist/web/assets/proxy-settings-section-BGNvFe7e.js.gz +0 -0
  582. package/dist/web/assets/pug-Bv9xupen.js +1 -0
  583. package/dist/web/assets/pug-Bv9xupen.js.br +0 -0
  584. package/dist/web/assets/pug-Bv9xupen.js.gz +0 -0
  585. package/dist/web/assets/qml-C3E1ICV4.js +1 -0
  586. package/dist/web/assets/qml-C3E1ICV4.js.br +0 -0
  587. package/dist/web/assets/qml-C3E1ICV4.js.gz +0 -0
  588. package/dist/web/assets/quadrantDiagram-337W2JSQ-B4TWXN8P.js +7 -0
  589. package/dist/web/assets/quadrantDiagram-337W2JSQ-B4TWXN8P.js.br +0 -0
  590. package/dist/web/assets/quadrantDiagram-337W2JSQ-B4TWXN8P.js.gz +0 -0
  591. package/dist/web/assets/query-audit-section-DTHI5GP7.js +1 -0
  592. package/dist/web/assets/query-audit-section-DTHI5GP7.js.br +0 -0
  593. package/dist/web/assets/query-audit-section-DTHI5GP7.js.gz +0 -0
  594. package/dist/web/assets/query-tab-qMlIkHRk.js +22 -0
  595. package/dist/web/assets/query-tab-qMlIkHRk.js.br +0 -0
  596. package/dist/web/assets/query-tab-qMlIkHRk.js.gz +0 -0
  597. package/dist/web/assets/radar-KQ55EAFF-BMCQVm9g.js +1 -0
  598. package/dist/web/assets/razor-wo4lUwpU.js +1 -0
  599. package/dist/web/assets/razor-wo4lUwpU.js.br +0 -0
  600. package/dist/web/assets/razor-wo4lUwpU.js.gz +0 -0
  601. package/dist/web/assets/remote-access-settings-section-t2BYAA9g.js +1 -0
  602. package/dist/web/assets/remote-access-settings-section-t2BYAA9g.js.br +0 -0
  603. package/dist/web/assets/remote-access-settings-section-t2BYAA9g.js.gz +0 -0
  604. package/dist/web/assets/remote-desktop-clipboard-notice-ChUU6Jts.js +1 -0
  605. package/dist/web/assets/remote-desktop-clipboard-notice-ChUU6Jts.js.br +0 -0
  606. package/dist/web/assets/remote-desktop-clipboard-notice-ChUU6Jts.js.gz +0 -0
  607. package/dist/web/assets/remote-desktop-mobile-sheet-_bopEtCa.js +2 -0
  608. package/dist/web/assets/remote-desktop-mobile-sheet-_bopEtCa.js.br +0 -0
  609. package/dist/web/assets/remote-desktop-mobile-sheet-_bopEtCa.js.gz +0 -0
  610. package/dist/web/assets/remote-desktop-mobile-view-D9G4kDfa.js +1 -0
  611. package/dist/web/assets/remote-desktop-mobile-view-D9G4kDfa.js.br +0 -0
  612. package/dist/web/assets/remote-desktop-mobile-view-D9G4kDfa.js.gz +0 -0
  613. package/dist/web/assets/remote-desktop-readiness-gate-Yz9eVB3-.js +1 -0
  614. package/dist/web/assets/remote-desktop-readiness-gate-Yz9eVB3-.js.br +0 -0
  615. package/dist/web/assets/remote-desktop-readiness-gate-Yz9eVB3-.js.gz +0 -0
  616. package/dist/web/assets/remote-desktop-settings-section-BTGGSjZY.js +1 -0
  617. package/dist/web/assets/remote-desktop-settings-section-BTGGSjZY.js.br +0 -0
  618. package/dist/web/assets/remote-desktop-settings-section-BTGGSjZY.js.gz +0 -0
  619. package/dist/web/assets/remote-desktop-window-content-B8ZaG2bL.js +1 -0
  620. package/dist/web/assets/remote-desktop-window-content-B8ZaG2bL.js.br +0 -0
  621. package/dist/web/assets/remote-desktop-window-content-B8ZaG2bL.js.gz +0 -0
  622. package/dist/web/assets/rename-object-dialog-FSlcdUoB.js +1 -0
  623. package/dist/web/assets/rename-object-dialog-FSlcdUoB.js.br +0 -0
  624. package/dist/web/assets/rename-object-dialog-FSlcdUoB.js.gz +0 -0
  625. package/dist/web/assets/requirementDiagram-Z7DCOOCP-C3bEBd6h.js +73 -0
  626. package/dist/web/assets/requirementDiagram-Z7DCOOCP-C3bEBd6h.js.br +0 -0
  627. package/dist/web/assets/requirementDiagram-Z7DCOOCP-C3bEBd6h.js.gz +0 -0
  628. package/dist/web/assets/review-code-CfuJeLYd.js +5 -0
  629. package/dist/web/assets/review-code-CfuJeLYd.js.br +0 -0
  630. package/dist/web/assets/review-code-CfuJeLYd.js.gz +0 -0
  631. package/dist/web/assets/rst-BP6JFRY2.js +1 -0
  632. package/dist/web/assets/rst-BP6JFRY2.js.br +0 -0
  633. package/dist/web/assets/rst-BP6JFRY2.js.gz +0 -0
  634. package/dist/web/assets/ruby-EPVx8l1i.js +1 -0
  635. package/dist/web/assets/ruby-EPVx8l1i.js.br +0 -0
  636. package/dist/web/assets/ruby-EPVx8l1i.js.gz +0 -0
  637. package/dist/web/assets/run-in-terminal-Bk9Bw7G1.js +1 -0
  638. package/dist/web/assets/run-in-terminal-button-DFPQUlZs.js +1 -0
  639. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-BxAKhnHw.js +10 -0
  640. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-BxAKhnHw.js.br +0 -0
  641. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-BxAKhnHw.js.gz +0 -0
  642. package/dist/web/assets/sas-NhxEMTOf.js +1 -0
  643. package/dist/web/assets/sas-NhxEMTOf.js.br +0 -0
  644. package/dist/web/assets/sas-NhxEMTOf.js.gz +0 -0
  645. package/dist/web/assets/save-as-dialog-Bj9VpGYf.js +1 -0
  646. package/dist/web/assets/save-as-dialog-Bj9VpGYf.js.br +0 -0
  647. package/dist/web/assets/save-as-dialog-Bj9VpGYf.js.gz +0 -0
  648. package/dist/web/assets/schedules-settings-section-DNJ4K7zS.js +1 -0
  649. package/dist/web/assets/schedules-settings-section-DNJ4K7zS.js.br +0 -0
  650. package/dist/web/assets/schedules-settings-section-DNJ4K7zS.js.gz +0 -0
  651. package/dist/web/assets/scroll-area-6Am1KMiB.js +1 -0
  652. package/dist/web/assets/scroll-area-6Am1KMiB.js.br +0 -0
  653. package/dist/web/assets/scroll-area-6Am1KMiB.js.gz +0 -0
  654. package/dist/web/assets/scss-DdAMYXTJ.js +1 -0
  655. package/dist/web/assets/scss-DdAMYXTJ.js.br +0 -0
  656. package/dist/web/assets/scss-DdAMYXTJ.js.gz +0 -0
  657. package/dist/web/assets/send-to-chat-Bcm_Lcog.js +1 -0
  658. package/dist/web/assets/send-to-chat-Bcm_Lcog.js.br +0 -0
  659. package/dist/web/assets/send-to-chat-Bcm_Lcog.js.gz +0 -0
  660. package/dist/web/assets/separator-BOYUIPkH.js +1 -0
  661. package/dist/web/assets/sequenceDiagram-2WXFIKYE-Dfq9uyFD.js +145 -0
  662. package/dist/web/assets/sequenceDiagram-2WXFIKYE-Dfq9uyFD.js.br +0 -0
  663. package/dist/web/assets/sequenceDiagram-2WXFIKYE-Dfq9uyFD.js.gz +0 -0
  664. package/dist/web/assets/services-panel-CBRTsROB.js +1 -0
  665. package/dist/web/assets/services-panel-CBRTsROB.js.br +0 -0
  666. package/dist/web/assets/services-panel-CBRTsROB.js.gz +0 -0
  667. package/dist/web/assets/session-changes-bar-BRopa3Dh.js +1 -0
  668. package/dist/web/assets/session-changes-bar-BRopa3Dh.js.br +0 -0
  669. package/dist/web/assets/session-changes-bar-BRopa3Dh.js.gz +0 -0
  670. package/dist/web/assets/session-list-sync-triggers-DitiR5h1.js +1 -0
  671. package/dist/web/assets/session-list-sync-triggers-DitiR5h1.js.br +0 -0
  672. package/dist/web/assets/session-list-sync-triggers-DitiR5h1.js.gz +0 -0
  673. package/dist/web/assets/session-review-tab--kNB_FKQ.js +6 -0
  674. package/dist/web/assets/session-review-tab--kNB_FKQ.js.br +0 -0
  675. package/dist/web/assets/session-review-tab--kNB_FKQ.js.gz +0 -0
  676. package/dist/web/assets/session-turns-gmrmXzeg.js +9 -0
  677. package/dist/web/assets/session-turns-gmrmXzeg.js.br +0 -0
  678. package/dist/web/assets/session-turns-gmrmXzeg.js.gz +0 -0
  679. package/dist/web/assets/settings-body-B-s0fEjc.js +1 -0
  680. package/dist/web/assets/settings-body-B-s0fEjc.js.br +0 -0
  681. package/dist/web/assets/settings-body-B-s0fEjc.js.gz +0 -0
  682. package/dist/web/assets/settings-categories-CcR9eL3x.js +1 -0
  683. package/dist/web/assets/settings-categories-CcR9eL3x.js.br +0 -0
  684. package/dist/web/assets/settings-categories-CcR9eL3x.js.gz +0 -0
  685. package/dist/web/assets/settings-section-content-BJ35dy5r.js +1 -0
  686. package/dist/web/assets/settings-section-content-DckksvTg.js +2 -0
  687. package/dist/web/assets/settings-section-content-DckksvTg.js.br +0 -0
  688. package/dist/web/assets/settings-section-content-DckksvTg.js.gz +0 -0
  689. package/dist/web/assets/settings-store-WeJyQVL8.js +2 -0
  690. package/dist/web/assets/settings-store-WeJyQVL8.js.br +0 -0
  691. package/dist/web/assets/settings-store-WeJyQVL8.js.gz +0 -0
  692. package/dist/web/assets/settings-tab-BlX33GEN.js +1 -0
  693. package/dist/web/assets/settings-window-content-B-7yV1_q.js +1 -0
  694. package/dist/web/assets/shaderlab-Cv3mWofL.js +1 -0
  695. package/dist/web/assets/shaderlab-Cv3mWofL.js.br +0 -0
  696. package/dist/web/assets/shaderlab-Cv3mWofL.js.gz +0 -0
  697. package/dist/web/assets/shellsession-47z2x_c2.js +1 -0
  698. package/dist/web/assets/slash-command-picker-BBcy6w6m.js +1 -0
  699. package/dist/web/assets/slash-command-picker-BBcy6w6m.js.br +0 -0
  700. package/dist/web/assets/slash-command-picker-BBcy6w6m.js.gz +0 -0
  701. package/dist/web/assets/sortable-header-B9gfWik4.js +1 -0
  702. package/dist/web/assets/sortable-header-B9gfWik4.js.br +0 -0
  703. package/dist/web/assets/sortable-header-B9gfWik4.js.gz +0 -0
  704. package/dist/web/assets/soy-DbMmewuy.js +1 -0
  705. package/dist/web/assets/soy-DbMmewuy.js.br +0 -0
  706. package/dist/web/assets/soy-DbMmewuy.js.gz +0 -0
  707. package/dist/web/assets/sparql-TvnQmFDh.js +1 -0
  708. package/dist/web/assets/sparql-TvnQmFDh.js.br +0 -0
  709. package/dist/web/assets/sparql-TvnQmFDh.js.gz +0 -0
  710. package/dist/web/assets/sql-completion-provider-CaTHVr1l.js +5 -0
  711. package/dist/web/assets/sql-completion-provider-CaTHVr1l.js.br +0 -0
  712. package/dist/web/assets/sql-completion-provider-CaTHVr1l.js.gz +0 -0
  713. package/dist/web/assets/sql-identifiers-DDISwQor.js +1 -0
  714. package/dist/web/assets/sql-identifiers-DDISwQor.js.br +0 -0
  715. package/dist/web/assets/sql-identifiers-DDISwQor.js.gz +0 -0
  716. package/dist/web/assets/sql-object-tab-DVo4bxRI.js +1 -0
  717. package/dist/web/assets/sql-object-tab-DVo4bxRI.js.br +0 -0
  718. package/dist/web/assets/sql-object-tab-DVo4bxRI.js.gz +0 -0
  719. package/dist/web/assets/sqlite-viewer-BGfIpl5x.js +1 -0
  720. package/dist/web/assets/sqlite-viewer-BGfIpl5x.js.br +0 -0
  721. package/dist/web/assets/sqlite-viewer-BGfIpl5x.js.gz +0 -0
  722. package/dist/web/assets/start-ellipsis-rBh37k0n.js +1 -0
  723. package/dist/web/assets/stata-ColYzPoX.js +1 -0
  724. package/dist/web/assets/stata-ColYzPoX.js.br +0 -0
  725. package/dist/web/assets/stata-ColYzPoX.js.gz +0 -0
  726. package/dist/web/assets/stateDiagram-RAJIS63D-B8YqGq27.js +1 -0
  727. package/dist/web/assets/stateDiagram-RAJIS63D-B8YqGq27.js.br +0 -0
  728. package/dist/web/assets/stateDiagram-RAJIS63D-B8YqGq27.js.gz +0 -0
  729. package/dist/web/assets/stateDiagram-v2-FVOUBMTO-U76Fcmmw.js +1 -0
  730. package/dist/web/assets/structure-save-dialog-STK_RFCK.js +1 -0
  731. package/dist/web/assets/structure-save-dialog-STK_RFCK.js.br +0 -0
  732. package/dist/web/assets/structure-save-dialog-STK_RFCK.js.gz +0 -0
  733. package/dist/web/assets/structure-tab-DuLnsTC4.js +3 -0
  734. package/dist/web/assets/structure-tab-DuLnsTC4.js.br +0 -0
  735. package/dist/web/assets/structure-tab-DuLnsTC4.js.gz +0 -0
  736. package/dist/web/assets/surrealql-Bq6PTSr5.js +1 -0
  737. package/dist/web/assets/surrealql-Bq6PTSr5.js.br +0 -0
  738. package/dist/web/assets/surrealql-Bq6PTSr5.js.gz +0 -0
  739. package/dist/web/assets/svelte-QMQkUlOI.js +1 -0
  740. package/dist/web/assets/svelte-QMQkUlOI.js.br +0 -0
  741. package/dist/web/assets/svelte-QMQkUlOI.js.gz +0 -0
  742. package/dist/web/assets/system-monitor-body-BIjW16Pb.js +2 -0
  743. package/dist/web/assets/system-monitor-body-BIjW16Pb.js.br +0 -0
  744. package/dist/web/assets/system-monitor-body-BIjW16Pb.js.gz +0 -0
  745. package/dist/web/assets/system-monitor-tab-B6_tC9LO.js +1 -0
  746. package/dist/web/assets/system-monitor-window-content-CwBzqMUe.js +1 -0
  747. package/dist/web/assets/tab-host-window-content-CpdEjkZd.js +1 -0
  748. package/dist/web/assets/tab-host-window-content-CpdEjkZd.js.br +0 -0
  749. package/dist/web/assets/tab-host-window-content-CpdEjkZd.js.gz +0 -0
  750. package/dist/web/assets/tab-store-nNzRNfVV.js +1 -0
  751. package/dist/web/assets/table-tab-B5asfTBP.js +2 -0
  752. package/dist/web/assets/table-tab-B5asfTBP.js.br +0 -0
  753. package/dist/web/assets/table-tab-B5asfTBP.js.gz +0 -0
  754. package/dist/web/assets/telegram-bot-token-field-BiqKbXwE.js +1 -0
  755. package/dist/web/assets/telegram-bot-token-field-BiqKbXwE.js.br +0 -0
  756. package/dist/web/assets/telegram-bot-token-field-BiqKbXwE.js.gz +0 -0
  757. package/dist/web/assets/templ-C1kESo-I.js +1 -0
  758. package/dist/web/assets/templ-C1kESo-I.js.br +0 -0
  759. package/dist/web/assets/templ-C1kESo-I.js.gz +0 -0
  760. package/dist/web/assets/terminal-tab-DpMONMVB.js +3 -0
  761. package/dist/web/assets/terminal-tab-DpMONMVB.js.br +0 -0
  762. package/dist/web/assets/terminal-tab-DpMONMVB.js.gz +0 -0
  763. package/dist/web/assets/tex-B0snethp.js +1 -0
  764. package/dist/web/assets/tex-B0snethp.js.br +0 -0
  765. package/dist/web/assets/tex-B0snethp.js.gz +0 -0
  766. package/dist/web/assets/timeline-definition-YZTLITO2-3U3p-lPX.js +61 -0
  767. package/dist/web/assets/timeline-definition-YZTLITO2-3U3p-lPX.js.br +0 -0
  768. package/dist/web/assets/timeline-definition-YZTLITO2-3U3p-lPX.js.gz +0 -0
  769. package/dist/web/assets/tool-cards-DoDKxqN4.js +14 -0
  770. package/dist/web/assets/tool-cards-DoDKxqN4.js.br +0 -0
  771. package/dist/web/assets/tool-cards-DoDKxqN4.js.gz +0 -0
  772. package/dist/web/assets/treemap-KZPCXAKY-X6uv-HhJ.js +1 -0
  773. package/dist/web/assets/ts-tags-XXdX0qhp.js +1 -0
  774. package/dist/web/assets/ts-tags-XXdX0qhp.js.br +0 -0
  775. package/dist/web/assets/ts-tags-XXdX0qhp.js.gz +0 -0
  776. package/dist/web/assets/twig-DIZPhfGq.js +1 -0
  777. package/dist/web/assets/twig-DIZPhfGq.js.br +0 -0
  778. package/dist/web/assets/twig-DIZPhfGq.js.gz +0 -0
  779. package/dist/web/assets/use-at-most-wide-BQFi1Sjv.js +1 -0
  780. package/dist/web/assets/use-blob-url-D7ElNPnW.js +1 -0
  781. package/dist/web/assets/use-db-driver-installed-BscdI-wS.js +1 -0
  782. package/dist/web/assets/use-db-read-DYuyNA5i.js +1 -0
  783. package/dist/web/assets/use-db-read-DYuyNA5i.js.br +0 -0
  784. package/dist/web/assets/use-db-read-DYuyNA5i.js.gz +0 -0
  785. package/dist/web/assets/use-db-tab-Cr4lXxwF.js +1 -0
  786. package/dist/web/assets/use-db-tab-Cr4lXxwF.js.br +0 -0
  787. package/dist/web/assets/use-db-tab-Cr4lXxwF.js.gz +0 -0
  788. package/dist/web/assets/use-design-canvas-check-DKlyMp-S.js +1 -0
  789. package/dist/web/assets/use-design-canvas-check-DKlyMp-S.js.br +0 -0
  790. package/dist/web/assets/use-design-canvas-check-DKlyMp-S.js.gz +0 -0
  791. package/dist/web/assets/use-inline-blame-DS0HrHJ3.js +16 -0
  792. package/dist/web/assets/use-inline-blame-DS0HrHJ3.js.br +0 -0
  793. package/dist/web/assets/use-inline-blame-DS0HrHJ3.js.gz +0 -0
  794. package/dist/web/assets/use-lsp-BTVDYrt6.js +6 -0
  795. package/dist/web/assets/use-lsp-BTVDYrt6.js.br +0 -0
  796. package/dist/web/assets/use-lsp-BTVDYrt6.js.gz +0 -0
  797. package/dist/web/assets/use-monaco-theme-DqnhExsm.js +1 -0
  798. package/dist/web/assets/use-opener-focus-C5L5UUJs.js +1 -0
  799. package/dist/web/assets/use-process-kill-D-SGQxDn.js +1 -0
  800. package/dist/web/assets/use-process-kill-D-SGQxDn.js.br +0 -0
  801. package/dist/web/assets/use-process-kill-D-SGQxDn.js.gz +0 -0
  802. package/dist/web/assets/use-sql-schema-info-DRb9dAKi.js +4 -0
  803. package/dist/web/assets/use-sql-schema-info-DRb9dAKi.js.br +0 -0
  804. package/dist/web/assets/use-sql-schema-info-DRb9dAKi.js.gz +0 -0
  805. package/dist/web/assets/use-websocket-C6RnlNVJ.js +1 -0
  806. package/dist/web/assets/vendor-ui-CS1GvlOm.js +45 -0
  807. package/dist/web/assets/vendor-ui-CS1GvlOm.js.br +0 -0
  808. package/dist/web/assets/vendor-ui-CS1GvlOm.js.gz +0 -0
  809. package/dist/web/assets/vennDiagram-LZ73GAT5-DA_6uAVT.js +34 -0
  810. package/dist/web/assets/vennDiagram-LZ73GAT5-DA_6uAVT.js.br +0 -0
  811. package/dist/web/assets/vennDiagram-LZ73GAT5-DA_6uAVT.js.gz +0 -0
  812. package/dist/web/assets/video-preview-CYzeUPfH.js +1 -0
  813. package/dist/web/assets/video-preview-CYzeUPfH.js.br +0 -0
  814. package/dist/web/assets/video-preview-CYzeUPfH.js.gz +0 -0
  815. package/dist/web/assets/voice-settings-section-C01d-toF.js +1 -0
  816. package/dist/web/assets/voice-settings-section-C01d-toF.js.br +0 -0
  817. package/dist/web/assets/voice-settings-section-C01d-toF.js.gz +0 -0
  818. package/dist/web/assets/vue-Bzq4wgkZ.js +1 -0
  819. package/dist/web/assets/vue-Bzq4wgkZ.js.br +0 -0
  820. package/dist/web/assets/vue-Bzq4wgkZ.js.gz +0 -0
  821. package/dist/web/assets/vue-html-Cw1hn392.js +1 -0
  822. package/dist/web/assets/vue-html-Cw1hn392.js.br +0 -0
  823. package/dist/web/assets/vue-html-Cw1hn392.js.gz +0 -0
  824. package/dist/web/assets/vue-vine-BnNe0hw6.js +1 -0
  825. package/dist/web/assets/vue-vine-BnNe0hw6.js.br +0 -0
  826. package/dist/web/assets/vue-vine-BnNe0hw6.js.gz +0 -0
  827. package/dist/web/assets/web-preview-tab-F5C3quQs.js +1 -0
  828. package/dist/web/assets/web-preview-tab-F5C3quQs.js.br +0 -0
  829. package/dist/web/assets/web-preview-tab-F5C3quQs.js.gz +0 -0
  830. package/dist/web/assets/window-pip-registry-DSoB7T3k.js +1 -0
  831. package/dist/web/assets/window-store-zJczRsv4.js +1 -0
  832. package/dist/web/assets/window-store-zJczRsv4.js.br +0 -0
  833. package/dist/web/assets/window-store-zJczRsv4.js.gz +0 -0
  834. package/dist/web/assets/ws-auth-cWeQ7_61.js +1 -0
  835. package/dist/web/assets/xml-B_Dd-eqG.js +1 -0
  836. package/dist/web/assets/xml-B_Dd-eqG.js.br +0 -0
  837. package/dist/web/assets/xml-B_Dd-eqG.js.gz +0 -0
  838. package/dist/web/assets/xsl-gLqXzcUZ.js +1 -0
  839. package/dist/web/assets/xsl-gLqXzcUZ.js.br +0 -0
  840. package/dist/web/assets/xsl-gLqXzcUZ.js.gz +0 -0
  841. package/dist/web/assets/xychartDiagram-JWTSCODW-B02PE8Cu.js +7 -0
  842. package/dist/web/assets/xychartDiagram-JWTSCODW-B02PE8Cu.js.br +0 -0
  843. package/dist/web/assets/xychartDiagram-JWTSCODW-B02PE8Cu.js.gz +0 -0
  844. package/dist/web/index.html +52 -35
  845. package/dist/web/index.html.br +0 -0
  846. package/dist/web/index.html.gz +0 -0
  847. package/dist/web/sw.js +1 -1
  848. package/dist/web/sw.js.br +0 -0
  849. package/dist/web/sw.js.gz +0 -0
  850. package/docs/architecture/ai-chat-and-providers.md +389 -0
  851. package/docs/architecture/data-and-storage.md +108 -172
  852. package/docs/architecture/integrations.md +12 -4
  853. package/docs/architecture/workspace-and-ui.md +168 -6
  854. package/docs/code-standards.md +30 -1
  855. package/docs/codebase-summary.md +36 -23
  856. package/docs/deployment-guide.md +56 -12
  857. package/docs/project-overview-pdr.md +2 -2
  858. package/docs/project-roadmap.md +21 -2
  859. package/docs/system-architecture.md +12 -7
  860. package/package.json +4 -3
  861. package/packages/ext-git-graph/src/checkout-pathspec.test.ts +52 -0
  862. package/packages/ext-git-graph/src/commit-detail-escaping.test.ts +84 -30
  863. package/packages/ext-git-graph/src/commit-detail-status.test.ts +83 -0
  864. package/packages/ext-git-graph/src/commit-keeps-typing.test.ts +54 -0
  865. package/packages/ext-git-graph/src/commit-paging.test.ts +93 -0
  866. package/packages/ext-git-graph/src/discard-undo-toast.test.ts +46 -0
  867. package/packages/ext-git-graph/src/extension.ts +517 -308
  868. package/packages/ext-git-graph/src/fetch-through-ppm.test.ts +152 -0
  869. package/packages/ext-git-graph/src/git-log-parser.ts +3 -1
  870. package/packages/ext-git-graph/src/gone-branch-filter.test.ts +65 -0
  871. package/packages/ext-git-graph/src/inspector-file-icons.test.ts +93 -0
  872. package/packages/ext-git-graph/src/log-args.test.ts +2 -2
  873. package/packages/ext-git-graph/src/outside-ref-changes.test.ts +185 -0
  874. package/packages/ext-git-graph/src/panel-test-harness.ts +242 -0
  875. package/packages/ext-git-graph/src/ppm-git.test.ts +76 -0
  876. package/packages/ext-git-graph/src/ppm-git.ts +151 -0
  877. package/packages/ext-git-graph/src/remote-head-refs.test.ts +32 -0
  878. package/packages/ext-git-graph/src/request-answers.test.ts +76 -0
  879. package/packages/ext-git-graph/src/search-marks.test.ts +53 -0
  880. package/packages/ext-git-graph/src/stash-list.test.ts +56 -0
  881. package/packages/ext-git-graph/src/types.ts +53 -16
  882. package/packages/ext-git-graph/src/undo-commit-webview.test.ts +82 -0
  883. package/packages/ext-git-graph/src/undo-targets-through-ppm.test.ts +164 -0
  884. package/packages/ext-git-graph/src/webview-html.test.ts +529 -595
  885. package/packages/ext-git-graph/src/webview-html.ts +144 -3765
  886. package/packages/ext-git-graph/src/webview-icons.generated.ts +69 -0
  887. package/packages/ext-git-graph/src/webview-protocol.test.ts +135 -0
  888. package/packages/ext-git-graph/src/webview-script-actions.ts +1291 -0
  889. package/packages/ext-git-graph/src/webview-script-core.ts +624 -0
  890. package/packages/ext-git-graph/src/webview-script-graph.ts +570 -0
  891. package/packages/ext-git-graph/src/webview-script-inspector.ts +571 -0
  892. package/packages/ext-git-graph/src/webview-script-list.ts +696 -0
  893. package/packages/ext-git-graph/src/webview-script-main.ts +279 -0
  894. package/packages/ext-git-graph/src/webview-script-settings.ts +285 -0
  895. package/packages/ext-git-graph/src/webview-styles.ts +615 -0
  896. package/packages/ext-git-graph/src/wip-model.ts +299 -0
  897. package/scripts/gen-db-driver-locks.ts +41 -0
  898. package/scripts/gen-file-icons.ts +27 -0
  899. package/scripts/gen-git-graph-icons.ts +135 -0
  900. package/scripts/gen-product-icons.ts +34 -0
  901. package/scripts/vite-glide-eager-editors.ts +37 -0
  902. package/src/cli/commands/config-cmd.ts +10 -0
  903. package/src/cli/commands/db-cmd.ts +279 -50
  904. package/src/cli/commands/logs.ts +26 -7
  905. package/src/cli/utils/tty-prompt.ts +51 -0
  906. package/src/index.ts +4 -0
  907. package/src/lib/account-crypto.ts +6 -0
  908. package/src/providers/claude-agent-sdk-query-options.ts +111 -0
  909. package/src/providers/claude-agent-sdk.ts +326 -133
  910. package/src/providers/claude-warm-spare.ts +26 -9
  911. package/src/providers/cli-provider-base.ts +28 -5
  912. package/src/providers/codex-app-server/codex-event-mapper.ts +4 -9
  913. package/src/providers/codex-app-server/codex-file-baselines.ts +47 -0
  914. package/src/providers/codex-app-server/codex-history.ts +1 -1
  915. package/src/providers/codex-app-server/codex-jsonrpc-client.ts +57 -11
  916. package/src/providers/codex-app-server/codex-patch.ts +68 -4
  917. package/src/providers/codex-app-server/codex-provider.ts +76 -14
  918. package/src/providers/codex-app-server/codex-rollout-header.ts +2 -1
  919. package/src/providers/codex-app-server/codex-rollout-items.ts +22 -0
  920. package/src/providers/codex-app-server/codex-thread-params.ts +34 -1
  921. package/src/providers/cursor-cli/cursor-history.ts +2 -1
  922. package/src/providers/registry.ts +12 -7
  923. package/src/server/index.ts +224 -103
  924. package/src/server/middleware/access-log.ts +127 -0
  925. package/src/server/middleware/auth.ts +8 -0
  926. package/src/server/routes/accounts.ts +13 -2
  927. package/src/server/routes/android.ts +6 -0
  928. package/src/server/routes/chat-file-changes.ts +215 -0
  929. package/src/server/routes/chat-history-page.ts +116 -0
  930. package/src/server/routes/chat.ts +125 -38
  931. package/src/server/routes/database-changeset.ts +178 -0
  932. package/src/server/routes/database-drivers.ts +36 -0
  933. package/src/server/routes/database-grid-export.ts +212 -0
  934. package/src/server/routes/database-grid.ts +317 -0
  935. package/src/server/routes/database-impexp.ts +317 -0
  936. package/src/server/routes/database-query.ts +186 -0
  937. package/src/server/routes/database-route-helpers.ts +130 -0
  938. package/src/server/routes/database-structure.ts +292 -0
  939. package/src/server/routes/database.ts +539 -280
  940. package/src/server/routes/design-settings.ts +30 -6
  941. package/src/server/routes/git.ts +254 -16
  942. package/src/server/routes/html-preview.ts +42 -9
  943. package/src/server/routes/jira-watcher-routes.ts +7 -1
  944. package/src/server/routes/logs.ts +158 -0
  945. package/src/server/routes/mcp.ts +11 -1
  946. package/src/server/routes/notifications.ts +192 -0
  947. package/src/server/routes/port-forwarding.ts +19 -19
  948. package/src/server/routes/project-scoped.ts +0 -2
  949. package/src/server/routes/query-audit-hook.ts +37 -31
  950. package/src/server/routes/remote-desktop.ts +19 -0
  951. package/src/server/routes/settings.ts +140 -45
  952. package/src/server/routes/system-services.ts +12 -6
  953. package/src/server/routes/tailscale.ts +70 -0
  954. package/src/server/routes/trace.ts +4 -1
  955. package/src/server/routes/tunnel-spawn.ts +55 -12
  956. package/src/server/routes/tunnel.ts +5 -0
  957. package/src/server/routes/tunnels.ts +63 -11
  958. package/src/server/routes/upgrade.ts +5 -1
  959. package/src/server/ws/android.ts +36 -11
  960. package/src/server/ws/chat.ts +294 -69
  961. package/src/server/ws/extensions.ts +13 -10
  962. package/src/server/ws/global.ts +14 -0
  963. package/src/server/ws/group-chat.ts +5 -0
  964. package/src/server/ws/lsp.ts +29 -4
  965. package/src/server/ws/remote-desktop.ts +25 -9
  966. package/src/server/ws/terminal.ts +8 -1
  967. package/src/services/account-pick.service.ts +1 -1
  968. package/src/services/account-selector.service.ts +76 -14
  969. package/src/services/account.service.ts +54 -23
  970. package/src/services/agent-transcript/agent-transcript-activity.ts +11 -4
  971. package/src/services/ai-chat-env.ts +28 -0
  972. package/src/services/android/android-operations.ts +10 -0
  973. package/src/services/android/android-session.ts +20 -0
  974. package/src/services/android/android-video.ts +41 -7
  975. package/src/services/android/avd-manager.ts +21 -3
  976. package/src/services/android/emulator-launcher.ts +40 -2
  977. package/src/services/autostart-register.ts +24 -8
  978. package/src/services/bash-output-spy.ts +6 -3
  979. package/src/services/binary-content.ts +8 -0
  980. package/src/services/binary-upgrade-apply.ts +5 -0
  981. package/src/services/binary-upgrade-download.ts +9 -1
  982. package/src/services/binary-upgrade-swap.ts +18 -3
  983. package/src/services/chat-prepare/chat-prepare.service.ts +4 -1
  984. package/src/services/chat-prepare/settle-within-budget.ts +10 -3
  985. package/src/services/chat-search.service.ts +4 -2
  986. package/src/services/chat.service.ts +115 -5
  987. package/src/services/claude-transcript-exists.ts +24 -0
  988. package/src/services/cloud-ws.service.ts +46 -12
  989. package/src/services/cloud.service.ts +40 -9
  990. package/src/services/cloudflared.service.ts +25 -3
  991. package/src/services/codex-account-cooldown.ts +4 -0
  992. package/src/services/codex-account-login.ts +15 -4
  993. package/src/services/compact-segment.ts +156 -0
  994. package/src/services/compaction-savings.ts +8 -2
  995. package/src/services/config-secret-keys.ts +2 -0
  996. package/src/services/config.service.ts +44 -6
  997. package/src/services/database/analyser-mysql.ts +384 -0
  998. package/src/services/database/analyser-postgres.ts +259 -0
  999. package/src/services/database/analyser-sqlite.ts +411 -0
  1000. package/src/services/database/changeset.service.ts +60 -0
  1001. package/src/services/database/changeset.ts +473 -0
  1002. package/src/services/database/connection-config.ts +370 -0
  1003. package/src/services/database/connection-database.ts +90 -0
  1004. package/src/services/database/connection-endpoint.ts +160 -0
  1005. package/src/services/database/connection-login.ts +144 -0
  1006. package/src/services/database/connection-test.ts +191 -0
  1007. package/src/services/database/db-errors.ts +57 -0
  1008. package/src/services/database/db-values.ts +45 -0
  1009. package/src/services/database/ddl/ddl-common.ts +47 -0
  1010. package/src/services/database/ddl/ddl-mysql.ts +202 -0
  1011. package/src/services/database/ddl/ddl-objects.ts +116 -0
  1012. package/src/services/database/ddl/ddl-postgres.ts +208 -0
  1013. package/src/services/database/ddl/ddl-sqlite.ts +172 -0
  1014. package/src/services/database/ddl/ddl-types.ts +61 -0
  1015. package/src/services/database/ddl/sqlite-alter-plan.ts +61 -0
  1016. package/src/services/database/ddl/sqlite-apply.ts +112 -0
  1017. package/src/services/database/ddl/sqlite-recreate.ts +202 -0
  1018. package/src/services/database/ddl/table-diff.ts +187 -0
  1019. package/src/services/database/dialect-mysql.ts +58 -0
  1020. package/src/services/database/dialect-postgres.ts +52 -0
  1021. package/src/services/database/dialect-sqlite.ts +30 -0
  1022. package/src/services/database/dialect.ts +108 -0
  1023. package/src/services/database/dialects.ts +20 -0
  1024. package/src/services/database/drivers/db-driver-catalog.ts +99 -0
  1025. package/src/services/database/drivers/db-driver-install.ts +348 -0
  1026. package/src/services/database/drivers/db-driver-loader.ts +103 -0
  1027. package/src/services/database/drivers/db-driver-locks.generated.json +201 -0
  1028. package/src/services/database/drivers/db-driver-store.ts +75 -0
  1029. package/src/services/database/export-batch.ts +68 -0
  1030. package/src/services/database/file-database.ts +105 -0
  1031. package/src/services/database/grid-cell.ts +80 -0
  1032. package/src/services/database/grid-export-text.ts +318 -0
  1033. package/src/services/database/grid-export-tickets.ts +61 -0
  1034. package/src/services/database/grid-export-xlsx.ts +296 -0
  1035. package/src/services/database/grid-export.ts +13 -0
  1036. package/src/services/database/grid-query-builder.ts +397 -0
  1037. package/src/services/database/grid.service.ts +157 -0
  1038. package/src/services/database/host-files.ts +52 -0
  1039. package/src/services/database/impexp/column-map.ts +58 -0
  1040. package/src/services/database/impexp/export-job-runner.ts +281 -0
  1041. package/src/services/database/impexp/impexp-files.ts +118 -0
  1042. package/src/services/database/impexp/impexp-job-store.ts +195 -0
  1043. package/src/services/database/impexp/impexp-request.ts +279 -0
  1044. package/src/services/database/impexp/import-job-runner.ts +181 -0
  1045. package/src/services/database/impexp/import-table-writer.ts +319 -0
  1046. package/src/services/database/impexp/import-uploads.ts +167 -0
  1047. package/src/services/database/impexp/readers/csv-reader.ts +359 -0
  1048. package/src/services/database/impexp/readers/file-rows.ts +59 -0
  1049. package/src/services/database/impexp/readers/file-text.ts +80 -0
  1050. package/src/services/database/impexp/readers/json-reader.ts +505 -0
  1051. package/src/services/database/impexp/zip-output.ts +55 -0
  1052. package/src/services/database/init-adapters.ts +4 -0
  1053. package/src/services/database/isolation-level.ts +18 -0
  1054. package/src/services/database/mysql-adapter.ts +62 -0
  1055. package/src/services/database/object-scripts.ts +20 -0
  1056. package/src/services/database/object-sql-mysql.ts +53 -0
  1057. package/src/services/database/object-sql-postgres.ts +265 -0
  1058. package/src/services/database/object-sql-sqlite.ts +25 -0
  1059. package/src/services/database/postgres-adapter.ts +93 -23
  1060. package/src/services/database/postgres-array-nulls.ts +101 -0
  1061. package/src/services/database/postgres-connect-options.ts +92 -0
  1062. package/src/services/database/query-script-runner.ts +203 -0
  1063. package/src/services/database/readonly-check.ts +39 -15
  1064. package/src/services/database/sqlite-adapter.ts +100 -17
  1065. package/src/services/database/ssh-agent-socket.ts +50 -0
  1066. package/src/services/database/ssh-known-hosts.ts +113 -0
  1067. package/src/services/database/ssh-tunnel.ts +613 -0
  1068. package/src/services/database/structure-change-request.ts +214 -0
  1069. package/src/services/database/structure-edit.service.ts +143 -0
  1070. package/src/services/database/tls-identity-check.ts +81 -0
  1071. package/src/services/db-backup/db-backup-restore.ts +14 -2
  1072. package/src/services/db.service.ts +153 -54
  1073. package/src/services/design/bridge/bridge-script.ts +14 -6
  1074. package/src/services/design/bridge/html-preview-bridge.ts +23 -0
  1075. package/src/services/design/comments/design-comments-store.ts +7 -2
  1076. package/src/services/design/design-skill-install.service.ts +269 -0
  1077. package/src/services/design/design-turn-snapshot.ts +5 -2
  1078. package/src/services/design/mcp/design-mcp-endpoint.ts +15 -77
  1079. package/src/services/design/mcp/design-mcp-tokens.ts +9 -65
  1080. package/src/services/design/preview/design-preview-html.ts +1 -1
  1081. package/src/services/draft.service.ts +10 -3
  1082. package/src/services/edge-forwarder.ts +50 -3
  1083. package/src/services/event-loop-lag.ts +37 -2
  1084. package/src/services/extension-host-worker.ts +41 -6
  1085. package/src/services/extension-installer.ts +13 -5
  1086. package/src/services/extension-manifest.ts +9 -2
  1087. package/src/services/extension-rpc-handlers.ts +39 -4
  1088. package/src/services/extension-rpc.ts +31 -2
  1089. package/src/services/extension.service.ts +48 -13
  1090. package/src/services/file-lines.ts +2 -2
  1091. package/src/services/file-list-index.service.ts +17 -1
  1092. package/src/services/file-watcher/linux-inotify.ts +47 -6
  1093. package/src/services/file-watcher/watch-tree.ts +42 -6
  1094. package/src/services/file-watcher.service.ts +15 -7
  1095. package/src/services/file.service.ts +6 -0
  1096. package/src/services/fs-ops/fs-core-ops.ts +5 -1
  1097. package/src/services/fs-ops/fs-git-init.service.ts +13 -1
  1098. package/src/services/fs-ops/fs-ops-copy-move.service.ts +5 -0
  1099. package/src/services/fs-ops/fs-ops-mutate.service.ts +6 -1
  1100. package/src/services/fs-ops/fs-ops-trash.service.ts +17 -3
  1101. package/src/services/git-changes/diff-sections.ts +230 -0
  1102. package/src/services/git-changes/git-changes.service.ts +471 -0
  1103. package/src/services/git-changes/git-events.ts +28 -0
  1104. package/src/services/git-changes/git-operation.ts +86 -0
  1105. package/src/services/git-changes/porcelain-v2.ts +117 -0
  1106. package/src/services/git-commit-draft.service.ts +51 -0
  1107. package/src/services/git-discard-journal/git-discard-journal.service.ts +412 -0
  1108. package/src/services/git-hunks/git-hunks.service.ts +50 -11
  1109. package/src/services/git-workflow/git-workflow.service.ts +198 -0
  1110. package/src/services/git.service.ts +64 -8
  1111. package/src/services/group-chat/group-chat.service.ts +31 -5
  1112. package/src/services/group-chat/responder-router.ts +15 -3
  1113. package/src/services/host-info/host-info.service.ts +16 -0
  1114. package/src/services/host-info/spawn-runner.ts +25 -0
  1115. package/src/services/jira-config.service.ts +13 -1
  1116. package/src/services/jira-debug-session.service.ts +19 -4
  1117. package/src/services/jira-watcher.service.ts +53 -11
  1118. package/src/services/jsonl-transcript-parser.ts +49 -19
  1119. package/src/services/log-level-config.ts +36 -0
  1120. package/src/services/logger.ts +280 -0
  1121. package/src/services/logs/browser-logs.ts +84 -0
  1122. package/src/services/logs/github-issues.ts +76 -0
  1123. package/src/services/logs/log-ai.ts +40 -0
  1124. package/src/services/logs/log-columns.ts +160 -0
  1125. package/src/services/logs/log-environment.ts +94 -0
  1126. package/src/services/logs/log-file-index.ts +355 -0
  1127. package/src/services/logs/log-issues.ts +390 -0
  1128. package/src/services/logs/log-live.ts +82 -0
  1129. package/src/services/logs/log-report-draft.ts +63 -0
  1130. package/src/services/logs/log-store.ts +609 -0
  1131. package/src/services/lsp/lsp-install.ts +199 -11
  1132. package/src/services/lsp/lsp-manager.ts +31 -7
  1133. package/src/services/lsp/lsp-release-catalog.ts +87 -0
  1134. package/src/services/lsp/lsp-session.ts +29 -2
  1135. package/src/services/lsp/server-registry.ts +85 -18
  1136. package/src/services/mcp-http-endpoint.ts +127 -0
  1137. package/src/services/mcp-oauth/mcp-oauth-flows.ts +11 -4
  1138. package/src/services/mcp-session-tokens.ts +77 -0
  1139. package/src/services/media-transcode/ffmpeg-capabilities.ts +33 -2
  1140. package/src/services/media-transcode/transcode-stream.ts +7 -1
  1141. package/src/services/memory-diagnostics.ts +86 -0
  1142. package/src/services/mysql.service.ts +1065 -0
  1143. package/src/services/named-tunnel/cloudflared-login-helpers.ts +4 -2
  1144. package/src/services/named-tunnel/cloudflared-login.service.ts +15 -2
  1145. package/src/services/named-tunnel/named-tunnel-setup-confirm.ts +7 -1
  1146. package/src/services/named-tunnel/named-tunnel-setup.service.ts +9 -1
  1147. package/src/services/nested-subagent-spy.ts +7 -4
  1148. package/src/services/notification-format.ts +74 -0
  1149. package/src/services/notification-link.ts +22 -0
  1150. package/src/services/notification.service.ts +157 -12
  1151. package/src/services/ntfy-notification.service.ts +134 -0
  1152. package/src/services/picked-account-binding.ts +7 -1
  1153. package/src/services/port-forward/forward-hop.ts +296 -0
  1154. package/src/services/port-forward/frame-ancestors.ts +117 -0
  1155. package/src/services/port-forward/tailscale-forward.ts +261 -0
  1156. package/src/services/postgres.service.ts +815 -21
  1157. package/src/services/ppmbot/cli-reference-default.ts +17 -4
  1158. package/src/services/ppmbot/ppmbot-delegation.ts +8 -0
  1159. package/src/services/ppmbot/ppmbot-service.ts +58 -46
  1160. package/src/services/ppmbot/ppmbot-session.ts +14 -10
  1161. package/src/services/ppmbot/ppmbot-streamer.ts +6 -3
  1162. package/src/services/ppmbot/ppmbot-telegram.ts +45 -13
  1163. package/src/services/project.service.ts +12 -1
  1164. package/src/services/provider-usage/usage-registry.ts +12 -2
  1165. package/src/services/proxy-agent-anthropic-bridge.ts +11 -1
  1166. package/src/services/proxy-agent-bridge.ts +11 -1
  1167. package/src/services/proxy-agent-turn.ts +25 -2
  1168. package/src/services/proxy-image-bridge.ts +2 -2
  1169. package/src/services/proxy-openai-bridge.ts +1 -1
  1170. package/src/services/proxy-sdk-bridge.ts +1 -1
  1171. package/src/services/proxy.service.ts +32 -9
  1172. package/src/services/query-audit/query-audit.service.ts +10 -2
  1173. package/src/services/read-lines.ts +16 -4
  1174. package/src/services/redact-secrets.ts +23 -2
  1175. package/src/services/remote-desktop/ffmpeg-install.ts +85 -0
  1176. package/src/services/remote-desktop/mediamtx-install.service.ts +11 -2
  1177. package/src/services/remote-desktop/mediamtx-process.ts +31 -2
  1178. package/src/services/remote-desktop/remote-desktop-audio.ts +24 -7
  1179. package/src/services/remote-desktop/remote-desktop-capture-input.ts +7 -4
  1180. package/src/services/remote-desktop/remote-desktop-capture-wayland.ts +30 -10
  1181. package/src/services/remote-desktop/remote-desktop-capture.ts +40 -6
  1182. package/src/services/remote-desktop/remote-desktop-displays-win32.ts +92 -0
  1183. package/src/services/remote-desktop/remote-desktop-displays.ts +8 -5
  1184. package/src/services/remote-desktop/remote-desktop-input-uinput.ts +20 -1
  1185. package/src/services/remote-desktop/remote-desktop-input-win32.ts +49 -9
  1186. package/src/services/remote-desktop/remote-desktop-portal.ts +19 -3
  1187. package/src/services/remote-desktop/remote-desktop-privacy.ts +8 -1
  1188. package/src/services/remote-desktop/remote-desktop-requirements.ts +3 -2
  1189. package/src/services/remote-desktop/remote-desktop-resolution.ts +6 -0
  1190. package/src/services/remote-desktop/remote-desktop-session.ts +111 -27
  1191. package/src/services/remote-desktop/remote-desktop-x11.ts +25 -2
  1192. package/src/services/scheduler-core.ts +22 -10
  1193. package/src/services/scheduler-runner.ts +28 -10
  1194. package/src/services/sd-notify.ts +26 -2
  1195. package/src/services/session-file-baselines/reverse-unified-diff.ts +85 -0
  1196. package/src/services/session-file-baselines/session-file-baselines.service.ts +241 -0
  1197. package/src/services/session-file-baselines/session-file-blame.ts +200 -0
  1198. package/src/services/session-file-baselines/session-file-changes.service.ts +321 -0
  1199. package/src/services/session-file-baselines/session-file-history.ts +347 -0
  1200. package/src/services/session-file-baselines/session-review-actions.ts +560 -0
  1201. package/src/services/session-file-baselines/session-review-blocks.ts +90 -0
  1202. package/src/services/session-file-baselines/session-review-marks.ts +90 -0
  1203. package/src/services/session-file-baselines/session-turn-revert.ts +374 -0
  1204. package/src/services/session-file-baselines/shell-change-tracker.ts +489 -0
  1205. package/src/services/session-trace/session-trace-db.ts +14 -1
  1206. package/src/services/session-trace/session-trace-store.ts +56 -0
  1207. package/src/services/session-trace/turn-stop-reader.ts +70 -0
  1208. package/src/services/speech-to-text/whisper-install.service.ts +13 -1
  1209. package/src/services/sqlite-types.ts +2 -0
  1210. package/src/services/sqlite.service.ts +507 -13
  1211. package/src/services/supervisor-state.ts +6 -4
  1212. package/src/services/supervisor-stopped-page.ts +6 -6
  1213. package/src/services/supervisor.ts +118 -44
  1214. package/src/services/system-metrics/gpu-collector-nvidia.ts +13 -3
  1215. package/src/services/system-metrics/kill-request-handler.ts +9 -8
  1216. package/src/services/system-metrics/powershell-session.ts +40 -7
  1217. package/src/services/system-metrics/process-collector-windows.ts +4 -3
  1218. package/src/services/system-metrics/process-net-collector-darwin.ts +13 -5
  1219. package/src/services/system-metrics/signal-request-handler.ts +9 -8
  1220. package/src/services/system-metrics/system-metrics-platform.ts +11 -2
  1221. package/src/services/system-metrics/system-metrics.service.ts +31 -4
  1222. package/src/services/system-services/app-icon-service.ts +19 -1
  1223. package/src/services/system-services/app-icons-windows.ts +105 -0
  1224. package/src/services/system-services/apps-windows-native.ts +233 -0
  1225. package/src/services/system-services/apps-windows.ts +156 -0
  1226. package/src/services/system-services/launchd-collector.ts +12 -1
  1227. package/src/services/system-services/service-backend.ts +6 -3
  1228. package/src/services/system-services/systemd-collector.ts +9 -1
  1229. package/src/services/system-services/windows-services-parse.ts +186 -0
  1230. package/src/services/system-services/windows-services.ts +200 -0
  1231. package/src/services/tab-tools-mcp/tab-open-broker.ts +135 -0
  1232. package/src/services/tab-tools-mcp/tab-target.ts +88 -0
  1233. package/src/services/tab-tools-mcp/tab-tools-mcp-endpoint.ts +116 -0
  1234. package/src/services/tab-tools-mcp/tab-tools-mcp-tokens.ts +36 -0
  1235. package/src/services/tab-tools-mcp/tab-tools-mcp-tool.ts +78 -0
  1236. package/src/services/table-cache.service.ts +4 -2
  1237. package/src/services/tailscale/tailscale-app-service.ts +239 -0
  1238. package/src/services/tailscale/tailscale-cli.ts +48 -0
  1239. package/src/services/tailscale/tailscale-login.ts +257 -0
  1240. package/src/services/tailscale/tailscale-state.ts +198 -0
  1241. package/src/services/telegram-bot-api.ts +80 -0
  1242. package/src/services/telegram-bots.ts +131 -0
  1243. package/src/services/telegram-connect.service.ts +262 -0
  1244. package/src/services/telegram-notification.service.ts +48 -55
  1245. package/src/services/terminal.service.ts +46 -11
  1246. package/src/services/theme-import/fetch-url.ts +11 -2
  1247. package/src/services/tunnel-registry-parse.ts +4 -0
  1248. package/src/services/tunnel.service.ts +15 -0
  1249. package/src/services/upgrade.service.ts +30 -2
  1250. package/src/services/web-push/web-push-crypto.ts +150 -0
  1251. package/src/services/web-push/web-push-store.ts +116 -0
  1252. package/src/services/web-push/web-push.service.ts +240 -0
  1253. package/src/shared/agent-transcript-protocol.ts +4 -1
  1254. package/src/shared/chat-reply.ts +51 -0
  1255. package/src/shared/db-changeset.ts +89 -0
  1256. package/src/shared/db-column-kind.ts +90 -0
  1257. package/src/shared/db-connection-config.ts +256 -0
  1258. package/src/shared/db-connection-url.ts +252 -0
  1259. package/src/shared/db-drivers.ts +36 -0
  1260. package/src/shared/db-explorer-prefs.ts +123 -0
  1261. package/src/shared/db-filter-parser.ts +534 -0
  1262. package/src/shared/db-grid-export.ts +88 -0
  1263. package/src/shared/db-grid.ts +234 -0
  1264. package/src/shared/db-impexp.ts +313 -0
  1265. package/src/shared/db-lookup-prefs.ts +37 -0
  1266. package/src/shared/db-query-script.ts +110 -0
  1267. package/src/shared/db-structure-change.ts +83 -0
  1268. package/src/shared/db-structure.ts +195 -0
  1269. package/src/shared/db-table-model.ts +500 -0
  1270. package/src/shared/db-types.ts +31 -0
  1271. package/src/shared/design-canvas-check-format.ts +23 -0
  1272. package/src/shared/design-skill-suggestion.ts +20 -4
  1273. package/src/shared/git-changes.ts +220 -0
  1274. package/src/shared/log-fingerprint.ts +32 -0
  1275. package/src/shared/log-levels.ts +41 -0
  1276. package/src/shared/log-redact.ts +82 -0
  1277. package/src/shared/logs-api.ts +145 -0
  1278. package/src/shared/logs-model.ts +230 -0
  1279. package/src/shared/notification-settings.ts +184 -0
  1280. package/src/shared/ppmbot-telegram.ts +16 -0
  1281. package/src/shared/review-blocks.ts +222 -0
  1282. package/src/shared/session-file-changes.ts +136 -0
  1283. package/src/shared/split-sql-statements.ts +388 -0
  1284. package/src/shared/sql-identifiers.ts +97 -0
  1285. package/src/shared/tab-open-protocol.ts +70 -0
  1286. package/src/shared/tailscale-setup.ts +126 -0
  1287. package/src/shared/terminal-size.ts +23 -0
  1288. package/src/shared/tool-result-content.ts +5 -0
  1289. package/src/shared/turn-stop.ts +30 -0
  1290. package/src/shared/user-agent-label.ts +59 -0
  1291. package/src/shared/web-push-payload.ts +41 -0
  1292. package/src/types/api.ts +12 -3
  1293. package/src/types/chat.ts +6 -0
  1294. package/src/types/config.ts +25 -0
  1295. package/src/types/database.ts +215 -7
  1296. package/src/types/system-metrics.ts +9 -5
  1297. package/src/types/system-services.ts +8 -3
  1298. package/src/web/app.tsx +31 -7
  1299. package/src/web/components/auth/login-screen.tsx +21 -10
  1300. package/src/web/components/chat/change-file-row.tsx +1 -79
  1301. package/src/web/components/chat/chat-history-bar.tsx +3 -2
  1302. package/src/web/components/chat/chat-tab.tsx +183 -39
  1303. package/src/web/components/chat/chat-toolbar-overflow-menu.tsx +7 -1
  1304. package/src/web/components/chat/message-action-bar.tsx +3 -1
  1305. package/src/web/components/chat/message-input.tsx +66 -8
  1306. package/src/web/components/chat/message-list.tsx +146 -9
  1307. package/src/web/components/chat/message-reply-reference.ts +43 -0
  1308. package/src/web/components/chat/message-user-bubble.tsx +10 -3
  1309. package/src/web/components/chat/reply-card.tsx +28 -0
  1310. package/src/web/components/chat/running-agents-bar.tsx +78 -44
  1311. package/src/web/components/chat/session-change-row.tsx +118 -0
  1312. package/src/web/components/chat/session-changes-bar.tsx +219 -0
  1313. package/src/web/components/chat/session-changes-context.tsx +21 -0
  1314. package/src/web/components/chat/tab-tool-card.tsx +93 -0
  1315. package/src/web/components/chat/tool-cards.tsx +11 -0
  1316. package/src/web/components/chat/turn-change-pill.tsx +20 -2
  1317. package/src/web/components/chat/turn-change-review.tsx +383 -0
  1318. package/src/web/components/chat/turn-change-rollup.tsx +15 -4
  1319. package/src/web/components/chat/turn-change-sheet.tsx +103 -94
  1320. package/src/web/components/chat/turn-change-tray.tsx +90 -93
  1321. package/src/web/components/chat/turn-stop-bar.tsx +42 -0
  1322. package/src/web/components/chat/user-message-parse.ts +5 -2
  1323. package/src/web/components/database/connection-color-picker.tsx +42 -46
  1324. package/src/web/components/database/connection-form/connection-advanced-pane.tsx +82 -0
  1325. package/src/web/components/database/connection-form/connection-form-state.ts +719 -0
  1326. package/src/web/components/database/connection-form/connection-form-tab.tsx +160 -0
  1327. package/src/web/components/database/connection-form/connection-general-pane.tsx +231 -0
  1328. package/src/web/components/database/connection-form/connection-ssh-pane.tsx +136 -0
  1329. package/src/web/components/database/connection-form/connection-ssl-pane.tsx +68 -0
  1330. package/src/web/components/database/connection-form/connection-test-result.tsx +90 -0
  1331. package/src/web/components/database/connection-form/database-picker.tsx +136 -0
  1332. package/src/web/components/database/connection-form/engine-tiles.tsx +72 -0
  1333. package/src/web/components/database/connection-form/form-controls.tsx +219 -0
  1334. package/src/web/components/database/connection-form/use-connection-form.ts +369 -0
  1335. package/src/web/components/database/connection-import-export.tsx +6 -5
  1336. package/src/web/components/database/connections-section/connection-menus.ts +100 -0
  1337. package/src/web/components/database/connections-section/connection-tree-model.ts +113 -0
  1338. package/src/web/components/database/connections-section/connections-section.tsx +432 -0
  1339. package/src/web/components/database/connections-section/delete-connection-dialog.tsx +75 -0
  1340. package/src/web/components/database/connections-section/folder-name-input.tsx +41 -0
  1341. package/src/web/components/database/database-sidebar.tsx +55 -78
  1342. package/src/web/components/database/db-login/db-login-dialog.tsx +255 -0
  1343. package/src/web/components/database/db-login/db-login-store.ts +63 -0
  1344. package/src/web/components/database/db-rows-status.tsx +32 -0
  1345. package/src/web/components/database/db-sidebar-reveal.ts +66 -0
  1346. package/src/web/components/database/db-tab-parts.tsx +117 -0
  1347. package/src/web/components/database/driver-missing-notice.tsx +72 -0
  1348. package/src/web/components/database/explorer/db-explorer-store.ts +658 -0
  1349. package/src/web/components/database/explorer/explorer-menu.tsx +193 -0
  1350. package/src/web/components/database/explorer/explorer-model.ts +341 -0
  1351. package/src/web/components/database/explorer/open-db-tabs.ts +160 -0
  1352. package/src/web/components/database/explorer/open-new-query.ts +22 -0
  1353. package/src/web/components/database/explorer/open-new-table.ts +37 -0
  1354. package/src/web/components/database/explorer/sql-templates.ts +110 -0
  1355. package/src/web/components/database/explorer/tree-parts.tsx +109 -0
  1356. package/src/web/components/database/explorer/use-db-explorer-sync.ts +25 -0
  1357. package/src/web/components/database/explorer/use-row-menu.ts +37 -0
  1358. package/src/web/components/database/explorer/use-tree-keys.ts +92 -0
  1359. package/src/web/components/database/export-button.tsx +96 -113
  1360. package/src/web/components/database/extract-query-table.ts +4 -3
  1361. package/src/web/components/database/focused-database-prompt.tsx +85 -0
  1362. package/src/web/components/database/glide-context-menu.tsx +52 -62
  1363. package/src/web/components/database/glide-data-grid.tsx +1401 -157
  1364. package/src/web/components/database/glide-grid-theme.ts +49 -2
  1365. package/src/web/components/database/glide-grid-types.ts +222 -48
  1366. package/src/web/components/database/glide-header-menu.tsx +52 -103
  1367. package/src/web/components/database/glide-save-bar.tsx +4 -3
  1368. package/src/web/components/database/grid/cell-context-menu.tsx +151 -0
  1369. package/src/web/components/database/grid/cell-data-formats.ts +298 -0
  1370. package/src/web/components/database/grid/cell-data-panel.tsx +662 -0
  1371. package/src/web/components/database/grid/cell-display.ts +52 -0
  1372. package/src/web/components/database/grid/cell-editor.tsx +55 -0
  1373. package/src/web/components/database/grid/cell-menu.ts +210 -0
  1374. package/src/web/components/database/grid/change-marks.ts +51 -0
  1375. package/src/web/components/database/grid/column-filter-cell.ts +34 -0
  1376. package/src/web/components/database/grid/column-menu.ts +51 -0
  1377. package/src/web/components/database/grid/columns-panel.tsx +241 -0
  1378. package/src/web/components/database/grid/columns-sheet.tsx +172 -0
  1379. package/src/web/components/database/grid/copy-as.ts +170 -0
  1380. package/src/web/components/database/grid/dictionary-lookup-dialog.tsx +169 -0
  1381. package/src/web/components/database/grid/fetch-all-dialog.tsx +51 -0
  1382. package/src/web/components/database/grid/filter-chips.tsx +107 -0
  1383. package/src/web/components/database/grid/filter-dialog-frame.tsx +95 -0
  1384. package/src/web/components/database/grid/filter-dialog-host.tsx +43 -0
  1385. package/src/web/components/database/grid/filter-funnel-menu.ts +131 -0
  1386. package/src/web/components/database/grid/filter-multiple-values-dialog.tsx +61 -0
  1387. package/src/web/components/database/grid/filter-row.tsx +216 -0
  1388. package/src/web/components/database/grid/filter-sheet.tsx +227 -0
  1389. package/src/web/components/database/grid/filters-panel.tsx +163 -0
  1390. package/src/web/components/database/grid/fk-cell-button.ts +67 -0
  1391. package/src/web/components/database/grid/fk-cell-editor.tsx +36 -0
  1392. package/src/web/components/database/grid/form-view-model.ts +263 -0
  1393. package/src/web/components/database/grid/form-view.tsx +505 -0
  1394. package/src/web/components/database/grid/generate-sql-dialog.tsx +135 -0
  1395. package/src/web/components/database/grid/generate-sql.ts +101 -0
  1396. package/src/web/components/database/grid/grid-changeset.ts +262 -0
  1397. package/src/web/components/database/grid/grid-filters.ts +172 -0
  1398. package/src/web/components/database/grid/grid-header-overlay.tsx +140 -0
  1399. package/src/web/components/database/grid/grid-save-dialog.tsx +251 -0
  1400. package/src/web/components/database/grid/grid-save-host.tsx +19 -0
  1401. package/src/web/components/database/grid/grid-save-model.ts +64 -0
  1402. package/src/web/components/database/grid/grid-save-store.ts +65 -0
  1403. package/src/web/components/database/grid/grid-status-bar.tsx +54 -0
  1404. package/src/web/components/database/grid/header-bands.ts +232 -0
  1405. package/src/web/components/database/grid/json-document.ts +139 -0
  1406. package/src/web/components/database/grid/json-tree.tsx +74 -0
  1407. package/src/web/components/database/grid/load-more.ts +22 -0
  1408. package/src/web/components/database/grid/master-detail-split.tsx +233 -0
  1409. package/src/web/components/database/grid/pick-table.tsx +109 -0
  1410. package/src/web/components/database/grid/reference-filter.ts +48 -0
  1411. package/src/web/components/database/grid/references-panel.tsx +82 -0
  1412. package/src/web/components/database/grid/references.ts +104 -0
  1413. package/src/web/components/database/grid/refresh-menu.tsx +133 -0
  1414. package/src/web/components/database/grid/row-form-sheet.tsx +234 -0
  1415. package/src/web/components/database/grid/selection-commands.ts +124 -0
  1416. package/src/web/components/database/grid/selection-stats.ts +131 -0
  1417. package/src/web/components/database/grid/set-filter-dialog.tsx +93 -0
  1418. package/src/web/components/database/grid/table-keys.ts +130 -0
  1419. package/src/web/components/database/grid/table-toolbar.tsx +326 -0
  1420. package/src/web/components/database/grid/table-view-state.ts +63 -0
  1421. package/src/web/components/database/grid/text-value-dialog.tsx +80 -0
  1422. package/src/web/components/database/grid/use-cell-long-press.ts +146 -0
  1423. package/src/web/components/database/grid/use-changeset.ts +48 -0
  1424. package/src/web/components/database/grid/use-filter-pickers.ts +76 -0
  1425. package/src/web/components/database/grid/use-grid-copy.ts +99 -0
  1426. package/src/web/components/database/grid/use-opener-focus.ts +17 -0
  1427. package/src/web/components/database/grid/use-pick-search.ts +38 -0
  1428. package/src/web/components/database/grid/use-table-filters.ts +84 -0
  1429. package/src/web/components/database/grid/value-filter-text.ts +96 -0
  1430. package/src/web/components/database/grid/value-lookup-dialog.tsx +91 -0
  1431. package/src/web/components/database/impexp/impexp-columns-dialog.tsx +171 -0
  1432. package/src/web/components/database/impexp/impexp-config.tsx +131 -0
  1433. package/src/web/components/database/impexp/impexp-database-fields.tsx +107 -0
  1434. package/src/web/components/database/impexp/impexp-file-input.tsx +118 -0
  1435. package/src/web/components/database/impexp/impexp-format-options.tsx +127 -0
  1436. package/src/web/components/database/impexp/impexp-map-table.tsx +187 -0
  1437. package/src/web/components/database/impexp/impexp-parts.tsx +77 -0
  1438. package/src/web/components/database/impexp/impexp-side-panes.tsx +191 -0
  1439. package/src/web/components/database/impexp/impexp-state.ts +590 -0
  1440. package/src/web/components/database/impexp/impexp-tab.tsx +222 -0
  1441. package/src/web/components/database/impexp/impexp-tables-select.tsx +169 -0
  1442. package/src/web/components/database/impexp/impexp-upload.ts +52 -0
  1443. package/src/web/components/database/impexp/open-impexp-tab.ts +58 -0
  1444. package/src/web/components/database/impexp/use-impexp-database.ts +75 -0
  1445. package/src/web/components/database/impexp/use-impexp-job.ts +114 -0
  1446. package/src/web/components/database/object-tree/object-menus.ts +141 -0
  1447. package/src/web/components/database/object-tree/object-tree-model.ts +132 -0
  1448. package/src/web/components/database/object-tree/objects-section.tsx +503 -0
  1449. package/src/web/components/database/open-connection-form.ts +21 -0
  1450. package/src/web/components/database/query/discard-result-edits-dialog.tsx +43 -0
  1451. package/src/web/components/database/query/format-sql.ts +67 -0
  1452. package/src/web/components/database/query/history-panel.tsx +177 -0
  1453. package/src/web/components/database/query/messages-panel.tsx +98 -0
  1454. package/src/web/components/database/query/query-file.ts +56 -0
  1455. package/src/web/components/database/query/query-history.ts +56 -0
  1456. package/src/web/components/database/query/query-run-state.ts +282 -0
  1457. package/src/web/components/database/query/query-tab.tsx +397 -0
  1458. package/src/web/components/database/query/query-target-picker.tsx +95 -0
  1459. package/src/web/components/database/query/result-tabs.tsx +104 -0
  1460. package/src/web/components/database/query/result-view.tsx +111 -0
  1461. package/src/web/components/database/query/use-query-file-save.tsx +117 -0
  1462. package/src/web/components/database/query/use-query-runner.ts +202 -0
  1463. package/src/web/components/database/query/use-sql-schema-info.ts +40 -0
  1464. package/src/web/components/database/reformat-cursor.ts +40 -0
  1465. package/src/web/components/database/sidebar-split.tsx +89 -0
  1466. package/src/web/components/database/sql-completion-provider.ts +149 -49
  1467. package/src/web/components/database/sql-object/sql-object-model.ts +39 -0
  1468. package/src/web/components/database/sql-object/sql-object-tab.tsx +138 -0
  1469. package/src/web/components/database/sql-query-editor.tsx +203 -36
  1470. package/src/web/components/database/sql-run.ts +40 -0
  1471. package/src/web/components/database/structure/structure-model.ts +90 -0
  1472. package/src/web/components/database/structure/structure-tab.tsx +326 -0
  1473. package/src/web/components/database/table/table-tab.tsx +694 -0
  1474. package/src/web/components/database/table-editor/column-dialog.tsx +129 -0
  1475. package/src/web/components/database/table-editor/editor-dialog.tsx +122 -0
  1476. package/src/web/components/database/table-editor/foreign-key-dialog.tsx +188 -0
  1477. package/src/web/components/database/table-editor/key-dialog.tsx +197 -0
  1478. package/src/web/components/database/table-editor/rename-object-dialog.tsx +45 -0
  1479. package/src/web/components/database/table-editor/structure-save-dialog.tsx +167 -0
  1480. package/src/web/components/database/table-editor/structure-save-host.tsx +24 -0
  1481. package/src/web/components/database/table-editor/structure-save-model.ts +91 -0
  1482. package/src/web/components/database/table-editor/structure-save-store.ts +52 -0
  1483. package/src/web/components/database/table-editor/table-editor-commands.ts +27 -0
  1484. package/src/web/components/database/table-editor/table-editor-dialogs.tsx +32 -0
  1485. package/src/web/components/database/table-editor/table-editor-model.ts +252 -0
  1486. package/src/web/components/database/table-editor/table-editor.tsx +485 -0
  1487. package/src/web/components/database/table-editor/use-table-editor-tab.ts +145 -0
  1488. package/src/web/components/database/use-connections.ts +39 -85
  1489. package/src/web/components/database/use-database.ts +419 -214
  1490. package/src/web/components/database/use-db-read.ts +88 -0
  1491. package/src/web/components/database/use-db-tab.ts +68 -0
  1492. package/src/web/components/database/use-glide-cell-content.ts +81 -88
  1493. package/src/web/components/database/use-glide-columns.ts +16 -32
  1494. package/src/web/components/database/use-glide-grid-actions.ts +44 -99
  1495. package/src/web/components/database/use-glide-selection.ts +6 -18
  1496. package/src/web/components/design/design-skill-suggestion.tsx +46 -11
  1497. package/src/web/components/editor/code-editor.tsx +81 -47
  1498. package/src/web/components/editor/conflict-editor.tsx +4 -1
  1499. package/src/web/components/editor/diff-viewer.tsx +40 -4
  1500. package/src/web/components/editor/editor-fix-with-ai.tsx +111 -0
  1501. package/src/web/components/editor/editor-selection-context.tsx +70 -0
  1502. package/src/web/components/editor/html-preview.tsx +48 -9
  1503. package/src/web/components/editor/lsp-status.tsx +18 -4
  1504. package/src/web/components/editor/video-player/video-player-controls.tsx +19 -3
  1505. package/src/web/components/editor/video-player/video-player.tsx +67 -14
  1506. package/src/web/components/extensions/extension-webview.tsx +44 -9
  1507. package/src/web/components/extensions/webview-external-link.ts +29 -0
  1508. package/src/web/components/extensions/webview-file-icons.ts +87 -0
  1509. package/src/web/components/extensions/webview-theme.ts +12 -0
  1510. package/src/web/components/floating-window/window-content-registry.ts +2 -0
  1511. package/src/web/components/floating-window/window-geometry.ts +3 -3
  1512. package/src/web/components/floating-window/window-store-types.ts +1 -1
  1513. package/src/web/components/git/git-branch-row.tsx +138 -0
  1514. package/src/web/components/git/git-change-parts.tsx +142 -0
  1515. package/src/web/components/git/git-change-row.tsx +218 -0
  1516. package/src/web/components/git/git-change-tree.tsx +190 -0
  1517. package/src/web/components/git/git-commit-composer.tsx +126 -0
  1518. package/src/web/components/git/git-confirm.tsx +84 -0
  1519. package/src/web/components/git/git-operation-banner.tsx +48 -0
  1520. package/src/web/components/git/git-stash-section.tsx +128 -0
  1521. package/src/web/components/git/git-status-panel.tsx +588 -1043
  1522. package/src/web/components/git/git-worktree-panel.tsx +7 -7
  1523. package/src/web/components/git-review/git-review-block.tsx +356 -0
  1524. package/src/web/components/git-review/git-review-desktop.tsx +355 -0
  1525. package/src/web/components/git-review/git-review-parts.tsx +238 -0
  1526. package/src/web/components/git-review/git-review-phone.tsx +230 -0
  1527. package/src/web/components/git-review/git-review-tab.tsx +123 -0
  1528. package/src/web/components/layout/cloud-share-named-tunnel-row.tsx +2 -2
  1529. package/src/web/components/layout/command-palette-db-commands.ts +56 -0
  1530. package/src/web/components/layout/command-palette.tsx +41 -16
  1531. package/src/web/components/layout/draggable-tab.tsx +7 -0
  1532. package/src/web/components/layout/mobile-drawer.tsx +27 -14
  1533. package/src/web/components/layout/mobile-nav.tsx +4 -3
  1534. package/src/web/components/layout/mobile-tab-switcher-sheet.tsx +8 -1
  1535. package/src/web/components/layout/nav-section-rail.tsx +22 -6
  1536. package/src/web/components/layout/sidebar.tsx +2 -2
  1537. package/src/web/components/layout/status-bar.tsx +3 -0
  1538. package/src/web/components/layout/tab-bar.tsx +5 -8
  1539. package/src/web/components/layout/tab-close-confirm-dialog.tsx +62 -0
  1540. package/src/web/components/layout/tab-content.tsx +47 -7
  1541. package/src/web/components/layout/tab-pool.tsx +10 -2
  1542. package/src/web/components/layout/upgrade-button.tsx +3 -2
  1543. package/src/web/components/logs/logs-actions.ts +84 -0
  1544. package/src/web/components/logs/logs-app.tsx +265 -0
  1545. package/src/web/components/logs/logs-client.ts +31 -0
  1546. package/src/web/components/logs/logs-issues-pane.tsx +214 -0
  1547. package/src/web/components/logs/logs-pane.tsx +683 -0
  1548. package/src/web/components/logs/logs-phone-pane.tsx +365 -0
  1549. package/src/web/components/logs/logs-report-pane.tsx +440 -0
  1550. package/src/web/components/logs/logs-report-store.ts +153 -0
  1551. package/src/web/components/logs/logs-state.ts +93 -0
  1552. package/src/web/components/logs/logs-tab.tsx +4 -0
  1553. package/src/web/components/logs/logs-ui.tsx +104 -0
  1554. package/src/web/components/logs/logs-window-content.tsx +13 -0
  1555. package/src/web/components/logs/logs.css +440 -0
  1556. package/src/web/components/logs/open-logs.ts +65 -0
  1557. package/src/web/components/logs/use-follow-list.ts +90 -0
  1558. package/src/web/components/logs/use-logs-badge.ts +57 -0
  1559. package/src/web/components/logs/use-logs-feed.ts +251 -0
  1560. package/src/web/components/logs/use-logs-issues.ts +61 -0
  1561. package/src/web/components/onboarding/onboarding-quick-orientation.tsx +4 -4
  1562. package/src/web/components/os-explorer/views/inline-name-input.tsx +13 -4
  1563. package/src/web/components/remote-desktop/ffmpeg-install-button.tsx +59 -0
  1564. package/src/web/components/remote-desktop/remote-desktop-readiness-gate.tsx +2 -0
  1565. package/src/web/components/remote-desktop/use-remote-desktop-readiness.ts +1 -0
  1566. package/src/web/components/session-review/review-code.tsx +507 -0
  1567. package/src/web/components/session-review/review-desktop.tsx +256 -0
  1568. package/src/web/components/session-review/review-parts.tsx +267 -0
  1569. package/src/web/components/session-review/review-phone.tsx +206 -0
  1570. package/src/web/components/session-review/review-tokens.tsx +70 -0
  1571. package/src/web/components/session-review/review-view.tsx +158 -0
  1572. package/src/web/components/session-review/session-review-tab.tsx +71 -0
  1573. package/src/web/components/settings/ai-settings-section.tsx +20 -0
  1574. package/src/web/components/settings/database-drivers-section.tsx +251 -0
  1575. package/src/web/components/settings/design-settings-section.tsx +52 -3
  1576. package/src/web/components/settings/language-servers-section.tsx +8 -2
  1577. package/src/web/components/settings/notifications-settings-section.tsx +463 -24
  1578. package/src/web/components/settings/ntfy-server-form.tsx +192 -0
  1579. package/src/web/components/settings/open-settings.ts +11 -9
  1580. package/src/web/components/settings/ppmbot-settings-section.tsx +6 -214
  1581. package/src/web/components/settings/ppmbot-telegram-section.tsx +139 -0
  1582. package/src/web/components/settings/remote-access/public-link-pane.tsx +282 -0
  1583. package/src/web/components/settings/remote-access/remote-access-settings-section.tsx +49 -0
  1584. package/src/web/components/settings/remote-access/remote-access-tab-store.ts +24 -0
  1585. package/src/web/components/settings/run-in-terminal-button.tsx +32 -0
  1586. package/src/web/components/settings/settings-body.tsx +14 -2
  1587. package/src/web/components/settings/settings-categories.ts +14 -1
  1588. package/src/web/components/settings/settings-rows.tsx +61 -0
  1589. package/src/web/components/settings/settings-section-content.tsx +2 -0
  1590. package/src/web/components/settings/tailscale/tailscale-settings-section.tsx +410 -0
  1591. package/src/web/components/settings/tailscale/tailscale-setup-steps.tsx +248 -0
  1592. package/src/web/components/settings/tailscale/tailscale-sign-in-dialog.tsx +98 -0
  1593. package/src/web/components/settings/tailscale/tailscale-ui.tsx +81 -0
  1594. package/src/web/components/settings/telegram-bot-token-field.tsx +129 -0
  1595. package/src/web/components/settings/telegram-connect.tsx +147 -0
  1596. package/src/web/components/settings/voice-settings-section.tsx +28 -3
  1597. package/src/web/components/sqlite/sqlite-viewer.tsx +92 -134
  1598. package/src/web/components/system/apps/app-rows.ts +19 -3
  1599. package/src/web/components/system/apps/apps-panel.tsx +3 -1
  1600. package/src/web/components/system/services/service-action-confirm.tsx +20 -1
  1601. package/src/web/components/system/services/service-details-sheet.tsx +14 -4
  1602. package/src/web/components/system/services/service-details-text.ts +5 -0
  1603. package/src/web/components/system/services/services-panel.tsx +7 -5
  1604. package/src/web/components/terminal/terminal-selection-chat.tsx +178 -0
  1605. package/src/web/components/terminal/terminal-tab.tsx +10 -6
  1606. package/src/web/components/tunnels/named-tunnel/named-tunnel-copy.ts +1 -20
  1607. package/src/web/components/tunnels/named-tunnel/named-tunnel-setup-content.tsx +1 -1
  1608. package/src/web/components/tunnels/named-tunnel/named-tunnel-setup-popup.tsx +2 -2
  1609. package/src/web/components/tunnels/named-tunnel/use-named-tunnel-setup.ts +1 -1
  1610. package/src/web/components/tunnels/open-port-forwarding.ts +17 -0
  1611. package/src/web/components/tunnels/port-forwarding-panel.tsx +370 -0
  1612. package/src/web/components/ui/adaptive-context-menu.tsx +32 -3
  1613. package/src/web/components/ui/sidebar-header.tsx +1 -1
  1614. package/src/web/components/web-preview/open-web-preview-tab.ts +14 -0
  1615. package/src/web/components/web-preview/web-preview-tab.tsx +92 -0
  1616. package/src/web/hooks/use-at-most-wide.ts +20 -0
  1617. package/src/web/hooks/use-chat.ts +214 -11
  1618. package/src/web/hooks/use-commit-draft.ts +59 -0
  1619. package/src/web/hooks/use-db-driver-installed.ts +16 -0
  1620. package/src/web/hooks/use-draft.ts +25 -15
  1621. package/src/web/hooks/use-extension-ws.ts +15 -1
  1622. package/src/web/hooks/use-git-changes.ts +114 -0
  1623. package/src/web/hooks/use-git-review.ts +617 -0
  1624. package/src/web/hooks/use-global-events.ts +5 -0
  1625. package/src/web/hooks/use-lsp.ts +4 -2
  1626. package/src/web/hooks/use-notification-clicks.ts +43 -0
  1627. package/src/web/hooks/use-session-file-changes.ts +100 -0
  1628. package/src/web/hooks/use-session-review.ts +554 -0
  1629. package/src/web/hooks/use-session-turns.ts +65 -0
  1630. package/src/web/hooks/use-terminal.ts +19 -5
  1631. package/src/web/hooks/use-turn-review.ts +204 -0
  1632. package/src/web/hooks/use-url-sync.ts +15 -12
  1633. package/src/web/lib/aggregate-turn-file-changes.ts +127 -35
  1634. package/src/web/lib/ai-tab-placement.ts +102 -0
  1635. package/src/web/lib/api-client.ts +113 -47
  1636. package/src/web/lib/api-settings.ts +1 -0
  1637. package/src/web/lib/api-tailscale.ts +12 -0
  1638. package/src/web/lib/api-tunnels.ts +13 -1
  1639. package/src/web/lib/code-fence.ts +7 -0
  1640. package/src/web/lib/db-drivers.ts +41 -0
  1641. package/src/web/lib/db-table-edit.ts +94 -0
  1642. package/src/web/lib/db-tabs.ts +273 -0
  1643. package/src/web/lib/design/api-design-settings.ts +11 -0
  1644. package/src/web/lib/file-icon-name.ts +6 -0
  1645. package/src/web/lib/file-icons.generated.ts +10 -1
  1646. package/src/web/lib/file-icons.tsx +34 -6
  1647. package/src/web/lib/git-changes-view.ts +292 -0
  1648. package/src/web/lib/git-file-tree.ts +8 -8
  1649. package/src/web/lib/git-review-model.ts +496 -0
  1650. package/src/web/lib/html-preview-loads.ts +87 -0
  1651. package/src/web/lib/icons.generated.tsx +41 -1
  1652. package/src/web/lib/logs/logs-report.ts +128 -0
  1653. package/src/web/lib/logs/logs-view-model.ts +201 -0
  1654. package/src/web/lib/lsp/lsp-client.ts +1 -1
  1655. package/src/web/lib/lsp/lsp-documents.ts +8 -0
  1656. package/src/web/lib/lsp/register-providers.ts +5 -1
  1657. package/src/web/lib/monaco-lightbulb-gutter.ts +32 -0
  1658. package/src/web/lib/open-ai-tab.ts +160 -0
  1659. package/src/web/lib/open-git-review.ts +24 -0
  1660. package/src/web/lib/read-ndjson.ts +35 -0
  1661. package/src/web/lib/running-agent-rows.ts +14 -16
  1662. package/src/web/lib/send-to-chat.ts +55 -9
  1663. package/src/web/lib/session-file-changes-client.ts +148 -0
  1664. package/src/web/lib/session-file-changes.ts +69 -0
  1665. package/src/web/lib/session-review-model.ts +379 -0
  1666. package/src/web/lib/session-turns.ts +123 -0
  1667. package/src/web/lib/sidebar-tabs/tab-registry.ts +1 -1
  1668. package/src/web/lib/tab-tool-call.ts +69 -0
  1669. package/src/web/lib/tab-type-icons.ts +12 -3
  1670. package/src/web/lib/turn-review.ts +102 -0
  1671. package/src/web/lib/web-preview-url.ts +31 -0
  1672. package/src/web/lib/web-push-client.ts +91 -0
  1673. package/src/web/lib/web-push-support.ts +88 -0
  1674. package/src/web/stores/chat-jump-store.ts +31 -0
  1675. package/src/web/stores/commit-draft-store.ts +119 -0
  1676. package/src/web/stores/db-rows-status-store.ts +31 -0
  1677. package/src/web/stores/git-status-store.ts +21 -2
  1678. package/src/web/stores/panel-store.ts +34 -0
  1679. package/src/web/stores/panel-utils.ts +69 -8
  1680. package/src/web/stores/session-turns-store.ts +40 -0
  1681. package/src/web/stores/settings-store.ts +72 -42
  1682. package/src/web/stores/tab-close-confirm-store.ts +59 -0
  1683. package/src/web/stores/tab-store.ts +10 -2
  1684. package/src/web/stores/unsaved-grid-rows-store.ts +42 -0
  1685. package/src/web/stores/window-panel-persistence.ts +23 -10
  1686. package/src/web/styles/file-icons.generated.css +6 -0
  1687. package/src/web/styles/globals.css +54 -0
  1688. package/src/web/sw-notification-click.ts +51 -0
  1689. package/src/web/sw.ts +35 -0
  1690. package/src/web/theme/adapters/shiki-adapter.ts +55 -1
  1691. package/templates/skill/SKILL.md.tmpl +4 -3
  1692. package/templates/skill/common-tasks.md +8 -4
  1693. package/vite.config.ts +3 -0
  1694. package/dist/web/assets/_basePickBy-BEVUuplK.js +0 -1
  1695. package/dist/web/assets/_basePickBy-BEVUuplK.js.br +0 -0
  1696. package/dist/web/assets/_basePickBy-BEVUuplK.js.gz +0 -0
  1697. package/dist/web/assets/_baseUniq-qb_BgEfK.js +0 -1
  1698. package/dist/web/assets/_baseUniq-qb_BgEfK.js.br +0 -0
  1699. package/dist/web/assets/_baseUniq-qb_BgEfK.js.gz +0 -0
  1700. package/dist/web/assets/accounts-settings-section-CGe5ikvs.js +0 -1
  1701. package/dist/web/assets/accounts-settings-section-CGe5ikvs.js.br +0 -0
  1702. package/dist/web/assets/accounts-settings-section-CGe5ikvs.js.gz +0 -0
  1703. package/dist/web/assets/agent-session-sheet-store-_OeezCXB.js +0 -1
  1704. package/dist/web/assets/agent-session-sheet-vBhfHYrC.js +0 -2
  1705. package/dist/web/assets/agent-session-sheet-vBhfHYrC.js.br +0 -0
  1706. package/dist/web/assets/agent-session-sheet-vBhfHYrC.js.gz +0 -0
  1707. package/dist/web/assets/agent-session-window-content-BxIxDN5i.js +0 -1
  1708. package/dist/web/assets/agent-session-window-content-BxIxDN5i.js.br +0 -0
  1709. package/dist/web/assets/agent-session-window-content-BxIxDN5i.js.gz +0 -0
  1710. package/dist/web/assets/ai-resource-editor-Y8clBPRv.js +0 -1
  1711. package/dist/web/assets/ai-resource-editor-Y8clBPRv.js.br +0 -0
  1712. package/dist/web/assets/ai-resource-editor-Y8clBPRv.js.gz +0 -0
  1713. package/dist/web/assets/ai-settings-section-BB8vscte.js +0 -1
  1714. package/dist/web/assets/ai-settings-section-Ck8uN_Bw.js +0 -1
  1715. package/dist/web/assets/ai-settings-section-Ck8uN_Bw.js.br +0 -0
  1716. package/dist/web/assets/ai-settings-section-Ck8uN_Bw.js.gz +0 -0
  1717. package/dist/web/assets/android-tab-BIOUVVoW.js +0 -2
  1718. package/dist/web/assets/android-tab-BIOUVVoW.js.br +0 -0
  1719. package/dist/web/assets/android-tab-BIOUVVoW.js.gz +0 -0
  1720. package/dist/web/assets/angular-html-Djm1KT_p.js +0 -1
  1721. package/dist/web/assets/angular-html-Djm1KT_p.js.br +0 -0
  1722. package/dist/web/assets/angular-html-Djm1KT_p.js.gz +0 -0
  1723. package/dist/web/assets/angular-ts-D8ZYU4i0.js +0 -1
  1724. package/dist/web/assets/angular-ts-D8ZYU4i0.js.br +0 -0
  1725. package/dist/web/assets/angular-ts-D8ZYU4i0.js.gz +0 -0
  1726. package/dist/web/assets/api-client-CbrcysYC.js +0 -1
  1727. package/dist/web/assets/api-client-F5Zi1sR0.js +0 -1
  1728. package/dist/web/assets/api-client-F5Zi1sR0.js.br +0 -0
  1729. package/dist/web/assets/api-client-F5Zi1sR0.js.gz +0 -0
  1730. package/dist/web/assets/api-settings-Cc_CpfmC.js +0 -1
  1731. package/dist/web/assets/api-settings-Cc_CpfmC.js.br +0 -0
  1732. package/dist/web/assets/api-settings-Cc_CpfmC.js.gz +0 -0
  1733. package/dist/web/assets/api-settings-D1axn9vm.js +0 -1
  1734. package/dist/web/assets/api-themes-BtMBSjuM.js +0 -1
  1735. package/dist/web/assets/apl-Bxk9ez2r.js +0 -1
  1736. package/dist/web/assets/apl-Bxk9ez2r.js.br +0 -0
  1737. package/dist/web/assets/apl-Bxk9ez2r.js.gz +0 -0
  1738. package/dist/web/assets/appearance-settings-section-Bv5_n9lH.js +0 -1
  1739. package/dist/web/assets/appearance-settings-section-Bv5_n9lH.js.br +0 -0
  1740. package/dist/web/assets/appearance-settings-section-Bv5_n9lH.js.gz +0 -0
  1741. package/dist/web/assets/apps-panel-DXHF0QEv.js +0 -1
  1742. package/dist/web/assets/apps-panel-DXHF0QEv.js.br +0 -0
  1743. package/dist/web/assets/apps-panel-DXHF0QEv.js.gz +0 -0
  1744. package/dist/web/assets/arc-CrBOnruw.js +0 -1
  1745. package/dist/web/assets/arc-CrBOnruw.js.br +0 -0
  1746. package/dist/web/assets/arc-CrBOnruw.js.gz +0 -0
  1747. package/dist/web/assets/architecture-PBZL5I3N-bv6Z6ZTl.js +0 -1
  1748. package/dist/web/assets/architectureDiagram-2XIMDMQ5-sFj2GCA0.js +0 -36
  1749. package/dist/web/assets/architectureDiagram-2XIMDMQ5-sFj2GCA0.js.br +0 -0
  1750. package/dist/web/assets/architectureDiagram-2XIMDMQ5-sFj2GCA0.js.gz +0 -0
  1751. package/dist/web/assets/astro-CCE8GTuJ.js +0 -1
  1752. package/dist/web/assets/astro-CCE8GTuJ.js.br +0 -0
  1753. package/dist/web/assets/astro-CCE8GTuJ.js.gz +0 -0
  1754. package/dist/web/assets/audio-preview-DpjOKEm4.js +0 -1
  1755. package/dist/web/assets/audio-preview-DpjOKEm4.js.br +0 -0
  1756. package/dist/web/assets/audio-preview-DpjOKEm4.js.gz +0 -0
  1757. package/dist/web/assets/blade-pJLFJ0pe.js +0 -1
  1758. package/dist/web/assets/blade-pJLFJ0pe.js.br +0 -0
  1759. package/dist/web/assets/blade-pJLFJ0pe.js.gz +0 -0
  1760. package/dist/web/assets/blockDiagram-WCTKOSBZ-DFag_MHk.js +0 -132
  1761. package/dist/web/assets/blockDiagram-WCTKOSBZ-DFag_MHk.js.br +0 -0
  1762. package/dist/web/assets/blockDiagram-WCTKOSBZ-DFag_MHk.js.gz +0 -0
  1763. package/dist/web/assets/branch-review-tab-4dgMNadQ.js +0 -1
  1764. package/dist/web/assets/branch-review-tab-4dgMNadQ.js.br +0 -0
  1765. package/dist/web/assets/branch-review-tab-4dgMNadQ.js.gz +0 -0
  1766. package/dist/web/assets/bsl-DJPQP6gj.js +0 -1
  1767. package/dist/web/assets/bsl-DJPQP6gj.js.br +0 -0
  1768. package/dist/web/assets/bsl-DJPQP6gj.js.gz +0 -0
  1769. package/dist/web/assets/button-DeAyLH9U.js +0 -1
  1770. package/dist/web/assets/button-DeAyLH9U.js.br +0 -0
  1771. package/dist/web/assets/button-DeAyLH9U.js.gz +0 -0
  1772. package/dist/web/assets/c4Diagram-IC4MRINW-Bs9OCCbR.js +0 -10
  1773. package/dist/web/assets/c4Diagram-IC4MRINW-Bs9OCCbR.js.br +0 -0
  1774. package/dist/web/assets/c4Diagram-IC4MRINW-Bs9OCCbR.js.gz +0 -0
  1775. package/dist/web/assets/cairo-6pdze4qN.js +0 -1
  1776. package/dist/web/assets/cairo-6pdze4qN.js.br +0 -0
  1777. package/dist/web/assets/cairo-6pdze4qN.js.gz +0 -0
  1778. package/dist/web/assets/channel-C97aABFT.js +0 -1
  1779. package/dist/web/assets/chat-preparation-cache-BUCR58h4.js +0 -1
  1780. package/dist/web/assets/chat-preparation-cache-BUCR58h4.js.br +0 -0
  1781. package/dist/web/assets/chat-preparation-cache-BUCR58h4.js.gz +0 -0
  1782. package/dist/web/assets/chat-tab-Bbe_77oJ.js +0 -15
  1783. package/dist/web/assets/chat-tab-Bbe_77oJ.js.br +0 -0
  1784. package/dist/web/assets/chat-tab-Bbe_77oJ.js.gz +0 -0
  1785. package/dist/web/assets/chat-tab-D3i5O3dO.js +0 -1
  1786. package/dist/web/assets/chat-tab-D3i5O3dO.js.br +0 -0
  1787. package/dist/web/assets/chat-tab-D3i5O3dO.js.gz +0 -0
  1788. package/dist/web/assets/chunk-4BX2VUAB-Dd8hGWzs.js +0 -1
  1789. package/dist/web/assets/chunk-55IACEB6-BUOmRdCb.js +0 -1
  1790. package/dist/web/assets/chunk-7E7YKBS2-D5i9aZ57.js +0 -1
  1791. package/dist/web/assets/chunk-7R4GIKGN-DBr9s6EE.js +0 -80
  1792. package/dist/web/assets/chunk-7R4GIKGN-DBr9s6EE.js.br +0 -0
  1793. package/dist/web/assets/chunk-7R4GIKGN-DBr9s6EE.js.gz +0 -0
  1794. package/dist/web/assets/chunk-C72U2L5F-CEUvONYx.js +0 -1
  1795. package/dist/web/assets/chunk-EGIJ26TM-BG89sF-p.js +0 -1
  1796. package/dist/web/assets/chunk-FMBD7UC4-BDtpoO-Q.js +0 -15
  1797. package/dist/web/assets/chunk-GEFDOKGD-lFQnV7FQ.js +0 -2
  1798. package/dist/web/assets/chunk-GEFDOKGD-lFQnV7FQ.js.br +0 -0
  1799. package/dist/web/assets/chunk-GEFDOKGD-lFQnV7FQ.js.gz +0 -0
  1800. package/dist/web/assets/chunk-GLR3WWYH-CBQYONd8.js +0 -2
  1801. package/dist/web/assets/chunk-GLR3WWYH-CBQYONd8.js.br +0 -0
  1802. package/dist/web/assets/chunk-GLR3WWYH-CBQYONd8.js.gz +0 -0
  1803. package/dist/web/assets/chunk-HHEYEP7N-Cz5o2sXg.js +0 -1
  1804. package/dist/web/assets/chunk-JSJVCQXG-FBF1o1AC.js +0 -1
  1805. package/dist/web/assets/chunk-JSJVCQXG-FBF1o1AC.js.br +0 -0
  1806. package/dist/web/assets/chunk-JSJVCQXG-FBF1o1AC.js.gz +0 -0
  1807. package/dist/web/assets/chunk-KX2RTZJC-Dfwu46M7.js +0 -1
  1808. package/dist/web/assets/chunk-KYZI473N-DQTRCz9g.js +0 -53
  1809. package/dist/web/assets/chunk-KYZI473N-DQTRCz9g.js.br +0 -0
  1810. package/dist/web/assets/chunk-KYZI473N-DQTRCz9g.js.gz +0 -0
  1811. package/dist/web/assets/chunk-L3YUKLVL-DytBx0nd.js +0 -1
  1812. package/dist/web/assets/chunk-MX3YWQON-Da7GPDei.js +0 -1
  1813. package/dist/web/assets/chunk-MX3YWQON-Da7GPDei.js.br +0 -0
  1814. package/dist/web/assets/chunk-MX3YWQON-Da7GPDei.js.gz +0 -0
  1815. package/dist/web/assets/chunk-NQ4KR5QH-D9-qngPN.js +0 -220
  1816. package/dist/web/assets/chunk-NQ4KR5QH-D9-qngPN.js.br +0 -0
  1817. package/dist/web/assets/chunk-NQ4KR5QH-D9-qngPN.js.gz +0 -0
  1818. package/dist/web/assets/chunk-O4XLMI2P-BFAbMP-p.js +0 -7
  1819. package/dist/web/assets/chunk-O4XLMI2P-BFAbMP-p.js.br +0 -0
  1820. package/dist/web/assets/chunk-O4XLMI2P-BFAbMP-p.js.gz +0 -0
  1821. package/dist/web/assets/chunk-OZEHJAEY-DM7Vtv5V.js +0 -1
  1822. package/dist/web/assets/chunk-OZEHJAEY-DM7Vtv5V.js.br +0 -0
  1823. package/dist/web/assets/chunk-OZEHJAEY-DM7Vtv5V.js.gz +0 -0
  1824. package/dist/web/assets/chunk-PQ6SQG4A-CfSY-HG3.js +0 -1
  1825. package/dist/web/assets/chunk-PQ6SQG4A-CfSY-HG3.js.br +0 -0
  1826. package/dist/web/assets/chunk-PQ6SQG4A-CfSY-HG3.js.gz +0 -0
  1827. package/dist/web/assets/chunk-PU5JKC2W-BFI9jx5F.js +0 -11
  1828. package/dist/web/assets/chunk-PU5JKC2W-BFI9jx5F.js.br +0 -0
  1829. package/dist/web/assets/chunk-PU5JKC2W-BFI9jx5F.js.gz +0 -0
  1830. package/dist/web/assets/chunk-QZHKN3VN-_jIwYKZ3.js +0 -1
  1831. package/dist/web/assets/chunk-R5LLSJPH-CZY_f--s.js +0 -1
  1832. package/dist/web/assets/chunk-WL4C6EOR-BUFIzsiK.js +0 -189
  1833. package/dist/web/assets/chunk-WL4C6EOR-BUFIzsiK.js.br +0 -0
  1834. package/dist/web/assets/chunk-WL4C6EOR-BUFIzsiK.js.gz +0 -0
  1835. package/dist/web/assets/chunk-XIRO2GV7-BxPFOPRI.js +0 -1
  1836. package/dist/web/assets/chunk-XPW4576I-DfOF_qdG.js +0 -32
  1837. package/dist/web/assets/chunk-XPW4576I-DfOF_qdG.js.br +0 -0
  1838. package/dist/web/assets/chunk-XPW4576I-DfOF_qdG.js.gz +0 -0
  1839. package/dist/web/assets/chunk-XZSTWKYB-BNlQ8dIW.js +0 -94
  1840. package/dist/web/assets/chunk-XZSTWKYB-BNlQ8dIW.js.br +0 -0
  1841. package/dist/web/assets/chunk-XZSTWKYB-BNlQ8dIW.js.gz +0 -0
  1842. package/dist/web/assets/chunk-YBOYWFTD-0Is1vHmh.js +0 -1
  1843. package/dist/web/assets/classDiagram-VBA2DB6C-HwLNQY_4.js +0 -1
  1844. package/dist/web/assets/classDiagram-v2-RAHNMMFH-CLUQCcjH.js +0 -1
  1845. package/dist/web/assets/clone-B5kRZECd.js +0 -1
  1846. package/dist/web/assets/cobol-6JrtZ3xT.js +0 -1
  1847. package/dist/web/assets/cobol-6JrtZ3xT.js.br +0 -0
  1848. package/dist/web/assets/cobol-6JrtZ3xT.js.gz +0 -0
  1849. package/dist/web/assets/code-editor-DXsIWoQ1.js +0 -7
  1850. package/dist/web/assets/code-editor-DXsIWoQ1.js.br +0 -0
  1851. package/dist/web/assets/code-editor-DXsIWoQ1.js.gz +0 -0
  1852. package/dist/web/assets/codex-reset-credit-button-DRhievFQ.js +0 -1
  1853. package/dist/web/assets/codex-reset-credit-button-DRhievFQ.js.br +0 -0
  1854. package/dist/web/assets/codex-reset-credit-button-DRhievFQ.js.gz +0 -0
  1855. package/dist/web/assets/coffee-eR0Qd-vR.js +0 -1
  1856. package/dist/web/assets/coffee-eR0Qd-vR.js.br +0 -0
  1857. package/dist/web/assets/coffee-eR0Qd-vR.js.gz +0 -0
  1858. package/dist/web/assets/conflict-editor-D_RImo_V.js +0 -19
  1859. package/dist/web/assets/conflict-editor-D_RImo_V.js.br +0 -0
  1860. package/dist/web/assets/conflict-editor-D_RImo_V.js.gz +0 -0
  1861. package/dist/web/assets/context-menu-7OX80HDB.js +0 -1
  1862. package/dist/web/assets/context-menu-7OX80HDB.js.br +0 -0
  1863. package/dist/web/assets/context-menu-7OX80HDB.js.gz +0 -0
  1864. package/dist/web/assets/cose-bilkent-S5V4N54A-CAPPRjYz.js +0 -1
  1865. package/dist/web/assets/cose-bilkent-S5V4N54A-CAPPRjYz.js.br +0 -0
  1866. package/dist/web/assets/cose-bilkent-S5V4N54A-CAPPRjYz.js.gz +0 -0
  1867. package/dist/web/assets/cpp-Bp_Laxmd.js +0 -1
  1868. package/dist/web/assets/cpp-Bp_Laxmd.js.br +0 -0
  1869. package/dist/web/assets/cpp-Bp_Laxmd.js.gz +0 -0
  1870. package/dist/web/assets/crystal-bc0lS6i8.js +0 -1
  1871. package/dist/web/assets/crystal-bc0lS6i8.js.br +0 -0
  1872. package/dist/web/assets/crystal-bc0lS6i8.js.gz +0 -0
  1873. package/dist/web/assets/csv-parser-CoxPdyLw.js +0 -6
  1874. package/dist/web/assets/csv-parser-CoxPdyLw.js.br +0 -0
  1875. package/dist/web/assets/csv-parser-CoxPdyLw.js.gz +0 -0
  1876. package/dist/web/assets/csv-preview-BuFdfLo3.js +0 -2
  1877. package/dist/web/assets/csv-preview-BuFdfLo3.js.br +0 -0
  1878. package/dist/web/assets/csv-preview-BuFdfLo3.js.gz +0 -0
  1879. package/dist/web/assets/dagre-D__SE4Ki.js +0 -1
  1880. package/dist/web/assets/dagre-D__SE4Ki.js.br +0 -0
  1881. package/dist/web/assets/dagre-D__SE4Ki.js.gz +0 -0
  1882. package/dist/web/assets/dagre-KLK3FWXG-By-0HuN_.js +0 -4
  1883. package/dist/web/assets/dagre-KLK3FWXG-By-0HuN_.js.br +0 -0
  1884. package/dist/web/assets/dagre-KLK3FWXG-By-0HuN_.js.gz +0 -0
  1885. package/dist/web/assets/data-grid-overlay-editor-CeZoduke.js +0 -1
  1886. package/dist/web/assets/data-grid-overlay-editor-CeZoduke.js.br +0 -0
  1887. package/dist/web/assets/data-grid-overlay-editor-CeZoduke.js.gz +0 -0
  1888. package/dist/web/assets/data-grid-types-CHD9-pon.js +0 -1
  1889. package/dist/web/assets/data-grid-types-CHD9-pon.js.br +0 -0
  1890. package/dist/web/assets/data-grid-types-CHD9-pon.js.gz +0 -0
  1891. package/dist/web/assets/database-viewer-ChcbYn9E.js +0 -1
  1892. package/dist/web/assets/database-viewer-ChcbYn9E.js.br +0 -0
  1893. package/dist/web/assets/database-viewer-ChcbYn9E.js.gz +0 -0
  1894. package/dist/web/assets/design-export-client-BfdZB7xK.js +0 -1
  1895. package/dist/web/assets/design-export-client-BfdZB7xK.js.br +0 -0
  1896. package/dist/web/assets/design-export-client-BfdZB7xK.js.gz +0 -0
  1897. package/dist/web/assets/design-responsive-dialog-BiYy3ibS.js +0 -1
  1898. package/dist/web/assets/design-responsive-dialog-BiYy3ibS.js.br +0 -0
  1899. package/dist/web/assets/design-responsive-dialog-BiYy3ibS.js.gz +0 -0
  1900. package/dist/web/assets/design-settings-section-B_xOf51h.js +0 -2
  1901. package/dist/web/assets/design-settings-section-B_xOf51h.js.br +0 -0
  1902. package/dist/web/assets/design-settings-section-B_xOf51h.js.gz +0 -0
  1903. package/dist/web/assets/design-skill-suggestion-BbEDg15Z.js +0 -3
  1904. package/dist/web/assets/design-skill-suggestion-BbEDg15Z.js.br +0 -0
  1905. package/dist/web/assets/design-skill-suggestion-BbEDg15Z.js.gz +0 -0
  1906. package/dist/web/assets/design-tab-BQSYJ4cS.js +0 -57
  1907. package/dist/web/assets/design-tab-BQSYJ4cS.js.br +0 -0
  1908. package/dist/web/assets/design-tab-BQSYJ4cS.js.gz +0 -0
  1909. package/dist/web/assets/designs-sidebar-panel-AiPaYfSU.js +0 -1
  1910. package/dist/web/assets/designs-sidebar-panel-AiPaYfSU.js.br +0 -0
  1911. package/dist/web/assets/designs-sidebar-panel-AiPaYfSU.js.gz +0 -0
  1912. package/dist/web/assets/diagram-E7M64L7V-w1uoD2zJ.js +0 -24
  1913. package/dist/web/assets/diagram-E7M64L7V-w1uoD2zJ.js.br +0 -0
  1914. package/dist/web/assets/diagram-E7M64L7V-w1uoD2zJ.js.gz +0 -0
  1915. package/dist/web/assets/diagram-IFDJBPK2-DIZ1Hm8C.js +0 -43
  1916. package/dist/web/assets/diagram-IFDJBPK2-DIZ1Hm8C.js.br +0 -0
  1917. package/dist/web/assets/diagram-IFDJBPK2-DIZ1Hm8C.js.gz +0 -0
  1918. package/dist/web/assets/diagram-P4PSJMXO-DJg8_uM2.js +0 -24
  1919. package/dist/web/assets/diagram-P4PSJMXO-DJg8_uM2.js.br +0 -0
  1920. package/dist/web/assets/diagram-P4PSJMXO-DJg8_uM2.js.gz +0 -0
  1921. package/dist/web/assets/dialog-Bocc0Fgb.js +0 -1
  1922. package/dist/web/assets/dialog-Bocc0Fgb.js.br +0 -0
  1923. package/dist/web/assets/dialog-Bocc0Fgb.js.gz +0 -0
  1924. package/dist/web/assets/diff-viewer-BZ6glGK-.js +0 -4
  1925. package/dist/web/assets/diff-viewer-BZ6glGK-.js.br +0 -0
  1926. package/dist/web/assets/diff-viewer-BZ6glGK-.js.gz +0 -0
  1927. package/dist/web/assets/dist-CBtAY9iX.js +0 -1
  1928. package/dist/web/assets/dist-CBtAY9iX.js.br +0 -0
  1929. package/dist/web/assets/dist-CBtAY9iX.js.gz +0 -0
  1930. package/dist/web/assets/dist-CWwUZUqE.js +0 -11
  1931. package/dist/web/assets/dist-CWwUZUqE.js.br +0 -0
  1932. package/dist/web/assets/dist-CWwUZUqE.js.gz +0 -0
  1933. package/dist/web/assets/docx-preview-Dt6RQpfA.js +0 -12
  1934. package/dist/web/assets/docx-preview-Dt6RQpfA.js.br +0 -0
  1935. package/dist/web/assets/docx-preview-Dt6RQpfA.js.gz +0 -0
  1936. package/dist/web/assets/edge-BxayftlC.js +0 -1
  1937. package/dist/web/assets/edge-BxayftlC.js.br +0 -0
  1938. package/dist/web/assets/edge-BxayftlC.js.gz +0 -0
  1939. package/dist/web/assets/edit-diff-preview-D-FNLOU2.js +0 -7
  1940. package/dist/web/assets/edit-diff-preview-D-FNLOU2.js.br +0 -0
  1941. package/dist/web/assets/edit-diff-preview-D-FNLOU2.js.gz +0 -0
  1942. package/dist/web/assets/editor-language-service-4sbsdqBV.js +0 -1
  1943. package/dist/web/assets/editor-language-service-4sbsdqBV.js.br +0 -0
  1944. package/dist/web/assets/editor-language-service-4sbsdqBV.js.gz +0 -0
  1945. package/dist/web/assets/elixir-CncTBq2d.js +0 -1
  1946. package/dist/web/assets/elixir-CncTBq2d.js.br +0 -0
  1947. package/dist/web/assets/elixir-CncTBq2d.js.gz +0 -0
  1948. package/dist/web/assets/elm-1uJDe5N1.js +0 -1
  1949. package/dist/web/assets/elm-1uJDe5N1.js.br +0 -0
  1950. package/dist/web/assets/elm-1uJDe5N1.js.gz +0 -0
  1951. package/dist/web/assets/erDiagram-INFDFZHY-CXGHzu5w.js +0 -70
  1952. package/dist/web/assets/erDiagram-INFDFZHY-CXGHzu5w.js.br +0 -0
  1953. package/dist/web/assets/erDiagram-INFDFZHY-CXGHzu5w.js.gz +0 -0
  1954. package/dist/web/assets/erb-dH8FUiNl.js +0 -1
  1955. package/dist/web/assets/erb-dH8FUiNl.js.br +0 -0
  1956. package/dist/web/assets/erb-dH8FUiNl.js.gz +0 -0
  1957. package/dist/web/assets/erlang-D0F-1O48.js +0 -1
  1958. package/dist/web/assets/erlang-D0F-1O48.js.br +0 -0
  1959. package/dist/web/assets/erlang-D0F-1O48.js.gz +0 -0
  1960. package/dist/web/assets/esm-C3TeLjGW.js +0 -2
  1961. package/dist/web/assets/esm-C3TeLjGW.js.br +0 -0
  1962. package/dist/web/assets/esm-C3TeLjGW.js.gz +0 -0
  1963. package/dist/web/assets/explorer-body-DbgrG1fe.js +0 -2
  1964. package/dist/web/assets/explorer-body-DbgrG1fe.js.br +0 -0
  1965. package/dist/web/assets/explorer-body-DbgrG1fe.js.gz +0 -0
  1966. package/dist/web/assets/explorer-window-content-BCjWvHpp.js +0 -1
  1967. package/dist/web/assets/explorer-window-content-BCjWvHpp.js.br +0 -0
  1968. package/dist/web/assets/explorer-window-content-BCjWvHpp.js.gz +0 -0
  1969. package/dist/web/assets/extension-manager-section-DiMF4RnT.js +0 -1
  1970. package/dist/web/assets/extension-manager-section-DiMF4RnT.js.br +0 -0
  1971. package/dist/web/assets/extension-manager-section-DiMF4RnT.js.gz +0 -0
  1972. package/dist/web/assets/extension-webview-Coti6Vfw.js +0 -12
  1973. package/dist/web/assets/extension-webview-Coti6Vfw.js.br +0 -0
  1974. package/dist/web/assets/extension-webview-Coti6Vfw.js.gz +0 -0
  1975. package/dist/web/assets/file-icons-CK0J4QSy.js +0 -1
  1976. package/dist/web/assets/file-icons-CK0J4QSy.js.br +0 -0
  1977. package/dist/web/assets/file-icons-CK0J4QSy.js.gz +0 -0
  1978. package/dist/web/assets/file-icons.generated-BtBErEwb.css +0 -1
  1979. package/dist/web/assets/file-icons.generated-BtBErEwb.css.br +0 -0
  1980. package/dist/web/assets/file-icons.generated-BtBErEwb.css.gz +0 -0
  1981. package/dist/web/assets/file-store-Cm7-pHux.js +0 -1
  1982. package/dist/web/assets/file-store-Cm7-pHux.js.br +0 -0
  1983. package/dist/web/assets/file-store-Cm7-pHux.js.gz +0 -0
  1984. package/dist/web/assets/files-settings-section-ZTVwOwx0.js +0 -1
  1985. package/dist/web/assets/files-settings-section-ZTVwOwx0.js.br +0 -0
  1986. package/dist/web/assets/files-settings-section-ZTVwOwx0.js.gz +0 -0
  1987. package/dist/web/assets/flowDiagram-PKNHOUZH-CZmY6JEk.js +0 -162
  1988. package/dist/web/assets/flowDiagram-PKNHOUZH-CZmY6JEk.js.br +0 -0
  1989. package/dist/web/assets/flowDiagram-PKNHOUZH-CZmY6JEk.js.gz +0 -0
  1990. package/dist/web/assets/format-file-meta-Drxf2J-k.js +0 -1
  1991. package/dist/web/assets/format-file-meta-Drxf2J-k.js.br +0 -0
  1992. package/dist/web/assets/format-file-meta-Drxf2J-k.js.gz +0 -0
  1993. package/dist/web/assets/fortran-fixed-form-DB7wVefV.js +0 -1
  1994. package/dist/web/assets/fortran-fixed-form-DB7wVefV.js.br +0 -0
  1995. package/dist/web/assets/fortran-fixed-form-DB7wVefV.js.gz +0 -0
  1996. package/dist/web/assets/fs-api-IX9SHt5k.js +0 -1
  1997. package/dist/web/assets/fs-api-IX9SHt5k.js.br +0 -0
  1998. package/dist/web/assets/fs-api-IX9SHt5k.js.gz +0 -0
  1999. package/dist/web/assets/fsharp-B5-po_gS.js +0 -1
  2000. package/dist/web/assets/fsharp-B5-po_gS.js.br +0 -0
  2001. package/dist/web/assets/fsharp-B5-po_gS.js.gz +0 -0
  2002. package/dist/web/assets/ganttDiagram-A5KZAMGK-CZbyfmux.js +0 -292
  2003. package/dist/web/assets/ganttDiagram-A5KZAMGK-CZbyfmux.js.br +0 -0
  2004. package/dist/web/assets/ganttDiagram-A5KZAMGK-CZbyfmux.js.gz +0 -0
  2005. package/dist/web/assets/gdresource-DkWx6_xT.js +0 -1
  2006. package/dist/web/assets/gdresource-DkWx6_xT.js.br +0 -0
  2007. package/dist/web/assets/gdresource-DkWx6_xT.js.gz +0 -0
  2008. package/dist/web/assets/general-settings-section-B7Hjx_fb.js +0 -1
  2009. package/dist/web/assets/general-settings-section-B7Hjx_fb.js.br +0 -0
  2010. package/dist/web/assets/general-settings-section-B7Hjx_fb.js.gz +0 -0
  2011. package/dist/web/assets/git-commit-XsMhdamD.js +0 -1
  2012. package/dist/web/assets/git-commit-XsMhdamD.js.br +0 -0
  2013. package/dist/web/assets/git-commit-XsMhdamD.js.gz +0 -0
  2014. package/dist/web/assets/git-log-panel-CbcJ_YEH.js +0 -1
  2015. package/dist/web/assets/git-log-panel-CbcJ_YEH.js.br +0 -0
  2016. package/dist/web/assets/git-log-panel-CbcJ_YEH.js.gz +0 -0
  2017. package/dist/web/assets/git-rebase-CXs4QunZ.js +0 -1
  2018. package/dist/web/assets/git-repo-store-B_u5RzIM.js +0 -1
  2019. package/dist/web/assets/git-repo-store-B_u5RzIM.js.br +0 -0
  2020. package/dist/web/assets/git-repo-store-B_u5RzIM.js.gz +0 -0
  2021. package/dist/web/assets/gitGraph-HDMCJU4V-COyQftEp.js +0 -1
  2022. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-C9g4d3bV.js +0 -65
  2023. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-C9g4d3bV.js.br +0 -0
  2024. package/dist/web/assets/gitGraphDiagram-K3NZZRJ6-C9g4d3bV.js.gz +0 -0
  2025. package/dist/web/assets/glide-data-grid-BfByGSf1.js +0 -141
  2026. package/dist/web/assets/glide-data-grid-BfByGSf1.js.br +0 -0
  2027. package/dist/web/assets/glide-data-grid-BfByGSf1.js.gz +0 -0
  2028. package/dist/web/assets/glimmer-js-CHoxSy4K.js +0 -1
  2029. package/dist/web/assets/glimmer-js-CHoxSy4K.js.br +0 -0
  2030. package/dist/web/assets/glimmer-js-CHoxSy4K.js.gz +0 -0
  2031. package/dist/web/assets/glimmer-ts-DY0DCf-r.js +0 -1
  2032. package/dist/web/assets/glimmer-ts-DY0DCf-r.js.br +0 -0
  2033. package/dist/web/assets/glimmer-ts-DY0DCf-r.js.gz +0 -0
  2034. package/dist/web/assets/glsl-E9hxFBBJ.js +0 -1
  2035. package/dist/web/assets/glsl-E9hxFBBJ.js.br +0 -0
  2036. package/dist/web/assets/glsl-E9hxFBBJ.js.gz +0 -0
  2037. package/dist/web/assets/graphlib-eYluCODn.js +0 -1
  2038. package/dist/web/assets/graphlib-eYluCODn.js.br +0 -0
  2039. package/dist/web/assets/graphlib-eYluCODn.js.gz +0 -0
  2040. package/dist/web/assets/graphql-DAalq3Uo.js +0 -1
  2041. package/dist/web/assets/graphql-DAalq3Uo.js.br +0 -0
  2042. package/dist/web/assets/graphql-DAalq3Uo.js.gz +0 -0
  2043. package/dist/web/assets/group-chat-tab-DCo9OP3D.js +0 -1
  2044. package/dist/web/assets/group-chat-tab-DCo9OP3D.js.br +0 -0
  2045. package/dist/web/assets/group-chat-tab-DCo9OP3D.js.gz +0 -0
  2046. package/dist/web/assets/hack-e6ehmpqx.js +0 -1
  2047. package/dist/web/assets/hack-e6ehmpqx.js.br +0 -0
  2048. package/dist/web/assets/hack-e6ehmpqx.js.gz +0 -0
  2049. package/dist/web/assets/haml-Pr4yq62b.js +0 -1
  2050. package/dist/web/assets/haml-Pr4yq62b.js.br +0 -0
  2051. package/dist/web/assets/haml-Pr4yq62b.js.gz +0 -0
  2052. package/dist/web/assets/handlebars-ZERVZ8gn.js +0 -1
  2053. package/dist/web/assets/handlebars-ZERVZ8gn.js.br +0 -0
  2054. package/dist/web/assets/handlebars-ZERVZ8gn.js.gz +0 -0
  2055. package/dist/web/assets/html-BmwVFf5D.js +0 -1
  2056. package/dist/web/assets/html-BmwVFf5D.js.br +0 -0
  2057. package/dist/web/assets/html-BmwVFf5D.js.gz +0 -0
  2058. package/dist/web/assets/html-derivative-C1JIrmAY.js +0 -1
  2059. package/dist/web/assets/http-BI6PtTvX.js +0 -1
  2060. package/dist/web/assets/http-BI6PtTvX.js.br +0 -0
  2061. package/dist/web/assets/http-BI6PtTvX.js.gz +0 -0
  2062. package/dist/web/assets/hurl-CJGLGxAF.js +0 -1
  2063. package/dist/web/assets/hurl-CJGLGxAF.js.br +0 -0
  2064. package/dist/web/assets/hurl-CJGLGxAF.js.gz +0 -0
  2065. package/dist/web/assets/hxml-B6i0QuF9.js +0 -1
  2066. package/dist/web/assets/hxml-B6i0QuF9.js.br +0 -0
  2067. package/dist/web/assets/hxml-B6i0QuF9.js.gz +0 -0
  2068. package/dist/web/assets/icons-CO_II6D-.js +0 -1
  2069. package/dist/web/assets/icons-CO_II6D-.js.br +0 -0
  2070. package/dist/web/assets/icons-CO_II6D-.js.gz +0 -0
  2071. package/dist/web/assets/image-preview-Cjlps7Pt.js +0 -1
  2072. package/dist/web/assets/index-CyDLBddf.js +0 -52
  2073. package/dist/web/assets/index-CyDLBddf.js.br +0 -0
  2074. package/dist/web/assets/index-CyDLBddf.js.gz +0 -0
  2075. package/dist/web/assets/index-Dh5apC3I.css +0 -1
  2076. package/dist/web/assets/index-Dh5apC3I.css.br +0 -0
  2077. package/dist/web/assets/index-Dh5apC3I.css.gz +0 -0
  2078. package/dist/web/assets/info-3K5VOQVL-M5BVLjMe.js +0 -1
  2079. package/dist/web/assets/infoDiagram-LFFYTUFH-BpJuT5o9.js +0 -2
  2080. package/dist/web/assets/input-CG8PS8mS.js +0 -1
  2081. package/dist/web/assets/isEmpty-BjAN1oSC.js +0 -1
  2082. package/dist/web/assets/isEmpty-BjAN1oSC.js.br +0 -0
  2083. package/dist/web/assets/isEmpty-BjAN1oSC.js.gz +0 -0
  2084. package/dist/web/assets/ishikawaDiagram-PHBUUO56-JbOmOY2f.js +0 -70
  2085. package/dist/web/assets/ishikawaDiagram-PHBUUO56-JbOmOY2f.js.br +0 -0
  2086. package/dist/web/assets/ishikawaDiagram-PHBUUO56-JbOmOY2f.js.gz +0 -0
  2087. package/dist/web/assets/jinja-CM-duDMo.js +0 -1
  2088. package/dist/web/assets/jinja-CM-duDMo.js.br +0 -0
  2089. package/dist/web/assets/jinja-CM-duDMo.js.gz +0 -0
  2090. package/dist/web/assets/jira-watcher-section-Dz_-sUC2.js +0 -1
  2091. package/dist/web/assets/jison-F9rAmqyI.js +0 -1
  2092. package/dist/web/assets/jison-F9rAmqyI.js.br +0 -0
  2093. package/dist/web/assets/jison-F9rAmqyI.js.gz +0 -0
  2094. package/dist/web/assets/journeyDiagram-4ABVD52K-C7_tilrE.js +0 -139
  2095. package/dist/web/assets/journeyDiagram-4ABVD52K-C7_tilrE.js.br +0 -0
  2096. package/dist/web/assets/journeyDiagram-4ABVD52K-C7_tilrE.js.gz +0 -0
  2097. package/dist/web/assets/julia-AVSSuAUz.js +0 -1
  2098. package/dist/web/assets/julia-AVSSuAUz.js.br +0 -0
  2099. package/dist/web/assets/julia-AVSSuAUz.js.gz +0 -0
  2100. package/dist/web/assets/just-Dw8IR-fy.js +0 -1
  2101. package/dist/web/assets/just-Dw8IR-fy.js.br +0 -0
  2102. package/dist/web/assets/just-Dw8IR-fy.js.gz +0 -0
  2103. package/dist/web/assets/kanban-definition-K7BYSVSG-DvbxKeXt.js +0 -89
  2104. package/dist/web/assets/kanban-definition-K7BYSVSG-DvbxKeXt.js.br +0 -0
  2105. package/dist/web/assets/kanban-definition-K7BYSVSG-DvbxKeXt.js.gz +0 -0
  2106. package/dist/web/assets/keybindings-store-BTq5Z7XP.js +0 -1
  2107. package/dist/web/assets/keyboard-shortcuts-section-Ba5NYwlG.js +0 -1
  2108. package/dist/web/assets/keyboard-shortcuts-section-Ba5NYwlG.js.br +0 -0
  2109. package/dist/web/assets/keyboard-shortcuts-section-Ba5NYwlG.js.gz +0 -0
  2110. package/dist/web/assets/language-servers-section-DJJ7SFXo.js +0 -2
  2111. package/dist/web/assets/language-servers-section-DJJ7SFXo.js.br +0 -0
  2112. package/dist/web/assets/language-servers-section-DJJ7SFXo.js.gz +0 -0
  2113. package/dist/web/assets/latex-37_9fLdz.js +0 -1
  2114. package/dist/web/assets/latex-37_9fLdz.js.br +0 -0
  2115. package/dist/web/assets/latex-37_9fLdz.js.gz +0 -0
  2116. package/dist/web/assets/lib-6APiJkU3.js +0 -4
  2117. package/dist/web/assets/lib-6APiJkU3.js.br +0 -0
  2118. package/dist/web/assets/lib-6APiJkU3.js.gz +0 -0
  2119. package/dist/web/assets/line-CYtSrseF.js +0 -1
  2120. package/dist/web/assets/linear-DyCrWAir.js +0 -1
  2121. package/dist/web/assets/linear-DyCrWAir.js.br +0 -0
  2122. package/dist/web/assets/linear-DyCrWAir.js.gz +0 -0
  2123. package/dist/web/assets/liquid-CaR1gaJt.js +0 -1
  2124. package/dist/web/assets/liquid-CaR1gaJt.js.br +0 -0
  2125. package/dist/web/assets/liquid-CaR1gaJt.js.gz +0 -0
  2126. package/dist/web/assets/lsp-client-Dr3vQ1bb.js +0 -1
  2127. package/dist/web/assets/lsp-client-Dr3vQ1bb.js.br +0 -0
  2128. package/dist/web/assets/lsp-client-Dr3vQ1bb.js.gz +0 -0
  2129. package/dist/web/assets/lua-IFhrYmKl.js +0 -1
  2130. package/dist/web/assets/lua-IFhrYmKl.js.br +0 -0
  2131. package/dist/web/assets/lua-IFhrYmKl.js.gz +0 -0
  2132. package/dist/web/assets/markdown-renderer-CmnqFfTU.js +0 -5
  2133. package/dist/web/assets/markdown-renderer-CmnqFfTU.js.br +0 -0
  2134. package/dist/web/assets/markdown-renderer-CmnqFfTU.js.gz +0 -0
  2135. package/dist/web/assets/markdown-renderer-LJdVMbGl.js +0 -1
  2136. package/dist/web/assets/marko-2g0T6atb.js +0 -1
  2137. package/dist/web/assets/marko-2g0T6atb.js.br +0 -0
  2138. package/dist/web/assets/marko-2g0T6atb.js.gz +0 -0
  2139. package/dist/web/assets/mdc-Dku_3sTh.js +0 -1
  2140. package/dist/web/assets/mdc-Dku_3sTh.js.br +0 -0
  2141. package/dist/web/assets/mdc-Dku_3sTh.js.gz +0 -0
  2142. package/dist/web/assets/media-url-CrT-qulZ.js +0 -1
  2143. package/dist/web/assets/mermaid-parser.core-C5vBM3kO.js +0 -4
  2144. package/dist/web/assets/mermaid-parser.core-C5vBM3kO.js.br +0 -0
  2145. package/dist/web/assets/mermaid-parser.core-C5vBM3kO.js.gz +0 -0
  2146. package/dist/web/assets/mermaid.core-D5SAzB7L.js +0 -11
  2147. package/dist/web/assets/mermaid.core-D5SAzB7L.js.br +0 -0
  2148. package/dist/web/assets/mermaid.core-D5SAzB7L.js.gz +0 -0
  2149. package/dist/web/assets/mindmap-definition-YRQLILUH-juNCbDFr.js +0 -68
  2150. package/dist/web/assets/mindmap-definition-YRQLILUH-juNCbDFr.js.br +0 -0
  2151. package/dist/web/assets/mindmap-definition-YRQLILUH-juNCbDFr.js.gz +0 -0
  2152. package/dist/web/assets/mobile-bottom-sheet-D4UyOatB.js +0 -1
  2153. package/dist/web/assets/mobile-bottom-sheet-D4UyOatB.js.br +0 -0
  2154. package/dist/web/assets/mobile-bottom-sheet-D4UyOatB.js.gz +0 -0
  2155. package/dist/web/assets/mobile-explorer-sheet-BiIhZtJ2.js +0 -1
  2156. package/dist/web/assets/mobile-explorer-sheet-BiIhZtJ2.js.br +0 -0
  2157. package/dist/web/assets/mobile-explorer-sheet-BiIhZtJ2.js.gz +0 -0
  2158. package/dist/web/assets/monaco-dotenv-language-DbSss7YR.js +0 -1
  2159. package/dist/web/assets/new-design-dialog-DI_hxvFV.js +0 -1
  2160. package/dist/web/assets/new-design-dialog-DI_hxvFV.js.br +0 -0
  2161. package/dist/web/assets/new-design-dialog-DI_hxvFV.js.gz +0 -0
  2162. package/dist/web/assets/nextflow-DwUrPV3b.js +0 -1
  2163. package/dist/web/assets/nextflow-DwUrPV3b.js.br +0 -0
  2164. package/dist/web/assets/nextflow-DwUrPV3b.js.gz +0 -0
  2165. package/dist/web/assets/nginx-D10J2vrQ.js +0 -1
  2166. package/dist/web/assets/nginx-D10J2vrQ.js.br +0 -0
  2167. package/dist/web/assets/nginx-D10J2vrQ.js.gz +0 -0
  2168. package/dist/web/assets/nim-BonDnBCZ.js +0 -1
  2169. package/dist/web/assets/nim-BonDnBCZ.js.br +0 -0
  2170. package/dist/web/assets/nim-BonDnBCZ.js.gz +0 -0
  2171. package/dist/web/assets/notification-store-9lBSplOV.js +0 -1
  2172. package/dist/web/assets/notifications-settings-section-0s-2OKRv.js +0 -1
  2173. package/dist/web/assets/notifications-settings-section-0s-2OKRv.js.br +0 -0
  2174. package/dist/web/assets/notifications-settings-section-0s-2OKRv.js.gz +0 -0
  2175. package/dist/web/assets/number-overlay-editor-CHqPl6Pv.js +0 -9
  2176. package/dist/web/assets/number-overlay-editor-CHqPl6Pv.js.br +0 -0
  2177. package/dist/web/assets/number-overlay-editor-CHqPl6Pv.js.gz +0 -0
  2178. package/dist/web/assets/onboarding-entry-CGFdGLLP.js +0 -1
  2179. package/dist/web/assets/onboarding-entry-CGFdGLLP.js.br +0 -0
  2180. package/dist/web/assets/onboarding-entry-CGFdGLLP.js.gz +0 -0
  2181. package/dist/web/assets/onboarding-quick-orientation-DPHYFMbA.js +0 -1
  2182. package/dist/web/assets/onboarding-quick-orientation-DPHYFMbA.js.br +0 -0
  2183. package/dist/web/assets/onboarding-quick-orientation-DPHYFMbA.js.gz +0 -0
  2184. package/dist/web/assets/ordinal-CEpaoDoJ.js +0 -1
  2185. package/dist/web/assets/ordinal-CEpaoDoJ.js.br +0 -0
  2186. package/dist/web/assets/ordinal-CEpaoDoJ.js.gz +0 -0
  2187. package/dist/web/assets/overview-panel-3htxfZS2.js +0 -1
  2188. package/dist/web/assets/overview-panel-3htxfZS2.js.br +0 -0
  2189. package/dist/web/assets/overview-panel-3htxfZS2.js.gz +0 -0
  2190. package/dist/web/assets/packet-RMMSAZCW-DCgVLum2.js +0 -1
  2191. package/dist/web/assets/panel-store-B6PoCwBA.js +0 -1
  2192. package/dist/web/assets/panel-store-B6PoCwBA.js.br +0 -0
  2193. package/dist/web/assets/panel-store-B6PoCwBA.js.gz +0 -0
  2194. package/dist/web/assets/pdf-preview-B8A4T-ES.js +0 -1
  2195. package/dist/web/assets/pdf-preview-B8A4T-ES.js.br +0 -0
  2196. package/dist/web/assets/pdf-preview-B8A4T-ES.js.gz +0 -0
  2197. package/dist/web/assets/performance-panel-V8gpnnf7.js +0 -3
  2198. package/dist/web/assets/performance-panel-V8gpnnf7.js.br +0 -0
  2199. package/dist/web/assets/performance-panel-V8gpnnf7.js.gz +0 -0
  2200. package/dist/web/assets/perl-DmdIiZTm.js +0 -1
  2201. package/dist/web/assets/perl-DmdIiZTm.js.br +0 -0
  2202. package/dist/web/assets/perl-DmdIiZTm.js.gz +0 -0
  2203. package/dist/web/assets/php-DXGvCIY0.js +0 -1
  2204. package/dist/web/assets/php-DXGvCIY0.js.br +0 -0
  2205. package/dist/web/assets/php-DXGvCIY0.js.gz +0 -0
  2206. package/dist/web/assets/pie-UPGHQEXC-pxihnmef.js +0 -1
  2207. package/dist/web/assets/pieDiagram-SKSYHLDU-CiJCYElI.js +0 -30
  2208. package/dist/web/assets/pieDiagram-SKSYHLDU-CiJCYElI.js.br +0 -0
  2209. package/dist/web/assets/pieDiagram-SKSYHLDU-CiJCYElI.js.gz +0 -0
  2210. package/dist/web/assets/postgres-viewer-sWS-ogTC.js +0 -3
  2211. package/dist/web/assets/postgres-viewer-sWS-ogTC.js.br +0 -0
  2212. package/dist/web/assets/postgres-viewer-sWS-ogTC.js.gz +0 -0
  2213. package/dist/web/assets/ppmbot-settings-section-CT8vvlzk.js +0 -1
  2214. package/dist/web/assets/ppmbot-settings-section-CT8vvlzk.js.br +0 -0
  2215. package/dist/web/assets/ppmbot-settings-section-CT8vvlzk.js.gz +0 -0
  2216. package/dist/web/assets/pptx-export-Ugjv0hso.js +0 -111
  2217. package/dist/web/assets/pptx-export-Ugjv0hso.js.br +0 -0
  2218. package/dist/web/assets/pptx-export-Ugjv0hso.js.gz +0 -0
  2219. package/dist/web/assets/problems-panel-Gcy79pSS.js +0 -1
  2220. package/dist/web/assets/problems-panel-Gcy79pSS.js.br +0 -0
  2221. package/dist/web/assets/problems-panel-Gcy79pSS.js.gz +0 -0
  2222. package/dist/web/assets/process-row-format-u6y7lOee.js +0 -1
  2223. package/dist/web/assets/process-table-BUTIp9Oy.js +0 -1
  2224. package/dist/web/assets/process-table-BUTIp9Oy.js.br +0 -0
  2225. package/dist/web/assets/process-table-BUTIp9Oy.js.gz +0 -0
  2226. package/dist/web/assets/project-store-CCimwgGF.js +0 -1
  2227. package/dist/web/assets/project-store-CCimwgGF.js.br +0 -0
  2228. package/dist/web/assets/project-store-CCimwgGF.js.gz +0 -0
  2229. package/dist/web/assets/proxy-settings-section-Buv_8y54.js +0 -1
  2230. package/dist/web/assets/proxy-settings-section-Buv_8y54.js.br +0 -0
  2231. package/dist/web/assets/proxy-settings-section-Buv_8y54.js.gz +0 -0
  2232. package/dist/web/assets/pug-BgMlgmpT.js +0 -1
  2233. package/dist/web/assets/pug-BgMlgmpT.js.br +0 -0
  2234. package/dist/web/assets/pug-BgMlgmpT.js.gz +0 -0
  2235. package/dist/web/assets/qml-DjqBS8bc.js +0 -1
  2236. package/dist/web/assets/qml-DjqBS8bc.js.br +0 -0
  2237. package/dist/web/assets/qml-DjqBS8bc.js.gz +0 -0
  2238. package/dist/web/assets/quadrantDiagram-337W2JSQ-D3q5dHQe.js +0 -7
  2239. package/dist/web/assets/quadrantDiagram-337W2JSQ-D3q5dHQe.js.br +0 -0
  2240. package/dist/web/assets/quadrantDiagram-337W2JSQ-D3q5dHQe.js.gz +0 -0
  2241. package/dist/web/assets/query-audit-section-N2DQtgJx.js +0 -1
  2242. package/dist/web/assets/query-audit-section-N2DQtgJx.js.br +0 -0
  2243. package/dist/web/assets/query-audit-section-N2DQtgJx.js.gz +0 -0
  2244. package/dist/web/assets/radar-KQ55EAFF-CeeNXQSm.js +0 -1
  2245. package/dist/web/assets/razor-CzV29vlj.js +0 -1
  2246. package/dist/web/assets/razor-CzV29vlj.js.br +0 -0
  2247. package/dist/web/assets/razor-CzV29vlj.js.gz +0 -0
  2248. package/dist/web/assets/remote-desktop-clipboard-notice-CRvJqmaz.js +0 -1
  2249. package/dist/web/assets/remote-desktop-clipboard-notice-CRvJqmaz.js.br +0 -0
  2250. package/dist/web/assets/remote-desktop-clipboard-notice-CRvJqmaz.js.gz +0 -0
  2251. package/dist/web/assets/remote-desktop-mobile-sheet-BoYINLbJ.js +0 -2
  2252. package/dist/web/assets/remote-desktop-mobile-sheet-BoYINLbJ.js.br +0 -0
  2253. package/dist/web/assets/remote-desktop-mobile-sheet-BoYINLbJ.js.gz +0 -0
  2254. package/dist/web/assets/remote-desktop-mobile-view-DPdP0yYu.js +0 -1
  2255. package/dist/web/assets/remote-desktop-mobile-view-DPdP0yYu.js.br +0 -0
  2256. package/dist/web/assets/remote-desktop-mobile-view-DPdP0yYu.js.gz +0 -0
  2257. package/dist/web/assets/remote-desktop-readiness-gate-BeQ_Jrp7.js +0 -1
  2258. package/dist/web/assets/remote-desktop-readiness-gate-BeQ_Jrp7.js.br +0 -0
  2259. package/dist/web/assets/remote-desktop-readiness-gate-BeQ_Jrp7.js.gz +0 -0
  2260. package/dist/web/assets/remote-desktop-settings-section-Bs4sHS3l.js +0 -1
  2261. package/dist/web/assets/remote-desktop-settings-section-Bs4sHS3l.js.br +0 -0
  2262. package/dist/web/assets/remote-desktop-settings-section-Bs4sHS3l.js.gz +0 -0
  2263. package/dist/web/assets/remote-desktop-window-content-DDr__JxQ.js +0 -1
  2264. package/dist/web/assets/remote-desktop-window-content-DDr__JxQ.js.br +0 -0
  2265. package/dist/web/assets/remote-desktop-window-content-DDr__JxQ.js.gz +0 -0
  2266. package/dist/web/assets/requirementDiagram-Z7DCOOCP-BZfeEsxv.js +0 -73
  2267. package/dist/web/assets/requirementDiagram-Z7DCOOCP-BZfeEsxv.js.br +0 -0
  2268. package/dist/web/assets/requirementDiagram-Z7DCOOCP-BZfeEsxv.js.gz +0 -0
  2269. package/dist/web/assets/rst-DffOOLD7.js +0 -1
  2270. package/dist/web/assets/rst-DffOOLD7.js.br +0 -0
  2271. package/dist/web/assets/rst-DffOOLD7.js.gz +0 -0
  2272. package/dist/web/assets/ruby-C5DczJCc.js +0 -1
  2273. package/dist/web/assets/ruby-C5DczJCc.js.br +0 -0
  2274. package/dist/web/assets/ruby-C5DczJCc.js.gz +0 -0
  2275. package/dist/web/assets/run-in-terminal-DCBNtYHQ.js +0 -1
  2276. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-CxM5iAJY.js +0 -10
  2277. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-CxM5iAJY.js.br +0 -0
  2278. package/dist/web/assets/sankeyDiagram-WA2Y5GQK-CxM5iAJY.js.gz +0 -0
  2279. package/dist/web/assets/sas-CoO1xLdH.js +0 -1
  2280. package/dist/web/assets/sas-CoO1xLdH.js.br +0 -0
  2281. package/dist/web/assets/sas-CoO1xLdH.js.gz +0 -0
  2282. package/dist/web/assets/schedules-settings-section-_cHX2qOa.js +0 -1
  2283. package/dist/web/assets/schedules-settings-section-_cHX2qOa.js.br +0 -0
  2284. package/dist/web/assets/schedules-settings-section-_cHX2qOa.js.gz +0 -0
  2285. package/dist/web/assets/scroll-area-sjOeAfoD.js +0 -1
  2286. package/dist/web/assets/scroll-area-sjOeAfoD.js.br +0 -0
  2287. package/dist/web/assets/scroll-area-sjOeAfoD.js.gz +0 -0
  2288. package/dist/web/assets/scss-d9PFDNvb.js +0 -1
  2289. package/dist/web/assets/scss-d9PFDNvb.js.br +0 -0
  2290. package/dist/web/assets/scss-d9PFDNvb.js.gz +0 -0
  2291. package/dist/web/assets/send-to-chat-dNqNV7Y4.js +0 -1
  2292. package/dist/web/assets/send-to-chat-dNqNV7Y4.js.br +0 -0
  2293. package/dist/web/assets/send-to-chat-dNqNV7Y4.js.gz +0 -0
  2294. package/dist/web/assets/separator-dHj3Km--.js +0 -1
  2295. package/dist/web/assets/sequenceDiagram-2WXFIKYE-D4PdZNfQ.js +0 -145
  2296. package/dist/web/assets/sequenceDiagram-2WXFIKYE-D4PdZNfQ.js.br +0 -0
  2297. package/dist/web/assets/sequenceDiagram-2WXFIKYE-D4PdZNfQ.js.gz +0 -0
  2298. package/dist/web/assets/services-panel-Dm54cnW3.js +0 -1
  2299. package/dist/web/assets/services-panel-Dm54cnW3.js.br +0 -0
  2300. package/dist/web/assets/services-panel-Dm54cnW3.js.gz +0 -0
  2301. package/dist/web/assets/session-list-sync-triggers-ATvz-1g3.js +0 -1
  2302. package/dist/web/assets/session-list-sync-triggers-ATvz-1g3.js.br +0 -0
  2303. package/dist/web/assets/session-list-sync-triggers-ATvz-1g3.js.gz +0 -0
  2304. package/dist/web/assets/settings-body-DRRQNaDA.js +0 -1
  2305. package/dist/web/assets/settings-body-DRRQNaDA.js.br +0 -0
  2306. package/dist/web/assets/settings-body-DRRQNaDA.js.gz +0 -0
  2307. package/dist/web/assets/settings-section-content-DRaHfvm8.js +0 -1
  2308. package/dist/web/assets/settings-section-content-U3mIx6hF.js +0 -2
  2309. package/dist/web/assets/settings-section-content-U3mIx6hF.js.br +0 -0
  2310. package/dist/web/assets/settings-section-content-U3mIx6hF.js.gz +0 -0
  2311. package/dist/web/assets/settings-store-Cyuo8ceh.js +0 -2
  2312. package/dist/web/assets/settings-store-Cyuo8ceh.js.br +0 -0
  2313. package/dist/web/assets/settings-store-Cyuo8ceh.js.gz +0 -0
  2314. package/dist/web/assets/settings-tab-CB_BhHTK.js +0 -1
  2315. package/dist/web/assets/settings-window-content-CgZIMNX8.js +0 -1
  2316. package/dist/web/assets/shaderlab-BkB57LhQ.js +0 -1
  2317. package/dist/web/assets/shaderlab-BkB57LhQ.js.br +0 -0
  2318. package/dist/web/assets/shaderlab-BkB57LhQ.js.gz +0 -0
  2319. package/dist/web/assets/shellsession-CTpUym8_.js +0 -1
  2320. package/dist/web/assets/slash-command-picker-CQlIqMW0.js +0 -1
  2321. package/dist/web/assets/slash-command-picker-CQlIqMW0.js.br +0 -0
  2322. package/dist/web/assets/slash-command-picker-CQlIqMW0.js.gz +0 -0
  2323. package/dist/web/assets/sortable-header-BOa8o7NJ.js +0 -1
  2324. package/dist/web/assets/sortable-header-BOa8o7NJ.js.br +0 -0
  2325. package/dist/web/assets/sortable-header-BOa8o7NJ.js.gz +0 -0
  2326. package/dist/web/assets/soy-CGmWpNZ2.js +0 -1
  2327. package/dist/web/assets/soy-CGmWpNZ2.js.br +0 -0
  2328. package/dist/web/assets/soy-CGmWpNZ2.js.gz +0 -0
  2329. package/dist/web/assets/sparql-DtdOj_MX.js +0 -1
  2330. package/dist/web/assets/sparql-DtdOj_MX.js.br +0 -0
  2331. package/dist/web/assets/sparql-DtdOj_MX.js.gz +0 -0
  2332. package/dist/web/assets/sql-query-editor--Z4bcqd8.js +0 -1
  2333. package/dist/web/assets/sql-query-editor--Z4bcqd8.js.br +0 -0
  2334. package/dist/web/assets/sql-query-editor--Z4bcqd8.js.gz +0 -0
  2335. package/dist/web/assets/sqlite-viewer-CSmX3qaj.js +0 -1
  2336. package/dist/web/assets/sqlite-viewer-CSmX3qaj.js.br +0 -0
  2337. package/dist/web/assets/sqlite-viewer-CSmX3qaj.js.gz +0 -0
  2338. package/dist/web/assets/stata-6W_BX14b.js +0 -1
  2339. package/dist/web/assets/stata-6W_BX14b.js.br +0 -0
  2340. package/dist/web/assets/stata-6W_BX14b.js.gz +0 -0
  2341. package/dist/web/assets/stateDiagram-RAJIS63D-BasP-g7l.js +0 -1
  2342. package/dist/web/assets/stateDiagram-RAJIS63D-BasP-g7l.js.br +0 -0
  2343. package/dist/web/assets/stateDiagram-RAJIS63D-BasP-g7l.js.gz +0 -0
  2344. package/dist/web/assets/stateDiagram-v2-FVOUBMTO-DH7CpDey.js +0 -1
  2345. package/dist/web/assets/surrealql-BhmbH4Yk.js +0 -1
  2346. package/dist/web/assets/surrealql-BhmbH4Yk.js.br +0 -0
  2347. package/dist/web/assets/surrealql-BhmbH4Yk.js.gz +0 -0
  2348. package/dist/web/assets/svelte-D6EOFdO-.js +0 -1
  2349. package/dist/web/assets/svelte-D6EOFdO-.js.br +0 -0
  2350. package/dist/web/assets/svelte-D6EOFdO-.js.gz +0 -0
  2351. package/dist/web/assets/system-monitor-body-LannpU6H.js +0 -2
  2352. package/dist/web/assets/system-monitor-body-LannpU6H.js.br +0 -0
  2353. package/dist/web/assets/system-monitor-body-LannpU6H.js.gz +0 -0
  2354. package/dist/web/assets/system-monitor-tab-BfVucwEF.js +0 -1
  2355. package/dist/web/assets/system-monitor-window-content-kLNW9Ln3.js +0 -1
  2356. package/dist/web/assets/tab-host-window-content-II_FtOYM.js +0 -1
  2357. package/dist/web/assets/tab-host-window-content-II_FtOYM.js.br +0 -0
  2358. package/dist/web/assets/tab-host-window-content-II_FtOYM.js.gz +0 -0
  2359. package/dist/web/assets/tab-store-DCpc0g0Q.js +0 -1
  2360. package/dist/web/assets/templ-DuLJgZN8.js +0 -1
  2361. package/dist/web/assets/templ-DuLJgZN8.js.br +0 -0
  2362. package/dist/web/assets/templ-DuLJgZN8.js.gz +0 -0
  2363. package/dist/web/assets/terminal-tab-CTe2polt.js +0 -3
  2364. package/dist/web/assets/terminal-tab-CTe2polt.js.br +0 -0
  2365. package/dist/web/assets/terminal-tab-CTe2polt.js.gz +0 -0
  2366. package/dist/web/assets/tex-D8IJD2J1.js +0 -1
  2367. package/dist/web/assets/tex-D8IJD2J1.js.br +0 -0
  2368. package/dist/web/assets/tex-D8IJD2J1.js.gz +0 -0
  2369. package/dist/web/assets/timeline-definition-YZTLITO2-Do92I8eh.js +0 -61
  2370. package/dist/web/assets/timeline-definition-YZTLITO2-Do92I8eh.js.br +0 -0
  2371. package/dist/web/assets/timeline-definition-YZTLITO2-Do92I8eh.js.gz +0 -0
  2372. package/dist/web/assets/tool-cards-rxLXbBSm.js +0 -9
  2373. package/dist/web/assets/tool-cards-rxLXbBSm.js.br +0 -0
  2374. package/dist/web/assets/tool-cards-rxLXbBSm.js.gz +0 -0
  2375. package/dist/web/assets/treemap-KZPCXAKY-OVcqjFQG.js +0 -1
  2376. package/dist/web/assets/ts-tags-BxVcUOvj.js +0 -1
  2377. package/dist/web/assets/ts-tags-BxVcUOvj.js.br +0 -0
  2378. package/dist/web/assets/ts-tags-BxVcUOvj.js.gz +0 -0
  2379. package/dist/web/assets/twig-BT8vDHa2.js +0 -1
  2380. package/dist/web/assets/twig-BT8vDHa2.js.br +0 -0
  2381. package/dist/web/assets/twig-BT8vDHa2.js.gz +0 -0
  2382. package/dist/web/assets/use-blob-url-BC69n15x.js +0 -1
  2383. package/dist/web/assets/use-inline-blame-CxZ_QWzS.js +0 -16
  2384. package/dist/web/assets/use-inline-blame-CxZ_QWzS.js.br +0 -0
  2385. package/dist/web/assets/use-inline-blame-CxZ_QWzS.js.gz +0 -0
  2386. package/dist/web/assets/use-lsp-gCNE5A9K.js +0 -6
  2387. package/dist/web/assets/use-lsp-gCNE5A9K.js.br +0 -0
  2388. package/dist/web/assets/use-lsp-gCNE5A9K.js.gz +0 -0
  2389. package/dist/web/assets/use-monaco-theme-DvNGcCvz.js +0 -1
  2390. package/dist/web/assets/use-process-kill-Cbiu1mbY.js +0 -1
  2391. package/dist/web/assets/use-process-kill-Cbiu1mbY.js.br +0 -0
  2392. package/dist/web/assets/use-process-kill-Cbiu1mbY.js.gz +0 -0
  2393. package/dist/web/assets/use-websocket-AC7EG1LK.js +0 -1
  2394. package/dist/web/assets/vendor-ui-P9Ym7hCv.js +0 -45
  2395. package/dist/web/assets/vendor-ui-P9Ym7hCv.js.br +0 -0
  2396. package/dist/web/assets/vendor-ui-P9Ym7hCv.js.gz +0 -0
  2397. package/dist/web/assets/vennDiagram-LZ73GAT5-ITFNzHRx.js +0 -34
  2398. package/dist/web/assets/vennDiagram-LZ73GAT5-ITFNzHRx.js.br +0 -0
  2399. package/dist/web/assets/vennDiagram-LZ73GAT5-ITFNzHRx.js.gz +0 -0
  2400. package/dist/web/assets/video-preview-C2Y61WUE.js +0 -1
  2401. package/dist/web/assets/video-preview-C2Y61WUE.js.br +0 -0
  2402. package/dist/web/assets/video-preview-C2Y61WUE.js.gz +0 -0
  2403. package/dist/web/assets/voice-settings-section-DCXZeLYI.js +0 -1
  2404. package/dist/web/assets/voice-settings-section-DCXZeLYI.js.br +0 -0
  2405. package/dist/web/assets/voice-settings-section-DCXZeLYI.js.gz +0 -0
  2406. package/dist/web/assets/vue-BcyG2SyR.js +0 -1
  2407. package/dist/web/assets/vue-BcyG2SyR.js.br +0 -0
  2408. package/dist/web/assets/vue-BcyG2SyR.js.gz +0 -0
  2409. package/dist/web/assets/vue-html-D8iVjZTe.js +0 -1
  2410. package/dist/web/assets/vue-html-D8iVjZTe.js.br +0 -0
  2411. package/dist/web/assets/vue-html-D8iVjZTe.js.gz +0 -0
  2412. package/dist/web/assets/vue-vine-DxBjHHk4.js +0 -1
  2413. package/dist/web/assets/vue-vine-DxBjHHk4.js.br +0 -0
  2414. package/dist/web/assets/vue-vine-DxBjHHk4.js.gz +0 -0
  2415. package/dist/web/assets/window-pip-registry-9Y9LQQYS.js +0 -1
  2416. package/dist/web/assets/window-store-vo1N70nK.js +0 -1
  2417. package/dist/web/assets/window-store-vo1N70nK.js.br +0 -0
  2418. package/dist/web/assets/window-store-vo1N70nK.js.gz +0 -0
  2419. package/dist/web/assets/ws-auth-Ytui7dXP.js +0 -1
  2420. package/dist/web/assets/xml-Zepcw_qF.js +0 -1
  2421. package/dist/web/assets/xml-Zepcw_qF.js.br +0 -0
  2422. package/dist/web/assets/xml-Zepcw_qF.js.gz +0 -0
  2423. package/dist/web/assets/xsl-_m-WMWv3.js +0 -1
  2424. package/dist/web/assets/xsl-_m-WMWv3.js.br +0 -0
  2425. package/dist/web/assets/xsl-_m-WMWv3.js.gz +0 -0
  2426. package/dist/web/assets/xychartDiagram-JWTSCODW-Z12EI4TX.js +0 -7
  2427. package/dist/web/assets/xychartDiagram-JWTSCODW-Z12EI4TX.js.br +0 -0
  2428. package/dist/web/assets/xychartDiagram-JWTSCODW-Z12EI4TX.js.gz +0 -0
  2429. package/src/server/routes/fs-sqlite.ts +0 -129
  2430. package/src/server/routes/postgres.ts +0 -92
  2431. package/src/server/routes/sqlite.ts +0 -148
  2432. package/src/services/database/split-sql-statements.ts +0 -95
  2433. package/src/web/components/chat/change-edit-list.tsx +0 -50
  2434. package/src/web/components/database/connection-form-dialog.tsx +0 -252
  2435. package/src/web/components/database/connection-list.tsx +0 -192
  2436. package/src/web/components/database/connection-row.tsx +0 -104
  2437. package/src/web/components/database/database-viewer.tsx +0 -353
  2438. package/src/web/components/database/glide-column-search.tsx +0 -81
  2439. package/src/web/components/database/glide-data-preview-panel.tsx +0 -114
  2440. package/src/web/components/database/glide-grid-pagination.tsx +0 -34
  2441. package/src/web/components/database/glide-grid-toolbar.tsx +0 -105
  2442. package/src/web/components/database/resolve-preview-data.ts +0 -62
  2443. package/src/web/components/database/schema-table-tree.tsx +0 -98
  2444. package/src/web/components/database/split-sql-statements.ts +0 -116
  2445. package/src/web/components/database/use-db-tree-expansion.ts +0 -74
  2446. package/src/web/components/database/use-glide-pending-edits.ts +0 -72
  2447. package/src/web/components/database/use-glide-row-pinning.ts +0 -35
  2448. package/src/web/components/postgres/postgres-viewer.tsx +0 -283
  2449. package/src/web/components/postgres/use-postgres.ts +0 -161
  2450. package/src/web/components/shared/bug-report-popup.tsx +0 -59
  2451. package/src/web/components/sqlite/sqlite-data-grid.tsx +0 -213
  2452. package/src/web/components/sqlite/sqlite-query-editor.tsx +0 -10
  2453. package/src/web/components/sqlite/sqlite-table-list.tsx +0 -48
  2454. package/src/web/components/sqlite/use-sqlite.ts +0 -135
  2455. package/src/web/components/tunnels/named-tunnel/named-tunnel-section.tsx +0 -159
  2456. package/src/web/components/tunnels/public-tunnel-switch.tsx +0 -82
  2457. package/src/web/components/tunnels/tunnel-manager-tab.tsx +0 -207
  2458. package/src/web/lib/report-bug.ts +0 -79
  2459. /package/dist/web/assets/{__vite-browser-external-C5mXParC.js → __vite-browser-external-B4VNaaaA.js} +0 -0
  2460. /package/dist/web/assets/{abap-Ds6L4g_T.js → abap-BIHt2d9F.js} +0 -0
  2461. /package/dist/web/assets/{abap-Ds6L4g_T.js.br → abap-BIHt2d9F.js.br} +0 -0
  2462. /package/dist/web/assets/{abap-Ds6L4g_T.js.gz → abap-BIHt2d9F.js.gz} +0 -0
  2463. /package/dist/web/assets/{actionscript-3-CLNiH4aj.js → actionscript-3-rbCNRHFj.js} +0 -0
  2464. /package/dist/web/assets/{actionscript-3-CLNiH4aj.js.br → actionscript-3-rbCNRHFj.js.br} +0 -0
  2465. /package/dist/web/assets/{actionscript-3-CLNiH4aj.js.gz → actionscript-3-rbCNRHFj.js.gz} +0 -0
  2466. /package/dist/web/assets/{ada-BoiebnO1.js → ada-CN94LQTJ.js} +0 -0
  2467. /package/dist/web/assets/{ada-BoiebnO1.js.br → ada-CN94LQTJ.js.br} +0 -0
  2468. /package/dist/web/assets/{ada-BoiebnO1.js.gz → ada-CN94LQTJ.js.gz} +0 -0
  2469. /package/dist/web/assets/{andromeeda-CdMZLp1H.js → andromeeda-BsmcoXuQ.js} +0 -0
  2470. /package/dist/web/assets/{andromeeda-CdMZLp1H.js.br → andromeeda-BsmcoXuQ.js.br} +0 -0
  2471. /package/dist/web/assets/{andromeeda-CdMZLp1H.js.gz → andromeeda-BsmcoXuQ.js.gz} +0 -0
  2472. /package/dist/web/assets/{apache-BKOdPQIP.js → apache-pRQmqcVZ.js} +0 -0
  2473. /package/dist/web/assets/{apache-BKOdPQIP.js.br → apache-pRQmqcVZ.js.br} +0 -0
  2474. /package/dist/web/assets/{apache-BKOdPQIP.js.gz → apache-pRQmqcVZ.js.gz} +0 -0
  2475. /package/dist/web/assets/{apex-kTmPDDVo.js → apex-CNEumC1X.js} +0 -0
  2476. /package/dist/web/assets/{apex-kTmPDDVo.js.br → apex-CNEumC1X.js.br} +0 -0
  2477. /package/dist/web/assets/{apex-kTmPDDVo.js.gz → apex-CNEumC1X.js.gz} +0 -0
  2478. /package/dist/web/assets/{applescript-C65SMPLe.js → applescript-DjEVsS-3.js} +0 -0
  2479. /package/dist/web/assets/{applescript-C65SMPLe.js.br → applescript-DjEVsS-3.js.br} +0 -0
  2480. /package/dist/web/assets/{applescript-C65SMPLe.js.gz → applescript-DjEVsS-3.js.gz} +0 -0
  2481. /package/dist/web/assets/{apply-theme-Cc_cmrD5.js → apply-theme-ORrEdHKT.js} +0 -0
  2482. /package/dist/web/assets/{ara-BKT6no2T.js → ara-DbhZRlTL.js} +0 -0
  2483. /package/dist/web/assets/{ara-BKT6no2T.js.br → ara-DbhZRlTL.js.br} +0 -0
  2484. /package/dist/web/assets/{ara-BKT6no2T.js.gz → ara-DbhZRlTL.js.gz} +0 -0
  2485. /package/dist/web/assets/{array-F4LNYbhF.js → array-BQrdK5nm.js} +0 -0
  2486. /package/dist/web/assets/{asciidoc-BGur0ue3.js → asciidoc-BsfbAXIK.js} +0 -0
  2487. /package/dist/web/assets/{asciidoc-BGur0ue3.js.br → asciidoc-BsfbAXIK.js.br} +0 -0
  2488. /package/dist/web/assets/{asciidoc-BGur0ue3.js.gz → asciidoc-BsfbAXIK.js.gz} +0 -0
  2489. /package/dist/web/assets/{asm-DOfgqCKD.js → asm-Vw5NMXjI.js} +0 -0
  2490. /package/dist/web/assets/{asm-DOfgqCKD.js.br → asm-Vw5NMXjI.js.br} +0 -0
  2491. /package/dist/web/assets/{asm-DOfgqCKD.js.gz → asm-Vw5NMXjI.js.gz} +0 -0
  2492. /package/dist/web/assets/{aurora-x-D64MWGxe.js → aurora-x-CoahU6sR.js} +0 -0
  2493. /package/dist/web/assets/{aurora-x-D64MWGxe.js.br → aurora-x-CoahU6sR.js.br} +0 -0
  2494. /package/dist/web/assets/{aurora-x-D64MWGxe.js.gz → aurora-x-CoahU6sR.js.gz} +0 -0
  2495. /package/dist/web/assets/{awk-B_r8LcWp.js → awk-ChKjCxHz.js} +0 -0
  2496. /package/dist/web/assets/{awk-B_r8LcWp.js.br → awk-ChKjCxHz.js.br} +0 -0
  2497. /package/dist/web/assets/{awk-B_r8LcWp.js.gz → awk-ChKjCxHz.js.gz} +0 -0
  2498. /package/dist/web/assets/{ayu-dark-DlDyr9-5.js → ayu-dark-By9RKxTf.js} +0 -0
  2499. /package/dist/web/assets/{ayu-dark-DlDyr9-5.js.br → ayu-dark-By9RKxTf.js.br} +0 -0
  2500. /package/dist/web/assets/{ayu-dark-DlDyr9-5.js.gz → ayu-dark-By9RKxTf.js.gz} +0 -0
  2501. /package/dist/web/assets/{ayu-light-BF0a181n.js → ayu-light-CEsgeLON.js} +0 -0
  2502. /package/dist/web/assets/{ayu-light-BF0a181n.js.br → ayu-light-CEsgeLON.js.br} +0 -0
  2503. /package/dist/web/assets/{ayu-light-BF0a181n.js.gz → ayu-light-CEsgeLON.js.gz} +0 -0
  2504. /package/dist/web/assets/{ayu-mirage-B6hnRsHM.js → ayu-mirage-CYrtwSLW.js} +0 -0
  2505. /package/dist/web/assets/{ayu-mirage-B6hnRsHM.js.br → ayu-mirage-CYrtwSLW.js.br} +0 -0
  2506. /package/dist/web/assets/{ayu-mirage-B6hnRsHM.js.gz → ayu-mirage-CYrtwSLW.js.gz} +0 -0
  2507. /package/dist/web/assets/{ballerina-CyhD34qA.js → ballerina-CCSVz22W.js} +0 -0
  2508. /package/dist/web/assets/{ballerina-CyhD34qA.js.br → ballerina-CCSVz22W.js.br} +0 -0
  2509. /package/dist/web/assets/{ballerina-CyhD34qA.js.gz → ballerina-CCSVz22W.js.gz} +0 -0
  2510. /package/dist/web/assets/{bat-wHB_k1YG.js → bat-DU4--CMj.js} +0 -0
  2511. /package/dist/web/assets/{bat-wHB_k1YG.js.br → bat-DU4--CMj.js.br} +0 -0
  2512. /package/dist/web/assets/{bat-wHB_k1YG.js.gz → bat-DU4--CMj.js.gz} +0 -0
  2513. /package/dist/web/assets/{beancount-SUF8MnzM.js → beancount-DF_tlRlF.js} +0 -0
  2514. /package/dist/web/assets/{beancount-SUF8MnzM.js.br → beancount-DF_tlRlF.js.br} +0 -0
  2515. /package/dist/web/assets/{beancount-SUF8MnzM.js.gz → beancount-DF_tlRlF.js.gz} +0 -0
  2516. /package/dist/web/assets/{berry-BP_34_jr.js → berry-CZTnatvO.js} +0 -0
  2517. /package/dist/web/assets/{berry-BP_34_jr.js.br → berry-CZTnatvO.js.br} +0 -0
  2518. /package/dist/web/assets/{berry-BP_34_jr.js.gz → berry-CZTnatvO.js.gz} +0 -0
  2519. /package/dist/web/assets/{bibtex-DKgKw2bN.js → bibtex-BSpXy8jk.js} +0 -0
  2520. /package/dist/web/assets/{bibtex-DKgKw2bN.js.br → bibtex-BSpXy8jk.js.br} +0 -0
  2521. /package/dist/web/assets/{bibtex-DKgKw2bN.js.gz → bibtex-BSpXy8jk.js.gz} +0 -0
  2522. /package/dist/web/assets/{bicep-BjU-KQeN.js → bicep-yv1Ydq5Z.js} +0 -0
  2523. /package/dist/web/assets/{bicep-BjU-KQeN.js.br → bicep-yv1Ydq5Z.js.br} +0 -0
  2524. /package/dist/web/assets/{bicep-BjU-KQeN.js.gz → bicep-yv1Ydq5Z.js.gz} +0 -0
  2525. /package/dist/web/assets/{bird2-CCFmrT2P.js → bird2-Db7Z7SMN.js} +0 -0
  2526. /package/dist/web/assets/{bird2-CCFmrT2P.js.br → bird2-Db7Z7SMN.js.br} +0 -0
  2527. /package/dist/web/assets/{bird2-CCFmrT2P.js.gz → bird2-Db7Z7SMN.js.gz} +0 -0
  2528. /package/dist/web/assets/{c-BX-1170_.js → c-D2iyQzEt.js} +0 -0
  2529. /package/dist/web/assets/{c-BX-1170_.js.br → c-D2iyQzEt.js.br} +0 -0
  2530. /package/dist/web/assets/{c-BX-1170_.js.gz → c-D2iyQzEt.js.gz} +0 -0
  2531. /package/dist/web/assets/{c3-DSc4IcLQ.js → c3-N4mKyst9.js} +0 -0
  2532. /package/dist/web/assets/{c3-DSc4IcLQ.js.br → c3-N4mKyst9.js.br} +0 -0
  2533. /package/dist/web/assets/{c3-DSc4IcLQ.js.gz → c3-N4mKyst9.js.gz} +0 -0
  2534. /package/dist/web/assets/{cadence-CUaLlWyn.js → cadence-BYK8tFFk.js} +0 -0
  2535. /package/dist/web/assets/{cadence-CUaLlWyn.js.br → cadence-BYK8tFFk.js.br} +0 -0
  2536. /package/dist/web/assets/{cadence-CUaLlWyn.js.gz → cadence-BYK8tFFk.js.gz} +0 -0
  2537. /package/dist/web/assets/{can-open-in-ppm-DeE2-kd5.js → can-open-in-ppm-CwrBTXOy.js} +0 -0
  2538. /package/dist/web/assets/{can-open-in-ppm-DeE2-kd5.js.br → can-open-in-ppm-CwrBTXOy.js.br} +0 -0
  2539. /package/dist/web/assets/{can-open-in-ppm-DeE2-kd5.js.gz → can-open-in-ppm-CwrBTXOy.js.gz} +0 -0
  2540. /package/dist/web/assets/{catppuccin-frappe-BT3IMDYa.js → catppuccin-frappe-BK9Tv2XG.js} +0 -0
  2541. /package/dist/web/assets/{catppuccin-frappe-BT3IMDYa.js.br → catppuccin-frappe-BK9Tv2XG.js.br} +0 -0
  2542. /package/dist/web/assets/{catppuccin-frappe-BT3IMDYa.js.gz → catppuccin-frappe-BK9Tv2XG.js.gz} +0 -0
  2543. /package/dist/web/assets/{catppuccin-latte-DM9i15n3.js → catppuccin-latte-De4mVCp3.js} +0 -0
  2544. /package/dist/web/assets/{catppuccin-latte-DM9i15n3.js.br → catppuccin-latte-De4mVCp3.js.br} +0 -0
  2545. /package/dist/web/assets/{catppuccin-latte-DM9i15n3.js.gz → catppuccin-latte-De4mVCp3.js.gz} +0 -0
  2546. /package/dist/web/assets/{catppuccin-macchiato-CAEDr_h3.js → catppuccin-macchiato-Bxt_D7cs.js} +0 -0
  2547. /package/dist/web/assets/{catppuccin-macchiato-CAEDr_h3.js.br → catppuccin-macchiato-Bxt_D7cs.js.br} +0 -0
  2548. /package/dist/web/assets/{catppuccin-macchiato-CAEDr_h3.js.gz → catppuccin-macchiato-Bxt_D7cs.js.gz} +0 -0
  2549. /package/dist/web/assets/{catppuccin-mocha-BzOmDckq.js → catppuccin-mocha-Dz2o8gN7.js} +0 -0
  2550. /package/dist/web/assets/{catppuccin-mocha-BzOmDckq.js.br → catppuccin-mocha-Dz2o8gN7.js.br} +0 -0
  2551. /package/dist/web/assets/{catppuccin-mocha-BzOmDckq.js.gz → catppuccin-mocha-Dz2o8gN7.js.gz} +0 -0
  2552. /package/dist/web/assets/{clarity-BijZXjQ6.js → clarity-BJdh0Pw-.js} +0 -0
  2553. /package/dist/web/assets/{clarity-BijZXjQ6.js.br → clarity-BJdh0Pw-.js.br} +0 -0
  2554. /package/dist/web/assets/{clarity-BijZXjQ6.js.gz → clarity-BJdh0Pw-.js.gz} +0 -0
  2555. /package/dist/web/assets/{clojure--ad2221W.js → clojure-DG-FYGzn.js} +0 -0
  2556. /package/dist/web/assets/{clojure--ad2221W.js.br → clojure-DG-FYGzn.js.br} +0 -0
  2557. /package/dist/web/assets/{clojure--ad2221W.js.gz → clojure-DG-FYGzn.js.gz} +0 -0
  2558. /package/dist/web/assets/{cmake-DyjUMpXU.js → cmake-D1imEXan.js} +0 -0
  2559. /package/dist/web/assets/{cmake-DyjUMpXU.js.br → cmake-D1imEXan.js.br} +0 -0
  2560. /package/dist/web/assets/{cmake-DyjUMpXU.js.gz → cmake-D1imEXan.js.gz} +0 -0
  2561. /package/dist/web/assets/{codeowners-BeMhKnC9.js → codeowners-YpylTFB5.js} +0 -0
  2562. /package/dist/web/assets/{codeql-BGtwwp5_.js → codeql-ajDEPgqi.js} +0 -0
  2563. /package/dist/web/assets/{codeql-BGtwwp5_.js.br → codeql-ajDEPgqi.js.br} +0 -0
  2564. /package/dist/web/assets/{codeql-BGtwwp5_.js.gz → codeql-ajDEPgqi.js.gz} +0 -0
  2565. /package/dist/web/assets/{common-lisp--ldIKs5M.js → common-lisp-C2sCrd-m.js} +0 -0
  2566. /package/dist/web/assets/{common-lisp--ldIKs5M.js.br → common-lisp-C2sCrd-m.js.br} +0 -0
  2567. /package/dist/web/assets/{common-lisp--ldIKs5M.js.gz → common-lisp-C2sCrd-m.js.gz} +0 -0
  2568. /package/dist/web/assets/{coq-CRn01_Db.js → coq-BqybyDc9.js} +0 -0
  2569. /package/dist/web/assets/{coq-CRn01_Db.js.br → coq-BqybyDc9.js.br} +0 -0
  2570. /package/dist/web/assets/{coq-CRn01_Db.js.gz → coq-BqybyDc9.js.gz} +0 -0
  2571. /package/dist/web/assets/{csharp-CuWM1IYq.js → csharp-nKCEiujy.js} +0 -0
  2572. /package/dist/web/assets/{csharp-CuWM1IYq.js.br → csharp-nKCEiujy.js.br} +0 -0
  2573. /package/dist/web/assets/{csharp-CuWM1IYq.js.gz → csharp-nKCEiujy.js.gz} +0 -0
  2574. /package/dist/web/assets/{css-CQ_jz6Vl.js → css-BwwQrFr3.js} +0 -0
  2575. /package/dist/web/assets/{css-CQ_jz6Vl.js.br → css-BwwQrFr3.js.br} +0 -0
  2576. /package/dist/web/assets/{css-CQ_jz6Vl.js.gz → css-BwwQrFr3.js.gz} +0 -0
  2577. /package/dist/web/assets/{csv-DP77pbR8.js → csv-Nh9vQwQm.js} +0 -0
  2578. /package/dist/web/assets/{csv-DP77pbR8.js.br → csv-Nh9vQwQm.js.br} +0 -0
  2579. /package/dist/web/assets/{csv-DP77pbR8.js.gz → csv-Nh9vQwQm.js.gz} +0 -0
  2580. /package/dist/web/assets/{cue-DScL5ELc.js → cue-Ch79RPsU.js} +0 -0
  2581. /package/dist/web/assets/{cue-DScL5ELc.js.br → cue-Ch79RPsU.js.br} +0 -0
  2582. /package/dist/web/assets/{cue-DScL5ELc.js.gz → cue-Ch79RPsU.js.gz} +0 -0
  2583. /package/dist/web/assets/{cypher-8ehI2vrw.js → cypher-CgiOQ6hs.js} +0 -0
  2584. /package/dist/web/assets/{cypher-8ehI2vrw.js.br → cypher-CgiOQ6hs.js.br} +0 -0
  2585. /package/dist/web/assets/{cypher-8ehI2vrw.js.gz → cypher-CgiOQ6hs.js.gz} +0 -0
  2586. /package/dist/web/assets/{cytoscape.esm-BokGhmK2.js → cytoscape.esm-9PBaSM25.js} +0 -0
  2587. /package/dist/web/assets/{cytoscape.esm-BokGhmK2.js.br → cytoscape.esm-9PBaSM25.js.br} +0 -0
  2588. /package/dist/web/assets/{cytoscape.esm-BokGhmK2.js.gz → cytoscape.esm-9PBaSM25.js.gz} +0 -0
  2589. /package/dist/web/assets/{d-BvFZUewv.js → d-CmBcySpH.js} +0 -0
  2590. /package/dist/web/assets/{d-BvFZUewv.js.br → d-CmBcySpH.js.br} +0 -0
  2591. /package/dist/web/assets/{d-BvFZUewv.js.gz → d-CmBcySpH.js.gz} +0 -0
  2592. /package/dist/web/assets/{dark-plus-DKLywSFP.js → dark-plus-COLEX2ui.js} +0 -0
  2593. /package/dist/web/assets/{dark-plus-DKLywSFP.js.br → dark-plus-COLEX2ui.js.br} +0 -0
  2594. /package/dist/web/assets/{dark-plus-DKLywSFP.js.gz → dark-plus-COLEX2ui.js.gz} +0 -0
  2595. /package/dist/web/assets/{dart-Cs_NJAZ7.js → dart-BTAArMcJ.js} +0 -0
  2596. /package/dist/web/assets/{dart-Cs_NJAZ7.js.br → dart-BTAArMcJ.js.br} +0 -0
  2597. /package/dist/web/assets/{dart-Cs_NJAZ7.js.gz → dart-BTAArMcJ.js.gz} +0 -0
  2598. /package/dist/web/assets/{dax-BB8KgXzI.js → dax-BbZzRY9i.js} +0 -0
  2599. /package/dist/web/assets/{dax-BB8KgXzI.js.br → dax-BbZzRY9i.js.br} +0 -0
  2600. /package/dist/web/assets/{dax-BB8KgXzI.js.gz → dax-BbZzRY9i.js.gz} +0 -0
  2601. /package/dist/web/assets/{defaultLocale-4xAk2LVU.js → defaultLocale-1Phej3f6.js} +0 -0
  2602. /package/dist/web/assets/{defaultLocale-4xAk2LVU.js.br → defaultLocale-1Phej3f6.js.br} +0 -0
  2603. /package/dist/web/assets/{defaultLocale-4xAk2LVU.js.gz → defaultLocale-1Phej3f6.js.gz} +0 -0
  2604. /package/dist/web/assets/{design-system-status-label-ekiLyjKn.js → design-system-status-label-Cus6e2Df.js} +0 -0
  2605. /package/dist/web/assets/{desktop-Cs6Sk5Pu.js → desktop-OmQvU3-J.js} +0 -0
  2606. /package/dist/web/assets/{desktop-Cs6Sk5Pu.js.br → desktop-OmQvU3-J.js.br} +0 -0
  2607. /package/dist/web/assets/{desktop-Cs6Sk5Pu.js.gz → desktop-OmQvU3-J.js.gz} +0 -0
  2608. /package/dist/web/assets/{diff-CXSq83h3.js → diff-BEPnb9Fb.js} +0 -0
  2609. /package/dist/web/assets/{diff-CXSq83h3.js.br → diff-BEPnb9Fb.js.br} +0 -0
  2610. /package/dist/web/assets/{diff-CXSq83h3.js.gz → diff-BEPnb9Fb.js.gz} +0 -0
  2611. /package/dist/web/assets/{dist-D7mSb2HC.js → dist--v_QGJF6.js} +0 -0
  2612. /package/dist/web/assets/{dist-D7mSb2HC.js.br → dist--v_QGJF6.js.br} +0 -0
  2613. /package/dist/web/assets/{dist-D7mSb2HC.js.gz → dist--v_QGJF6.js.gz} +0 -0
  2614. /package/dist/web/assets/{dist-0EbiTA3n.js → dist-ChawRilJ.js} +0 -0
  2615. /package/dist/web/assets/{dist-0EbiTA3n.js.br → dist-ChawRilJ.js.br} +0 -0
  2616. /package/dist/web/assets/{dist-0EbiTA3n.js.gz → dist-ChawRilJ.js.gz} +0 -0
  2617. /package/dist/web/assets/{docker-BX5p1mZ3.js → docker-Cg17HgTD.js} +0 -0
  2618. /package/dist/web/assets/{docker-BX5p1mZ3.js.br → docker-Cg17HgTD.js.br} +0 -0
  2619. /package/dist/web/assets/{docker-BX5p1mZ3.js.gz → docker-Cg17HgTD.js.gz} +0 -0
  2620. /package/dist/web/assets/{dotenv-D8xdMiRo.js → dotenv-DEMIaY7V.js} +0 -0
  2621. /package/dist/web/assets/{dotenv-D8xdMiRo.js.br → dotenv-DEMIaY7V.js.br} +0 -0
  2622. /package/dist/web/assets/{dotenv-D8xdMiRo.js.gz → dotenv-DEMIaY7V.js.gz} +0 -0
  2623. /package/dist/web/assets/{dracula-BNPKmiGE.js → dracula-BkCFq8SO.js} +0 -0
  2624. /package/dist/web/assets/{dracula-BNPKmiGE.js.br → dracula-BkCFq8SO.js.br} +0 -0
  2625. /package/dist/web/assets/{dracula-BNPKmiGE.js.gz → dracula-BkCFq8SO.js.gz} +0 -0
  2626. /package/dist/web/assets/{dracula-soft-Bv4lLEFc.js → dracula-soft-Cjp6-ltF.js} +0 -0
  2627. /package/dist/web/assets/{dracula-soft-Bv4lLEFc.js.br → dracula-soft-Cjp6-ltF.js.br} +0 -0
  2628. /package/dist/web/assets/{dracula-soft-Bv4lLEFc.js.gz → dracula-soft-Cjp6-ltF.js.gz} +0 -0
  2629. /package/dist/web/assets/{dream-maker-Yg8FPJu3.js → dream-maker-Ce7Y_UKj.js} +0 -0
  2630. /package/dist/web/assets/{dream-maker-Yg8FPJu3.js.br → dream-maker-Ce7Y_UKj.js.br} +0 -0
  2631. /package/dist/web/assets/{dream-maker-Yg8FPJu3.js.gz → dream-maker-Ce7Y_UKj.js.gz} +0 -0
  2632. /package/dist/web/assets/{editor-font-CBszn6vt.js → editor-font-CdxKRKX-.js} +0 -0
  2633. /package/dist/web/assets/{emacs-lisp-kBgNJmB7.js → emacs-lisp-BjpyfTbN.js} +0 -0
  2634. /package/dist/web/assets/{emacs-lisp-kBgNJmB7.js.br → emacs-lisp-BjpyfTbN.js.br} +0 -0
  2635. /package/dist/web/assets/{emacs-lisp-kBgNJmB7.js.gz → emacs-lisp-BjpyfTbN.js.gz} +0 -0
  2636. /package/dist/web/assets/{everforest-dark-7XTfQW4s.js → everforest-dark-9r4okw1s.js} +0 -0
  2637. /package/dist/web/assets/{everforest-dark-7XTfQW4s.js.br → everforest-dark-9r4okw1s.js.br} +0 -0
  2638. /package/dist/web/assets/{everforest-dark-7XTfQW4s.js.gz → everforest-dark-9r4okw1s.js.gz} +0 -0
  2639. /package/dist/web/assets/{everforest-light-CmPZPQmV.js → everforest-light-GCQTZ3Ju.js} +0 -0
  2640. /package/dist/web/assets/{everforest-light-CmPZPQmV.js.br → everforest-light-GCQTZ3Ju.js.br} +0 -0
  2641. /package/dist/web/assets/{everforest-light-CmPZPQmV.js.gz → everforest-light-GCQTZ3Ju.js.gz} +0 -0
  2642. /package/dist/web/assets/{fennel-Dm71IPM6.js → fennel-ITjY5Z6u.js} +0 -0
  2643. /package/dist/web/assets/{fennel-Dm71IPM6.js.br → fennel-ITjY5Z6u.js.br} +0 -0
  2644. /package/dist/web/assets/{fennel-Dm71IPM6.js.gz → fennel-ITjY5Z6u.js.gz} +0 -0
  2645. /package/dist/web/assets/{fish-CIzcfZjZ.js → fish-DP2uEzyg.js} +0 -0
  2646. /package/dist/web/assets/{fish-CIzcfZjZ.js.br → fish-DP2uEzyg.js.br} +0 -0
  2647. /package/dist/web/assets/{fish-CIzcfZjZ.js.gz → fish-DP2uEzyg.js.gz} +0 -0
  2648. /package/dist/web/assets/{fluent-DFSMEphj.js → fluent-irzaP1f6.js} +0 -0
  2649. /package/dist/web/assets/{fluent-DFSMEphj.js.br → fluent-irzaP1f6.js.br} +0 -0
  2650. /package/dist/web/assets/{fluent-DFSMEphj.js.gz → fluent-irzaP1f6.js.gz} +0 -0
  2651. /package/dist/web/assets/{format-bytes-FQmpZ25A.js → format-bytes-B2kC4sbB.js} +0 -0
  2652. /package/dist/web/assets/{format-date-BMtvCeb9.js → format-date-CSHaU2wN.js} +0 -0
  2653. /package/dist/web/assets/{fortran-free-form-xnlj2dLW.js → fortran-free-form-BAPoainr.js} +0 -0
  2654. /package/dist/web/assets/{fortran-free-form-xnlj2dLW.js.br → fortran-free-form-BAPoainr.js.br} +0 -0
  2655. /package/dist/web/assets/{fortran-free-form-xnlj2dLW.js.gz → fortran-free-form-BAPoainr.js.gz} +0 -0
  2656. /package/dist/web/assets/{gdscript-DFnznHD1.js → gdscript-DJ098V1z.js} +0 -0
  2657. /package/dist/web/assets/{gdscript-DFnznHD1.js.br → gdscript-DJ098V1z.js.br} +0 -0
  2658. /package/dist/web/assets/{gdscript-DFnznHD1.js.gz → gdscript-DJ098V1z.js.gz} +0 -0
  2659. /package/dist/web/assets/{gdshader-B9wvgXVU.js → gdshader-DS2Jfy-K.js} +0 -0
  2660. /package/dist/web/assets/{gdshader-B9wvgXVU.js.br → gdshader-DS2Jfy-K.js.br} +0 -0
  2661. /package/dist/web/assets/{gdshader-B9wvgXVU.js.gz → gdshader-DS2Jfy-K.js.gz} +0 -0
  2662. /package/dist/web/assets/{genie-Bz0RXdFf.js → genie-CqfOaFFx.js} +0 -0
  2663. /package/dist/web/assets/{genie-Bz0RXdFf.js.br → genie-CqfOaFFx.js.br} +0 -0
  2664. /package/dist/web/assets/{genie-Bz0RXdFf.js.gz → genie-CqfOaFFx.js.gz} +0 -0
  2665. /package/dist/web/assets/{gherkin-ZD8lWd_U.js → gherkin-CoZ2ucDH.js} +0 -0
  2666. /package/dist/web/assets/{gherkin-ZD8lWd_U.js.br → gherkin-CoZ2ucDH.js.br} +0 -0
  2667. /package/dist/web/assets/{gherkin-ZD8lWd_U.js.gz → gherkin-CoZ2ucDH.js.gz} +0 -0
  2668. /package/dist/web/assets/{github-dark-D8IE4lln.js → github-dark-BNLgnSO9.js} +0 -0
  2669. /package/dist/web/assets/{github-dark-D8IE4lln.js.br → github-dark-BNLgnSO9.js.br} +0 -0
  2670. /package/dist/web/assets/{github-dark-D8IE4lln.js.gz → github-dark-BNLgnSO9.js.gz} +0 -0
  2671. /package/dist/web/assets/{github-dark-default-Bv2-je5j.js → github-dark-default-CYlSggwi.js} +0 -0
  2672. /package/dist/web/assets/{github-dark-default-Bv2-je5j.js.br → github-dark-default-CYlSggwi.js.br} +0 -0
  2673. /package/dist/web/assets/{github-dark-default-Bv2-je5j.js.gz → github-dark-default-CYlSggwi.js.gz} +0 -0
  2674. /package/dist/web/assets/{github-dark-dimmed-Dn2Abfcl.js → github-dark-dimmed-DumUysDk.js} +0 -0
  2675. /package/dist/web/assets/{github-dark-dimmed-Dn2Abfcl.js.br → github-dark-dimmed-DumUysDk.js.br} +0 -0
  2676. /package/dist/web/assets/{github-dark-dimmed-Dn2Abfcl.js.gz → github-dark-dimmed-DumUysDk.js.gz} +0 -0
  2677. /package/dist/web/assets/{github-dark-high-contrast-CPYPXNHn.js → github-dark-high-contrast-TKrcDJ2I.js} +0 -0
  2678. /package/dist/web/assets/{github-dark-high-contrast-CPYPXNHn.js.br → github-dark-high-contrast-TKrcDJ2I.js.br} +0 -0
  2679. /package/dist/web/assets/{github-dark-high-contrast-CPYPXNHn.js.gz → github-dark-high-contrast-TKrcDJ2I.js.gz} +0 -0
  2680. /package/dist/web/assets/{github-light-CVOMBMvb.js → github-light-DVENFHLJ.js} +0 -0
  2681. /package/dist/web/assets/{github-light-CVOMBMvb.js.br → github-light-DVENFHLJ.js.br} +0 -0
  2682. /package/dist/web/assets/{github-light-CVOMBMvb.js.gz → github-light-DVENFHLJ.js.gz} +0 -0
  2683. /package/dist/web/assets/{github-light-default-6Ayk6lJY.js → github-light-default-DtN8AGcE.js} +0 -0
  2684. /package/dist/web/assets/{github-light-default-6Ayk6lJY.js.br → github-light-default-DtN8AGcE.js.br} +0 -0
  2685. /package/dist/web/assets/{github-light-default-6Ayk6lJY.js.gz → github-light-default-DtN8AGcE.js.gz} +0 -0
  2686. /package/dist/web/assets/{github-light-high-contrast-BTGKd6JI.js → github-light-high-contrast-NSyF37x4.js} +0 -0
  2687. /package/dist/web/assets/{github-light-high-contrast-BTGKd6JI.js.br → github-light-high-contrast-NSyF37x4.js.br} +0 -0
  2688. /package/dist/web/assets/{github-light-high-contrast-BTGKd6JI.js.gz → github-light-high-contrast-NSyF37x4.js.gz} +0 -0
  2689. /package/dist/web/assets/{gleam-UeA7_OU8.js → gleam-hp4NMSb5.js} +0 -0
  2690. /package/dist/web/assets/{gleam-UeA7_OU8.js.br → gleam-hp4NMSb5.js.br} +0 -0
  2691. /package/dist/web/assets/{gleam-UeA7_OU8.js.gz → gleam-hp4NMSb5.js.gz} +0 -0
  2692. /package/dist/web/assets/{gn-DrdNDhFj.js → gn-Dptw2PEu.js} +0 -0
  2693. /package/dist/web/assets/{gn-DrdNDhFj.js.br → gn-Dptw2PEu.js.br} +0 -0
  2694. /package/dist/web/assets/{gn-DrdNDhFj.js.gz → gn-Dptw2PEu.js.gz} +0 -0
  2695. /package/dist/web/assets/{gnuplot-D8vxhaGw.js → gnuplot-9juRzjwv.js} +0 -0
  2696. /package/dist/web/assets/{gnuplot-D8vxhaGw.js.br → gnuplot-9juRzjwv.js.br} +0 -0
  2697. /package/dist/web/assets/{gnuplot-D8vxhaGw.js.gz → gnuplot-9juRzjwv.js.gz} +0 -0
  2698. /package/dist/web/assets/{go-atNMhmH3.js → go-D-QLCda0.js} +0 -0
  2699. /package/dist/web/assets/{go-atNMhmH3.js.br → go-D-QLCda0.js.br} +0 -0
  2700. /package/dist/web/assets/{go-atNMhmH3.js.gz → go-D-QLCda0.js.gz} +0 -0
  2701. /package/dist/web/assets/{groovy-CLRzHDW2.js → groovy-DHKNy6Eh.js} +0 -0
  2702. /package/dist/web/assets/{groovy-CLRzHDW2.js.br → groovy-DHKNy6Eh.js.br} +0 -0
  2703. /package/dist/web/assets/{groovy-CLRzHDW2.js.gz → groovy-DHKNy6Eh.js.gz} +0 -0
  2704. /package/dist/web/assets/{gruvbox-dark-hard-CMSNCrAk.js → gruvbox-dark-hard-BFD6aQdB.js} +0 -0
  2705. /package/dist/web/assets/{gruvbox-dark-hard-CMSNCrAk.js.br → gruvbox-dark-hard-BFD6aQdB.js.br} +0 -0
  2706. /package/dist/web/assets/{gruvbox-dark-hard-CMSNCrAk.js.gz → gruvbox-dark-hard-BFD6aQdB.js.gz} +0 -0
  2707. /package/dist/web/assets/{gruvbox-dark-medium-CR5wAM1c.js → gruvbox-dark-medium-D5llYBNp.js} +0 -0
  2708. /package/dist/web/assets/{gruvbox-dark-medium-CR5wAM1c.js.br → gruvbox-dark-medium-D5llYBNp.js.br} +0 -0
  2709. /package/dist/web/assets/{gruvbox-dark-medium-CR5wAM1c.js.gz → gruvbox-dark-medium-D5llYBNp.js.gz} +0 -0
  2710. /package/dist/web/assets/{gruvbox-dark-soft-Ba1gP2O2.js → gruvbox-dark-soft-DOztQmNR.js} +0 -0
  2711. /package/dist/web/assets/{gruvbox-dark-soft-Ba1gP2O2.js.br → gruvbox-dark-soft-DOztQmNR.js.br} +0 -0
  2712. /package/dist/web/assets/{gruvbox-dark-soft-Ba1gP2O2.js.gz → gruvbox-dark-soft-DOztQmNR.js.gz} +0 -0
  2713. /package/dist/web/assets/{gruvbox-light-hard-ChSY383t.js → gruvbox-light-hard-BFGD-8Pd.js} +0 -0
  2714. /package/dist/web/assets/{gruvbox-light-hard-ChSY383t.js.br → gruvbox-light-hard-BFGD-8Pd.js.br} +0 -0
  2715. /package/dist/web/assets/{gruvbox-light-hard-ChSY383t.js.gz → gruvbox-light-hard-BFGD-8Pd.js.gz} +0 -0
  2716. /package/dist/web/assets/{gruvbox-light-medium-DebZzeA2.js → gruvbox-light-medium-DzoyXgT7.js} +0 -0
  2717. /package/dist/web/assets/{gruvbox-light-medium-DebZzeA2.js.br → gruvbox-light-medium-DzoyXgT7.js.br} +0 -0
  2718. /package/dist/web/assets/{gruvbox-light-medium-DebZzeA2.js.gz → gruvbox-light-medium-DzoyXgT7.js.gz} +0 -0
  2719. /package/dist/web/assets/{gruvbox-light-soft-CEWqv8Ew.js → gruvbox-light-soft-B1Ix2zLN.js} +0 -0
  2720. /package/dist/web/assets/{gruvbox-light-soft-CEWqv8Ew.js.br → gruvbox-light-soft-B1Ix2zLN.js.br} +0 -0
  2721. /package/dist/web/assets/{gruvbox-light-soft-CEWqv8Ew.js.gz → gruvbox-light-soft-B1Ix2zLN.js.gz} +0 -0
  2722. /package/dist/web/assets/{haskell-CkgCblz9.js → haskell-BnrJ0k7G.js} +0 -0
  2723. /package/dist/web/assets/{haskell-CkgCblz9.js.br → haskell-BnrJ0k7G.js.br} +0 -0
  2724. /package/dist/web/assets/{haskell-CkgCblz9.js.gz → haskell-BnrJ0k7G.js.gz} +0 -0
  2725. /package/dist/web/assets/{haxe-DwOdNXRl.js → haxe-DwShHT_-.js} +0 -0
  2726. /package/dist/web/assets/{haxe-DwOdNXRl.js.br → haxe-DwShHT_-.js.br} +0 -0
  2727. /package/dist/web/assets/{haxe-DwOdNXRl.js.gz → haxe-DwShHT_-.js.gz} +0 -0
  2728. /package/dist/web/assets/{hcl-DXsxN8nX.js → hcl-VOjEibVB.js} +0 -0
  2729. /package/dist/web/assets/{hcl-DXsxN8nX.js.br → hcl-VOjEibVB.js.br} +0 -0
  2730. /package/dist/web/assets/{hcl-DXsxN8nX.js.gz → hcl-VOjEibVB.js.gz} +0 -0
  2731. /package/dist/web/assets/{hjson-oBOZxrL4.js → hjson-BHEn7pNn.js} +0 -0
  2732. /package/dist/web/assets/{hjson-oBOZxrL4.js.br → hjson-BHEn7pNn.js.br} +0 -0
  2733. /package/dist/web/assets/{hjson-oBOZxrL4.js.gz → hjson-BHEn7pNn.js.gz} +0 -0
  2734. /package/dist/web/assets/{hlsl-VEZxDU3L.js → hlsl-CrvxlGii.js} +0 -0
  2735. /package/dist/web/assets/{hlsl-VEZxDU3L.js.br → hlsl-CrvxlGii.js.br} +0 -0
  2736. /package/dist/web/assets/{hlsl-VEZxDU3L.js.gz → hlsl-CrvxlGii.js.gz} +0 -0
  2737. /package/dist/web/assets/{horizon-C_xHTsMO.js → horizon-D3T-P0u6.js} +0 -0
  2738. /package/dist/web/assets/{horizon-C_xHTsMO.js.br → horizon-D3T-P0u6.js.br} +0 -0
  2739. /package/dist/web/assets/{horizon-C_xHTsMO.js.gz → horizon-D3T-P0u6.js.gz} +0 -0
  2740. /package/dist/web/assets/{horizon-bright-CJd-vMFG.js → horizon-bright-vifGsEdk.js} +0 -0
  2741. /package/dist/web/assets/{horizon-bright-CJd-vMFG.js.br → horizon-bright-vifGsEdk.js.br} +0 -0
  2742. /package/dist/web/assets/{horizon-bright-CJd-vMFG.js.gz → horizon-bright-vifGsEdk.js.gz} +0 -0
  2743. /package/dist/web/assets/{houston-BYOfZpV9.js → houston-IrOgT7r4.js} +0 -0
  2744. /package/dist/web/assets/{houston-BYOfZpV9.js.br → houston-IrOgT7r4.js.br} +0 -0
  2745. /package/dist/web/assets/{houston-BYOfZpV9.js.gz → houston-IrOgT7r4.js.gz} +0 -0
  2746. /package/dist/web/assets/{hy-DiruP4wR.js → hy-5eSgTJ8G.js} +0 -0
  2747. /package/dist/web/assets/{hy-DiruP4wR.js.br → hy-5eSgTJ8G.js.br} +0 -0
  2748. /package/dist/web/assets/{hy-DiruP4wR.js.gz → hy-5eSgTJ8G.js.gz} +0 -0
  2749. /package/dist/web/assets/{image-gallery-B16hO6Ab.js → image-gallery-BuxSgBug.js} +0 -0
  2750. /package/dist/web/assets/{image-preview-geometry-D4Ihz4UV.js → image-preview-geometry-CCq8rio7.js} +0 -0
  2751. /package/dist/web/assets/{imba-BBm5cmpQ.js → imba-Dp0I4DVl.js} +0 -0
  2752. /package/dist/web/assets/{imba-BBm5cmpQ.js.br → imba-Dp0I4DVl.js.br} +0 -0
  2753. /package/dist/web/assets/{imba-BBm5cmpQ.js.gz → imba-Dp0I4DVl.js.gz} +0 -0
  2754. /package/dist/web/assets/{ini-DIjchSIH.js → ini-CHDKad9O.js} +0 -0
  2755. /package/dist/web/assets/{ini-DIjchSIH.js.br → ini-CHDKad9O.js.br} +0 -0
  2756. /package/dist/web/assets/{ini-DIjchSIH.js.gz → ini-CHDKad9O.js.gz} +0 -0
  2757. /package/dist/web/assets/{init-Cf64k-PQ.js → init-YGhXRxki.js} +0 -0
  2758. /package/dist/web/assets/{isArrayLikeObject-DoNOpNUH.js → isArrayLikeObject-DHTG10am.js} +0 -0
  2759. /package/dist/web/assets/{isArrayLikeObject-DoNOpNUH.js.br → isArrayLikeObject-DHTG10am.js.br} +0 -0
  2760. /package/dist/web/assets/{isArrayLikeObject-DoNOpNUH.js.gz → isArrayLikeObject-DHTG10am.js.gz} +0 -0
  2761. /package/dist/web/assets/{java-BjdsRxXN.js → java-ClnCQCSW.js} +0 -0
  2762. /package/dist/web/assets/{java-BjdsRxXN.js.br → java-ClnCQCSW.js.br} +0 -0
  2763. /package/dist/web/assets/{java-BjdsRxXN.js.gz → java-ClnCQCSW.js.gz} +0 -0
  2764. /package/dist/web/assets/{javascript-R2SZ_OEC.js → javascript-D1PM1fYV.js} +0 -0
  2765. /package/dist/web/assets/{javascript-R2SZ_OEC.js.br → javascript-D1PM1fYV.js.br} +0 -0
  2766. /package/dist/web/assets/{javascript-R2SZ_OEC.js.gz → javascript-D1PM1fYV.js.gz} +0 -0
  2767. /package/dist/web/assets/{json-CYCJeTwK.js → json-DELY1EIR.js} +0 -0
  2768. /package/dist/web/assets/{json-CYCJeTwK.js.br → json-DELY1EIR.js.br} +0 -0
  2769. /package/dist/web/assets/{json-CYCJeTwK.js.gz → json-DELY1EIR.js.gz} +0 -0
  2770. /package/dist/web/assets/{json5-0Pz845K0.js → json5-D6f_uNwJ.js} +0 -0
  2771. /package/dist/web/assets/{json5-0Pz845K0.js.br → json5-D6f_uNwJ.js.br} +0 -0
  2772. /package/dist/web/assets/{json5-0Pz845K0.js.gz → json5-D6f_uNwJ.js.gz} +0 -0
  2773. /package/dist/web/assets/{jsonc-B0jdT4uM.js → jsonc-DrHCdmos.js} +0 -0
  2774. /package/dist/web/assets/{jsonc-B0jdT4uM.js.br → jsonc-DrHCdmos.js.br} +0 -0
  2775. /package/dist/web/assets/{jsonc-B0jdT4uM.js.gz → jsonc-DrHCdmos.js.gz} +0 -0
  2776. /package/dist/web/assets/{jsonl-CdvFKZtz.js → jsonl-Cwc3cXEL.js} +0 -0
  2777. /package/dist/web/assets/{jsonl-CdvFKZtz.js.br → jsonl-Cwc3cXEL.js.br} +0 -0
  2778. /package/dist/web/assets/{jsonl-CdvFKZtz.js.gz → jsonl-Cwc3cXEL.js.gz} +0 -0
  2779. /package/dist/web/assets/{jsonnet-BYd5ZGqe.js → jsonnet-BwZfaIFT.js} +0 -0
  2780. /package/dist/web/assets/{jsonnet-BYd5ZGqe.js.br → jsonnet-BwZfaIFT.js.br} +0 -0
  2781. /package/dist/web/assets/{jsonnet-BYd5ZGqe.js.gz → jsonnet-BwZfaIFT.js.gz} +0 -0
  2782. /package/dist/web/assets/{jssm-BlBU_IK1.js → jssm-BpEmg_MT.js} +0 -0
  2783. /package/dist/web/assets/{jssm-BlBU_IK1.js.br → jssm-BpEmg_MT.js.br} +0 -0
  2784. /package/dist/web/assets/{jssm-BlBU_IK1.js.gz → jssm-BpEmg_MT.js.gz} +0 -0
  2785. /package/dist/web/assets/{jsx-CsWR7aMm.js → jsx-BOrwA6ld.js} +0 -0
  2786. /package/dist/web/assets/{jsx-CsWR7aMm.js.br → jsx-BOrwA6ld.js.br} +0 -0
  2787. /package/dist/web/assets/{jsx-CsWR7aMm.js.gz → jsx-BOrwA6ld.js.gz} +0 -0
  2788. /package/dist/web/assets/{kanagawa-dragon-C6ogFc3X.js → kanagawa-dragon-DRfVaGIX.js} +0 -0
  2789. /package/dist/web/assets/{kanagawa-dragon-C6ogFc3X.js.br → kanagawa-dragon-DRfVaGIX.js.br} +0 -0
  2790. /package/dist/web/assets/{kanagawa-dragon-C6ogFc3X.js.gz → kanagawa-dragon-DRfVaGIX.js.gz} +0 -0
  2791. /package/dist/web/assets/{kanagawa-lotus-8esZNUbA.js → kanagawa-lotus-CjOlny0Q.js} +0 -0
  2792. /package/dist/web/assets/{kanagawa-lotus-8esZNUbA.js.br → kanagawa-lotus-CjOlny0Q.js.br} +0 -0
  2793. /package/dist/web/assets/{kanagawa-lotus-8esZNUbA.js.gz → kanagawa-lotus-CjOlny0Q.js.gz} +0 -0
  2794. /package/dist/web/assets/{kanagawa-wave-C-yWQ6RD.js → kanagawa-wave-DvdM88a4.js} +0 -0
  2795. /package/dist/web/assets/{kanagawa-wave-C-yWQ6RD.js.br → kanagawa-wave-DvdM88a4.js.br} +0 -0
  2796. /package/dist/web/assets/{kanagawa-wave-C-yWQ6RD.js.gz → kanagawa-wave-DvdM88a4.js.gz} +0 -0
  2797. /package/dist/web/assets/{katex-Cz0KLyXA.js → katex-BHtqYBze.js} +0 -0
  2798. /package/dist/web/assets/{katex-Cz0KLyXA.js.br → katex-BHtqYBze.js.br} +0 -0
  2799. /package/dist/web/assets/{katex-Cz0KLyXA.js.gz → katex-BHtqYBze.js.gz} +0 -0
  2800. /package/dist/web/assets/{kdl-D712OVXR.js → kdl-DSo3PvM0.js} +0 -0
  2801. /package/dist/web/assets/{kdl-D712OVXR.js.br → kdl-DSo3PvM0.js.br} +0 -0
  2802. /package/dist/web/assets/{kdl-D712OVXR.js.gz → kdl-DSo3PvM0.js.gz} +0 -0
  2803. /package/dist/web/assets/{kotlin-BEUa7XzN.js → kotlin-BV8TwCGu.js} +0 -0
  2804. /package/dist/web/assets/{kotlin-BEUa7XzN.js.br → kotlin-BV8TwCGu.js.br} +0 -0
  2805. /package/dist/web/assets/{kotlin-BEUa7XzN.js.gz → kotlin-BV8TwCGu.js.gz} +0 -0
  2806. /package/dist/web/assets/{kusto-n4J6aIey.js → kusto-DCo1Fdmm.js} +0 -0
  2807. /package/dist/web/assets/{kusto-n4J6aIey.js.br → kusto-DCo1Fdmm.js.br} +0 -0
  2808. /package/dist/web/assets/{kusto-n4J6aIey.js.gz → kusto-DCo1Fdmm.js.gz} +0 -0
  2809. /package/dist/web/assets/{laserwave-CddL9sH-.js → laserwave-DPX9FvD9.js} +0 -0
  2810. /package/dist/web/assets/{laserwave-CddL9sH-.js.br → laserwave-DPX9FvD9.js.br} +0 -0
  2811. /package/dist/web/assets/{laserwave-CddL9sH-.js.gz → laserwave-DPX9FvD9.js.gz} +0 -0
  2812. /package/dist/web/assets/{lean-CS8dnaPi.js → lean-Cya8dqZu.js} +0 -0
  2813. /package/dist/web/assets/{lean-CS8dnaPi.js.br → lean-Cya8dqZu.js.br} +0 -0
  2814. /package/dist/web/assets/{lean-CS8dnaPi.js.gz → lean-Cya8dqZu.js.gz} +0 -0
  2815. /package/dist/web/assets/{less-D7VWEXeK.js → less-CJUPgkIs.js} +0 -0
  2816. /package/dist/web/assets/{less-D7VWEXeK.js.br → less-CJUPgkIs.js.br} +0 -0
  2817. /package/dist/web/assets/{less-D7VWEXeK.js.gz → less-CJUPgkIs.js.gz} +0 -0
  2818. /package/dist/web/assets/{libesm-5wREk7JN.js → libesm-B6LsX5wH.js} +0 -0
  2819. /package/dist/web/assets/{libesm-5wREk7JN.js.br → libesm-B6LsX5wH.js.br} +0 -0
  2820. /package/dist/web/assets/{libesm-5wREk7JN.js.gz → libesm-B6LsX5wH.js.gz} +0 -0
  2821. /package/dist/web/assets/{light-plus-DUh-yC9k.js → light-plus-BXXrlFJH.js} +0 -0
  2822. /package/dist/web/assets/{light-plus-DUh-yC9k.js.br → light-plus-BXXrlFJH.js.br} +0 -0
  2823. /package/dist/web/assets/{light-plus-DUh-yC9k.js.gz → light-plus-BXXrlFJH.js.gz} +0 -0
  2824. /package/dist/web/assets/{llvm-P1D8XyMB.js → llvm-CUbQanZr.js} +0 -0
  2825. /package/dist/web/assets/{llvm-P1D8XyMB.js.br → llvm-CUbQanZr.js.br} +0 -0
  2826. /package/dist/web/assets/{llvm-P1D8XyMB.js.gz → llvm-CUbQanZr.js.gz} +0 -0
  2827. /package/dist/web/assets/{log-BGft0RQz.js → log-B3fFlSMd.js} +0 -0
  2828. /package/dist/web/assets/{log-BGft0RQz.js.br → log-B3fFlSMd.js.br} +0 -0
  2829. /package/dist/web/assets/{log-BGft0RQz.js.gz → log-B3fFlSMd.js.gz} +0 -0
  2830. /package/dist/web/assets/{logo-uFZx2JEw.js → logo-ucAyw6zf.js} +0 -0
  2831. /package/dist/web/assets/{logo-uFZx2JEw.js.br → logo-ucAyw6zf.js.br} +0 -0
  2832. /package/dist/web/assets/{logo-uFZx2JEw.js.gz → logo-ucAyw6zf.js.gz} +0 -0
  2833. /package/dist/web/assets/{luau-aDpnpIe3.js → luau-C4l6TSTB.js} +0 -0
  2834. /package/dist/web/assets/{luau-aDpnpIe3.js.br → luau-C4l6TSTB.js.br} +0 -0
  2835. /package/dist/web/assets/{luau-aDpnpIe3.js.gz → luau-C4l6TSTB.js.gz} +0 -0
  2836. /package/dist/web/assets/{make-DwjpJeU5.js → make-CDtGIVc7.js} +0 -0
  2837. /package/dist/web/assets/{make-DwjpJeU5.js.br → make-CDtGIVc7.js.br} +0 -0
  2838. /package/dist/web/assets/{make-DwjpJeU5.js.gz → make-CDtGIVc7.js.gz} +0 -0
  2839. /package/dist/web/assets/{markdown-DC-eWqXi.js → markdown-CH1zKu2p.js} +0 -0
  2840. /package/dist/web/assets/{markdown-DC-eWqXi.js.br → markdown-CH1zKu2p.js.br} +0 -0
  2841. /package/dist/web/assets/{markdown-DC-eWqXi.js.gz → markdown-CH1zKu2p.js.gz} +0 -0
  2842. /package/dist/web/assets/{marked.esm-DDb9MclE.js → marked.esm-jqwIt-AK.js} +0 -0
  2843. /package/dist/web/assets/{marked.esm-DDb9MclE.js.br → marked.esm-jqwIt-AK.js.br} +0 -0
  2844. /package/dist/web/assets/{marked.esm-DDb9MclE.js.gz → marked.esm-jqwIt-AK.js.gz} +0 -0
  2845. /package/dist/web/assets/{material-theme-9BivM5cB.js → material-theme-CEuGVTmh.js} +0 -0
  2846. /package/dist/web/assets/{material-theme-9BivM5cB.js.br → material-theme-CEuGVTmh.js.br} +0 -0
  2847. /package/dist/web/assets/{material-theme-9BivM5cB.js.gz → material-theme-CEuGVTmh.js.gz} +0 -0
  2848. /package/dist/web/assets/{material-theme-darker-Bg7I3WIw.js → material-theme-darker-CUZ3MoIr.js} +0 -0
  2849. /package/dist/web/assets/{material-theme-darker-Bg7I3WIw.js.br → material-theme-darker-CUZ3MoIr.js.br} +0 -0
  2850. /package/dist/web/assets/{material-theme-darker-Bg7I3WIw.js.gz → material-theme-darker-CUZ3MoIr.js.gz} +0 -0
  2851. /package/dist/web/assets/{material-theme-lighter-BoEshpBb.js → material-theme-lighter-DxAqJSid.js} +0 -0
  2852. /package/dist/web/assets/{material-theme-lighter-BoEshpBb.js.br → material-theme-lighter-DxAqJSid.js.br} +0 -0
  2853. /package/dist/web/assets/{material-theme-lighter-BoEshpBb.js.gz → material-theme-lighter-DxAqJSid.js.gz} +0 -0
  2854. /package/dist/web/assets/{material-theme-ocean-CmKcBlBP.js → material-theme-ocean-BSvvHJp6.js} +0 -0
  2855. /package/dist/web/assets/{material-theme-ocean-CmKcBlBP.js.br → material-theme-ocean-BSvvHJp6.js.br} +0 -0
  2856. /package/dist/web/assets/{material-theme-ocean-CmKcBlBP.js.gz → material-theme-ocean-BSvvHJp6.js.gz} +0 -0
  2857. /package/dist/web/assets/{material-theme-palenight-CUyfHC0C.js → material-theme-palenight-QVOl50_m.js} +0 -0
  2858. /package/dist/web/assets/{material-theme-palenight-CUyfHC0C.js.br → material-theme-palenight-QVOl50_m.js.br} +0 -0
  2859. /package/dist/web/assets/{material-theme-palenight-CUyfHC0C.js.gz → material-theme-palenight-QVOl50_m.js.gz} +0 -0
  2860. /package/dist/web/assets/{math-DAaFbMeh.js → math-iYw0Gln4.js} +0 -0
  2861. /package/dist/web/assets/{matlab-CqBfVqYF.js → matlab-CZLQLwUp.js} +0 -0
  2862. /package/dist/web/assets/{matlab-CqBfVqYF.js.br → matlab-CZLQLwUp.js.br} +0 -0
  2863. /package/dist/web/assets/{matlab-CqBfVqYF.js.gz → matlab-CZLQLwUp.js.gz} +0 -0
  2864. /package/dist/web/assets/{mdx-CdC2mVzF.js → mdx-DO4NJsOo.js} +0 -0
  2865. /package/dist/web/assets/{mdx-CdC2mVzF.js.br → mdx-DO4NJsOo.js.br} +0 -0
  2866. /package/dist/web/assets/{mdx-CdC2mVzF.js.gz → mdx-DO4NJsOo.js.gz} +0 -0
  2867. /package/dist/web/assets/{mermaid-B542RnGP.js → mermaid-CIwzg1uO.js} +0 -0
  2868. /package/dist/web/assets/{mermaid-B542RnGP.js.br → mermaid-CIwzg1uO.js.br} +0 -0
  2869. /package/dist/web/assets/{mermaid-B542RnGP.js.gz → mermaid-CIwzg1uO.js.gz} +0 -0
  2870. /package/dist/web/assets/{metric-chart-canvas-D7f-LQ8x.js → metric-chart-canvas-LAMaVJTu.js} +0 -0
  2871. /package/dist/web/assets/{metric-chart-canvas-D7f-LQ8x.js.br → metric-chart-canvas-LAMaVJTu.js.br} +0 -0
  2872. /package/dist/web/assets/{metric-chart-canvas-D7f-LQ8x.js.gz → metric-chart-canvas-LAMaVJTu.js.gz} +0 -0
  2873. /package/dist/web/assets/{min-dark-uGP-9UE_.js → min-dark-BdIgslXy.js} +0 -0
  2874. /package/dist/web/assets/{min-dark-uGP-9UE_.js.br → min-dark-BdIgslXy.js.br} +0 -0
  2875. /package/dist/web/assets/{min-dark-uGP-9UE_.js.gz → min-dark-BdIgslXy.js.gz} +0 -0
  2876. /package/dist/web/assets/{min-light-BkFlXt3G.js → min-light-DyU-T1r2.js} +0 -0
  2877. /package/dist/web/assets/{min-light-BkFlXt3G.js.br → min-light-DyU-T1r2.js.br} +0 -0
  2878. /package/dist/web/assets/{min-light-BkFlXt3G.js.gz → min-light-DyU-T1r2.js.gz} +0 -0
  2879. /package/dist/web/assets/{mipsasm-CkaxcMA-.js → mipsasm-DRad-Klm.js} +0 -0
  2880. /package/dist/web/assets/{mipsasm-CkaxcMA-.js.br → mipsasm-DRad-Klm.js.br} +0 -0
  2881. /package/dist/web/assets/{mipsasm-CkaxcMA-.js.gz → mipsasm-DRad-Klm.js.gz} +0 -0
  2882. /package/dist/web/assets/{mojo-DDh7AQLv.js → mojo-DXp5LDOc.js} +0 -0
  2883. /package/dist/web/assets/{mojo-DDh7AQLv.js.br → mojo-DXp5LDOc.js.br} +0 -0
  2884. /package/dist/web/assets/{mojo-DDh7AQLv.js.gz → mojo-DXp5LDOc.js.gz} +0 -0
  2885. /package/dist/web/assets/{monokai-BA4dkSrE.js → monokai-BiKX3qby.js} +0 -0
  2886. /package/dist/web/assets/{monokai-BA4dkSrE.js.br → monokai-BiKX3qby.js.br} +0 -0
  2887. /package/dist/web/assets/{monokai-BA4dkSrE.js.gz → monokai-BiKX3qby.js.gz} +0 -0
  2888. /package/dist/web/assets/{moonbit-DGxZDax4.js → moonbit-BOUoLF5r.js} +0 -0
  2889. /package/dist/web/assets/{moonbit-DGxZDax4.js.br → moonbit-BOUoLF5r.js.br} +0 -0
  2890. /package/dist/web/assets/{moonbit-DGxZDax4.js.gz → moonbit-BOUoLF5r.js.gz} +0 -0
  2891. /package/dist/web/assets/{move-C1HZaVNc.js → move-Dlk64FWK.js} +0 -0
  2892. /package/dist/web/assets/{move-C1HZaVNc.js.br → move-Dlk64FWK.js.br} +0 -0
  2893. /package/dist/web/assets/{move-C1HZaVNc.js.gz → move-Dlk64FWK.js.gz} +0 -0
  2894. /package/dist/web/assets/{narrat-g4c9qhYS.js → narrat-B-qd2Lh0.js} +0 -0
  2895. /package/dist/web/assets/{narrat-g4c9qhYS.js.br → narrat-B-qd2Lh0.js.br} +0 -0
  2896. /package/dist/web/assets/{narrat-g4c9qhYS.js.gz → narrat-B-qd2Lh0.js.gz} +0 -0
  2897. /package/dist/web/assets/{nextflow-groovy-CisdbLPv.js → nextflow-groovy-iAMYas0F.js} +0 -0
  2898. /package/dist/web/assets/{nextflow-groovy-CisdbLPv.js.br → nextflow-groovy-iAMYas0F.js.br} +0 -0
  2899. /package/dist/web/assets/{nextflow-groovy-CisdbLPv.js.gz → nextflow-groovy-iAMYas0F.js.gz} +0 -0
  2900. /package/dist/web/assets/{night-owl-ds7NNgBg.js → night-owl-3YNqjftR.js} +0 -0
  2901. /package/dist/web/assets/{night-owl-ds7NNgBg.js.br → night-owl-3YNqjftR.js.br} +0 -0
  2902. /package/dist/web/assets/{night-owl-ds7NNgBg.js.gz → night-owl-3YNqjftR.js.gz} +0 -0
  2903. /package/dist/web/assets/{night-owl-light-DurCGAfC.js → night-owl-light-GIncHb5w.js} +0 -0
  2904. /package/dist/web/assets/{night-owl-light-DurCGAfC.js.br → night-owl-light-GIncHb5w.js.br} +0 -0
  2905. /package/dist/web/assets/{night-owl-light-DurCGAfC.js.gz → night-owl-light-GIncHb5w.js.gz} +0 -0
  2906. /package/dist/web/assets/{nix-D7kCv9F9.js → nix-xjlEb3uw.js} +0 -0
  2907. /package/dist/web/assets/{nix-D7kCv9F9.js.br → nix-xjlEb3uw.js.br} +0 -0
  2908. /package/dist/web/assets/{nix-D7kCv9F9.js.gz → nix-xjlEb3uw.js.gz} +0 -0
  2909. /package/dist/web/assets/{nord-C-O3ceAv.js → nord-C8tvWx7P.js} +0 -0
  2910. /package/dist/web/assets/{nord-C-O3ceAv.js.br → nord-C8tvWx7P.js.br} +0 -0
  2911. /package/dist/web/assets/{nord-C-O3ceAv.js.gz → nord-C8tvWx7P.js.gz} +0 -0
  2912. /package/dist/web/assets/{nushell-oUYTGkzu.js → nushell-BqBb4pU6.js} +0 -0
  2913. /package/dist/web/assets/{nushell-oUYTGkzu.js.br → nushell-BqBb4pU6.js.br} +0 -0
  2914. /package/dist/web/assets/{nushell-oUYTGkzu.js.gz → nushell-BqBb4pU6.js.gz} +0 -0
  2915. /package/dist/web/assets/{objective-c-CzqHoRSj.js → objective-c-Bk6s0Cn5.js} +0 -0
  2916. /package/dist/web/assets/{objective-c-CzqHoRSj.js.br → objective-c-Bk6s0Cn5.js.br} +0 -0
  2917. /package/dist/web/assets/{objective-c-CzqHoRSj.js.gz → objective-c-Bk6s0Cn5.js.gz} +0 -0
  2918. /package/dist/web/assets/{objective-cpp-DJ8fgF2d.js → objective-cpp-DGTVWQ3V.js} +0 -0
  2919. /package/dist/web/assets/{objective-cpp-DJ8fgF2d.js.br → objective-cpp-DGTVWQ3V.js.br} +0 -0
  2920. /package/dist/web/assets/{objective-cpp-DJ8fgF2d.js.gz → objective-cpp-DGTVWQ3V.js.gz} +0 -0
  2921. /package/dist/web/assets/{ocaml-B_nWFfqA.js → ocaml-D6wPQ4kw.js} +0 -0
  2922. /package/dist/web/assets/{ocaml-B_nWFfqA.js.br → ocaml-D6wPQ4kw.js.br} +0 -0
  2923. /package/dist/web/assets/{ocaml-B_nWFfqA.js.gz → ocaml-D6wPQ4kw.js.gz} +0 -0
  2924. /package/dist/web/assets/{odin-BUQfWY13.js → odin-C9mw2xRN.js} +0 -0
  2925. /package/dist/web/assets/{odin-BUQfWY13.js.br → odin-C9mw2xRN.js.br} +0 -0
  2926. /package/dist/web/assets/{odin-BUQfWY13.js.gz → odin-C9mw2xRN.js.gz} +0 -0
  2927. /package/dist/web/assets/{one-dark-pro-DJQor_US.js → one-dark-pro-SMBlneFb.js} +0 -0
  2928. /package/dist/web/assets/{one-dark-pro-DJQor_US.js.br → one-dark-pro-SMBlneFb.js.br} +0 -0
  2929. /package/dist/web/assets/{one-dark-pro-DJQor_US.js.gz → one-dark-pro-SMBlneFb.js.gz} +0 -0
  2930. /package/dist/web/assets/{one-light-BMvQ1R6M.js → one-light-C9JMU1Cx.js} +0 -0
  2931. /package/dist/web/assets/{one-light-BMvQ1R6M.js.br → one-light-C9JMU1Cx.js.br} +0 -0
  2932. /package/dist/web/assets/{one-light-BMvQ1R6M.js.gz → one-light-C9JMU1Cx.js.gz} +0 -0
  2933. /package/dist/web/assets/{openscad-DTylcqP8.js → openscad-C0I9CtuA.js} +0 -0
  2934. /package/dist/web/assets/{openscad-DTylcqP8.js.br → openscad-C0I9CtuA.js.br} +0 -0
  2935. /package/dist/web/assets/{openscad-DTylcqP8.js.gz → openscad-C0I9CtuA.js.gz} +0 -0
  2936. /package/dist/web/assets/{pascal-D0N_7LGg.js → pascal-D0z4DJnY.js} +0 -0
  2937. /package/dist/web/assets/{pascal-D0N_7LGg.js.br → pascal-D0z4DJnY.js.br} +0 -0
  2938. /package/dist/web/assets/{pascal-D0N_7LGg.js.gz → pascal-D0z4DJnY.js.gz} +0 -0
  2939. /package/dist/web/assets/{path-LyOWnqX5.js → path-z62pEMqs.js} +0 -0
  2940. /package/dist/web/assets/{path-LyOWnqX5.js.br → path-z62pEMqs.js.br} +0 -0
  2941. /package/dist/web/assets/{path-LyOWnqX5.js.gz → path-z62pEMqs.js.gz} +0 -0
  2942. /package/dist/web/assets/{pkl-HQNdCmJT.js → pkl-CITYNGVz.js} +0 -0
  2943. /package/dist/web/assets/{pkl-HQNdCmJT.js.br → pkl-CITYNGVz.js.br} +0 -0
  2944. /package/dist/web/assets/{pkl-HQNdCmJT.js.gz → pkl-CITYNGVz.js.gz} +0 -0
  2945. /package/dist/web/assets/{plastic-QMrjD10f.js → plastic-Bf0T6rmg.js} +0 -0
  2946. /package/dist/web/assets/{plastic-QMrjD10f.js.br → plastic-Bf0T6rmg.js.br} +0 -0
  2947. /package/dist/web/assets/{plastic-QMrjD10f.js.gz → plastic-Bf0T6rmg.js.gz} +0 -0
  2948. /package/dist/web/assets/{plsql-Ds9EzM4F.js → plsql-Chr907pu.js} +0 -0
  2949. /package/dist/web/assets/{plsql-Ds9EzM4F.js.br → plsql-Chr907pu.js.br} +0 -0
  2950. /package/dist/web/assets/{plsql-Ds9EzM4F.js.gz → plsql-Chr907pu.js.gz} +0 -0
  2951. /package/dist/web/assets/{po-CM8JtETE.js → po-07U75CYV.js} +0 -0
  2952. /package/dist/web/assets/{po-CM8JtETE.js.br → po-07U75CYV.js.br} +0 -0
  2953. /package/dist/web/assets/{po-CM8JtETE.js.gz → po-07U75CYV.js.gz} +0 -0
  2954. /package/dist/web/assets/{poimandres-fat7kglW.js → poimandres-B0T4qwXY.js} +0 -0
  2955. /package/dist/web/assets/{poimandres-fat7kglW.js.br → poimandres-B0T4qwXY.js.br} +0 -0
  2956. /package/dist/web/assets/{poimandres-fat7kglW.js.gz → poimandres-B0T4qwXY.js.gz} +0 -0
  2957. /package/dist/web/assets/{polar-CnOzO2UD.js → polar-BvNJMMV5.js} +0 -0
  2958. /package/dist/web/assets/{polar-CnOzO2UD.js.br → polar-BvNJMMV5.js.br} +0 -0
  2959. /package/dist/web/assets/{polar-CnOzO2UD.js.gz → polar-BvNJMMV5.js.gz} +0 -0
  2960. /package/dist/web/assets/{portal-container-context-NFSuymMu.js → portal-container-context-BXAsDqrB.js} +0 -0
  2961. /package/dist/web/assets/{postcss-BaqfiaQC.js → postcss-BSdf-zzo.js} +0 -0
  2962. /package/dist/web/assets/{postcss-BaqfiaQC.js.br → postcss-BSdf-zzo.js.br} +0 -0
  2963. /package/dist/web/assets/{postcss-BaqfiaQC.js.gz → postcss-BSdf-zzo.js.gz} +0 -0
  2964. /package/dist/web/assets/{powerquery-CtMX6ik_.js → powerquery-B2Ad_HK8.js} +0 -0
  2965. /package/dist/web/assets/{powerquery-CtMX6ik_.js.br → powerquery-B2Ad_HK8.js.br} +0 -0
  2966. /package/dist/web/assets/{powerquery-CtMX6ik_.js.gz → powerquery-B2Ad_HK8.js.gz} +0 -0
  2967. /package/dist/web/assets/{powershell-BaTgHUxS.js → powershell-DO5WY2v2.js} +0 -0
  2968. /package/dist/web/assets/{powershell-BaTgHUxS.js.br → powershell-DO5WY2v2.js.br} +0 -0
  2969. /package/dist/web/assets/{powershell-BaTgHUxS.js.gz → powershell-DO5WY2v2.js.gz} +0 -0
  2970. /package/dist/web/assets/{preload-helper-BEFjQwLd.js → preload-helper-CM8YhcCa.js} +0 -0
  2971. /package/dist/web/assets/{preload-helper-BEFjQwLd.js.br → preload-helper-CM8YhcCa.js.br} +0 -0
  2972. /package/dist/web/assets/{preload-helper-BEFjQwLd.js.gz → preload-helper-CM8YhcCa.js.gz} +0 -0
  2973. /package/dist/web/assets/{prisma-BLaoUK-7.js → prisma-BfaRPYzs.js} +0 -0
  2974. /package/dist/web/assets/{prisma-BLaoUK-7.js.br → prisma-BfaRPYzs.js.br} +0 -0
  2975. /package/dist/web/assets/{prisma-BLaoUK-7.js.gz → prisma-BfaRPYzs.js.gz} +0 -0
  2976. /package/dist/web/assets/{prolog-0I-GhZLt.js → prolog-Cz0Nue9e.js} +0 -0
  2977. /package/dist/web/assets/{prolog-0I-GhZLt.js.br → prolog-Cz0Nue9e.js.br} +0 -0
  2978. /package/dist/web/assets/{prolog-0I-GhZLt.js.gz → prolog-Cz0Nue9e.js.gz} +0 -0
  2979. /package/dist/web/assets/{proto-CHfg51WI.js → proto-FVleUZJO.js} +0 -0
  2980. /package/dist/web/assets/{proto-CHfg51WI.js.br → proto-FVleUZJO.js.br} +0 -0
  2981. /package/dist/web/assets/{proto-CHfg51WI.js.gz → proto-FVleUZJO.js.gz} +0 -0
  2982. /package/dist/web/assets/{puppet-B0WZdEhx.js → puppet-BEX5o7hE.js} +0 -0
  2983. /package/dist/web/assets/{puppet-B0WZdEhx.js.br → puppet-BEX5o7hE.js.br} +0 -0
  2984. /package/dist/web/assets/{puppet-B0WZdEhx.js.gz → puppet-BEX5o7hE.js.gz} +0 -0
  2985. /package/dist/web/assets/{purescript-CrVZ4Uql.js → purescript-BZX6Kw4j.js} +0 -0
  2986. /package/dist/web/assets/{purescript-CrVZ4Uql.js.br → purescript-BZX6Kw4j.js.br} +0 -0
  2987. /package/dist/web/assets/{purescript-CrVZ4Uql.js.gz → purescript-BZX6Kw4j.js.gz} +0 -0
  2988. /package/dist/web/assets/{python-aEpe7ZUF.js → python-CO89UIxE.js} +0 -0
  2989. /package/dist/web/assets/{python-aEpe7ZUF.js.br → python-CO89UIxE.js.br} +0 -0
  2990. /package/dist/web/assets/{python-aEpe7ZUF.js.gz → python-CO89UIxE.js.gz} +0 -0
  2991. /package/dist/web/assets/{qmldir-DxTPc3lc.js → qmldir-DH526DWB.js} +0 -0
  2992. /package/dist/web/assets/{qss-D-nPbCGx.js → qss-wp8im4Iz.js} +0 -0
  2993. /package/dist/web/assets/{qss-D-nPbCGx.js.br → qss-wp8im4Iz.js.br} +0 -0
  2994. /package/dist/web/assets/{qss-D-nPbCGx.js.gz → qss-wp8im4Iz.js.gz} +0 -0
  2995. /package/dist/web/assets/{r-BLnTqw3q.js → r-Ct7VghHm.js} +0 -0
  2996. /package/dist/web/assets/{r-BLnTqw3q.js.br → r-Ct7VghHm.js.br} +0 -0
  2997. /package/dist/web/assets/{r-BLnTqw3q.js.gz → r-Ct7VghHm.js.gz} +0 -0
  2998. /package/dist/web/assets/{racket-DNO4210g.js → racket-BQvbOE5D.js} +0 -0
  2999. /package/dist/web/assets/{racket-DNO4210g.js.br → racket-BQvbOE5D.js.br} +0 -0
  3000. /package/dist/web/assets/{racket-DNO4210g.js.gz → racket-BQvbOE5D.js.gz} +0 -0
  3001. /package/dist/web/assets/{raku-iZJO4hxf.js → raku-B0iWSynj.js} +0 -0
  3002. /package/dist/web/assets/{raku-iZJO4hxf.js.br → raku-B0iWSynj.js.br} +0 -0
  3003. /package/dist/web/assets/{raku-iZJO4hxf.js.gz → raku-B0iWSynj.js.gz} +0 -0
  3004. /package/dist/web/assets/{react-CzUPVyyG.js → react-PkBxFcos.js} +0 -0
  3005. /package/dist/web/assets/{red-F3EQNsNx.js → red-Cm00r9eI.js} +0 -0
  3006. /package/dist/web/assets/{red-F3EQNsNx.js.br → red-Cm00r9eI.js.br} +0 -0
  3007. /package/dist/web/assets/{red-F3EQNsNx.js.gz → red-Cm00r9eI.js.gz} +0 -0
  3008. /package/dist/web/assets/{reg-DD_Uwu3t.js → reg-CBuhna22.js} +0 -0
  3009. /package/dist/web/assets/{reg-DD_Uwu3t.js.br → reg-CBuhna22.js.br} +0 -0
  3010. /package/dist/web/assets/{reg-DD_Uwu3t.js.gz → reg-CBuhna22.js.gz} +0 -0
  3011. /package/dist/web/assets/{regexp-D3RlqUxN.js → regexp-BebzP4Rp.js} +0 -0
  3012. /package/dist/web/assets/{regexp-D3RlqUxN.js.br → regexp-BebzP4Rp.js.br} +0 -0
  3013. /package/dist/web/assets/{regexp-D3RlqUxN.js.gz → regexp-BebzP4Rp.js.gz} +0 -0
  3014. /package/dist/web/assets/{rel-DM5GSHUR.js → rel-BYzlBhbq.js} +0 -0
  3015. /package/dist/web/assets/{rel-DM5GSHUR.js.br → rel-BYzlBhbq.js.br} +0 -0
  3016. /package/dist/web/assets/{rel-DM5GSHUR.js.gz → rel-BYzlBhbq.js.gz} +0 -0
  3017. /package/dist/web/assets/{resolve-theme-STMsK2vc.js → resolve-theme-BqoL27BW.js} +0 -0
  3018. /package/dist/web/assets/{resolve-theme-STMsK2vc.js.br → resolve-theme-BqoL27BW.js.br} +0 -0
  3019. /package/dist/web/assets/{resolve-theme-STMsK2vc.js.gz → resolve-theme-BqoL27BW.js.gz} +0 -0
  3020. /package/dist/web/assets/{riscv-C_jO4gJw.js → riscv-CQQP0Ro9.js} +0 -0
  3021. /package/dist/web/assets/{riscv-C_jO4gJw.js.br → riscv-CQQP0Ro9.js.br} +0 -0
  3022. /package/dist/web/assets/{riscv-C_jO4gJw.js.gz → riscv-CQQP0Ro9.js.gz} +0 -0
  3023. /package/dist/web/assets/{ron--r6_MG5U.js → ron-j1ON9YzM.js} +0 -0
  3024. /package/dist/web/assets/{ron--r6_MG5U.js.br → ron-j1ON9YzM.js.br} +0 -0
  3025. /package/dist/web/assets/{ron--r6_MG5U.js.gz → ron-j1ON9YzM.js.gz} +0 -0
  3026. /package/dist/web/assets/{rose-pine-NjvlliYf.js → rose-pine-Cbri3jon.js} +0 -0
  3027. /package/dist/web/assets/{rose-pine-NjvlliYf.js.br → rose-pine-Cbri3jon.js.br} +0 -0
  3028. /package/dist/web/assets/{rose-pine-NjvlliYf.js.gz → rose-pine-Cbri3jon.js.gz} +0 -0
  3029. /package/dist/web/assets/{rose-pine-dawn-DnsL01oA.js → rose-pine-dawn-BMuvKrGo.js} +0 -0
  3030. /package/dist/web/assets/{rose-pine-dawn-DnsL01oA.js.br → rose-pine-dawn-BMuvKrGo.js.br} +0 -0
  3031. /package/dist/web/assets/{rose-pine-dawn-DnsL01oA.js.gz → rose-pine-dawn-BMuvKrGo.js.gz} +0 -0
  3032. /package/dist/web/assets/{rose-pine-moon-DQTuCjVy.js → rose-pine-moon-4biZzaYD.js} +0 -0
  3033. /package/dist/web/assets/{rose-pine-moon-DQTuCjVy.js.br → rose-pine-moon-4biZzaYD.js.br} +0 -0
  3034. /package/dist/web/assets/{rose-pine-moon-DQTuCjVy.js.gz → rose-pine-moon-4biZzaYD.js.gz} +0 -0
  3035. /package/dist/web/assets/{rosmsg-BQrgxzms.js → rosmsg-CXx22rtz.js} +0 -0
  3036. /package/dist/web/assets/{rosmsg-BQrgxzms.js.br → rosmsg-CXx22rtz.js.br} +0 -0
  3037. /package/dist/web/assets/{rosmsg-BQrgxzms.js.gz → rosmsg-CXx22rtz.js.gz} +0 -0
  3038. /package/dist/web/assets/{rough.esm-CSLcW3u5.js → rough.esm-DK8Fp44C.js} +0 -0
  3039. /package/dist/web/assets/{rough.esm-CSLcW3u5.js.br → rough.esm-DK8Fp44C.js.br} +0 -0
  3040. /package/dist/web/assets/{rough.esm-CSLcW3u5.js.gz → rough.esm-DK8Fp44C.js.gz} +0 -0
  3041. /package/dist/web/assets/{rust-CP39BBh-.js → rust-D28cFIhL.js} +0 -0
  3042. /package/dist/web/assets/{rust-CP39BBh-.js.br → rust-D28cFIhL.js.br} +0 -0
  3043. /package/dist/web/assets/{rust-CP39BBh-.js.gz → rust-D28cFIhL.js.gz} +0 -0
  3044. /package/dist/web/assets/{sass-CMiN16ff.js → sass-DtNw4V28.js} +0 -0
  3045. /package/dist/web/assets/{sass-CMiN16ff.js.br → sass-DtNw4V28.js.br} +0 -0
  3046. /package/dist/web/assets/{sass-CMiN16ff.js.gz → sass-DtNw4V28.js.gz} +0 -0
  3047. /package/dist/web/assets/{scala-jm4Hro87.js → scala-hv69_YQC.js} +0 -0
  3048. /package/dist/web/assets/{scala-jm4Hro87.js.br → scala-hv69_YQC.js.br} +0 -0
  3049. /package/dist/web/assets/{scala-jm4Hro87.js.gz → scala-hv69_YQC.js.gz} +0 -0
  3050. /package/dist/web/assets/{scheme-Ct_BnC2r.js → scheme-Dtp9B_ng.js} +0 -0
  3051. /package/dist/web/assets/{scheme-Ct_BnC2r.js.br → scheme-Dtp9B_ng.js.br} +0 -0
  3052. /package/dist/web/assets/{scheme-Ct_BnC2r.js.gz → scheme-Dtp9B_ng.js.gz} +0 -0
  3053. /package/dist/web/assets/{sdbl-CnOjqCoH.js → sdbl-DEwEngAE.js} +0 -0
  3054. /package/dist/web/assets/{sdbl-CnOjqCoH.js.br → sdbl-DEwEngAE.js.br} +0 -0
  3055. /package/dist/web/assets/{sdbl-CnOjqCoH.js.gz → sdbl-DEwEngAE.js.gz} +0 -0
  3056. /package/dist/web/assets/{shellscript-C6sdrDvR.js → shellscript-CYnZDrks.js} +0 -0
  3057. /package/dist/web/assets/{shellscript-C6sdrDvR.js.br → shellscript-CYnZDrks.js.br} +0 -0
  3058. /package/dist/web/assets/{shellscript-C6sdrDvR.js.gz → shellscript-CYnZDrks.js.gz} +0 -0
  3059. /package/dist/web/assets/{slack-dark-BOdgeH19.js → slack-dark-DT0E0ABt.js} +0 -0
  3060. /package/dist/web/assets/{slack-dark-BOdgeH19.js.br → slack-dark-DT0E0ABt.js.br} +0 -0
  3061. /package/dist/web/assets/{slack-dark-BOdgeH19.js.gz → slack-dark-DT0E0ABt.js.gz} +0 -0
  3062. /package/dist/web/assets/{slack-ochin-DBMQIw0j.js → slack-ochin-DHHiQnxo.js} +0 -0
  3063. /package/dist/web/assets/{slack-ochin-DBMQIw0j.js.br → slack-ochin-DHHiQnxo.js.br} +0 -0
  3064. /package/dist/web/assets/{slack-ochin-DBMQIw0j.js.gz → slack-ochin-DHHiQnxo.js.gz} +0 -0
  3065. /package/dist/web/assets/{smalltalk-BMQqYubg.js → smalltalk-BF_I35xJ.js} +0 -0
  3066. /package/dist/web/assets/{smalltalk-BMQqYubg.js.br → smalltalk-BF_I35xJ.js.br} +0 -0
  3067. /package/dist/web/assets/{smalltalk-BMQqYubg.js.gz → smalltalk-BF_I35xJ.js.gz} +0 -0
  3068. /package/dist/web/assets/{snazzy-light-DwnLbrVG.js → snazzy-light-Cv7tIZo9.js} +0 -0
  3069. /package/dist/web/assets/{snazzy-light-DwnLbrVG.js.br → snazzy-light-Cv7tIZo9.js.br} +0 -0
  3070. /package/dist/web/assets/{snazzy-light-DwnLbrVG.js.gz → snazzy-light-Cv7tIZo9.js.gz} +0 -0
  3071. /package/dist/web/assets/{solarized-dark-DXJnupYd.js → solarized-dark-wZ5YPCys.js} +0 -0
  3072. /package/dist/web/assets/{solarized-dark-DXJnupYd.js.br → solarized-dark-wZ5YPCys.js.br} +0 -0
  3073. /package/dist/web/assets/{solarized-dark-DXJnupYd.js.gz → solarized-dark-wZ5YPCys.js.gz} +0 -0
  3074. /package/dist/web/assets/{solarized-light-DqhyrtI4.js → solarized-light-DGDOr1AS.js} +0 -0
  3075. /package/dist/web/assets/{solarized-light-DqhyrtI4.js.br → solarized-light-DGDOr1AS.js.br} +0 -0
  3076. /package/dist/web/assets/{solarized-light-DqhyrtI4.js.gz → solarized-light-DGDOr1AS.js.gz} +0 -0
  3077. /package/dist/web/assets/{solidity-BM0p0sku.js → solidity-BJknuPqJ.js} +0 -0
  3078. /package/dist/web/assets/{solidity-BM0p0sku.js.br → solidity-BJknuPqJ.js.br} +0 -0
  3079. /package/dist/web/assets/{solidity-BM0p0sku.js.gz → solidity-BJknuPqJ.js.gz} +0 -0
  3080. /package/dist/web/assets/{splunk-Cq6_jbaY.js → splunk-B1ClO_KU.js} +0 -0
  3081. /package/dist/web/assets/{splunk-Cq6_jbaY.js.br → splunk-B1ClO_KU.js.br} +0 -0
  3082. /package/dist/web/assets/{splunk-Cq6_jbaY.js.gz → splunk-B1ClO_KU.js.gz} +0 -0
  3083. /package/dist/web/assets/{sql-CPfIb_cO.js → sql-CEkBuGIw.js} +0 -0
  3084. /package/dist/web/assets/{sql-CPfIb_cO.js.br → sql-CEkBuGIw.js.br} +0 -0
  3085. /package/dist/web/assets/{sql-CPfIb_cO.js.gz → sql-CEkBuGIw.js.gz} +0 -0
  3086. /package/dist/web/assets/{src-C7A68uNq.js → src-C1GX5Kxw.js} +0 -0
  3087. /package/dist/web/assets/{src-C7A68uNq.js.br → src-C1GX5Kxw.js.br} +0 -0
  3088. /package/dist/web/assets/{src-C7A68uNq.js.gz → src-C1GX5Kxw.js.gz} +0 -0
  3089. /package/dist/web/assets/{ssh-config-GRgzMVtG.js → ssh-config-kgM67Sf6.js} +0 -0
  3090. /package/dist/web/assets/{ssh-config-GRgzMVtG.js.br → ssh-config-kgM67Sf6.js.br} +0 -0
  3091. /package/dist/web/assets/{ssh-config-GRgzMVtG.js.gz → ssh-config-kgM67Sf6.js.gz} +0 -0
  3092. /package/dist/web/assets/{stylus-DNs7ubf9.js → stylus-RcVaInR-.js} +0 -0
  3093. /package/dist/web/assets/{stylus-DNs7ubf9.js.br → stylus-RcVaInR-.js.br} +0 -0
  3094. /package/dist/web/assets/{stylus-DNs7ubf9.js.gz → stylus-RcVaInR-.js.gz} +0 -0
  3095. /package/dist/web/assets/{swift-BQV34vng.js → swift-Cm0fh2lX.js} +0 -0
  3096. /package/dist/web/assets/{swift-BQV34vng.js.br → swift-Cm0fh2lX.js.br} +0 -0
  3097. /package/dist/web/assets/{swift-BQV34vng.js.gz → swift-Cm0fh2lX.js.gz} +0 -0
  3098. /package/dist/web/assets/{synthwave-84-CypcdXbA.js → synthwave-84-CwLiazxr.js} +0 -0
  3099. /package/dist/web/assets/{synthwave-84-CypcdXbA.js.br → synthwave-84-CwLiazxr.js.br} +0 -0
  3100. /package/dist/web/assets/{synthwave-84-CypcdXbA.js.gz → synthwave-84-CwLiazxr.js.gz} +0 -0
  3101. /package/dist/web/assets/{system-verilog-DaLPjQ4v.js → system-verilog-CzYaDVLH.js} +0 -0
  3102. /package/dist/web/assets/{system-verilog-DaLPjQ4v.js.br → system-verilog-CzYaDVLH.js.br} +0 -0
  3103. /package/dist/web/assets/{system-verilog-DaLPjQ4v.js.gz → system-verilog-CzYaDVLH.js.gz} +0 -0
  3104. /package/dist/web/assets/{systemd-CXHFtmNc.js → systemd-DbSagfLw.js} +0 -0
  3105. /package/dist/web/assets/{systemd-CXHFtmNc.js.br → systemd-DbSagfLw.js.br} +0 -0
  3106. /package/dist/web/assets/{systemd-CXHFtmNc.js.gz → systemd-DbSagfLw.js.gz} +0 -0
  3107. /package/dist/web/assets/{talonscript-DI9nO5jX.js → talonscript-BCFnWejL.js} +0 -0
  3108. /package/dist/web/assets/{talonscript-DI9nO5jX.js.br → talonscript-BCFnWejL.js.br} +0 -0
  3109. /package/dist/web/assets/{talonscript-DI9nO5jX.js.gz → talonscript-BCFnWejL.js.gz} +0 -0
  3110. /package/dist/web/assets/{tasl-BAQyAl0c.js → tasl-BUdqtEe1.js} +0 -0
  3111. /package/dist/web/assets/{tasl-BAQyAl0c.js.br → tasl-BUdqtEe1.js.br} +0 -0
  3112. /package/dist/web/assets/{tasl-BAQyAl0c.js.gz → tasl-BUdqtEe1.js.gz} +0 -0
  3113. /package/dist/web/assets/{tcl-BP_ozI58.js → tcl-CR_lTV9N.js} +0 -0
  3114. /package/dist/web/assets/{tcl-BP_ozI58.js.br → tcl-CR_lTV9N.js.br} +0 -0
  3115. /package/dist/web/assets/{tcl-BP_ozI58.js.gz → tcl-CR_lTV9N.js.gz} +0 -0
  3116. /package/dist/web/assets/{terraform-NrndR0yZ.js → terraform-Bqsha-xe.js} +0 -0
  3117. /package/dist/web/assets/{terraform-NrndR0yZ.js.br → terraform-Bqsha-xe.js.br} +0 -0
  3118. /package/dist/web/assets/{terraform-NrndR0yZ.js.gz → terraform-Bqsha-xe.js.gz} +0 -0
  3119. /package/dist/web/assets/{tokyo-night-CbUQlN8D.js → tokyo-night-Cnuo6JB6.js} +0 -0
  3120. /package/dist/web/assets/{tokyo-night-CbUQlN8D.js.br → tokyo-night-Cnuo6JB6.js.br} +0 -0
  3121. /package/dist/web/assets/{tokyo-night-CbUQlN8D.js.gz → tokyo-night-Cnuo6JB6.js.gz} +0 -0
  3122. /package/dist/web/assets/{toml-BM_zrMLj.js → toml-CLFdhT22.js} +0 -0
  3123. /package/dist/web/assets/{toml-BM_zrMLj.js.br → toml-CLFdhT22.js.br} +0 -0
  3124. /package/dist/web/assets/{toml-BM_zrMLj.js.gz → toml-CLFdhT22.js.gz} +0 -0
  3125. /package/dist/web/assets/{tsv-CfyllNPO.js → tsv-Dw3tLrZN.js} +0 -0
  3126. /package/dist/web/assets/{tsx-BROcpVjE.js → tsx-BuCbOiJi.js} +0 -0
  3127. /package/dist/web/assets/{tsx-BROcpVjE.js.br → tsx-BuCbOiJi.js.br} +0 -0
  3128. /package/dist/web/assets/{tsx-BROcpVjE.js.gz → tsx-BuCbOiJi.js.gz} +0 -0
  3129. /package/dist/web/assets/{turtle-CHmyeS9k.js → turtle-BMKMfTrj.js} +0 -0
  3130. /package/dist/web/assets/{turtle-CHmyeS9k.js.br → turtle-BMKMfTrj.js.br} +0 -0
  3131. /package/dist/web/assets/{turtle-CHmyeS9k.js.gz → turtle-BMKMfTrj.js.gz} +0 -0
  3132. /package/dist/web/assets/{typescript-BVwspRg8.js → typescript-Y6cbFqno.js} +0 -0
  3133. /package/dist/web/assets/{typescript-BVwspRg8.js.br → typescript-Y6cbFqno.js.br} +0 -0
  3134. /package/dist/web/assets/{typescript-BVwspRg8.js.gz → typescript-Y6cbFqno.js.gz} +0 -0
  3135. /package/dist/web/assets/{typespec-DXRppCgc.js → typespec-EbgGJHV_.js} +0 -0
  3136. /package/dist/web/assets/{typespec-DXRppCgc.js.br → typespec-EbgGJHV_.js.br} +0 -0
  3137. /package/dist/web/assets/{typespec-DXRppCgc.js.gz → typespec-EbgGJHV_.js.gz} +0 -0
  3138. /package/dist/web/assets/{typst-L5uwArOj.js → typst-CQXV2SzX.js} +0 -0
  3139. /package/dist/web/assets/{typst-L5uwArOj.js.br → typst-CQXV2SzX.js.br} +0 -0
  3140. /package/dist/web/assets/{typst-L5uwArOj.js.gz → typst-CQXV2SzX.js.gz} +0 -0
  3141. /package/dist/web/assets/{use-h264-canvas-decoder-BfO9QrlH.js → use-h264-canvas-decoder-DAjp9oHe.js} +0 -0
  3142. /package/dist/web/assets/{use-h264-canvas-decoder-BfO9QrlH.js.br → use-h264-canvas-decoder-DAjp9oHe.js.br} +0 -0
  3143. /package/dist/web/assets/{use-h264-canvas-decoder-BfO9QrlH.js.gz → use-h264-canvas-decoder-DAjp9oHe.js.gz} +0 -0
  3144. /package/dist/web/assets/{use-is-mobile-BClDZJP5.js → use-is-mobile-BXHbkfs9.js} +0 -0
  3145. /package/dist/web/assets/{use-visual-viewport-BGpcMnIx.js → use-visual-viewport-CQ6-A0Dt.js} +0 -0
  3146. /package/dist/web/assets/{utils-btZ8C8-R.js → utils-Bslrbb-G.js} +0 -0
  3147. /package/dist/web/assets/{utils-btZ8C8-R.js.br → utils-Bslrbb-G.js.br} +0 -0
  3148. /package/dist/web/assets/{utils-btZ8C8-R.js.gz → utils-Bslrbb-G.js.gz} +0 -0
  3149. /package/dist/web/assets/{v-Bz99d5uk.js → v-Ci1jObJJ.js} +0 -0
  3150. /package/dist/web/assets/{v-Bz99d5uk.js.br → v-Ci1jObJJ.js.br} +0 -0
  3151. /package/dist/web/assets/{v-Bz99d5uk.js.gz → v-Ci1jObJJ.js.gz} +0 -0
  3152. /package/dist/web/assets/{vala-B-CtBLX1.js → vala-C_NdfqrY.js} +0 -0
  3153. /package/dist/web/assets/{vala-B-CtBLX1.js.br → vala-C_NdfqrY.js.br} +0 -0
  3154. /package/dist/web/assets/{vala-B-CtBLX1.js.gz → vala-C_NdfqrY.js.gz} +0 -0
  3155. /package/dist/web/assets/{vb-DHqiz9Cp.js → vb-K_r_h_s8.js} +0 -0
  3156. /package/dist/web/assets/{vb-DHqiz9Cp.js.br → vb-K_r_h_s8.js.br} +0 -0
  3157. /package/dist/web/assets/{vb-DHqiz9Cp.js.gz → vb-K_r_h_s8.js.gz} +0 -0
  3158. /package/dist/web/assets/{vendor-xterm-CfasyE0m.js → vendor-xterm-sFX94k3w.js} +0 -0
  3159. /package/dist/web/assets/{vendor-xterm-CfasyE0m.js.br → vendor-xterm-sFX94k3w.js.br} +0 -0
  3160. /package/dist/web/assets/{vendor-xterm-CfasyE0m.js.gz → vendor-xterm-sFX94k3w.js.gz} +0 -0
  3161. /package/dist/web/assets/{verilog-DbTkSkM7.js → verilog-DQPYLsZI.js} +0 -0
  3162. /package/dist/web/assets/{verilog-DbTkSkM7.js.br → verilog-DQPYLsZI.js.br} +0 -0
  3163. /package/dist/web/assets/{verilog-DbTkSkM7.js.gz → verilog-DQPYLsZI.js.gz} +0 -0
  3164. /package/dist/web/assets/{vesper-2aVei4Le.js → vesper-BrmzEV8s.js} +0 -0
  3165. /package/dist/web/assets/{vesper-2aVei4Le.js.br → vesper-BrmzEV8s.js.br} +0 -0
  3166. /package/dist/web/assets/{vesper-2aVei4Le.js.gz → vesper-BrmzEV8s.js.gz} +0 -0
  3167. /package/dist/web/assets/{vhdl-BJJSCnQQ.js → vhdl-CjxQGaH2.js} +0 -0
  3168. /package/dist/web/assets/{vhdl-BJJSCnQQ.js.br → vhdl-CjxQGaH2.js.br} +0 -0
  3169. /package/dist/web/assets/{vhdl-BJJSCnQQ.js.gz → vhdl-CjxQGaH2.js.gz} +0 -0
  3170. /package/dist/web/assets/{viml-qxSvRN8n.js → viml-CTKJNQH1.js} +0 -0
  3171. /package/dist/web/assets/{viml-qxSvRN8n.js.br → viml-CTKJNQH1.js.br} +0 -0
  3172. /package/dist/web/assets/{viml-qxSvRN8n.js.gz → viml-CTKJNQH1.js.gz} +0 -0
  3173. /package/dist/web/assets/{vitesse-black-CjR1y0Bv.js → vitesse-black-i-H_3p1i.js} +0 -0
  3174. /package/dist/web/assets/{vitesse-black-CjR1y0Bv.js.br → vitesse-black-i-H_3p1i.js.br} +0 -0
  3175. /package/dist/web/assets/{vitesse-black-CjR1y0Bv.js.gz → vitesse-black-i-H_3p1i.js.gz} +0 -0
  3176. /package/dist/web/assets/{vitesse-dark-jrcdsqkn.js → vitesse-dark-DZC_Yy3_.js} +0 -0
  3177. /package/dist/web/assets/{vitesse-dark-jrcdsqkn.js.br → vitesse-dark-DZC_Yy3_.js.br} +0 -0
  3178. /package/dist/web/assets/{vitesse-dark-jrcdsqkn.js.gz → vitesse-dark-DZC_Yy3_.js.gz} +0 -0
  3179. /package/dist/web/assets/{vitesse-light-DkC_qU0k.js → vitesse-light-rf4kpmk8.js} +0 -0
  3180. /package/dist/web/assets/{vitesse-light-DkC_qU0k.js.br → vitesse-light-rf4kpmk8.js.br} +0 -0
  3181. /package/dist/web/assets/{vitesse-light-DkC_qU0k.js.gz → vitesse-light-rf4kpmk8.js.gz} +0 -0
  3182. /package/dist/web/assets/{vyper-WAhkfwIX.js → vyper-BLnOw4Nf.js} +0 -0
  3183. /package/dist/web/assets/{vyper-WAhkfwIX.js.br → vyper-BLnOw4Nf.js.br} +0 -0
  3184. /package/dist/web/assets/{vyper-WAhkfwIX.js.gz → vyper-BLnOw4Nf.js.gz} +0 -0
  3185. /package/dist/web/assets/{wasm-BYGI5YYa.js → wasm-CTwH9oN2.js} +0 -0
  3186. /package/dist/web/assets/{wasm-BYGI5YYa.js.br → wasm-CTwH9oN2.js.br} +0 -0
  3187. /package/dist/web/assets/{wasm-BYGI5YYa.js.gz → wasm-CTwH9oN2.js.gz} +0 -0
  3188. /package/dist/web/assets/{wasm-Miuao4O0.js → wasm-CWeHvGNG.js} +0 -0
  3189. /package/dist/web/assets/{wasm-Miuao4O0.js.br → wasm-CWeHvGNG.js.br} +0 -0
  3190. /package/dist/web/assets/{wasm-Miuao4O0.js.gz → wasm-CWeHvGNG.js.gz} +0 -0
  3191. /package/dist/web/assets/{wenyan-Dd5qjF8u.js → wenyan-CLwdRuzd.js} +0 -0
  3192. /package/dist/web/assets/{wenyan-Dd5qjF8u.js.br → wenyan-CLwdRuzd.js.br} +0 -0
  3193. /package/dist/web/assets/{wenyan-Dd5qjF8u.js.gz → wenyan-CLwdRuzd.js.gz} +0 -0
  3194. /package/dist/web/assets/{wgsl-C3T5a0UO.js → wgsl-CBTDMVJR.js} +0 -0
  3195. /package/dist/web/assets/{wgsl-C3T5a0UO.js.br → wgsl-CBTDMVJR.js.br} +0 -0
  3196. /package/dist/web/assets/{wgsl-C3T5a0UO.js.gz → wgsl-CBTDMVJR.js.gz} +0 -0
  3197. /package/dist/web/assets/{wikitext-CvCJjxSa.js → wikitext-CQHrF84e.js} +0 -0
  3198. /package/dist/web/assets/{wikitext-CvCJjxSa.js.br → wikitext-CQHrF84e.js.br} +0 -0
  3199. /package/dist/web/assets/{wikitext-CvCJjxSa.js.gz → wikitext-CQHrF84e.js.gz} +0 -0
  3200. /package/dist/web/assets/{wit-DybvG9BU.js → wit-8xdbdipU.js} +0 -0
  3201. /package/dist/web/assets/{wit-DybvG9BU.js.br → wit-8xdbdipU.js.br} +0 -0
  3202. /package/dist/web/assets/{wit-DybvG9BU.js.gz → wit-8xdbdipU.js.gz} +0 -0
  3203. /package/dist/web/assets/{wolfram-CdhnrpZ7.js → wolfram-tFwx32a_.js} +0 -0
  3204. /package/dist/web/assets/{wolfram-CdhnrpZ7.js.br → wolfram-tFwx32a_.js.br} +0 -0
  3205. /package/dist/web/assets/{wolfram-CdhnrpZ7.js.gz → wolfram-tFwx32a_.js.gz} +0 -0
  3206. /package/dist/web/assets/{yaml-B0HIje0z.js → yaml-D5O1CXgB.js} +0 -0
  3207. /package/dist/web/assets/{yaml-B0HIje0z.js.br → yaml-D5O1CXgB.js.br} +0 -0
  3208. /package/dist/web/assets/{yaml-B0HIje0z.js.gz → yaml-D5O1CXgB.js.gz} +0 -0
  3209. /package/dist/web/assets/{zenscript-CcLSNTvD.js → zenscript-B10Pj7JT.js} +0 -0
  3210. /package/dist/web/assets/{zenscript-CcLSNTvD.js.br → zenscript-B10Pj7JT.js.br} +0 -0
  3211. /package/dist/web/assets/{zenscript-CcLSNTvD.js.gz → zenscript-B10Pj7JT.js.gz} +0 -0
  3212. /package/dist/web/assets/{zig-dAelYAUr.js → zig-BZKcTtrK.js} +0 -0
  3213. /package/dist/web/assets/{zig-dAelYAUr.js.br → zig-BZKcTtrK.js.br} +0 -0
  3214. /package/dist/web/assets/{zig-dAelYAUr.js.gz → zig-BZKcTtrK.js.gz} +0 -0
@@ -1 +0,0 @@
1
- import e from"./python-aEpe7ZUF.js";var t=Object.freeze(JSON.parse(`{"displayName":"Cairo","name":"cairo","patterns":[{"begin":"\\\\b(if).*\\\\(","beginCaptures":{"1":{"name":"keyword.control.if"},"2":{"name":"entity.name.condition"}},"contentName":"source.cairo0","end":"}","endCaptures":{"0":{"name":"keyword.control.end"}},"name":"meta.control.if","patterns":[{"include":"source.cairo0"}]},{"begin":"\\\\b(with)\\\\s+(.+)\\\\s*\\\\{","beginCaptures":{"1":{"name":"keyword.control.with"},"2":{"name":"entity.name.identifiers"}},"contentName":"source.cairo0","end":"}","endCaptures":{"0":{"name":"keyword.control.end"}},"name":"meta.control.with","patterns":[{"include":"source.cairo0"}]},{"begin":"\\\\b(with_attr)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*[({]","beginCaptures":{"1":{"name":"keyword.control.with_attr"},"2":{"name":"entity.name.function"}},"contentName":"source.cairo0","end":"}","endCaptures":{"0":{"name":"keyword.control.end"}},"name":"meta.control.with_attr","patterns":[{"include":"source.cairo0"}]},{"match":"\\\\belse\\\\b","name":"keyword.control.else"},{"match":"\\\\b(call|jmp|ret|abs|rel|if)\\\\b","name":"keyword.other.opcode"},{"match":"\\\\b([af]p)\\\\b","name":"keyword.other.register"},{"match":"\\\\b(const|let|local|tempvar|felt|as|from|import|static_assert|return|assert|cast|alloc_locals|with|with_attr|nondet|dw|codeoffset|new|using|and)\\\\b","name":"keyword.other.meta"},{"match":"\\\\b(SIZE(?:OF_LOCALS|))\\\\b","name":"markup.italic"},{"match":"//[^\\\\n]*\\\\n","name":"comment.line.sharp"},{"match":"\\\\b[A-Z_a-z][0-9A-Z_a-z]*:\\\\s*$","name":"entity.name.function"},{"begin":"\\\\b(func)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*[({]","beginCaptures":{"1":{"name":"storage.type.function.cairo"},"2":{"name":"entity.name.function"}},"contentName":"source.cairo0","end":"}","endCaptures":{"0":{"name":"storage.type.function.cairo"}},"name":"meta.function.cairo","patterns":[{"include":"source.cairo0"}]},{"begin":"\\\\b(struct|namespace)\\\\s+([A-Z_a-z][0-9A-Z_a-z]*)\\\\s*\\\\{","beginCaptures":{"1":{"name":"storage.type.function.cairo"},"2":{"name":"entity.name.function"}},"contentName":"source.cairo0","end":"}","endCaptures":{"0":{"name":"storage.type.function.cairo"}},"name":"meta.function.cairo","patterns":[{"include":"source.cairo0"}]},{"match":"\\\\b[-+]?[0-9]+\\\\b","name":"constant.numeric.decimal"},{"match":"\\\\b[-+]?0x\\\\h+\\\\b","name":"constant.numeric.hexadecimal"},{"match":"'[^']*'","name":"string.quoted.single"},{"match":"\\"[^\\"]*\\"","name":"string.quoted.double"},{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.python"}},"contentName":"source.python","end":"%}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.python"},"1":{"name":"source.python"}},"name":"meta.embedded.block.python","patterns":[{"include":"source.python"}]}],"scopeName":"source.cairo0","embeddedLangs":["python"]}`)),n=[...e,t];export{n as default};
@@ -1 +0,0 @@
1
- import{it as e,rt as t}from"./chunk-7R4GIKGN-DBr9s6EE.js";var n=(n,r)=>e.lang.round(t.parse(n)[r]);export{n as t};
@@ -1 +0,0 @@
1
- import{o as e,r as t}from"./api-client-F5Zi1sR0.js";var n=6e4,r=3e4,i=new Map,a=new Map,o=0;function s(){return o}function c(e,t,i){let a=e.get(t);if(a?.value!==void 0&&a.expires>Date.now())return Promise.resolve(a.value);if(a?.request)return a.request;let o={expires:0};return e.set(t,o),o.request=new Promise((e,t)=>{let n=setTimeout(()=>t(Error(`Chat preparation timed out. Please retry.`)),r);Promise.resolve().then(i).then(e,t).finally(()=>clearTimeout(n))}).then(r=>(e.get(t)===o&&(o.value=r,o.expires=Date.now()+n,o.request=void 0),r),n=>{throw e.get(t)===o&&e.delete(t),n}),o.request}function l(e=``){return c(i,e,async()=>{let e=await t.get(`/api/settings/ai`,{signal:AbortSignal.timeout(r)});return{default_provider:e.default_provider,new_chat_provider_mode:e.new_chat_provider_mode,providers:Object.fromEntries(Object.entries(e.providers).map(([e,t])=>[e,{permission_mode:t.permission_mode}]))}})}function u(n){return c(a,n,()=>t.get(`${e(n)}/chat/providers`,{signal:AbortSignal.timeout(r)}))}function d(e){let t=a.get(e);return t&&t.expires>Date.now()?t.value:void 0}function f(e,t){a.set(e,{value:t,expires:Date.now()+n})}function p(){++o,i.clear(),a.clear()}export{u as a,l as i,s as n,d as o,p as r,f as s,r as t};
@@ -1,15 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/edit-diff-preview-D-FNLOU2.js","assets/rolldown-runtime-C5c2KzVm.js","assets/vendor-markdown-QKPNiWEd.js","assets/libesm-5wREk7JN.js","assets/markdown-renderer-LJdVMbGl.js","assets/vendor-ui-P9Ym7hCv.js","assets/markdown-renderer-CmnqFfTU.js","assets/index-CyDLBddf.js","assets/preload-helper-BEFjQwLd.js","assets/button-DeAyLH9U.js","assets/utils-btZ8C8-R.js","assets/createLucideIcon-DBXq3G0e.js","assets/api-client-F5Zi1sR0.js","assets/react-CzUPVyyG.js","assets/file-store-Cm7-pHux.js","assets/panel-store-B6PoCwBA.js","assets/session-list-sync-triggers-ATvz-1g3.js","assets/project-store-CCimwgGF.js","assets/window-store-vo1N70nK.js","assets/settings-store-Cyuo8ceh.js","assets/window-pip-registry-9Y9LQQYS.js","assets/onboarding-quick-orientation-DPHYFMbA.js","assets/dialog-Bocc0Fgb.js","assets/portal-container-context-NFSuymMu.js","assets/icons-CO_II6D-.js","assets/use-is-mobile-BClDZJP5.js","assets/format-file-meta-Drxf2J-k.js","assets/fs-api-IX9SHt5k.js","assets/context-menu-7OX80HDB.js","assets/input-CG8PS8mS.js","assets/mobile-bottom-sheet-D4UyOatB.js","assets/use-visual-viewport-BGpcMnIx.js","assets/scroll-area-sjOeAfoD.js","assets/chat-preparation-cache-BUCR58h4.js","assets/file-icons-CK0J4QSy.js","assets/format-date-BMtvCeb9.js","assets/git-repo-store-B_u5RzIM.js","assets/ws-auth-Ytui7dXP.js","assets/tab-store-DCpc0g0Q.js","assets/apply-theme-Cc_cmrD5.js","assets/resolve-theme-STMsK2vc.js","assets/index-Dh5apC3I.css","assets/image-gallery-B16hO6Ab.js","assets/run-in-terminal-DCBNtYHQ.js","assets/api-client-CbrcysYC.js"])))=>i.map(i=>d[i]);
2
- import{s as e}from"./rolldown-runtime-C5c2KzVm.js";import{C as t,S as n}from"./vendor-markdown-QKPNiWEd.js";import{$t as r,A as i,An as a,Ar as o,C as s,Dr as c,Dt as l,E as u,F as d,G as f,Gt as p,Hn as m,J as h,Jn as g,Jr as _,K as v,Kt as y,Lr as b,Mr as x,N as S,Nr as C,O as w,Or as ee,Qr as T,R as te,Sn as ne,Ut as re,Vr as E,Wn as ie,Yr as ae,Z as oe,Zt as D,_r as O,ar as se,b as ce,br as k,cn as le,ct as A,d as j,dt as M,g as ue,gn as N,hr as de,ir as fe,j as pe,ln as me,lt as he,n as P,nt as F,pr as ge,qn as I,t as L,un as R,ur as _e,v as ve,vt as ye,w as z,wn as be,x as xe,xn as Se,xr as B,z as Ce,zt as V}from"./icons-CO_II6D-.js";import{t as H}from"./createLucideIcon-DBXq3G0e.js";import{O as U,_ as we,a as Te,d as Ee,f as De,l as Oe,o as W,r as G,u as K}from"./api-client-F5Zi1sR0.js";import{t as ke}from"./settings-store-Cyuo8ceh.js";import{t as q}from"./preload-helper-BEFjQwLd.js";import{n as J,r as Ae,t as je}from"./utils-btZ8C8-R.js";import{n as Y,r as Me,t as Ne}from"./panel-store-B6PoCwBA.js";import{i as Pe}from"./project-store-CCimwgGF.js";import{a as Fe,c as X,d as Ie,i as Le,l as Re,o as ze,r as Be,s as Ve,t as He,u as Ue}from"./session-list-sync-triggers-ATvz-1g3.js";import{t as We}from"./tab-store-DCpc0g0Q.js";import{t as Ge}from"./format-date-BMtvCeb9.js";import{a as Ke,i as qe,n as Je,r as Ye,s as Xe,t as Ze}from"./chat-preparation-cache-BUCR58h4.js";import{o as Z}from"./file-store-Cm7-pHux.js";import{n as Qe}from"./use-is-mobile-BClDZJP5.js";import{u as $e}from"./onboarding-quick-orientation-DPHYFMbA.js";import{t as et}from"./button-DeAyLH9U.js";import{n as tt,o as nt,t as rt}from"./dialog-Bocc0Fgb.js";import{t as it}from"./mobile-bottom-sheet-D4UyOatB.js";import{$ as at,A as ot,Cn as st,D as ct,E as lt,Fn as ut,In as dt,Ln as ft,Mn as pt,O as mt,Pn as ht,Vn as gt,_r as _t,ar as vt,b as yt,dr as bt,en as xt,fr as St,gr as Ct,ht as wt,ir as Tt,k as Et,nr as Dt,pt as Ot,qn as kt,r as At,rr as jt,sr as Mt,t as Nt,v as Pt,vr as Ft,w as It,wn as Lt,xn as Rt,y as zt}from"./index-CyDLBddf.js";import{a as Bt,d as Vt,f as Ht,i as Ut,l as Wt,n as Gt,o as Kt,p as qt,r as Jt}from"./tool-cards-rxLXbBSm.js";import{n as Yt,r as Xt,t as Zt}from"./image-gallery-B16hO6Ab.js";import{t as Qt}from"./use-websocket-AC7EG1LK.js";import{g as $t}from"./api-settings-Cc_CpfmC.js";import{t as en}from"./onboarding-entry-CGFdGLLP.js";import{n as tn,t as nn}from"./send-to-chat-dNqNV7Y4.js";import{i as rn,n as an,r as on,t as sn}from"./slash-command-picker-CQlIqMW0.js";import{t as cn}from"./ai-settings-section-Ck8uN_Bw.js";import{b as ln,c as un,f as dn,i as fn,l as pn,m as mn,n as hn,o as gn,s as _n,t as vn,u as yn,v as bn,x as xn}from"./codex-reset-credit-button-DRhievFQ.js";var Sn=H(`slash`,[[`path`,{d:`M22 2 2 22`,key:`y4kqgn`}]]),Cn={maxImages:4,maxBase64PerImage:5e6,maxBase64Total:1e7};function wn(e){let t=[],n=0;for(let r of e)if(r.imageData){if(t.length>=Cn.maxImages)break;r.imageData.data.length>Cn.maxBase64PerImage||n+r.imageData.data.length>Cn.maxBase64Total||(n+=r.imageData.data.length,t.push(r.imageData))}return t}function Tn(e,t){let n=new Set(t),r=[],i=[];for(let t of e)t.serverPath&&(t.imageData&&n.has(t.imageData)?r.push(t.serverPath):i.push(t.serverPath));return{inlineImagePaths:r,pathOnlyPaths:i}}var En=class{attempt=null;constructor(e){this.emit=e}start(e,t,n){this.fail(),!(!t||!n)&&(this.attempt={sessionId:e,attemptId:crypto.randomUUID()},this.emit({type:`started`,...this.attempt}))}migrate(e){if(!this.attempt||this.attempt.sessionId===e)return;let t=this.attempt.sessionId;this.attempt.sessionId=e,this.emit({type:`session`,...this.attempt,previousSessionId:t})}select(e){this.attempt&&this.attempt.sessionId!==e&&this.fail()}fail(){if(!this.attempt)return;let e=this.attempt;this.attempt=null,this.emit({type:`failed`,...e})}finish(e){if(!this.attempt)return;let t=this.attempt;this.attempt=null,this.emit({type:e?`succeeded`:`failed`,...t,hasContent:e})}};function Dn(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return Math.abs(t).toString(36)}function On(e,t){let n=`pc-${Dn(t)}-`;return e.map(e=>e.id?{...e,id:`${n}${e.id}`}:e)}function kn(e,t){if(t.size===0)return e;let n=[],r=new Set,i=e=>{for(let a of e){let e=a.id?t.get(a.id):void 0;e&&e.length>0&&a.id&&!r.has(a.id)&&(r.add(a.id),i(e)),n.push(a)}};return i(e),n}var An=null;function jn(){return An||=new AudioContext,An}function Mn(e,t,n,r,i=`sine`){let a=jn(),o=a.createOscillator(),s=a.createGain();o.type=i,o.frequency.value=e,s.gain.setValueAtTime(r,n),s.gain.exponentialRampToValueAtTime(.001,n+t),o.connect(s),s.connect(a.destination),o.start(n),o.stop(n+t)}function Nn(){let e=jn().currentTime;Mn(523,.15,e,.15),Mn(659,.2,e+.12,.15)}function Pn(){let e=jn().currentTime;Mn(880,.12,e,.18,`square`),Mn(698,.12,e+.15,.18,`square`),Mn(880,.15,e+.3,.15,`square`)}function Fn(){let e=jn().currentTime;Mn(440,.12,e,.12),Mn(523,.12,e+.1,.12),Mn(659,.18,e+.2,.12)}var In={done:Nn,approval_request:Pn,question:Fn};function Ln(e){try{In[e]?.()}catch{}}function Rn(e){return e.inputTokens+e.cacheReadTokens+e.cacheWriteTokens}function zn(e){return e.inputTokens+e.cacheWriteTokens}var Bn=.5,Vn=.9,Hn={cache_expired:`the session's prompt cache had already lapsed, so PPM released its subprocess`,idle_timeout:`the session sat idle with no tab open long enough for PPM to release its subprocess`,warm_idle_cap:`too many idle sessions were holding a subprocess, so this one was released early`,tab_closed:`PPM shut the session's subprocess down when the last tab disconnected`,set_model:`the model was changed, which restarts the session`,stream_ended:`the session's subprocess had already exited`,resume:`the session was resumed on a new subprocess`};function Un(e){let t=zn(e),n=Rn(e);if(!e.coldStart||n<2e4)return{level:`ok`,wastedTokens:t,reason:``};let r=e.cacheHitRate<Bn?`bad`:e.cacheHitRate<Vn?`warn`:`ok`;if(r===`ok`)return{level:r,wastedTokens:t,reason:``};let i=e.coldReason?Hn[e.coldReason]??`the session restarted (${e.coldReason})`:null;return{level:r,wastedTokens:t,reason:i?`${qn(t)} of this session's transcript was re-sent uncached because ${i}.`:`${qn(t)} of this session's transcript was re-sent uncached.`}}var Wn=.1,Gn=1.25;function Kn(e){let t=Rn(e);if(t===0)return 1;let n=e.inputTokens+e.cacheWriteTokens*Gn+e.cacheReadTokens*Wn,r=t*Wn;return r>0?Math.max(1,n/r):1}function qn(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(e>=1e4?0:1)}k`:String(e)}var Q=e(t(),1);function Jn(e){return e.map(e=>e.events?{...e,events:Vt(e.events)}:e)}var Yn={hasTeams:!1,teamNames:[],messageCount:0,unreadCount:0};function Xn(e){if(document.hidden)return!1;let{panels:t}=Ne.getState();for(let n of Object.values(t))if(Me(n.tabs.find(e=>e.id===n.activeTabId))===e)return!0;return!1}function Zn(e,t=`claude`,n=``,r,i){let a=(0,Q.useRef)(i);a.current=i;let o=(0,Q.useRef)(null);o.current||=new En(e=>a.current?.(e));let[s,c]=(0,Q.useState)([]),[l,u]=(0,Q.useState)(new Map),[d,f]=(0,Q.useState)(!1),[p,m]=(0,Q.useState)({}),[h,g]=(0,Q.useState)(`idle`),[_,v]=(0,Q.useState)(!1),[y,b]=(0,Q.useState)(0),[x,S]=(0,Q.useState)(null),[C,w]=(0,Q.useState)(null),[ee,T]=(0,Q.useState)(null),[te,ne]=(0,Q.useState)(null),[re,E]=(0,Q.useState)([]),[ie,ae]=(0,Q.useState)([]),oe=(0,Q.useRef)([]),[D,O]=(0,Q.useState)(null),[se,ce]=(0,Q.useState)(null),[k,le]=(0,Q.useState)(!1),[A,j]=(0,Q.useState)(null),[M,ue]=(0,Q.useState)(null),N=(0,Q.useRef)(null),de=(0,Q.useRef)(null),[fe,pe]=(0,Q.useState)(null),me=(0,Q.useRef)(null),[he,P]=(0,Q.useState)(!0),F=(0,Q.useRef)(null),ge=(0,Q.useRef)(null),I=(0,Q.useRef)(``),L=(0,Q.useRef)([]),R=(0,Q.useRef)(new Map),_e=(0,Q.useRef)(null),[ve,ye]=(0,Q.useState)(null),z=(0,Q.useRef)(`idle`),be=(0,Q.useRef)(null),xe=(0,Q.useRef)(()=>{}),Se=(0,Q.useRef)(null),B=(0,Q.useRef)(0),Ce=(0,Q.useRef)(0),V=(0,Q.useRef)(!1),H=(0,Q.useRef)(null),we=(0,Q.useRef)([]),Te=(0,Q.useRef)(0),Ee=(0,Q.useRef)(!1),De=(0,Q.useRef)(!1),Oe=(0,Q.useRef)(null),K=(0,Q.useRef)(!1),ke=(0,Q.useRef)(new Set),q=(0,Q.useRef)(0),J=(0,Q.useRef)(null),Ae=(0,Q.useRef)(0),je=(0,Q.useRef)(!1),Y=(0,Q.useRef)(e);Y.current=e;let Me=(0,Q.useRef)(r);Me.current=r;let Pe=(0,Q.useRef)([]);Pe.current=s;let Fe=(0,Q.useRef)(n);Fe.current=n;let X=(0,Q.useRef)(null),Ie=(0,Q.useRef)(0),Le=(0,Q.useRef)({teamNames:new Set,messages:[]}),Re=(0,Q.useRef)(0),[Be,Ve]=(0,Q.useState)(Yn),[Ue,We]=(0,Q.useState)([]),Ge=(0,Q.useCallback)(()=>{let e=Le.current;Ve({hasTeams:e.teamNames.size>0,teamNames:Array.from(e.teamNames),messageCount:e.messages.length,unreadCount:Re.current}),We([...e.messages])},[]),Ke=(0,Q.useCallback)(()=>{Re.current=0,Ge()},[Ge]),qe=(0,Q.useCallback)(async e=>{try{let t=await G.get(`/api/teams/${encodeURIComponent(e)}`);if(!t?.messages)return;let n=Le.current.messages,r=t.messages.filter(e=>!n.some(t=>t.timestamp===e.timestamp&&t.from===e.from));n.push(...r),n.sort((e,t)=>new Date(e.timestamp).getTime()-new Date(t.timestamp).getTime()),n.length>500&&n.splice(0,n.length-500),Ge()}catch{}},[Ge]),Je=h!==`idle`;(0,Q.useEffect)(()=>{if(e)return $e.getState().setStreaming(e,h!==`idle`,n),()=>{$e.getState().setStreaming(e,!1)}},[e,h,n]);let Ye=(0,Q.useCallback)((e,t)=>{let n=r=>{for(let i=0;i<r.length;i++){let a=r[i];if(a.type===`tool_use`){if((a.tool===`Agent`||a.tool===`Task`)&&a.toolUseId===t){let t=Wt(a,e);return[[...r.slice(0,i),t,...r.slice(i+1)],!0]}if(a.children?.length){let[e,t]=n(a.children);if(t)return[[...r.slice(0,i),{...a,children:e},...r.slice(i+1)],!0]}}}return[r,!1]},[r,i]=n(L.current);return i&&(L.current=r),i},[]),Xe=(0,Q.useCallback)((e,t)=>{let n=e=>e.type===`tool_use`&&(e.tool===`Agent`||e.tool===`Task`)&&e.toolUseId===t,r=Pe.current,i=-1;for(let e=r.length-1;e>=0;e--)if(r[e].events?.some(n)){i=e;break}return i===-1?!1:(c(t=>{let r=-1;for(let e=t.length-1;e>=0;e--)if(t[e].events?.some(n)){r=e;break}if(r===-1)return t;let i=t[r],a=i.events.map(t=>n(t)?Wt(t,e):t);return[...t.slice(0,r),{...i,events:a},...t.slice(r+1)]}),!0)},[]),Ze=(0,Q.useCallback)(()=>{Ie.current=0;let e=I.current,t=[...L.current],n=_e.current;(0,Q.startTransition)(()=>{c(r=>{let i=r[r.length-1];return i?.role===`assistant`&&!i.id.startsWith(`final-`)?[...r.slice(0,-1),{...i,content:e,events:t,...n}]:[...r,{id:`streaming-${Date.now()}`,role:`assistant`,content:e,events:t,timestamp:new Date().toISOString(),...n}]})})},[]),Z=(0,Q.useCallback)(()=>{Ie.current||=window.setTimeout(Ze,100)},[Ze]),Qe=(0,Q.useCallback)((e,t)=>{let n=t=>t.type===`tool_use`&&(t.tool===`Agent`||t.tool===`Task`)&&t.toolUseId===e,r=L.current.findIndex(n);if(r!==-1){L.current[r]={...L.current[r],bgStatus:t},Z();return}c(e=>{let r=-1;for(let t=e.length-1;t>=0;t--)if(e[t].events?.some(n)){r=t;break}if(r===-1)return e;let i=e[r],a=i.events.map(e=>n(e)?{...e,bgStatus:t}:e);return[...e.slice(0,r),{...i,events:a},...e.slice(r+1)]})},[Z]),et=(0,Q.useCallback)(e=>{let t=e,n=t?.type;if(!n)return;let r=e=>{let n=L.current,r=n.findIndex(e);r===-1?n.push(t):n[r]=t};switch(n){case`account_info`:_e.current={accountId:t.accountId,accountLabel:t.accountLabel},ye({id:t.accountId,label:t.accountLabel??null}),O(null);break;case`account_retry`:t.accountId&&t.accountLabel&&(_e.current={accountId:t.accountId,accountLabel:t.accountLabel},ye({id:t.accountId,label:t.accountLabel})),L.current.push(t),Z();break;case`status_update`:{let e=t.accountLabel?` (${t.accountLabel})`:``;O(`${t.message}${e}`);break}case`text`:{let e=t.parentToolUseId;if(e&&Ye(t,e)){Z();break}if(e){Xe(t,e);break}I.current+=t.content,L.current.push(t),Z();break}case`thinking`:{let e=t.parentToolUseId;if(e&&Ye(t,e)){Z();break}if(e){Xe(t,e);break}L.current.push(t),Z();break}case`tool_use`:{if(t.tool===`AskUserQuestion`){t.toolUseId&&ke.current.add(t.toolUseId);break}let e=t.parentToolUseId;if(e&&Ye(t,e)){Z();break}if(e){Xe(t,e);break}let n=t.toolUseId;r(e=>!!n&&e.type===`tool_use`&&e.toolUseId===n),Z();break}case`tool_result`:{let e=t.toolUseId;if(e&&R.current.delete(e),e&&ke.current.has(e))break;let n=t.parentToolUseId;if(n&&Ye(t,n)){Z();break}if(n){Xe(t,n);break}if(z.current===`idle`&&e?.startsWith(`subagent-`)){c(n=>n.map(n=>n.events?.some(t=>t.type===`tool_use`&&t.toolUseId===e)?{...n,events:n.events.map(n=>n.type===`tool_use`&&n.toolUseId===e?{...n,result:{output:t.output,isError:t.isError,exitCode:t.exitCode}}:n)}:n));break}r(t=>!!e&&t.type===`tool_result`&&t.toolUseId===e),Z();break}case`approval_resolved`:{let e=t.requestId;if(t.approved&&t.answers){let n=L.current.find(t=>t.type===`approval_request`&&t.requestId===e&&t.tool===`AskUserQuestion`),r=n&&n.input;r&&typeof r==`object`&&(r.answers=t.answers,c(e=>[...e]))}S(t=>t&&t.requestId===e?null:t),X.current!=null&&(U.dismiss(X.current),X.current=null);break}case`approval_request`:if(r(e=>e.type===`approval_request`&&e.requestId===t.requestId),K.current)break;if(S({requestId:t.requestId,tool:t.tool,input:t.input}),Y.current&&!Xn(Y.current)){Ln(t.tool===`AskUserQuestion`?`question`:`approval_request`);let e=Y.current,n=t.tool===`AskUserQuestion`;X.current=U[n?`info`:`warning`](n?`AI has a question`:`${t.tool} needs permission`,{description:Fe.current||`Session ${e.slice(0,8)}`,duration:1/0,action:{label:`Go to session`,onClick:()=>{let{panels:t}=Ne.getState();for(let[n,r]of Object.entries(t)){let t=r.tabs.find(t=>t.metadata?.sessionId===e);if(t){Ne.getState().setActiveTab(t.id,n);break}}}}})}break;case`error`:if(t.parentToolUseId){Ye(t,t.parentToolUseId)?Z():Xe(t,t.parentToolUseId);break}K.current||o.current?.fail(),c(e=>{let n=e[e.length-1];if(n?.role===`assistant`){let r=L.current,i=r[r.length-1],a=i?.type===`error`&&i.message===t.message?r:[...r,t];return L.current=a,[...e.slice(0,-1),{...n,events:a}]}return n?.role===`system`&&n.content===t.message?e:[...e,{id:`error-${Date.now()}`,role:`system`,content:t.message,events:[t],timestamp:new Date().toISOString()}]});break;case`team_detected`:{let e=t.teamName;e&&(Le.current.teamNames.add(e),Ge(),qe(e));break}case`team_inbox`:{let e=t.messages;if(Array.isArray(e)){let t=Le.current.messages;t.push(...e),t.length>500&&t.splice(0,t.length-500),Re.current+=e.length,Ge()}break}case`team_updated`:Ge();break;case`bash_output`:{let e=t.toolUseId;if(e){let n=R.current.get(e);n?(n.content+=t.content,n.content.length>5e5&&(n.content=n.content.slice(-5e5)),n.lineCount=t.lineCount):R.current.set(e,{content:t.content,lineCount:t.lineCount}),Z()}break}case`subagent_status`:{let e=t.toolUseId,n=t.status;e&&n&&Qe(e,n);break}case`background_registry`:{let e=t.shells??[];oe.current=e,ae(e);break}case`done`:{if(t.parentToolUseId||(K.current||o.current?.finish(!!I.current.trim()),z.current===`idle`))break;t.contextWindowPct!=null&&w(t.contextWindowPct),Y.current&&!Xn(Y.current)&&Ln(`done`),Ie.current&&=(clearTimeout(Ie.current),0);let e=I.current,n=[...L.current],r=_e.current;V.current=!!e||n.length>0;let i=t.lastMessageUuid,a=t.usage;c(t=>{let o=t[t.length-1];return o?.role===`assistant`?[...t.slice(0,-1),{...o,id:`final-${Date.now()}`,content:e||o.content,events:n.length>0?n:o.events,...i&&{sdkUuid:i},...a&&{usage:a}}]:e||n.length>0?[...t,{id:`final-${Date.now()}`,role:`assistant`,content:e,events:n,timestamp:new Date().toISOString(),...i&&{sdkUuid:i},...a&&{usage:a},...r}]:t}),a&&ne(e=>e&&{...e,lastTurnEndedAt:Date.now(),billedPrefixTokens:Rn(a),...a.contextTokens!=null&&{contextTokens:a.contextTokens},...a.cacheTtlMs!=null&&{ttlMs:a.cacheTtlMs},compactedAt:a.compactedAt}),I.current=``,L.current=[],_e.current=null,J.current=null,R.current.clear(),O(null);break}}},[Ye,Xe,Z,Qe,Ge,qe]),tt=(0,Q.useCallback)(e=>{let t;try{t=JSON.parse(e.data)}catch{return}if(K.current){we.current.push(e);return}if(t.type===`ping`){let e=t.streamSeq;typeof e==`number`&&e>Te.current&&!Ee.current&&!De.current&&(Ee.current=!0,xe.current(JSON.stringify({type:`resync`})));return}let n=t.streamSeq;if(typeof n==`number`&&(De.current?Te.current=Math.max(Te.current,n):n===Te.current+1?Te.current=n:n>Te.current&&!Ee.current&&(Ee.current=!0,xe.current(JSON.stringify({type:`resync`})))),t.type===`user_message`){B.current++;let e=t.content;c(n=>{let r=n[n.length-1];return r?.role===`user`&&r.content===e?n:[...n,{id:`user-remote-${Date.now()}`,role:`user`,content:e,timestamp:t.timestamp??new Date().toISOString()}]});return}if(t.type===`title_updated`){ce(t.title??null);return}if(t.type===`session_migrated`){let e=t.newSessionId;e&&e!==Y.current&&(o.current?.migrate(e),Me.current?.(e));return}if(t.type===`mcp_status`){let e=t.needsAuth;E(Array.isArray(e)?e:[]);return}if(t.type===`compact_status`){let e=t.status;e===`compacting`?T(`compacting`):e===`done`&&T(null);return}if(t.type===`phase_changed`){let e=t.phase,n=z.current!==`idle`;if(!n&&e!==`idle`&&(V.current=!1),e!==`idle`&&B.current++,g(e),z.current=e,b(e===`connecting`?t.elapsed??0:0),e===`idle`){let e=De.current;Ee.current=!1,De.current=!1,T(null),O(null),(e||n&&!V.current)&&Se.current?.()}return}if(t.type===`session_state`){le(!0),v(!1),j(t.sessionId??Y.current);let e=t,n=e.phase;n!==`idle`&&B.current++;let r=z.current===`idle`;if(r&&n!==`idle`&&(V.current=!1),g(n),z.current=n,e.sessionTitle&&ce(e.sessionTitle),e.model&&(de.current&&e.model!==de.current||(e.model===de.current&&(de.current=null),ue(e.model),N.current=e.model)),typeof e.effort==`string`&&(pe(e.effort),me.current=e.effort),typeof e.thinking==`boolean`&&P(e.thinking),e.pendingApproval&&S({requestId:e.pendingApproval.requestId,tool:e.pendingApproval.tool,input:e.pendingApproval.input}),T(e.compactStatus===`compacting`?`compacting`:null),ne(e.promptCache??null),E(Array.isArray(e.mcpNeedsAuth)?e.mcpNeedsAuth:[]),n===`idle`){let e=De.current;Ee.current=!1,De.current=!1;let t=Date.now()-Ae.current<5e3;(e||!(r&&(t||je.current)))&&Se.current?.(),v(!1)}return}if(t.type===`turn_events`){B.current++;let e=t.events,n=t.userMessage;if(!e?.length&&!n){v(!1);return}q.current&&=(cancelAnimationFrame(q.current),0),J.current=n,c(e=>{let t=[...e],r=t.length;for(;r>0&&t[r-1].role===`assistant`;)r--;if(n!=null&&r>0&&t[r-1].role===`user`&&t[r-1].content===n)t=t.slice(0,r-1);else{let e=t[t.length-1];e?.role===`assistant`&&e.id.startsWith(`streaming-`)&&(t=t.slice(0,-1))}if(n){let e=t[t.length-1];(e?.role!==`user`||e.content!==n)&&(t=[...t,{id:`user-replay-${Date.now()}`,role:`user`,content:n,timestamp:new Date().toISOString()}])}return t}),I.current=``,L.current=[],_e.current=null,K.current=!0;let r=0,i=()=>{let n=Math.min(r+100,e.length);for(let t=r;t<n;t++)et(e[t]);if(r=n,r<e.length)q.current=requestAnimationFrame(i);else{q.current=0,K.current=!1;let e=t.streamSeq,n=t.truncated===!0;De.current=n,!n&&typeof e==`number`&&(Te.current=e),Ee.current=!1,v(!1);let r=we.current.splice(0);for(let e of r)Oe.current?.(e)}};q.current=requestAnimationFrame(i);return}et(t)},[et]);Oe.current=tt;let{send:nt,connect:rt}=Qt({url:e&&n?`/ws/project/${encodeURIComponent(n)}/chat/${e}`:``,onMessage:tt,autoConnect:!!e&&!!n,idleTimeoutMs:45e3,onConnectionChange:e=>{e||(o.current?.fail(),le(!1),v(!0))}});xe.current=nt,(0,Q.useEffect)(()=>{let r=!1;o.current?.select(e);let i=Ce.current;V.current=!1,B.current++,Te.current=0,Ee.current=!1,De.current=!1,ge.current&&ge.current!==e&&(de.current=null,F.current=null,ye(null)),ge.current=e??null,g(`idle`),z.current=`idle`,S(null),X.current!=null&&(U.dismiss(X.current),X.current=null),T(null),E([]),u(new Map),m({}),I.current=``,L.current=[],J.current=null,Ae.current=0,R.current.clear(),Ie.current&&=(clearTimeout(Ie.current),0),le(!1),j(null),v(!1),Le.current={teamNames:new Set,messages:[]},Re.current=0,Ve(Yn),We([]),e&&G.get(`/api/teams`).then(t=>{r||!Array.isArray(t)||t.filter(t=>(t?.name??t?.team_name)===e).length!==0&&(Le.current.teamNames.add(e),Ge(),qe(e))}).catch(()=>{});let a=new Set(Pe.current.map(e=>e.id));return e&&n?(je.current=!0,f(!0),G.get(`${W(n)}/chat/sessions/${e}/messages?providerId=${t}`).then(e=>{if(r||Ce.current!==i)return;let t=Array.isArray(e)?{messages:e,versionMap:{}}:e,n=Jn(Array.isArray(t?.messages)?t.messages:[]);t?.versionMap&&m(t.versionMap),t?.canonicalSessionId&&t.canonicalSessionId!==Y.current&&Me.current?.(t.canonicalSessionId);let o=J.current;if(o!=null){for(let e=n.length-1;e>=0;e--)if(n[e].role===`user`&&n[e].content===o){n=n.slice(0,e);break}}c(e=>{let t=e.filter(e=>!a.has(e.id));return[...n,...t]}),Ae.current=Date.now()}).catch(t=>{!r&&Ce.current===i&&(c(e=>e.filter(e=>!a.has(e.id))),t?.status===404&&n&&ze.getState().removeSession(He(n),e))}).finally(()=>{r||(je.current=!1,f(!1))})):c([]),()=>{r=!0,je.current=!1,H.current?.abort(),H.current=null,Ie.current&&clearTimeout(Ie.current),Ie.current=0,q.current&&cancelAnimationFrame(q.current),q.current=0,K.current=!1,we.current=[]}},[e,t,n,Ge,qe]);let it=(0,Q.useCallback)(()=>({...N.current&&{model:N.current},...me.current&&{effort:me.current},...F.current!==null&&{thinking:F.current}}),[]),at=(0,Q.useCallback)((e,t)=>{if(!e.trim()&&!t?.images?.length)return;B.current++;let n=z.current!==`idle`;if(Y.current&&o.current?.start(Y.current,!n,k&&A===Y.current),V.current=!1,n){Ie.current&&=(clearTimeout(Ie.current),0);let e=I.current,t=[...L.current];c(n=>{let r=n[n.length-1];return r?.role===`assistant`?[...n.slice(0,-1),{...r,id:`final-${Date.now()}`,content:e||r.content,events:t.length>0?t:r.events}]:n})}c(t=>[...t,{id:`user-${Date.now()}`,role:`user`,content:e,timestamp:new Date().toISOString()}]),I.current=``,L.current=[],be.current=null,n?(g(`thinking`),z.current=`thinking`):(g(`initializing`),z.current=`initializing`),S(null),X.current!=null&&(U.dismiss(X.current),X.current=null),nt(JSON.stringify({type:`message`,content:e,permissionMode:t?.permissionMode,priority:t?.priority,images:t?.images,imagePaths:t?.imagePaths,...it()}))},[nt,k,A,it]),ot=(0,Q.useCallback)(e=>{ue(e),N.current=e,de.current=e,nt(JSON.stringify({type:`set_model`,model:e}))},[nt]),st=(0,Q.useCallback)(e=>{pe(e),me.current=e,nt(JSON.stringify({type:`set_effort`,effort:e}))},[nt]),ct=(0,Q.useCallback)(e=>{P(e),F.current=e,nt(JSON.stringify({type:`set_thinking`,enabled:e}))},[nt]),lt=(0,Q.useCallback)((e,t,n)=>{if(nt(JSON.stringify({type:`approval_response`,requestId:e,approved:t,data:n})),t&&n){let t=L.current.find(t=>t.type===`approval_request`&&t.requestId===e&&t.tool===`AskUserQuestion`);if(t){let e=t.input;e&&typeof e==`object`&&(e.answers=n)}c(e=>[...e])}S(null),X.current!=null&&(U.dismiss(X.current),X.current=null)},[nt]),ut=(0,Q.useCallback)(()=>{if(o.current?.fail(),z.current===`idle`)return;nt(JSON.stringify({type:`cancel`}));let e=I.current,t=[...L.current];c(n=>{let r=n[n.length-1];return r?.role===`assistant`?[...n.slice(0,-1),{...r,id:`final-${Date.now()}`,content:e||r.content,events:t.length>0?t:r.events}]:n}),I.current=``,L.current=[],R.current.clear(),be.current=null,g(`idle`),z.current=`idle`,S(null),X.current!=null&&(U.dismiss(X.current),X.current=null)},[nt]),dt=(0,Q.useCallback)(e=>{e&&nt(JSON.stringify({type:`kill_background_shell`,shellId:e}))},[nt]),ft=(0,Q.useCallback)(e=>{if(!e)return;let t=e.replace(/\.output$/,``);return oe.current.find(n=>n.shellId===t||n.outputPath.endsWith(e)||n.outputPath.endsWith(`${t}.output`))},[]);(0,Q.useEffect)(()=>{e&&Nt.getState().setSessionShells(e,ie)},[e,ie]),(0,Q.useEffect)(()=>{if(e)return Nt.getState().retainSession(e),()=>{Nt.getState().releaseSession(e)}},[e]);let pt=(0,Q.useCallback)(()=>{le(!1),v(!0),rt()},[rt]),mt=(0,Q.useCallback)(()=>{if(!e||!n||z.current!==`idle`)return;H.current?.abort();let r=new AbortController;H.current=r;let i=B.current;G.get(`${W(n)}/chat/sessions/${e}/messages?providerId=${t}`,{signal:r.signal}).then(t=>{if(r.signal.aborted||H.current!==r||B.current!==i||z.current!==`idle`||Y.current!==e||Fe.current!==n||K.current)return;let a=Array.isArray(t)?{messages:t,versionMap:void 0}:t;a?.versionMap&&m(a.versionMap),Array.isArray(a?.messages)&&a.messages.length>0&&(Ce.current++,Ie.current&&=(clearTimeout(Ie.current),0),c(Jn(a.messages)),I.current=``,L.current=[]),Ae.current=Date.now()}).catch(()=>{})},[e,t,n]);Se.current=mt;let ht=(0,Q.useCallback)(async(e,t)=>{if(!n)throw Error(`No project context available`);let r=e.replace(/^pc-[^-]+-/,``),i=`${W(n)}/chat/pre-compact-messages?jsonlPath=${encodeURIComponent(t)}&before=${encodeURIComponent(r)}`,a=On(await G.get(i),t);return u(t=>{let n=new Map(t);return n.set(e,a),n}),a.length},[n]),gt=(0,Q.useCallback)(e=>l.has(e),[l]),_t=(0,Q.useCallback)(e=>{c(t=>t.filter(t=>t.id!==e))},[]),vt=(0,Q.useCallback)(()=>{c(e=>e.filter(e=>e.role!==`system`))},[]);return{messages:s,renderedMessages:(0,Q.useMemo)(()=>kn(s,l),[s,l]),expandCompact:ht,isCompactExpanded:gt,dismissMessage:_t,clearErrors:vt,messagesLoading:d,versionMap:p,isStreaming:Je,phase:h,isReconnecting:_,connectingElapsed:y,pendingApproval:x,contextWindowPct:C,compactStatus:ee,promptCache:te,mcpNeedsAuth:re,statusMessage:D,sessionTitle:se,liveAccount:ve,model:M,setModel:ot,effort:fe,setEffort:st,thinking:he,setThinking:ct,turnSettings:it,teamActivity:Be,teamMessages:Ue,markTeamRead:Ke,bashPartialOutput:R,backgroundShells:ie,killBackgroundShell:dt,findBackgroundShellByOutput:ft,sendMessage:at,respondToApproval:lt,cancelStreaming:ut,reconnect:pt,refetchMessages:mt,isConnected:k&&A===e}}var Qn=300,$n=6e4;function er(e){let{enabled:t,projectName:n,providerId:r,permissionMode:i,accountId:a,picks:o}=e,s=(0,Q.useRef)(0),c=(0,Q.useRef)(()=>{}),l=(0,Q.useRef)(t);return l.current=t,c.current=()=>{s.current=Date.now(),G.post(`${W(n)}/chat/prewarm`,{providerId:r,permissionMode:i,accountId:a,...o}).catch(()=>{})},(0,Q.useEffect)(()=>{if(!t)return;let e=setTimeout(()=>c.current(),Qn);return()=>clearTimeout(e)},[t,JSON.stringify([n,r,i??null,a??null,o])]),(0,Q.useCallback)(()=>{l.current&&Date.now()-s.current>=$n&&c.current()},[])}function tr(e,t,n){let r=dt(e);return n&&r&&!r.sessionId&&(!r.pickedAccountId||r.pickedAccountProvider!==t)&&(r.providerPending||r.providerId===t)&&ft(e,{pickedAccountId:n.id,pickedAccountLabel:n.label,pickedAccountProvider:t}),n}function nr(e,t,n){let r=(0,Q.useRef)(new Map),i=(0,Q.useRef)(!0);(0,Q.useEffect)(()=>(i.current=!0,()=>{i.current=!1}),[]);let a=(0,Q.useCallback)(t=>{if(!e)return Promise.resolve(null);let n=dt(e);if(n?.pickedAccountProvider===t&&typeof n.pickedAccountId==`string`)return Promise.resolve({id:n.pickedAccountId,label:typeof n.pickedAccountLabel==`string`?n.pickedAccountLabel:null});if(ur(e,t))return Promise.resolve(null);let a=n=>i.current?tr(e,t,n):n,o=r.current.get(t);if(o)return o.then(a);let s=cr(e),c=(s?s.catch(()=>null):Promise.resolve(null)).then(()=>{let n=dt(e);return n?.pickedAccountProvider===t&&typeof n.pickedAccountId==`string`?{id:n.pickedAccountId,label:typeof n.pickedAccountLabel==`string`?n.pickedAccountLabel:null}:ur(e,t)?null:$t(t,AbortSignal.timeout(3e4))}).then(a).catch(e=>{throw r.current.get(t)===c&&r.current.delete(t),e});return r.current.set(t,c),c},[e]);return(0,Q.useEffect)(()=>{n&&a(t).catch(()=>{})},[n,t,a]),a}var rr=(e,t,n)=>G.post(e,t,{signal:n}),ir=new Map,ar=new Set,or=new Map;function sr(e,t,n){let r=ir.get(e);if(r)return r;let i=rr(`${W(t.name)}/chat/prepare`,n,AbortSignal.timeout(Ze)).then(n=>(ir.get(e)===i?(ar.add(e),pr(e,t,n)):fr(t,n),n));ir.set(e,i),n.providerId&&mt(t.name,n.providerId,i.then(e=>e.slash,()=>null));let a=()=>{setTimeout(()=>{ir.get(e)===i&&ir.delete(e)},Ze)};return i.then(a,a),i}function cr(e){return e?ir.get(e):void 0}function lr(e){return ar.has(e)}function ur(e,t){return or.get(e)===t}function dr(e){ir.delete(e),ar.delete(e),or.delete(e)}function fr(e,t){Ee(t.settings),De(we(e),t.providers),Xe(e.name,t.providers),t.tags&&ze.getState().seedTags(e,t.tags),t.slash&&Et(e,t.providerId,t.slash)}function pr(e,t,n){fr(t,n),n.pickedAccount===null&&or.set(e,n.providerId);let r=n.pickedAccount&&n.pickedAccount!==`timeout`&&n.pickedAccount!==`skipped`?n.pickedAccount:null;tr(e,n.providerId,r),n.usage&&br(vr(t.name,n.providerId,void 0,r?.id),n.usage,n.usage.lastFetchedAt??null,r?.id)}var mr=12e4,hr=3e4,gr=new Map,_r=new Map;function vr(e,t,n,r){return JSON.stringify([e,t,n,r])}function yr(e,t,n,r){let i=!n||t?.activeAccountId===n;return{scope:e,usage:i?t??{}:{},fetchedAt:i?r??null:null}}function br(e,t,n,r){gr.set(e,yr(e,t,r,n)),_r.set(e,Date.now())}function xr(e,t=`claude`,n,r,i=!0,a){let o=n?void 0:r,s=vr(e,t,n,r),[c,l]=(0,Q.useState)(null),[u,d]=(0,Q.useState)(!1),f=(0,Q.useRef)(null),p=(0,Q.useRef)(0),m=(0,Q.useCallback)((a=!1)=>{if(!i||!e)return Promise.resolve();let c=++p.current;d(!0);let u=a?`&refresh=1`:``,f=n?`&session=${encodeURIComponent(n)}`:``,m=o?`&accountId=${encodeURIComponent(o)}`:``;return G.get(`${W(e)}/chat/usage?providerId=${t}${f}${m}${u}`).then(e=>{if(c!==p.current)return;let t=yr(s,e,r,e?.lastFetchedAt);gr.set(s,t),l(t)}).catch(()=>{}).finally(()=>{c===p.current&&d(!1)})},[e,t,n,o,r,s,i]);(0,Q.useEffect)(()=>{if(l(null),d(!1),!i)return;let e=!1,t,n=()=>{e||(t=setTimeout(()=>m(),500))},r=a?cr(a):void 0;return r?r.then(()=>{if(e)return;let t=_r.get(s),r=gr.get(s);if(r&&t!==void 0&&Date.now()-t<hr){l(r);return}n()},()=>{e||n()}):n(),f.current=setInterval(()=>m(),mr),()=>{e=!0,++p.current,t&&clearTimeout(t),f.current&&clearInterval(f.current)}},[m,i,a,s]);let h=(0,Q.useCallback)(()=>m(!0),[m]),g=(0,Q.useCallback)(()=>m(),[m]),_=i?c?.scope===s?c:gr.get(s):null;return{usageInfo:_?.usage??{},usageLoading:u,lastFetchedAt:_?.fetchedAt??null,refreshUsage:h,reloadUsage:g}}function Sr(e){let{tabId:t,sessionId:n,designSlug:r,projectName:i,providerId:a}=e;(0,Q.useEffect)(()=>{if(!t||!n||r||!i||Ne.getState().getPanelForTab(t)?.tabs.find(e=>e.id===t)?.type!==`chat`)return;let e=!1;return G.get(`${W(i)}/chat/sessions/${encodeURIComponent(n)}/design`).then(({designSlug:r})=>{if(e||!r)return;let o=Ne.getState().getPanelForTab(t)?.id;ht({projectName:i,slug:r,sessionId:n,providerId:a,panelId:o}),Ne.getState().closeTab(t,o)}).catch(()=>{}),()=>{e=!0}},[t,n,r,i,a])}function Cr(e){let t=Array(e.length),n=0;for(let r=0;r<e.length;r++){let i=e[r].role===`user`;i&&n++,t[r]=i?n:0}return t}var wr={damping:.7,stiffness:.05,mass:1.25},Tr=70,Er=1e3/60,Dr=350,Or=!1;globalThis.document?.addEventListener(`mousedown`,()=>{Or=!0}),globalThis.document?.addEventListener(`mouseup`,()=>{Or=!1}),globalThis.document?.addEventListener(`click`,()=>{Or=!1});var kr=(e={})=>{let[t,n]=(0,Q.useState)(!1),[r,i]=(0,Q.useState)(e.initial!==!1),[a,o]=(0,Q.useState)(!1),s=(0,Q.useRef)(null);s.current=e;let c=(0,Q.useCallback)(()=>{if(!Or)return!1;let e=window.getSelection();if(!e||!e.rangeCount)return!1;let t=e.getRangeAt(0);return t.commonAncestorContainer.contains(g.current)||g.current?.contains(t.commonAncestorContainer)},[]),l=(0,Q.useCallback)(e=>{d.isAtBottom=e,i(e)},[]),u=(0,Q.useCallback)(e=>{d.escapedFromLock=e,n(e)},[]),d=(0,Q.useMemo)(()=>{let n;return{escapedFromLock:t,isAtBottom:r,resizeDifference:0,accumulated:0,velocity:0,listeners:new Set,get scrollTop(){return g.current?.scrollTop??0},set scrollTop(e){if(g.current){let{scrollBehavior:t}=getComputedStyle(g.current);t!==`auto`&&(g.current.style.scrollBehavior=`auto`),g.current.scrollTop=e,d.ignoreScrollToTop=g.current.scrollTop,t!==`auto`&&(g.current.style.scrollBehavior=t)}},get targetScrollTop(){return!g.current||!_.current?0:g.current.scrollHeight-1-g.current.clientHeight},get calculatedTargetScrollTop(){if(!g.current||!_.current)return 0;let{targetScrollTop:t}=this;if(!e.targetScrollTop)return t;if(n?.targetScrollTop===t)return n.calculatedScrollTop;let r=Math.max(Math.min(e.targetScrollTop(t,{scrollElement:g.current,contentElement:_.current}),t),0);return n={targetScrollTop:t,calculatedScrollTop:r},requestAnimationFrame(()=>{n=void 0}),r},get scrollDifference(){return this.calculatedTargetScrollTop-this.scrollTop},get isNearBottom(){return this.scrollDifference<=Tr}}},[]),f=(0,Q.useCallback)((e={})=>{typeof e==`string`&&(e={animation:e}),e.preserveScrollPosition||l(!0);let t=Date.now()+(Number(e.wait)||0),n=Mr(s.current,e.animation),{ignoreEscapes:r=!1}=e,i,a=d.calculatedTargetScrollTop;e.duration instanceof Promise?e.duration.finally(()=>{i=Date.now()}):i=t+(e.duration??0);let o=async()=>{let e=new Promise(requestAnimationFrame).then(()=>{if(!d.isAtBottom)return d.animation=void 0,!1;let{scrollTop:l}=d,u=performance.now(),p=(u-(d.lastTick??u))/Er;if(d.animation||={behavior:n,promise:e,ignoreEscapes:r},d.animation.behavior===n&&(d.lastTick=u),c()||t>Date.now())return o();if(l<Math.min(a,d.calculatedTargetScrollTop)){if(d.animation?.behavior===n){if(n===`instant`)return d.scrollTop=d.calculatedTargetScrollTop,o();d.velocity=(n.damping*d.velocity+n.stiffness*d.scrollDifference)/n.mass,d.accumulated+=d.velocity*p,d.scrollTop+=d.accumulated,d.scrollTop!==l&&(d.accumulated=0)}return o()}return i>Date.now()?(a=d.calculatedTargetScrollTop,o()):(d.animation=void 0,d.scrollTop<d.calculatedTargetScrollTop?f({animation:Mr(s.current,s.current.resize),ignoreEscapes:r,duration:Math.max(0,i-Date.now())||void 0}):d.isAtBottom)});return e.then(e=>(requestAnimationFrame(()=>{d.animation||(d.lastTick=void 0,d.velocity=0)}),e))};return e.wait!==!0&&(d.animation=void 0),d.animation?.behavior===n?d.animation.promise:o()},[l,c,d]),p=(0,Q.useCallback)(()=>{u(!0),l(!1)},[u,l]),m=(0,Q.useCallback)(({target:e})=>{if(e!==g.current)return;let{scrollTop:t,ignoreScrollToTop:n}=d,{lastScrollTop:r=t}=d;d.lastScrollTop=t,d.ignoreScrollToTop=void 0,n&&n>t&&(r=n),o(d.isNearBottom),setTimeout(()=>{if(d.resizeDifference||t===n)return;if(c()){u(!0),l(!1);return}let e=t>r,i=t<r;if(d.animation?.ignoreEscapes){d.scrollTop=r;return}i&&(u(!0),l(!1)),e&&u(!1),!d.escapedFromLock&&d.isNearBottom&&l(!0)},1)},[u,l,c,d]),h=(0,Q.useCallback)(({target:e,deltaY:t})=>{let n=e;for(;![`scroll`,`auto`].includes(getComputedStyle(n).overflow);){if(!n.parentElement)return;n=n.parentElement}n===g.current&&t<0&&g.current.scrollHeight>g.current.clientHeight&&!d.animation?.ignoreEscapes&&(u(!0),l(!1))},[u,l,d]),g=Ar(e=>{g.current?.removeEventListener(`scroll`,m),g.current?.removeEventListener(`wheel`,h),e?.addEventListener(`scroll`,m,{passive:!0}),e?.addEventListener(`wheel`,h,{passive:!0})},[]),_=Ar(e=>{if(d.resizeObserver?.disconnect(),d.resizeObserver=void 0,!e)return;let t;d.resizeObserver=new ResizeObserver(([e])=>{let{height:n}=e.contentRect,r=n-(t??n);if(d.resizeDifference=r,d.scrollTop>d.targetScrollTop&&(d.scrollTop=d.targetScrollTop),o(d.isNearBottom),r>=0){let e=Mr(s.current,t?s.current.resize:s.current.initial);f({animation:e,wait:!0,preserveScrollPosition:!0,duration:e===`instant`?void 0:Dr})}else d.isNearBottom&&(u(!1),l(!0));t=n,requestAnimationFrame(()=>{setTimeout(()=>{d.resizeDifference===r&&(d.resizeDifference=0)},1)})}),d.resizeObserver?.observe(e)},[]);return{contentRef:_,scrollRef:g,scrollToBottom:f,stopScroll:p,isAtBottom:r||a,isNearBottom:a,escapedFromLock:t,state:d}};function Ar(e,t){let n=(0,Q.useCallback)(t=>(n.current=t,e(t)),t);return n}var jr=new Map;function Mr(...e){let t={...wr},n=!1;for(let r of e){if(r===`instant`){n=!0;continue}typeof r==`object`&&(n=!1,t.damping=r.damping??t.damping,t.stiffness=r.stiffness??t.stiffness,t.mass=r.mass??t.mass)}let r=JSON.stringify(t);return jr.has(r)||jr.set(r,Object.freeze(t)),n?`instant`:jr.get(r)}var Nr=60,Pr=8,Fr=1400;function Ir(e){if(e.scrollHeight<=e.clientHeight)return!1;let t=getComputedStyle(e).overflowY;return t===`auto`||t===`scroll`}function Lr(e,t){let n=[],r=e.parentElement;for(;r&&r!==t;)Ir(r)&&n.push(r),r=r.parentElement;return n}function Rr(){return typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches}function zr(e,t){let n=e.querySelector(`[data-edit-ref="${CSS.escape(t)}"]`);if(n)return{el:n,level:`edit`};let r=t.replace(/-\d+$/,``),i=e.querySelector(`[data-tool-ref="${CSS.escape(r)}"]`);return i?{el:i,level:`card`}:null}function Br(e,t,n,r){let i=e.scrollTop+t.getBoundingClientRect().top-e.getBoundingClientRect().top-n;e.scrollTo({top:i,behavior:r?`smooth`:`auto`})}function Vr(e,t){let n=zr(e,t);if(!n)return()=>{};let{el:r,level:i}=n;for(let t of Lr(r,e))Br(t,r,Pr,!1);Br(e,r,Nr,!Rr()),r.dataset.flash=i;let a=setTimeout(()=>{delete r.dataset.flash},Fr);return()=>{clearTimeout(a),delete r.dataset.flash}}var $=n();function Hr(e){try{return new Date(e).toLocaleString()}catch{return``}}function Ur({icon:e,label:t,title:n,onClick:r}){return(0,$.jsxs)(`button`,{type:`button`,onClick:r,title:n,"aria-label":t,className:`inline-flex items-center justify-center gap-1 rounded-md px-1.5 py-1 text-text-subtle hover:text-text-primary hover:bg-surface transition-colors`,children:[e,(0,$.jsx)(`span`,{children:t})]})}function Wr({content:e}){let[t,n]=(0,Q.useState)(!1);return(0,$.jsx)(Ur,{icon:t?(0,$.jsx)(z,{className:`size-3.5`}):(0,$.jsx)(F,{className:`size-3.5`}),label:t?`Copied`:`Copy`,title:`Copy message to clipboard`,onClick:()=>{gt(e),n(!0),setTimeout(()=>n(!1),1500)}})}function Gr({timestamp:e,content:t,className:n,children:r}){return(0,$.jsxs)(`div`,{className:J(`flex items-center gap-0.5 flex-wrap text-xs text-text-subtle select-none`,n),children:[(0,$.jsx)(`time`,{title:Hr(e),className:`pr-1 tabular-nums`,children:Ge(e)}),(0,$.jsx)(Wr,{content:t}),r]})}function Kr(e){let t=0,n=0;for(let r of e)t+=r.linesAdded,n+=r.linesRemoved;return{added:t,removed:n}}function qr({count:e,totals:t,open:n,onToggle:r,ref:i}){let a=`${e} file${e===1?``:`s`}`;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{"aria-hidden":!0,className:`mx-1.5 h-3.5 w-px bg-border-soft`}),(0,$.jsxs)(`button`,{ref:i,type:`button`,onClick:r,"aria-expanded":n,"aria-label":`${a} changed this turn, ${t.added} added, ${t.removed} removed`,className:J(`inline-flex items-center gap-[7px] rounded-full font-mono text-[11.5px]`,`px-3 min-h-11 md:min-h-0 md:px-[9px] md:py-[5px]`,`text-text-secondary transition-colors hover:bg-surface hover:text-text-primary`),children:[(0,$.jsx)(`span`,{"aria-hidden":!0,className:`size-[5px] shrink-0 rounded-full bg-primary`}),(0,$.jsx)(`span`,{children:a}),(0,$.jsxs)(`span`,{className:`flex items-center gap-[5px] tabular-nums`,children:[(0,$.jsxs)(`span`,{className:`text-success`,children:[`+`,t.added]}),(0,$.jsxs)(`span`,{className:`text-error`,children:[`−`,t.removed]})]})]})]})}function Jr(e){if(!e)return!1;let t=e.closest(`[data-tab-pool-id]`)?.dataset.tabPoolId;if(!t)return e.offsetParent!==null;let{panels:n,focusedPanelId:r}=Ne.getState();return n[r]?.activeTabId===t}var Yr={create:{glyph:`A`,cls:`text-success`,label:`created`},write:{glyph:`W`,cls:`text-warning`,label:`overwritten`},notebook:{glyph:`N`,cls:`text-accent-2`,label:`notebook edited`},edit:{glyph:`·`,cls:`text-text-subtle`,label:`edited`}};function Xr(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t<0?{base:e,dir:``}:{base:e.slice(t+1),dir:e.slice(0,t)}}function Zr({added:e,removed:t,editCount:n,className:r}){return(0,$.jsxs)(`span`,{className:J(`flex items-center gap-[5px] tabular-nums`,r),children:[(0,$.jsxs)(`span`,{className:`text-success`,children:[`+`,e]}),(0,$.jsxs)(`span`,{className:`text-error`,children:[`−`,t]}),n!=null&&n>1&&(0,$.jsxs)(`span`,{className:`text-text-subtle`,children:[`×`,n]})]})}function Qr({change:e,dense:t,selected:n,onClick:r}){let i=Yr[e.op],{base:a,dir:o}=Xr(e.filePath),s=e.viaSubagent?`${i.label} · changed by a sub-agent`:i.label;return(0,$.jsxs)(`button`,{type:`button`,onClick:r,title:e.filePath,className:J(`grid w-full grid-cols-[16px_1fr_auto_10px] items-center gap-[10px] text-left font-mono`,`border-b border-border-soft hover:bg-surface transition-colors`,t?`min-h-[38px] px-2.5 py-[5px] text-xs`:`min-h-[52px] px-3 py-[7px] text-[12.5px]`,n&&`bg-surface shadow-[inset_2px_0_0_var(--accent)]`),children:[(0,$.jsx)(`span`,{"aria-label":s,title:s,className:J(`inline-flex size-4 items-center justify-center rounded bg-white/5 text-[9px] font-semibold`,i.cls,e.viaSubagent&&`bg-accent-2/20 ring-1 ring-inset ring-accent-2/35`),children:i.glyph}),(0,$.jsxs)(`span`,{className:`min-w-0`,children:[(0,$.jsx)(`span`,{className:`block truncate text-text-primary`,children:a}),o&&(0,$.jsx)(`span`,{className:`block overflow-hidden text-ellipsis whitespace-nowrap text-[10px] text-text-subtle [direction:rtl] text-left`,children:o})]}),(0,$.jsx)(Zr,{added:e.linesAdded,removed:e.linesRemoved,editCount:e.editCount,className:`text-[11px]`}),(0,$.jsx)(pe,{className:`size-[11px] text-text-subtle`})]})}var $r=(0,Q.lazy)(()=>q(()=>import(`./edit-diff-preview-D-FNLOU2.js`),__vite__mapDeps([0,1,2,3])));function ei({change:e,onJump:t}){return(0,$.jsx)(`div`,{children:e.edits.map((n,r)=>(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`button`,{type:`button`,disabled:!n.editRef,onClick:()=>n.editRef&&t(n.editRef),className:`group flex min-h-11 w-full items-center gap-2 px-3 font-mono text-[10px] text-text-subtle transition-colors hover:bg-surface disabled:hover:bg-transparent`,children:[(0,$.jsxs)(`span`,{children:[`edit `,r+1,` of `,e.editCount]}),(0,$.jsx)(`span`,{className:`h-px flex-1 bg-border-soft`}),n.editRef&&(0,$.jsxs)(`span`,{className:`flex items-center gap-1 group-hover:text-primary`,children:[(0,$.jsx)(j,{className:`size-3`}),`jump`]})]}),(0,$.jsx)(`div`,{className:`mx-3 mb-1`,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`h-4`}),children:(0,$.jsx)($r,{oldStr:n.oldStr,newStr:n.newStr,filePath:e.filePath})})})]},n.editRef??r))})}function ti(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t<0?{base:e,dir:``}:{base:e.slice(t+1),dir:e.slice(0,t)}}var ni=null;function ri(e){return e instanceof HTMLElement?e.tagName===`INPUT`||e.tagName===`TEXTAREA`||e.isContentEditable:!1}function ii({changes:e,onJump:t,onClose:n}){let[r,i]=(0,Q.useState)(0),a=(0,Q.useRef)(null),o=(0,Q.useRef)(null),s=(0,Q.useId)();(0,Q.useEffect)(()=>(ni=s,o.current?.querySelector(`button`)?.focus(),()=>{ni===s&&(ni=null)}),[s]),(0,Q.useEffect)(()=>{let o=o=>{if(ni===s&&Jr(a.current)&&!ri(document.activeElement)){if(o.key===`Escape`)o.preventDefault(),n();else if(o.key===`j`)o.preventDefault(),i(t=>Math.min(t+1,e.length-1));else if(o.key===`k`)o.preventDefault(),i(e=>Math.max(e-1,0));else if(o.key===`Enter`){let n=e[r]?.edits[0]?.editRef;n&&(o.preventDefault(),t(n))}}};return window.addEventListener(`keydown`,o),()=>window.removeEventListener(`keydown`,o)},[s,e,r,t,n]);let c=e[Math.min(r,e.length-1)];if(!c)return null;let{base:l,dir:u}=ti(c.filePath);return(0,$.jsx)(`div`,{ref:a,className:`mt-0.5 overflow-hidden rounded-[10px] border border-border-soft bg-bg`,children:(0,$.jsxs)(`div`,{className:`grid h-[356px] grid-cols-[294px_1fr] grid-rows-[minmax(0,1fr)] bg-surface-elevated`,children:[(0,$.jsxs)(`div`,{ref:o,className:`min-h-0 overflow-y-auto border-r border-border-soft`,children:[e.map((e,t)=>(0,$.jsx)(Qr,{change:e,dense:!0,selected:t===r,onClick:()=>i(t)},e.filePath)),(0,$.jsx)(`p`,{className:`px-2.5 pt-2 pb-2.5 font-mono text-[10px] text-text-subtle`,children:`j / k to move · enter to jump`})]}),(0,$.jsxs)(`div`,{className:`min-h-0 overflow-y-auto`,children:[(0,$.jsxs)(`div`,{className:`sticky top-0 z-10 flex items-center gap-2 border-b border-border-soft bg-surface-elevated py-[5px] pl-2.5 pr-2`,children:[(0,$.jsx)(`span`,{className:`shrink-0 font-mono text-xs font-medium text-text-primary`,children:l}),u&&(0,$.jsx)(`span`,{title:c.filePath,className:`min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap font-mono text-[10.5px] text-text-subtle [direction:rtl] text-left`,children:u}),(0,$.jsx)(Zr,{added:c.linesAdded,removed:c.linesRemoved,className:`shrink-0 font-mono text-[11px]`}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>void gt(c.filePath),className:`shrink-0 rounded-md px-1.5 py-1 font-mono text-[10px] text-text-subtle transition-colors hover:bg-surface hover:text-text-primary`,children:`copy path`}),(0,$.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Close change tray`,className:`inline-flex size-8 shrink-0 items-center justify-center rounded-lg text-text-subtle transition-colors hover:bg-surface hover:text-text-primary`,children:(0,$.jsx)(_,{className:`size-3.5`})})]}),(0,$.jsx)(ei,{change:c,onJump:t})]})]})})}function ai(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t<0?e:e.slice(t+1)}function oi({label:e,onClick:t,children:n}){return(0,$.jsx)(`button`,{type:`button`,onClick:t,"aria-label":e,className:`inline-flex size-11 shrink-0 items-center justify-center rounded-lg text-text-subtle transition-colors hover:bg-surface hover:text-text-primary`,children:n})}function si({changes:e,totals:t,open:n,onClose:r,onJump:a}){let[o,s]=(0,Q.useState)(null),c=o==null?null:e[o],l=(0,Q.useRef)(null),u=()=>{s(null),r()},d=e=>{u(),a(e)};return(0,Q.useEffect)(()=>{if(!n)return;let e=l.current,t=()=>Array.from(e?.querySelectorAll(`button:not([disabled])`)??[]);t()[0]?.focus();let r=e=>{if(e.key===`Escape`){e.preventDefault(),u();return}if(e.key!==`Tab`)return;let n=t();if(n.length===0)return;let r=n[0],i=n[n.length-1];e.shiftKey&&document.activeElement===r?(e.preventDefault(),i.focus()):!e.shiftKey&&document.activeElement===i&&(e.preventDefault(),r.focus())};return window.addEventListener(`keydown`,r),()=>window.removeEventListener(`keydown`,r)},[n,o]),(0,$.jsx)(it,{open:n,onClose:u,className:`flex max-h-[85%] flex-col rounded-t-[14px] motion-reduce:animate-none`,children:(0,$.jsx)(`div`,{ref:l,className:`flex min-h-0 flex-1 flex-col`,children:c?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1 border-b border-border-soft px-1 pb-1`,children:[(0,$.jsx)(oi,{label:`Back to file list`,onClick:()=>s(null),children:(0,$.jsx)(i,{className:`size-4`})}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs font-medium text-text-primary`,children:ai(c.filePath)}),(0,$.jsx)(Zr,{added:c.linesAdded,removed:c.linesRemoved,className:`shrink-0 font-mono text-[11px]`}),(0,$.jsx)(oi,{label:`Close`,onClick:u,children:(0,$.jsx)(_,{className:`size-4`})})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1 border-b border-border-soft py-1.5 pl-3 pr-2`,children:[(0,$.jsx)(`span`,{title:c.filePath,className:`min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap font-mono text-[10.5px] text-text-subtle [direction:rtl] text-left`,children:c.filePath}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>void gt(c.filePath),className:`inline-flex min-h-11 shrink-0 items-center rounded-md px-2.5 font-mono text-[10px] text-text-subtle transition-colors hover:bg-surface hover:text-text-primary`,children:`copy`}),c.edits[0]?.editRef&&(0,$.jsxs)(`button`,{type:`button`,onClick:()=>d(c.edits[0].editRef),className:`inline-flex min-h-11 shrink-0 items-center gap-1 rounded-md px-2.5 font-mono text-[10px] text-text-subtle transition-colors hover:bg-surface hover:text-primary`,children:[(0,$.jsx)(j,{className:`size-3`}),`card`]})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:(0,$.jsx)(ei,{change:c,onJump:d})})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border-soft px-3 pb-2`,children:[(0,$.jsxs)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-xs font-medium text-text-primary`,children:[`Changed this turn · `,e.length,` file`,e.length===1?``:`s`]}),(0,$.jsx)(Zr,{added:t.added,removed:t.removed,className:`shrink-0 font-mono text-[11px]`}),(0,$.jsx)(oi,{label:`Close`,onClick:u,children:(0,$.jsx)(_,{className:`size-4`})})]}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:e.map((e,t)=>(0,$.jsx)(Qr,{change:e,onClick:()=>s(t)},e.filePath))})]})})})}function ci({timestamp:e,content:t,changes:n,onJumpToEdit:r}){let[i,a]=(0,Q.useState)(!1),o=Qe(),s=(0,Q.useRef)(null),c=()=>{a(!1),s.current?.focus()},l=(0,$.jsx)(Gr,{timestamp:e,content:t,className:`-mt-1.5`,children:n&&n.length>0&&(0,$.jsx)(qr,{ref:s,count:n.length,totals:Kr(n),open:i,onToggle:()=>i?c():a(!0)})});return!n||n.length===0?l:(0,$.jsxs)($.Fragment,{children:[l,o?(0,$.jsx)(si,{changes:n,totals:Kr(n),open:i,onClose:c,onJump:r??(()=>{})}):i&&(0,$.jsx)(ii,{changes:n,onJump:e=>{a(!1),r?.(e)},onClose:c})]})}function li({usage:e}){let[t,n]=(0,Q.useState)(!1),r=Un(e);if(r.level===`ok`)return null;let i=Kn(e),a=Rn(e),o=Math.round(e.cacheHitRate*100),s=r.level===`bad`;return(0,$.jsxs)(`div`,{className:`rounded-md border px-2.5 py-2 text-[11px] ${s?`border-warning/40 bg-warning/10`:`border-border bg-surface`}`,children:[(0,$.jsxs)(`button`,{onClick:()=>n(e=>!e),"aria-expanded":t,className:`flex w-full items-start gap-2 py-1 text-left text-text-secondary transition-colors hover:text-text-primary`,children:[(0,$.jsx)(C,{className:`mt-px size-3.5 shrink-0 ${s?`text-warning`:`text-text-subtle`}`}),(0,$.jsxs)(`span`,{className:`flex-1`,children:[`Costly turn — `,o,`% of a `,qn(a),`-token transcript came from cache, so it cost about`,` `,(0,$.jsxs)(`strong`,{className:`font-semibold`,children:[i.toFixed(1),`x`]}),` a fully cached turn.`]}),(0,$.jsx)(w,{className:`mt-px size-3.5 shrink-0 transition-transform ${t?`rotate-180`:``}`})]}),t&&(0,$.jsxs)(`div`,{className:`mt-2 flex flex-col gap-2 border-t border-border pt-2`,children:[r.reason&&(0,$.jsx)(`p`,{className:`text-text-secondary`,children:r.reason}),(0,$.jsxs)(`dl`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 font-mono text-[10.5px] text-text-subtle`,children:[(0,$.jsx)(ui,{label:`From cache`,value:`${qn(e.cacheReadTokens)} (${o}%)`}),(0,$.jsx)(ui,{label:`Written to cache`,value:qn(e.cacheWriteTokens)}),(0,$.jsx)(ui,{label:`Fresh input`,value:qn(e.inputTokens)}),(0,$.jsx)(ui,{label:`Output`,value:qn(e.outputTokens)}),(0,$.jsx)(ui,{label:`Model`,value:e.model||`unknown`}),(0,$.jsx)(ui,{label:`Cost`,value:`$${e.costUsd.toFixed(4)}`})]}),(0,$.jsx)(`p`,{className:`text-text-subtle`,children:`A turn stays cached while the session keeps running. Closing the last tab of an idle session, switching model, or a retry all restart it, and the next turn re-sends the transcript at full price.`})]})]})}function ui({label:e,value:t}){return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`dt`,{className:`truncate`,children:e}),(0,$.jsx)(`dd`,{className:`truncate text-right text-text-secondary`,children:t})]})}function di(e,t,n,r){let[i,a]=(0,Q.useState)([]),o=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{if(!n||!e||!t){a([]);return}let r=!1;return o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{G.get(`/api/project/${encodeURIComponent(e)}/chat/sessions/${encodeURIComponent(t)}/tasks`).then(e=>{r||a(e)}).catch(()=>{})},300),()=>{r=!0,o.current&&clearTimeout(o.current)}},[e,t,n,r]),i}var fi=new Set([`TaskCreate`,`TaskUpdate`,`TaskStop`]);function pi(e){let t=0;for(let n of e)if(n.events)for(let e of n.events)e.type===`tool_use`&&fi.has(e.tool)&&t++;return t}var mi={completed:{icon:`✓`,cls:`text-success`},in_progress:{icon:`▶`,cls:`text-warning`},stopped:{icon:`■`,cls:`text-text-subtle`},pending:{icon:`○`,cls:`text-text-subtle`}};function hi({projectName:e,sessionId:t,messages:n}){let r=(0,Q.useMemo)(()=>pi(n),[n]),i=di(e,t,r>0,r),[a,o]=(0,Q.useState)(!0);if(i.length===0||i.every(e=>e.status===`completed`||e.status===`stopped`))return null;let s=i.filter(e=>e.status===`completed`).length,c=i.length,l=c?Math.round(s/c*100):0;return(0,$.jsxs)(`div`,{className:`shrink-0 border-b border-border bg-surface/60 backdrop-blur-sm`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`flex items-center gap-2 w-full px-3 min-h-11 text-left text-xs hover:bg-surface transition-colors`,children:[a?(0,$.jsx)(pe,{className:`size-3.5 shrink-0`}):(0,$.jsx)(w,{className:`size-3.5 shrink-0`}),(0,$.jsx)(me,{className:`size-3.5 shrink-0 text-text-secondary`}),(0,$.jsx)(`span`,{className:`text-text-primary font-medium`,children:`Tasks`}),(0,$.jsxs)(`span`,{className:`text-text-subtle`,children:[s,`/`,c,` done`]}),(0,$.jsx)(`span`,{className:`ml-auto h-1 w-16 rounded-full bg-border overflow-hidden shrink-0`,children:(0,$.jsx)(`span`,{className:`block h-full bg-success/70`,style:{width:`${l}%`}})})]}),!a&&(0,$.jsx)(`ul`,{className:`px-3 pb-2 space-y-0.5 max-h-48 overflow-y-auto`,children:i.map(e=>(0,$.jsx)(gi,{task:e},e.id))})]})}function gi({task:e}){let t=mi[e.status]??mi.pending,n=e.status===`in_progress`;return(0,$.jsxs)(`li`,{className:`flex items-start gap-1.5 text-xs rounded px-1 ${n?`bg-warning/10`:``}`,children:[(0,$.jsx)(`span`,{className:`shrink-0 mt-0.5 ${t.cls}`,children:t.icon}),(0,$.jsx)(`span`,{className:e.status===`completed`?`line-through text-text-subtle`:n?`text-text-primary font-medium`:`text-text-secondary`,children:e.subject||(0,$.jsxs)(`span`,{className:`text-text-subtle italic`,children:[`#`,e.id,` (no title)`]})})]})}var _i=/read the full transcript at:\s*(\S+\.jsonl)/i;function vi(e){return e.match(_i)?.[1]?.trim()??null}var yi=class extends Q.Component{state={hasError:!1};static getDerivedStateFromError(){return{hasError:!0}}render(){return this.state.hasError?this.props.fallback?this.props.fallback:this.props.fallbackContent?(0,$.jsx)(`div`,{className:`text-sm whitespace-pre-wrap break-words text-text-primary opacity-80`,children:this.props.fallbackContent}):null:this.props.children}},bi=q(()=>import(`./markdown-renderer-LJdVMbGl.js`),__vite__mapDeps([4,5,1,2,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43])),xi=(0,Q.lazy)(()=>bi.then(e=>({default:e.MarkdownRenderer}))),Si=/<teammate-message[^>]*>[\s\S]*?<\/teammate-message>/g;function Ci(e){return e.replace(Si,``).replace(/\n{3,}/g,`
3
-
4
- `).trim()}function wi({content:e,projectName:t,isStreaming:n}){let r=Ci(e);return r?(0,$.jsx)(yi,{fallbackContent:r,children:(0,$.jsx)(Q.Suspense,{fallback:(0,$.jsx)(`div`,{className:`animate-pulse h-4 bg-muted rounded`}),children:(0,$.jsx)(xi,{content:r,projectName:t,codeActions:!0,isStreaming:n})})}):null}function Ti({group:e,onNavigate:t,disabled:n}){if(!e||e.ids.length<2)return null;let{ids:r,currentIndex:a}=e,o=e=>{let i=r[e];i&&!n&&t(i)};return(0,$.jsxs)(`div`,{className:`mt-1 flex items-center gap-1 text-xs text-text-subtle select-none`,children:[(0,$.jsx)(`button`,{type:`button`,onClick:()=>o(a-1),disabled:n||a<=0,"aria-label":`Previous version`,className:`flex items-center justify-center rounded p-0.5 hover:text-text-primary disabled:opacity-30 disabled:cursor-default`,children:(0,$.jsx)(i,{className:`size-3.5`})}),(0,$.jsxs)(`span`,{className:`tabular-nums`,children:[a+1,`/`,r.length]}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>o(a+1),disabled:n||a>=r.length-1,"aria-label":`Next version`,className:`flex items-center justify-center rounded p-0.5 hover:text-text-primary disabled:opacity-30 disabled:cursor-default`,children:(0,$.jsx)(pe,{className:`size-3.5`})})]})}var Ei={"system-reminder":`Context`,claudeMd:`CLAUDE.md`,gitStatus:`Git Status`,currentDate:`Date`,fast_mode_info:`Fast Mode`,"available-deferred-tools":`Tools`,"task-notification":`Task Result`,environment_details:`Environment`,"local-command-caveat":`System`};function Di(e){let t=[],n=/<(system-reminder|available-deferred-tools|antml:[\w-]+|fast_mode_info|claudeMd|gitStatus|currentDate|task-notification|environment_details|local-command-caveat)[^>]*>([\s\S]*?)<\/\1>/g,r;for(;(r=n.exec(e))!==null;){let e=r[1];t.push({name:e,label:Ei[e]??e.replace(/^antml:/,``).replace(/-/g,` `),content:r[2].trim()})}return{cleanText:e.replace(n,``).trim(),tags:t}}function Oi(e){let t=e.match(/<command-name>([\s\S]*?)<\/command-name>/);if(!t)return{command:null,cleanText:e};let n=t[1].trim(),r=e.match(/<command-args>([\s\S]*?)<\/command-args>/)?.[1]?.trim()||void 0,i=e.replace(/<command-name>[\s\S]*?<\/command-name>/g,``).replace(/<command-message>[\s\S]*?<\/command-message>/g,``).replace(/<command-args>[\s\S]*?<\/command-args>/g,``).trim();return{command:{name:n,args:r},cleanText:i}}function ki(e){let t=e.match(/^Use the (\S+) agent to\s?/);return t?{agent:t[1],cleanText:e.slice(t[0].length)}:{agent:null,cleanText:e}}function Ai(e){let t=/<ide_opened_file>([\s\S]*?)<\/ide_opened_file>/g.exec(e);return t?{idePath:t[1].match(/opened the file (.+?) in the IDE/)?.[1]?.trim()??null,cleanText:e.replace(/<ide_opened_file>[\s\S]*?<\/ide_opened_file>/g,``).trim()}:{idePath:null,cleanText:e}}function ji(e){let t=[],n=e;for(;;){let e=n.match(/^\[Attached image \(contents included in this message\): (.+?)\]\n*/);if(e){t.push(e[1]),n=n.slice(e[0].length);continue}break}if(t.length>0){let e=ji(n);return{files:[...t,...e.files],text:e.text}}let r=n.match(/^\[Attached file: (.+?)\]\n*/);if(r)return{files:[r[1]],text:n.slice(r[0].length)};let i=n.match(/^\[Attached files:\n([\s\S]+?)\]\n*/);return i?{files:i[1].split(`
5
- `).map(e=>e.trim()).filter(Boolean),text:n.slice(i[0].length)}:{files:[],text:n}}function Mi(e){let t=[],n=e,r=/^```(?:bash|sh|shell|zsh)\n([\s\S]*?)\n```\s*(?:\n\n?)?/,i;for(;(i=n.match(r))!==null;)t.push(i[1]),n=n.slice(i[0].length);return{blocks:t,remainingText:n.trim()}}function Ni(e){let{idePath:t,cleanText:n}=Ai(e),{blocks:r,remainingText:i}=Mi(n),a=ji(i),{cleanText:o,tags:s}=Di(a.text.replace(/<local-command-(?:stdout|stderr)>([\s\S]*?)<\/local-command-(?:stdout|stderr)>/g,`$1`)),{command:c,cleanText:l}=Oi(o),{agent:u,cleanText:d}=ki(l),f=c?.args?d?`${c.args}\n\n${d}`:c.args:d;return{files:a.files,text:f,body:d,tags:s,command:c,terminalBlocks:r,idePath:t,agent:u}}function Pi(e){let{agent:t,body:n,command:r}=Ni(e);if(!r)return{agent:t,text:n};let i=`/${r.name.replace(/^\/+/,``)}${r.args?` ${r.args}`:``}`;return{agent:t,text:n?`${i}\n\n${n}`:i}}var Fi=new Set([`.png`,`.jpg`,`.jpeg`,`.gif`,`.webp`]);function Ii(e,t){let n=je(e);return`/api/project/${encodeURIComponent(t??`_`)}/chat/uploads/${encodeURIComponent(n)}`}function Li(e){let t=e.lastIndexOf(`.`);return t===-1?!1:Fi.has(e.slice(t).toLowerCase())}var Ri=new Map;function zi(e){let[t,n]=(0,Q.useState)(()=>Ri.get(e)?.url??null),[r,i]=(0,Q.useState)(!1);return(0,Q.useEffect)(()=>{let t=Ri.get(e);if(t){n(t.url);return}let r=!1,a=Te();return fetch(e,{headers:a?{Authorization:`Bearer ${a}`}:{}}).then(e=>{if(!e.ok)throw Error(`Failed`);return e.blob()}).then(t=>{if(r)return;let i=URL.createObjectURL(t);Ri.set(e,{url:i}),n(i)}).catch(()=>{r||i(!0)}),()=>{r=!0}},[e]),{blobUrl:t,error:r}}function Bi({filePath:e,projectName:t}){let{blobUrl:n,error:r}=zi(Ii(e,t)),i=At(e=>e.open),a=je(e);return(0,$.jsxs)(`button`,{type:`button`,onClick:e=>n&&i(n,a,Xt(e.currentTarget)),className:`flex items-center gap-1 rounded-md border border-border/60 bg-background/40 px-1.5 py-0.5 text-[11px] text-text-secondary hover:bg-surface transition-colors cursor-pointer`,children:[n?(0,$.jsx)(`img`,{src:n,alt:a,[Zt]:``,className:`size-4 rounded-sm object-cover shrink-0`}):r?(0,$.jsx)(p,{className:`size-3 shrink-0`}):(0,$.jsx)(`div`,{className:`size-4 rounded-sm bg-surface animate-pulse shrink-0`}),(0,$.jsx)(`span`,{className:`truncate max-w-32`,children:a})]})}var Vi=new Set([`task-notification`,`environment_details`,`local-command-caveat`]);function Hi({content:e,messageId:t,timestamp:n,projectName:r,onFork:i,onEdit:a,isEditing:o,sessionId:s,providerId:c,versionGroup:l,onNavigateVersion:u,versionNavDisabled:d}){let{files:f,text:p,tags:m,command:h,terminalBlocks:g,idePath:_,agent:v}=(0,Q.useMemo)(()=>Ni(e),[e]),y=m.some(e=>Vi.has(e.name)),[b,x]=(0,Q.useState)(!1),[C,ee]=(0,Q.useState)(!1),T=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{let e=T.current;if(!e)return;let t=()=>ee(e.scrollHeight>e.clientHeight+2);t();let n=new ResizeObserver(t);return n.observe(e),()=>n.disconnect()},[p]),(0,$.jsxs)(`div`,{className:J(`flex flex-col gap-1`,!y&&`items-end`),children:[(0,$.jsxs)(`div`,{"data-user-message":y?void 0:`true`,style:y?void 0:{borderRadius:`var(--rad) var(--rad) 4px var(--rad)`},className:J(`group/user relative px-3 py-2 text-sm border shadow-sm transition-all`,y?`rounded-lg bg-surface/40 border-border/40 text-text-secondary`:`max-w-[80%] bg-accent-wash border-accent-wash-border text-text`,o&&`ring-2 ring-primary/60 border-primary/40`),children:[m.length>0&&(0,$.jsx)(Wi,{tags:m}),v&&(0,$.jsx)(`div`,{className:`flex items-center gap-1.5 mb-0.5`,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md bg-sky-500/15 border border-sky-500/25 px-2 py-0.5 text-xs font-medium text-sky-600 dark:text-sky-400`,children:[(0,$.jsx)(ve,{className:`size-3 shrink-0`}),v]})}),h&&(0,$.jsx)(`div`,{className:`flex items-center gap-1.5 mb-0.5`,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-md bg-primary/15 border border-primary/20 px-2 py-0.5 text-xs font-medium text-primary`,children:[(0,$.jsx)(Sn,{className:`size-3 shrink-0`}),h.name]})}),_&&(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 mb-1 text-[11px] text-text-subtle`,children:[(0,$.jsx)(`span`,{className:`shrink-0`,children:`Opened in IDE:`}),(0,$.jsx)(Ji,{path:_,projectName:r})]}),f.length>0&&(0,$.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:f.map((e,t)=>Li(e)?(0,$.jsx)(Bi,{filePath:e,projectName:r},t):(0,$.jsxs)(`div`,{className:`flex items-center gap-1 rounded-md border border-border/60 bg-background/40 px-1.5 py-0.5 text-[11px] text-text-secondary`,children:[(0,$.jsx)(ye,{className:`size-3 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate max-w-32`,children:je(e)})]},t))}),g.length>0&&(0,$.jsx)(`div`,{className:`space-y-1.5`,children:g.map((e,t)=>(0,$.jsx)(Ui,{content:e},t))}),p&&(0,$.jsx)(`div`,{ref:T,className:J(`whitespace-pre-wrap break-words transition-all duration-200 select-text`,!b&&`line-clamp-2`,b&&`max-h-[50vh] overflow-y-auto`),children:y?(0,$.jsx)(Xi,{text:p,projectName:r}):(0,$.jsx)(Yi,{text:p})}),(C||b)&&(0,$.jsx)(`button`,{onClick:()=>x(!b),className:J(`flex items-center gap-1 text-xs mt-1 transition-colors`,y?`text-text-subtle hover:text-text-secondary`:`text-primary/70 hover:text-primary`),children:b?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(S,{className:`size-3`}),`Show less`]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(w,{className:`size-3`}),`Show more`]})}),!y&&u&&(0,$.jsx)(Ti,{group:l,onNavigate:u,disabled:d})]}),!y&&(0,$.jsxs)(Gr,{timestamp:n,content:e,children:[a&&(0,$.jsx)(Ur,{icon:(0,$.jsx)(ie,{className:`size-3.5`}),label:`Edit`,title:`Edit this message (continue in the same tab)`,onClick:a}),i&&(0,$.jsx)(Ur,{icon:(0,$.jsx)(se,{className:`size-3.5`}),label:`Fork`,title:`Retry from this message (fork into a new tab)`,onClick:i})]})]})}function Ui({content:e}){let[t,n]=(0,Q.useState)(!1);return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`button`,{type:`button`,onClick:()=>n(!t),className:J(`flex items-center gap-1.5 rounded-md border px-2 py-1 text-xs transition-colors`,t?`border-primary/50 bg-surface-elevated text-text-primary`:`border-border/60 bg-background/40 text-text-secondary hover:bg-surface`),children:[(0,$.jsx)(o,{className:`size-3.5 shrink-0`}),(0,$.jsx)(`span`,{children:`Terminal output`}),(0,$.jsx)(w,{className:J(`size-3 shrink-0 transition-transform`,t&&`rotate-180`)})]}),t&&(0,$.jsx)(`pre`,{className:`mt-1 max-h-40 overflow-auto rounded-md border border-border bg-background p-2 text-xs text-text-primary font-mono whitespace-pre-wrap break-words`,children:e})]})}function Wi({tags:e}){return(0,$.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:e.map((e,t)=>(0,$.jsx)(Gi,{tag:e},t))})}function Gi({tag:e}){let[t,n]=(0,Q.useState)(!1);return e.name===`task-notification`?(0,$.jsx)(qi,{content:e.content}):(0,$.jsxs)(`div`,{className:`text-xs`,children:[(0,$.jsxs)(`button`,{onClick:()=>n(!t),className:`flex items-center gap-1 rounded-full border border-border/60 bg-surface/50 px-2 py-0.5 text-text-subtle hover:text-text-secondary hover:bg-surface transition-colors`,children:[(0,$.jsx)(c,{className:`size-2.5`}),(0,$.jsx)(`span`,{children:e.label}),(0,$.jsx)(pe,{className:J(`size-2.5 transition-transform`,t&&`rotate-90`)})]}),t&&(0,$.jsx)(`div`,{className:`mt-1 rounded border border-border/40 bg-surface/30 px-2 py-1.5 text-[11px] text-text-subtle/80 whitespace-pre-wrap max-h-40 overflow-y-auto leading-relaxed`,children:e.content})]})}function Ki(e,t){return e.match(RegExp(`<${t}>([\\s\\S]*?)</${t}>`))?.[1]?.trim()||void 0}function qi({content:e}){let[t,n]=(0,Q.useState)(!1),r=Ki(e,`status`),i=Ki(e,`summary`),a=Ki(e,`output-file`),o=Ki(e,`result`);return(0,$.jsxs)(`div`,{className:`text-xs`,children:[(0,$.jsxs)(`button`,{onClick:()=>n(!t),className:`flex items-center gap-1.5 rounded-full border border-border/60 bg-surface/50 px-2 py-0.5 text-text-subtle hover:text-text-secondary hover:bg-surface transition-colors`,children:[r===`completed`?(0,$.jsx)(u,{className:`size-2.5 text-success`}):(0,$.jsx)(ae,{className:`size-2.5 text-warning`}),(0,$.jsx)(`span`,{className:`truncate max-w-80`,children:i??`Task notification`}),(0,$.jsx)(pe,{className:J(`size-2.5 transition-transform shrink-0`,t&&`rotate-90`)})]}),t&&(0,$.jsxs)(`div`,{className:`mt-1 rounded border border-border/40 bg-surface/30 px-2 py-1.5 space-y-1.5`,children:[i&&(0,$.jsx)(`p`,{className:`text-[11px] text-text-secondary`,children:i}),a&&(0,$.jsx)(Ji,{path:a}),o&&(0,$.jsx)(`div`,{className:`text-[11px] text-text-subtle/80 max-h-60 overflow-y-auto leading-relaxed`,children:(0,$.jsx)(wi,{content:o})})]})]})}function Ji({path:e,projectName:t}){return(0,$.jsxs)(`button`,{type:`button`,onClick:(0,Q.useCallback)(()=>{let n=We.getState().openTab,r=t??Pe.getState().activeProject?.name,i=je(e),a={filePath:e};r&&(a.projectName=r),G.get(`/api/fs/read?path=${encodeURIComponent(e)}`).then(()=>{n({type:`editor`,title:i,metadata:a,projectId:null,closable:!0})}).catch(()=>{n({type:`editor`,title:i,metadata:a,projectId:null,closable:!0})})},[e,t]),className:`inline-flex items-center gap-1 rounded border border-border/50 bg-surface/50 px-1.5 py-0.5 font-mono text-[10px] text-text-secondary hover:text-text-primary hover:bg-surface transition-colors cursor-pointer`,children:[(0,$.jsx)(ye,{className:`size-2.5 shrink-0`}),(0,$.jsx)(`span`,{className:`truncate max-w-60`,children:je(e)}),(0,$.jsx)(A,{className:`size-2 shrink-0 opacity-50`})]})}function Yi({text:e}){let t=(0,Q.useMemo)(()=>{let t=/(https?:\/\/[^\s<>()]+[^\s<>().,;:!?'"])/g,n=[],r=0,i;for(;(i=t.exec(e))!==null;)i.index>r&&n.push({kind:`text`,value:e.slice(r,i.index)}),n.push({kind:`url`,value:i[1]}),r=i.index+i[0].length;return r<e.length&&n.push({kind:`text`,value:e.slice(r)}),n},[e]);return t.every(e=>e.kind===`text`)?(0,$.jsx)($.Fragment,{children:e}):(0,$.jsx)($.Fragment,{children:t.map((e,t)=>e.kind===`url`?(0,$.jsx)(`a`,{href:e.value,target:`_blank`,rel:`noopener noreferrer`,className:`text-primary underline underline-offset-2 hover:text-primary/80 break-all`,onClick:e=>e.stopPropagation(),children:e.value},t):(0,$.jsx)(`span`,{children:e.value},t))})}function Xi({text:e,projectName:t}){return(0,$.jsx)($.Fragment,{children:(0,Q.useMemo)(()=>{let t=/(\/(?:[\w.\-]+\/)+[\w.\-]+)/g,n=[],r=0,i;for(;(i=t.exec(e))!==null;)i.index>r&&n.push({kind:`text`,value:e.slice(r,i.index)}),n.push({kind:`path`,value:i[1]}),r=i.index+i[0].length;return r<e.length&&n.push({kind:`text`,value:e.slice(r)}),n},[e]).map((e,n)=>e.kind===`path`?(0,$.jsx)(Ji,{path:e.value,projectName:t},n):(0,$.jsx)(`span`,{children:e.value},n))})}function Zi({events:e,isStreaming:t,projectName:n,bashPartialOutput:r}){let i=[],a=``,o=``;for(let t=0;t<e.length;t++){let n=e[t];if(n.type===`thinking`){a&&=(i.push({kind:`text`,content:a}),``),o+=n.content;continue}if(o&&=(i.push({kind:`thinking`,content:o}),``),n.type===`account_retry`){a&&=(i.push({kind:`text`,content:a}),``);let e=n.accountLabel??`another account`,t=n.reason??`Auth failed`;i.push({kind:`text`,content:`\n\n> ↻ ${t} — retrying with **${e}**...\n\n`});continue}if(n.type===`text`)a+=n.content;else if(n.type===`tool_use`){let e=n.toolUseId,t=e?i.find(t=>t.kind===`tool`&&t.tool.type===`tool_use`&&t.tool.toolUseId===e):void 0;if(t){t.tool=n;continue}a&&=(i.push({kind:`text`,content:a}),``),i.push({kind:`tool`,tool:n})}else n.type===`tool_result`||(a&&=(i.push({kind:`text`,content:a}),``),i.push({kind:`tool`,tool:n}))}o&&i.push({kind:`thinking`,content:o}),a&&i.push({kind:`text`,content:a});let s=e.filter(e=>e.type===`tool_result`);for(let e of s){let t=e.toolUseId;if(t){let n=i.find(e=>e.kind===`tool`&&e.tool.type===`tool_use`&&e.tool.toolUseId===t);if(n){n.result=e;continue}}let n=i.find(e=>e.kind===`tool`&&!e.result);n&&(n.result=e)}for(let e of i)if(e.kind===`tool`&&!e.result&&e.tool.type===`tool_use`){let t=e.tool.result;t&&(e.result={type:`tool_result`,output:t.output,isError:t.isError,exitCode:t.exitCode})}for(let e=0;e<i.length;e++){let n=i[e];if(n.kind===`tool`&&!n.result){let r=!1;if(n.tool.type===`tool_use`&&n.tool.tool===`Read`){let t=n.tool.input?.file_path;t&&(r=i.slice(e+1).some(e=>e.kind===`tool`&&e.result&&e.tool.type===`tool_use`&&e.tool.tool===`Edit`&&e.tool.input?.file_path===t))}n.completed=r||!t}}return(0,$.jsx)($.Fragment,{children:i.map((e,a)=>{if(e.kind===`thinking`)return(0,$.jsx)(Qi,{content:e.content,projectName:n,isStreaming:t&&a===i.length-1},`think-${a}`);if(e.kind===`text`){let r=t&&a===i.length-1;return(0,$.jsx)(`div`,{className:`text-sm text-text-primary select-text`,children:(0,$.jsx)($i,{content:e.content,animate:r,projectName:n})},`text-${a}`)}return(0,$.jsx)(Gt,{tool:e.tool,result:e.result,completed:e.completed,projectName:n,bashPartialOutput:r},`tool-${a}`)})})}function Qi({content:e,projectName:t,isStreaming:n}){let[r,i]=(0,Q.useState)(n),a=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{!n&&e.length>0&&i(!1)},[n,e.length]),(0,Q.useEffect)(()=>{n&&r&&a.current&&(a.current.scrollTop=a.current.scrollHeight)},[e,n,r]),(0,$.jsxs)(`div`,{className:`rounded border border-border/50 bg-surface/30 text-xs`,children:[(0,$.jsxs)(`button`,{onClick:()=>i(!r),className:`flex items-center gap-2 px-2 py-1.5 w-full text-left hover:bg-surface transition-colors text-text-subtle`,children:[n?(0,$.jsx)(R,{className:`size-3 animate-spin`}):(0,$.jsx)(pe,{className:`size-3 transition-transform ${r?`rotate-90`:``}`}),(0,$.jsxs)(`span`,{children:[`Thinking`,n?`...`:``]}),!n&&(0,$.jsx)(`span`,{className:`text-text-subtle/50 ml-auto`,children:e.length>100?`${Math.round(e.length/4)} tokens`:``})]}),r&&(0,$.jsx)(`div`,{ref:a,className:`max-h-60 overflow-y-auto`,children:(0,$.jsx)(`div`,{className:`px-2 pb-2 text-text-subtle/80 text-[11px] leading-relaxed`,children:(0,$.jsx)(wi,{content:e,projectName:t,isStreaming:n})})})]})}function $i({content:e,animate:t,projectName:n}){return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(wi,{content:e,projectName:n,isStreaming:t}),t&&(0,$.jsx)(`span`,{className:`text-text-subtle text-sm animate-pulse`,children:`Thinking...`})]})}function ea({lastMessage:e,phase:t,elapsed:n,statusMessage:r}){let i=!e||e.role!==`assistant`,a=e?.events?.length?e.events[e.events.length-1].type===`tool_result`:!1;return!r&&!i&&!a?null:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1 text-sm`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-text-subtle`,children:[(0,$.jsx)(R,{className:`size-3 animate-spin`}),(0,$.jsxs)(`span`,{children:[r||(t===`initializing`?`Initializing`:t===`connecting`?`Connecting`:t===`thinking`?`Thinking`:`Processing`),i&&(n??0)>0&&(0,$.jsxs)(`span`,{className:`text-text-subtle/60`,children:[`... (`,n,`s)`]})]})]}),t===`connecting`&&(n??0)>=30&&(0,$.jsx)(`p`,{className:`text-xs text-warning/80 ml-5`,children:`Taking longer than usual — may be rate-limited or API slow. Try sending a new message to retry.`})]})}function ta({compaction:e}){let{trigger:t,preTokens:n,postTokens:i,savedTokens:a,durationMs:o}=e;return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 pt-2 text-[11px] text-text-subtle`,title:[t===`manual`?`Ran with /compact`:`Ran automatically on a full context window`,`${qn(n)} → ${qn(i)} tokens`,...o==null?[]:[`took ${na(o)}`]].join(` · `),children:[(0,$.jsx)(`div`,{className:`h-px flex-1 bg-border`}),(0,$.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1.5`,children:[(0,$.jsx)(r,{className:`size-3.5`}),(0,$.jsxs)(`span`,{className:`tabular-nums`,children:[`Compacted session · saved `,qn(a),` tokens`]})]}),(0,$.jsx)(`div`,{className:`h-px flex-1 bg-border`})]})}function na(e){let t=Math.round(e/1e3);return t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}function ra(){let[e,t]=(0,Q.useState)(()=>Date.now());return(0,Q.useEffect)(()=>{let e=setInterval(()=>t(Date.now()),6e4);return()=>clearInterval(e)},[]),e}function ia(e,t){let n=aa(e,t);return n.kind===`cold`?{idleMs:n.idleMs,reason:n.reason,...n.contextTokens!=null&&{contextTokens:n.contextTokens}}:null}function aa(e,t){if(!e)return{kind:`unknown`};if(e.compactedAt!=null)return{kind:`cold`,reason:`compacted`,idleMs:Math.max(0,t-e.compactedAt)};if(e.lastTurnEndedAt==null||e.billedPrefixTokens==null||e.billedPrefixTokens<2e4)return{kind:`unknown`};let n=t-e.lastTurnEndedAt;return n<e.ttlMs?{kind:`warm`,remainingMs:Math.min(e.ttlMs,e.ttlMs-n)}:{kind:`cold`,reason:`expired`,idleMs:n,...e.contextTokens!=null&&{contextTokens:e.contextTokens}}}var oa=6e4,sa=60*oa,ca=24*sa;function la(e){if(e>=ca){let t=Math.floor(e/ca),n=Math.floor(e%ca/sa);return n>0?`${t}d ${n}h`:`${t}d`}if(e>=sa){let t=Math.floor(e/sa),n=Math.floor(e%sa/oa);return n>0?`${t}h ${n}m`:`${t}h`}return`${Math.max(1,Math.floor(e/oa))}m`}function ua(e){return`${Math.max(1,Math.ceil(e/oa))}m`}function da(e){if(e>=1e6){let t=e/1e6;return`${t>=10?Math.round(t):t.toFixed(1)}M`}return e>=1e3?`${Math.round(e/1e3)}k`:`${e}`}function fa({promptCache:e}){let t=ia(e,ra());return t?(0,$.jsx)(`div`,{className:`px-4 pt-4 pb-4 select-none`,children:(0,$.jsxs)(`div`,{className:`flex w-fit items-start gap-2 rounded-md border border-border bg-surface px-2.5 py-2 text-[11px] text-text-secondary`,children:[(0,$.jsx)(h,{className:`mt-px size-3.5 shrink-0 text-text-subtle`}),t.reason===`compacted`?(0,$.jsxs)(`span`,{children:[`The conversation was compacted`,` `,(0,$.jsx)(`span`,{className:`tabular-nums`,children:la(t.idleMs)}),` ago, so the prompt cache no longer covers it and your next message will re-cache it.`]}):(0,$.jsxs)(`span`,{children:[`Idle `,(0,$.jsx)(`span`,{className:`tabular-nums`,children:la(t.idleMs)}),`. The prompt cache has likely expired, so your next message re-sends`,` `,t.contextTokens==null?`the whole transcript`:(0,$.jsxs)($.Fragment,{children:[`about`,` `,(0,$.jsx)(`span`,{className:`tabular-nums`,children:da(t.contextTokens)}),` `,`tokens`]}),` `,`at full price.`]})]})}):null}function pa({projectName:e,onSelectSession:t}){return(0,$.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-6 text-text-secondary overflow-y-auto`,children:[(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 px-4 w-full`,children:[(0,$.jsx)(ve,{className:`size-10 text-text-subtle`}),(0,$.jsx)(`p`,{className:`text-sm`,children:`Send a message to start a new conversation`}),(0,$.jsx)(en,{compact:!0})]}),(0,$.jsx)(Dt,{projectName:e,onSelectSession:t,className:`w-full px-4`})]})}var ma=3200,ha=1e3,ga={hasAbove:!1,atBottom:!0,idx:0,total:0};function _a({scrollElement:e,userIndices:t,scrollToBottom:n}){let r=Qe(),[i,a]=(0,Q.useState)(ga),[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(0),u=(0,Q.useRef)(ma),f=(0,Q.useRef)(null),p=(0,Q.useRef)(null),m=(0,Q.useRef)(!1),h=(0,Q.useRef)(!1),g=(e,t,n)=>t.getBoundingClientRect().top-n+e.scrollTop,_=(0,Q.useCallback)(e=>Array.from(e.querySelectorAll(`[data-msg-index]`)).filter(e=>t.includes(Number(e.dataset.msgIndex))),[t]);(0,Q.useEffect)(()=>{let t=e;if(!t)return;let n=0,r=()=>{let e=t.scrollTop,n=t.getBoundingClientRect().top,r=_(t).map(e=>g(t,e,n)),i=0;for(let t=0;t<r.length;t++)r[t]<=e+12&&(i=t+1);let o={hasAbove:r.some(t=>t<e-4),atBottom:t.scrollHeight-e-t.clientHeight<8,idx:i,total:r.length};a(e=>e.hasAbove===o.hasAbove&&e.atBottom===o.atBottom&&e.idx===o.idx&&e.total===o.total?e:o)},i=()=>{n&&cancelAnimationFrame(n),n=requestAnimationFrame(r)};r(),t.addEventListener(`scroll`,i,{passive:!0});let o=new ResizeObserver(i);return o.observe(t),()=>{n&&cancelAnimationFrame(n),t.removeEventListener(`scroll`,i),o.disconnect()}},[e,_]),(0,Q.useEffect)(()=>{if(!o)return;let e=setTimeout(()=>s(!1),u.current);return()=>clearTimeout(e)},[o,i.idx,c]),(0,Q.useEffect)(()=>{if(!o||!h.current)return;h.current=!1;let e=f.current;(e?.querySelector(`button:not(:disabled)`)??e)?.focus()},[o]),(0,Q.useEffect)(()=>{o||!m.current||(m.current=!1,p.current?.focus())},[o]);let v=(0,Q.useCallback)(()=>{u.current=ma,l(e=>e+1)},[]),y=(0,Q.useCallback)(()=>{let t=e;if(!t)return;let n=t.scrollTop,r=t.getBoundingClientRect().top,i;for(let e of _(t)){let a=g(t,e,r);if(a<n-4)i=a;else break}i!=null&&t.scrollTo({top:i,behavior:`auto`}),v()},[e,_,v]),b=(0,Q.useCallback)(()=>{let t=e;if(!t)return;let r=t.scrollTop,i=t.getBoundingClientRect().top,a=_(t).map(e=>g(t,e,i)).find(e=>e>r+4);a==null?n({animation:`instant`}):t.scrollTo({top:a,behavior:`auto`}),v()},[e,_,n,v]),x=(0,Q.useCallback)(()=>{n({animation:`instant`}),v()},[n,v]);(0,Q.useEffect)(()=>{let t=e;if(!t)return;let n=e=>()=>{Jr(t)&&(e(),u.current=ha,s(!0))},r=n(y),i=n(b);return window.addEventListener(`chat-nav-prev`,r),window.addEventListener(`chat-nav-next`,i),()=>{window.removeEventListener(`chat-nav-prev`,r),window.removeEventListener(`chat-nav-next`,i)}},[e,y,b]);let C=J(`w-[34px] flex items-center justify-center rounded-[9px] text-text-secondary`,`motion-safe:transition-colors hover:bg-surface-elevated hover:text-foreground`,`disabled:opacity-30 disabled:cursor-default disabled:hover:bg-transparent disabled:hover:text-text-secondary`,r?`h-9`:`h-[30px]`);return(0,$.jsx)(`div`,{className:`absolute bottom-3 right-2.5 z-10 flex flex-col items-end gap-1.5`,children:o?(0,$.jsxs)(`div`,{ref:f,tabIndex:-1,className:`flex flex-col p-[3px] rounded-xl border border-border bg-surface-elevated/95 backdrop-blur-[8px] shadow-lg outline-none`,onFocus:()=>{m.current=!0},onKeyDown:e=>{e.key===`Escape`&&s(!1)},children:[(0,$.jsx)(`button`,{type:`button`,onClick:y,disabled:!i.hasAbove,"aria-label":`Jump to previous message`,className:C,children:(0,$.jsx)(S,{className:`size-[15px]`})}),(0,$.jsx)(`span`,{className:`font-mono text-[10px] font-medium text-text-subtle text-center py-px`,"aria-label":`Message ${i.idx||1} of ${i.total}`,children:i.total?`${i.idx||1}/${i.total}`:`0/0`}),(0,$.jsx)(`button`,{type:`button`,onClick:b,disabled:i.atBottom,"aria-label":`Jump to next message`,className:C,children:(0,$.jsx)(w,{className:`size-[15px]`})}),(0,$.jsx)(`button`,{type:`button`,onClick:x,disabled:i.atBottom,"aria-label":`Jump to latest`,className:C,children:(0,$.jsx)(d,{className:`size-[13px]`})})]}):(0,$.jsx)(`button`,{ref:p,type:`button`,onClick:()=>{u.current=ma,h.current=!0,s(!0)},"aria-label":`Navigate messages`,"aria-expanded":!1,title:`Navigate messages`,className:J(`group flex items-center justify-center`,r?`size-11`:`size-[30px]`),children:(0,$.jsx)(`span`,{className:J(`flex items-center justify-center rounded-full border border-border bg-surface-elevated/55 backdrop-blur-[6px] text-text-subtle`,`motion-safe:transition-colors group-hover:bg-surface-elevated group-hover:text-foreground`,r?`size-9`:`size-[30px]`),children:(0,$.jsx)(te,{className:`size-[15px]`})})})})}function va(e){let[t,n]=(0,Q.useState)({}),[r,i]=(0,Q.useState)({}),[a,o]=(0,Q.useState)(0),s=(0,Q.useCallback)((e,t)=>{n(n=>({...n,[e]:[t]})),i(t=>({...t,[e]:``}))},[]),c=(0,Q.useCallback)((e,t)=>{n(n=>{let r=n[e]||[];return{...n,[e]:r.includes(t)?r.filter(e=>e!==t):[...r,t]}})},[]),l=(0,Q.useCallback)((e,t)=>{i(n=>({...n,[e]:t})),t&&n(t=>({...t,[e]:[]}))},[]),u=(0,Q.useCallback)(e=>(t[e]?.length??0)>0||(r[e]?.trim().length??0)>0,[t,r]);return{answers:t,customInputs:r,activeTab:a,setActiveTab:o,handleSingleSelect:s,handleMultiSelect:c,handleCustomInput:l,hasAnswer:u,allAnswered:(0,Q.useMemo)(()=>e.every((e,t)=>u(t)),[e,u]),getFinalAnswer:(0,Q.useCallback)(e=>r[e]?.trim()||(t[e]??[]).join(`, `),[t,r]),goToNextTab:(0,Q.useCallback)(()=>o(t=>Math.min(t+1,e.length-1)),[e.length]),goToPrevTab:(0,Q.useCallback)(()=>o(e=>Math.max(e-1,0)),[])}}function ya(e){let[t,n]=(0,Q.useState)(0),r=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>n(0),[e.activeTab]),(0,Q.useEffect)(()=>{if(!e.enabled)return;let i=r=>{let i=e.customInputRef.current,a=!!i&&i.ownerDocument.activeElement===i;if(!a&&r.key>=`1`&&r.key<=`9`){r.preventDefault();let t=parseInt(r.key)-1;t<e.totalOptions-1&&(n(t),e.onSelectOption(t));return}if(!a&&(r.key===`o`||r.key===`O`||r.key===`0`)){r.preventDefault(),e.customInputRef.current?.focus(),n(e.totalOptions-1);return}if(r.key===`Tab`&&e.questions.length>1){r.preventDefault(),r.shiftKey?e.goToPrevTab():e.goToNextTab();return}if(!a){if(r.key===`ArrowLeft`){r.preventDefault(),e.goToPrevTab();return}if(r.key===`ArrowRight`){r.preventDefault(),e.goToNextTab();return}if(r.key===`ArrowUp`){r.preventDefault(),n(e=>Math.max(0,e-1));return}if(r.key===`ArrowDown`){r.preventDefault(),n(t=>Math.min(e.totalOptions-1,t+1));return}if(r.key===` `){r.preventDefault(),e.onSelectOption(t);return}}if(r.key===`Enter`){r.preventDefault(),e.allAnswered?e.onSubmit():e.hasAnswer(e.activeTab)&&e.goToNextTab();return}r.key===`Escape`&&a&&e.customInputRef.current?.blur()},a=r.current;return a&&(a.addEventListener(`keydown`,i),a.setAttribute(`tabindex`,`0`),a.contains(a.ownerDocument.activeElement)||a.focus()),()=>{a?.removeEventListener(`keydown`,i)}},[e,t]),{focusedOption:t,setFocusedOption:n,containerRef:r}}function ba({questions:e,onSubmit:t,onSkip:n}){let r=(0,Q.useRef)(null),i=va(e),a=e[i.activeTab],o=a?a.options.length+1:0,s=e.length>1,c=(0,Q.useCallback)(()=>{if(!i.allAnswered)return;let n={};e.forEach((e,t)=>{n[e.question]=i.getFinalAnswer(t)}),t(n)},[i.allAnswered,i.getFinalAnswer,e,t]),l=(0,Q.useCallback)(e=>{if(!(!a||e<0))if(e<a.options.length){let t=a.options[e]?.label;if(!t)return;a.multiSelect?i.handleMultiSelect(i.activeTab,t):i.handleSingleSelect(i.activeTab,t)}else e===a.options.length&&r.current?.focus()},[a,i]),u=ya({questions:e,activeTab:i.activeTab,totalOptions:o,allAnswered:i.allAnswered,hasAnswer:i.hasAnswer,onSelectOption:l,goToNextTab:i.goToNextTab,goToPrevTab:i.goToPrevTab,onSubmit:c,customInputRef:r,enabled:!0}),d=(0,Q.useCallback)(e=>{l(e),u.setFocusedOption(e)},[l,u.setFocusedOption]);return(0,$.jsxs)(`div`,{ref:u.containerRef,className:`rounded-lg border-2 border-primary/30 bg-primary/5 p-3 space-y-3 outline-none animate-in slide-in-from-bottom-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between text-sm font-medium text-text-primary`,children:[(0,$.jsxs)(`span`,{children:[`AI has `,s?`${e.length} questions`:`a question`]}),(0,$.jsxs)(`span`,{className:`text-[10px] text-text-secondary font-normal`,children:[s?`←→ tabs · `:``,`↑↓ options · 1-`,Math.min(o-1,9),` select · Enter submit`]})]}),s&&(0,$.jsx)(`div`,{className:`flex gap-1 p-1 bg-background rounded-md overflow-x-auto border border-border`,children:e.map((e,t)=>(0,$.jsxs)(`button`,{className:`flex items-center gap-1.5 px-3 py-1.5 rounded text-xs whitespace-nowrap transition-all ${i.activeTab===t?`bg-primary text-primary-foreground`:i.hasAnswer(t)?`text-primary bg-transparent`:`text-text-secondary hover:bg-surface-elevated`}`,onClick:()=>{i.setActiveTab(t),u.setFocusedOption(0)},tabIndex:-1,children:[(0,$.jsx)(`span`,{className:`flex items-center justify-center w-4 h-4 rounded-full text-[10px] font-semibold ${i.activeTab===t?`bg-white/20`:i.hasAnswer(t)?`bg-primary/20 text-primary`:`bg-surface-elevated text-text-secondary`}`,children:i.hasAnswer(t)?`✓`:t+1}),(0,$.jsx)(`span`,{className:`max-w-[100px] overflow-hidden text-ellipsis`,children:e.header||`Q${t+1}`})]},t))}),a&&(0,$.jsxs)(`div`,{className:`space-y-2`,children:[!s&&a.header&&(0,$.jsx)(`div`,{className:`text-[11px] font-semibold uppercase tracking-wide text-text-secondary`,children:a.header}),(0,$.jsx)(`div`,{className:`text-sm text-text-primary select-text`,children:a.question}),a.multiSelect&&(0,$.jsx)(`div`,{className:`text-[11px] text-text-secondary`,children:`Select multiple`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[a.options.map((e,t)=>{let n=(i.answers[i.activeTab]||[]).includes(e.label),r=u.focusedOption===t;return(0,$.jsxs)(`div`,{role:`button`,onClick:()=>d(t),className:`text-left flex items-start gap-2.5 rounded px-2.5 py-2 text-xs border transition-all cursor-pointer select-text ${n?`border-primary bg-primary/10 text-text-primary`:`border-border bg-background text-text-secondary hover:border-primary/40 hover:bg-primary/5`} ${r?`ring-2 ring-primary/40 ring-offset-1 ring-offset-background`:``}`,children:[(0,$.jsx)(`span`,{className:`flex items-center justify-center w-4.5 h-4.5 rounded text-[10px] font-semibold shrink-0 mt-px ${n?`bg-primary/20 text-primary`:`bg-surface-elevated text-text-secondary`}`,children:t+1}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-0.5 flex-1`,children:[(0,$.jsx)(`span`,{className:`font-medium text-text-primary`,children:e.label}),e.description&&(0,$.jsx)(`span`,{className:`text-[11px] text-text-secondary`,children:e.description})]})]},t)}),(0,$.jsxs)(`div`,{className:`flex items-start gap-2.5 rounded px-2.5 py-2 text-xs border border-dashed transition-all border-border bg-transparent ${u.focusedOption===o-1?`ring-2 ring-primary/40 ring-offset-1 ring-offset-background`:``}`,children:[(0,$.jsx)(`span`,{className:`flex items-center justify-center w-4.5 h-4.5 rounded bg-surface-elevated text-text-secondary text-[10px] font-semibold shrink-0 mt-px`,children:`O`}),(0,$.jsx)(`input`,{ref:r,type:`text`,className:`flex-1 px-2 py-1 text-xs bg-surface border border-border rounded text-text-primary outline-none placeholder:text-text-subtle focus:border-primary`,placeholder:`Other (press O to type)...`,value:i.customInputs[i.activeTab]||``,onChange:e=>i.handleCustomInput(i.activeTab,e.target.value),onFocus:()=>u.setFocusedOption(o-1)})]})]})]}),(0,$.jsxs)(`div`,{className:`flex gap-2 justify-end pt-1`,children:[s&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`button`,{className:`px-3 py-1.5 text-xs rounded border border-border bg-background text-text-primary hover:bg-surface-elevated disabled:opacity-40 disabled:cursor-not-allowed transition-colors`,onClick:i.goToPrevTab,disabled:i.activeTab===0,tabIndex:-1,children:`← Prev`}),(0,$.jsx)(`button`,{className:`px-3 py-1.5 text-xs rounded border border-border bg-background text-text-primary hover:bg-surface-elevated disabled:opacity-40 disabled:cursor-not-allowed transition-colors`,onClick:i.goToNextTab,disabled:i.activeTab===e.length-1,tabIndex:-1,children:`Next →`})]}),(0,$.jsx)(`button`,{onClick:n,className:`px-4 py-1.5 rounded border border-border bg-background text-text-secondary text-xs hover:bg-surface-elevated transition-colors`,tabIndex:-1,children:`Skip`}),(0,$.jsxs)(`button`,{onClick:c,disabled:!i.allAnswered,className:`px-4 py-1.5 rounded bg-primary text-primary-foreground text-xs font-medium hover:bg-primary/80 transition-colors disabled:opacity-40 disabled:cursor-not-allowed`,tabIndex:-1,children:[`Submit `,i.allAnswered?`✓`:`(${e.filter((e,t)=>i.hasAnswer(t)).length}/${e.length})`]})]})]})}function xa(){return(0,$.jsxs)(`div`,{className:`px-4 pt-4 space-y-4`,"aria-busy":`true`,"aria-label":`Loading previous conversation`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-center gap-1.5 text-xs text-text-secondary`,children:[(0,$.jsx)(R,{className:`size-3 animate-spin`}),`Loading previous conversation…`]}),[0,1,2].map(e=>(0,$.jsx)(`div`,{className:e%2==0?`flex justify-end`:`flex justify-start`,children:(0,$.jsxs)(`div`,{className:`animate-pulse space-y-2 rounded-lg bg-surface p-3 ${e%2==0?`w-1/2`:`w-3/4`}`,children:[(0,$.jsx)(`div`,{className:`h-3 rounded bg-border`}),(0,$.jsx)(`div`,{className:`h-3 w-5/6 rounded bg-border`}),e%2==1&&(0,$.jsx)(`div`,{className:`h-3 w-2/3 rounded bg-border`})]})},e))]})}function Sa({messages:e,messagesLoading:t,keepStaleWhileLoading:n,pendingApproval:r,onApprovalResponse:i,isStreaming:a,phase:o,onSelectSession:s,connectingElapsed:c,statusMessage:l,compactStatus:u,promptCache:d,projectName:f,onFork:p,onEdit:m,editingMsgId:h,sessionId:g,providerId:_,onNavigateVersion:v,versionMap:y,bashPartialOutput:b,onExpandCompact:x,isCompactExpanded:S,onDismissMessage:C,onClearErrors:w}){let{scrollRef:ee,contentRef:T,scrollToBottom:te,stopScroll:ne,isAtBottom:re}=kr({initial:`instant`,resize:`instant`}),E=(0,Q.useMemo)(()=>e.filter(e=>{let t=e.content&&e.content.trim().length>0,n=e.events&&e.events.length>0;return e.role===`user`?t:t||n}),[e]),ie=(0,Q.useMemo)(()=>Cr(E),[E]),oe=!!r||a,[D,O]=(0,Q.useState)(null),se=(0,Q.useCallback)(e=>{ee(e),O(e)},[ee]),ce=(0,Q.useRef)(new Map),k=(0,Q.useMemo)(()=>{let e=ce.current,t=new Map;for(let n=0;n<E.length;n++){let r=E[n];if(r.role!==`assistant`||E[n+1]?.role===`assistant`)continue;let i=`${r.id}:${r.events?.length??0}`,a=e.get(i);a||(a=Ht(qt(E,n)),e.set(i,a)),a.length>0&&t.set(n,a)}return t},[E]),le=(0,Q.useRef)(null),A=(0,Q.useCallback)(e=>{D&&(le.current?.(),le.current=Vr(D,e))},[D]);(0,Q.useEffect)(()=>()=>le.current?.(),[]);let[j,M]=(0,Q.useState)(!1),[ue,N]=(0,Q.useState)(null),de=(0,Q.useRef)(null);(0,Q.useLayoutEffect)(()=>{let e=D;e&&de.current!=null&&(e.scrollTop=e.scrollHeight-de.current,j||(de.current=null))},[E.length,D,j]),(0,Q.useLayoutEffect)(()=>{D&&te({animation:`instant`})},[g,D]);let fe=(0,Q.useRef)(!0);(0,Q.useEffect)(()=>{D&&D.clientHeight>0&&(fe.current=re)},[re,D]),(0,Q.useEffect)(()=>{let e=D;if(!e)return;let t=e.clientHeight,n=new ResizeObserver(()=>{let n=e.clientHeight,r=t===0&&n>0;t=n,r&&!fe.current&&ne()});return n.observe(e),()=>n.disconnect()},[D,ne]);let pe=(0,Q.useCallback)((e,t)=>{p?.(e,t)},[p]),me=(0,Q.useCallback)((e,t,n)=>{m?.(e,t,n)},[m]),he=(0,Q.useCallback)(e=>{C?.(e)},[C]),F=(0,Q.useMemo)(()=>E.reduce((e,t)=>t.role===`system`?e+1:e,0),[E]),ge=(0,Q.useMemo)(()=>E.reduce((e,t,n)=>(t.role===`user`&&e.push(n),e),[]),[E]),I=(0,Q.useCallback)(()=>{if(!x||!S)return null;for(let e of E){if(S(e.id))continue;let t=vi(e.content||``);if(t)return{id:e.id,jsonlPath:t};if(e.events){for(let t of e.events)if(t.type===`text`){let n=vi(t.content||``);if(n)return{id:e.id,jsonlPath:n}}}}return null},[E,x,S])(),L=!!I,R=I?.id??null,_e=I?.jsonlPath??null,ye=(0,Q.useCallback)(async()=>{if(!R||!_e||!x||j)return;let e=D;de.current=e?e.scrollHeight-e.scrollTop:null,M(!0),N(null);try{await x(R,_e)}catch(e){N(e instanceof Error?e.message:`Could not load previous conversation`)}finally{M(!1)}},[R,_e,x,j,D]),z=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{let e=D,t=z.current;if(!e||!t||!L||ue)return;let n=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&ye()},{root:e,rootMargin:`400px 0px 0px 0px`});return n.observe(t),()=>n.disconnect()},[D,L,ue,ye]),t&&(!n||e.length===0)?(0,$.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary`,children:[(0,$.jsx)(ve,{className:`size-10 text-text-subtle animate-pulse`}),(0,$.jsx)(`p`,{className:`text-sm`,children:`Loading messages...`})]}):e.length===0&&!a?(0,$.jsx)(pa,{projectName:f||``,onSelectSession:s||(()=>{})}):(0,$.jsxs)(`div`,{className:`relative flex-1 overflow-hidden flex flex-col min-h-0`,children:[(0,$.jsx)(hi,{projectName:f,sessionId:g,messages:e}),F>1&&w&&(0,$.jsx)(`div`,{className:`absolute top-2 left-0 right-0 z-20 flex justify-center pointer-events-none`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:w,className:`pointer-events-auto flex items-center gap-1.5 rounded-full bg-error/15 border border-error/25 px-3 py-1 text-xs text-error hover:bg-error/25 shadow-md backdrop-blur-sm`,children:[(0,$.jsx)(ae,{className:`size-3.5`}),`Clear all errors (`,F,`)`]})}),!j&&ue&&(0,$.jsx)(`div`,{className:`absolute top-2 left-0 right-0 z-10 flex justify-center`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:()=>{N(null),ye()},className:`inline-flex items-center gap-1.5 rounded-md border border-border bg-surface px-3 py-2 text-xs text-text-primary hover:bg-surface-hover min-h-[44px] md:min-h-0`,children:[(0,$.jsx)(P,{className:`size-3.5 text-destructive`}),(0,$.jsxs)(`span`,{children:[`Could not load previous conversation: `,ue]}),(0,$.jsx)(`span`,{className:`underline`,children:`Retry`})]})}),(0,$.jsx)(`div`,{ref:se,[Yt]:``,className:`flex-1 overflow-y-auto overflow-x-hidden [overflow-anchor:none]`,style:{WebkitOverflowScrolling:`touch`,overscrollBehavior:`contain`},children:(0,$.jsxs)(`div`,{ref:T,className:`w-full`,children:[L&&(0,$.jsx)(`div`,{ref:z,"aria-hidden":!0,className:`h-px`}),j&&(0,$.jsx)(xa,{}),E.map((e,t)=>{let n=t>0?E[t-1]:void 0,r=ie[t]??0,i=r?y?.[r]:void 0,o=e.role===`user`&&h!=null&&e.id===h,s=E[t+1],c=e.role===`assistant`&&s?.role!==`assistant`,l;if(c){let e=[];for(let n=t;n>=0&&E[n].role===`assistant`;n--){let t=Ca(E[n]);t&&e.unshift(t)}l=e.join(`
6
-
7
- `)}return(0,$.jsxs)(`div`,{"data-msg-index":t,className:`px-4 pt-4 select-none`,children:[e.compaction&&(0,$.jsx)(ta,{compaction:e.compaction}),(0,$.jsx)(yi,{fallbackContent:e.content,children:(0,$.jsx)(wa,{message:e,isStreaming:a&&e.id.startsWith(`streaming-`),isLastAssistantInTurn:c,turnCopyText:l,turnChanges:c?k.get(t):void 0,onJumpToEdit:A,projectName:f,onFork:e.role===`user`&&p?pe:void 0,onEdit:e.role===`user`&&m?me:void 0,isEditing:o,onDismiss:e.role===`system`&&C?he:void 0,prevMsgId:n?.sdkUuid??n?.id,sessionId:g,providerId:_,versionGroup:i,onNavigateVersion:v,versionNavDisabled:a,bashPartialOutput:b})})]},e.id)}),!a&&!r&&(0,$.jsx)(fa,{promptCache:d??null}),oe&&(0,$.jsxs)(`div`,{className:`px-4 pt-4 pb-4 space-y-4 select-none`,children:[r&&(r.tool===`AskUserQuestion`?(0,$.jsx)(Ea,{approval:r,onRespond:i}):(0,$.jsx)(Ta,{approval:r,onRespond:i})),a&&(0,$.jsx)(ea,{lastMessage:e[e.length-1],phase:o,elapsed:c,statusMessage:u===`compacting`?`Compacting messages...`:l})]})]})}),(0,$.jsx)(_a,{scrollElement:D,userIndices:ge,scrollToBottom:te})]})}function Ca(e){return e.events?.length?e.events.filter(e=>e.type===`text`).map(e=>e.content).join(``):e.content}var wa=(0,Q.memo)(function({message:e,isStreaming:t,isLastAssistantInTurn:n,turnCopyText:r,turnChanges:i,onJumpToEdit:a,projectName:o,onFork:s,onEdit:c,isEditing:l,onDismiss:u,prevMsgId:d,sessionId:f,providerId:p,versionGroup:m,onNavigateVersion:h,versionNavDisabled:g,bashPartialOutput:_}){if(e.role===`user`){let t=s?()=>s(e.content,d):void 0,n=c?()=>c(e.content,d,e.id):void 0;return(0,$.jsx)(Hi,{content:e.content,messageId:e.id,timestamp:e.timestamp,projectName:o,onFork:t,onEdit:n,isEditing:l,sessionId:f,providerId:p,versionGroup:m,onNavigateVersion:h,versionNavDisabled:g})}return e.role===`system`?(0,$.jsxs)(`div`,{className:`group flex items-center gap-2 rounded-lg bg-error/10 border border-error/20 px-3 py-2 text-sm text-error`,children:[(0,$.jsx)(P,{className:`size-4 shrink-0`}),(0,$.jsx)(`p`,{className:`flex-1`,children:e.content}),u&&(0,$.jsx)(`button`,{type:`button`,onClick:()=>u(e.id),"aria-label":`Dismiss`,title:`Dismiss`,className:`shrink-0 rounded p-1 text-error/70 hover:text-error hover:bg-error/15 md:opacity-0 md:group-hover:opacity-100`,children:(0,$.jsx)(ae,{className:`size-4`})})]}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[e.events&&e.events.length>0?(0,$.jsx)(Zi,{events:e.events,isStreaming:t,projectName:o,bashPartialOutput:_}):e.content&&(0,$.jsx)(`div`,{className:`text-sm text-text-primary select-text`,children:(0,$.jsx)(wi,{content:e.content,projectName:o})}),!t&&n&&e.usage&&(0,$.jsx)(li,{usage:e.usage}),!t&&n&&(0,$.jsx)(ci,{timestamp:e.timestamp,content:r??Ca(e),changes:i,onJumpToEdit:a})]})});function Ta({approval:e,onRespond:t}){return(0,$.jsxs)(`div`,{className:`rounded-lg border-2 border-warning/40 bg-warning/10 p-3 space-y-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-warning text-sm font-medium`,children:[(0,$.jsx)(de,{className:`size-4`}),(0,$.jsx)(`span`,{children:`Tool Approval Required`})]}),(0,$.jsx)(`div`,{className:`text-xs text-text-primary`,children:(0,$.jsx)(`span`,{className:`font-medium`,children:e.tool})}),(0,$.jsx)(`pre`,{className:`text-xs font-mono text-text-secondary overflow-x-auto bg-background rounded p-2 border border-border`,children:JSON.stringify(e.input,null,2)}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(`button`,{onClick:()=>t(e.requestId,!0),className:`px-4 py-1.5 rounded bg-success text-white text-xs font-medium hover:bg-success/80 transition-colors`,children:`Allow`}),(0,$.jsx)(`button`,{onClick:()=>t(e.requestId,!1),className:`px-4 py-1.5 rounded bg-error text-white text-xs font-medium hover:bg-error/80 transition-colors`,children:`Deny`})]})]})}function Ea({approval:e,onRespond:t}){return(0,$.jsx)(ba,{questions:e.input.questions??[],onSubmit:n=>t(e.requestId,!0,n),onSkip:()=>t(e.requestId,!1)})}function Da({shells:e,onKill:t}){let n=Nt(e=>e.openPanel),r=e.filter(e=>e.status!==`stopped`);return r.length===0?null:(0,$.jsx)(`div`,{className:`shrink-0 border-b border-border bg-surface-elevated/60 px-2 py-1.5 space-y-1`,children:r.map(e=>(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[e.status===`stopping`?(0,$.jsx)(R,{className:`size-3.5 shrink-0 animate-spin text-warning`}):(0,$.jsxs)(`span`,{className:`relative flex size-2 shrink-0`,children:[(0,$.jsx)(`span`,{className:`absolute inline-flex size-full animate-ping rounded-full bg-emerald-400 opacity-60`}),(0,$.jsx)(`span`,{className:`relative inline-flex size-2 rounded-full bg-emerald-500`})]}),(0,$.jsx)(o,{className:`size-3.5 shrink-0 text-text-secondary`}),(0,$.jsx)(`span`,{className:`flex-1 truncate font-mono text-text-primary`,title:e.command,children:e.command}),e.status===`stopping`&&(0,$.jsx)(`span`,{className:`text-[11px] text-warning shrink-0`,children:`stopping…`}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>n(e.shellId),className:`flex items-center justify-center size-8 rounded hover:bg-surface text-text-secondary hover:text-text-primary transition-colors`,"aria-label":`View output`,title:`View output`,children:(0,$.jsx)(he,{className:`size-4`})}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>t(e.shellId),disabled:e.status===`stopping`,className:`flex items-center justify-center size-8 rounded hover:bg-surface text-text-secondary hover:text-error transition-colors disabled:opacity-40`,"aria-label":`Stop command`,title:`Stop command`,children:(0,$.jsx)(B,{className:`size-3.5`})})]},e.shellId))})}function Oa(){return`aa-${Math.random().toString(36).slice(2,10)}`}function ka(e){let{projectName:t,providerId:n,sessionId:r}=e,[i,a]=(0,Q.useState)([]);return(0,Q.useEffect)(()=>{if(a([]),!r||!t)return;let e=Oa(),i=()=>{yt(JSON.stringify({type:`agent-activity:subscribe`,subId:e,projectName:t,providerId:n,sessionId:r}))},o=t=>{let n=t.detail;n.subId===e&&a(n.running)};window.addEventListener(`agent-activity`,o);let s=zt(i);return i(),()=>{window.removeEventListener(`agent-activity`,o),s(),yt(JSON.stringify({type:`agent-activity:unsubscribe`,subId:e}))}},[t,n,r]),i}function Aa(e,t){let n=new Map(t.map(e=>[e.name,e])),r=new Set,i=[];for(let t of e){if(t.cardId){i.push({key:`card:${t.cardId}`,cardId:t.cardId,lastStep:t.lastStep,lastWriteAt:t.lastWriteAt});continue}if(t.memberName){r.add(t.memberName);let e=n.get(t.memberName);i.push({key:`member:${t.memberName}`,memberName:t.memberName,lastStep:t.lastStep??(e?ja(e):void 0),agentType:e?.agentType,startedAt:e?.startedAt,lastWriteAt:t.lastWriteAt})}}for(let e of t)e.workState!==`working`||r.has(e.name)||i.push({key:`member:${e.name}`,memberName:e.name,lastStep:ja(e),agentType:e.agentType,startedAt:e.startedAt});return i}function ja(e){return e.lastTool?e.lastToolArg?`${e.lastTool}: ${e.lastToolArg}`:e.lastTool:e.lastNarrative??e.description}function Ma(e){let t=e&&typeof e==`object`?e.name:void 0;return typeof t==`string`&&t.trim()?t.trim():null}function Na(e,t){if(e)for(let n of e){if(n.type===`tool_use`&&(n.tool===`Agent`||n.tool===`Task`)&&n.toolUseId===t)return n;if(n.type===`tool_use`&&n.children?.length){let e=Na(n.children,t);if(e)return e}}}function Pa(e,t){for(let n=e.length-1;n>=0;n--){let r=Na(e[n].events,t);if(r&&r.type===`tool_use`){let e=r.input&&typeof r.input==`object`?r.input:{};return{handle:Ma(e),description:typeof e.description==`string`?e.description:typeof e.prompt==`string`?e.prompt:``}}}return null}function Fa(e){if(!e)return;let t=e.split(`:`).pop();return t&&t!==`general-purpose`?t:e}function Ia(e,t){if(!e)return;let n=new Date(e).getTime(),r=t?new Date(t).getTime():Date.now();if(!Number.isFinite(n)||!Number.isFinite(r)||r<n)return;let i=Math.floor((r-n)/1e3),a=Math.floor(i/3600),o=Math.floor(i%3600/60);return a>0?`${a}h ${o}m`:o>0?`${o}m`:`${i}s`}function La(e){return e.lastTool?e.lastToolArg?`${e.lastTool}: ${e.lastToolArg}`:e.lastTool:e.lastNarrative??e.description}function Ra({projectName:e,providerId:t,sessionId:n,messages:r,teamName:i,teamMembers:a}){let o=ka({projectName:e,providerId:t,sessionId:n}),s=Bt(),c=(0,Q.useMemo)(()=>Aa(o,a),[o,a]),l=xt();return!n||c.length===0?null:(0,$.jsx)(`div`,{className:`shrink-0 border-t border-border bg-surface-elevated/60 px-2 py-1.5 space-y-1`,children:c.map(a=>{let o=a.cardId?Pa(r,a.cardId):null,c=a.memberName??o?.handle??null,u=o?.description||(a.cardId?`Agent`:a.memberName),d=a.startedAt?Ia(a.startedAt):void 0,f=Fa(a.agentType);return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>s({projectName:e,providerId:t,sessionId:n,source:a.cardId?{kind:`card`,cardId:a.cardId}:{kind:`member`,teamName:i,memberName:a.memberName},title:c?`Session — ${c}`:`Agent session`,prompt:o?.description}),className:J(`flex w-full items-center gap-2 rounded px-1 py-1.5 text-left text-xs hover:bg-surface transition-colors`,l?`min-h-[44px]`:`min-h-[36px]`),title:c?`Open ${c}'s session`:`Open agent session`,children:[(0,$.jsxs)(`span`,{className:`relative flex size-2 shrink-0`,children:[(0,$.jsx)(`span`,{className:`absolute inline-flex size-full animate-ping rounded-full bg-emerald-400 opacity-60`}),(0,$.jsx)(`span`,{className:`relative inline-flex size-2 rounded-full bg-emerald-500`})]}),a.memberName?(0,$.jsx)(E,{className:`size-3.5 shrink-0 text-accent-2`}):(0,$.jsx)(ve,{className:`size-3.5 shrink-0 text-primary`}),(0,$.jsx)(`span`,{className:`font-medium text-text-primary shrink-0`,children:c??u}),!!f&&(0,$.jsx)(`span`,{className:`text-text-3 shrink-0 hidden sm:inline`,children:f}),!!a.lastStep&&(0,$.jsx)(`span`,{className:`flex-1 truncate text-text-subtle`,title:a.lastStep,children:a.lastStep}),!!d&&(0,$.jsx)(`span`,{className:`ml-auto shrink-0 text-text-3 font-mono`,children:d})]},a.key)})})}function za(e){return e.startsWith(`plugin:`)&&e.slice(e.lastIndexOf(`:`)+1)||e}function Ba({needsAuth:e,projectName:t}){let[n,r]=(0,Q.useState)(null),i=ke(e=>e.mcpSignInDismissed),a=ke(e=>e.dismissMcpSignIn),o=e.filter(e=>!i.includes(e));return(0,$.jsxs)($.Fragment,{children:[o.length>0&&(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-t border-border bg-surface-elevated/60 px-2 py-1.5 text-xs`,children:[(0,$.jsx)(D,{className:`size-3.5 shrink-0 text-warning`}),(0,$.jsx)(`span`,{className:`shrink-0 text-text-secondary`,children:o.length===1?`MCP server needs sign-in:`:`MCP servers need sign-in:`}),(0,$.jsx)(`div`,{className:`flex min-w-0 flex-1 gap-1.5 overflow-x-auto`,children:o.map(e=>(0,$.jsx)(`button`,{type:`button`,onClick:()=>r(e),className:`shrink-0 rounded border border-border bg-background px-2.5 py-1.5 font-medium text-text-primary transition-colors hover:bg-surface max-md:min-h-9`,title:`Sign in to ${e}`,children:za(e)},e))}),(0,$.jsx)(`button`,{type:`button`,onClick:()=>{a(o),U.info(`Sign-in bar hidden`,{description:`You can still sign in to these MCP servers from AI Resources → MCP. The bar comes back only for a server that is not on this list.`})},className:`flex size-8 shrink-0 items-center justify-center rounded text-text-secondary transition-colors hover:bg-surface hover:text-text-primary max-md:size-10`,"aria-label":`Hide these servers`,title:`Hide these servers`,children:(0,$.jsx)(_,{className:`size-3.5`})})]}),(0,$.jsx)(wt,{serverName:n,project:t,onClose:()=>r(null)})]})}var Va=5e3;function Ha(e,t){let[n,r]=(0,Q.useState)([]),[i,a]=(0,Q.useState)([]),[o,s]=(0,Q.useState)(!1),c=(0,Q.useRef)(!1),l=(0,Q.useCallback)(async e=>{if(e){s(!0);try{let t=await G.get(`/api/teams/${encodeURIComponent(e)}/activity`);if(c.current)return;r(t?.members??[]),a(t?.outbound??[])}catch{}finally{c.current||s(!1)}}},[]);return(0,Q.useEffect)(()=>{if(c.current=!1,!t||!e)return r([]),a([]),()=>{c.current=!0};l(e);let n=setInterval(()=>void l(e),Va);return()=>{c.current=!0,clearInterval(n)}},[e,t,l]),{members:n,outbound:i,loading:o,refresh:(0,Q.useCallback)(()=>void l(e),[l,e])}}function Ua(){let e=window;return e.SpeechRecognition??e.webkitSpeechRecognition??null}function Wa(e){let[t,n]=(0,Q.useState)(!1),[r,i]=(0,Q.useState)(``),a=(0,Q.useRef)(null),o=(0,Q.useRef)(``),s=typeof window<`u`&&Ua()!==null;return{isListening:t,interimText:r,start:(0,Q.useCallback)(t=>{let r=Ua();if(!r)return;a.current?.abort();let s=new r;s.lang=e?.lang??`vi-VN`,s.continuous=!0,s.interimResults=!0,o.current=``,s.onresult=e=>{let n=``,r=``;for(let t=0;t<e.results.length;t++){let i=e.results[t];i.isFinal?r+=i[0].transcript:n+=i[0].transcript}r&&(o.current=r);let a=(o.current+` `+n).trim();i(n),t(a,n.length===0&&o.current.length>0)},s.onend=()=>{n(!1),i(``),o.current&&t(o.current.trim(),!0)},s.onerror=e=>{e.error!==`no-speech`&&e.error!==`aborted`&&console.warn(`[voice-input] error:`,e.error),n(!1),i(``)},a.current=s,s.start(),n(!0)},[e?.lang]),stop:(0,Q.useCallback)(()=>{a.current?.stop(),a.current=null,n(!1),i(``)},[]),supported:s}}var Ga=16e3;function Ka(e){if(e.length===0)return new Float32Array;if(e.length===1)return e[0];let t=e[0].length,n=new Float32Array(t);for(let r=0;r<t;r++){let t=0;for(let n of e)t+=n[r]??0;n[r]=t/e.length}return n}function qa(e,t){let n=new ArrayBuffer(44+e.length*2),r=new DataView(n),i=(e,t)=>{for(let n=0;n<t.length;n++)r.setUint8(e+n,t.charCodeAt(n))};i(0,`RIFF`),r.setUint32(4,36+e.length*2,!0),i(8,`WAVE`),i(12,`fmt `),r.setUint32(16,16,!0),r.setUint16(20,1,!0),r.setUint16(22,1,!0),r.setUint32(24,t,!0),r.setUint32(28,t*2,!0),r.setUint16(32,2,!0),r.setUint16(34,16,!0),i(36,`data`),r.setUint32(40,e.length*2,!0);for(let t=0;t<e.length;t++){let n=Math.max(-1,Math.min(1,e[t]));r.setInt16(44+t*2,n<0?n*32768:n*32767,!0)}return new Uint8Array(n)}async function Ja(e){let t=await new OfflineAudioContext(1,1,Ga).decodeAudioData(await e.arrayBuffer()),n=[];for(let e=0;e<t.numberOfChannels;e++)n.push(t.getChannelData(e));return qa(Ka(n),t.sampleRate)}function Ya(e=`vi`){let[t,n]=(0,Q.useState)(!1),[r,i]=(0,Q.useState)(!1),a=(0,Q.useRef)(null),o=(0,Q.useRef)([]),s=(0,Q.useRef)(!1),c=typeof window<`u`&&typeof MediaRecorder<`u`&&typeof navigator<`u`&&!!navigator.mediaDevices?.getUserMedia&&typeof OfflineAudioContext<`u`,l=(0,Q.useCallback)(async t=>{if(!c||a.current)return;let r;try{r=await navigator.mediaDevices.getUserMedia({audio:!0})}catch{U.error(`Microphone unavailable`,{description:`Allow microphone access for this site.`});return}let l=new MediaRecorder(r);a.current=l,o.current=[],s.current=!1,l.ondataavailable=e=>{e.data.size>0&&o.current.push(e.data)},l.onstop=async()=>{for(let e of r.getTracks())e.stop();a.current=null,n(!1);let c=o.current;if(o.current=[],!(s.current||c.length===0)){i(!0);try{let n=await Xa(await Ja(new Blob(c,{type:l.mimeType})),e);n?t(n,!0):U.info(`Nothing was picked up`,{description:`Speak closer to the mic, or check which input device is selected.`})}catch(e){U.error(`Could not transcribe`,{description:e instanceof Error?e.message:String(e)})}finally{i(!1)}}},l.start(),n(!0)},[c,e]),u=(0,Q.useCallback)(()=>{a.current?.state===`recording`&&a.current.stop()},[]);return{isListening:t,isTranscribing:r,start:l,stop:u,cancel:(0,Q.useCallback)(()=>{s.current=!0,u()},[u]),supported:c}}async function Xa(e,t){let n=Te(),r=await fetch(`/api/speech/transcribe?lang=${encodeURIComponent(t)}`,{method:`POST`,headers:{"Content-Type":`audio/wav`,...n?{Authorization:`Bearer ${n}`}:{}},body:e}),i=await r.json().catch(()=>null);if(!r.ok||!i?.ok)throw Error(i?.error??`HTTP ${r.status}`);return i.data?.text??``}var Za=2e3;function Qa(e,t,n=Za){if(!(e>0)||!(t>0))return null;let r=Math.max(e,t);if(r<n)return null;let i=n-1,a=i/r;return{width:e>=t?i:Math.max(1,Math.round(e*a)),height:t>e?i:Math.max(1,Math.round(t*a))}}var $a=4096;function eo(e,t){let n=new TextEncoder().encode(t);outer:for(let t=0;t+n.length<=e.length;t++){for(let r=0;r<n.length;r++)if(e[t+r]!==n[r])continue outer;return!0}return!1}function to(e,t){return e===`image/gif`?!0:e===`image/webp`?eo(t,`ANIM`):e===`image/png`||e===`image/apng`?eo(t,`acTL`):!1}async function no(e){if(e.type===`image/gif`)return!0;if(e.type!==`image/webp`&&e.type!==`image/png`&&e.type!==`image/apng`)return!1;try{let t=new Uint8Array(await e.slice(0,$a).arrayBuffer());return to(e.type,t)}catch{return!0}}var ro=1600,io=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`]);function ao(e){return e===`image/jpeg`||e===`image/webp`?e:`image/png`}async function oo(e,t=ro){let n={kind:`asis`,file:e};if(!e.type.startsWith(`image/`)||e.type===`image/svg+xml`||typeof createImageBitmap!=`function`||typeof document>`u`)return n;let r;try{r=await createImageBitmap(e)}catch{return n}let i={width:r.width,height:r.height},a=Qa(i.width,i.height,t+1);if(a&&await no(e))return r.close?.(),Math.max(i.width,i.height)<2e3&&io.has(e.type)?{kind:`inlineable`,file:e,from:i}:{kind:`asis`,file:e,from:i};if(!a)return r.close?.(),io.has(e.type)?{kind:`inlineable`,file:e,from:i}:{kind:`asis`,file:e,from:i};let o=r;try{try{o=await createImageBitmap(e,{resizeWidth:a.width,resizeHeight:a.height,resizeQuality:`high`}),r.close?.()}catch{o=r}let t=document.createElement(`canvas`);t.width=a.width,t.height=a.height;let n=t.getContext(`2d`);if(!n)return{kind:`asis`,file:e,from:i};n.imageSmoothingEnabled=!0,n.imageSmoothingQuality=`high`,n.drawImage(o,0,0,a.width,a.height);let s=ao(e.type),c=await new Promise(e=>t.toBlob(e,s,.92));if(!c||c.size===0)return{kind:`asis`,file:e,from:i};let l=s===e.type?e.name:e.name.replace(/\.[^.]+$/,``)+`.png`;return{kind:`scaled`,file:new File([c],l,{type:s}),from:i,to:a}}catch{return{kind:`asis`,file:e,from:i}}finally{o.close?.()}}var so=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`]);function co(e){return so.has(e.type)}function lo(e){return e.textContent?`expand`:e.previewUrl?`preview`:`none`}function uo({attachments:e,onRemove:t}){let[n,r]=(0,Q.useState)(null),i=xt(),a=(0,Q.useRef)(new Map),s=At(e=>e.open),c=At(e=>e.close),l=At(e=>e.src);if((0,Q.useEffect)(()=>{if(!l)return;let t=a.current.get(l);if(!t)return;let n=e.find(e=>e.id===t);if(!n?.previewUrl)return c();n.previewUrl!==l&&(a.current.set(n.previewUrl,n.id),s(n.previewUrl,n.name))},[e,l,s,c]),e.length===0)return null;let u=n?e.find(e=>e.id===n):null;function d(t,n){if(t.previewUrl){for(let t of e)t.previewUrl&&a.current.set(t.previewUrl,t.id);s(t.previewUrl,t.name,Xt(n))}}return(0,$.jsxs)(`div`,{className:`px-2 md:px-4 pt-2`,children:[(0,$.jsx)(`div`,{className:J(`flex flex-wrap gap-1.5`,i&&`gap-y-5`),[Yt]:``,children:e.map(e=>(0,$.jsxs)(`div`,{className:J(`flex items-center gap-1.5 rounded-md border border-border bg-surface px-2 py-1 text-xs text-text-secondary max-w-48`,lo(e)!==`none`&&`cursor-pointer hover:border-primary/50`,n===e.id&&`border-primary/50 bg-surface-elevated`),onClick:t=>{let i=lo(e);i===`expand`?r(n===e.id?null:e.id):i===`preview`&&d(e,t.currentTarget)},children:[e.previewUrl?(0,$.jsx)(`button`,{type:`button`,title:`Preview ${e.name}`,"aria-label":`Preview ${e.name}`,onClick:t=>{t.stopPropagation(),d(e,t.currentTarget)},className:J(`relative shrink-0 rounded`,`can-hover:hover:ring-2 can-hover:hover:ring-primary/60 transition-shadow`,i&&`before:absolute before:-inset-y-3 before:-inset-x-1.5 before:content-['']`),children:(0,$.jsx)(`img`,{src:e.previewUrl,alt:e.name,[Zt]:``,className:`size-5 rounded object-cover`})}):e.textContent?(0,$.jsx)(o,{className:`size-3.5 shrink-0 text-text-subtle`}):e.isImage?(0,$.jsx)(p,{className:`size-3.5 shrink-0 text-text-subtle`}):(0,$.jsx)(ye,{className:`size-3.5 shrink-0 text-text-subtle`}),(0,$.jsx)(`span`,{className:`truncate`,children:e.name}),e.textContent&&(0,$.jsx)(w,{className:J(`size-3 shrink-0 text-text-subtle transition-transform`,n===e.id&&`rotate-180`)}),e.status===`uploading`?(0,$.jsx)(R,{className:`size-3 shrink-0 animate-spin text-text-subtle`}):e.status===`error`?(0,$.jsx)(`span`,{className:`text-error shrink-0`,title:`Upload failed`,children:`!`}):e.resized?(0,$.jsxs)(`span`,{className:`shrink-0 text-[10px] text-text-subtle`,title:`Shrunk from ${e.resized.from.width}x${e.resized.from.height} to ${e.resized.to.width}x${e.resized.to.height}`,children:[e.resized.to.width,`×`,e.resized.to.height]}):null,(0,$.jsx)(`button`,{type:`button`,onClick:i=>{i.stopPropagation(),t(e.id),n===e.id&&r(null)},className:J(`relative shrink-0 rounded-sm p-0.5 hover:bg-border/50 transition-colors`,i&&`before:absolute before:-inset-y-3.5 before:-inset-x-1.5 before:content-['']`),"aria-label":`Remove ${e.name}`,children:(0,$.jsx)(_,{className:`size-3`})})]},e.id))}),u?.textContent&&(0,$.jsx)(`pre`,{className:`mt-1.5 max-h-40 overflow-auto rounded-md border border-border bg-background p-2 text-xs text-text-primary font-mono whitespace-pre-wrap break-words`,children:fo(u.textContent)})]})}function fo(e){let t=e.trim(),n=t.match(/^```\w*\n([\s\S]*?)\n```$/);return n?n[1]:t}function po(e,t,n){if(e.length===0)return null;let r=t+n;return r<-1||r>=e.length?null:{index:r,text:r===-1?``:e[e.length-1-r]}}var mo=[{id:`default`,label:`Ask before edits`,icon:V,description:`Claude will ask for approval before making each edit`},{id:`acceptEdits`,label:`Edit automatically`,icon:oe,description:`Claude will edit files without asking first`},{id:`plan`,label:`Plan mode`,icon:v,description:`Claude will present a plan before editing`},{id:`bypassPermissions`,label:`Bypass permissions`,icon:O,description:`Claude will not ask before running commands`}];function ho(e){return mo.find(t=>t.id===e)?.label??`Unknown`}function go(e){return mo.find(t=>t.id===e)?.icon??V}function _o({value:e,onChange:t,open:n,onOpenChange:r}){let i=(0,Q.useRef)(null),a=(0,Q.useRef)(0);(0,Q.useEffect)(()=>{if(!n)return;let e=e=>{i.current&&!i.current.contains(e.target)&&r(!1)},t=i.current?.ownerDocument??document;return t.addEventListener(`mousedown`,e),()=>t.removeEventListener(`mousedown`,e)},[n,r]),(0,Q.useEffect)(()=>{n&&(a.current=mo.findIndex(t=>t.id===e),a.current<0&&(a.current=0))},[n,e]);let o=(0,Q.useCallback)(e=>{if(e.key===`Escape`){r(!1);return}if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault();let t=e.key===`ArrowDown`?1:-1;a.current=(a.current+t+mo.length)%mo.length,(i.current?.querySelector(`[data-idx="${a.current}"]`))?.focus()}if(e.key===`Enter`){e.preventDefault();let n=mo[a.current];n&&(t(n.id),r(!1))}},[t,r]);return n?(0,$.jsxs)(`div`,{ref:i,role:`listbox`,"aria-label":`Permission modes`,onKeyDown:o,onMouseDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:`absolute bottom-full left-0 mb-1 z-50 w-72 md:w-80 rounded-lg border border-border popover-solid shadow-[var(--shadow-panel)]`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,$.jsx)(`span`,{className:`text-xs font-medium text-text-secondary`,children:`Modes`}),(0,$.jsx)(`kbd`,{className:`text-[10px] px-1.5 py-0.5 rounded bg-surface-elevated text-text-subtle border border-border`,children:`Shift + Tab`})]}),(0,$.jsx)(`div`,{className:`py-1`,children:mo.map((n,i)=>{let a=n.icon,o=n.id===e;return(0,$.jsxs)(`button`,{"data-idx":i,role:`option`,"aria-selected":o,tabIndex:0,onClick:()=>{t(n.id),r(!1)},className:`w-full flex items-start gap-3 px-3 py-2.5 text-left transition-colors hover:bg-surface-elevated focus:bg-surface-elevated focus:outline-none ${o?`bg-surface-elevated`:``}`,children:[(0,$.jsx)(a,{className:`size-4 mt-0.5 shrink-0 text-text-secondary`}),(0,$.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,$.jsx)(`div`,{className:`text-sm font-medium text-text-primary`,children:n.label}),(0,$.jsx)(`div`,{className:`text-xs text-text-subtle leading-snug`,children:n.description})]}),o&&(0,$.jsx)(z,{className:`size-4 mt-0.5 shrink-0 text-primary`})]},n.id)})})]}):null}var vo=[{label:`Low`,value:`low`},{label:`Medium`,value:`medium`},{label:`High`,value:`high`,default:!0},{label:`Extra`,value:`xhigh`},{label:`Max`,value:`max`}];function yo(e){return e?vo.find(t=>t.value===e)?.label??e:``}function bo(e,t){let n=yo(t);return n?`${e} · ${n}`:e}var xo=new Map,So=300*1e3;function Co(e){return e.replace(/^Claude\s+/i,``)}var wo=vo.find(e=>e.default).value;function To({model:e,effort:t,thinking:n,onModelChange:r,onEffortChange:i,onThinkingChange:a,projectName:o,providerId:s,disabled:c}){let l=JSON.stringify([o,s]),u=xo.get(l),[d,f]=(0,Q.useState)(null),p=d?.projectName===o&&d.providerId===s?d:u?{...u,error:!1}:null,m=p?.models??[],h=o&&s&&!p?`Loading models...`:p?.error?`Unable to load models`:m.length===0?`No models available`:null,[g,_]=(0,Q.useState)(!1),v=(0,Q.useRef)(null),y=Qe();(0,Q.useEffect)(()=>{let e=!0;if(f(null),!g||!o||!s)return;let t=xo.get(l);if(!(t&&Date.now()<t.expiry))return G.get(`${W(o)}/chat/providers/${s}/models`).then(n=>{let r=n.length>0?n:t?.models??n;e&&n.length>0&&xo.set(l,{models:n,expiry:Date.now()+So}),e&&f({projectName:o,providerId:s,models:r})}).catch(()=>{e&&f({projectName:o,providerId:s,models:t?.models??[],error:!t})}),()=>{e=!1}},[o,s,l,g]),(0,Q.useEffect)(()=>{c&&_(!1)},[c]),(0,Q.useEffect)(()=>{if(!g||y)return;let e=e=>{v.current&&!v.current.contains(e.target)&&_(!1)},t=v.current?.ownerDocument??document;return t.addEventListener(`mousedown`,e),()=>t.removeEventListener(`mousedown`,e)},[g,y]);let b=m.find(t=>t.value===e),x=b?Co(b.label):e?Co(e):`Model`,S=t??wo,C=m.length>0||!!h,w=bo(x,S),ee=e=>{e(),y||_(!1)},T=(0,$.jsxs)(`div`,{className:`flex divide-x divide-border`,children:[C&&(0,$.jsxs)(`div`,{className:`flex-1 min-w-0 py-1`,children:[(0,$.jsx)(Eo,{children:`Model`}),h&&(0,$.jsx)(`div`,{role:`status`,className:`px-3 py-2 text-xs text-text-secondary`,children:h}),m.map(t=>(0,$.jsxs)(Oo,{active:t.value===e,onClick:()=>ee(()=>r(t.value)),children:[(0,$.jsx)(`span`,{className:`flex-1 truncate`,children:Co(t.label)}),t.value===e&&(0,$.jsx)(z,{className:`size-4 shrink-0 text-primary`})]},t.value))]}),(0,$.jsxs)(`div`,{className:`flex-1 min-w-0 py-1`,children:[(0,$.jsx)(Eo,{children:`Effort`}),vo.map(e=>(0,$.jsxs)(Oo,{active:e.value===S,onClick:()=>ee(()=>i(e.value)),children:[(0,$.jsxs)(`span`,{className:`flex-1 truncate`,children:[e.label,e.default&&(0,$.jsx)(`span`,{className:`ml-2 text-xs text-text-subtle`,children:`Default`})]}),e.value===S&&(0,$.jsx)(z,{className:`size-4 shrink-0 text-primary`})]},e.value)),(0,$.jsx)(Do,{}),(0,$.jsxs)(`button`,{type:`button`,onClick:()=>a(!n),className:`w-full flex items-center gap-3 px-3 min-h-[44px] text-left text-sm hover:bg-surface-elevated`,role:`switch`,"aria-checked":n,children:[(0,$.jsx)(ce,{className:`size-4 shrink-0`}),(0,$.jsx)(`span`,{className:`flex-1`,children:`Thinking`}),(0,$.jsx)(`span`,{className:`inline-flex h-5 w-9 items-center rounded-full transition-colors ${n?`bg-primary`:`bg-border`}`,children:(0,$.jsx)(`span`,{className:`h-4 w-4 rounded-full bg-white transition-transform ${n?`translate-x-4`:`translate-x-0.5`}`})})]})]})]});return(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsxs)(`button`,{type:`button`,disabled:c,onClick:e=>{e.stopPropagation(),c||_(e=>!e)},className:`inline-flex items-center gap-1.5 px-[9px] py-1 rounded-full text-[11.5px] text-primary bg-accent-wash border border-accent-wash-border hover:brightness-110 transition-[filter] disabled:opacity-50 disabled:cursor-default`,"aria-label":`Model ${x}, effort ${S}${n?`, thinking on`:``}`,title:c?`Can't change while running`:w,children:[(0,$.jsx)(k,{className:`h-3.5 w-3.5 shrink-0`}),(0,$.jsx)(`span`,{className:`max-w-[140px] truncate`,children:w}),n&&(0,$.jsx)(ce,{className:`h-3 w-3 shrink-0`})]}),g&&!c&&(y?(0,$.jsx)(it,{open:g,onClose:()=>_(!1),children:(0,$.jsx)(`div`,{className:`px-1 pb-2`,children:T})}):(0,$.jsx)(`div`,{ref:v,role:`listbox`,"aria-label":`Model and thinking`,onMouseDown:e=>e.stopPropagation(),onClick:e=>e.stopPropagation(),className:`absolute bottom-full left-0 mb-1 z-50 w-80 rounded-lg border border-border popover-solid shadow-[var(--shadow-panel)] max-h-[70vh] overflow-y-auto`,children:T}))]})}function Eo({children:e}){return(0,$.jsx)(`div`,{className:`px-3 py-1.5 text-xs font-medium text-text-secondary`,children:e})}function Do(){return(0,$.jsx)(`div`,{className:`my-1 border-t border-border`})}function Oo({active:e,onClick:t,children:n}){return(0,$.jsx)(`button`,{type:`button`,onClick:t,className:`w-full flex items-center gap-3 px-3 min-h-[44px] text-left text-sm text-text-primary transition-colors hover:bg-surface-elevated ${e?`bg-surface-elevated`:``}`,children:n})}function ko({promptCache:e}){let t=aa(e,ra());if(t.kind===`unknown`)return null;let n=t.kind===`cold`,r=t.kind===`cold`?la(t.idleMs):ua(t.remainingMs),i;return i=t.kind===`cold`?t.reason===`compacted`?`Prompt cache does not cover the compacted conversation. Compacted ${r} ago, so your next message will re-cache it.`:`Prompt cache expired ${r} ago. Your next message re-sends ${t.contextTokens==null?`the whole transcript`:`about ${da(t.contextTokens)} tokens`} at full price.`:`Prompt cache warm, about ${r.replace(/m$/,` min`)} left.`,(0,$.jsxs)(Ct,{children:[(0,$.jsx)(Ft,{asChild:!0,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 px-[9px] py-1 rounded-full text-[11.5px] border transition-colors ${n?`text-error border-error/40 bg-error/10`:`text-text-2 bg-panel-2 border-border-soft`}`,children:[(0,$.jsx)(h,{className:`size-3`}),(0,$.jsx)(`span`,{className:`tabular-nums`,children:r})]})}),(0,$.jsx)(_t,{side:`top`,className:`max-w-[240px] text-xs`,children:i})]})}async function Ao(e){try{let t=await new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result??``)),r.onerror=()=>n(r.error),r.readAsDataURL(e)}),n=t.indexOf(`,`),r=n>=0?t.slice(n+1):``;return r?{data:r,mediaType:e.type||`image/png`}:void 0}catch{return}}var jo=(0,Q.memo)(function({tabId:e,draftReady:t=!0,onSend:n,isStreaming:r,onCancel:i,disabled:a,projectName:o,onSlashStateChange:s,onSlashItemsLoaded:c,slashSelected:l,onFileStateChange:u,onFileItemsLoaded:d,fileSelected:f,externalFiles:p,externalPaths:h,onExternalPathsConsumed:g,initialValue:v,clearSignal:y,restore:b,onContentChange:x,getUserHistory:S,autoFocus:C,permissionMode:w,onModeChange:ee,providerId:T,sessionId:te,onProviderChange:re,model:E,onModelChange:ie,effort:ae,onEffortChange:oe,thinking:D,onThinkingChange:O,promptCache:se,configurationPending:ce=!1}){let k=(0,Q.useRef)(v??``),[le,A]=(0,Q.useState)(()=>(v??``).trim().length>0),[M,ue]=(0,Q.useState)([]),[N,de]=(0,Q.useState)(null),[fe,pe]=(0,Q.useState)(!1),[me,he]=(0,Q.useState)(!1),[P,F]=(0,Q.useState)(`next`),ge=(0,Q.useRef)(null),I=(0,Q.useRef)(null),L=(0,Q.useRef)(null),_e=(0,Q.useRef)([]),ye=(0,Q.useRef)([]),z=(0,Q.useRef)(0),be=(0,Q.useRef)(!1),xe=(0,Q.useRef)(!1),Ce=(0,Q.useRef)(typeof CSS>`u`||!CSS.supports(`field-sizing`,`content`)),V=(0,Q.useCallback)(e=>{k.current=e,ge.current&&(ge.current.value=e),I.current&&(I.current.value=e),A(e.trim().length>0)},[]),H=(0,Q.useCallback)(()=>window.matchMedia(`(min-width: 768px)`).matches?ge.current:I.current,[]),U=(0,Q.useRef)(-1),we=(0,Q.useCallback)(e=>{let t=po(S?.()??[],U.current,e);if(!t)return!1;U.current=t.index;let{agent:n,text:r}=Pi(t.text);de(n),V(r);let i=H();return i?(i.focus(),requestAnimationFrame(()=>{i.selectionStart=i.selectionEnd=r.length}),Ce.current&&(i.style.height=`auto`,i.style.height=Math.min(i.scrollHeight,i===I.current?80:160)+`px`),!0):!0},[S,V,H]),Ee=ke(e=>e.voiceEngine),De=Wa(),Oe=Ya(),G=Ee===`whisper`&&Oe.supported,K=G?Oe:De,q=G&&Oe.isTranscribing,J=(0,Q.useRef)(``),je=(0,Q.useCallback)(e=>{let t=J.current;V(t?t+` `+e:e),Ce.current&&requestAnimationFrame(()=>{let e=H();e&&(e.style.height=`auto`,e.style.height=Math.min(e.scrollHeight,160)+`px`)})},[V,H]),Y=(0,Q.useCallback)(()=>{q||(K.isListening?K.stop():(J.current=k.current.trim(),K.start(je)))},[K.isListening,K.start,K.stop,je,q]),Me=q?`Transcribing`:K.isListening?`Stop voice input`:`Start voice input`;(0,Q.useEffect)(()=>{let e=()=>{K.supported&&Jr(H())&&Y()};return window.addEventListener(`toggle-voice-input`,e),()=>window.removeEventListener(`toggle-voice-input`,e)},[K.supported,Y,H]),(0,Q.useEffect)(()=>{let t=t=>{let{text:i,label:o,targetTabId:s,autoSend:c}=t.detail??{};if(!i||(s?s!==e:!Jr(H())))return;let l=!!c&&!!s&&!a&&!r&&!k.current.trim()&&M.length===0;if(window.dispatchEvent(new CustomEvent(nn,{detail:{sent:l}})),l){n(i,[]);return}let u={id:Ae(),name:o??`Terminal output`,file:new File([],`terminal-output.txt`),isImage:!1,textContent:i,status:`ready`};ue(e=>[...e,u]),H()?.focus()};return window.addEventListener(tn,t),()=>window.removeEventListener(tn,t)},[H,e,a,r,M.length,n]),(0,Q.useEffect)(()=>{if(v&&!k.current){V(v);let e=setTimeout(()=>{let e=ge.current;e&&(e.focus(),e.selectionStart=e.selectionEnd=e.value.length)},50);return()=>clearTimeout(e)}},[v]),(0,Q.useEffect)(()=>{let n=n=>{let i=n.detail;if(!t||a||r||k.current||M.length||N||!e||i?.projectName!==o||i.tabId&&i.tabId!==e||typeof i.text!=`string`)return;let s=Ne.getState();!(i.tabId?Object.values(s.panels).some(t=>t.activeTabId===e):s.panels[s.focusedPanelId]?.activeTabId===e)||document.hidden||(V(i.text),x?.(i.text),H()?.focus())};return window.addEventListener(`ppm:onboarding-prompt`,n),()=>window.removeEventListener(`ppm:onboarding-prompt`,n)},[t,a,r,M.length,N,e,o,x,V,H]),(0,Q.useEffect)(()=>{y&&V(``)},[y]),(0,Q.useEffect)(()=>{if(!b?.nonce||!b.text)return;let e=k.current,t=e.trim()?`${e}\n\n${b.text}`:b.text;V(t),x?.(t,M.filter(e=>e.status===`ready`&&e.serverPath).map(e=>({name:e.name,path:e.serverPath})));let n=setTimeout(()=>{let e=H();e&&(e.focus(),e.selectionStart=e.selectionEnd=e.value.length)},50);return()=>clearTimeout(n)},[b?.nonce]),(0,Q.useEffect)(()=>{if(!C)return;let e=setTimeout(()=>{H()?.focus()},100);return()=>clearTimeout(e)},[]);let Fe=(0,Q.useRef)(0),X=(0,Q.useCallback)(()=>{let e=++Fe.current;if(ce)return;if(!o){_e.current=[],c?.([],[]);return}let t=ct(o,T);_e.current=t?.items??[],c?.(t?.items??[],t?.recentNames??[]),lt(o,T,te).then(t=>{e===Fe.current&&(_e.current=t.items,c?.(t.items,t.recentNames))}).catch(()=>{})},[o,T,te,c,ce]);(0,Q.useEffect)(()=>{X();let e=ot(()=>{if(!o)return;let e=ct(o,T);e&&!ce&&(_e.current=e.items,c?.(e.items,e.recentNames))}),t=setInterval(X,It);return()=>{++Fe.current,e(),clearInterval(t)}},[X,o,T,c,ce]),(0,Q.useEffect)(()=>{let e=()=>{X()};return window.addEventListener(`ppm:slash-items-refresh`,e),()=>window.removeEventListener(`ppm:slash-items-refresh`,e)},[X,o]),(0,Q.useEffect)(()=>{let e=()=>{if(!o){ye.current=[],d?.([]);return}let e=Z.getState();if(xe.current&&e.indexStatus===`idle`&&Pe.getState().activeProject?.name===o){e.loadIndex(o);return}let t=e.indexProject===o?e.fileIndex:[];ye.current=t,d?.(t)};e();let t=Z.getState().fileIndex,n=Z.getState().indexStatus;return Z.subscribe(r=>{(r.fileIndex!==t||r.indexStatus!==n)&&(t=r.fileIndex,n=r.indexStatus,e())})},[o]),(0,Q.useEffect)(()=>{if(!l)return;let e=H();if(!e)return;let t=e.value,n=e.selectionStart,r=t.slice(0,n),i=t.slice(n);if(l.type===`agent`){let t=rn(r);de(l.name),V(t+i),s?.(!1,``),be.current=!1,e.focus(),setTimeout(()=>{e.selectionStart=e.selectionEnd=t.length},0);return}let a=an(r,`${l.invokeSigil??`/`}${l.name}`);V(a+i),s?.(!1,``),be.current=!1,u?.(!1,``),xe.current=!1,e.focus(),setTimeout(()=>{e.selectionStart=e.selectionEnd=a.length},0)},[l]),(0,Q.useEffect)(()=>{if(!f)return;let e=H();if(!e)return;let t=e.value,n=e.selectionStart,r=t.slice(0,n),i=t.slice(n),a=r.match(/@(\S*)$/);if(a){let t=r.length-a[0].length;V(r.slice(0,t)+`@${f.path} `+i);let n=t+f.path.length+2;setTimeout(()=>{e.selectionStart=e.selectionEnd=n,e.focus()},0)}else{let n=t+`@${f.path} `;V(n),setTimeout(()=>{e.selectionStart=e.selectionEnd=n.length,e.focus()},0)}u?.(!1,``),xe.current=!1},[f]),(0,Q.useEffect)(()=>{!p||p.length===0||Re(p)},[p]),(0,Q.useEffect)(()=>{if(!h||h.length===0)return;let e=h.map(e=>`@${e}`).join(` `),t=k.current;V(t+(t.length>0&&!t.endsWith(` `)?` `:``)+e+` `),H()?.focus(),g?.()},[h]);let Ie=(0,Q.useCallback)(async e=>{if(!o)return;let t=e.split(/[\\/]/).pop();if(t)try{let e={},n=Te();n&&(e.Authorization=`Bearer ${n}`),await fetch(`${W(o)}/chat/uploads/${encodeURIComponent(t)}`,{method:`DELETE`,headers:e})}catch{}},[o]),Le=(0,Q.useCallback)(async e=>{if(!o)return null;try{let t=new FormData;t.append(`files`,e);let n={},r=Te();r&&(n.Authorization=`Bearer ${r}`);let i=await(await fetch(`${W(o)}/chat/upload`,{method:`POST`,headers:n,body:t})).json();return i.ok&&Array.isArray(i.data)&&i.data.length>0?i.data[0].path:null}catch{return null}},[o]),Re=(0,Q.useCallback)(async e=>{for(let t of e){let e=Ae(),n=co(t),r={id:e,name:t.name,file:t,isImage:n,previewUrl:n?URL.createObjectURL(t):void 0,status:`uploading`};ue(e=>[...e,r]);try{let i=n?await oo(t):null,a=i?.file??t,o=n&&a!==t?URL.createObjectURL(a):void 0,s=await Le(a),c=i&&i.kind!==`asis`?await Ao(a):void 0,l=!!c&&c.data.length<=Cn.maxBase64PerImage;o&&r.previewUrl&&URL.revokeObjectURL(r.previewUrl),ue(t=>t.map(t=>t.id===e?{...t,file:a,...o&&{previewUrl:o},serverPath:s??void 0,imageData:l?c:void 0,resized:i?.to?{from:i.from,to:i.to}:void 0,status:s||l?`ready`:`error`}:t))}catch{ue(t=>t.map(t=>t.id===e?{...t,status:`error`}:t))}}(I.current??ge.current)?.focus()},[Le]),ze=(0,Q.useCallback)(e=>{ue(t=>{let n=t.find(t=>t.id===e);return n?.previewUrl&&URL.revokeObjectURL(n.previewUrl),n?.serverPath&&Ie(n.serverPath),t.filter(t=>t.id!==e)})},[Ie]),Be=(0,Q.useCallback)(()=>{let e=k.current.trim(),t=M.filter(e=>e.status===`ready`);if(!e&&t.length===0&&!N){he(!1);return}let i=N?`Use the ${N} agent to ${e}`.trimEnd():e;s?.(!1,``),be.current=!1,u?.(!1,``),xe.current=!1,K.isListening&&(G?Oe.cancel():K.stop()),n(i,t,r?P:void 0),V(``);for(let e of M)e.previewUrl&&URL.revokeObjectURL(e.previewUrl);ue([]),de(null),he(!1),F(`next`),U.current=-1,Ce.current&&(ge.current&&(ge.current.style.height=`auto`),I.current&&(I.current.style.height=`auto`))},[M,N,n,s,u,r,P,V,K.isListening,K.stop,Oe.cancel,G]),Ve=(0,Q.useCallback)(()=>{if(!a){if(M.some(e=>e.status===`uploading`)){(k.current.trim()||M.some(e=>e.status!==`error`))&&he(!0);return}Be()}},[M,a,Be]);(0,Q.useEffect)(()=>{me&&(M.some(e=>e.status===`uploading`)||Be())},[me,M,Be]);let He=(0,Q.useCallback)(e=>{if(e.key===`Enter`&&!e.shiftKey){e.preventDefault(),Ve();return}if((e.key===`ArrowUp`||e.key===`ArrowDown`)&&!e.altKey&&!e.ctrlKey&&!e.metaKey&&!e.shiftKey){if(!(U.current>=0)&&(e.key===`ArrowDown`||k.current!==``||N))return;we(e.key===`ArrowUp`?1:-1)&&e.preventDefault();return}if(e.shiftKey&&e.key===`Tab`){e.preventDefault();let t=[`default`,`acceptEdits`,`plan`,`bypassPermissions`],n=t[(t.indexOf(w??`bypassPermissions`)+1)%t.length];ee?.(n)}},[Ve,w,ee,we,N]),Ue=(0,Q.useCallback)((e,t)=>{let n=e.slice(0,t),r=n.includes(`/`),i=n.includes(`@`);if(!r&&!i){be.current&&=(s?.(!1,``),!1),xe.current&&=(u?.(!1,``),!1);return}if(r){let e=on(n);if(e!==null){be.current||X(),s?.(!0,e),be.current=!0,xe.current&&=(u?.(!1,``),!1);return}}if(i){let e=n.match(/@(\S*)$/);if(e){!xe.current&&o&&Z.getState().ensureIndex(o),u?.(!0,e[1]??``),xe.current=!0,be.current&&=(s?.(!1,``),!1);return}}be.current&&=(s?.(!1,``),!1),xe.current&&=(u?.(!1,``),!1)},[s,u,X,o]),We=(0,Q.useCallback)(e=>{let t=e.target,n=t.value;k.current=n,U.current=-1;let r=t===ge.current?I.current:ge.current;r&&(r.value=n),A(n.trim().length>0),Ue(n,t.selectionStart),x?.(n,M.filter(e=>e.status===`ready`&&e.serverPath).map(e=>({name:e.name,path:e.serverPath}))),Ce.current&&(z.current&&cancelAnimationFrame(z.current),z.current=requestAnimationFrame(()=>{z.current=0,t.style.height=`auto`,t.style.height=Math.min(t.scrollHeight,t===I.current?80:160)+`px`}))},[Ue,x,M]),Ge=(0,Q.useCallback)(e=>{let t=e.clipboardData?.items;if(!t)return;let n=[];for(let e of t)if(e.kind===`file`){let t=e.getAsFile();t&&n.push(t)}n.length>0&&(e.preventDefault(),Re(n))},[Re]),Ke=(0,Q.useCallback)(e=>{e.preventDefault();let t=e.dataTransfer.getData(`application/x-ppm-path`);if(t){let e=k.current;V(e+(e.length>0&&!e.endsWith(` `)?` `:``)+`@${t} `),H()?.focus();return}let n=Array.from(e.dataTransfer.files);n.length>0&&Re(n)},[Re,V,H]),qe=(0,Q.useCallback)(e=>{e.preventDefault()},[]),Je=(0,Q.useCallback)(()=>{L.current?.click()},[]),Ye=(0,Q.useCallback)(e=>{let t=Array.from(e.target.files??[]);t.length>0&&Re(t),e.target.value=``},[Re]),Xe=le||M.some(e=>e.status!==`error`)||!!N,Ze=r&&!Xe;return(0,$.jsxs)(`div`,{"data-onboarding":`chat-input`,className:`p-2 md:p-3`,children:[(0,$.jsxs)(`div`,{className:`border border-border rounded-[var(--rad)] bg-panel shadow-[var(--shadow-float)] cursor-text`,onClick:e=>{a||e.target instanceof HTMLTextAreaElement||H()?.focus()},children:[N&&(0,$.jsx)(`div`,{className:`px-2 md:px-4 pt-2`,children:(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded-md border border-sky-500/30 bg-sky-500/10 px-2 py-1 text-xs font-medium text-sky-600 dark:text-sky-400`,children:[(0,$.jsx)(ve,{className:`size-3.5 shrink-0`}),N,(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),de(null),H()?.focus()},className:`shrink-0 rounded-sm p-0.5 hover:bg-sky-500/20 transition-colors`,"aria-label":`Remove ${N} agent`,children:(0,$.jsx)(_,{className:`size-3`})})]})}),(0,$.jsx)(uo,{attachments:M,onRemove:ze}),(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1 px-2 pt-2 md:hidden relative`,children:[!ce&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Mo,{mode:w??`bypassPermissions`,onClick:()=>pe(e=>!e)}),(0,$.jsx)(_o,{value:w??`bypassPermissions`,onChange:e=>ee?.(e),open:fe,onOpenChange:pe})]}),re&&o&&(0,$.jsx)(Tt,{value:T??`claude`,onChange:re,projectName:o}),ie&&o&&(0,$.jsx)(To,{model:E??null,effort:ae??null,thinking:D??!1,onModelChange:ie,onEffortChange:oe??(()=>{}),onThinkingChange:O??(()=>{}),projectName:o,providerId:T??`claude`,disabled:r}),r&&(0,$.jsx)(Po,{value:P,onChange:F}),(0,$.jsx)(ko,{promptCache:se??null})]}),(0,$.jsxs)(`div`,{className:`flex items-end gap-1 md:hidden px-2 py-2`,children:[(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Je()},disabled:a,className:`flex items-center justify-center size-8 shrink-0 rounded-[10px] text-text-3 hover:text-text-primary transition-colors disabled:opacity-50`,"aria-label":`Attach file`,children:(0,$.jsx)(m,{className:`size-4`})}),(0,$.jsx)(`textarea`,{ref:I,defaultValue:v??``,onChange:We,onKeyDown:He,onPaste:Ge,onDrop:Ke,onDragOver:qe,placeholder:r?`Follow-up...`:`Ask anything...`,disabled:a,rows:1,className:`flex-1 resize-none bg-transparent py-1.5 text-sm text-foreground placeholder:text-text-subtle focus:outline-none disabled:opacity-50 max-h-20 [field-sizing:content]`}),K.supported&&(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Y()},disabled:a||q,className:`flex items-center justify-center size-8 shrink-0 rounded-[10px] transition-colors disabled:opacity-50 ${K.isListening?`bg-error text-white animate-pulse`:`text-text-3 hover:text-text-primary`}`,"aria-label":Me,children:q?(0,$.jsx)(R,{className:`size-4 animate-spin`}):K.isListening?(0,$.jsx)(ne,{className:`size-4`}):(0,$.jsx)(Se,{className:`size-4`})}),Ze?(0,$.jsx)(`button`,{onClick:e=>{e.stopPropagation(),i?.()},className:`flex items-center justify-center size-9 shrink-0 rounded-[11px] bg-error text-white hover:bg-error/80 shadow-[var(--shadow-float)] transition-colors`,"aria-label":`Stop`,children:(0,$.jsx)(B,{className:`size-3.5`})}):(0,$.jsx)(`button`,{onClick:e=>{e.stopPropagation(),me?he(!1):Ve()},disabled:a||!Xe,className:`flex items-center justify-center size-9 shrink-0 rounded-[11px] bg-primary text-primary-foreground hover:bg-primary/90 shadow-[var(--shadow-float)] disabled:opacity-30 disabled:shadow-none transition-colors`,"aria-label":me?`Cancel queued send`:`Send`,children:me?(0,$.jsx)(R,{className:`size-4 animate-spin`}):(0,$.jsx)(j,{className:`size-4`})})]}),(0,$.jsxs)(`div`,{className:`hidden md:block`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 px-2.5 pt-2.5`,children:[!ce&&(0,$.jsxs)(`div`,{className:`relative`,children:[(0,$.jsx)(Mo,{mode:w??`bypassPermissions`,onClick:()=>pe(e=>!e)}),(0,$.jsx)(_o,{value:w??`bypassPermissions`,onChange:e=>ee?.(e),open:fe,onOpenChange:pe})]}),re&&o&&(0,$.jsx)(Tt,{value:T??`claude`,onChange:re,projectName:o}),ie&&o&&(0,$.jsx)(To,{model:E??null,effort:ae??null,thinking:D??!1,onModelChange:ie,onEffortChange:oe??(()=>{}),onThinkingChange:O??(()=>{}),projectName:o,providerId:T??`claude`,disabled:r}),r&&(0,$.jsx)(Po,{value:P,onChange:F}),(0,$.jsx)(ko,{promptCache:se??null})]}),(0,$.jsxs)(`div`,{className:`flex items-end gap-2 px-2.5 py-2`,children:[(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Je()},disabled:a,className:`flex items-center justify-center size-[34px] shrink-0 rounded-[10px] text-text-3 hover:text-text-primary hover:bg-surface-elevated transition-colors disabled:opacity-50`,"aria-label":`Attach file`,children:(0,$.jsx)(m,{className:`size-[17px]`})}),(0,$.jsx)(`textarea`,{ref:ge,defaultValue:v??``,onChange:We,onKeyDown:He,onPaste:Ge,onDrop:Ke,onDragOver:qe,placeholder:r?`Follow-up or Stop...`:`Ask anything...`,disabled:a,rows:1,className:`flex-1 resize-none bg-transparent py-2 text-sm text-foreground placeholder:text-text-subtle focus:outline-none disabled:opacity-50 max-h-[90px] leading-relaxed [field-sizing:content]`}),K.supported&&(0,$.jsx)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),Y()},disabled:a||q,className:`flex items-center justify-center size-[34px] shrink-0 rounded-[10px] transition-colors disabled:opacity-50 ${K.isListening?`bg-error text-white animate-pulse`:`text-text-3 hover:text-text-primary hover:bg-surface-elevated`}`,"aria-label":Me,children:q?(0,$.jsx)(R,{className:`size-[17px] animate-spin`}):K.isListening?(0,$.jsx)(ne,{className:`size-[17px]`}):(0,$.jsx)(Se,{className:`size-[17px]`})}),Ze?(0,$.jsx)(`button`,{onClick:e=>{e.stopPropagation(),i?.()},className:`flex items-center justify-center size-9 shrink-0 rounded-[11px] bg-error text-white hover:bg-error/80 shadow-[var(--shadow-float)] transition-colors`,"aria-label":`Stop response`,children:(0,$.jsx)(B,{className:`size-4`})}):(0,$.jsx)(`button`,{onClick:e=>{e.stopPropagation(),me?he(!1):Ve()},disabled:a||!Xe,className:`flex items-center justify-center size-9 shrink-0 rounded-[11px] bg-primary text-primary-foreground hover:bg-primary/90 shadow-[var(--shadow-float)] disabled:opacity-30 disabled:cursor-not-allowed disabled:shadow-none transition-colors`,"aria-label":me?`Cancel queued send`:`Send message`,children:me?(0,$.jsx)(R,{className:`size-4 animate-spin`}):(0,$.jsx)(j,{className:`size-[17px]`})})]})]})]}),(0,$.jsx)(`input`,{ref:L,type:`file`,multiple:!0,className:`hidden`,onChange:Ye})]})});function Mo({mode:e,onClick:t}){let n=go(e),r=ho(e);return(0,$.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),t()},className:`inline-flex items-center gap-1.5 px-[9px] py-1 rounded-full text-[11.5px] text-text-2 bg-panel-2 border border-border-soft hover:text-text-primary hover:border-border transition-colors`,"aria-label":`Permission mode: ${r}`,children:[(0,$.jsx)(n,{className:`size-3`}),(0,$.jsx)(`span`,{className:`max-w-[100px] truncate`,children:r})]})}var No=[{value:`now`,label:`Interrupt`,Icon:T},{value:`next`,label:`Queue`,Icon:le},{value:`later`,label:`Later`,Icon:h}];function Po({value:e,onChange:t}){let n=(0,Q.useCallback)(()=>{let n=[`next`,`later`,`now`];t(n[(n.indexOf(e)+1)%n.length])},[e,t]),r=No.find(t=>t.value===e)??No[1],i=r.Icon;return(0,$.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),n()},className:`inline-flex items-center gap-1.5 px-[9px] py-1 rounded-full text-[11.5px] text-text-2 bg-panel-2 border border-border-soft hover:text-text-primary hover:border-border transition-colors`,"aria-label":`Message priority: ${r.label}`,title:`Priority: ${r.label} (click to cycle)`,children:[(0,$.jsx)(i,{className:`size-3`}),(0,$.jsx)(`span`,{children:r.label})]})}function Fo({items:e,filter:t,onSelect:n,onClose:r,visible:i}){let[a,o]=(0,Q.useState)(0),s=(0,Q.useRef)(null),c=(()=>{if(!t)return e.slice(0,50);let n=t.toLowerCase();return e.filter(e=>e.path.toLowerCase().includes(n)||e.name.toLowerCase().includes(n)).slice(0,50)})();(0,Q.useEffect)(()=>{o(0)},[t]),(0,Q.useEffect)(()=>{let e=s.current;e&&e.children[a]?.scrollIntoView({block:`nearest`})},[a]);let u=(0,Q.useCallback)(e=>{if(!i||c.length===0)return!1;switch(e.key){case`ArrowUp`:return e.preventDefault(),o(e=>e>0?e-1:c.length-1),!0;case`ArrowDown`:return e.preventDefault(),o(e=>e<c.length-1?e+1:0),!0;case`Enter`:case`Tab`:return e.preventDefault(),c[a]&&n(c[a]),!0;case`Escape`:return e.preventDefault(),r(),!0}return!1},[i,c,a,n,r]);return(0,Q.useEffect)(()=>{if(!i)return;let e=e=>{u(e)&&e.stopPropagation()},t=s.current?.ownerDocument??document;return t.addEventListener(`keydown`,e,!0),()=>t.removeEventListener(`keydown`,e,!0)},[i,u]),!i||c.length===0?null:(0,$.jsx)(`div`,{className:`max-h-52 overflow-y-auto border-b border-border bg-surface`,children:(0,$.jsx)(`div`,{ref:s,className:`py-1`,children:c.map((e,t)=>(0,$.jsxs)(`button`,{className:`flex items-center gap-2 w-full px-3 py-1.5 text-left transition-colors ${t===a?`bg-primary/10 text-primary`:`hover:bg-surface-hover text-text-primary`}`,onMouseEnter:()=>o(t),onClick:()=>n(e),children:[(0,$.jsx)(`span`,{className:`shrink-0`,children:e.type===`directory`?(0,$.jsx)(l,{className:`size-4 text-warning`}):(0,$.jsx)(M,{className:`size-4 text-primary`})}),(0,$.jsx)(`span`,{className:`text-sm truncate`,children:e.path})]},e.path))})})}var Io=e=>`${(e/1048576).toFixed(2)} MB`;function Lo(e){return e>=1048576?`${(e/1048576).toFixed(1)} MB`:`${Math.max(1,Math.round(e/1024))} KB`}function Ro(){let e=null;for(let t of document.querySelectorAll(`.overflow-y-auto`))t.clientHeight<100||!t.querySelector(`[data-msg-index]`)||(!e||t.scrollHeight>e.scrollHeight)&&(e=t);let t=[];e&&(t.push(`Rendered messages: ${e.querySelectorAll(`[data-msg-index]`).length}`),t.push(`Transcript DOM nodes: ${e.querySelectorAll(`*`).length}`),t.push(`Transcript height: ${Math.round(e.scrollHeight)}px`));let n=performance.memory;return n&&t.push(`JS heap (page): ${(n.usedJSHeapSize/1048576).toFixed(1)} MB`),t}function zo({sessionId:e,projectName:t}){let[n,r]=(0,Q.useState)(null),[i,a]=(0,Q.useState)(null),[o,s]=(0,Q.useState)(null),[c,l]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{let n=!0;return G.get(`${W(t)}/chat/sessions/${e}/images?project=${encodeURIComponent(t)}`).then(e=>{n&&r(e)}).catch(e=>{n&&a(e.message)}),()=>{n=!1}},[e,t]);let u=(n,i=!1)=>{s(n),a(null),G.post(`${W(t)}/chat/sessions/${e}/images/strip?project=${encodeURIComponent(t)}`,{mode:n,includeAttachments:i}).then(e=>{r(e.remaining),l({removed:e.removed,bytes:e.bytesFreed})}).catch(e=>a(e.message)).finally(()=>s(null))};return i&&!n?(0,$.jsx)(`p`,{className:`text-[11px] text-error`,children:i}):n?(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(`h3`,{className:`text-xs font-semibold text-foreground`,children:`Transcript images`}),n.total===0?(0,$.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[`No images in this transcript`,c?` — it is clean.`:`.`]}):(0,$.jsxs)(`p`,{className:`text-[11px] text-text-secondary`,children:[n.total,` image`,n.total===1?``:`s`,` · `,Lo(n.bytes),` of base64, replayed on every turn`,n.attachments>0&&` · ${n.attachments} attached by you`,`.`]}),n.oversized>0&&(0,$.jsxs)(`div`,{className:`flex gap-2 rounded-md border border-warning/40 bg-warning/10 p-2 text-[11px] text-text-secondary`,children:[(0,$.jsx)(C,{className:`mt-px size-3.5 shrink-0 text-warning`}),(0,$.jsxs)(`span`,{children:[n.oversized,` image`,n.oversized===1?` reaches`:`s reach`,` the `,n.limit,`px limit (largest `,n.largestSide,`px). Once a request carries several images the API rejects those outright, which fails the whole turn — removing them loses no context.`]})]}),n.oversizedAttachments>0&&(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border border-error/40 bg-error/10 p-2 text-[11px] text-text-secondary`,children:[(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(C,{className:`mt-px size-3.5 shrink-0 text-error`}),(0,$.jsxs)(`span`,{children:[n.oversizedAttachments,` of those `,n.oversizedAttachments===1?`is an image you`:`are images you`,` `,`attached yourself, so the buttons below leave `,n.oversizedAttachments===1?`it`:`them`,` in place. While `,n.oversizedAttachments===1?`it stays`:`they stay`,`, every turn in this session keeps failing. Removing `,n.oversizedAttachments===1?`it`:`them`,` cannot be undone: an attachment PPM sent keeps a copy on disk with its path still in the message, but one from another client does not.`]})]}),(0,$.jsxs)(et,{size:`sm`,variant:`destructive`,disabled:o!==null,onClick:()=>u(`oversized`,!0),children:[o===`oversized`?(0,$.jsx)(R,{className:`size-3.5 animate-spin`}):(0,$.jsx)(y,{className:`size-3.5`}),`Remove oversized, attachments included`]})]}),c&&(0,$.jsxs)(`p`,{className:`text-[11px] text-success`,children:[`Removed `,c.removed,` image`,c.removed===1?``:`s`,`, freed `,Lo(c.bytes),`.`]}),i&&(0,$.jsx)(`p`,{className:`text-[11px] text-error`,children:i}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1.5 sm:flex-row`,children:[(0,$.jsxs)(et,{size:`sm`,variant:`outline`,className:`flex-1`,disabled:o!==null||n.oversized===0,onClick:()=>u(`oversized`),children:[o===`oversized`?(0,$.jsx)(R,{className:`size-3.5 animate-spin`}):(0,$.jsx)(y,{className:`size-3.5`}),`Remove oversized`,n.oversized>0?` (${n.oversized} · ${Lo(n.oversizedBytes)})`:``]}),(0,$.jsxs)(et,{size:`sm`,variant:`destructive`,className:`flex-1`,disabled:o!==null||n.total===0,onClick:()=>u(`all`),children:[o===`all`?(0,$.jsx)(R,{className:`size-3.5 animate-spin`}):(0,$.jsx)(y,{className:`size-3.5`}),`Remove all`,n.total>0?` (${n.total} · ${Lo(n.bytes)})`:``]})]}),(0,$.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:`These two buttons cover tool images only, and leave anything you attached alone. A removed tool image is replaced by its placeholder text; the chat still shows the file, re-read from disk.`})]}):(0,$.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:`Scanning transcript for images...`})}function Bo({sessionId:e,projectName:t}){let[n,r]=(0,Q.useState)(null),[i,a]=(0,Q.useState)(null);if((0,Q.useEffect)(()=>{let n=!0;return G.get(`${W(t)}/chat/sessions/${e}/usage?project=${encodeURIComponent(t)}`).then(e=>{n&&r(e.turns)}).catch(e=>{n&&a(e.message)}),()=>{n=!1}},[e,t]),i)return(0,$.jsx)(`p`,{className:`text-[11px] text-error`,children:i});if(!n)return(0,$.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:`Loading token history...`});if(n.length===0)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(`h3`,{className:`text-xs font-semibold text-foreground`,children:`Token & cache`}),(0,$.jsx)(`p`,{className:`text-[11px] text-text-subtle`,children:`No turns recorded yet. Send a message and the token split for each turn shows up here.`})]});let o=n.filter(e=>e.usage.coldStart).length,s=n.reduce((e,t)=>e+t.usage.costUsd,0),c=n.reduce((e,t)=>e+zn(t.usage),0),l=new Set(n.map(e=>e.usage.accountId).filter(Boolean)).size;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(`h3`,{className:`text-xs font-semibold text-foreground`,children:`Token & cache`}),(0,$.jsxs)(`p`,{className:`text-[11px] text-text-secondary`,children:[`Last `,n.length,` turn`,n.length===1?``:`s`,` · `,o,` restarted the session ·`,` `,qn(c),` of transcript re-sent uncached · $`,s.toFixed(2),l>1&&` · spread over ${l} accounts`]}),(0,$.jsx)(`div`,{className:`max-h-[30vh] overflow-y-auto rounded-md border border-border`,children:(0,$.jsxs)(`table`,{className:`w-full font-mono text-[10.5px]`,children:[(0,$.jsx)(`thead`,{className:`sticky top-0 bg-surface text-text-subtle`,children:(0,$.jsxs)(`tr`,{children:[(0,$.jsx)(`th`,{className:`px-2 py-1 text-left font-normal`,children:`When`}),(0,$.jsx)(`th`,{className:`px-2 py-1 text-left font-normal`,children:`Account`}),(0,$.jsx)(`th`,{className:`px-2 py-1 text-right font-normal`,children:`Prefix`}),(0,$.jsx)(`th`,{className:`px-2 py-1 text-right font-normal`,children:`Cached`}),(0,$.jsx)(`th`,{className:`px-2 py-1 text-right font-normal`,children:`Cost`}),(0,$.jsx)(`th`,{className:`px-2 py-1 text-left font-normal`,children:`Start`})]})}),(0,$.jsx)(`tbody`,{children:n.map(e=>{let t=Math.round(e.usage.cacheHitRate*100),n=Un(e.usage).level;return(0,$.jsxs)(`tr`,{className:`border-t border-border`,children:[(0,$.jsx)(`td`,{className:`px-2 py-1 text-text-subtle`,children:e.recordedAt.slice(11,16)||e.recordedAt.slice(0,10)}),(0,$.jsx)(`td`,{className:`max-w-24 truncate px-2 py-1 text-text-subtle`,title:e.usage.accountLabel??e.usage.accountId??``,children:e.usage.accountLabel??e.usage.accountId?.slice(0,8)??`—`}),(0,$.jsx)(`td`,{className:`px-2 py-1 text-right text-text-secondary`,children:qn(Rn(e.usage))}),(0,$.jsxs)(`td`,{className:`px-2 py-1 text-right ${n===`bad`?`text-warning`:n===`warn`?`text-text-primary`:`text-success`}`,children:[t,`%`]}),(0,$.jsxs)(`td`,{className:`px-2 py-1 text-right text-text-secondary`,children:[`$`,e.usage.costUsd.toFixed(3)]}),(0,$.jsx)(`td`,{className:`px-2 py-1 text-text-subtle`,children:e.usage.coldStart?e.usage.coldReason??`cold`:`warm`})]},e.id)})})]})}),(0,$.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[`A high "Cached" share is the cheap case. A turn marked `,(0,$.jsx)(`code`,{children:`idle_timeout`}),` paid for the whole transcript again because the session sat idle with no tab open long enough for PPM to release its subprocess. The cache is scoped per account, so a turn on a different account starts cold no matter how the session was resumed.`]})]})}function Vo({sessionId:e,projectName:t,open:n,onOpenChange:r}){let[i,a]=(0,Q.useState)(null),[o,s]=(0,Q.useState)(!1),c=Qe();(0,Q.useEffect)(()=>{n&&(s(!1),a(null),G.get(`${W(t)}/chat/sessions/${e}/debug?project=${encodeURIComponent(t)}`).then(e=>{let t=e.jsonlSizeBytes==null?``:` (${Io(e.jsonlSizeBytes)}${e.jsonlLines==null?``:`, ${e.jsonlLines} records`})`;a([`PPM Session: ${e.ppmSessionId}`,`SDK Session: ${e.sdkSessionId}`,e.jsonlPath?`JSONL: ${e.jsonlPath}${t}`:`JSONL: not found`,e.projectPath?`Project: ${e.projectPath}`:null,...Ro()].filter(Boolean).join(`
8
- `))}).catch(()=>a(`Failed to load debug info`)))},[n,e,t]);let l=(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`h2`,{className:`flex items-center gap-2 text-sm font-semibold text-foreground`,children:[(0,$.jsx)(xe,{className:`size-4 text-primary`}),`Session debug info`]}),(0,$.jsx)(`pre`,{className:`max-h-[35vh] overflow-y-auto whitespace-pre-wrap break-all rounded-md border border-border bg-surface p-2.5 font-mono text-[11px] leading-relaxed text-text-secondary select-text`,children:i??`Loading...`}),(0,$.jsx)(et,{size:`sm`,onClick:()=>{i&&gt(i).then(e=>{e&&(s(!0),setTimeout(()=>s(!1),1500))})},disabled:!i,className:`w-full`,children:o?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(f,{className:`size-3.5`}),` Copied!`]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(F,{className:`size-3.5`}),` Copy`]})}),(0,$.jsx)(`div`,{className:`border-t border-border pt-3`,children:n&&(0,$.jsx)(Bo,{sessionId:e,projectName:t})}),(0,$.jsx)(`div`,{className:`border-t border-border pt-3`,children:n&&(0,$.jsx)(zo,{sessionId:e,projectName:t})})]});return c?(0,$.jsx)(it,{open:n,onClose:()=>r(!1),className:`popover-solid`,children:(0,$.jsx)(`div`,{className:`max-h-[85vh] overflow-y-auto px-4 pb-4 pt-1`,children:l})}):(0,$.jsx)(rt,{open:n,onOpenChange:r,children:(0,$.jsxs)(tt,{className:`sm:max-w-lg`,children:[(0,$.jsx)(nt,{className:`sr-only`,children:`Session debug info`}),l]})})}function Ho({hasUnread:e,onToggleUnread:t,onOpenDebug:n}){return(0,$.jsxs)(Rt,{children:[(0,$.jsx)(pt,{asChild:!0,children:(0,$.jsx)(`button`,{type:`button`,className:`flex items-center justify-center size-5 rounded text-text-subtle hover:text-text-secondary hover:bg-surface-elevated transition-colors`,title:`More actions`,"aria-label":`More actions`,children:(0,$.jsx)(a,{className:`size-3.5`})})}),(0,$.jsxs)(st,{align:`end`,side:`top`,className:`min-w-[190px]`,children:[(0,$.jsx)(Lt,{onClick:t,className:`max-md:py-3`,children:e?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(ue,{className:`size-3.5 text-warning`}),` Mark as read`]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Ce,{className:`size-3.5 fill-current text-primary`}),` Mark as unread`]})}),(0,$.jsxs)(Lt,{onClick:n,className:`max-md:py-3`,children:[(0,$.jsx)(xe,{className:`size-3.5`}),` Session debug info`]})]})]})}function Uo({title:e,meta:t,onClose:n,onReload:r,reloading:i,error:a,onDismissError:o,cardCount:s,children:c,fallback:l,footer:u}){let[d,f]=(0,Q.useState)(!1),p=s||1,m=Math.ceil(Math.sqrt(p)),h=Math.ceil(p/m);return(0,$.jsxs)(`div`,{className:`relative border-b border-border bg-surface px-3 py-2.5 ${d?`fixed inset-0 z-50 flex flex-col gap-2.5 overflow-hidden`:`space-y-2.5 max-h-[350px] overflow-y-auto`}`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between shrink-0`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`text-xs font-semibold text-text-primary`,children:e}),t]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,$.jsxs)(Ct,{children:[(0,$.jsx)(Ft,{asChild:!0,children:(0,$.jsxs)(`button`,{onClick:()=>kt(`accounts`),className:`flex items-center gap-1 text-[10px] text-text-subtle hover:text-text-primary px-1 cursor-pointer`,children:[`Manage accounts `,(0,$.jsx)(A,{className:`size-3`})]})}),(0,$.jsx)(_t,{side:`top`,children:`Add, remove or rotate accounts`})]}),s>0&&(0,$.jsxs)(Ct,{children:[(0,$.jsx)(Ft,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:()=>f(e=>!e),className:`text-xs text-text-subtle hover:text-text-primary px-1 cursor-pointer`,"aria-label":d?`Exit fullscreen`:`Fullscreen view`,children:d?(0,$.jsx)(be,{className:`size-3`}):(0,$.jsx)(N,{className:`size-3`})})}),(0,$.jsx)(_t,{side:`top`,children:d?`Exit fullscreen`:`Fullscreen view`})]}),r&&(0,$.jsxs)(Ct,{children:[(0,$.jsx)(Ft,{asChild:!0,children:(0,$.jsx)(`button`,{onClick:r,disabled:i,className:`text-xs text-text-subtle hover:text-text-primary px-1 disabled:opacity-50 cursor-pointer`,"aria-label":`Refresh usage`,children:(0,$.jsx)(fe,{className:`size-3 ${i?`animate-spin`:``}`})})}),(0,$.jsx)(_t,{side:`top`,children:`Refresh`})]}),(0,$.jsx)(`button`,{onClick:()=>{f(!1),n()},className:`text-xs text-text-subtle hover:text-text-primary px-1 cursor-pointer`,"aria-label":`Close usage panel`,children:(0,$.jsx)(_,{className:`size-3`})})]})]}),a&&(0,$.jsxs)(`div`,{className:`shrink-0 flex items-start gap-2 rounded border border-error/40 bg-error/10 px-2 py-1.5 text-[11px] text-error`,children:[(0,$.jsx)(`span`,{className:`flex-1`,children:a}),o&&(0,$.jsx)(`button`,{onClick:o,className:`shrink-0 text-error/70 hover:text-error cursor-pointer`,"aria-label":`Dismiss`,children:(0,$.jsx)(_,{className:`size-3`})})]}),s>0?(0,$.jsx)(`div`,{className:d?`flex-1 min-h-0 grid gap-2 overflow-hidden`:`flex gap-2 overflow-x-auto pb-1 -mx-3 px-3 snap-x snap-mandatory scrollbar-thin`,style:d?{gridTemplateColumns:`repeat(${m}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${h}, minmax(0, 1fr))`}:void 0,children:c(d?`grid`:`strip`)}):l,u&&!d&&u]})}function Wo(e){return Math.round((e??0)*100)>=100}function Go({usage:e,visible:t,onClose:n,onReload:r,loading:i,lastFetchedAt:a,onSelectAccount:o,selectedAccountId:s}){let[c,l]=(0,Q.useState)(null),{usages:u,accounts:d,activeAccountId:f,initialLoading:p,refreshing:m,flashIds:h,reload:g,toggle:_,togglingId:v}=pn(t),[y,b]=(0,Q.useState)(null),[x,S]=(0,Q.useState)(null);if(!t)return null;let C=new Map(d.map(e=>[e.id,e]));function w(e,t){if(e){if(e.status===`disabled`)return`Disabled`;if(e.reauthRequired)return`Sign in again to use this account`;if(!e.hasRefreshToken&&e.expiresAt&&e.expiresAt<Math.floor(Date.now()/1e3))return`Token expired — sign in again`}let n=t?.usage.session;if(Wo(n?.utilization))return`5-hour limit reached${n?.resetsAt?` — resets ${xn(n)}`:``}`;let r=t?.usage.weekly;return Wo(r?.utilization)?`Weekly limit reached${r?.resetsAt?` — resets ${xn(r)}`:``}`:null}async function ee(e,t){b(await _(e,t))}async function T(e){if(!o)return;let t=w(C.get(e),u.find(t=>t.accountId===e));if(t){b(`Cannot switch to this account — ${t.toLowerCase()}.`);return}l(e),b(null);try{b(await o(e,u.find(t=>t.accountId===e)?.accountLabel??null)??null)}finally{l(null)}}let te=e.queryCostUsd!=null||e.totalCostUsd!=null;return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Uo,{title:`Usage`,meta:a&&(0,$.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:ln(new Date(a).getTime())}),onClose:n,onReload:r?()=>{r(),g()}:void 0,reloading:i||m,error:y,onDismissError:()=>b(null),cardCount:u.length,fallback:p?(0,$.jsx)(`p`,{className:`text-[10px] text-text-subtle`,children:`Loading...`}):e.session||e.weekly||e.weeklyOpus||e.weeklySonnet||e.weeklyScoped?.length?(0,$.jsxs)(`div`,{className:`space-y-2.5`,children:[(0,$.jsx)(bn,{label:`5-Hour Session`,bucket:e.session}),(0,$.jsx)(bn,{label:`Weekly`,bucket:e.weekly}),(0,$.jsx)(bn,{label:`Weekly (Opus)`,bucket:e.weeklyOpus}),(0,$.jsx)(bn,{label:`Weekly (Sonnet)`,bucket:e.weeklySonnet}),(0,$.jsx)(dn,{buckets:e.weeklyScoped})]}):(0,$.jsx)(`p`,{className:`text-xs text-text-subtle`,children:`No usage data available`}),footer:te?(0,$.jsxs)(`div`,{className:`border-t border-border pt-2 space-y-1`,children:[e.queryCostUsd!=null&&(0,$.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,$.jsx)(`span`,{className:`text-text-subtle`,children:`Last query`}),(0,$.jsxs)(`span`,{className:`text-text-primary font-medium tabular-nums`,children:[`$`,e.queryCostUsd.toFixed(4)]})]}),e.totalCostUsd!=null&&(0,$.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,$.jsx)(`span`,{className:`text-text-subtle`,children:`Session total`}),(0,$.jsxs)(`span`,{className:`text-text-primary font-medium tabular-nums`,children:[`$`,e.totalCostUsd.toFixed(4)]})]})]}):void 0,children:t=>u.map(n=>{let r=C.get(n.accountId);return(0,$.jsx)(yn,{entry:n,isActive:n.accountId===(s??e.activeAccountId??f),accountInfo:r,flash:h.has(n.accountId),layout:t,onSelect:o?T:void 0,unselectableReason:w(r,n),selecting:c===n.accountId,onToggle:ee,toggling:v===n.accountId,onReauth:()=>S(n.accountLabel??n.accountId.slice(0,8))},n.accountId)})}),x&&(0,$.jsx)(un,{open:!0,onOpenChange:e=>{e||S(null)},onSuccess:e=>{S(null),g(),e&&b(e)},signInAgainFor:x})]})}function Ko(e){return Math.round((e??0)*100)>=100}function qo(e,t){return{accountId:e.id,accountLabel:e.label,accountStatus:e.status??`active`,isOAuth:e.type!==`apiKey`,usage:{session:t.session,weekly:t.weekly}}}function Jo({onClose:e,usage:t,onReload:n,onSelectAccount:r,selectedAccountId:i}){let[a,o]=(0,Q.useState)([]),[s,c]=(0,Q.useState)({}),[l,u]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(null),[p,m]=(0,Q.useState)(null),[h,g]=(0,Q.useState)(null),_=(0,Q.useRef)(0),v=(0,Q.useRef)(!1),[y,b]=(0,Q.useState)(null),x=(0,Q.useCallback)(async()=>{if(v.current)return;let e=++_.current;u(!0);try{let t=await G.get(`/api/codex-accounts`);if(e!==_.current)return;o(t.accounts);let n=await G.get(`/api/codex-accounts/usage`);e===_.current&&c(n)}catch{}finally{e===_.current&&u(!1)}},[]);(0,Q.useEffect)(()=>{x();let e=setInterval(()=>{x()},12e4);return()=>{clearInterval(e),++_.current}},[x]);let S=(0,Q.useCallback)(async()=>{let e=++_.current;v.current=!0,u(!0);try{await n?.();let t=await G.get(`/api/codex-accounts/usage`);e===_.current&&c(t)}catch{}finally{v.current=!1,e===_.current&&u(!1)}},[n]),C=(0,Q.useCallback)((e,t)=>e.status===`disabled`?`Disabled`:e.signedOut?`Signed out — sign in again first`:Ko(t.fiveHour)?`5-hour limit reached${t.session?.resetsAt?` — resets ${xn(t.session)}`:``}`:Ko(t.sevenDay)?`Weekly limit reached${t.weekly?.resetsAt?` — resets ${xn(t.weekly)}`:``}`:null,[]),w=(0,Q.useCallback)(async e=>{if(!r)return;let t=a.find(t=>t.id===e);if(!t)return;let n=C(t,s[e]??{});if(n){g(`Cannot switch to this account — ${n.toLowerCase()}.`);return}f(e),g(null);try{g(await r(e,t.label)??null)}finally{f(null)}},[r,a,s,C]),ee=(0,Q.useCallback)(async(e,t)=>{m(e),g(null);try{await G.patch(`/api/codex-accounts/${e}`,{status:t===`disabled`?`active`:`disabled`}),o((await G.get(`/api/codex-accounts`)).accounts)}catch(e){g(e.message||`Could not change the account`)}finally{m(null)}},[]),T=(0,Q.useCallback)(async(e,t)=>{m(e),g(null);try{await G.patch(`/api/codex-accounts/${e}`,{dailyGuardEnabled:!t}),o((await G.get(`/api/codex-accounts`)).accounts)}catch(e){g(e.message||`Could not change Daily guard`)}finally{m(null)}},[]),te=l&&a.length===0?(0,$.jsxs)(`div`,{className:`text-xs text-text-subtle flex items-center gap-2`,children:[(0,$.jsx)(R,{className:`size-3 animate-spin`}),` Loading…`]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(mn,{active:!1,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`text-sm font-medium text-text-primary truncate flex-1 min-w-0`,children:t.activeAccountLabel||`Default login`}),(0,$.jsx)(`span`,{className:`text-[10px] uppercase tracking-wide text-text-subtle border border-border rounded px-1 shrink-0`,children:`~/.codex`})]}),(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(bn,{label:`5-Hour Session`,bucket:t.session}),(0,$.jsx)(bn,{label:`Weekly`,bucket:t.weekly}),!t.session&&!t.weekly&&(0,$.jsx)(`p`,{className:`text-xs text-text-subtle`,children:`No usage data yet`})]})]}),(0,$.jsxs)(`p`,{className:`text-[11px] text-text-subtle`,children:[`Using your default `,(0,$.jsx)(`code`,{children:`~/.codex`}),` login. Add managed accounts in Settings → AI Provider → Codex.`]})]});return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Uo,{title:`Codex Usage`,onClose:e,onReload:n?()=>void S():void 0,reloading:l,error:h,onDismissError:()=>g(null),cardCount:a.length,fallback:te,children:e=>a.map(n=>{let a=s[n.id]??{},o=a.session==null?gn(a.weekly):null;return(0,$.jsx)(yn,{entry:qo(n,a),isActive:n.id===(i??t.activeAccountId),layout:e,planLabel:_n(n.planType),onSelect:r?w:void 0,unselectableReason:C(n,a),selecting:d===n.id,onToggle:ee,toggling:p===n.id,dailyGuard:o?{enabled:!!n.dailyGuardEnabled,state:o}:void 0,onDailyGuardToggle:o?()=>void T(n.id,!!n.dailyGuardEnabled):void 0,dailyGuardToggling:p===n.id,reauthHint:n.signedOut?fn:void 0,resetCredits:a.resetCredits,resetCreditAction:(0,$.jsx)(vn,{account:n,usage:a,onDone:e=>{g(e),S()}}),onReauth:n.type===`chatgpt`?()=>b(n):void 0},n.id)})}),y&&(0,$.jsx)(hn,{account:y,onClose:()=>b(null),onDone:()=>void x()})]})}var Yo={working:`working`,paused:`paused`,"no-transcript":`no session`};function Xo({member:e,onOpen:t}){let n=e.workState===`working`,r=La(e),i=Ia(e.startedAt,n?void 0:e.lastEventAt),a=Fa(e.agentType);return(0,$.jsxs)(`button`,{type:`button`,onClick:()=>t(e.name),className:`w-full text-left min-h-[44px] px-1.5 py-1 rounded-md hover:bg-surface-elevated transition-colors group`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[n?(0,$.jsx)(R,{className:`size-3 shrink-0 animate-spin text-success`}):(0,$.jsx)(`span`,{className:J(`size-1.5 rounded-full shrink-0`,e.workState===`paused`?`bg-warning`:`bg-text-3`)}),(0,$.jsx)(`span`,{className:`font-medium truncate`,children:e.name}),a&&(0,$.jsx)(`span`,{className:`text-text-subtle text-[10px] truncate`,children:a}),e.model&&(0,$.jsxs)(`span`,{className:`text-text-subtle text-[10px]`,children:[`(`,e.model,`)`]}),(0,$.jsxs)(`span`,{className:`ml-auto flex items-center gap-1 shrink-0 text-[10px] text-text-subtle`,children:[i&&(0,$.jsx)(`span`,{children:i}),(0,$.jsx)(`span`,{className:J(n&&`text-success`),children:Yo[e.workState]}),(0,$.jsx)(pe,{className:`size-3 opacity-0 group-hover:opacity-100 transition-opacity`})]})]}),r&&(0,$.jsx)(`div`,{className:`mt-0.5 pl-5 text-[11px] text-text-subtle truncate font-mono`,children:r})]})}function Zo({members:e,loading:t,onOpenMember:n,className:r}){return e.length===0?(0,$.jsx)(`div`,{className:J(`flex items-center justify-center gap-2 text-xs text-text-subtle py-4`,r),children:t?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(R,{className:`size-3 animate-spin`}),`Reading member sessions…`]}):`No member sessions recorded`}):(0,$.jsx)(`div`,{className:J(`overflow-y-auto space-y-0.5`,r),children:e.map(e=>(0,$.jsx)(Xo,{member:e,onOpen:n},e.name))})}var Qo=[`subject`,`summary`,`text`,`message`,`content`,`description`,`reason`,`feedback`],$o=[`description`,`message`,`content`,`reason`,`feedback`],es=new Set([`type`,`taskId`,`task_id`,`assignedBy`,`assigned_by`,`timestamp`,`request_id`,`requestId`]),ts=e=>typeof e==`string`?e.trim():e==null?``:String(e);function ns(e,t,n){for(let r of t){if(r===n)continue;let t=ts(e[r]);if(t)return{key:r,value:t}}return null}function rs(e){return Object.entries(e).filter(([e,t])=>!es.has(e)&&ts(t)).map(([e,t])=>`${e}: ${ts(t)}`).join(` · `)}function is(e,t){let n=ts(t),r=ts(e);if(!r)return{title:n};let i;try{i=JSON.parse(r)}catch{let[e,...t]=r.split(`
9
- `),i=t.join(`
10
- `).trim();return{title:n||ts(e),...i?{detail:i}:{}}}if(!i||typeof i!=`object`||Array.isArray(i))return{title:n||r};let a=i,o=ts(a.taskId)||ts(a.task_id),s=ns(a,Qo),c=ns(a,$o,s?.key);return{title:n||s?.value||rs(a)||ts(a.type)||r,...c?{detail:c.value}:{},...o?{taskId:o}:{}}}function as({messages:e,className:t}){let n=(0,Q.useRef)(null);return(0,Q.useEffect)(()=>{n.current?.scrollIntoView({behavior:`smooth`})},[e.length]),e.length===0?(0,$.jsx)(`p`,{className:J(`text-xs text-text-subtle text-center py-4`,t),children:`No messages yet`}):(0,$.jsx)(`div`,{className:J(`overflow-y-auto`,t),children:(0,$.jsxs)(`div`,{className:`space-y-2`,children:[e.map((e,t)=>{let n=e.parsedType?Kt[e.parsedType]:null,{title:r,detail:i,taskId:a}=is(e.text,e.summary);return(0,$.jsxs)(`div`,{className:`text-xs`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1 text-text-subtle`,children:[(0,$.jsx)(`span`,{className:`font-medium`,style:ss(e.color),children:e.from}),(0,$.jsx)(`span`,{children:`→`}),(0,$.jsx)(`span`,{children:e.to}),(0,$.jsx)(`span`,{className:`ml-auto text-[10px]`,children:os(e.timestamp)})]}),(0,$.jsxs)(`div`,{className:`mt-0.5 text-foreground/90 break-words`,children:[n&&(0,$.jsx)(`span`,{className:J(`inline-block px-1 py-0 rounded text-[9px] mr-1`,n.className),children:n.label}),a&&(0,$.jsxs)(`span`,{className:`inline-block px-1 py-0 rounded text-[9px] mr-1 bg-surface-elevated text-text-subtle`,children:[`#`,a]}),r]}),i&&(0,$.jsx)(`div`,{className:`mt-0.5 text-[11px] text-text-subtle break-words line-clamp-2`,children:i})]},`${e.timestamp}-${t}`)}),(0,$.jsx)(`div`,{ref:n})]})})}function os(e){try{return new Date(e).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}catch{return``}}function ss(e){if(e&&(/^#[0-9a-fA-F]{3,8}$/.test(e)||/^[a-zA-Z]{3,20}$/.test(e)))return{color:e}}function cs(e,t){return e===t?`Team (current session)`:e}function ls({teamNames:e,messages:t,sessionId:n,projectName:r,providerId:i}){let[a,o]=(0,Q.useState)(e[0]??``),[s,c]=(0,Q.useState)(`members`),l=Bt(),u=xt();(0,Q.useEffect)(()=>{e.length>0&&!e.includes(a)&&o(e[0])},[e,a]);let{members:d,outbound:f,loading:p,refresh:m}=Ha(a,!!a),h=(0,Q.useCallback)(e=>{n&&l({projectName:r??``,providerId:Ut(i),sessionId:n,source:{kind:`member`,teamName:a,memberName:e},title:`Session — ${e}`})},[l,a,r,i,n]),g=(0,Q.useMemo)(()=>{let e=f.map(e=>({from:e.from,to:e.to,text:e.text,timestamp:e.timestamp,...e.summary?{summary:e.summary}:{}}));return[...t,...e].sort((e,t)=>new Date(e.timestamp).getTime()-new Date(t.timestamp).getTime()).slice(-200)},[t,f]),_=d.filter(e=>e.workState===`working`).length,v=e=>J(`flex items-center gap-1.5 px-2.5 rounded-md text-[11px] whitespace-nowrap transition-colors`,u?`min-h-[44px]`:`py-1`,e?`bg-primary/10 text-primary font-medium`:`text-text-subtle hover:text-text-primary`);return(0,$.jsxs)(`div`,{className:`flex flex-col min-h-0`,children:[e.length>1&&(0,$.jsx)(`div`,{className:`flex items-center gap-1 overflow-x-auto min-w-0 mb-1.5`,children:e.map(e=>(0,$.jsx)(`button`,{onClick:()=>o(e),className:J(`px-2 py-0.5 text-[11px] rounded-md whitespace-nowrap transition-colors`,a===e?`bg-primary/10 text-primary font-medium`:`text-text-subtle hover:text-text-primary`),children:cs(e,n)},e))}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1 mb-1.5 shrink-0`,role:`tablist`,children:[(0,$.jsxs)(`button`,{role:`tab`,"aria-selected":s===`members`,onClick:()=>c(`members`),className:v(s===`members`),children:[(0,$.jsx)(`span`,{children:`Members`}),(0,$.jsx)(`span`,{className:`text-text-subtle`,children:d.length}),_>0&&(0,$.jsxs)(`span`,{className:`flex items-center gap-1 text-success`,children:[(0,$.jsx)(`span`,{className:`size-1.5 rounded-full bg-success animate-pulse`}),_]})]}),(0,$.jsxs)(`button`,{role:`tab`,"aria-selected":s===`messages`,onClick:()=>c(`messages`),className:v(s===`messages`),children:[(0,$.jsx)(`span`,{children:`Messages`}),(0,$.jsx)(`span`,{className:`text-text-subtle`,children:g.length})]}),(0,$.jsx)(`button`,{onClick:m,className:J(`ml-auto text-text-subtle hover:text-foreground shrink-0`,u?`p-3`:`p-1`),"aria-label":`Refresh`,children:(0,$.jsx)(fe,{className:J(`size-3`,p&&`animate-spin`)})})]}),s===`members`?(0,$.jsx)(Zo,{members:d,loading:p,onOpenMember:h,className:`max-h-56`}):(0,$.jsx)(as,{messages:g,className:`max-h-56`})]})}function us(e){return e>=90?`text-error`:e>=70?`text-warning`:`text-success`}function ds({tabId:e,projectName:t,usageInfo:n,usageLoading:r,refreshUsage:i,lastFetchedAt:a,sessionId:o,providerId:c,pickedAccountLabel:l,pickedAccountId:u,onSelectAccount:d,onSelectSession:f,historyFilter:p,onBugReport:m,isConnected:h,onReload:v,teamActivity:y,teamMessages:b,onTeamOpen:S}){let[C,w]=(0,Q.useState)(null),T=Be(t),te=T?we(T):null,ne=ze(e=>(te?e.byProject[te]?.sessions:void 0)??Le),ae=ze(e=>(te?e.byProject[te]?.hasMore:void 0)??!1),oe=ze(e=>(te?e.byProject[te]?.isSyncing:void 0)??!1),D=ze(e=>(te?e.byProject[te]?.tags:void 0)??null);(0,Q.useEffect)(()=>{T&&ze.getState().ensure(T)},[T]);let[O,se]=(0,Q.useState)([]),[ce,k]=(0,Q.useState)(null),[le,A]=(0,Q.useState)(null),[j,M]=(0,Q.useState)(!1),ue=bt(e=>e.notifications),N=bt(e=>o?e.notifications.has(o):!1),de=bt(e=>e.clearForSession),pe=bt(e=>e.markUnread),[me,he]=(0,Q.useState)(``),P=St(me,300),[F,ye]=(0,Q.useState)(null),[be,xe]=(0,Q.useState)(``),[Se,B]=(0,Q.useState)(!1),[Ce,V]=(0,Q.useState)(null),[H,U]=(0,Q.useState)(!1),[Te,Ee]=(0,Q.useState)(!1),De=(0,Q.useRef)(null),Oe=P?le??[]:ne,K=Ie([...Oe,...O]),ke=ce??(P?!1:ae),q=j||!P&&oe,Ae=D?.tags??[],je=D?.counts??{},Y=e=>{w(t=>t===e?null:e)},Me=(0,Q.useCallback)(async e=>{if(t){if(se([]),k(null),!e){A(null),T&&await ze.getState().sync(T);return}M(!0);try{let n=new URLSearchParams({limit:`50`,offset:`0`,q:e}),r=await G.get(`${W(t)}/chat/sessions?${n}`);A(r.sessions),k(r.hasMore)}catch{}finally{M(!1)}}},[t,T]),Pe=(0,Q.useCallback)(async()=>{if(!(!t||Se||!ke)){B(!0);try{let e=K.filter(e=>!e.pinned).length,n=new URLSearchParams({limit:`50`,offset:String(e)});P&&n.set(`q`,P);let r=await G.get(`${W(t)}/chat/sessions?${n}`);se(e=>{let t=new Set([...Oe,...e].map(e=>e.id));return[...e,...r.sessions.filter(e=>!t.has(e.id))]}),k(r.hasMore)}catch{}finally{B(!1)}}},[t,Se,ke,K,P,Oe]);(0,Q.useEffect)(()=>{C===`history`&&Me(P||void 0)},[P]);let We=(0,Q.useCallback)(async()=>{T&&await ze.getState().refreshTags(T)},[T]);function Ke(n){e&&window.dispatchEvent(new CustomEvent(`ppm:onboarding-evidence`,{detail:{type:`history-opened`,projectName:t,tabId:e,sessionId:n.id,visible:!document.hidden&&Object.values(Ne.getState().panels).some(t=>t.activeTabId===e)}}));let r=p?n.designSlug===p:!n.designSlug;f&&r?(f(n),w(null)):(ut(n,t),w(null))}let qe=(0,Q.useCallback)((e,t)=>{t.stopPropagation(),ye(e.id),xe(e.title||``),setTimeout(()=>De.current?.select(),0)},[]),Je=(0,Q.useCallback)(async()=>{if(!F||!be.trim()||!t){ye(null);return}let e=be.trim(),n=F,r=T??He(t);ze.getState().renameSession(r,n,e),se(t=>X(t,n,e)),A(t=>t&&X(t,n,e)),ye(null),await Fe(r,()=>G.patch(`${W(t)}/chat/sessions/${n}`,{title:e}))||Me(P||void 0)},[F,be,t,T,Me,P]),Ye=(0,Q.useCallback)(()=>ye(null),[]),Xe=(0,Q.useCallback)(async(e,n)=>{if(e.stopPropagation(),!t)return;let r=`${W(t)}/chat/sessions/${n.id}/pin`,i=!n.pinned,a=T??He(t);ze.getState().setPinned(a,n.id,i),se(e=>Re(e,n.id,i)),A(e=>e&&Re(e,n.id,i)),await Fe(a,()=>i?G.put(r):G.del(r))||Me(P||void 0)},[t,T,Me,P]),Ze=(0,Q.useCallback)(async(e,n)=>{if(e.stopPropagation(),!t||!window.confirm(`Delete this session? This cannot be undone.`))return;let r=T??He(t);ze.getState().removeSession(r,n.id),se(e=>Ve(e,n.id)),A(e=>e&&Ve(e,n.id)),await Fe(r,()=>G.del(`${W(t)}/chat/sessions/${n.id}?providerId=${n.providerId}`))||Me(P||void 0)},[t,T,Me,P]),Z=(0,Q.useCallback)((e,n)=>{let r=T??(t?He(t):null);r&&ze.getState().setSessionTag(r,e,n),se(t=>Ue(t,e,n)),A(t=>t&&Ue(t,e,n)),We()},[We,T,t]),Qe=(0,Q.useCallback)(async()=>{if(!t)return;let e=window.prompt(`Delete sessions older than how many days? (pinned sessions are kept)`,`30`);if(!e)return;let n=parseInt(e,10);if(!n||n<1||!window.confirm(`Delete all unpinned sessions older than ${n} days? This cannot be undone.`))return;M(!0);let r=T??He(t);ze.getState().removeOlderThan(r,n),await Fe(r,()=>G.del(`${W(t)}/chat/sessions?olderThanDays=${n}`)),await Me(P||void 0),M(!1)},[t,T,Me,P]);(0,Q.useEffect)(()=>{if(C!==`history`)return;let e=e=>{if(e.target instanceof HTMLInputElement||e.target instanceof HTMLTextAreaElement)return;let n=parseInt(e.key);if(n>=1&&n<=Ae.length&&o){let e=Ae[n-1];e&&(Z(o,{id:e.id,name:e.name,color:e.color}),Fe(He(t),()=>G.patch(`${W(t)}/chat/sessions/${o}/tag`,{tagId:e.id})))}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[C,Ae,o,t,Z]);let $e=p?K.filter(e=>e.designSlug===p):K,et=Ce===null?$e:$e.filter(e=>e.tag?.id===Ce),tt=!c||c===`claude`,nt=c===`codex`,rt=!u||u===n.activeAccountId,it=rt&&n.fiveHour!=null?Math.round(n.fiveHour*100):null,at=rt&&n.sevenDay!=null?Math.round(n.sevenDay*100):null,ot=it!=null||at!=null?us(Math.max(it??0,at??0)):`text-text-subtle`,st=l??(rt?n.activeAccountLabel:null)??null;return(0,$.jsxs)(`div`,{className:`border-b border-border/50`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1 overflow-x-auto scrollbar-none`,children:[(0,$.jsxs)(`button`,{"data-onboarding":`chat-history`,onClick:()=>Y(`history`),className:`shrink-0 flex items-center gap-1 px-1.5 py-0.5 rounded text-[11px] transition-colors ${C===`history`?`text-primary bg-primary/10`:`text-text-secondary hover:text-foreground hover:bg-surface-elevated`}`,children:[(0,$.jsx)(re,{className:`size-3`}),(0,$.jsx)(`span`,{children:`History`})]}),o&&c&&c!==`mock`?(0,$.jsxs)(`button`,{onClick:()=>Y(`config`),className:`shrink-0 flex items-center gap-1 px-1.5 py-0.5 rounded text-[11px] transition-colors ${C===`config`?`text-primary bg-primary/10`:`text-text-secondary hover:text-foreground hover:bg-surface-elevated`}`,title:`AI Settings`,children:[(0,$.jsx)(jt,{providerId:c}),(0,$.jsx)(`span`,{className:`capitalize`,children:c})]}):(0,$.jsx)(`button`,{onClick:()=>Y(`config`),className:`shrink-0 p-1 rounded transition-colors ${C===`config`?`text-primary bg-primary/10`:`text-text-subtle hover:text-text-secondary hover:bg-surface-elevated`}`,title:`AI Settings`,children:(0,$.jsx)(ge,{className:`size-3`})}),tt||nt?(0,$.jsxs)(`button`,{onClick:()=>Y(`usage`),className:`shrink-0 flex items-center gap-1 px-1.5 py-0.5 rounded text-[11px] font-medium tabular-nums transition-colors hover:bg-surface-elevated ${C===`usage`?`bg-primary/10`:``} ${ot}`,title:`Usage limits`,children:[(0,$.jsx)(L,{className:`size-3`}),st&&(0,$.jsxs)(`span`,{className:`text-text-secondary font-normal truncate max-w-[110px]`,title:st,children:[`[`,st,`]`]}),(0,$.jsxs)(`span`,{children:[`5h:`,it==null?`--%`:`${it}%`]}),(0,$.jsx)(`span`,{className:`text-text-subtle`,children:`·`}),(0,$.jsxs)(`span`,{children:[`Wk:`,at==null?`--%`:`${at}%`]})]}):null,y?.hasTeams&&(0,$.jsxs)(`button`,{onClick:()=>{Y(`team`),S?.()},className:`shrink-0 relative flex items-center gap-1 px-1.5 py-0.5 rounded text-[11px] transition-colors ${C===`team`?`text-primary bg-primary/10`:`text-text-secondary hover:text-foreground hover:bg-surface-elevated`}`,title:`Team activity`,children:[(0,$.jsx)(E,{className:`size-3`}),(0,$.jsx)(`span`,{children:`Team`}),(y.unreadCount??0)>0&&(0,$.jsx)(`span`,{className:`absolute -top-0.5 -right-0.5 size-2 bg-primary rounded-full animate-pulse`})]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1 pl-1`,children:[v&&(0,$.jsxs)(`button`,{onClick:e=>{let t=e.currentTarget.querySelector(`svg`);t&&(t.classList.add(`animate-spin`),setTimeout(()=>t.classList.remove(`animate-spin`),600)),v()},className:`relative size-4 flex items-center justify-center`,title:h?`Reload messages`:`Disconnected — click to reload`,children:[(0,$.jsx)(fe,{className:`size-3 ${h?`text-muted-foreground/60`:`text-error`}`,strokeWidth:2.5}),(0,$.jsx)(`span`,{className:`absolute -top-0.5 -right-0.5 size-1.5 rounded-full ${h?`bg-success`:`bg-error animate-pulse`}`})]}),o&&(0,$.jsx)(Ho,{hasUnread:N,onToggleUnread:()=>N?de(o):pe(o,t),onOpenDebug:()=>Ee(!0)})]})]}),o&&(0,$.jsx)(Vo,{sessionId:o,projectName:t,open:Te,onOpenChange:Ee}),C===`history`&&(0,$.jsxs)(`div`,{className:`border-t border-border/30 bg-surface`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5 px-2 py-1 border-b border-border/30`,children:[(0,$.jsx)(_e,{className:`size-3 text-text-subtle shrink-0`}),(0,$.jsx)(`input`,{type:`text`,value:me,onChange:e=>he(e.target.value),placeholder:`Search sessions...`,className:`flex-1 bg-transparent text-[11px] text-text-primary outline-none placeholder:text-text-subtle`}),(0,$.jsx)(`button`,{onClick:Qe,className:`p-0.5 rounded text-text-subtle hover:text-error transition-colors`,title:`Delete old sessions...`,children:(0,$.jsx)(s,{className:`size-3`})}),(0,$.jsx)(`button`,{onClick:()=>Me(P||void 0),disabled:q,className:`p-0.5 rounded text-text-subtle hover:text-text-secondary transition-colors disabled:opacity-50`,title:`Refresh`,children:(0,$.jsx)(fe,{className:`size-3 ${q?`animate-spin`:``}`})})]}),Ae.length>0&&(0,$.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1 overflow-x-auto border-b border-border/30 scrollbar-none`,children:[(0,$.jsxs)(`button`,{onClick:()=>V(null),className:`shrink-0 rounded-md border px-2 py-1 text-[10px] transition-colors ${Ce===null?`bg-primary/20 border-primary text-primary`:`border-border bg-surface text-text-secondary`}`,children:[`All (`,$e.length,`)`]}),Ae.map(e=>(0,$.jsxs)(`button`,{onClick:()=>V(Ce===e.id?null:e.id),className:`shrink-0 flex items-center gap-1 rounded-md border px-2 py-1 text-[10px] transition-colors ${Ce===e.id?`border-current`:`border-border bg-surface`}`,style:Ce===e.id?{backgroundColor:e.color+`20`,color:e.color,borderColor:e.color}:void 0,children:[(0,$.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.color}}),e.name,` (`,je[e.id]??0,`)`]},e.id)),(0,$.jsx)(`button`,{onClick:()=>U(!H),className:`shrink-0 p-1 rounded transition-colors ${H?`text-primary bg-primary/10`:`text-text-subtle hover:text-text-secondary`}`,title:`Manage tags`,children:(0,$.jsx)(ee,{className:`size-3`})})]}),H&&(0,$.jsx)(`div`,{className:`border-b border-border/30 px-2 py-2 max-h-[180px] overflow-y-auto bg-surface-elevated/50`,children:(0,$.jsx)(Ot,{projectName:t,onTagsChanged:We})}),(0,$.jsx)(`div`,{className:`max-h-[200px] overflow-y-auto`,children:q&&$e.length===0?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-3`,children:(0,$.jsx)(R,{className:`size-3.5 animate-spin text-text-subtle`})}):et.length===0?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-3 text-[11px] text-text-subtle`,children:me?`No matching sessions`:`No sessions yet`}):(0,$.jsxs)($.Fragment,{children:[et.map(e=>{let n=ue.get(e.id),r=!!n;return(0,$.jsx)(vt,{session:e,projectName:t,projectTags:Ae,onTogglePin:Xe,onStartEditing:qe,onDeleteSession:Ze,onTagChanged:Z,children:(0,$.jsxs)(`div`,{"data-onboarding":`chat-history-session`,className:J(`flex items-center gap-2 w-full px-3 py-1.5 text-left hover:bg-surface-elevated transition-colors group`,r&&`font-medium text-foreground`,r&&Mt(n.type),!r&&`text-text-secondary`),children:[(0,$.jsx)(jt,{providerId:e.providerId}),e.tag&&(0,$.jsx)(`span`,{className:`size-2 rounded-full shrink-0`,style:{backgroundColor:e.tag.color},title:e.tag.name}),F===e.id?(0,$.jsxs)(`form`,{className:`flex items-center gap-1 flex-1 min-w-0`,onSubmit:e=>{e.preventDefault(),Je()},children:[(0,$.jsx)(`input`,{ref:De,value:be,onChange:e=>xe(e.target.value),onBlur:Je,onKeyDown:e=>{e.key===`Escape`&&Ye()},className:`flex-1 min-w-0 bg-surface-elevated text-[11px] text-text-primary px-1 py-0.5 rounded border border-border outline-none focus:border-primary`,autoFocus:!0}),(0,$.jsx)(`button`,{type:`submit`,className:`p-0.5 text-success hover:text-success/80`,onClick:e=>e.stopPropagation(),children:(0,$.jsx)(z,{className:`size-3`})}),(0,$.jsx)(`button`,{type:`button`,className:`p-0.5 text-text-subtle hover:text-text-secondary`,onClick:e=>{e.stopPropagation(),Ye()},children:(0,$.jsx)(_,{className:`size-3`})})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`button`,{onClick:()=>Ke(e),className:`text-[11px] truncate flex-1 text-left flex items-center gap-1`,children:[e.title?.startsWith(`[PPM]`)&&(0,$.jsx)(ve,{className:`size-3 text-muted-foreground shrink-0`}),e.title?.startsWith(`[PPM]`)?e.title.slice(7):e.title||`Untitled`]}),(0,$.jsx)(`button`,{onClick:t=>Xe(t,e),className:`p-0.5 rounded transition-all ${e.pinned?`text-primary hover:text-primary/70`:`text-text-subtle hover:text-text-secondary can-hover:opacity-0 can-hover:group-hover:opacity-100`}`,title:e.pinned?`Unpin session`:`Pin session`,children:e.pinned?(0,$.jsx)(g,{className:`size-3`}):(0,$.jsx)(I,{className:`size-3`})}),(0,$.jsx)(`button`,{onClick:t=>qe(e,t),className:`p-0.5 rounded text-text-subtle hover:text-text-secondary can-hover:opacity-0 can-hover:group-hover:opacity-100 transition-opacity`,title:`Rename session`,children:(0,$.jsx)(ie,{className:`size-3`})}),(0,$.jsx)(`button`,{onClick:t=>Ze(t,e),className:`p-0.5 rounded text-text-subtle hover:text-error hover:bg-error/20 can-hover:opacity-0 can-hover:group-hover:opacity-100 transition-opacity`,title:`Delete session`,children:(0,$.jsx)(x,{className:`size-3`})})]}),F!==e.id&&e.updatedAt&&(0,$.jsx)(`span`,{className:`text-[10px] text-text-subtle shrink-0 w-16 text-right`,children:Ge(e.updatedAt)})]})},e.id)}),ke&&(0,$.jsxs)(`button`,{onClick:Pe,disabled:Se,className:`flex items-center justify-center gap-1 w-full py-1.5 text-[11px] text-text-subtle hover:text-text-secondary hover:bg-surface-elevated transition-colors`,children:[Se?(0,$.jsx)(R,{className:`size-3 animate-spin`}):null,Se?`Loading...`:`Load more`]})]})})]}),C===`config`&&(0,$.jsx)(`div`,{className:`border-t border-border/30 bg-surface px-3 py-2 max-h-[280px] overflow-y-auto`,children:(0,$.jsx)(cn,{compact:!0})}),C===`team`&&y?.hasTeams&&(0,$.jsx)(`div`,{className:`border-t border-border/30 bg-surface px-3 py-2`,children:(0,$.jsx)(ls,{teamNames:y.teamNames,messages:b??[],sessionId:o,projectName:t,providerId:c})}),C===`usage`&&tt&&(0,$.jsx)(Go,{usage:n,onSelectAccount:d,selectedAccountId:u??n.activeAccountId??null,visible:!0,onClose:()=>w(null),onReload:i,loading:r,lastFetchedAt:a}),C===`usage`&&nt&&(0,$.jsx)(Jo,{usage:n,onClose:()=>w(null),onReload:i,onSelectAccount:d,selectedAccountId:u??n.activeAccountId??null})]})}var fs=(0,Q.createContext)({pending:!1,prepare:()=>Promise.reject(Error(`Chat preparation is unavailable.`))});function ps(){return(0,Q.useContext)(fs)}function ms({tabId:e,metadata:t,children:n}){let[r,i]=(0,Q.useState)(),[a,o]=(0,Q.useState)(null),s=(0,Q.useRef)(t);s.current=t;let c=(0,Q.useRef)(!0),l=(0,Q.useRef)(null),u=t.providerPending===!0,d=(0,Q.useCallback)(()=>Ne.getState().getPanelForTab(e)?.tabs.find(t=>t.id===e)?.metadata??s.current,[e]),f=(0,Q.useCallback)((t,n)=>{let r=d();if(!r.providerPending&&typeof r.providerId==`string`)return{providerId:r.providerId,permissionMode:r.permissionMode};let i=r.permissionMode,a={providerId:t,permissionMode:i??n.providers[t]?.permission_mode??`bypassPermissions`},o={...r,...a,providerPending:void 0,focusedProviderOnOpen:void 0,...i?{}:{permissionModeSource:`cache`}};return s.current=o,Ne.getState().updateTab(e,{metadata:o}),a},[d,e]),p=(0,Q.useCallback)(()=>{let t=d();if(!t.providerPending)return typeof t.providerId==`string`&&t.providerId?Promise.resolve({providerId:t.providerId,permissionMode:t.permissionMode}):Promise.reject(Error(`Choose a provider for this chat.`));if(l.current)return l.current;i(void 0),o(null);let n=t.projectName,r=Je(),a=t.focusedProviderOnOpen,s=()=>Promise.all([qe(n),n?Ke(n):Promise.resolve(null)]).then(([e,t])=>({settings:e,providers:t,providerId:Y(e,a)})),u=cr(e),p=(u?u.then(e=>({settings:e.settings,providers:e.providers,providerId:e.resolvedProviderId})).catch(s):s()).then(({settings:e,providers:t,providerId:n})=>{if(!c.current)throw Error(`Chat was closed.`);if(r!==Je())throw Error(`Chat settings changed. Please retry.`);let i=d();if(!i.providerPending&&typeof i.providerId==`string`)return{providerId:i.providerId,permissionMode:i.permissionMode};if(t&&!t.some(e=>e.id===n))throw o({provider:n,settings:e,alternatives:t}),Error(`${n} is not available. Choose a provider for this chat.`);return f(n,e)}).catch(e=>{throw c.current&&i(e instanceof Error?e.message:`Could not load chat settings.`),e}).finally(()=>{l.current===p&&(l.current=null)});return l.current=p,p},[d,f,e]);(0,Q.useEffect)(()=>(c.current=!0,()=>{c.current=!1}),[]),(0,Q.useEffect)(()=>{u&&p().catch(()=>{})},[u,p]),(0,Q.useLayoutEffect)(()=>{let e=d();if(!e.providerPending)return;let t=e.projectName;if(!t)return;let n=Oe();if(!n)return;let r=K(we(He(t))),i=Y(n,e.focusedProviderOnOpen);r?.some(e=>e.id===i)&&f(i,n)},[]);let m=()=>{Ye(),p().catch(()=>{})};return(0,$.jsx)(fs.Provider,{value:{pending:u,providerId:t.providerId,permissionMode:t.permissionMode,prepare:p},children:(0,$.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[u&&(0,$.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2 px-3 py-1 text-xs text-muted-foreground`,role:`status`,children:a?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{children:[a.provider,` is not available. Choose a provider for this chat.`]}),a.alternatives.map(e=>(0,$.jsxs)(`button`,{className:`text-primary underline`,onClick:()=>f(e.id,a.settings),children:[`Use `,e.name]},e.id)),(0,$.jsx)(`button`,{className:`text-primary underline`,onClick:m,children:`Check again`})]}):r?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`span`,{children:[`Could not load chat settings. `,r]}),(0,$.jsx)(`button`,{className:`text-primary underline`,onClick:m,children:`Retry`})]}):`Preparing chat…`}),(0,$.jsx)(`div`,{className:`min-h-0 flex-1`,children:n})]})})}var hs=3e3;function gs(e,t,n){let r=(0,Q.useCallback)(t=>`ppm-chat-draft:${JSON.stringify([e,n??null,t??`__new__`])}`,[e,n]),i=r(t),[a]=(0,Q.useState)(()=>{try{let e=JSON.parse(sessionStorage.getItem(i)??`null`);return typeof e?.content!=`string`||!Array.isArray(e.attachments)?null:{content:e.content,attachments:e.attachments.filter(e=>typeof e?.name==`string`&&typeof e?.path==`string`)}}catch{return null}}),o=(0,Q.useRef)({projectName:e,sessionId:t,draft:a}),s=(0,Q.useRef)(i);s.current=i;let[c,l]=(0,Q.useState)(a),[u,d]=(0,Q.useState)(!0),f=(0,Q.useRef)(void 0),p=(0,Q.useRef)(t),m=(0,Q.useRef)(0);p.current=t;let h=t??`__new__`;(0,Q.useEffect)(()=>{if(!e){d(!1);return}let r=!1,i=m.current;(o.current.projectName!==e||o.current.sessionId!==t)&&(o.current.draft=null);let a=o.current.draft!==null;d(!0);let s=setTimeout(()=>{r||d(!1)},hs),c=()=>G.get(`${W(e)}/chat/drafts/${encodeURIComponent(h)}`),u=t===null&&n?cr(n):void 0;return(u?u.then(e=>e.draft,c):c()).then(e=>{if(!(r||a||m.current!==i))if(e){let t=[];try{t=JSON.parse(e.attachments)}catch{}l({content:e.content,attachments:t})}else l(null)}).catch(()=>{!r&&!a&&m.current===i&&l(null)}).finally(()=>{clearTimeout(s),r||d(!1)}),()=>{r=!0,clearTimeout(s)}},[e,h,n,t]);let g=(0,Q.useCallback)((t,n)=>{if(++m.current,e){try{sessionStorage.setItem(s.current,JSON.stringify({content:t,attachments:n??[]}))}catch{}f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{let r=p.current??`__new__`;G.put(`${W(e)}/chat/drafts/${encodeURIComponent(r)}`,{content:t,attachments:JSON.stringify(n??[])}).catch(()=>{})},1e3)}},[e]),_=(0,Q.useCallback)(()=>{f.current&&clearTimeout(f.current),f.current=void 0},[]),v=(0,Q.useCallback)(e=>{let t=s.current,n=r(e);if(t!==n)try{let e=sessionStorage.getItem(t);e!==null&&(sessionStorage.setItem(n,e),sessionStorage.removeItem(t))}catch{}},[r]),y=(0,Q.useCallback)(t=>{if(++m.current,!e)return;o.current.draft=null;try{sessionStorage.removeItem(s.current),t&&sessionStorage.removeItem(r(t===`__new__`?null:t))}catch{}f.current&&clearTimeout(f.current);let n=t??p.current??`__new__`;G.del(`${W(e)}/chat/drafts/${encodeURIComponent(n)}`).catch(()=>{}),l(null)},[e,r]);return(0,Q.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]),{draft:c,draftLoading:u,saveDraft:g,clearDraft:y,cancelPendingSave:_,moveDraft:v}}var _s=3e4,vs=45e3;function ys(e){let{metadata:t,tabId:n}=e;return n&&t?(0,$.jsx)(ms,{tabId:n,metadata:t,children:(0,$.jsx)(bs,{...e})}):(0,$.jsx)(bs,{...e})}function bs({metadata:e,tabId:t,onNewSession:n,onFork:r,historyFilter:i}){let a=ps(),o=(0,Q.useRef)(e);o.current=e;let s=typeof e?.designSlug==`string`&&e.designSlug?e.designSlug:void 0,[c,l]=(0,Q.useState)(e?.sessionId??null),u=(0,Q.useRef)(c);u.current=c;let d=(0,Q.useCallback)(e=>{let t=o.current?.projectName;u.current&&t&&ze.getState().replaceSessionId(He(t),u.current,e),l(e)},[]),[f,p]=(0,Q.useState)(e?.providerId??`claude`),m=!c&&a.providerId?a.providerId:f,[h,g]=(0,Q.useState)([]),[v,y]=(0,Q.useState)(!1),[x,S]=(0,Q.useState)(``),[C,w]=(0,Q.useState)(null),[ee,T]=(0,Q.useState)([]),[te,ne]=(0,Q.useState)([]),[re,E]=(0,Q.useState)(!1),[ie,ae]=(0,Q.useState)(``),[oe,D]=(0,Q.useState)(null),[O,se]=(0,Q.useState)(e?.permissionMode??void 0),ce=(0,Q.useRef)(!1),k=(0,Q.useCallback)(()=>{if(ce.current)return!1;let e=(t?dt(t):void 0)??o.current;return!e?.permissionMode||e.permissionModeSource===`cache`},[t]),le=(0,Q.useCallback)(e=>{ce.current=!0,se(e),t&&ft(t,{permissionMode:e,permissionModeSource:`user`})},[t]);(0,Q.useEffect)(()=>{!a?.pending&&!c&&e?.providerId&&(p(e.providerId),se(e.permissionMode))},[a?.pending,e?.providerId,e?.permissionMode,c]);let A=(0,Q.useRef)(null),j=(0,Q.useRef)(null),[M,ue]=(0,Q.useState)(!1),[N,de]=(0,Q.useState)(null),[fe,pe]=(0,Q.useState)(null),[me,he]=(0,Q.useState)(null),P=(0,Q.useRef)(0),F=e?.projectName??``;(0,Q.useState)(()=>{if(!t||c||!F||lr(t))return null;let n=e?.providerPending===!0,r=n?void 0:e?.providerId,i=typeof e?.pickedAccountId==`string`?e.pickedAccountProvider:void 0;return sr(t,He(F),{...n?{focusedProvider:e?.focusedProviderOnOpen}:{providerId:r},skipPick:i!==void 0&&(n||i===r)}),null}),(0,Q.useEffect)(()=>{t&&c&&dr(t)},[t,c]),(0,Q.useEffect)(()=>{if(!t||c)return;let e=cr(t);if(!e)return;let n=!1;return e.then(e=>{if(n||!k())return;let r=e.settings.providers[e.providerId]?.permission_mode??`bypassPermissions`;r!==o.current?.permissionMode&&(se(r),ft(t,{permissionMode:r,permissionModeSource:`cache`}))}).catch(()=>{}),()=>{n=!0}},[t,c,k]),Sr({tabId:t,sessionId:c,designSlug:s,projectName:F,providerId:m});let ge=We(e=>e.updateTab),I=ke(e=>e.version),{usageInfo:L,usageLoading:_e,lastFetchedAt:ve,refreshUsage:ye,reloadUsage:z}=xr(F,m,c??void 0,e?.pickedAccountProvider===m?e?.pickedAccountId:void 0,!a?.pending,t),{draft:be,draftLoading:xe,saveDraft:Se,clearDraft:B,cancelPendingSave:Ce,moveDraft:V}=gs(F,c,t);(0,Q.useEffect)(()=>{if(!t||!c)return;let e=dt(t)?.permissionModeSource===`user`?`user`:`inherited`;ft(t,{sessionId:c,providerId:m,permissionMode:O,permissionModeSource:O?e:void 0,pickedAccountId:void 0,pickedAccountLabel:void 0,pickedAccountProvider:void 0})},[c,m,O]);let H=(0,Q.useCallback)(e=>{p(e),t&&ft(t,{providerId:e})},[t]),we=e?.pickedAccountId,Te=e?.pickedAccountLabel,Ee=e?.pickedAccountProvider,De=!!we&&Ee===m,Oe=nr(t,m,!c&&!a?.pending&&!De),K=(0,Q.useCallback)(async(e,n)=>{if(c){try{await G.put(`${W(F)}/chat/sessions/${c}/account`,{accountId:e}),Ae({id:e,label:n}),z(),U.success(`This chat will use the selected account from the next message.`)}catch(e){return e.message||`Could not switch account`}return null}return t&&ft(t,{pickedAccountId:e,pickedAccountLabel:n,pickedAccountProvider:m}),null},[c,F,t,e,m,ge,z]),[J,Ae]=(0,Q.useState)(null),je=Ne(e=>Object.values(e.panels).some(e=>e.activeTabId===t)),{messages:Y,renderedMessages:Me,expandCompact:Pe,isCompactExpanded:Fe,dismissMessage:X,clearErrors:Ie,messagesLoading:Le,versionMap:Re,isStreaming:Be,phase:Ve,isReconnecting:Ue,connectingElapsed:Ge,pendingApproval:Ke,contextWindowPct:qe,compactStatus:Je,promptCache:Ye,mcpNeedsAuth:Xe,statusMessage:Ze,sessionTitle:Qe,liveAccount:$e,model:et,setModel:tt,effort:nt,setEffort:rt,thinking:it,setThinking:ot,turnSettings:st,sendMessage:ct,respondToApproval:lt,cancelStreaming:ut,reconnect:pt,refetchMessages:mt,isConnected:ht,teamActivity:gt,teamMessages:_t,markTeamRead:vt,bashPartialOutput:yt,backgroundShells:xt,killBackgroundShell:St}=Zn(c,m,F,d,(0,Q.useCallback)(e=>{if(!t)return;let n=!document.hidden&&Object.values(Ne.getState().panels).some(e=>e.activeTabId===t),r={started:`chat-started`,succeeded:`chat-succeeded`,failed:`chat-failed`,session:`chat-session`};window.dispatchEvent(new CustomEvent(`ppm:onboarding-evidence`,{detail:{...e,type:r[e.type],projectName:F,tabId:t,visible:n}}))},[F,t])),Ct=(0,Q.useMemo)(()=>st(),[st,et,nt,it]),wt=er({enabled:!c&&!s&&je&&!!F&&!a.pending,projectName:F,providerId:m,permissionMode:O,accountId:De?we:void 0,picks:Ct});(0,Q.useEffect)(()=>{if(!t||!je||xe||Be)return;let e=()=>window.dispatchEvent(new CustomEvent(`ppm:onboarding-evidence`,{detail:{type:`chat-opened`,projectName:F,tabId:t,sessionId:c,visible:!document.hidden}}));return e(),window.addEventListener(`ppm:onboarding-refresh`,e),()=>window.removeEventListener(`ppm:onboarding-refresh`,e)},[t,F,c,je,xe,Be]),(0,Q.useEffect)(()=>{$e&&Ae($e)},[$e]);let Tt=$e?.id;(0,Q.useEffect)(()=>{Tt&&z()},[Tt,z]),(0,Q.useEffect)(()=>{Ae(null)},[c]);let Et=gt?.teamNames?.[0]??``,{members:Dt}=Ha(Et,!!Et),Ot=(0,Q.useMemo)(()=>({projectName:F,providerId:Ut(m),sessionId:c??``}),[F,m,c]);(0,Q.useEffect)(()=>{if(!c||!t)return;let e=()=>{if(document.hidden)return;let{panels:e}=Ne.getState();Object.values(e).some(e=>e.activeTabId===t)&&(bt.getState().notifications.get(c)?.manual||bt.getState().clearForSession(c))};e(),document.addEventListener(`visibilitychange`,e);let n=Ne.subscribe(e),r=bt.subscribe(e);return()=>{document.removeEventListener(`visibilitychange`,e),n(),r()}},[c,t]),(0,Q.useEffect)(()=>{t&&Qe&&!s&&ge(t,{title:Qe}),c&&F&&Qe&&ze.getState().renameSession(He(F),c,Qe)},[Qe]);let[kt,At]=(0,Q.useState)(e?.pendingMessage);(0,Q.useEffect)(()=>{let n=e?.pendingAttachmentDataUrl;if(!n||!t)return;ft(t,{pendingAttachmentDataUrl:void 0,pendingAttachmentName:void 0});let r=e?.pendingAttachmentName||`screenshot.jpg`;fetch(n).then(e=>e.blob()).then(e=>{de([new File([e],r,{type:e.type||`image/jpeg`})]),setTimeout(()=>de(null),100)}).catch(()=>{})},[]);let[jt,Mt]=(0,Q.useState)(!1),[Nt,Ft]=(0,Q.useState)(!1),[It,Lt]=(0,Q.useState)(null),Rt=(0,Q.useRef)(0),zt=(0,Q.useRef)(!1),Bt=(0,Q.useRef)(null),[Vt,Ht]=(0,Q.useState)(null),Wt=(0,Q.useCallback)((e,t)=>{zt.current=!1,Bt.current=null,Lt(null),Ft(!1),Ht({text:e,nonce:Date.now()}),U.error(`Message not sent`,{description:`${t} Your text is back in the input.`})},[]),Gt=(0,Q.useCallback)(e=>{let t=Bt.current;++Rt.current,zt.current=!1,Ft(!1),Lt(null),j.current&&=(clearTimeout(j.current),null),Mt(!1);let n=A.current;if(!n){t&&Wt(t,e);return}A.current=null,B(n.draftId),Wt(n.content,e)},[Wt,B]),Kt=(0,Q.useCallback)(e=>{A.current=e,j.current&&clearTimeout(j.current),j.current=setTimeout(()=>Gt(`The chat did not connect in time.`),vs)},[Gt]);(0,Q.useEffect)(()=>{if(ht&&A.current){let{content:e,draftId:t,permissionMode:n,images:r,imagePaths:i}=A.current;A.current=null,j.current&&=(clearTimeout(j.current),null),ct(e,{permissionMode:n,...r?.length&&{images:r},...i?.length&&{imagePaths:i}}),zt.current=!1,Bt.current=null,Lt(null),Ft(!1),B(t)}},[ht,ct,B]),(0,Q.useEffect)(()=>()=>{++Rt.current,j.current&&clearTimeout(j.current)},[]);let[qt,Yt]=(0,Q.useState)(null),[Xt,Zt]=(0,Q.useState)(0),[Qt,$t]=(0,Q.useState)(!1),en=(0,Q.useRef)(!1);(0,Q.useEffect)(()=>{en.current&&!Le&&$t(!1),en.current=!!Le},[Le]),(0,Q.useEffect)(()=>{kt&&ht&&c&&t&&ft(t,{pendingMessage:void 0})},[ht,c]),(0,Q.useEffect)(()=>{jt&&Be&&Mt(!1)},[jt,Be]),(0,Q.useEffect)(()=>{if(!jt)return;let e=setTimeout(()=>Mt(!1),6e4);return()=>clearTimeout(e)},[jt]);let tn=(0,Q.useCallback)((e,t)=>{if(n){n(t);return}We.getState().openTab({type:`chat`,title:e||`AI Chat`,metadata:{projectName:F,providerId:m,...O&&{permissionMode:O,permissionModeSource:`cache`},...t&&{clearedFrom:t}},projectId:F||null,closable:!0})},[F,m,O,n]),nn=(0,Q.useCallback)(e=>{Gt(`You switched to another chat before it connected.`),l(e.id),p(e.providerId),t&&!s&&ge(t,{title:e.title||`Chat`}),bt.getState().clearForSession(e.id)},[t,ge,Gt,s]),rn=(0,Q.useCallback)(async(e,t)=>{if(!(!c||!F))try{let{api:n,projectUrl:i}=await q(async()=>{let{api:e,projectUrl:t}=await import(`./api-client-CbrcysYC.js`);return{api:e,projectUrl:t}},__vite__mapDeps([44,5,1,2,12])),a=await n.post(`${i(F)}/chat/sessions/${c}/fork?providerId=${m}`,{messageId:t});if(ze.getState().upsertSession(He(F),{id:a.id,providerId:m,title:e.slice(0,50),createdAt:new Date().toISOString(),...s&&{designSlug:s}}),r){r({sessionId:a.id,providerId:m,pendingMessage:e});return}We.getState().openTab({type:`chat`,title:`Fork: ${e.slice(0,30)}`,metadata:{projectName:F,sessionId:a.id,providerId:m,pendingMessage:e},projectId:F||null,closable:!0})}catch(e){console.error(`Fork failed:`,e);let t=e?.message||`Unknown error`;U.error(`Cannot fork from this message`,{description:t.includes(`not found`)||t.includes(`Invalid upToMessageId`)?`The original message is no longer available in the session transcript. Try forking from a different message.`:t})}},[c,F,m,r,s]),an=(0,Q.useCallback)((e,t,n)=>{At(e),Yt({anchorMsgId:t,ownMsgId:n})},[]),on=(0,Q.useCallback)(()=>{Yt(null),At(void 0),Mt(!1),B(),Zt(e=>e+1)},[B]),cn=(0,Q.useCallback)(async(e,n)=>{if(!(!e.trim()||!c||!F)){Mt(!0);try{let r=await G.post(`${W(F)}/chat/sessions/${c}/fork?providerId=${m}&mode=edit`,{messageId:n},{signal:AbortSignal.timeout(_s)});ze.getState().upsertSession(He(F),{id:r.id,providerId:m,title:e.slice(0,50),createdAt:new Date().toISOString(),...s&&{designSlug:s}}),Kt({content:e,draftId:c,permissionMode:O}),V(r.id),$t(!0),t&&ft(t,{sessionId:r.id}),l(r.id)}catch(t){Mt(!1);let n=t?.name===`TimeoutError`?`The server did not answer in time.`:t?.message||`Unknown error`;U.error(`Cannot edit from this message`,{description:n.includes(`not found`)||n.includes(`Invalid upToMessageId`)?`The original message is no longer available in the session transcript.`:n}),Ht({text:e,nonce:Date.now()})}}},[c,F,m,O,t,Kt,V,s]),ln=(0,Q.useCallback)(e=>{!e||e===c||(Gt(`You switched to another version before it connected.`),$t(!0),t&&ft(t,{sessionId:e}),l(e))},[c,t,Gt]),un=(0,Q.useCallback)((e,t,n=[])=>{if(t.length===0)return e;let r=[];for(let e of t)e.textContent&&r.push(e.textContent);let{inlineImagePaths:i,pathOnlyPaths:a}=Tn(t,n);for(let e of i)r.push(`[Attached image (contents included in this message): ${e}]`);if(a.length>0){let e=a.join(`
11
- `);r.push(a.length===1?`[Attached file: ${e}]`:`[Attached files:\n${e}\n]`)}return r.length===0?e:r.join(`
12
-
13
- `)+`
14
-
15
- `+e},[]),dn=(0,Q.useCallback)(async(n,r=[],i)=>{let u=wn(r),d=un(n,r,u),f=r.filter(e=>e.isImage&&e.serverPath).map(e=>e.serverPath);if(!(!d.trim()&&u.length===0)){if(!c){if(zt.current)return;zt.current=!0,Bt.current=d;let r=++Rt.current;Ft(!0),Lt({content:d,timestamp:new Date().toISOString()});try{let i=a?.pending?await a.prepare():null;if(r!==Rt.current)return;let c=i?.providerId??m,h=i?.permissionMode??O??a.permissionMode,g=t?await cr(t)?.catch(()=>void 0):void 0;if(r!==Rt.current)return;g&&k()&&(h=g.settings.providers[c]?.permission_mode??h),p(c),se(h),t&&ft(t,{permissionMode:h});let _=await Oe(c).catch(()=>null);if(r!==Rt.current)return;let v=o.current,y=v?.pickedAccountProvider===c?v.pickedAccountId:_?.id,b=F,x=await G.post(`${W(b)}/chat/sessions`,{providerId:c,title:n.slice(0,50),clearedFrom:e?.clearedFrom,accountId:y,...s&&{designSlug:s}},{signal:AbortSignal.timeout(_s)});if(r!==Rt.current)return;ze.getState().upsertSession(He(b),{id:x.id,providerId:x.providerId,title:x.title,createdAt:x.createdAt,...s&&{designSlug:s}}),V(x.id),l(x.id),p(x.providerId),Kt({content:d,draftId:`__new__`,permissionMode:h,images:u,imagePaths:f});return}catch(e){if(r!==Rt.current)return;console.error(`Failed to create session:`,e),Wt(d,e?.name===`TimeoutError`?`The server did not answer in time.`:`Could not start the chat: ${e?.message||`unknown error`}.`);return}}ct(d,{permissionMode:O,priority:i,...u.length>0&&{images:u},...f.length>0&&{imagePaths:f}}),B()}},[c,m,F,ct,un,O,e,Kt,Wt,B,s,V,a,Oe,t,k]),fn=(0,Q.useRef)(h);fn.current=h;let pn=(0,Q.useCallback)((e,t,n)=>{let r=e.trim().match(/^\/(\S+)(?:\s+([\s\S]+))?$/);if(r){let e=fn.current.find(e=>e.handler===`client`&&(e.name===r[1]||e.aliases?.includes(r[1])));if(r[1]===`clear`||e?.name===`clear`){B(),tn(r[2]?.trim(),c??void 0);return}}if(At(void 0),Se(e,t.filter(e=>e.serverPath).map(e=>({name:e.name,path:e.serverPath}))),Ce(),qt&&c&&F){let n=qt.anchorMsgId;Yt(null),cn(un(e,t),n);return}dn(e,t,n)},[dn,B,Se,Ce,qt,c,F,cn,un,tn]),mn=(0,Q.useRef)(Y);mn.current=Y;let hn=(0,Q.useCallback)(()=>mn.current.filter(e=>e.role===`user`&&e.content.trim()).map(e=>e.content),[]),gn=(0,Q.useCallback)((e,t)=>{Se(e,t),wt()},[Se,wt]),_n=(0,Q.useCallback)((e,t)=>{g(e),t&&T(t)},[]),vn=(0,Q.useCallback)((e,t)=>{y(e),S(t)},[]),yn=(0,Q.useCallback)(e=>{w(e),y(!1),S(``),setTimeout(()=>w(null),50),F&&(G.post(`${W(F)}/chat/slash-recents`,{name:e.name,type:e.type}).catch(()=>{}),T(t=>[e.name,...t.filter(t=>t!==e.name)].slice(0,5)))},[F]),bn=(0,Q.useCallback)(()=>{y(!1),S(``)},[]),xn=(0,Q.useCallback)(()=>pe(null),[]),Sn=(0,Q.useCallback)(e=>{he(e)},[]),Cn=(0,Q.useCallback)(e=>{pe([e.path]),he(null)},[]);(0,Q.useEffect)(()=>{if(re&&F)return Z.getState().openIndexReader(F)},[re,F]);let En=Z(e=>e.indexRemote),Dn=Pt(F,ie,{enabled:re&&En,kind:`all`}),On=(0,Q.useCallback)((e,t)=>{E(e),ae(t)},[]),kn=(0,Q.useCallback)(e=>{D(e),E(!1),ae(``),setTimeout(()=>D(null),50)},[]),An=(0,Q.useCallback)(()=>{E(!1),ae(``)},[]),jn=(0,Q.useCallback)(e=>{e.preventDefault(),P.current++,(e.dataTransfer.types.includes(`application/x-ppm-path`)||e.dataTransfer.types.includes(`Files`))&&ue(!0)},[]),Mn=(0,Q.useCallback)(e=>{e.preventDefault(),P.current--,P.current===0&&ue(!1)},[]),Nn=(0,Q.useCallback)(e=>{e.preventDefault()},[]),Pn=(0,Q.useCallback)(e=>{e.preventDefault(),P.current=0,ue(!1);let t=e.dataTransfer.getData(`application/x-ppm-path`);if(t){pe([t]);return}let n=Array.from(e.dataTransfer.files);n.length>0&&(de(n),setTimeout(()=>de(null),100))},[]);return(0,$.jsx)(Jt,{value:Ot,children:(0,$.jsxs)(`div`,{"data-onboarding":`chat`,className:`flex flex-col h-full relative`,onDragEnter:jn,onDragLeave:Mn,onDragOver:Nn,onDrop:Pn,children:[M&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-50 flex items-center justify-center bg-background/80 backdrop-blur-sm border-2 border-dashed border-primary rounded-lg pointer-events-none`,children:(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2 text-primary`,children:[(0,$.jsx)(b,{className:`size-8`}),(0,$.jsx)(`span`,{className:`text-sm font-medium`,children:`Drop files to attach`})]})}),Ue&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-50 flex items-center justify-center bg-background/60 backdrop-blur-sm`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(R,{className:`size-4 animate-spin`}),(0,$.jsx)(`span`,{children:`Reconnecting...`})]})}),jt&&(0,$.jsx)(`div`,{className:`absolute inset-0 z-50 flex items-center justify-center bg-background/70 backdrop-blur-sm`,children:(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-sm text-muted-foreground`,children:[(0,$.jsx)(R,{className:`size-4 animate-spin`}),(0,$.jsx)(`span`,{children:`Creating edited version…`})]})}),(0,$.jsx)(Da,{shells:xt,onKill:St}),Nt?(0,$.jsxs)(`div`,{className:`flex-1 overflow-y-auto p-4`,children:[It&&(0,$.jsx)(Hi,{content:It.content,timestamp:It.timestamp,projectName:F}),(0,$.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2 pt-3 text-sm text-text-secondary`,children:[(0,$.jsx)(R,{className:`size-4 animate-spin`}),(0,$.jsx)(`span`,{children:`Starting conversation...`})]})]}):(0,$.jsx)(Sa,{messages:Me,onExpandCompact:Pe,isCompactExpanded:Fe,messagesLoading:Le,keepStaleWhileLoading:Qt,pendingApproval:Ke,onApprovalResponse:lt,isStreaming:Be,phase:Ve,connectingElapsed:Ge,statusMessage:Ze,compactStatus:Je,promptCache:Ye,projectName:F,onFork:Be?void 0:rn,onEdit:Be?void 0:an,editingMsgId:qt?.ownMsgId,sessionId:c??void 0,providerId:m,onNavigateVersion:ln,versionMap:Re,onSelectSession:nn,onDismissMessage:X,onClearErrors:Ie,bashPartialOutput:yt}),(0,$.jsx)(Ra,{projectName:F,providerId:Ot.providerId,sessionId:c,messages:Y,teamName:Et,teamMembers:Dt}),(0,$.jsx)(Ba,{needsAuth:Xe,projectName:F||void 0},c??`draft`),(0,$.jsxs)(`div`,{className:`border-t border-border bg-panel shrink-0`,children:[(0,$.jsx)(ds,{tabId:t,projectName:F,usageInfo:L,usageLoading:_e,refreshUsage:ye,lastFetchedAt:ve,sessionId:c,providerId:m,pickedAccountLabel:J?.label??(De?Te:null),pickedAccountId:J?.id??(De?we??null:null),onSelectAccount:!a.pending&&!Nt?K:void 0,onSelectSession:nn,historyFilter:i,onBugReport:c?()=>at(I,{sessionId:c,projectName:F}):void 0,isConnected:ht,onReload:()=>{ht||pt(),mt()},teamActivity:gt,teamMessages:_t,onTeamOpen:vt}),(0,$.jsx)(sn,{items:h,filter:x,onSelect:yn,onClose:bn,visible:v,recentNames:ee,projectName:F}),(0,$.jsx)(Fo,{items:En?Dn:te,filter:ie,onSelect:kn,onClose:An,visible:re}),me&&(0,$.jsx)(Fo,{items:me,filter:``,onSelect:Cn,onClose:()=>he(null),visible:!0}),qt&&(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2 px-3 py-1.5 text-xs text-muted-foreground border-t border-border bg-muted/40`,children:[(0,$.jsx)(`span`,{children:`Editing message — your next send replaces it`}),(0,$.jsxs)(`button`,{type:`button`,onClick:on,className:`flex items-center gap-1 rounded px-2 py-1 min-h-[28px] hover:bg-accent hover:text-accent-foreground transition-colors`,title:`Cancel edit (send as a new message instead)`,children:[(0,$.jsx)(_,{className:`h-3.5 w-3.5`}),`Cancel`]})]}),(0,$.jsx)(jo,{draftReady:!xe,configurationPending:a.pending,tabId:t,onSend:pn,disabled:Nt,isStreaming:Be,onCancel:ut,autoFocus:!e?.sessionId||!!kt,initialValue:kt??be?.content,clearSignal:Xt,restore:Vt,projectName:F,onSlashStateChange:vn,onSlashItemsLoaded:_n,slashSelected:C,onFileStateChange:On,onFileItemsLoaded:ne,fileSelected:oe,externalFiles:N,externalPaths:fe,onExternalPathsConsumed:xn,onDisambiguate:Sn,onContentChange:gn,getUserHistory:hn,permissionMode:O,onModeChange:!a?.pending&&!Nt?le:void 0,providerId:a?.providerId??m,sessionId:c??void 0,onProviderChange:!c&&!s&&!a?.pending&&!Nt?H:void 0,model:et,onModelChange:!a?.pending&&!Nt?tt:void 0,effort:nt,onEffortChange:rt,thinking:it,onThinkingChange:ot,promptCache:Ye})]})]})})}export{ys as t};
@@ -1 +0,0 @@
1
- import"./vendor-markdown-QKPNiWEd.js";import"./vendor-ui-P9Ym7hCv.js";import"./icons-CO_II6D-.js";import{t as e}from"./chat-tab-Bbe_77oJ.js";import"./api-client-F5Zi1sR0.js";import"./settings-store-Cyuo8ceh.js";import"./portal-container-context-NFSuymMu.js";import"./panel-store-B6PoCwBA.js";import"./window-store-vo1N70nK.js";import"./project-store-CCimwgGF.js";import"./session-list-sync-triggers-ATvz-1g3.js";import"./tab-store-DCpc0g0Q.js";import"./context-menu-7OX80HDB.js";import"./chat-preparation-cache-BUCR58h4.js";import"./file-store-Cm7-pHux.js";import"./use-is-mobile-BClDZJP5.js";import"./onboarding-quick-orientation-DPHYFMbA.js";import"./button-DeAyLH9U.js";import"./dialog-Bocc0Fgb.js";import"./mobile-bottom-sheet-D4UyOatB.js";import"./use-visual-viewport-BGpcMnIx.js";import"./input-CG8PS8mS.js";import"./ws-auth-Ytui7dXP.js";import"./agent-session-sheet-store-_OeezCXB.js";import"./libesm-5wREk7JN.js";import"./tool-cards-rxLXbBSm.js";import"./use-blob-url-BC69n15x.js";import"./use-websocket-AC7EG1LK.js";import"./api-settings-Cc_CpfmC.js";import"./onboarding-entry-CGFdGLLP.js";import"./send-to-chat-dNqNV7Y4.js";import"./slash-command-picker-CQlIqMW0.js";import"./ai-settings-section-Ck8uN_Bw.js";import"./codex-reset-credit-button-DRhievFQ.js";export{e as ChatTab};
@@ -1 +0,0 @@
1
- import{h as e}from"./src-C7A68uNq.js";function t(e,t){e.accDescr&&t.setAccDescription?.(e.accDescr),e.accTitle&&t.setAccTitle?.(e.accTitle),e.title&&t.setDiagramTitle?.(e.title)}e(t,`populateCommonDb`);export{t};
@@ -1 +0,0 @@
1
- import{h as e,p as t}from"./src-C7A68uNq.js";var n=e((e,n)=>{let r;return n===`sandbox`&&(r=t(`#i`+e)),t(n===`sandbox`?r.nodes()[0].contentDocument.body:`body`).select(`[id="${e}"]`)},`getDiagramElement`);export{n as t};
@@ -1 +0,0 @@
1
- import{a as e,f as t,g as n,h as r,i,m as a,p as o,s,t as c}from"./chunk-XZSTWKYB-BNlQ8dIW.js";var l=class extends c{static{t(this,`GitGraphTokenBuilder`)}constructor(){super([`gitGraph`])}},u={parser:{TokenBuilder:t(()=>new l,`TokenBuilder`),ValueConverter:t(()=>new i,`ValueConverter`)}};function d(t=o){let i=a(n(t),s),c=a(r({shared:i}),e,u);return i.ServiceRegistry.register(c),{shared:i,GitGraph:c}}t(d,`createGitGraphServices`);export{d as n,u as t};