@hienlh/ppm 0.22.10 → 0.22.11

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 (1172) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/assets/skills/ppm/SKILL.md +1 -1
  3. package/assets/skills/ppm/references/cli-reference.md +4 -4
  4. package/assets/skills/ppm/references/http-api.md +1 -1
  5. package/dist/web/assets/{accounts-settings-section-BYz8j7Fq.js → accounts-settings-section-BDXYG6tT.js} +1 -1
  6. package/dist/web/assets/{ai-resource-editor-K7Q5d1jo.js → ai-resource-editor-C3rKcZKN.js} +1 -1
  7. package/dist/web/assets/{ai-settings-section-ChEBg9Be.js → ai-settings-section-ArqD8Nlg.js} +1 -1
  8. package/dist/web/assets/{ai-settings-section-CyWSTidP.js → ai-settings-section-DeWoAdLc.js} +1 -1
  9. package/dist/web/assets/{appearance-settings-section-DH0DxaKv.js → appearance-settings-section-K5o_Di4V.js} +1 -1
  10. package/dist/web/assets/{branch-review-tab-BjPYFJ7n.js → branch-review-tab-BNpYiUhC.js} +1 -1
  11. package/dist/web/assets/{chat-tab-BFrvTu8k.js → chat-tab-CC8KANoK.js} +3 -3
  12. package/dist/web/assets/{code-editor-CTTLNDyE.js → code-editor-Ccf0Egrc.js} +3 -3
  13. package/dist/web/assets/{codex-daily-guard-PsB0g8B0.js → codex-daily-guard-CKk2WFlV.js} +1 -1
  14. package/dist/web/assets/{conflict-editor-BoLsr5fL.js → conflict-editor-BCKbdpXy.js} +1 -1
  15. package/dist/web/assets/{csv-preview-C-7PUd6W.js → csv-preview-I3a2lGUx.js} +1 -1
  16. package/dist/web/assets/{database-viewer-BJgZ-0s2.js → database-viewer-DCuBR-bZ.js} +1 -1
  17. package/dist/web/assets/{diff-viewer-i0_wCJL2.js → diff-viewer-DGaBe_Ln.js} +1 -1
  18. package/dist/web/assets/{editor-language-service-DDhZjZqB.js → editor-language-service-BaocEaLc.js} +1 -1
  19. package/dist/web/assets/{explorer-body-DeIIj3uF.js → explorer-body-2GYIYmUh.js} +1 -1
  20. package/dist/web/assets/{explorer-window-content-D0i22zgM.js → explorer-window-content-CYQSEX-g.js} +1 -1
  21. package/dist/web/assets/{extension-manager-section-D8TSwRG8.js → extension-manager-section-BFAGdy3G.js} +1 -1
  22. package/dist/web/assets/{extension-webview-CfzJpLQR.js → extension-webview-D5TXIBMf.js} +1 -1
  23. package/dist/web/assets/{files-settings-section-Ne10pnQU.js → files-settings-section-BE6o-oHu.js} +1 -1
  24. package/dist/web/assets/{general-settings-section-fbSqpiKY.js → general-settings-section-mQiXM537.js} +1 -1
  25. package/dist/web/assets/{git-log-panel-9mRsulRQ.js → git-log-panel-DqbcM9eC.js} +1 -1
  26. package/dist/web/assets/{glide-data-grid-OhxZFlYg.js → glide-data-grid-BjEF7M5i.js} +1 -1
  27. package/dist/web/assets/{group-chat-tab-4DdMvOkG.js → group-chat-tab-aX2GEnkD.js} +1 -1
  28. package/dist/web/assets/{index-C3v3QRVR.js → index-BoaecXhu.js} +4 -4
  29. package/dist/web/assets/{jira-watcher-section-PYPh3xGU.js → jira-watcher-section-BKn3A8zI.js} +1 -1
  30. package/dist/web/assets/{keybindings-store-DhAtn4Pd.js → keybindings-store-Brz0qepi.js} +1 -1
  31. package/dist/web/assets/{keyboard-shortcuts-section-CM3pNiBR.js → keyboard-shortcuts-section-Ck8KIbJ8.js} +1 -1
  32. package/dist/web/assets/{markdown-renderer-DqNZUt1S.js → markdown-renderer-BGuM2PBI.js} +1 -1
  33. package/dist/web/assets/{markdown-renderer-Df1vynCr.js → markdown-renderer-Ddz8tPbb.js} +1 -1
  34. package/dist/web/assets/{mobile-explorer-sheet-BSuzC_08.js → mobile-explorer-sheet-DpKfB6iF.js} +1 -1
  35. package/dist/web/assets/{notification-store-DbKwLWwl.js → notification-store-ByCdTvCC.js} +1 -1
  36. package/dist/web/assets/{ppmbot-settings-section-CY_yAGFM.js → ppmbot-settings-section-DeTFU1b-.js} +1 -1
  37. package/dist/web/assets/{problems-panel-CJNasbnt.js → problems-panel-Bgkcge5_.js} +1 -1
  38. package/dist/web/assets/{process-table-1CN3rBVp.js → process-table-DH7pnH5I.js} +1 -1
  39. package/dist/web/assets/{proxy-settings-section-CqcvneFB.js → proxy-settings-section-DMGMRHH-.js} +1 -1
  40. package/dist/web/assets/{remote-desktop-clipboard-notice-BysFGa_4.js → remote-desktop-clipboard-notice-Bj5FtU0O.js} +1 -1
  41. package/dist/web/assets/{remote-desktop-mobile-sheet-DLW_0HDz.js → remote-desktop-mobile-sheet-BhwVrKxv.js} +2 -2
  42. package/dist/web/assets/{remote-desktop-mobile-view-Df6SfRtI.js → remote-desktop-mobile-view-B1oAqbjG.js} +1 -1
  43. package/dist/web/assets/{remote-desktop-readiness-gate-LugXhLJ3.js → remote-desktop-readiness-gate-2LE86aTu.js} +1 -1
  44. package/dist/web/assets/{remote-desktop-window-content-k-pIAIDq.js → remote-desktop-window-content-u8HwuzyN.js} +1 -1
  45. package/dist/web/assets/{schedules-settings-section-ByCm7IOg.js → schedules-settings-section-C8XNDdi9.js} +1 -1
  46. package/dist/web/assets/{settings-body-Dwt_rUSa.js → settings-body-DelxmiKf.js} +2 -2
  47. package/dist/web/assets/{settings-tab-Dvj9UfzL.js → settings-tab-Cb_dFdA6.js} +1 -1
  48. package/dist/web/assets/{settings-window-content-Di-eONmj.js → settings-window-content-5EQQfC1t.js} +1 -1
  49. package/dist/web/assets/{sql-query-editor-DgwwJxwJ.js → sql-query-editor-B3wrPR6K.js} +1 -1
  50. package/dist/web/assets/{sqlite-viewer-gxiJZ3kk.js → sqlite-viewer-iQXNp0kH.js} +1 -1
  51. package/dist/web/assets/{system-monitor-body-BJrVntEe.js → system-monitor-body-5grJyA7C.js} +2 -2
  52. package/dist/web/assets/{system-monitor-tab-Uz9A5I07.js → system-monitor-tab-CJr797F8.js} +1 -1
  53. package/dist/web/assets/{system-monitor-window-content-9cKlCVN0.js → system-monitor-window-content-OGAhFXXo.js} +1 -1
  54. package/dist/web/assets/{tab-host-window-content-D3M-lRyv.js → tab-host-window-content-C-eEo8I7.js} +1 -1
  55. package/dist/web/assets/{team-member-sheet-D66xVR6G.js → team-member-sheet-CRvJUtdh.js} +2 -2
  56. package/dist/web/assets/{team-member-window-content-D6SxpWVr.js → team-member-window-content-C97N4RXb.js} +1 -1
  57. package/dist/web/assets/{terminal-tab-DUfOyHxp.js → terminal-tab-eZwpkvEe.js} +1 -1
  58. package/dist/web/assets/{tool-cards-O9N-oJuB.js → tool-cards-Bg4vjDYu.js} +2 -2
  59. package/dist/web/assets/{use-inline-blame-B40AsaN2.js → use-inline-blame-CzR8CnOZ.js} +1 -1
  60. package/dist/web/assets/{use-lsp-B30TcKvt.js → use-lsp-BAoOSc-L.js} +1 -1
  61. package/dist/web/assets/{use-monaco-theme-DGi9_j5M.js → use-monaco-theme-Gd8cpt9n.js} +1 -1
  62. package/dist/web/assets/{use-websocket-DdGdvJc5.js → use-websocket-CDfXkXo3.js} +1 -1
  63. package/dist/web/assets/{video-preview-RS5jKlrC.js → video-preview-BYJ3aVo1.js} +1 -1
  64. package/dist/web/index.html +1 -1
  65. package/dist/web/sw.js +1 -1
  66. package/package.json +1 -1
  67. package/scripts/check-ppm-dir-usage.sh +0 -0
  68. package/scripts/install.sh +0 -0
  69. package/scripts/release.sh +0 -0
  70. package/src/services/edge-forwarder.ts +191 -191
  71. package/src/services/windows-process-tree.ts +351 -351
  72. package/src/web/components/chat/message-input.tsx +4 -2
  73. package/vite.config.ts +6 -0
  74. package/dist/web/assets/abap-DrxZXLHj.js.br +0 -0
  75. package/dist/web/assets/abap-DrxZXLHj.js.gz +0 -0
  76. package/dist/web/assets/accounts-settings-section-BYz8j7Fq.js.br +0 -0
  77. package/dist/web/assets/accounts-settings-section-BYz8j7Fq.js.gz +0 -0
  78. package/dist/web/assets/actionscript-3-DOPR4pRC.js.br +0 -0
  79. package/dist/web/assets/actionscript-3-DOPR4pRC.js.gz +0 -0
  80. package/dist/web/assets/ada-DkqjEnDr.js.br +0 -0
  81. package/dist/web/assets/ada-DkqjEnDr.js.gz +0 -0
  82. package/dist/web/assets/ai-resource-editor-K7Q5d1jo.js.br +0 -0
  83. package/dist/web/assets/ai-resource-editor-K7Q5d1jo.js.gz +0 -0
  84. package/dist/web/assets/ai-settings-section-CyWSTidP.js.br +0 -0
  85. package/dist/web/assets/ai-settings-section-CyWSTidP.js.gz +0 -0
  86. package/dist/web/assets/andromeeda-BSZjevw2.js.br +0 -0
  87. package/dist/web/assets/andromeeda-BSZjevw2.js.gz +0 -0
  88. package/dist/web/assets/angular-html-DnrsWZqK.js.br +0 -0
  89. package/dist/web/assets/angular-html-DnrsWZqK.js.gz +0 -0
  90. package/dist/web/assets/angular-ts-BXEqA9t1.js.br +0 -0
  91. package/dist/web/assets/angular-ts-BXEqA9t1.js.gz +0 -0
  92. package/dist/web/assets/apache-DYwdQ5F_.js.br +0 -0
  93. package/dist/web/assets/apache-DYwdQ5F_.js.gz +0 -0
  94. package/dist/web/assets/apex-Dohu7DfB.js.br +0 -0
  95. package/dist/web/assets/apex-Dohu7DfB.js.gz +0 -0
  96. package/dist/web/assets/api-client-Jn3njtNw.js.br +0 -0
  97. package/dist/web/assets/api-client-Jn3njtNw.js.gz +0 -0
  98. package/dist/web/assets/api-settings-BZFSteM_.js.br +0 -0
  99. package/dist/web/assets/api-settings-BZFSteM_.js.gz +0 -0
  100. package/dist/web/assets/apl-DUQ6Oyth.js.br +0 -0
  101. package/dist/web/assets/apl-DUQ6Oyth.js.gz +0 -0
  102. package/dist/web/assets/appearance-settings-section-DH0DxaKv.js.br +0 -0
  103. package/dist/web/assets/appearance-settings-section-DH0DxaKv.js.gz +0 -0
  104. package/dist/web/assets/applescript-CdfGIVqp.js.br +0 -0
  105. package/dist/web/assets/applescript-CdfGIVqp.js.gz +0 -0
  106. package/dist/web/assets/ara-i3_3TMnI.js.br +0 -0
  107. package/dist/web/assets/ara-i3_3TMnI.js.gz +0 -0
  108. package/dist/web/assets/asciidoc-DJFM-7vl.js.br +0 -0
  109. package/dist/web/assets/asciidoc-DJFM-7vl.js.gz +0 -0
  110. package/dist/web/assets/asm-bMFssizQ.js.br +0 -0
  111. package/dist/web/assets/asm-bMFssizQ.js.gz +0 -0
  112. package/dist/web/assets/astro-CakOjJ6X.js.br +0 -0
  113. package/dist/web/assets/astro-CakOjJ6X.js.gz +0 -0
  114. package/dist/web/assets/audio-preview-CwCDCN-_.js.br +0 -0
  115. package/dist/web/assets/audio-preview-CwCDCN-_.js.gz +0 -0
  116. package/dist/web/assets/aurora-x-CetC7M8b.js.br +0 -0
  117. package/dist/web/assets/aurora-x-CetC7M8b.js.gz +0 -0
  118. package/dist/web/assets/awk-FFWx9ZrE.js.br +0 -0
  119. package/dist/web/assets/awk-FFWx9ZrE.js.gz +0 -0
  120. package/dist/web/assets/ayu-dark-D4ION2wO.js.br +0 -0
  121. package/dist/web/assets/ayu-dark-D4ION2wO.js.gz +0 -0
  122. package/dist/web/assets/ayu-light-BZN99P5A.js.br +0 -0
  123. package/dist/web/assets/ayu-light-BZN99P5A.js.gz +0 -0
  124. package/dist/web/assets/ayu-mirage-B-IpsKiL.js.br +0 -0
  125. package/dist/web/assets/ayu-mirage-B-IpsKiL.js.gz +0 -0
  126. package/dist/web/assets/ballerina-DhyJcKkq.js.br +0 -0
  127. package/dist/web/assets/ballerina-DhyJcKkq.js.gz +0 -0
  128. package/dist/web/assets/bat-GOVQY81F.js.br +0 -0
  129. package/dist/web/assets/bat-GOVQY81F.js.gz +0 -0
  130. package/dist/web/assets/beancount-BO749Rhc.js.br +0 -0
  131. package/dist/web/assets/beancount-BO749Rhc.js.gz +0 -0
  132. package/dist/web/assets/berry-CHYYKXmK.js.br +0 -0
  133. package/dist/web/assets/berry-CHYYKXmK.js.gz +0 -0
  134. package/dist/web/assets/bibtex-BnYiDnxT.js.br +0 -0
  135. package/dist/web/assets/bibtex-BnYiDnxT.js.gz +0 -0
  136. package/dist/web/assets/bicep-kljgR_G3.js.br +0 -0
  137. package/dist/web/assets/bicep-kljgR_G3.js.gz +0 -0
  138. package/dist/web/assets/bird2-DnLtJGhV.js.br +0 -0
  139. package/dist/web/assets/bird2-DnLtJGhV.js.gz +0 -0
  140. package/dist/web/assets/blade-C903KM82.js.br +0 -0
  141. package/dist/web/assets/blade-C903KM82.js.gz +0 -0
  142. package/dist/web/assets/branch-review-tab-BjPYFJ7n.js.br +0 -0
  143. package/dist/web/assets/branch-review-tab-BjPYFJ7n.js.gz +0 -0
  144. package/dist/web/assets/bsl-slfcE_kB.js.br +0 -0
  145. package/dist/web/assets/bsl-slfcE_kB.js.gz +0 -0
  146. package/dist/web/assets/button-B9CTrsEf.js.br +0 -0
  147. package/dist/web/assets/button-B9CTrsEf.js.gz +0 -0
  148. package/dist/web/assets/c-BWO-aeyf.js.br +0 -0
  149. package/dist/web/assets/c-BWO-aeyf.js.gz +0 -0
  150. package/dist/web/assets/c3-fc_jio6D.js.br +0 -0
  151. package/dist/web/assets/c3-fc_jio6D.js.gz +0 -0
  152. package/dist/web/assets/cadence-DopRCrdB.js.br +0 -0
  153. package/dist/web/assets/cadence-DopRCrdB.js.gz +0 -0
  154. package/dist/web/assets/cairo-DRwEaH6w.js.br +0 -0
  155. package/dist/web/assets/cairo-DRwEaH6w.js.gz +0 -0
  156. package/dist/web/assets/can-open-in-ppm-CUW3vVJg.js.br +0 -0
  157. package/dist/web/assets/can-open-in-ppm-CUW3vVJg.js.gz +0 -0
  158. package/dist/web/assets/catppuccin-frappe-DL6iCUa8.js.br +0 -0
  159. package/dist/web/assets/catppuccin-frappe-DL6iCUa8.js.gz +0 -0
  160. package/dist/web/assets/catppuccin-latte-DNF7n3uY.js.br +0 -0
  161. package/dist/web/assets/catppuccin-latte-DNF7n3uY.js.gz +0 -0
  162. package/dist/web/assets/catppuccin-macchiato-ByMic_k0.js.br +0 -0
  163. package/dist/web/assets/catppuccin-macchiato-ByMic_k0.js.gz +0 -0
  164. package/dist/web/assets/catppuccin-mocha-DcrJtZtv.js.br +0 -0
  165. package/dist/web/assets/catppuccin-mocha-DcrJtZtv.js.gz +0 -0
  166. package/dist/web/assets/chat-tab-BFrvTu8k.js.br +0 -0
  167. package/dist/web/assets/chat-tab-BFrvTu8k.js.gz +0 -0
  168. package/dist/web/assets/clarity-0cRLlvQe.js.br +0 -0
  169. package/dist/web/assets/clarity-0cRLlvQe.js.gz +0 -0
  170. package/dist/web/assets/clojure-DPqZAcpI.js.br +0 -0
  171. package/dist/web/assets/clojure-DPqZAcpI.js.gz +0 -0
  172. package/dist/web/assets/cmake-Bx26bw5u.js.br +0 -0
  173. package/dist/web/assets/cmake-Bx26bw5u.js.gz +0 -0
  174. package/dist/web/assets/cobol--n4m6b70.js.br +0 -0
  175. package/dist/web/assets/cobol--n4m6b70.js.gz +0 -0
  176. package/dist/web/assets/code-editor-CTTLNDyE.js.br +0 -0
  177. package/dist/web/assets/code-editor-CTTLNDyE.js.gz +0 -0
  178. package/dist/web/assets/codeql-TRoWjo5g.js.br +0 -0
  179. package/dist/web/assets/codeql-TRoWjo5g.js.gz +0 -0
  180. package/dist/web/assets/codex-daily-guard-PsB0g8B0.js.br +0 -0
  181. package/dist/web/assets/codex-daily-guard-PsB0g8B0.js.gz +0 -0
  182. package/dist/web/assets/coffee-CjyFmw8_.js.br +0 -0
  183. package/dist/web/assets/coffee-CjyFmw8_.js.gz +0 -0
  184. package/dist/web/assets/common-lisp-Ctohamsb.js.br +0 -0
  185. package/dist/web/assets/common-lisp-Ctohamsb.js.gz +0 -0
  186. package/dist/web/assets/conflict-editor-BoLsr5fL.js.br +0 -0
  187. package/dist/web/assets/conflict-editor-BoLsr5fL.js.gz +0 -0
  188. package/dist/web/assets/context-menu-C6pIsf83.js.br +0 -0
  189. package/dist/web/assets/context-menu-C6pIsf83.js.gz +0 -0
  190. package/dist/web/assets/coq-BO6TJSED.js.br +0 -0
  191. package/dist/web/assets/coq-BO6TJSED.js.gz +0 -0
  192. package/dist/web/assets/cpp-D18jdQPZ.js.br +0 -0
  193. package/dist/web/assets/cpp-D18jdQPZ.js.gz +0 -0
  194. package/dist/web/assets/createLucideIcon-DoiEKeJ_.js.br +0 -0
  195. package/dist/web/assets/createLucideIcon-DoiEKeJ_.js.gz +0 -0
  196. package/dist/web/assets/crystal-CySzfH-7.js.br +0 -0
  197. package/dist/web/assets/crystal-CySzfH-7.js.gz +0 -0
  198. package/dist/web/assets/csharp-DSy4nlrl.js.br +0 -0
  199. package/dist/web/assets/csharp-DSy4nlrl.js.gz +0 -0
  200. package/dist/web/assets/css-Ca_hTmU6.js.br +0 -0
  201. package/dist/web/assets/css-Ca_hTmU6.js.gz +0 -0
  202. package/dist/web/assets/csv-DND7YJXD.js.br +0 -0
  203. package/dist/web/assets/csv-DND7YJXD.js.gz +0 -0
  204. package/dist/web/assets/csv-parser-DZ_75eCb.js.br +0 -0
  205. package/dist/web/assets/csv-parser-DZ_75eCb.js.gz +0 -0
  206. package/dist/web/assets/csv-preview-C-7PUd6W.js.br +0 -0
  207. package/dist/web/assets/csv-preview-C-7PUd6W.js.gz +0 -0
  208. package/dist/web/assets/cue-BUnWK221.js.br +0 -0
  209. package/dist/web/assets/cue-BUnWK221.js.gz +0 -0
  210. package/dist/web/assets/cypher-CInm9Etl.js.br +0 -0
  211. package/dist/web/assets/cypher-CInm9Etl.js.gz +0 -0
  212. package/dist/web/assets/d-BbsB8r6R.js.br +0 -0
  213. package/dist/web/assets/d-BbsB8r6R.js.gz +0 -0
  214. package/dist/web/assets/dark-plus-DkzIiuQX.js.br +0 -0
  215. package/dist/web/assets/dark-plus-DkzIiuQX.js.gz +0 -0
  216. package/dist/web/assets/dart-BG2nw7Se.js.br +0 -0
  217. package/dist/web/assets/dart-BG2nw7Se.js.gz +0 -0
  218. package/dist/web/assets/data-grid-overlay-editor-BD9eJweQ.js.br +0 -0
  219. package/dist/web/assets/data-grid-overlay-editor-BD9eJweQ.js.gz +0 -0
  220. package/dist/web/assets/data-grid-types-C6UX8kgh.js.br +0 -0
  221. package/dist/web/assets/data-grid-types-C6UX8kgh.js.gz +0 -0
  222. package/dist/web/assets/database-viewer-BJgZ-0s2.js.br +0 -0
  223. package/dist/web/assets/database-viewer-BJgZ-0s2.js.gz +0 -0
  224. package/dist/web/assets/dax-j4h6VhlV.js.br +0 -0
  225. package/dist/web/assets/dax-j4h6VhlV.js.gz +0 -0
  226. package/dist/web/assets/desktop-Dg34JDlS.js.br +0 -0
  227. package/dist/web/assets/desktop-Dg34JDlS.js.gz +0 -0
  228. package/dist/web/assets/dialog-B84_DJQ8.js.br +0 -0
  229. package/dist/web/assets/dialog-B84_DJQ8.js.gz +0 -0
  230. package/dist/web/assets/diff-CRrKo-mH.js.br +0 -0
  231. package/dist/web/assets/diff-CRrKo-mH.js.gz +0 -0
  232. package/dist/web/assets/diff-viewer-i0_wCJL2.js.br +0 -0
  233. package/dist/web/assets/diff-viewer-i0_wCJL2.js.gz +0 -0
  234. package/dist/web/assets/dist-BD2gbdy0.js.br +0 -0
  235. package/dist/web/assets/dist-BD2gbdy0.js.gz +0 -0
  236. package/dist/web/assets/dist-D39GQICe.js.br +0 -0
  237. package/dist/web/assets/dist-D39GQICe.js.gz +0 -0
  238. package/dist/web/assets/docker-DAtcxZjt.js.br +0 -0
  239. package/dist/web/assets/docker-DAtcxZjt.js.gz +0 -0
  240. package/dist/web/assets/docx-preview-CeH6p2Oi.js.br +0 -0
  241. package/dist/web/assets/docx-preview-CeH6p2Oi.js.gz +0 -0
  242. package/dist/web/assets/dotenv-DNUcgQCn.js.br +0 -0
  243. package/dist/web/assets/dotenv-DNUcgQCn.js.gz +0 -0
  244. package/dist/web/assets/dracula-bhhaShNC.js.br +0 -0
  245. package/dist/web/assets/dracula-bhhaShNC.js.gz +0 -0
  246. package/dist/web/assets/dracula-soft-CeHAoi-D.js.br +0 -0
  247. package/dist/web/assets/dracula-soft-CeHAoi-D.js.gz +0 -0
  248. package/dist/web/assets/dream-maker-BMH1JI2G.js.br +0 -0
  249. package/dist/web/assets/dream-maker-BMH1JI2G.js.gz +0 -0
  250. package/dist/web/assets/edge-B6b5FHmU.js.br +0 -0
  251. package/dist/web/assets/edge-B6b5FHmU.js.gz +0 -0
  252. package/dist/web/assets/edit-diff-preview-BG5DsLJG.js.br +0 -0
  253. package/dist/web/assets/edit-diff-preview-BG5DsLJG.js.gz +0 -0
  254. package/dist/web/assets/editor-language-service-DDhZjZqB.js.br +0 -0
  255. package/dist/web/assets/editor-language-service-DDhZjZqB.js.gz +0 -0
  256. package/dist/web/assets/elixir-Dpo1rvn2.js.br +0 -0
  257. package/dist/web/assets/elixir-Dpo1rvn2.js.gz +0 -0
  258. package/dist/web/assets/elm-D9CNOsWT.js.br +0 -0
  259. package/dist/web/assets/elm-D9CNOsWT.js.gz +0 -0
  260. package/dist/web/assets/emacs-lisp-BaAYIdWN.js.br +0 -0
  261. package/dist/web/assets/emacs-lisp-BaAYIdWN.js.gz +0 -0
  262. package/dist/web/assets/erb-sY7Yee1W.js.br +0 -0
  263. package/dist/web/assets/erb-sY7Yee1W.js.gz +0 -0
  264. package/dist/web/assets/erlang-CfyrBxyF.js.br +0 -0
  265. package/dist/web/assets/erlang-CfyrBxyF.js.gz +0 -0
  266. package/dist/web/assets/esm-5AhGJcV8.js.br +0 -0
  267. package/dist/web/assets/esm-5AhGJcV8.js.gz +0 -0
  268. package/dist/web/assets/everforest-dark-Cs91gPa_.js.br +0 -0
  269. package/dist/web/assets/everforest-dark-Cs91gPa_.js.gz +0 -0
  270. package/dist/web/assets/everforest-light-lTkE6qWA.js.br +0 -0
  271. package/dist/web/assets/everforest-light-lTkE6qWA.js.gz +0 -0
  272. package/dist/web/assets/explorer-body-DeIIj3uF.js.br +0 -0
  273. package/dist/web/assets/explorer-body-DeIIj3uF.js.gz +0 -0
  274. package/dist/web/assets/explorer-window-content-D0i22zgM.js.br +0 -0
  275. package/dist/web/assets/explorer-window-content-D0i22zgM.js.gz +0 -0
  276. package/dist/web/assets/extension-manager-section-D8TSwRG8.js.br +0 -0
  277. package/dist/web/assets/extension-manager-section-D8TSwRG8.js.gz +0 -0
  278. package/dist/web/assets/extension-webview-CfzJpLQR.js.br +0 -0
  279. package/dist/web/assets/extension-webview-CfzJpLQR.js.gz +0 -0
  280. package/dist/web/assets/fennel-CmhYEhcM.js.br +0 -0
  281. package/dist/web/assets/fennel-CmhYEhcM.js.gz +0 -0
  282. package/dist/web/assets/file-icons-wS-OmEVu.js.br +0 -0
  283. package/dist/web/assets/file-icons-wS-OmEVu.js.gz +0 -0
  284. package/dist/web/assets/file-icons.generated-BtBErEwb.css.br +0 -0
  285. package/dist/web/assets/file-icons.generated-BtBErEwb.css.gz +0 -0
  286. package/dist/web/assets/file-store-Ds3qJ4hC.js.br +0 -0
  287. package/dist/web/assets/file-store-Ds3qJ4hC.js.gz +0 -0
  288. package/dist/web/assets/files-settings-section-Ne10pnQU.js.br +0 -0
  289. package/dist/web/assets/files-settings-section-Ne10pnQU.js.gz +0 -0
  290. package/dist/web/assets/fish-p1jauFum.js.br +0 -0
  291. package/dist/web/assets/fish-p1jauFum.js.gz +0 -0
  292. package/dist/web/assets/fluent-BsH-lUh2.js.br +0 -0
  293. package/dist/web/assets/fluent-BsH-lUh2.js.gz +0 -0
  294. package/dist/web/assets/format-file-meta-eKLstbCL.js.br +0 -0
  295. package/dist/web/assets/format-file-meta-eKLstbCL.js.gz +0 -0
  296. package/dist/web/assets/fortran-fixed-form-N67gM_wp.js.br +0 -0
  297. package/dist/web/assets/fortran-fixed-form-N67gM_wp.js.gz +0 -0
  298. package/dist/web/assets/fortran-free-form-CB6SdVKB.js.br +0 -0
  299. package/dist/web/assets/fortran-free-form-CB6SdVKB.js.gz +0 -0
  300. package/dist/web/assets/fs-api-orca76dV.js.br +0 -0
  301. package/dist/web/assets/fs-api-orca76dV.js.gz +0 -0
  302. package/dist/web/assets/fsharp-Dq0K01wX.js.br +0 -0
  303. package/dist/web/assets/fsharp-Dq0K01wX.js.gz +0 -0
  304. package/dist/web/assets/gdresource-DkFbszqY.js.br +0 -0
  305. package/dist/web/assets/gdresource-DkFbszqY.js.gz +0 -0
  306. package/dist/web/assets/gdscript--YoKuvEA.js.br +0 -0
  307. package/dist/web/assets/gdscript--YoKuvEA.js.gz +0 -0
  308. package/dist/web/assets/gdshader-BRtMwf5z.js.br +0 -0
  309. package/dist/web/assets/gdshader-BRtMwf5z.js.gz +0 -0
  310. package/dist/web/assets/general-settings-section-fbSqpiKY.js.br +0 -0
  311. package/dist/web/assets/general-settings-section-fbSqpiKY.js.gz +0 -0
  312. package/dist/web/assets/genie-wrzVG2Z8.js.br +0 -0
  313. package/dist/web/assets/genie-wrzVG2Z8.js.gz +0 -0
  314. package/dist/web/assets/gherkin-HnpURN27.js.br +0 -0
  315. package/dist/web/assets/gherkin-HnpURN27.js.gz +0 -0
  316. package/dist/web/assets/git-commit-Ddt_nerD.js.br +0 -2
  317. package/dist/web/assets/git-commit-Ddt_nerD.js.gz +0 -0
  318. package/dist/web/assets/git-log-panel-9mRsulRQ.js.br +0 -0
  319. package/dist/web/assets/git-log-panel-9mRsulRQ.js.gz +0 -0
  320. package/dist/web/assets/git-repo-store-BCEPfUGT.js.br +0 -0
  321. package/dist/web/assets/git-repo-store-BCEPfUGT.js.gz +0 -0
  322. package/dist/web/assets/github-dark-XlZ3pGhn.js.br +0 -0
  323. package/dist/web/assets/github-dark-XlZ3pGhn.js.gz +0 -0
  324. package/dist/web/assets/github-dark-default-D_R0hfJe.js.br +0 -0
  325. package/dist/web/assets/github-dark-default-D_R0hfJe.js.gz +0 -0
  326. package/dist/web/assets/github-dark-dimmed-BHQgHLnK.js.br +0 -0
  327. package/dist/web/assets/github-dark-dimmed-BHQgHLnK.js.gz +0 -0
  328. package/dist/web/assets/github-dark-high-contrast-Pbl4mEFe.js.br +0 -0
  329. package/dist/web/assets/github-dark-high-contrast-Pbl4mEFe.js.gz +0 -0
  330. package/dist/web/assets/github-light-0P0VANJn.js.br +0 -0
  331. package/dist/web/assets/github-light-0P0VANJn.js.gz +0 -0
  332. package/dist/web/assets/github-light-default-DTfsnyDq.js.br +0 -0
  333. package/dist/web/assets/github-light-default-DTfsnyDq.js.gz +0 -0
  334. package/dist/web/assets/github-light-high-contrast-DKITR-5Y.js.br +0 -0
  335. package/dist/web/assets/github-light-high-contrast-DKITR-5Y.js.gz +0 -0
  336. package/dist/web/assets/gleam-refSZtkM.js.br +0 -0
  337. package/dist/web/assets/gleam-refSZtkM.js.gz +0 -0
  338. package/dist/web/assets/glide-data-grid-OhxZFlYg.js.br +0 -0
  339. package/dist/web/assets/glide-data-grid-OhxZFlYg.js.gz +0 -0
  340. package/dist/web/assets/glide-data-grid-nthEL3fk.css.br +0 -0
  341. package/dist/web/assets/glide-data-grid-nthEL3fk.css.gz +0 -0
  342. package/dist/web/assets/glimmer-js-51jbYnyY.js.br +0 -0
  343. package/dist/web/assets/glimmer-js-51jbYnyY.js.gz +0 -0
  344. package/dist/web/assets/glimmer-ts-C5L1J32J.js.br +0 -0
  345. package/dist/web/assets/glimmer-ts-C5L1J32J.js.gz +0 -0
  346. package/dist/web/assets/glsl-BcsfmwJZ.js.br +0 -0
  347. package/dist/web/assets/glsl-BcsfmwJZ.js.gz +0 -0
  348. package/dist/web/assets/gn-BZ9cGckR.js.br +0 -0
  349. package/dist/web/assets/gn-BZ9cGckR.js.gz +0 -0
  350. package/dist/web/assets/gnuplot-CMHqDcTW.js.br +0 -0
  351. package/dist/web/assets/gnuplot-CMHqDcTW.js.gz +0 -0
  352. package/dist/web/assets/go-bFdCrzvY.js.br +0 -0
  353. package/dist/web/assets/go-bFdCrzvY.js.gz +0 -0
  354. package/dist/web/assets/graphql-dv4wuJsK.js.br +0 -0
  355. package/dist/web/assets/graphql-dv4wuJsK.js.gz +0 -0
  356. package/dist/web/assets/groovy-Dvz5tluQ.js.br +0 -0
  357. package/dist/web/assets/groovy-Dvz5tluQ.js.gz +0 -0
  358. package/dist/web/assets/group-chat-tab-4DdMvOkG.js.br +0 -0
  359. package/dist/web/assets/group-chat-tab-4DdMvOkG.js.gz +0 -0
  360. package/dist/web/assets/gruvbox-dark-hard-D0Z-pclr.js.br +0 -0
  361. package/dist/web/assets/gruvbox-dark-hard-D0Z-pclr.js.gz +0 -0
  362. package/dist/web/assets/gruvbox-dark-medium-BG6oIRQR.js.br +0 -0
  363. package/dist/web/assets/gruvbox-dark-medium-BG6oIRQR.js.gz +0 -0
  364. package/dist/web/assets/gruvbox-dark-soft-ILJ-3tU6.js.br +0 -0
  365. package/dist/web/assets/gruvbox-dark-soft-ILJ-3tU6.js.gz +0 -0
  366. package/dist/web/assets/gruvbox-light-hard-Bl95khkz.js.br +0 -0
  367. package/dist/web/assets/gruvbox-light-hard-Bl95khkz.js.gz +0 -0
  368. package/dist/web/assets/gruvbox-light-medium-CdislFOh.js.br +0 -0
  369. package/dist/web/assets/gruvbox-light-medium-CdislFOh.js.gz +0 -0
  370. package/dist/web/assets/gruvbox-light-soft-CTcEyxlX.js.br +0 -0
  371. package/dist/web/assets/gruvbox-light-soft-CTcEyxlX.js.gz +0 -0
  372. package/dist/web/assets/hack-DLE5d3bx.js.br +0 -0
  373. package/dist/web/assets/hack-DLE5d3bx.js.gz +0 -0
  374. package/dist/web/assets/haml-CoKfcM3E.js.br +0 -0
  375. package/dist/web/assets/haml-CoKfcM3E.js.gz +0 -0
  376. package/dist/web/assets/handlebars-Bn0jy8pD.js.br +0 -0
  377. package/dist/web/assets/handlebars-Bn0jy8pD.js.gz +0 -0
  378. package/dist/web/assets/haskell-D9jfkQuH.js.br +0 -0
  379. package/dist/web/assets/haskell-D9jfkQuH.js.gz +0 -0
  380. package/dist/web/assets/haxe-Ckfl4osD.js.br +0 -0
  381. package/dist/web/assets/haxe-Ckfl4osD.js.gz +0 -0
  382. package/dist/web/assets/hcl-t03N4k5N.js.br +0 -0
  383. package/dist/web/assets/hcl-t03N4k5N.js.gz +0 -0
  384. package/dist/web/assets/hjson-B_TIVRki.js.br +0 -0
  385. package/dist/web/assets/hjson-B_TIVRki.js.gz +0 -0
  386. package/dist/web/assets/hlsl-BBCTeANz.js.br +0 -0
  387. package/dist/web/assets/hlsl-BBCTeANz.js.gz +0 -0
  388. package/dist/web/assets/horizon-CRY-xdGU.js.br +0 -0
  389. package/dist/web/assets/horizon-CRY-xdGU.js.gz +0 -0
  390. package/dist/web/assets/horizon-bright-BpUM2C5u.js.br +0 -0
  391. package/dist/web/assets/horizon-bright-BpUM2C5u.js.gz +0 -0
  392. package/dist/web/assets/houston-RVyAGlyS.js.br +0 -0
  393. package/dist/web/assets/houston-RVyAGlyS.js.gz +0 -0
  394. package/dist/web/assets/html-DXzY5Cew.js.br +0 -0
  395. package/dist/web/assets/html-DXzY5Cew.js.gz +0 -0
  396. package/dist/web/assets/http-DepeIWQ1.js.br +0 -0
  397. package/dist/web/assets/http-DepeIWQ1.js.gz +0 -0
  398. package/dist/web/assets/hurl-CfsP4sCj.js.br +0 -0
  399. package/dist/web/assets/hurl-CfsP4sCj.js.gz +0 -0
  400. package/dist/web/assets/hxml-IfVkY3HL.js.br +0 -0
  401. package/dist/web/assets/hxml-IfVkY3HL.js.gz +0 -0
  402. package/dist/web/assets/hy-BHFJHuHd.js.br +0 -0
  403. package/dist/web/assets/hy-BHFJHuHd.js.gz +0 -0
  404. package/dist/web/assets/icons-DQjqk0lJ.js.br +0 -0
  405. package/dist/web/assets/icons-DQjqk0lJ.js.gz +0 -0
  406. package/dist/web/assets/imba-DyG0_0MS.js.br +0 -0
  407. package/dist/web/assets/imba-DyG0_0MS.js.gz +0 -0
  408. package/dist/web/assets/index-C3v3QRVR.js.br +0 -0
  409. package/dist/web/assets/index-C3v3QRVR.js.gz +0 -0
  410. package/dist/web/assets/index-aXJy_SvC.css.br +0 -0
  411. package/dist/web/assets/index-aXJy_SvC.css.gz +0 -0
  412. package/dist/web/assets/ini-CsCTH-_o.js.br +0 -5
  413. package/dist/web/assets/ini-CsCTH-_o.js.gz +0 -0
  414. package/dist/web/assets/java-JWdrzVo8.js.br +0 -0
  415. package/dist/web/assets/java-JWdrzVo8.js.gz +0 -0
  416. package/dist/web/assets/javascript-5aQKJRxB.js.br +0 -0
  417. package/dist/web/assets/javascript-5aQKJRxB.js.gz +0 -0
  418. package/dist/web/assets/jinja-DcCmNDQ8.js.br +0 -0
  419. package/dist/web/assets/jinja-DcCmNDQ8.js.gz +0 -0
  420. package/dist/web/assets/jira-watcher-section-PYPh3xGU.js.br +0 -0
  421. package/dist/web/assets/jira-watcher-section-PYPh3xGU.js.gz +0 -0
  422. package/dist/web/assets/jison-Bt-5cKVZ.js.br +0 -0
  423. package/dist/web/assets/jison-Bt-5cKVZ.js.gz +0 -0
  424. package/dist/web/assets/json-BOq7QblK.js.br +0 -0
  425. package/dist/web/assets/json-BOq7QblK.js.gz +0 -0
  426. package/dist/web/assets/json5-g3g-IFTV.js.br +0 -0
  427. package/dist/web/assets/json5-g3g-IFTV.js.gz +0 -0
  428. package/dist/web/assets/jsonc-DQHBJwib.js.br +0 -0
  429. package/dist/web/assets/jsonc-DQHBJwib.js.gz +0 -0
  430. package/dist/web/assets/jsonl-zFLDm4eB.js.br +0 -0
  431. package/dist/web/assets/jsonl-zFLDm4eB.js.gz +0 -0
  432. package/dist/web/assets/jsonnet-DgNm2IGn.js.br +0 -0
  433. package/dist/web/assets/jsonnet-DgNm2IGn.js.gz +0 -0
  434. package/dist/web/assets/jssm-BErkU0In.js.br +0 -0
  435. package/dist/web/assets/jssm-BErkU0In.js.gz +0 -0
  436. package/dist/web/assets/jsx-BSLWViGE.js.br +0 -0
  437. package/dist/web/assets/jsx-BSLWViGE.js.gz +0 -0
  438. package/dist/web/assets/julia-DewYVRtE.js.br +0 -0
  439. package/dist/web/assets/julia-DewYVRtE.js.gz +0 -0
  440. package/dist/web/assets/just-CLT_ggBy.js.br +0 -0
  441. package/dist/web/assets/just-CLT_ggBy.js.gz +0 -0
  442. package/dist/web/assets/kanagawa-dragon-Dgymfjca.js.br +0 -0
  443. package/dist/web/assets/kanagawa-dragon-Dgymfjca.js.gz +0 -0
  444. package/dist/web/assets/kanagawa-lotus-CWZEYd27.js.br +0 -0
  445. package/dist/web/assets/kanagawa-lotus-CWZEYd27.js.gz +0 -0
  446. package/dist/web/assets/kanagawa-wave-CQg17ecf.js.br +0 -0
  447. package/dist/web/assets/kanagawa-wave-CQg17ecf.js.gz +0 -0
  448. package/dist/web/assets/kdl-DY4GHmJC.js.br +0 -0
  449. package/dist/web/assets/kdl-DY4GHmJC.js.gz +0 -0
  450. package/dist/web/assets/keyboard-shortcuts-section-CM3pNiBR.js.br +0 -0
  451. package/dist/web/assets/keyboard-shortcuts-section-CM3pNiBR.js.gz +0 -0
  452. package/dist/web/assets/kotlin-DeGTz7bl.js.br +0 -0
  453. package/dist/web/assets/kotlin-DeGTz7bl.js.gz +0 -0
  454. package/dist/web/assets/kusto-BN-OqpQj.js.br +0 -0
  455. package/dist/web/assets/kusto-BN-OqpQj.js.gz +0 -0
  456. package/dist/web/assets/laserwave-bAqiAiOp.js.br +0 -0
  457. package/dist/web/assets/laserwave-bAqiAiOp.js.gz +0 -0
  458. package/dist/web/assets/latex-DXmcayW1.js.br +0 -0
  459. package/dist/web/assets/latex-DXmcayW1.js.gz +0 -0
  460. package/dist/web/assets/lean-CAypLWCf.js.br +0 -0
  461. package/dist/web/assets/lean-CAypLWCf.js.gz +0 -0
  462. package/dist/web/assets/less-ikHAUlPb.js.br +0 -0
  463. package/dist/web/assets/less-ikHAUlPb.js.gz +0 -0
  464. package/dist/web/assets/lib-BWyA9SvU.js.br +0 -0
  465. package/dist/web/assets/lib-BWyA9SvU.js.gz +0 -0
  466. package/dist/web/assets/libesm-cUHvIIuW.js.br +0 -0
  467. package/dist/web/assets/libesm-cUHvIIuW.js.gz +0 -0
  468. package/dist/web/assets/light-plus-BamuTcT9.js.br +0 -0
  469. package/dist/web/assets/light-plus-BamuTcT9.js.gz +0 -0
  470. package/dist/web/assets/liquid-BVcHf0IA.js.br +0 -0
  471. package/dist/web/assets/liquid-BVcHf0IA.js.gz +0 -0
  472. package/dist/web/assets/llvm-CddObVkW.js.br +0 -0
  473. package/dist/web/assets/llvm-CddObVkW.js.gz +0 -0
  474. package/dist/web/assets/log-CWbfGTTc.js.br +0 -0
  475. package/dist/web/assets/log-CWbfGTTc.js.gz +0 -0
  476. package/dist/web/assets/logo-AHyhxX3Z.js.br +0 -0
  477. package/dist/web/assets/logo-AHyhxX3Z.js.gz +0 -0
  478. package/dist/web/assets/lua-BYupsB1B.js.br +0 -0
  479. package/dist/web/assets/lua-BYupsB1B.js.gz +0 -0
  480. package/dist/web/assets/luau-y7she9L3.js.br +0 -0
  481. package/dist/web/assets/luau-y7she9L3.js.gz +0 -0
  482. package/dist/web/assets/make-DP3sQaP3.js.br +0 -0
  483. package/dist/web/assets/make-DP3sQaP3.js.gz +0 -0
  484. package/dist/web/assets/markdown-9Nuxib8a.js.br +0 -0
  485. package/dist/web/assets/markdown-9Nuxib8a.js.gz +0 -0
  486. package/dist/web/assets/markdown-renderer-DqNZUt1S.js.br +0 -0
  487. package/dist/web/assets/markdown-renderer-DqNZUt1S.js.gz +0 -0
  488. package/dist/web/assets/marko-CsD0R5tv.js.br +0 -0
  489. package/dist/web/assets/marko-CsD0R5tv.js.gz +0 -0
  490. package/dist/web/assets/material-theme-DDpm-uS7.js.br +0 -0
  491. package/dist/web/assets/material-theme-DDpm-uS7.js.gz +0 -0
  492. package/dist/web/assets/material-theme-darker-CHk91wbm.js.br +0 -0
  493. package/dist/web/assets/material-theme-darker-CHk91wbm.js.gz +0 -0
  494. package/dist/web/assets/material-theme-lighter-LkmOI8KM.js.br +0 -0
  495. package/dist/web/assets/material-theme-lighter-LkmOI8KM.js.gz +0 -0
  496. package/dist/web/assets/material-theme-ocean-PpkUhB4-.js.br +0 -0
  497. package/dist/web/assets/material-theme-ocean-PpkUhB4-.js.gz +0 -0
  498. package/dist/web/assets/material-theme-palenight-DZAigXgW.js.br +0 -0
  499. package/dist/web/assets/material-theme-palenight-DZAigXgW.js.gz +0 -0
  500. package/dist/web/assets/matlab-CexKVVPc.js.br +0 -0
  501. package/dist/web/assets/matlab-CexKVVPc.js.gz +0 -0
  502. package/dist/web/assets/mdc-DP2tC4Kc.js.br +0 -0
  503. package/dist/web/assets/mdc-DP2tC4Kc.js.gz +0 -0
  504. package/dist/web/assets/mdx-BrcepHfI.js.br +0 -0
  505. package/dist/web/assets/mdx-BrcepHfI.js.gz +0 -0
  506. package/dist/web/assets/mermaid-CNFhZZaG.js.br +0 -0
  507. package/dist/web/assets/mermaid-CNFhZZaG.js.gz +0 -0
  508. package/dist/web/assets/min-dark-hd3nbDV4.js.br +0 -0
  509. package/dist/web/assets/min-dark-hd3nbDV4.js.gz +0 -0
  510. package/dist/web/assets/min-light-AqA5jmks.js.br +0 -0
  511. package/dist/web/assets/min-light-AqA5jmks.js.gz +0 -0
  512. package/dist/web/assets/mipsasm-B3x4L8Zk.js.br +0 -0
  513. package/dist/web/assets/mipsasm-B3x4L8Zk.js.gz +0 -0
  514. package/dist/web/assets/mobile-bottom-sheet-C3TniEP-.js.br +0 -0
  515. package/dist/web/assets/mobile-bottom-sheet-C3TniEP-.js.gz +0 -0
  516. package/dist/web/assets/mobile-explorer-sheet-BSuzC_08.js.br +0 -0
  517. package/dist/web/assets/mobile-explorer-sheet-BSuzC_08.js.gz +0 -0
  518. package/dist/web/assets/mojo-CvfXy3YL.js.br +0 -0
  519. package/dist/web/assets/mojo-CvfXy3YL.js.gz +0 -0
  520. package/dist/web/assets/monaco/vs/_commonjsHelpers-CT9FvmAN.js +0 -1
  521. package/dist/web/assets/monaco/vs/abap-D-t0cyap.js +0 -1
  522. package/dist/web/assets/monaco/vs/abap-D-t0cyap.js.br +0 -0
  523. package/dist/web/assets/monaco/vs/abap-D-t0cyap.js.gz +0 -0
  524. package/dist/web/assets/monaco/vs/apex-CcIm7xu6.js +0 -1
  525. package/dist/web/assets/monaco/vs/apex-CcIm7xu6.js.br +0 -0
  526. package/dist/web/assets/monaco/vs/apex-CcIm7xu6.js.gz +0 -0
  527. package/dist/web/assets/monaco/vs/assets/css.worker-HnVq6Ewq.js +0 -93
  528. package/dist/web/assets/monaco/vs/assets/css.worker-HnVq6Ewq.js.br +0 -0
  529. package/dist/web/assets/monaco/vs/assets/css.worker-HnVq6Ewq.js.gz +0 -0
  530. package/dist/web/assets/monaco/vs/assets/editor.worker-Be8ye1pW.js +0 -26
  531. package/dist/web/assets/monaco/vs/assets/editor.worker-Be8ye1pW.js.br +0 -0
  532. package/dist/web/assets/monaco/vs/assets/editor.worker-Be8ye1pW.js.gz +0 -0
  533. package/dist/web/assets/monaco/vs/assets/html.worker-B51mlPHg.js +0 -470
  534. package/dist/web/assets/monaco/vs/assets/html.worker-B51mlPHg.js.br +0 -0
  535. package/dist/web/assets/monaco/vs/assets/html.worker-B51mlPHg.js.gz +0 -0
  536. package/dist/web/assets/monaco/vs/assets/json.worker-DKiEKt88.js +0 -58
  537. package/dist/web/assets/monaco/vs/assets/json.worker-DKiEKt88.js.br +0 -0
  538. package/dist/web/assets/monaco/vs/assets/json.worker-DKiEKt88.js.gz +0 -0
  539. package/dist/web/assets/monaco/vs/assets/ts.worker-CMbG-7ft.js +0 -67731
  540. package/dist/web/assets/monaco/vs/assets/ts.worker-CMbG-7ft.js.br +0 -0
  541. package/dist/web/assets/monaco/vs/assets/ts.worker-CMbG-7ft.js.gz +0 -0
  542. package/dist/web/assets/monaco/vs/azcli-BA0tQDCg.js +0 -1
  543. package/dist/web/assets/monaco/vs/basic-languages/monaco.contribution.js +0 -1
  544. package/dist/web/assets/monaco/vs/basic-languages/monaco.contribution.js.br +0 -0
  545. package/dist/web/assets/monaco/vs/basic-languages/monaco.contribution.js.gz +0 -0
  546. package/dist/web/assets/monaco/vs/bat-C397hTD6.js +0 -1
  547. package/dist/web/assets/monaco/vs/bat-C397hTD6.js.br +0 -0
  548. package/dist/web/assets/monaco/vs/bat-C397hTD6.js.gz +0 -0
  549. package/dist/web/assets/monaco/vs/bicep-DF5aW17k.js +0 -2
  550. package/dist/web/assets/monaco/vs/bicep-DF5aW17k.js.br +0 -0
  551. package/dist/web/assets/monaco/vs/bicep-DF5aW17k.js.gz +0 -0
  552. package/dist/web/assets/monaco/vs/cameligo-plsz8qhj.js +0 -1
  553. package/dist/web/assets/monaco/vs/cameligo-plsz8qhj.js.br +0 -0
  554. package/dist/web/assets/monaco/vs/cameligo-plsz8qhj.js.gz +0 -0
  555. package/dist/web/assets/monaco/vs/clojure-Y2auQMzK.js +0 -1
  556. package/dist/web/assets/monaco/vs/clojure-Y2auQMzK.js.br +0 -0
  557. package/dist/web/assets/monaco/vs/clojure-Y2auQMzK.js.gz +0 -0
  558. package/dist/web/assets/monaco/vs/coffee-Bu45yuWE.js +0 -1
  559. package/dist/web/assets/monaco/vs/coffee-Bu45yuWE.js.br +0 -0
  560. package/dist/web/assets/monaco/vs/coffee-Bu45yuWE.js.gz +0 -0
  561. package/dist/web/assets/monaco/vs/cpp-CkKPQIni.js +0 -1
  562. package/dist/web/assets/monaco/vs/cpp-CkKPQIni.js.br +0 -0
  563. package/dist/web/assets/monaco/vs/cpp-CkKPQIni.js.gz +0 -0
  564. package/dist/web/assets/monaco/vs/csharp-CX28MZyh.js +0 -1
  565. package/dist/web/assets/monaco/vs/csharp-CX28MZyh.js.br +0 -0
  566. package/dist/web/assets/monaco/vs/csharp-CX28MZyh.js.gz +0 -0
  567. package/dist/web/assets/monaco/vs/csp-D8uWnyxW.js +0 -1
  568. package/dist/web/assets/monaco/vs/csp-D8uWnyxW.js.br +0 -0
  569. package/dist/web/assets/monaco/vs/csp-D8uWnyxW.js.gz +0 -0
  570. package/dist/web/assets/monaco/vs/css-CaeNmE3S.js +0 -3
  571. package/dist/web/assets/monaco/vs/css-CaeNmE3S.js.br +0 -0
  572. package/dist/web/assets/monaco/vs/css-CaeNmE3S.js.gz +0 -0
  573. package/dist/web/assets/monaco/vs/cssMode-CjiAH6dQ.js +0 -1
  574. package/dist/web/assets/monaco/vs/cssMode-CjiAH6dQ.js.br +0 -0
  575. package/dist/web/assets/monaco/vs/cssMode-CjiAH6dQ.js.gz +0 -0
  576. package/dist/web/assets/monaco/vs/cypher-DVThT8BS.js +0 -1
  577. package/dist/web/assets/monaco/vs/cypher-DVThT8BS.js.br +0 -0
  578. package/dist/web/assets/monaco/vs/cypher-DVThT8BS.js.gz +0 -0
  579. package/dist/web/assets/monaco/vs/dart-CmGfCvrO.js +0 -1
  580. package/dist/web/assets/monaco/vs/dart-CmGfCvrO.js.br +0 -0
  581. package/dist/web/assets/monaco/vs/dart-CmGfCvrO.js.gz +0 -0
  582. package/dist/web/assets/monaco/vs/dockerfile-CZqqYdch.js +0 -1
  583. package/dist/web/assets/monaco/vs/dockerfile-CZqqYdch.js.br +0 -0
  584. package/dist/web/assets/monaco/vs/dockerfile-CZqqYdch.js.gz +0 -0
  585. package/dist/web/assets/monaco/vs/ecl-30fUercY.js +0 -1
  586. package/dist/web/assets/monaco/vs/ecl-30fUercY.js.br +0 -0
  587. package/dist/web/assets/monaco/vs/ecl-30fUercY.js.gz +0 -0
  588. package/dist/web/assets/monaco/vs/editor/editor.main.css +0 -1
  589. package/dist/web/assets/monaco/vs/editor/editor.main.css.br +0 -0
  590. package/dist/web/assets/monaco/vs/editor/editor.main.css.gz +0 -0
  591. package/dist/web/assets/monaco/vs/editor/editor.main.js +0 -5
  592. package/dist/web/assets/monaco/vs/editor/editor.main.js.br +0 -0
  593. package/dist/web/assets/monaco/vs/editor/editor.main.js.gz +0 -0
  594. package/dist/web/assets/monaco/vs/editor.api-CalNCsUg.js +0 -903
  595. package/dist/web/assets/monaco/vs/editor.api-CalNCsUg.js.br +0 -0
  596. package/dist/web/assets/monaco/vs/editor.api-CalNCsUg.js.gz +0 -0
  597. package/dist/web/assets/monaco/vs/elixir-xjPaIfzF.js +0 -1
  598. package/dist/web/assets/monaco/vs/elixir-xjPaIfzF.js.br +0 -0
  599. package/dist/web/assets/monaco/vs/elixir-xjPaIfzF.js.gz +0 -0
  600. package/dist/web/assets/monaco/vs/flow9-DqtmStfK.js +0 -1
  601. package/dist/web/assets/monaco/vs/flow9-DqtmStfK.js.br +0 -0
  602. package/dist/web/assets/monaco/vs/flow9-DqtmStfK.js.gz +0 -0
  603. package/dist/web/assets/monaco/vs/freemarker2-Cz_sV6Md.js +0 -3
  604. package/dist/web/assets/monaco/vs/freemarker2-Cz_sV6Md.js.br +0 -0
  605. package/dist/web/assets/monaco/vs/freemarker2-Cz_sV6Md.js.gz +0 -0
  606. package/dist/web/assets/monaco/vs/fsharp-BOMdg4U1.js +0 -1
  607. package/dist/web/assets/monaco/vs/fsharp-BOMdg4U1.js.br +0 -0
  608. package/dist/web/assets/monaco/vs/fsharp-BOMdg4U1.js.gz +0 -0
  609. package/dist/web/assets/monaco/vs/go-D_hbi-Jt.js +0 -1
  610. package/dist/web/assets/monaco/vs/go-D_hbi-Jt.js.br +0 -0
  611. package/dist/web/assets/monaco/vs/go-D_hbi-Jt.js.gz +0 -0
  612. package/dist/web/assets/monaco/vs/graphql-CKUU4kLG.js +0 -1
  613. package/dist/web/assets/monaco/vs/graphql-CKUU4kLG.js.br +0 -0
  614. package/dist/web/assets/monaco/vs/graphql-CKUU4kLG.js.gz +0 -0
  615. package/dist/web/assets/monaco/vs/handlebars-OwglfO-1.js +0 -1
  616. package/dist/web/assets/monaco/vs/handlebars-OwglfO-1.js.br +0 -0
  617. package/dist/web/assets/monaco/vs/handlebars-OwglfO-1.js.gz +0 -0
  618. package/dist/web/assets/monaco/vs/hcl-DTaboeZW.js +0 -1
  619. package/dist/web/assets/monaco/vs/hcl-DTaboeZW.js.br +0 -0
  620. package/dist/web/assets/monaco/vs/hcl-DTaboeZW.js.gz +0 -0
  621. package/dist/web/assets/monaco/vs/html-Pa1xEWsY.js +0 -1
  622. package/dist/web/assets/monaco/vs/html-Pa1xEWsY.js.br +0 -0
  623. package/dist/web/assets/monaco/vs/html-Pa1xEWsY.js.gz +0 -0
  624. package/dist/web/assets/monaco/vs/htmlMode-Bz67EXwp.js +0 -1
  625. package/dist/web/assets/monaco/vs/htmlMode-Bz67EXwp.js.br +0 -0
  626. package/dist/web/assets/monaco/vs/htmlMode-Bz67EXwp.js.gz +0 -0
  627. package/dist/web/assets/monaco/vs/ini-CsNwO04R.js +0 -1
  628. package/dist/web/assets/monaco/vs/ini-CsNwO04R.js.br +0 -0
  629. package/dist/web/assets/monaco/vs/ini-CsNwO04R.js.gz +0 -0
  630. package/dist/web/assets/monaco/vs/java-CI4ZMsH9.js +0 -1
  631. package/dist/web/assets/monaco/vs/java-CI4ZMsH9.js.br +0 -0
  632. package/dist/web/assets/monaco/vs/java-CI4ZMsH9.js.gz +0 -0
  633. package/dist/web/assets/monaco/vs/javascript-PczUCGdz.js +0 -1
  634. package/dist/web/assets/monaco/vs/jsonMode-DULH5oaX.js +0 -7
  635. package/dist/web/assets/monaco/vs/jsonMode-DULH5oaX.js.br +0 -0
  636. package/dist/web/assets/monaco/vs/jsonMode-DULH5oaX.js.gz +0 -0
  637. package/dist/web/assets/monaco/vs/julia-BwzEvaQw.js +0 -1
  638. package/dist/web/assets/monaco/vs/julia-BwzEvaQw.js.br +0 -0
  639. package/dist/web/assets/monaco/vs/julia-BwzEvaQw.js.gz +0 -0
  640. package/dist/web/assets/monaco/vs/kotlin-IUYPiTV8.js +0 -1
  641. package/dist/web/assets/monaco/vs/kotlin-IUYPiTV8.js.br +0 -0
  642. package/dist/web/assets/monaco/vs/kotlin-IUYPiTV8.js.gz +0 -0
  643. package/dist/web/assets/monaco/vs/language/css/monaco.contribution.js +0 -1
  644. package/dist/web/assets/monaco/vs/language/html/monaco.contribution.js +0 -1
  645. package/dist/web/assets/monaco/vs/language/json/monaco.contribution.js +0 -1
  646. package/dist/web/assets/monaco/vs/language/typescript/monaco.contribution.js +0 -1
  647. package/dist/web/assets/monaco/vs/less-C0eDYdqa.js +0 -2
  648. package/dist/web/assets/monaco/vs/less-C0eDYdqa.js.br +0 -0
  649. package/dist/web/assets/monaco/vs/less-C0eDYdqa.js.gz +0 -0
  650. package/dist/web/assets/monaco/vs/lexon-iON-Kj97.js +0 -1
  651. package/dist/web/assets/monaco/vs/lexon-iON-Kj97.js.br +0 -0
  652. package/dist/web/assets/monaco/vs/lexon-iON-Kj97.js.gz +0 -0
  653. package/dist/web/assets/monaco/vs/liquid-DqKjdPGy.js +0 -1
  654. package/dist/web/assets/monaco/vs/liquid-DqKjdPGy.js.br +0 -0
  655. package/dist/web/assets/monaco/vs/liquid-DqKjdPGy.js.gz +0 -0
  656. package/dist/web/assets/monaco/vs/loader.js +0 -1368
  657. package/dist/web/assets/monaco/vs/loader.js.br +0 -0
  658. package/dist/web/assets/monaco/vs/loader.js.gz +0 -0
  659. package/dist/web/assets/monaco/vs/lspLanguageFeatures-kM9O9rjY.js +0 -4
  660. package/dist/web/assets/monaco/vs/lspLanguageFeatures-kM9O9rjY.js.br +0 -0
  661. package/dist/web/assets/monaco/vs/lspLanguageFeatures-kM9O9rjY.js.gz +0 -0
  662. package/dist/web/assets/monaco/vs/lua-DtygF91M.js +0 -1
  663. package/dist/web/assets/monaco/vs/lua-DtygF91M.js.br +0 -0
  664. package/dist/web/assets/monaco/vs/lua-DtygF91M.js.gz +0 -0
  665. package/dist/web/assets/monaco/vs/m3-CsR4AuFi.js +0 -1
  666. package/dist/web/assets/monaco/vs/m3-CsR4AuFi.js.br +0 -0
  667. package/dist/web/assets/monaco/vs/m3-CsR4AuFi.js.gz +0 -0
  668. package/dist/web/assets/monaco/vs/markdown-C_rD0bIw.js +0 -1
  669. package/dist/web/assets/monaco/vs/markdown-C_rD0bIw.js.br +0 -0
  670. package/dist/web/assets/monaco/vs/markdown-C_rD0bIw.js.gz +0 -0
  671. package/dist/web/assets/monaco/vs/mdx-DEWtB1K5.js +0 -1
  672. package/dist/web/assets/monaco/vs/mdx-DEWtB1K5.js.br +0 -0
  673. package/dist/web/assets/monaco/vs/mdx-DEWtB1K5.js.gz +0 -0
  674. package/dist/web/assets/monaco/vs/mips-CiYP61RB.js +0 -1
  675. package/dist/web/assets/monaco/vs/mips-CiYP61RB.js.br +0 -0
  676. package/dist/web/assets/monaco/vs/mips-CiYP61RB.js.gz +0 -0
  677. package/dist/web/assets/monaco/vs/monaco.contribution-D2OdxNBt.js +0 -1
  678. package/dist/web/assets/monaco/vs/monaco.contribution-D2OdxNBt.js.br +0 -0
  679. package/dist/web/assets/monaco/vs/monaco.contribution-D2OdxNBt.js.gz +0 -0
  680. package/dist/web/assets/monaco/vs/monaco.contribution-DO3azKX8.js +0 -1
  681. package/dist/web/assets/monaco/vs/monaco.contribution-DO3azKX8.js.br +0 -0
  682. package/dist/web/assets/monaco/vs/monaco.contribution-DO3azKX8.js.gz +0 -0
  683. package/dist/web/assets/monaco/vs/monaco.contribution-EcChJV6a.js +0 -1
  684. package/dist/web/assets/monaco/vs/monaco.contribution-EcChJV6a.js.br +0 -0
  685. package/dist/web/assets/monaco/vs/monaco.contribution-EcChJV6a.js.gz +0 -0
  686. package/dist/web/assets/monaco/vs/monaco.contribution-qLAYrEOP.js +0 -1
  687. package/dist/web/assets/monaco/vs/monaco.contribution-qLAYrEOP.js.br +0 -0
  688. package/dist/web/assets/monaco/vs/monaco.contribution-qLAYrEOP.js.gz +0 -0
  689. package/dist/web/assets/monaco/vs/msdax-C38-sJlp.js +0 -1
  690. package/dist/web/assets/monaco/vs/msdax-C38-sJlp.js.br +0 -0
  691. package/dist/web/assets/monaco/vs/msdax-C38-sJlp.js.gz +0 -0
  692. package/dist/web/assets/monaco/vs/mysql-CdtbpvbG.js +0 -1
  693. package/dist/web/assets/monaco/vs/mysql-CdtbpvbG.js.br +0 -0
  694. package/dist/web/assets/monaco/vs/mysql-CdtbpvbG.js.gz +0 -0
  695. package/dist/web/assets/monaco/vs/nls.messages-loader.js +0 -1
  696. package/dist/web/assets/monaco/vs/objective-c-CntZFaHX.js +0 -1
  697. package/dist/web/assets/monaco/vs/objective-c-CntZFaHX.js.br +0 -0
  698. package/dist/web/assets/monaco/vs/objective-c-CntZFaHX.js.gz +0 -0
  699. package/dist/web/assets/monaco/vs/pascal-r6kuqfl_.js +0 -1
  700. package/dist/web/assets/monaco/vs/pascal-r6kuqfl_.js.br +0 -0
  701. package/dist/web/assets/monaco/vs/pascal-r6kuqfl_.js.gz +0 -0
  702. package/dist/web/assets/monaco/vs/pascaligo-BiXoTmXh.js +0 -1
  703. package/dist/web/assets/monaco/vs/pascaligo-BiXoTmXh.js.br +0 -0
  704. package/dist/web/assets/monaco/vs/pascaligo-BiXoTmXh.js.gz +0 -0
  705. package/dist/web/assets/monaco/vs/perl-DABw_TcH.js +0 -1
  706. package/dist/web/assets/monaco/vs/perl-DABw_TcH.js.br +0 -0
  707. package/dist/web/assets/monaco/vs/perl-DABw_TcH.js.gz +0 -0
  708. package/dist/web/assets/monaco/vs/pgsql-me_jFXeX.js +0 -1
  709. package/dist/web/assets/monaco/vs/pgsql-me_jFXeX.js.br +0 -0
  710. package/dist/web/assets/monaco/vs/pgsql-me_jFXeX.js.gz +0 -0
  711. package/dist/web/assets/monaco/vs/php-D_kh-9LK.js +0 -1
  712. package/dist/web/assets/monaco/vs/php-D_kh-9LK.js.br +0 -0
  713. package/dist/web/assets/monaco/vs/php-D_kh-9LK.js.gz +0 -0
  714. package/dist/web/assets/monaco/vs/pla-VfZjczW0.js +0 -1
  715. package/dist/web/assets/monaco/vs/pla-VfZjczW0.js.br +0 -0
  716. package/dist/web/assets/monaco/vs/pla-VfZjczW0.js.gz +0 -0
  717. package/dist/web/assets/monaco/vs/postiats-BBSzz8Pk.js +0 -1
  718. package/dist/web/assets/monaco/vs/postiats-BBSzz8Pk.js.br +0 -0
  719. package/dist/web/assets/monaco/vs/postiats-BBSzz8Pk.js.gz +0 -0
  720. package/dist/web/assets/monaco/vs/powerquery-Dt-g_2cc.js +0 -1
  721. package/dist/web/assets/monaco/vs/powerquery-Dt-g_2cc.js.br +0 -0
  722. package/dist/web/assets/monaco/vs/powerquery-Dt-g_2cc.js.gz +0 -0
  723. package/dist/web/assets/monaco/vs/powershell-B-7ap1zc.js +0 -1
  724. package/dist/web/assets/monaco/vs/powershell-B-7ap1zc.js.br +0 -0
  725. package/dist/web/assets/monaco/vs/powershell-B-7ap1zc.js.gz +0 -0
  726. package/dist/web/assets/monaco/vs/protobuf-BmtuEB1A.js +0 -2
  727. package/dist/web/assets/monaco/vs/protobuf-BmtuEB1A.js.br +0 -0
  728. package/dist/web/assets/monaco/vs/protobuf-BmtuEB1A.js.gz +0 -0
  729. package/dist/web/assets/monaco/vs/pug-BRpRNeEb.js +0 -1
  730. package/dist/web/assets/monaco/vs/pug-BRpRNeEb.js.br +0 -0
  731. package/dist/web/assets/monaco/vs/pug-BRpRNeEb.js.gz +0 -0
  732. package/dist/web/assets/monaco/vs/python-Cr0UkIbn.js +0 -1
  733. package/dist/web/assets/monaco/vs/python-Cr0UkIbn.js.br +0 -0
  734. package/dist/web/assets/monaco/vs/python-Cr0UkIbn.js.gz +0 -0
  735. package/dist/web/assets/monaco/vs/qsharp-BzsFaUU9.js +0 -1
  736. package/dist/web/assets/monaco/vs/qsharp-BzsFaUU9.js.br +0 -0
  737. package/dist/web/assets/monaco/vs/qsharp-BzsFaUU9.js.gz +0 -0
  738. package/dist/web/assets/monaco/vs/r-f8dDdrp4.js +0 -1
  739. package/dist/web/assets/monaco/vs/r-f8dDdrp4.js.br +0 -0
  740. package/dist/web/assets/monaco/vs/r-f8dDdrp4.js.gz +0 -0
  741. package/dist/web/assets/monaco/vs/razor-BYAHOTkz.js +0 -1
  742. package/dist/web/assets/monaco/vs/razor-BYAHOTkz.js.br +0 -0
  743. package/dist/web/assets/monaco/vs/razor-BYAHOTkz.js.gz +0 -0
  744. package/dist/web/assets/monaco/vs/redis-fvZQY4PI.js +0 -1
  745. package/dist/web/assets/monaco/vs/redis-fvZQY4PI.js.br +0 -0
  746. package/dist/web/assets/monaco/vs/redis-fvZQY4PI.js.gz +0 -0
  747. package/dist/web/assets/monaco/vs/redshift-45Et0LQi.js +0 -1
  748. package/dist/web/assets/monaco/vs/redshift-45Et0LQi.js.br +0 -0
  749. package/dist/web/assets/monaco/vs/redshift-45Et0LQi.js.gz +0 -0
  750. package/dist/web/assets/monaco/vs/restructuredtext-C7UUFKFD.js +0 -1
  751. package/dist/web/assets/monaco/vs/restructuredtext-C7UUFKFD.js.br +0 -0
  752. package/dist/web/assets/monaco/vs/restructuredtext-C7UUFKFD.js.gz +0 -0
  753. package/dist/web/assets/monaco/vs/ruby-CZO8zYTz.js +0 -1
  754. package/dist/web/assets/monaco/vs/ruby-CZO8zYTz.js.br +0 -0
  755. package/dist/web/assets/monaco/vs/ruby-CZO8zYTz.js.gz +0 -0
  756. package/dist/web/assets/monaco/vs/rust-Bfetafyc.js +0 -1
  757. package/dist/web/assets/monaco/vs/rust-Bfetafyc.js.br +0 -0
  758. package/dist/web/assets/monaco/vs/rust-Bfetafyc.js.gz +0 -0
  759. package/dist/web/assets/monaco/vs/sb-3GYllVck.js +0 -1
  760. package/dist/web/assets/monaco/vs/sb-3GYllVck.js.br +0 -0
  761. package/dist/web/assets/monaco/vs/sb-3GYllVck.js.gz +0 -0
  762. package/dist/web/assets/monaco/vs/scala-foMgrKo1.js +0 -1
  763. package/dist/web/assets/monaco/vs/scala-foMgrKo1.js.br +0 -0
  764. package/dist/web/assets/monaco/vs/scala-foMgrKo1.js.gz +0 -0
  765. package/dist/web/assets/monaco/vs/scheme-CHdMtr7p.js +0 -1
  766. package/dist/web/assets/monaco/vs/scheme-CHdMtr7p.js.br +0 -0
  767. package/dist/web/assets/monaco/vs/scheme-CHdMtr7p.js.gz +0 -0
  768. package/dist/web/assets/monaco/vs/scss-C1cmLt9V.js +0 -3
  769. package/dist/web/assets/monaco/vs/scss-C1cmLt9V.js.br +0 -0
  770. package/dist/web/assets/monaco/vs/scss-C1cmLt9V.js.gz +0 -0
  771. package/dist/web/assets/monaco/vs/shell-ClXCKCEW.js +0 -1
  772. package/dist/web/assets/monaco/vs/shell-ClXCKCEW.js.br +0 -0
  773. package/dist/web/assets/monaco/vs/shell-ClXCKCEW.js.gz +0 -0
  774. package/dist/web/assets/monaco/vs/solidity-MZ6ExpPy.js +0 -1
  775. package/dist/web/assets/monaco/vs/solidity-MZ6ExpPy.js.br +0 -0
  776. package/dist/web/assets/monaco/vs/solidity-MZ6ExpPy.js.gz +0 -0
  777. package/dist/web/assets/monaco/vs/sophia-DWkuSsPQ.js +0 -1
  778. package/dist/web/assets/monaco/vs/sophia-DWkuSsPQ.js.br +0 -0
  779. package/dist/web/assets/monaco/vs/sophia-DWkuSsPQ.js.gz +0 -0
  780. package/dist/web/assets/monaco/vs/sparql-AUGFYSyk.js +0 -1
  781. package/dist/web/assets/monaco/vs/sparql-AUGFYSyk.js.br +0 -0
  782. package/dist/web/assets/monaco/vs/sparql-AUGFYSyk.js.gz +0 -0
  783. package/dist/web/assets/monaco/vs/sql-32GpJSV2.js +0 -1
  784. package/dist/web/assets/monaco/vs/sql-32GpJSV2.js.br +0 -0
  785. package/dist/web/assets/monaco/vs/sql-32GpJSV2.js.gz +0 -0
  786. package/dist/web/assets/monaco/vs/st-CuDFIVZ_.js +0 -1
  787. package/dist/web/assets/monaco/vs/st-CuDFIVZ_.js.br +0 -0
  788. package/dist/web/assets/monaco/vs/st-CuDFIVZ_.js.gz +0 -0
  789. package/dist/web/assets/monaco/vs/swift-n-2HociN.js +0 -3
  790. package/dist/web/assets/monaco/vs/swift-n-2HociN.js.br +0 -0
  791. package/dist/web/assets/monaco/vs/swift-n-2HociN.js.gz +0 -0
  792. package/dist/web/assets/monaco/vs/systemverilog-Ch4vA8Yt.js +0 -1
  793. package/dist/web/assets/monaco/vs/systemverilog-Ch4vA8Yt.js.br +0 -0
  794. package/dist/web/assets/monaco/vs/systemverilog-Ch4vA8Yt.js.gz +0 -0
  795. package/dist/web/assets/monaco/vs/tcl-D74tq1nH.js +0 -1
  796. package/dist/web/assets/monaco/vs/tcl-D74tq1nH.js.br +0 -0
  797. package/dist/web/assets/monaco/vs/tcl-D74tq1nH.js.gz +0 -0
  798. package/dist/web/assets/monaco/vs/tsMode-CZz1Umrk.js +0 -11
  799. package/dist/web/assets/monaco/vs/tsMode-CZz1Umrk.js.br +0 -0
  800. package/dist/web/assets/monaco/vs/tsMode-CZz1Umrk.js.gz +0 -0
  801. package/dist/web/assets/monaco/vs/twig-C6taOxMV.js +0 -1
  802. package/dist/web/assets/monaco/vs/twig-C6taOxMV.js.br +0 -0
  803. package/dist/web/assets/monaco/vs/twig-C6taOxMV.js.gz +0 -0
  804. package/dist/web/assets/monaco/vs/typescript-DfOrAzoV.js +0 -1
  805. package/dist/web/assets/monaco/vs/typescript-DfOrAzoV.js.br +0 -0
  806. package/dist/web/assets/monaco/vs/typescript-DfOrAzoV.js.gz +0 -0
  807. package/dist/web/assets/monaco/vs/typespec-D-PIh9Xw.js +0 -1
  808. package/dist/web/assets/monaco/vs/typespec-D-PIh9Xw.js.br +0 -0
  809. package/dist/web/assets/monaco/vs/typespec-D-PIh9Xw.js.gz +0 -0
  810. package/dist/web/assets/monaco/vs/vb-Dyb2648j.js +0 -1
  811. package/dist/web/assets/monaco/vs/vb-Dyb2648j.js.br +0 -0
  812. package/dist/web/assets/monaco/vs/vb-Dyb2648j.js.gz +0 -0
  813. package/dist/web/assets/monaco/vs/wgsl-BhLXMOR0.js +0 -298
  814. package/dist/web/assets/monaco/vs/wgsl-BhLXMOR0.js.br +0 -0
  815. package/dist/web/assets/monaco/vs/wgsl-BhLXMOR0.js.gz +0 -0
  816. package/dist/web/assets/monaco/vs/workers-DcJshg-q.js +0 -1
  817. package/dist/web/assets/monaco/vs/workers-DcJshg-q.js.br +0 -0
  818. package/dist/web/assets/monaco/vs/workers-DcJshg-q.js.gz +0 -0
  819. package/dist/web/assets/monaco/vs/xml-CdsdnY8S.js +0 -1
  820. package/dist/web/assets/monaco/vs/xml-CdsdnY8S.js.br +0 -0
  821. package/dist/web/assets/monaco/vs/xml-CdsdnY8S.js.gz +0 -0
  822. package/dist/web/assets/monaco/vs/yaml-DYGvmE88.js +0 -1
  823. package/dist/web/assets/monaco/vs/yaml-DYGvmE88.js.br +0 -0
  824. package/dist/web/assets/monaco/vs/yaml-DYGvmE88.js.gz +0 -0
  825. package/dist/web/assets/monokai-CdxwmnU_.js.br +0 -0
  826. package/dist/web/assets/monokai-CdxwmnU_.js.gz +0 -0
  827. package/dist/web/assets/moonbit-6Z_VCO0_.js.br +0 -0
  828. package/dist/web/assets/moonbit-6Z_VCO0_.js.gz +0 -0
  829. package/dist/web/assets/move-B2__B6Po.js.br +0 -0
  830. package/dist/web/assets/move-B2__B6Po.js.gz +0 -0
  831. package/dist/web/assets/narrat-D6vL6wL-.js.br +0 -0
  832. package/dist/web/assets/narrat-D6vL6wL-.js.gz +0 -0
  833. package/dist/web/assets/nextflow-FQM6iZO2.js.br +0 -0
  834. package/dist/web/assets/nextflow-FQM6iZO2.js.gz +0 -0
  835. package/dist/web/assets/nextflow-groovy-L-FBME4e.js.br +0 -0
  836. package/dist/web/assets/nextflow-groovy-L-FBME4e.js.gz +0 -0
  837. package/dist/web/assets/nginx-Bg0TK_a9.js.br +0 -0
  838. package/dist/web/assets/nginx-Bg0TK_a9.js.gz +0 -0
  839. package/dist/web/assets/night-owl-DjKrkDjv.js.br +0 -0
  840. package/dist/web/assets/night-owl-DjKrkDjv.js.gz +0 -0
  841. package/dist/web/assets/night-owl-light-CeGjPuUQ.js.br +0 -0
  842. package/dist/web/assets/night-owl-light-CeGjPuUQ.js.gz +0 -0
  843. package/dist/web/assets/nim-D1kSCHdq.js.br +0 -0
  844. package/dist/web/assets/nim-D1kSCHdq.js.gz +0 -0
  845. package/dist/web/assets/nix-dr279CcA.js.br +0 -0
  846. package/dist/web/assets/nix-dr279CcA.js.gz +0 -0
  847. package/dist/web/assets/nord-Dxn-_H_Y.js.br +0 -0
  848. package/dist/web/assets/nord-Dxn-_H_Y.js.gz +0 -0
  849. package/dist/web/assets/notifications-settings-section-C5v8FoH9.js.br +0 -3
  850. package/dist/web/assets/notifications-settings-section-C5v8FoH9.js.gz +0 -0
  851. package/dist/web/assets/number-overlay-editor-Bsr04yCI.js.br +0 -0
  852. package/dist/web/assets/number-overlay-editor-Bsr04yCI.js.gz +0 -0
  853. package/dist/web/assets/nushell-DgeAQO7j.js.br +0 -0
  854. package/dist/web/assets/nushell-DgeAQO7j.js.gz +0 -0
  855. package/dist/web/assets/objective-c-CO0-Pacn.js.br +0 -0
  856. package/dist/web/assets/objective-c-CO0-Pacn.js.gz +0 -0
  857. package/dist/web/assets/objective-cpp-SkrjegYw.js.br +0 -0
  858. package/dist/web/assets/objective-cpp-SkrjegYw.js.gz +0 -0
  859. package/dist/web/assets/ocaml-CAihtkib.js.br +0 -0
  860. package/dist/web/assets/ocaml-CAihtkib.js.gz +0 -0
  861. package/dist/web/assets/odin-D0XZbUDB.js.br +0 -0
  862. package/dist/web/assets/odin-D0XZbUDB.js.gz +0 -0
  863. package/dist/web/assets/onboarding-entry-C81awoR5.js.br +0 -0
  864. package/dist/web/assets/onboarding-entry-C81awoR5.js.gz +0 -0
  865. package/dist/web/assets/onboarding-quick-orientation-Dqmis-E5.js.br +0 -0
  866. package/dist/web/assets/onboarding-quick-orientation-Dqmis-E5.js.gz +0 -0
  867. package/dist/web/assets/one-dark-pro-BUMNMxjX.js.br +0 -0
  868. package/dist/web/assets/one-dark-pro-BUMNMxjX.js.gz +0 -0
  869. package/dist/web/assets/one-light-C0Ui69Bx.js.br +0 -0
  870. package/dist/web/assets/one-light-C0Ui69Bx.js.gz +0 -0
  871. package/dist/web/assets/openscad-fZ9ggqM-.js.br +0 -0
  872. package/dist/web/assets/openscad-fZ9ggqM-.js.gz +0 -0
  873. package/dist/web/assets/overview-panel-9OdBcYJC.js.br +0 -0
  874. package/dist/web/assets/overview-panel-9OdBcYJC.js.gz +0 -0
  875. package/dist/web/assets/panel-store-D20Zuf3i.js.br +0 -0
  876. package/dist/web/assets/panel-store-D20Zuf3i.js.gz +0 -0
  877. package/dist/web/assets/pascal-DvZm-eun.js.br +0 -0
  878. package/dist/web/assets/pascal-DvZm-eun.js.gz +0 -0
  879. package/dist/web/assets/pdf-preview-DuR07OfN.js.br +0 -0
  880. package/dist/web/assets/pdf-preview-DuR07OfN.js.gz +0 -0
  881. package/dist/web/assets/perl-B6QNc69s.js.br +0 -0
  882. package/dist/web/assets/perl-B6QNc69s.js.gz +0 -0
  883. package/dist/web/assets/php-Bvwf1t96.js.br +0 -0
  884. package/dist/web/assets/php-Bvwf1t96.js.gz +0 -0
  885. package/dist/web/assets/pkl-CQSIp_z8.js.br +0 -0
  886. package/dist/web/assets/pkl-CQSIp_z8.js.gz +0 -0
  887. package/dist/web/assets/plastic-CMspsouJ.js.br +0 -0
  888. package/dist/web/assets/plastic-CMspsouJ.js.gz +0 -0
  889. package/dist/web/assets/plsql-B_HL7UfT.js.br +0 -0
  890. package/dist/web/assets/plsql-B_HL7UfT.js.gz +0 -0
  891. package/dist/web/assets/po-DxAfbdfe.js.br +0 -0
  892. package/dist/web/assets/po-DxAfbdfe.js.gz +0 -0
  893. package/dist/web/assets/poimandres-JGmqmwux.js.br +0 -0
  894. package/dist/web/assets/poimandres-JGmqmwux.js.gz +0 -0
  895. package/dist/web/assets/polar-_mNmplk8.js.br +0 -0
  896. package/dist/web/assets/polar-_mNmplk8.js.gz +0 -0
  897. package/dist/web/assets/postcss-GpU0Sjqc.js.br +0 -0
  898. package/dist/web/assets/postcss-GpU0Sjqc.js.gz +0 -0
  899. package/dist/web/assets/postgres-viewer-CGf7_g6Z.js.br +0 -0
  900. package/dist/web/assets/postgres-viewer-CGf7_g6Z.js.gz +0 -0
  901. package/dist/web/assets/powerquery-B1IP1lCQ.js.br +0 -0
  902. package/dist/web/assets/powerquery-B1IP1lCQ.js.gz +0 -0
  903. package/dist/web/assets/powershell-BiSO9XmG.js.br +0 -0
  904. package/dist/web/assets/powershell-BiSO9XmG.js.gz +0 -0
  905. package/dist/web/assets/ppmbot-settings-section-CY_yAGFM.js.br +0 -0
  906. package/dist/web/assets/ppmbot-settings-section-CY_yAGFM.js.gz +0 -0
  907. package/dist/web/assets/prisma-4QqDYSnH.js.br +0 -0
  908. package/dist/web/assets/prisma-4QqDYSnH.js.gz +0 -0
  909. package/dist/web/assets/problems-panel-CJNasbnt.js.br +0 -0
  910. package/dist/web/assets/problems-panel-CJNasbnt.js.gz +0 -0
  911. package/dist/web/assets/process-table-1CN3rBVp.js.br +0 -0
  912. package/dist/web/assets/process-table-1CN3rBVp.js.gz +0 -0
  913. package/dist/web/assets/project-store-hNvwfqX3.js.br +0 -0
  914. package/dist/web/assets/project-store-hNvwfqX3.js.gz +0 -0
  915. package/dist/web/assets/prolog-BNjvyRqT.js.br +0 -0
  916. package/dist/web/assets/prolog-BNjvyRqT.js.gz +0 -0
  917. package/dist/web/assets/proto-RNOumnkw.js.br +0 -0
  918. package/dist/web/assets/proto-RNOumnkw.js.gz +0 -0
  919. package/dist/web/assets/proxy-settings-section-CqcvneFB.js.br +0 -0
  920. package/dist/web/assets/proxy-settings-section-CqcvneFB.js.gz +0 -0
  921. package/dist/web/assets/pug-I8oitXP4.js.br +0 -0
  922. package/dist/web/assets/pug-I8oitXP4.js.gz +0 -0
  923. package/dist/web/assets/puppet-CDfv5o8f.js.br +0 -0
  924. package/dist/web/assets/puppet-CDfv5o8f.js.gz +0 -0
  925. package/dist/web/assets/purescript-YTjSoifd.js.br +0 -0
  926. package/dist/web/assets/purescript-YTjSoifd.js.gz +0 -0
  927. package/dist/web/assets/python-Mh7JD25U.js.br +0 -0
  928. package/dist/web/assets/python-Mh7JD25U.js.gz +0 -0
  929. package/dist/web/assets/qml-LKb7CHg-.js.br +0 -0
  930. package/dist/web/assets/qml-LKb7CHg-.js.gz +0 -0
  931. package/dist/web/assets/qss-DANVkyhy.js.br +0 -0
  932. package/dist/web/assets/qss-DANVkyhy.js.gz +0 -0
  933. package/dist/web/assets/query-audit-section-CpiXQVcS.js.br +0 -0
  934. package/dist/web/assets/query-audit-section-CpiXQVcS.js.gz +0 -0
  935. package/dist/web/assets/r-DHu15BOo.js.br +0 -0
  936. package/dist/web/assets/r-DHu15BOo.js.gz +0 -0
  937. package/dist/web/assets/racket-CwPOn4T1.js.br +0 -0
  938. package/dist/web/assets/racket-CwPOn4T1.js.gz +0 -0
  939. package/dist/web/assets/raku-B04lBsXd.js.br +0 -0
  940. package/dist/web/assets/raku-B04lBsXd.js.gz +0 -0
  941. package/dist/web/assets/razor-CIPT897U.js.br +0 -0
  942. package/dist/web/assets/razor-CIPT897U.js.gz +0 -0
  943. package/dist/web/assets/red-MW6Zm5pd.js.br +0 -0
  944. package/dist/web/assets/red-MW6Zm5pd.js.gz +0 -0
  945. package/dist/web/assets/reg-44SURM-E.js.br +0 -0
  946. package/dist/web/assets/reg-44SURM-E.js.gz +0 -0
  947. package/dist/web/assets/regexp-Vdt2OEkk.js.br +0 -0
  948. package/dist/web/assets/regexp-Vdt2OEkk.js.gz +0 -0
  949. package/dist/web/assets/rel-Gu5Erhpm.js.br +0 -0
  950. package/dist/web/assets/rel-Gu5Erhpm.js.gz +0 -0
  951. package/dist/web/assets/remote-desktop-clipboard-notice-BysFGa_4.js.br +0 -0
  952. package/dist/web/assets/remote-desktop-clipboard-notice-BysFGa_4.js.gz +0 -0
  953. package/dist/web/assets/remote-desktop-mobile-sheet-DLW_0HDz.js.br +0 -0
  954. package/dist/web/assets/remote-desktop-mobile-sheet-DLW_0HDz.js.gz +0 -0
  955. package/dist/web/assets/remote-desktop-mobile-view-Df6SfRtI.js.br +0 -0
  956. package/dist/web/assets/remote-desktop-mobile-view-Df6SfRtI.js.gz +0 -0
  957. package/dist/web/assets/remote-desktop-readiness-gate-LugXhLJ3.js.br +0 -0
  958. package/dist/web/assets/remote-desktop-readiness-gate-LugXhLJ3.js.gz +0 -0
  959. package/dist/web/assets/remote-desktop-window-content-k-pIAIDq.js.br +0 -0
  960. package/dist/web/assets/remote-desktop-window-content-k-pIAIDq.js.gz +0 -0
  961. package/dist/web/assets/resolve-theme-BNubecVz.js.br +0 -0
  962. package/dist/web/assets/resolve-theme-BNubecVz.js.gz +0 -0
  963. package/dist/web/assets/riscv-DZDP0Ce7.js.br +0 -0
  964. package/dist/web/assets/riscv-DZDP0Ce7.js.gz +0 -0
  965. package/dist/web/assets/ron-BwLObbl6.js.br +0 -0
  966. package/dist/web/assets/ron-BwLObbl6.js.gz +0 -0
  967. package/dist/web/assets/rose-pine-Bz6ToXok.js.br +0 -0
  968. package/dist/web/assets/rose-pine-Bz6ToXok.js.gz +0 -0
  969. package/dist/web/assets/rose-pine-dawn-LyFogzAh.js.br +0 -0
  970. package/dist/web/assets/rose-pine-dawn-LyFogzAh.js.gz +0 -0
  971. package/dist/web/assets/rose-pine-moon-CpjkefjD.js.br +0 -0
  972. package/dist/web/assets/rose-pine-moon-CpjkefjD.js.gz +0 -0
  973. package/dist/web/assets/rosmsg-BldDLaz1.js.br +0 -0
  974. package/dist/web/assets/rosmsg-BldDLaz1.js.gz +0 -0
  975. package/dist/web/assets/rst-BpcmfJFA.js.br +0 -0
  976. package/dist/web/assets/rst-BpcmfJFA.js.gz +0 -0
  977. package/dist/web/assets/ruby-Cx413jgE.js.br +0 -0
  978. package/dist/web/assets/ruby-Cx413jgE.js.gz +0 -0
  979. package/dist/web/assets/rust-74skZ8CC.js.br +0 -0
  980. package/dist/web/assets/rust-74skZ8CC.js.gz +0 -0
  981. package/dist/web/assets/sas-B3ui_NHy.js.br +0 -0
  982. package/dist/web/assets/sas-B3ui_NHy.js.gz +0 -0
  983. package/dist/web/assets/sass-CitUFDWl.js.br +0 -0
  984. package/dist/web/assets/sass-CitUFDWl.js.gz +0 -0
  985. package/dist/web/assets/scala-D2kl5ghT.js.br +0 -0
  986. package/dist/web/assets/scala-D2kl5ghT.js.gz +0 -0
  987. package/dist/web/assets/schedules-settings-section-ByCm7IOg.js.br +0 -0
  988. package/dist/web/assets/schedules-settings-section-ByCm7IOg.js.gz +0 -0
  989. package/dist/web/assets/scheme-DZqhC9Xs.js.br +0 -0
  990. package/dist/web/assets/scheme-DZqhC9Xs.js.gz +0 -0
  991. package/dist/web/assets/scroll-area-C0fQWNnx.js.br +0 -0
  992. package/dist/web/assets/scroll-area-C0fQWNnx.js.gz +0 -0
  993. package/dist/web/assets/scss-V4NlXnGi.js.br +0 -0
  994. package/dist/web/assets/scss-V4NlXnGi.js.gz +0 -0
  995. package/dist/web/assets/sdbl-D6a8sHP9.js.br +0 -0
  996. package/dist/web/assets/sdbl-D6a8sHP9.js.gz +0 -0
  997. package/dist/web/assets/send-to-chat-C8l7AcV4.js.br +0 -0
  998. package/dist/web/assets/send-to-chat-C8l7AcV4.js.gz +0 -0
  999. package/dist/web/assets/settings-body-Dwt_rUSa.js.br +0 -0
  1000. package/dist/web/assets/settings-body-Dwt_rUSa.js.gz +0 -0
  1001. package/dist/web/assets/settings-store-m6qOXoy4.js.br +0 -0
  1002. package/dist/web/assets/settings-store-m6qOXoy4.js.gz +0 -0
  1003. package/dist/web/assets/shaderlab-Cf7qZ4DR.js.br +0 -0
  1004. package/dist/web/assets/shaderlab-Cf7qZ4DR.js.gz +0 -0
  1005. package/dist/web/assets/shellscript-DRxJLgrx.js.br +0 -0
  1006. package/dist/web/assets/shellscript-DRxJLgrx.js.gz +0 -0
  1007. package/dist/web/assets/slack-dark-DrlPLUB_.js.br +0 -0
  1008. package/dist/web/assets/slack-dark-DrlPLUB_.js.gz +0 -0
  1009. package/dist/web/assets/slack-ochin-Djgychog.js.br +0 -0
  1010. package/dist/web/assets/slack-ochin-Djgychog.js.gz +0 -0
  1011. package/dist/web/assets/smalltalk-CYQHXftK.js.br +0 -0
  1012. package/dist/web/assets/smalltalk-CYQHXftK.js.gz +0 -0
  1013. package/dist/web/assets/snazzy-light-BQAdF14K.js.br +0 -0
  1014. package/dist/web/assets/snazzy-light-BQAdF14K.js.gz +0 -0
  1015. package/dist/web/assets/solarized-dark-JDtJfY-g.js.br +0 -0
  1016. package/dist/web/assets/solarized-dark-JDtJfY-g.js.gz +0 -0
  1017. package/dist/web/assets/solarized-light-DHzVPLDD.js.br +0 -0
  1018. package/dist/web/assets/solarized-light-DHzVPLDD.js.gz +0 -0
  1019. package/dist/web/assets/solidity-CYCEiPu1.js.br +0 -0
  1020. package/dist/web/assets/solidity-CYCEiPu1.js.gz +0 -0
  1021. package/dist/web/assets/soy-CGKN9rxg.js.br +0 -0
  1022. package/dist/web/assets/soy-CGKN9rxg.js.gz +0 -0
  1023. package/dist/web/assets/sparql-CArCsIdI.js.br +0 -0
  1024. package/dist/web/assets/sparql-CArCsIdI.js.gz +0 -0
  1025. package/dist/web/assets/splunk-B7RHmJY2.js.br +0 -0
  1026. package/dist/web/assets/splunk-B7RHmJY2.js.gz +0 -0
  1027. package/dist/web/assets/sql-ljEiM8nf.js.br +0 -0
  1028. package/dist/web/assets/sql-ljEiM8nf.js.gz +0 -0
  1029. package/dist/web/assets/sql-query-editor-DgwwJxwJ.js.br +0 -0
  1030. package/dist/web/assets/sql-query-editor-DgwwJxwJ.js.gz +0 -0
  1031. package/dist/web/assets/sqlite-viewer-gxiJZ3kk.js.br +0 -0
  1032. package/dist/web/assets/sqlite-viewer-gxiJZ3kk.js.gz +0 -0
  1033. package/dist/web/assets/ssh-config-B74-n00O.js.br +0 -0
  1034. package/dist/web/assets/ssh-config-B74-n00O.js.gz +0 -0
  1035. package/dist/web/assets/stata-CplvndbA.js.br +0 -0
  1036. package/dist/web/assets/stata-CplvndbA.js.gz +0 -0
  1037. package/dist/web/assets/stylus-xlRhcbpN.js.br +0 -0
  1038. package/dist/web/assets/stylus-xlRhcbpN.js.gz +0 -0
  1039. package/dist/web/assets/surrealql-DwX1PCpP.js.br +0 -0
  1040. package/dist/web/assets/surrealql-DwX1PCpP.js.gz +0 -0
  1041. package/dist/web/assets/svelte-DYCNmQjy.js.br +0 -0
  1042. package/dist/web/assets/svelte-DYCNmQjy.js.gz +0 -0
  1043. package/dist/web/assets/swift-DTFwWJtu.js.br +0 -0
  1044. package/dist/web/assets/swift-DTFwWJtu.js.gz +0 -0
  1045. package/dist/web/assets/synthwave-84-BuCpuX2E.js.br +0 -0
  1046. package/dist/web/assets/synthwave-84-BuCpuX2E.js.gz +0 -0
  1047. package/dist/web/assets/system-monitor-body-BJrVntEe.js.br +0 -0
  1048. package/dist/web/assets/system-monitor-body-BJrVntEe.js.gz +0 -0
  1049. package/dist/web/assets/system-verilog-CgxJCrOK.js.br +0 -0
  1050. package/dist/web/assets/system-verilog-CgxJCrOK.js.gz +0 -0
  1051. package/dist/web/assets/systemd-D0x7_XYJ.js.br +0 -0
  1052. package/dist/web/assets/systemd-D0x7_XYJ.js.gz +0 -0
  1053. package/dist/web/assets/tab-host-window-content-D3M-lRyv.js.br +0 -0
  1054. package/dist/web/assets/tab-host-window-content-D3M-lRyv.js.gz +0 -0
  1055. package/dist/web/assets/talonscript-B50aQRuc.js.br +0 -0
  1056. package/dist/web/assets/talonscript-B50aQRuc.js.gz +0 -0
  1057. package/dist/web/assets/tasl-Byv8gHCL.js.br +0 -0
  1058. package/dist/web/assets/tasl-Byv8gHCL.js.gz +0 -0
  1059. package/dist/web/assets/tcl-CzMjCzWo.js.br +0 -0
  1060. package/dist/web/assets/tcl-CzMjCzWo.js.gz +0 -0
  1061. package/dist/web/assets/team-member-sheet-D66xVR6G.js.br +0 -0
  1062. package/dist/web/assets/team-member-sheet-D66xVR6G.js.gz +0 -0
  1063. package/dist/web/assets/team-member-window-content-D6SxpWVr.js.br +0 -0
  1064. package/dist/web/assets/team-member-window-content-D6SxpWVr.js.gz +0 -0
  1065. package/dist/web/assets/templ-b_h2-Z9l.js.br +0 -0
  1066. package/dist/web/assets/templ-b_h2-Z9l.js.gz +0 -0
  1067. package/dist/web/assets/terminal-tab-DUfOyHxp.js.br +0 -0
  1068. package/dist/web/assets/terminal-tab-DUfOyHxp.js.gz +0 -0
  1069. package/dist/web/assets/terraform-D6GH4CXG.js.br +0 -0
  1070. package/dist/web/assets/terraform-D6GH4CXG.js.gz +0 -0
  1071. package/dist/web/assets/tex-022M3-MR.js.br +0 -0
  1072. package/dist/web/assets/tex-022M3-MR.js.gz +0 -0
  1073. package/dist/web/assets/tokyo-night-CQ4rTpHY.js.br +0 -0
  1074. package/dist/web/assets/tokyo-night-CQ4rTpHY.js.gz +0 -0
  1075. package/dist/web/assets/toml-D9W-BuJE.js.br +0 -0
  1076. package/dist/web/assets/toml-D9W-BuJE.js.gz +0 -0
  1077. package/dist/web/assets/tool-cards-O9N-oJuB.js.br +0 -0
  1078. package/dist/web/assets/tool-cards-O9N-oJuB.js.gz +0 -0
  1079. package/dist/web/assets/ts-tags-BUl0AdO6.js.br +0 -0
  1080. package/dist/web/assets/ts-tags-BUl0AdO6.js.gz +0 -0
  1081. package/dist/web/assets/tsx-CKaH7SzK.js.br +0 -0
  1082. package/dist/web/assets/tsx-CKaH7SzK.js.gz +0 -0
  1083. package/dist/web/assets/turtle-BddVklvD.js.br +0 -0
  1084. package/dist/web/assets/turtle-BddVklvD.js.gz +0 -0
  1085. package/dist/web/assets/twig-CMzYUcSa.js.br +0 -0
  1086. package/dist/web/assets/twig-CMzYUcSa.js.gz +0 -0
  1087. package/dist/web/assets/typescript-DZozDFsi.js.br +0 -0
  1088. package/dist/web/assets/typescript-DZozDFsi.js.gz +0 -0
  1089. package/dist/web/assets/typespec-D60I2kfB.js.br +0 -0
  1090. package/dist/web/assets/typespec-D60I2kfB.js.gz +0 -0
  1091. package/dist/web/assets/typst-Bxvc-9ID.js.br +0 -0
  1092. package/dist/web/assets/typst-Bxvc-9ID.js.gz +0 -0
  1093. package/dist/web/assets/use-inline-blame-B40AsaN2.js.br +0 -0
  1094. package/dist/web/assets/use-inline-blame-B40AsaN2.js.gz +0 -0
  1095. package/dist/web/assets/use-lsp-B30TcKvt.js.br +0 -0
  1096. package/dist/web/assets/use-lsp-B30TcKvt.js.gz +0 -0
  1097. package/dist/web/assets/utils-Bmf_8h7Y.js.br +0 -0
  1098. package/dist/web/assets/utils-Bmf_8h7Y.js.gz +0 -0
  1099. package/dist/web/assets/v-kVYZE10o.js.br +0 -0
  1100. package/dist/web/assets/v-kVYZE10o.js.gz +0 -0
  1101. package/dist/web/assets/vala-B3zj44PV.js.br +0 -0
  1102. package/dist/web/assets/vala-B3zj44PV.js.gz +0 -0
  1103. package/dist/web/assets/vb-CHgWrFTj.js.br +0 -0
  1104. package/dist/web/assets/vb-CHgWrFTj.js.gz +0 -0
  1105. package/dist/web/assets/vendor-markdown-CuWCHIVb.js.br +0 -0
  1106. package/dist/web/assets/vendor-markdown-CuWCHIVb.js.gz +0 -0
  1107. package/dist/web/assets/vendor-mermaid-D6lgjvVE.js.br +0 -0
  1108. package/dist/web/assets/vendor-mermaid-D6lgjvVE.js.gz +0 -0
  1109. package/dist/web/assets/vendor-ui-DmZ-Mb-H.js.br +0 -0
  1110. package/dist/web/assets/vendor-ui-DmZ-Mb-H.js.gz +0 -0
  1111. package/dist/web/assets/vendor-xterm-DkTCHfhq.css.br +0 -0
  1112. package/dist/web/assets/vendor-xterm-DkTCHfhq.css.gz +0 -0
  1113. package/dist/web/assets/vendor-xterm-_yyu5n32.js.br +0 -0
  1114. package/dist/web/assets/vendor-xterm-_yyu5n32.js.gz +0 -0
  1115. package/dist/web/assets/verilog-zIMuE3hE.js.br +0 -0
  1116. package/dist/web/assets/verilog-zIMuE3hE.js.gz +0 -0
  1117. package/dist/web/assets/vesper-BjqPTQr0.js.br +0 -0
  1118. package/dist/web/assets/vesper-BjqPTQr0.js.gz +0 -0
  1119. package/dist/web/assets/vhdl-Q2EtgpQN.js.br +0 -0
  1120. package/dist/web/assets/vhdl-Q2EtgpQN.js.gz +0 -0
  1121. package/dist/web/assets/video-preview-RS5jKlrC.js.br +0 -0
  1122. package/dist/web/assets/video-preview-RS5jKlrC.js.gz +0 -0
  1123. package/dist/web/assets/viml-CrtDZkFz.js.br +0 -0
  1124. package/dist/web/assets/viml-CrtDZkFz.js.gz +0 -0
  1125. package/dist/web/assets/vitesse-black-D2VWO3oN.js.br +0 -0
  1126. package/dist/web/assets/vitesse-black-D2VWO3oN.js.gz +0 -0
  1127. package/dist/web/assets/vitesse-dark-lleZmHBJ.js.br +0 -0
  1128. package/dist/web/assets/vitesse-dark-lleZmHBJ.js.gz +0 -0
  1129. package/dist/web/assets/vitesse-light-utUY298S.js.br +0 -0
  1130. package/dist/web/assets/vitesse-light-utUY298S.js.gz +0 -0
  1131. package/dist/web/assets/vue-D83SsURi.js.br +0 -0
  1132. package/dist/web/assets/vue-D83SsURi.js.gz +0 -0
  1133. package/dist/web/assets/vue-html-BGU-OYYb.js.br +0 -0
  1134. package/dist/web/assets/vue-html-BGU-OYYb.js.gz +0 -0
  1135. package/dist/web/assets/vue-vine-1sHE1gZn.js.br +0 -0
  1136. package/dist/web/assets/vue-vine-1sHE1gZn.js.gz +0 -0
  1137. package/dist/web/assets/vyper-LQ1KxOUo.js.br +0 -0
  1138. package/dist/web/assets/vyper-LQ1KxOUo.js.gz +0 -0
  1139. package/dist/web/assets/wasm-B-mpMVDM.js.br +0 -0
  1140. package/dist/web/assets/wasm-B-mpMVDM.js.gz +0 -0
  1141. package/dist/web/assets/wasm-CJ9U4zWg.js.br +0 -0
  1142. package/dist/web/assets/wasm-CJ9U4zWg.js.gz +0 -0
  1143. package/dist/web/assets/wenyan-LqMyA7px.js.br +0 -0
  1144. package/dist/web/assets/wenyan-LqMyA7px.js.gz +0 -0
  1145. package/dist/web/assets/wgsl-eI4U21sm.js.br +0 -0
  1146. package/dist/web/assets/wgsl-eI4U21sm.js.gz +0 -0
  1147. package/dist/web/assets/wikitext-CuWC2dfS.js.br +0 -0
  1148. package/dist/web/assets/wikitext-CuWC2dfS.js.gz +0 -0
  1149. package/dist/web/assets/window-store-UC1jJeLM.js.br +0 -0
  1150. package/dist/web/assets/window-store-UC1jJeLM.js.gz +0 -0
  1151. package/dist/web/assets/wit-CCPY0MNz.js.br +0 -0
  1152. package/dist/web/assets/wit-CCPY0MNz.js.gz +0 -0
  1153. package/dist/web/assets/wolfram-CXhjyJun.js.br +0 -0
  1154. package/dist/web/assets/wolfram-CXhjyJun.js.gz +0 -0
  1155. package/dist/web/assets/xml-bWQJszMK.js.br +0 -0
  1156. package/dist/web/assets/xml-bWQJszMK.js.gz +0 -0
  1157. package/dist/web/assets/xsl-DTMc1Tsm.js.br +0 -0
  1158. package/dist/web/assets/xsl-DTMc1Tsm.js.gz +0 -0
  1159. package/dist/web/assets/yaml-4pzZq5KT.js.br +0 -0
  1160. package/dist/web/assets/yaml-4pzZq5KT.js.gz +0 -0
  1161. package/dist/web/assets/zenscript-BzHPI08Q.js.br +0 -0
  1162. package/dist/web/assets/zenscript-BzHPI08Q.js.gz +0 -0
  1163. package/dist/web/assets/zig-CBuhKUve.js.br +0 -0
  1164. package/dist/web/assets/zig-CBuhKUve.js.gz +0 -0
  1165. package/dist/web/index.html.br +0 -0
  1166. package/dist/web/index.html.gz +0 -0
  1167. package/dist/web/sw.js.br +0 -0
  1168. package/dist/web/sw.js.gz +0 -0
  1169. package/packages/vscode-compat/node_modules/.bin/tsc.bunx +0 -0
  1170. package/packages/vscode-compat/node_modules/.bin/tsc.exe +0 -0
  1171. package/packages/vscode-compat/node_modules/.bin/tsserver.bunx +0 -0
  1172. package/packages/vscode-compat/node_modules/.bin/tsserver.exe +0 -0
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Bn as r,Gn as i,Jn as a,O as o,S as s,j as c,qn as l,wr as u}from"./icons-DQjqk0lJ.js";import{n as d,s as f}from"./api-client-Jn3njtNw.js";import{n as p}from"./utils-Bmf_8h7Y.js";import"./portal-container-context-BarKmT4S.js";import"./context-menu-C6pIsf83.js";import{n as m}from"./use-is-mobile-TkcwP1Gx.js";import{t as h}from"./button-B9CTrsEf.js";import{a as ee,n as g,o as _,t as v}from"./dialog-B84_DJQ8.js";import{t as te}from"./mobile-bottom-sheet-C3TniEP-.js";import"./use-visual-viewport-Lp878uzs.js";import{t as y}from"./input-QNG_gTHh.js";import{t as b}from"./scroll-area-C0fQWNnx.js";import{$ as x,Ft as S,Ht as C,J as w,Nt as T,Pt as E,Q as D,Rt as O,X as k,Y as A,Z as j}from"./index-C3v3QRVR.js";var M=e(t(),1),N=1e4;function P(){let[e,t]=(0,M.useState)([]),[n,r]=(0,M.useState)(!0),i=(0,M.useCallback)(async()=>{try{t(await d.get(`/api/schedules`))}catch{}finally{r(!1)}},[]);return(0,M.useEffect)(()=>{i();let e=setInterval(()=>{document.visibilityState===`visible`&&i()},N);return()=>clearInterval(e)},[i]),{schedules:e,loading:n,refetch:i}}function F(e){let[t,n]=(0,M.useState)([]),[r,i]=(0,M.useState)(!1),a=(0,M.useCallback)(async()=>{if(e!=null){i(!0);try{n(await d.get(`/api/schedules/${e}/runs?limit=20`))}catch{n([])}finally{i(!1)}}},[e]);return(0,M.useEffect)(()=>{a()},[a]),{runs:t,loading:r,refetch:a}}var I=n(),ne={done:`bg-success/10 text-success`,error:`bg-error/10 text-error`,running:`bg-warning/10 text-warning`,skipped:`bg-muted text-muted-foreground`};function re({scheduleId:e}){let{runs:t,loading:n}=F(e);return n&&t.length===0?(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground py-1`,children:`Loading runs…`}):t.length===0?(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground py-1`,children:`No runs yet.`}):(0,I.jsx)(`div`,{className:`space-y-1`,children:t.map(e=>(0,I.jsx)(ie,{run:e},e.id))})}function L(e){return new Date(e.includes(`T`)?e:e.replace(` `,`T`)+`Z`)}function ie({run:e}){let[t,n]=(0,M.useState)(!1),r=!!(e.output_truncated||e.error),i=e.ended_at?`${Math.round((L(e.ended_at).getTime()-L(e.started_at).getTime())/1e3)}s`:`…`;return(0,I.jsxs)(`div`,{className:`rounded border border-border text-[11px]`,children:[(0,I.jsxs)(`button`,{type:`button`,onClick:()=>r&&n(!t),className:p(`w-full flex items-center gap-2 px-2 py-2 min-h-11 text-left`,r&&`cursor-pointer hover:bg-accent/30`),children:[(0,I.jsx)(`span`,{className:p(`rounded px-1.5 py-0.5 font-medium shrink-0`,ne[e.status]),children:e.status}),(0,I.jsxs)(`span`,{className:`text-muted-foreground truncate flex-1`,children:[L(e.started_at).toLocaleString(),` · `,i,e.cost_usd!=null&&` · $${e.cost_usd.toFixed(4)}`,e.context_window_pct!=null&&` · ctx ${e.context_window_pct}%`]})]}),t&&(0,I.jsxs)(`div`,{className:`px-2 pb-2 space-y-1`,children:[e.error&&(0,I.jsx)(`p`,{className:`text-error break-all`,children:e.error}),e.output_truncated&&(0,I.jsx)(`pre`,{className:`overflow-auto max-h-96 whitespace-pre-wrap break-all text-muted-foreground font-mono text-[10px]`,children:e.output_truncated})]})]})}function ae({schedule:e,onEdit:t,onChanged:n}){let[s,l]=(0,M.useState)(!1),[m,h]=(0,M.useState)(0);return(0,I.jsxs)(`div`,{className:`rounded-lg border border-border`,children:[(0,I.jsxs)(T,{children:[(0,I.jsx)(C,{asChild:!0,children:(0,I.jsxs)(`button`,{type:`button`,onClick:()=>l(!s),className:`w-full flex items-center gap-2 px-2.5 py-2.5 min-h-11 text-left cursor-pointer hover:bg-accent/30`,children:[s?(0,I.jsx)(o,{className:`size-3.5 shrink-0 text-muted-foreground`}):(0,I.jsx)(c,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,I.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,I.jsx)(`p`,{className:`text-xs font-medium truncate`,children:e.name}),(0,I.jsxs)(`p`,{className:`text-[11px] text-muted-foreground truncate`,children:[(0,I.jsx)(`span`,{className:`font-mono`,children:e.cron_expr}),` · `,e.next_fire_at&&e.enabled?`next ${new Date(e.next_fire_at).toLocaleString()}`:`—`]})]}),(0,I.jsx)(`span`,{className:p(`rounded px-1.5 py-0.5 text-[10px] font-medium shrink-0`,e.enabled?`bg-success/10 text-success`:`bg-muted text-muted-foreground`),children:e.enabled?`Enabled`:`Disabled`})]})}),(0,I.jsxs)(E,{children:[(0,I.jsxs)(S,{onClick:async()=>{try{let t=await d.post(`/api/schedules/${e.id}/run-now`);f.success(`Run #${t.runId} started${t.wasRunning?` (previous run still active)`:``}`),l(!0),h(e=>e+1)}catch(e){f.error(e instanceof Error?e.message:`Run failed`)}},children:[(0,I.jsx)(i,{className:`size-3.5`}),` Run now`]}),(0,I.jsxs)(S,{onClick:async()=>{try{await d.patch(`/api/schedules/${e.id}`,{enabled:!e.enabled}),n()}catch(e){f.error(e instanceof Error?e.message:`Update failed`)}},children:[(0,I.jsx)(a,{className:`size-3.5`}),` `,e.enabled?`Disable`:`Enable`]}),(0,I.jsxs)(S,{onClick:t,children:[(0,I.jsx)(r,{className:`size-3.5`}),` Edit`]}),(0,I.jsx)(O,{}),(0,I.jsxs)(S,{variant:`destructive`,onClick:async()=>{try{await d.del(`/api/schedules/${e.id}`),f.success(`Schedule deleted`),n()}catch(e){f.error(e instanceof Error?e.message:`Delete failed`)}},children:[(0,I.jsx)(u,{className:`size-3.5`}),` Delete`]})]})]}),s&&(0,I.jsxs)(`div`,{className:`px-2.5 pb-2.5 space-y-1.5`,children:[(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground break-all line-clamp-3`,children:e.prompt}),(0,I.jsx)(re,{scheduleId:e.id},m)]})]})}function R(e,t,n,r,i,a,o,s){return R.fromTZ(R.tp(e,t,n,r,i,a,o),s)}R.fromTZISO=(e,t,n)=>R.fromTZ(B(e,t),n),R.fromTZ=function(e,t){let n=new Date(Date.UTC(e.y,e.m-1,e.d,e.h,e.i,e.s)),r=z(e.tz,n),i=new Date(n.getTime()-r),a=z(e.tz,i);if(a-r===0)return i;{let r=new Date(n.getTime()-a),o=z(e.tz,r);if(o-a===0||!t&&o-a>0)return r;if(t)throw Error(`Invalid date passed to fromTZ()`);return i}},R.toTZ=function(e,t){let n=e.toLocaleString(`en-US`,{timeZone:t}).replace(/[\u202f]/,` `),r=new Date(n);return{y:r.getFullYear(),m:r.getMonth()+1,d:r.getDate(),h:r.getHours(),i:r.getMinutes(),s:r.getSeconds(),tz:t}},R.tp=(e,t,n,r,i,a,o)=>({y:e,m:t,d:n,h:r,i,s:a,tz:o});function z(e,t=new Date){let n=t.toLocaleString(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).split(` `).slice(-1)[0],r=t.toLocaleString(`en-US`).replace(/[\u202f]/,` `);return Date.parse(`${r} GMT`)-Date.parse(`${r} ${n}`)}function B(e,t){let n=new Date(Date.parse(e));if(isNaN(n))throw Error(`minitz: Invalid ISO8601 passed to parser.`);let r=e.substring(9);return e.includes(`Z`)||r.includes(`-`)||r.includes(`+`)?R.tp(n.getUTCFullYear(),n.getUTCMonth()+1,n.getUTCDate(),n.getUTCHours(),n.getUTCMinutes(),n.getUTCSeconds(),`Etc/UTC`):R.tp(n.getFullYear(),n.getMonth()+1,n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),t)}R.minitz=R;var V=32,H=31|V,U=[1,2,4,8,16],W=class{pattern;timezone;second;minute;hour;day;month;dayOfWeek;lastDayOfMonth;starDOM;starDOW;constructor(e,t){this.pattern=e,this.timezone=t,this.second=Array(60).fill(0),this.minute=Array(60).fill(0),this.hour=Array(24).fill(0),this.day=Array(31).fill(0),this.month=Array(12).fill(0),this.dayOfWeek=Array(7).fill(0),this.lastDayOfMonth=!1,this.starDOM=!1,this.starDOW=!1,this.parse()}parse(){if(!(typeof this.pattern==`string`||this.pattern instanceof String))throw TypeError(`CronPattern: Pattern has to be of type string.`);this.pattern.indexOf(`@`)>=0&&(this.pattern=this.handleNicknames(this.pattern).trim());let e=this.pattern.replace(/\s+/g,` `).split(` `);if(e.length<5||e.length>6)throw TypeError(`CronPattern: invalid configuration format ('`+this.pattern+`'), exactly five or six space separated parts are required.`);if(e.length===5&&e.unshift(`0`),e[3].indexOf(`L`)>=0&&(e[3]=e[3].replace(`L`,``),this.lastDayOfMonth=!0),e[3]==`*`&&(this.starDOM=!0),e[4].length>=3&&(e[4]=this.replaceAlphaMonths(e[4])),e[5].length>=3&&(e[5]=this.replaceAlphaDays(e[5])),e[5]==`*`&&(this.starDOW=!0),this.pattern.indexOf(`?`)>=0){let t=new q(new Date,this.timezone).getDate(!0);e[0]=e[0].replace(`?`,t.getSeconds().toString()),e[1]=e[1].replace(`?`,t.getMinutes().toString()),e[2]=e[2].replace(`?`,t.getHours().toString()),this.starDOM||(e[3]=e[3].replace(`?`,t.getDate().toString())),e[4]=e[4].replace(`?`,(t.getMonth()+1).toString()),this.starDOW||(e[5]=e[5].replace(`?`,t.getDay().toString()))}this.throwAtIllegalCharacters(e),this.partToArray(`second`,e[0],0,1),this.partToArray(`minute`,e[1],0,1),this.partToArray(`hour`,e[2],0,1),this.partToArray(`day`,e[3],-1,1),this.partToArray(`month`,e[4],-1,1),this.partToArray(`dayOfWeek`,e[5],0,H),this.dayOfWeek[7]&&(this.dayOfWeek[0]=this.dayOfWeek[7])}partToArray(e,t,n,r){let i=this[e],a=e===`day`&&this.lastDayOfMonth;if(t===``&&!a)throw TypeError(`CronPattern: configuration entry `+e+` (`+t+`) is empty, check for trailing spaces.`);if(t===`*`)return i.fill(r);let o=t.split(`,`);if(o.length>1)for(let t=0;t<o.length;t++)this.partToArray(e,o[t],n,r);else t.indexOf(`-`)!==-1&&t.indexOf(`/`)!==-1?this.handleRangeWithStepping(t,e,n,r):t.indexOf(`-`)===-1?t.indexOf(`/`)===-1?t!==``&&this.handleNumber(t,e,n,r):this.handleStepping(t,e,n,r):this.handleRange(t,e,n,r)}throwAtIllegalCharacters(e){for(let t=0;t<e.length;t++)if((t===5?/[^/*0-9,\-#L]+/:/[^/*0-9,-]+/).test(e[t]))throw TypeError(`CronPattern: configuration entry `+t+` (`+e[t]+`) contains illegal characters.`)}handleNumber(e,t,n,r){let i=this.extractNth(e,t),a=parseInt(i[0],10)+n;if(isNaN(a))throw TypeError(`CronPattern: `+t+` is not a number: '`+e+`'`);this.setPart(t,a,i[1]||r)}setPart(e,t,n){if(!Object.prototype.hasOwnProperty.call(this,e))throw TypeError(`CronPattern: Invalid part specified: `+e);if(e===`dayOfWeek`){if(t===7&&(t=0),t<0||t>6)throw RangeError(`CronPattern: Invalid value for dayOfWeek: `+t);this.setNthWeekdayOfMonth(t,n);return}if(e===`second`||e===`minute`){if(t<0||t>=60)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`hour`){if(t<0||t>=24)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`day`){if(t<0||t>=31)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`month`&&(t<0||t>=12))throw RangeError(`CronPattern: Invalid value for `+e+`: `+t);this[e][t]=n}handleRangeWithStepping(e,t,n,r){let i=this.extractNth(e,t),a=i[0].match(/^(\d+)-(\d+)\/(\d+)$/);if(a===null)throw TypeError(`CronPattern: Syntax error, illegal range with stepping: '`+e+`'`);let[,o,s,c]=a,l=parseInt(o,10)+n,u=parseInt(s,10)+n,d=parseInt(c,10);if(isNaN(l))throw TypeError(`CronPattern: Syntax error, illegal lower range (NaN)`);if(isNaN(u))throw TypeError(`CronPattern: Syntax error, illegal upper range (NaN)`);if(isNaN(d))throw TypeError(`CronPattern: Syntax error, illegal stepping: (NaN)`);if(d===0)throw TypeError(`CronPattern: Syntax error, illegal stepping: 0`);if(d>this[t].length)throw TypeError(`CronPattern: Syntax error, steps cannot be greater than maximum value of part (`+this[t].length+`)`);if(l>u)throw TypeError(`CronPattern: From value is larger than to value: '`+e+`'`);for(let e=l;e<=u;e+=d)this.setPart(t,e,i[1]||r)}extractNth(e,t){let n=e,r;if(n.includes(`#`)){if(t!==`dayOfWeek`)throw Error(`CronPattern: nth (#) only allowed in day-of-week field`);r=n.split(`#`)[1],n=n.split(`#`)[0]}return[n,r]}handleRange(e,t,n,r){let i=this.extractNth(e,t),a=i[0].split(`-`);if(a.length!==2)throw TypeError(`CronPattern: Syntax error, illegal range: '`+e+`'`);let o=parseInt(a[0],10)+n,s=parseInt(a[1],10)+n;if(isNaN(o))throw TypeError(`CronPattern: Syntax error, illegal lower range (NaN)`);if(isNaN(s))throw TypeError(`CronPattern: Syntax error, illegal upper range (NaN)`);if(o>s)throw TypeError(`CronPattern: From value is larger than to value: '`+e+`'`);for(let e=o;e<=s;e++)this.setPart(t,e,i[1]||r)}handleStepping(e,t,n,r){let i=this.extractNth(e,t),a=i[0].split(`/`);if(a.length!==2)throw TypeError(`CronPattern: Syntax error, illegal stepping: '`+e+`'`);a[0]===``&&(a[0]=`*`);let o=0;a[0]!==`*`&&(o=parseInt(a[0],10)+n);let s=parseInt(a[1],10);if(isNaN(s))throw TypeError(`CronPattern: Syntax error, illegal stepping: (NaN)`);if(s===0)throw TypeError(`CronPattern: Syntax error, illegal stepping: 0`);if(s>this[t].length)throw TypeError(`CronPattern: Syntax error, max steps for part is (`+this[t].length+`)`);for(let e=o;e<this[t].length;e+=s)this.setPart(t,e,i[1]||r)}replaceAlphaDays(e){return e.replace(/-sun/gi,`-7`).replace(/sun/gi,`0`).replace(/mon/gi,`1`).replace(/tue/gi,`2`).replace(/wed/gi,`3`).replace(/thu/gi,`4`).replace(/fri/gi,`5`).replace(/sat/gi,`6`)}replaceAlphaMonths(e){return e.replace(/jan/gi,`1`).replace(/feb/gi,`2`).replace(/mar/gi,`3`).replace(/apr/gi,`4`).replace(/may/gi,`5`).replace(/jun/gi,`6`).replace(/jul/gi,`7`).replace(/aug/gi,`8`).replace(/sep/gi,`9`).replace(/oct/gi,`10`).replace(/nov/gi,`11`).replace(/dec/gi,`12`)}handleNicknames(e){let t=e.trim().toLowerCase();return t===`@yearly`||t===`@annually`?`0 0 1 1 *`:t===`@monthly`?`0 0 1 * *`:t===`@weekly`?`0 0 * * 0`:t===`@daily`?`0 0 * * *`:t===`@hourly`?`0 * * * *`:e}setNthWeekdayOfMonth(e,t){if(typeof t!=`number`&&t===`L`)this.dayOfWeek[e]=this.dayOfWeek[e]|V;else if(t===H)this.dayOfWeek[e]=H;else if(t<6&&t>0)this.dayOfWeek[e]=this.dayOfWeek[e]|U[t-1];else throw TypeError(`CronPattern: nth weekday out of range, should be 1-5 or L. Value: ${t}, Type: ${typeof t}`)}},G=[31,28,31,30,31,30,31,31,30,31,30,31],K=[[`month`,`year`,0],[`day`,`month`,-1],[`hour`,`day`,0],[`minute`,`hour`,0],[`second`,`minute`,0]],q=class e{tz;ms;second;minute;hour;day;month;year;constructor(t,n){if(this.tz=n,t&&t instanceof Date)if(!isNaN(t))this.fromDate(t);else throw TypeError(`CronDate: Invalid date passed to CronDate constructor`);else if(t===void 0)this.fromDate(new Date);else if(t&&typeof t==`string`)this.fromString(t);else if(t instanceof e)this.fromCronDate(t);else throw TypeError(`CronDate: Invalid type (`+typeof t+`) passed to CronDate constructor`)}isNthWeekdayOfMonth(e,t,n,r){let i=new Date(Date.UTC(e,t,n)).getUTCDay(),a=0;for(let r=1;r<=n;r++)new Date(Date.UTC(e,t,r)).getUTCDay()===i&&a++;if(r&H&&U[a-1]&r)return!0;if(r&V){let r=new Date(Date.UTC(e,t+1,0)).getUTCDate();for(let a=n+1;a<=r;a++)if(new Date(Date.UTC(e,t,a)).getUTCDay()===i)return!1;return!0}return!1}fromDate(e){if(this.tz!==void 0)if(typeof this.tz==`number`)this.ms=e.getUTCMilliseconds(),this.second=e.getUTCSeconds(),this.minute=e.getUTCMinutes()+this.tz,this.hour=e.getUTCHours(),this.day=e.getUTCDate(),this.month=e.getUTCMonth(),this.year=e.getUTCFullYear(),this.apply();else{let t=R.toTZ(e,this.tz);this.ms=e.getMilliseconds(),this.second=t.s,this.minute=t.i,this.hour=t.h,this.day=t.d,this.month=t.m-1,this.year=t.y}else this.ms=e.getMilliseconds(),this.second=e.getSeconds(),this.minute=e.getMinutes(),this.hour=e.getHours(),this.day=e.getDate(),this.month=e.getMonth(),this.year=e.getFullYear()}fromCronDate(e){this.tz=e.tz,this.year=e.year,this.month=e.month,this.day=e.day,this.hour=e.hour,this.minute=e.minute,this.second=e.second,this.ms=e.ms}apply(){if(this.month>11||this.day>G[this.month]||this.hour>59||this.minute>59||this.second>59||this.hour<0||this.minute<0||this.second<0){let e=new Date(Date.UTC(this.year,this.month,this.day,this.hour,this.minute,this.second,this.ms));return this.ms=e.getUTCMilliseconds(),this.second=e.getUTCSeconds(),this.minute=e.getUTCMinutes(),this.hour=e.getUTCHours(),this.day=e.getUTCDate(),this.month=e.getUTCMonth(),this.year=e.getUTCFullYear(),!0}else return!1}fromString(e){if(typeof this.tz==`number`){let t=R.fromTZISO(e);this.ms=t.getUTCMilliseconds(),this.second=t.getUTCSeconds(),this.minute=t.getUTCMinutes(),this.hour=t.getUTCHours(),this.day=t.getUTCDate(),this.month=t.getUTCMonth(),this.year=t.getUTCFullYear(),this.apply()}else return this.fromDate(R.fromTZISO(e,this.tz))}findNext(e,t,n,r){let i=this[t],a;n.lastDayOfMonth&&(a=this.month===1?new Date(Date.UTC(this.year,this.month+1,0,0,0,0,0)).getUTCDate():G[this.month]);let o=!n.starDOW&&t==`day`?new Date(Date.UTC(this.year,this.month,1,0,0,0,0)).getUTCDay():void 0;for(let s=this[t]+r;s<n[t].length;s++){let c=n[t][s];if(t===`day`&&n.lastDayOfMonth&&s-r==a&&(c=1),t===`day`&&!n.starDOW){let t=n.dayOfWeek[(o+(s-r-1))%7];if(t&&t&H)t=this.isNthWeekdayOfMonth(this.year,this.month,s-r,t)?1:0;else if(t)throw Error(`CronDate: Invalid value for dayOfWeek encountered. ${t}`);e.legacyMode&&!n.starDOM?c||=t:c&&=t}if(c)return this[t]=s-r,i===this[t]?1:2}return 3}recurse(e,t,n){let r=this.findNext(t,K[n][0],e,K[n][2]);if(r>1){let i=n+1;for(;i<K.length;)this[K[i][0]]=-K[i][2],i++;if(r===3)return this[K[n][1]]++,this[K[n][0]]=-K[n][2],this.apply(),this.recurse(e,t,0);if(this.apply())return this.recurse(e,t,n-1)}return n+=1,n>=K.length?this:this.year>=3e3?null:this.recurse(e,t,n)}increment(e,t,n){return this.second+=t.interval!==void 0&&t.interval>1&&n?t.interval:1,this.ms=0,this.apply(),this.recurse(e,t,0)}getDate(e){return e||this.tz===void 0?new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.ms):typeof this.tz==`number`?new Date(Date.UTC(this.year,this.month,this.day,this.hour,this.minute-this.tz,this.second,this.ms)):R.fromTZ(R.tp(this.year,this.month+1,this.day,this.hour,this.minute,this.second,this.tz),!1)}getTime(){return this.getDate(!1).getTime()}};function oe(e){if(e===void 0&&(e={}),delete e.name,e.legacyMode=e.legacyMode===void 0?!0:e.legacyMode,e.paused=e.paused===void 0?!1:e.paused,e.maxRuns=e.maxRuns===void 0?1/0:e.maxRuns,e.catch=e.catch===void 0?!1:e.catch,e.interval=e.interval===void 0?0:parseInt(e.interval.toString(),10),e.utcOffset=e.utcOffset===void 0?void 0:parseInt(e.utcOffset.toString(),10),e.unref=e.unref===void 0?!1:e.unref,e.startAt&&=new q(e.startAt,e.timezone),e.stopAt&&=new q(e.stopAt,e.timezone),e.interval!==null){if(isNaN(e.interval))throw Error(`CronOptions: Supplied value for interval is not a number`);if(e.interval<0)throw Error(`CronOptions: Supplied value for interval can not be negative`)}if(e.utcOffset!==void 0){if(isNaN(e.utcOffset))throw Error(`CronOptions: Invalid value passed for utcOffset, should be number representing minutes offset from UTC.`);if(e.utcOffset<-870||e.utcOffset>870)throw Error(`CronOptions: utcOffset out of bounds.`);if(e.utcOffset!==void 0&&e.timezone)throw Error(`CronOptions: Combining 'utcOffset' with 'timezone' is not allowed.`)}if(e.unref!==!0&&e.unref!==!1)throw Error(`CronOptions: Unref should be either true, false or undefined(false).`);return e}function J(e){return Object.prototype.toString.call(e)===`[object Function]`||typeof e==`function`||e instanceof Function}function se(e){return J(e)}function ce(e){typeof Deno<`u`&&typeof Deno.unrefTimer<`u`?Deno.unrefTimer(e):e&&typeof e.unref<`u`&&e.unref()}var Y=30*1e3,X=[],Z=class{name;options;_states;fn;constructor(e,t,n){let r,i;if(J(t))i=t;else if(typeof t==`object`)r=t;else if(t!==void 0)throw Error(`Cron: Invalid argument passed for optionsIn. Should be one of function, or object (options).`);if(J(n))i=n;else if(typeof n==`object`)r=n;else if(n!==void 0)throw Error(`Cron: Invalid argument passed for funcIn. Should be one of function, or object (options).`);if(this.name=r?.name,this.options=oe(r),this._states={kill:!1,blocking:!1,previousRun:void 0,currentRun:void 0,once:void 0,currentTimeout:void 0,maxRuns:r?r.maxRuns:void 0,paused:r?r.paused:!1,pattern:new W(`* * * * *`)},e&&(e instanceof Date||typeof e==`string`&&e.indexOf(`:`)>0)?this._states.once=new q(e,this.options.timezone||this.options.utcOffset):this._states.pattern=new W(e,this.options.timezone),this.name){if(X.find(e=>e.name===this.name))throw Error(`Cron: Tried to initialize new named job '`+this.name+`', but name already taken.`);X.push(this)}return i!==void 0&&se(i)&&(this.fn=i,this.schedule()),this}nextRun(e){let t=this._next(e);return t?t.getDate(!1):null}nextRuns(e,t){this._states.maxRuns!==void 0&&e>this._states.maxRuns&&(e=this._states.maxRuns);let n=[],r=t||this._states.currentRun||void 0;for(;e--&&(r=this.nextRun(r));)n.push(r);return n}getPattern(){return this._states.pattern?this._states.pattern.pattern:void 0}isRunning(){let e=this.nextRun(this._states.currentRun),t=!this._states.paused,n=this.fn!==void 0,r=!this._states.kill;return t&&n&&r&&e!==null}isStopped(){return this._states.kill}isBusy(){return this._states.blocking}currentRun(){return this._states.currentRun?this._states.currentRun.getDate():null}previousRun(){return this._states.previousRun?this._states.previousRun.getDate():null}msToNext(e){let t=this._next(e);return t?e instanceof q||e instanceof Date?t.getTime()-e.getTime():t.getTime()-new q(e).getTime():null}stop(){this._states.kill=!0,this._states.currentTimeout&&clearTimeout(this._states.currentTimeout);let e=X.indexOf(this);e>=0&&X.splice(e,1)}pause(){return this._states.paused=!0,!this._states.kill}resume(){return this._states.paused=!1,!this._states.kill}schedule(e){if(e&&this.fn)throw Error(`Cron: It is not allowed to schedule two functions using the same Croner instance.`);e&&(this.fn=e);let t=this.msToNext(),n=this.nextRun(this._states.currentRun);return t==null||isNaN(t)||n===null?this:(t>Y&&(t=Y),this._states.currentTimeout=setTimeout(()=>this._checkTrigger(n),t),this._states.currentTimeout&&this.options.unref&&ce(this._states.currentTimeout),this)}async _trigger(e){if(this._states.blocking=!0,this._states.currentRun=new q(void 0,this.options.timezone||this.options.utcOffset),this.options.catch)try{this.fn!==void 0&&await this.fn(this,this.options.context)}catch(e){J(this.options.catch)&&this.options.catch(e,this)}else this.fn!==void 0&&await this.fn(this,this.options.context);this._states.previousRun=new q(e,this.options.timezone||this.options.utcOffset),this._states.blocking=!1}async trigger(){await this._trigger()}runsLeft(){return this._states.maxRuns}_checkTrigger(e){let t=new Date,n=!this._states.paused&&t.getTime()>=e.getTime(),r=this._states.blocking&&this.options.protect;n&&!r?(this._states.maxRuns!==void 0&&this._states.maxRuns--,this._trigger()):n&&r&&J(this.options.protect)&&setTimeout(()=>this.options.protect(this),0),this.schedule()}_next(e){let t=!!(e||this._states.currentRun),n=!1;!e&&this.options.startAt&&this.options.interval&&([e,t]=this._calculatePreviousRun(e,t),n=!e),e=new q(e,this.options.timezone||this.options.utcOffset),this.options.startAt&&e&&e.getTime()<this.options.startAt.getTime()&&(e=this.options.startAt);let r=this._states.once||new q(e,this.options.timezone||this.options.utcOffset);return!n&&r!==this._states.once&&(r=r.increment(this._states.pattern,this.options,t)),this._states.once&&this._states.once.getTime()<=e.getTime()||r===null||this._states.maxRuns!==void 0&&this._states.maxRuns<=0||this._states.kill||this.options.stopAt&&r.getTime()>=this.options.stopAt.getTime()?null:r}_calculatePreviousRun(e,t){let n=new q(void 0,this.options.timezone||this.options.utcOffset),r=e;if(this.options.startAt.getTime()<=n.getTime()){r=this.options.startAt;let e=r.getTime()+this.options.interval*1e3;for(;e<=n.getTime();)r=new q(r,this.options.timezone||this.options.utcOffset).increment(this._states.pattern,this.options,!0),e=r.getTime()+this.options.interval*1e3;t=!0}return r===null&&(r=void 0),[r,t]}},le=[`bypassPermissions`,`acceptEdits`,`default`,`plan`];function ue({open:e,schedule:t,onClose:n,onSaved:r}){let i=m(),[a,o]=(0,M.useState)(()=>$(t)),[s,c]=(0,M.useState)([]),[l,u]=(0,M.useState)(!1),[f,p]=(0,M.useState)(null);(0,M.useEffect)(()=>{e&&(o($(t)),p(null),d.get(`/api/projects`).then(c).catch(()=>c([])))},[e,t]);let S=(0,M.useMemo)(()=>{try{return new Z(a.cron_expr).nextRuns(3).map(e=>e.toLocaleString())}catch{return null}},[a.cron_expr]),C=(e,t)=>o(n=>({...n,[e]:t})),T=(0,I.jsxs)(`div`,{className:`space-y-3 px-1`,children:[(0,I.jsx)(Q,{label:`Name`,children:(0,I.jsx)(y,{value:a.name,onChange:e=>C(`name`,e.target.value),placeholder:`Morning PR review`,className:`h-11 md:h-9 text-xs`})}),(0,I.jsxs)(Q,{label:`Cron expression (local timezone)`,children:[(0,I.jsx)(y,{value:a.cron_expr,onChange:e=>C(`cron_expr`,e.target.value),placeholder:`0 7 * * *`,className:`h-11 md:h-9 text-xs font-mono`}),(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:S?`Next: ${S.join(` · `)}`:`—`})]}),(0,I.jsx)(Q,{label:`Project`,children:(0,I.jsxs)(w,{value:a.project_path,onValueChange:e=>C(`project_path`,e),children:[(0,I.jsx)(j,{className:`w-full min-h-11 md:min-h-9 text-xs`,children:(0,I.jsx)(D,{placeholder:`Select project`})}),(0,I.jsx)(A,{children:s.map(e=>(0,I.jsx)(k,{value:e.path,children:e.name},e.path))})]})}),(0,I.jsx)(Q,{label:`Prompt (do not embed secrets)`,children:(0,I.jsx)(`textarea`,{value:a.prompt,onChange:e=>C(`prompt`,e.target.value),placeholder:`Check open PRs and summarize. If nothing to do, finish immediately.`,rows:4,className:`w-full rounded-md border border-input bg-transparent px-3 py-2 text-xs outline-none focus-visible:ring-2 focus-visible:ring-ring/50 resize-y`})}),(0,I.jsxs)(Q,{label:`Permission mode`,children:[(0,I.jsxs)(w,{value:a.permission_mode,onValueChange:e=>C(`permission_mode`,e),children:[(0,I.jsx)(j,{className:`w-full min-h-11 md:min-h-9 text-xs`,children:(0,I.jsx)(D,{})}),(0,I.jsx)(A,{children:le.map(e=>(0,I.jsx)(k,{value:e,children:e},e))})]}),a.permission_mode===`bypassPermissions`&&(0,I.jsx)(`p`,{className:`text-[11px] text-warning`,children:`⚠ Unattended writes — agent can modify code and run commands`})]}),(0,I.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,I.jsx)(Q,{label:`Max turns (optional)`,children:(0,I.jsx)(y,{type:`number`,min:1,value:a.max_turns,onChange:e=>C(`max_turns`,e.target.value),placeholder:`∞`,className:`h-11 md:h-9 text-xs`})}),(0,I.jsx)(Q,{label:`Timeout (ms)`,children:(0,I.jsx)(y,{type:`number`,min:1e4,value:a.timeout_ms,onChange:e=>C(`timeout_ms`,e.target.value),className:`h-11 md:h-9 text-xs`})})]}),(0,I.jsxs)(`div`,{className:`flex items-center justify-between min-h-11`,children:[(0,I.jsx)(`span`,{className:`text-xs font-medium`,children:`Enabled`}),(0,I.jsx)(x,{checked:a.enabled,onCheckedChange:e=>C(`enabled`,e)})]}),f&&(0,I.jsx)(`p`,{className:`text-[11px] text-error`,children:f}),(0,I.jsx)(h,{onClick:async()=>{if(!a.name.trim()||!a.project_path||!a.prompt.trim()){p(`Name, project, and prompt are required`);return}if(!S){p(`Invalid cron expression`);return}u(!0),p(null);try{let e={name:a.name.trim(),cron_expr:a.cron_expr,project_path:a.project_path,prompt:a.prompt,permission_mode:a.permission_mode,max_turns:a.max_turns===``?null:Number(a.max_turns),timeout_ms:Number(a.timeout_ms)||18e5,enabled:a.enabled};t?await d.patch(`/api/schedules/${t.id}`,e):await d.post(`/api/schedules`,e),r(),n()}catch(e){p(e instanceof Error?e.message:String(e))}finally{u(!1)}},disabled:l,className:`w-full min-h-11 cursor-pointer`,children:l?`Saving…`:t?`Save changes`:`Create schedule`})]}),E=t?`Edit: ${t.name}`:`New schedule`;return i?(0,I.jsxs)(te,{open:e,onClose:n,className:`max-h-[85vh] flex flex-col`,children:[(0,I.jsx)(`p`,{className:`text-sm font-semibold text-center pb-2`,children:E}),(0,I.jsx)(b,{className:`flex-1 min-h-0 px-3 pb-3`,children:T})]}):(0,I.jsx)(v,{open:e,onOpenChange:e=>!e&&n(),children:(0,I.jsxs)(g,{className:`max-w-md max-h-[85vh] overflow-y-auto`,children:[(0,I.jsx)(ee,{children:(0,I.jsx)(_,{className:`text-sm`,children:E})}),T]})})}function Q({label:e,children:t}){return(0,I.jsxs)(`div`,{className:`space-y-1`,children:[(0,I.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:e}),t]})}function $(e){return{name:e?.name??``,cron_expr:e?.cron_expr??`0 7 * * *`,project_path:e?.project_path??``,prompt:e?.prompt??``,permission_mode:e?.permission_mode??`bypassPermissions`,max_turns:e?.max_turns==null?``:String(e.max_turns),timeout_ms:String(e?.timeout_ms??18e5),enabled:e?!!e.enabled:!0}}function de(){let{schedules:e,loading:t,refetch:n}=P(),[r,i]=(0,M.useState)(!1),[a,o]=(0,M.useState)(null),c=()=>{o(null),i(!0)},u=e=>{o(e),i(!0)};return(0,I.jsxs)(`div`,{className:`space-y-3`,children:[(0,I.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`Periodically wake Claude to work on a project unattended.`}),(0,I.jsxs)(h,{size:`sm`,onClick:c,className:`min-h-11 md:min-h-8 text-xs gap-1 cursor-pointer shrink-0`,children:[(0,I.jsx)(l,{className:`size-3.5`}),` Add`]})]}),t&&e.length===0?(0,I.jsx)(`p`,{className:`text-xs text-muted-foreground py-4 text-center`,children:`Loading…`}):e.length===0?(0,I.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-8 text-center`,children:[(0,I.jsx)(s,{className:`size-8 text-muted-foreground/50`}),(0,I.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No schedules yet. Add one to run Claude periodically.`}),(0,I.jsxs)(h,{size:`sm`,onClick:c,className:`min-h-11 text-xs gap-1 cursor-pointer`,children:[(0,I.jsx)(l,{className:`size-3.5`}),` Add schedule`]})]}):(0,I.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,I.jsx)(ae,{schedule:e,onEdit:()=>u(e),onChanged:n},e.id))}),(0,I.jsx)(ue,{open:r,schedule:a,onClose:()=>i(!1),onSaved:n})]})}export{de as SchedulesSettingsSection};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Bn as r,Gn as i,Jn as a,O as o,S as s,j as c,qn as l,wr as u}from"./icons-DQjqk0lJ.js";import{n as d,s as f}from"./api-client-Jn3njtNw.js";import{n as p}from"./utils-Bmf_8h7Y.js";import"./portal-container-context-BarKmT4S.js";import"./context-menu-C6pIsf83.js";import{n as m}from"./use-is-mobile-TkcwP1Gx.js";import{t as h}from"./button-B9CTrsEf.js";import{a as ee,n as g,o as _,t as v}from"./dialog-B84_DJQ8.js";import{t as te}from"./mobile-bottom-sheet-C3TniEP-.js";import"./use-visual-viewport-Lp878uzs.js";import{t as y}from"./input-QNG_gTHh.js";import{t as b}from"./scroll-area-C0fQWNnx.js";import{$ as x,Ft as S,Ht as C,J as w,Nt as T,Pt as E,Q as D,Rt as O,X as k,Y as A,Z as j}from"./index-BoaecXhu.js";var M=e(t(),1),N=1e4;function P(){let[e,t]=(0,M.useState)([]),[n,r]=(0,M.useState)(!0),i=(0,M.useCallback)(async()=>{try{t(await d.get(`/api/schedules`))}catch{}finally{r(!1)}},[]);return(0,M.useEffect)(()=>{i();let e=setInterval(()=>{document.visibilityState===`visible`&&i()},N);return()=>clearInterval(e)},[i]),{schedules:e,loading:n,refetch:i}}function F(e){let[t,n]=(0,M.useState)([]),[r,i]=(0,M.useState)(!1),a=(0,M.useCallback)(async()=>{if(e!=null){i(!0);try{n(await d.get(`/api/schedules/${e}/runs?limit=20`))}catch{n([])}finally{i(!1)}}},[e]);return(0,M.useEffect)(()=>{a()},[a]),{runs:t,loading:r,refetch:a}}var I=n(),ne={done:`bg-success/10 text-success`,error:`bg-error/10 text-error`,running:`bg-warning/10 text-warning`,skipped:`bg-muted text-muted-foreground`};function re({scheduleId:e}){let{runs:t,loading:n}=F(e);return n&&t.length===0?(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground py-1`,children:`Loading runs…`}):t.length===0?(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground py-1`,children:`No runs yet.`}):(0,I.jsx)(`div`,{className:`space-y-1`,children:t.map(e=>(0,I.jsx)(ie,{run:e},e.id))})}function L(e){return new Date(e.includes(`T`)?e:e.replace(` `,`T`)+`Z`)}function ie({run:e}){let[t,n]=(0,M.useState)(!1),r=!!(e.output_truncated||e.error),i=e.ended_at?`${Math.round((L(e.ended_at).getTime()-L(e.started_at).getTime())/1e3)}s`:`…`;return(0,I.jsxs)(`div`,{className:`rounded border border-border text-[11px]`,children:[(0,I.jsxs)(`button`,{type:`button`,onClick:()=>r&&n(!t),className:p(`w-full flex items-center gap-2 px-2 py-2 min-h-11 text-left`,r&&`cursor-pointer hover:bg-accent/30`),children:[(0,I.jsx)(`span`,{className:p(`rounded px-1.5 py-0.5 font-medium shrink-0`,ne[e.status]),children:e.status}),(0,I.jsxs)(`span`,{className:`text-muted-foreground truncate flex-1`,children:[L(e.started_at).toLocaleString(),` · `,i,e.cost_usd!=null&&` · $${e.cost_usd.toFixed(4)}`,e.context_window_pct!=null&&` · ctx ${e.context_window_pct}%`]})]}),t&&(0,I.jsxs)(`div`,{className:`px-2 pb-2 space-y-1`,children:[e.error&&(0,I.jsx)(`p`,{className:`text-error break-all`,children:e.error}),e.output_truncated&&(0,I.jsx)(`pre`,{className:`overflow-auto max-h-96 whitespace-pre-wrap break-all text-muted-foreground font-mono text-[10px]`,children:e.output_truncated})]})]})}function ae({schedule:e,onEdit:t,onChanged:n}){let[s,l]=(0,M.useState)(!1),[m,h]=(0,M.useState)(0);return(0,I.jsxs)(`div`,{className:`rounded-lg border border-border`,children:[(0,I.jsxs)(T,{children:[(0,I.jsx)(C,{asChild:!0,children:(0,I.jsxs)(`button`,{type:`button`,onClick:()=>l(!s),className:`w-full flex items-center gap-2 px-2.5 py-2.5 min-h-11 text-left cursor-pointer hover:bg-accent/30`,children:[s?(0,I.jsx)(o,{className:`size-3.5 shrink-0 text-muted-foreground`}):(0,I.jsx)(c,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,I.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,I.jsx)(`p`,{className:`text-xs font-medium truncate`,children:e.name}),(0,I.jsxs)(`p`,{className:`text-[11px] text-muted-foreground truncate`,children:[(0,I.jsx)(`span`,{className:`font-mono`,children:e.cron_expr}),` · `,e.next_fire_at&&e.enabled?`next ${new Date(e.next_fire_at).toLocaleString()}`:`—`]})]}),(0,I.jsx)(`span`,{className:p(`rounded px-1.5 py-0.5 text-[10px] font-medium shrink-0`,e.enabled?`bg-success/10 text-success`:`bg-muted text-muted-foreground`),children:e.enabled?`Enabled`:`Disabled`})]})}),(0,I.jsxs)(E,{children:[(0,I.jsxs)(S,{onClick:async()=>{try{let t=await d.post(`/api/schedules/${e.id}/run-now`);f.success(`Run #${t.runId} started${t.wasRunning?` (previous run still active)`:``}`),l(!0),h(e=>e+1)}catch(e){f.error(e instanceof Error?e.message:`Run failed`)}},children:[(0,I.jsx)(i,{className:`size-3.5`}),` Run now`]}),(0,I.jsxs)(S,{onClick:async()=>{try{await d.patch(`/api/schedules/${e.id}`,{enabled:!e.enabled}),n()}catch(e){f.error(e instanceof Error?e.message:`Update failed`)}},children:[(0,I.jsx)(a,{className:`size-3.5`}),` `,e.enabled?`Disable`:`Enable`]}),(0,I.jsxs)(S,{onClick:t,children:[(0,I.jsx)(r,{className:`size-3.5`}),` Edit`]}),(0,I.jsx)(O,{}),(0,I.jsxs)(S,{variant:`destructive`,onClick:async()=>{try{await d.del(`/api/schedules/${e.id}`),f.success(`Schedule deleted`),n()}catch(e){f.error(e instanceof Error?e.message:`Delete failed`)}},children:[(0,I.jsx)(u,{className:`size-3.5`}),` Delete`]})]})]}),s&&(0,I.jsxs)(`div`,{className:`px-2.5 pb-2.5 space-y-1.5`,children:[(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground break-all line-clamp-3`,children:e.prompt}),(0,I.jsx)(re,{scheduleId:e.id},m)]})]})}function R(e,t,n,r,i,a,o,s){return R.fromTZ(R.tp(e,t,n,r,i,a,o),s)}R.fromTZISO=(e,t,n)=>R.fromTZ(B(e,t),n),R.fromTZ=function(e,t){let n=new Date(Date.UTC(e.y,e.m-1,e.d,e.h,e.i,e.s)),r=z(e.tz,n),i=new Date(n.getTime()-r),a=z(e.tz,i);if(a-r===0)return i;{let r=new Date(n.getTime()-a),o=z(e.tz,r);if(o-a===0||!t&&o-a>0)return r;if(t)throw Error(`Invalid date passed to fromTZ()`);return i}},R.toTZ=function(e,t){let n=e.toLocaleString(`en-US`,{timeZone:t}).replace(/[\u202f]/,` `),r=new Date(n);return{y:r.getFullYear(),m:r.getMonth()+1,d:r.getDate(),h:r.getHours(),i:r.getMinutes(),s:r.getSeconds(),tz:t}},R.tp=(e,t,n,r,i,a,o)=>({y:e,m:t,d:n,h:r,i,s:a,tz:o});function z(e,t=new Date){let n=t.toLocaleString(`en-US`,{timeZone:e,timeZoneName:`shortOffset`}).split(` `).slice(-1)[0],r=t.toLocaleString(`en-US`).replace(/[\u202f]/,` `);return Date.parse(`${r} GMT`)-Date.parse(`${r} ${n}`)}function B(e,t){let n=new Date(Date.parse(e));if(isNaN(n))throw Error(`minitz: Invalid ISO8601 passed to parser.`);let r=e.substring(9);return e.includes(`Z`)||r.includes(`-`)||r.includes(`+`)?R.tp(n.getUTCFullYear(),n.getUTCMonth()+1,n.getUTCDate(),n.getUTCHours(),n.getUTCMinutes(),n.getUTCSeconds(),`Etc/UTC`):R.tp(n.getFullYear(),n.getMonth()+1,n.getDate(),n.getHours(),n.getMinutes(),n.getSeconds(),t)}R.minitz=R;var V=32,H=31|V,U=[1,2,4,8,16],W=class{pattern;timezone;second;minute;hour;day;month;dayOfWeek;lastDayOfMonth;starDOM;starDOW;constructor(e,t){this.pattern=e,this.timezone=t,this.second=Array(60).fill(0),this.minute=Array(60).fill(0),this.hour=Array(24).fill(0),this.day=Array(31).fill(0),this.month=Array(12).fill(0),this.dayOfWeek=Array(7).fill(0),this.lastDayOfMonth=!1,this.starDOM=!1,this.starDOW=!1,this.parse()}parse(){if(!(typeof this.pattern==`string`||this.pattern instanceof String))throw TypeError(`CronPattern: Pattern has to be of type string.`);this.pattern.indexOf(`@`)>=0&&(this.pattern=this.handleNicknames(this.pattern).trim());let e=this.pattern.replace(/\s+/g,` `).split(` `);if(e.length<5||e.length>6)throw TypeError(`CronPattern: invalid configuration format ('`+this.pattern+`'), exactly five or six space separated parts are required.`);if(e.length===5&&e.unshift(`0`),e[3].indexOf(`L`)>=0&&(e[3]=e[3].replace(`L`,``),this.lastDayOfMonth=!0),e[3]==`*`&&(this.starDOM=!0),e[4].length>=3&&(e[4]=this.replaceAlphaMonths(e[4])),e[5].length>=3&&(e[5]=this.replaceAlphaDays(e[5])),e[5]==`*`&&(this.starDOW=!0),this.pattern.indexOf(`?`)>=0){let t=new q(new Date,this.timezone).getDate(!0);e[0]=e[0].replace(`?`,t.getSeconds().toString()),e[1]=e[1].replace(`?`,t.getMinutes().toString()),e[2]=e[2].replace(`?`,t.getHours().toString()),this.starDOM||(e[3]=e[3].replace(`?`,t.getDate().toString())),e[4]=e[4].replace(`?`,(t.getMonth()+1).toString()),this.starDOW||(e[5]=e[5].replace(`?`,t.getDay().toString()))}this.throwAtIllegalCharacters(e),this.partToArray(`second`,e[0],0,1),this.partToArray(`minute`,e[1],0,1),this.partToArray(`hour`,e[2],0,1),this.partToArray(`day`,e[3],-1,1),this.partToArray(`month`,e[4],-1,1),this.partToArray(`dayOfWeek`,e[5],0,H),this.dayOfWeek[7]&&(this.dayOfWeek[0]=this.dayOfWeek[7])}partToArray(e,t,n,r){let i=this[e],a=e===`day`&&this.lastDayOfMonth;if(t===``&&!a)throw TypeError(`CronPattern: configuration entry `+e+` (`+t+`) is empty, check for trailing spaces.`);if(t===`*`)return i.fill(r);let o=t.split(`,`);if(o.length>1)for(let t=0;t<o.length;t++)this.partToArray(e,o[t],n,r);else t.indexOf(`-`)!==-1&&t.indexOf(`/`)!==-1?this.handleRangeWithStepping(t,e,n,r):t.indexOf(`-`)===-1?t.indexOf(`/`)===-1?t!==``&&this.handleNumber(t,e,n,r):this.handleStepping(t,e,n,r):this.handleRange(t,e,n,r)}throwAtIllegalCharacters(e){for(let t=0;t<e.length;t++)if((t===5?/[^/*0-9,\-#L]+/:/[^/*0-9,-]+/).test(e[t]))throw TypeError(`CronPattern: configuration entry `+t+` (`+e[t]+`) contains illegal characters.`)}handleNumber(e,t,n,r){let i=this.extractNth(e,t),a=parseInt(i[0],10)+n;if(isNaN(a))throw TypeError(`CronPattern: `+t+` is not a number: '`+e+`'`);this.setPart(t,a,i[1]||r)}setPart(e,t,n){if(!Object.prototype.hasOwnProperty.call(this,e))throw TypeError(`CronPattern: Invalid part specified: `+e);if(e===`dayOfWeek`){if(t===7&&(t=0),t<0||t>6)throw RangeError(`CronPattern: Invalid value for dayOfWeek: `+t);this.setNthWeekdayOfMonth(t,n);return}if(e===`second`||e===`minute`){if(t<0||t>=60)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`hour`){if(t<0||t>=24)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`day`){if(t<0||t>=31)throw RangeError(`CronPattern: Invalid value for `+e+`: `+t)}else if(e===`month`&&(t<0||t>=12))throw RangeError(`CronPattern: Invalid value for `+e+`: `+t);this[e][t]=n}handleRangeWithStepping(e,t,n,r){let i=this.extractNth(e,t),a=i[0].match(/^(\d+)-(\d+)\/(\d+)$/);if(a===null)throw TypeError(`CronPattern: Syntax error, illegal range with stepping: '`+e+`'`);let[,o,s,c]=a,l=parseInt(o,10)+n,u=parseInt(s,10)+n,d=parseInt(c,10);if(isNaN(l))throw TypeError(`CronPattern: Syntax error, illegal lower range (NaN)`);if(isNaN(u))throw TypeError(`CronPattern: Syntax error, illegal upper range (NaN)`);if(isNaN(d))throw TypeError(`CronPattern: Syntax error, illegal stepping: (NaN)`);if(d===0)throw TypeError(`CronPattern: Syntax error, illegal stepping: 0`);if(d>this[t].length)throw TypeError(`CronPattern: Syntax error, steps cannot be greater than maximum value of part (`+this[t].length+`)`);if(l>u)throw TypeError(`CronPattern: From value is larger than to value: '`+e+`'`);for(let e=l;e<=u;e+=d)this.setPart(t,e,i[1]||r)}extractNth(e,t){let n=e,r;if(n.includes(`#`)){if(t!==`dayOfWeek`)throw Error(`CronPattern: nth (#) only allowed in day-of-week field`);r=n.split(`#`)[1],n=n.split(`#`)[0]}return[n,r]}handleRange(e,t,n,r){let i=this.extractNth(e,t),a=i[0].split(`-`);if(a.length!==2)throw TypeError(`CronPattern: Syntax error, illegal range: '`+e+`'`);let o=parseInt(a[0],10)+n,s=parseInt(a[1],10)+n;if(isNaN(o))throw TypeError(`CronPattern: Syntax error, illegal lower range (NaN)`);if(isNaN(s))throw TypeError(`CronPattern: Syntax error, illegal upper range (NaN)`);if(o>s)throw TypeError(`CronPattern: From value is larger than to value: '`+e+`'`);for(let e=o;e<=s;e++)this.setPart(t,e,i[1]||r)}handleStepping(e,t,n,r){let i=this.extractNth(e,t),a=i[0].split(`/`);if(a.length!==2)throw TypeError(`CronPattern: Syntax error, illegal stepping: '`+e+`'`);a[0]===``&&(a[0]=`*`);let o=0;a[0]!==`*`&&(o=parseInt(a[0],10)+n);let s=parseInt(a[1],10);if(isNaN(s))throw TypeError(`CronPattern: Syntax error, illegal stepping: (NaN)`);if(s===0)throw TypeError(`CronPattern: Syntax error, illegal stepping: 0`);if(s>this[t].length)throw TypeError(`CronPattern: Syntax error, max steps for part is (`+this[t].length+`)`);for(let e=o;e<this[t].length;e+=s)this.setPart(t,e,i[1]||r)}replaceAlphaDays(e){return e.replace(/-sun/gi,`-7`).replace(/sun/gi,`0`).replace(/mon/gi,`1`).replace(/tue/gi,`2`).replace(/wed/gi,`3`).replace(/thu/gi,`4`).replace(/fri/gi,`5`).replace(/sat/gi,`6`)}replaceAlphaMonths(e){return e.replace(/jan/gi,`1`).replace(/feb/gi,`2`).replace(/mar/gi,`3`).replace(/apr/gi,`4`).replace(/may/gi,`5`).replace(/jun/gi,`6`).replace(/jul/gi,`7`).replace(/aug/gi,`8`).replace(/sep/gi,`9`).replace(/oct/gi,`10`).replace(/nov/gi,`11`).replace(/dec/gi,`12`)}handleNicknames(e){let t=e.trim().toLowerCase();return t===`@yearly`||t===`@annually`?`0 0 1 1 *`:t===`@monthly`?`0 0 1 * *`:t===`@weekly`?`0 0 * * 0`:t===`@daily`?`0 0 * * *`:t===`@hourly`?`0 * * * *`:e}setNthWeekdayOfMonth(e,t){if(typeof t!=`number`&&t===`L`)this.dayOfWeek[e]=this.dayOfWeek[e]|V;else if(t===H)this.dayOfWeek[e]=H;else if(t<6&&t>0)this.dayOfWeek[e]=this.dayOfWeek[e]|U[t-1];else throw TypeError(`CronPattern: nth weekday out of range, should be 1-5 or L. Value: ${t}, Type: ${typeof t}`)}},G=[31,28,31,30,31,30,31,31,30,31,30,31],K=[[`month`,`year`,0],[`day`,`month`,-1],[`hour`,`day`,0],[`minute`,`hour`,0],[`second`,`minute`,0]],q=class e{tz;ms;second;minute;hour;day;month;year;constructor(t,n){if(this.tz=n,t&&t instanceof Date)if(!isNaN(t))this.fromDate(t);else throw TypeError(`CronDate: Invalid date passed to CronDate constructor`);else if(t===void 0)this.fromDate(new Date);else if(t&&typeof t==`string`)this.fromString(t);else if(t instanceof e)this.fromCronDate(t);else throw TypeError(`CronDate: Invalid type (`+typeof t+`) passed to CronDate constructor`)}isNthWeekdayOfMonth(e,t,n,r){let i=new Date(Date.UTC(e,t,n)).getUTCDay(),a=0;for(let r=1;r<=n;r++)new Date(Date.UTC(e,t,r)).getUTCDay()===i&&a++;if(r&H&&U[a-1]&r)return!0;if(r&V){let r=new Date(Date.UTC(e,t+1,0)).getUTCDate();for(let a=n+1;a<=r;a++)if(new Date(Date.UTC(e,t,a)).getUTCDay()===i)return!1;return!0}return!1}fromDate(e){if(this.tz!==void 0)if(typeof this.tz==`number`)this.ms=e.getUTCMilliseconds(),this.second=e.getUTCSeconds(),this.minute=e.getUTCMinutes()+this.tz,this.hour=e.getUTCHours(),this.day=e.getUTCDate(),this.month=e.getUTCMonth(),this.year=e.getUTCFullYear(),this.apply();else{let t=R.toTZ(e,this.tz);this.ms=e.getMilliseconds(),this.second=t.s,this.minute=t.i,this.hour=t.h,this.day=t.d,this.month=t.m-1,this.year=t.y}else this.ms=e.getMilliseconds(),this.second=e.getSeconds(),this.minute=e.getMinutes(),this.hour=e.getHours(),this.day=e.getDate(),this.month=e.getMonth(),this.year=e.getFullYear()}fromCronDate(e){this.tz=e.tz,this.year=e.year,this.month=e.month,this.day=e.day,this.hour=e.hour,this.minute=e.minute,this.second=e.second,this.ms=e.ms}apply(){if(this.month>11||this.day>G[this.month]||this.hour>59||this.minute>59||this.second>59||this.hour<0||this.minute<0||this.second<0){let e=new Date(Date.UTC(this.year,this.month,this.day,this.hour,this.minute,this.second,this.ms));return this.ms=e.getUTCMilliseconds(),this.second=e.getUTCSeconds(),this.minute=e.getUTCMinutes(),this.hour=e.getUTCHours(),this.day=e.getUTCDate(),this.month=e.getUTCMonth(),this.year=e.getUTCFullYear(),!0}else return!1}fromString(e){if(typeof this.tz==`number`){let t=R.fromTZISO(e);this.ms=t.getUTCMilliseconds(),this.second=t.getUTCSeconds(),this.minute=t.getUTCMinutes(),this.hour=t.getUTCHours(),this.day=t.getUTCDate(),this.month=t.getUTCMonth(),this.year=t.getUTCFullYear(),this.apply()}else return this.fromDate(R.fromTZISO(e,this.tz))}findNext(e,t,n,r){let i=this[t],a;n.lastDayOfMonth&&(a=this.month===1?new Date(Date.UTC(this.year,this.month+1,0,0,0,0,0)).getUTCDate():G[this.month]);let o=!n.starDOW&&t==`day`?new Date(Date.UTC(this.year,this.month,1,0,0,0,0)).getUTCDay():void 0;for(let s=this[t]+r;s<n[t].length;s++){let c=n[t][s];if(t===`day`&&n.lastDayOfMonth&&s-r==a&&(c=1),t===`day`&&!n.starDOW){let t=n.dayOfWeek[(o+(s-r-1))%7];if(t&&t&H)t=this.isNthWeekdayOfMonth(this.year,this.month,s-r,t)?1:0;else if(t)throw Error(`CronDate: Invalid value for dayOfWeek encountered. ${t}`);e.legacyMode&&!n.starDOM?c||=t:c&&=t}if(c)return this[t]=s-r,i===this[t]?1:2}return 3}recurse(e,t,n){let r=this.findNext(t,K[n][0],e,K[n][2]);if(r>1){let i=n+1;for(;i<K.length;)this[K[i][0]]=-K[i][2],i++;if(r===3)return this[K[n][1]]++,this[K[n][0]]=-K[n][2],this.apply(),this.recurse(e,t,0);if(this.apply())return this.recurse(e,t,n-1)}return n+=1,n>=K.length?this:this.year>=3e3?null:this.recurse(e,t,n)}increment(e,t,n){return this.second+=t.interval!==void 0&&t.interval>1&&n?t.interval:1,this.ms=0,this.apply(),this.recurse(e,t,0)}getDate(e){return e||this.tz===void 0?new Date(this.year,this.month,this.day,this.hour,this.minute,this.second,this.ms):typeof this.tz==`number`?new Date(Date.UTC(this.year,this.month,this.day,this.hour,this.minute-this.tz,this.second,this.ms)):R.fromTZ(R.tp(this.year,this.month+1,this.day,this.hour,this.minute,this.second,this.tz),!1)}getTime(){return this.getDate(!1).getTime()}};function oe(e){if(e===void 0&&(e={}),delete e.name,e.legacyMode=e.legacyMode===void 0?!0:e.legacyMode,e.paused=e.paused===void 0?!1:e.paused,e.maxRuns=e.maxRuns===void 0?1/0:e.maxRuns,e.catch=e.catch===void 0?!1:e.catch,e.interval=e.interval===void 0?0:parseInt(e.interval.toString(),10),e.utcOffset=e.utcOffset===void 0?void 0:parseInt(e.utcOffset.toString(),10),e.unref=e.unref===void 0?!1:e.unref,e.startAt&&=new q(e.startAt,e.timezone),e.stopAt&&=new q(e.stopAt,e.timezone),e.interval!==null){if(isNaN(e.interval))throw Error(`CronOptions: Supplied value for interval is not a number`);if(e.interval<0)throw Error(`CronOptions: Supplied value for interval can not be negative`)}if(e.utcOffset!==void 0){if(isNaN(e.utcOffset))throw Error(`CronOptions: Invalid value passed for utcOffset, should be number representing minutes offset from UTC.`);if(e.utcOffset<-870||e.utcOffset>870)throw Error(`CronOptions: utcOffset out of bounds.`);if(e.utcOffset!==void 0&&e.timezone)throw Error(`CronOptions: Combining 'utcOffset' with 'timezone' is not allowed.`)}if(e.unref!==!0&&e.unref!==!1)throw Error(`CronOptions: Unref should be either true, false or undefined(false).`);return e}function J(e){return Object.prototype.toString.call(e)===`[object Function]`||typeof e==`function`||e instanceof Function}function se(e){return J(e)}function ce(e){typeof Deno<`u`&&typeof Deno.unrefTimer<`u`?Deno.unrefTimer(e):e&&typeof e.unref<`u`&&e.unref()}var Y=30*1e3,X=[],Z=class{name;options;_states;fn;constructor(e,t,n){let r,i;if(J(t))i=t;else if(typeof t==`object`)r=t;else if(t!==void 0)throw Error(`Cron: Invalid argument passed for optionsIn. Should be one of function, or object (options).`);if(J(n))i=n;else if(typeof n==`object`)r=n;else if(n!==void 0)throw Error(`Cron: Invalid argument passed for funcIn. Should be one of function, or object (options).`);if(this.name=r?.name,this.options=oe(r),this._states={kill:!1,blocking:!1,previousRun:void 0,currentRun:void 0,once:void 0,currentTimeout:void 0,maxRuns:r?r.maxRuns:void 0,paused:r?r.paused:!1,pattern:new W(`* * * * *`)},e&&(e instanceof Date||typeof e==`string`&&e.indexOf(`:`)>0)?this._states.once=new q(e,this.options.timezone||this.options.utcOffset):this._states.pattern=new W(e,this.options.timezone),this.name){if(X.find(e=>e.name===this.name))throw Error(`Cron: Tried to initialize new named job '`+this.name+`', but name already taken.`);X.push(this)}return i!==void 0&&se(i)&&(this.fn=i,this.schedule()),this}nextRun(e){let t=this._next(e);return t?t.getDate(!1):null}nextRuns(e,t){this._states.maxRuns!==void 0&&e>this._states.maxRuns&&(e=this._states.maxRuns);let n=[],r=t||this._states.currentRun||void 0;for(;e--&&(r=this.nextRun(r));)n.push(r);return n}getPattern(){return this._states.pattern?this._states.pattern.pattern:void 0}isRunning(){let e=this.nextRun(this._states.currentRun),t=!this._states.paused,n=this.fn!==void 0,r=!this._states.kill;return t&&n&&r&&e!==null}isStopped(){return this._states.kill}isBusy(){return this._states.blocking}currentRun(){return this._states.currentRun?this._states.currentRun.getDate():null}previousRun(){return this._states.previousRun?this._states.previousRun.getDate():null}msToNext(e){let t=this._next(e);return t?e instanceof q||e instanceof Date?t.getTime()-e.getTime():t.getTime()-new q(e).getTime():null}stop(){this._states.kill=!0,this._states.currentTimeout&&clearTimeout(this._states.currentTimeout);let e=X.indexOf(this);e>=0&&X.splice(e,1)}pause(){return this._states.paused=!0,!this._states.kill}resume(){return this._states.paused=!1,!this._states.kill}schedule(e){if(e&&this.fn)throw Error(`Cron: It is not allowed to schedule two functions using the same Croner instance.`);e&&(this.fn=e);let t=this.msToNext(),n=this.nextRun(this._states.currentRun);return t==null||isNaN(t)||n===null?this:(t>Y&&(t=Y),this._states.currentTimeout=setTimeout(()=>this._checkTrigger(n),t),this._states.currentTimeout&&this.options.unref&&ce(this._states.currentTimeout),this)}async _trigger(e){if(this._states.blocking=!0,this._states.currentRun=new q(void 0,this.options.timezone||this.options.utcOffset),this.options.catch)try{this.fn!==void 0&&await this.fn(this,this.options.context)}catch(e){J(this.options.catch)&&this.options.catch(e,this)}else this.fn!==void 0&&await this.fn(this,this.options.context);this._states.previousRun=new q(e,this.options.timezone||this.options.utcOffset),this._states.blocking=!1}async trigger(){await this._trigger()}runsLeft(){return this._states.maxRuns}_checkTrigger(e){let t=new Date,n=!this._states.paused&&t.getTime()>=e.getTime(),r=this._states.blocking&&this.options.protect;n&&!r?(this._states.maxRuns!==void 0&&this._states.maxRuns--,this._trigger()):n&&r&&J(this.options.protect)&&setTimeout(()=>this.options.protect(this),0),this.schedule()}_next(e){let t=!!(e||this._states.currentRun),n=!1;!e&&this.options.startAt&&this.options.interval&&([e,t]=this._calculatePreviousRun(e,t),n=!e),e=new q(e,this.options.timezone||this.options.utcOffset),this.options.startAt&&e&&e.getTime()<this.options.startAt.getTime()&&(e=this.options.startAt);let r=this._states.once||new q(e,this.options.timezone||this.options.utcOffset);return!n&&r!==this._states.once&&(r=r.increment(this._states.pattern,this.options,t)),this._states.once&&this._states.once.getTime()<=e.getTime()||r===null||this._states.maxRuns!==void 0&&this._states.maxRuns<=0||this._states.kill||this.options.stopAt&&r.getTime()>=this.options.stopAt.getTime()?null:r}_calculatePreviousRun(e,t){let n=new q(void 0,this.options.timezone||this.options.utcOffset),r=e;if(this.options.startAt.getTime()<=n.getTime()){r=this.options.startAt;let e=r.getTime()+this.options.interval*1e3;for(;e<=n.getTime();)r=new q(r,this.options.timezone||this.options.utcOffset).increment(this._states.pattern,this.options,!0),e=r.getTime()+this.options.interval*1e3;t=!0}return r===null&&(r=void 0),[r,t]}},le=[`bypassPermissions`,`acceptEdits`,`default`,`plan`];function ue({open:e,schedule:t,onClose:n,onSaved:r}){let i=m(),[a,o]=(0,M.useState)(()=>$(t)),[s,c]=(0,M.useState)([]),[l,u]=(0,M.useState)(!1),[f,p]=(0,M.useState)(null);(0,M.useEffect)(()=>{e&&(o($(t)),p(null),d.get(`/api/projects`).then(c).catch(()=>c([])))},[e,t]);let S=(0,M.useMemo)(()=>{try{return new Z(a.cron_expr).nextRuns(3).map(e=>e.toLocaleString())}catch{return null}},[a.cron_expr]),C=(e,t)=>o(n=>({...n,[e]:t})),T=(0,I.jsxs)(`div`,{className:`space-y-3 px-1`,children:[(0,I.jsx)(Q,{label:`Name`,children:(0,I.jsx)(y,{value:a.name,onChange:e=>C(`name`,e.target.value),placeholder:`Morning PR review`,className:`h-11 md:h-9 text-xs`})}),(0,I.jsxs)(Q,{label:`Cron expression (local timezone)`,children:[(0,I.jsx)(y,{value:a.cron_expr,onChange:e=>C(`cron_expr`,e.target.value),placeholder:`0 7 * * *`,className:`h-11 md:h-9 text-xs font-mono`}),(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:S?`Next: ${S.join(` · `)}`:`—`})]}),(0,I.jsx)(Q,{label:`Project`,children:(0,I.jsxs)(w,{value:a.project_path,onValueChange:e=>C(`project_path`,e),children:[(0,I.jsx)(j,{className:`w-full min-h-11 md:min-h-9 text-xs`,children:(0,I.jsx)(D,{placeholder:`Select project`})}),(0,I.jsx)(A,{children:s.map(e=>(0,I.jsx)(k,{value:e.path,children:e.name},e.path))})]})}),(0,I.jsx)(Q,{label:`Prompt (do not embed secrets)`,children:(0,I.jsx)(`textarea`,{value:a.prompt,onChange:e=>C(`prompt`,e.target.value),placeholder:`Check open PRs and summarize. If nothing to do, finish immediately.`,rows:4,className:`w-full rounded-md border border-input bg-transparent px-3 py-2 text-xs outline-none focus-visible:ring-2 focus-visible:ring-ring/50 resize-y`})}),(0,I.jsxs)(Q,{label:`Permission mode`,children:[(0,I.jsxs)(w,{value:a.permission_mode,onValueChange:e=>C(`permission_mode`,e),children:[(0,I.jsx)(j,{className:`w-full min-h-11 md:min-h-9 text-xs`,children:(0,I.jsx)(D,{})}),(0,I.jsx)(A,{children:le.map(e=>(0,I.jsx)(k,{value:e,children:e},e))})]}),a.permission_mode===`bypassPermissions`&&(0,I.jsx)(`p`,{className:`text-[11px] text-warning`,children:`⚠ Unattended writes — agent can modify code and run commands`})]}),(0,I.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,I.jsx)(Q,{label:`Max turns (optional)`,children:(0,I.jsx)(y,{type:`number`,min:1,value:a.max_turns,onChange:e=>C(`max_turns`,e.target.value),placeholder:`∞`,className:`h-11 md:h-9 text-xs`})}),(0,I.jsx)(Q,{label:`Timeout (ms)`,children:(0,I.jsx)(y,{type:`number`,min:1e4,value:a.timeout_ms,onChange:e=>C(`timeout_ms`,e.target.value),className:`h-11 md:h-9 text-xs`})})]}),(0,I.jsxs)(`div`,{className:`flex items-center justify-between min-h-11`,children:[(0,I.jsx)(`span`,{className:`text-xs font-medium`,children:`Enabled`}),(0,I.jsx)(x,{checked:a.enabled,onCheckedChange:e=>C(`enabled`,e)})]}),f&&(0,I.jsx)(`p`,{className:`text-[11px] text-error`,children:f}),(0,I.jsx)(h,{onClick:async()=>{if(!a.name.trim()||!a.project_path||!a.prompt.trim()){p(`Name, project, and prompt are required`);return}if(!S){p(`Invalid cron expression`);return}u(!0),p(null);try{let e={name:a.name.trim(),cron_expr:a.cron_expr,project_path:a.project_path,prompt:a.prompt,permission_mode:a.permission_mode,max_turns:a.max_turns===``?null:Number(a.max_turns),timeout_ms:Number(a.timeout_ms)||18e5,enabled:a.enabled};t?await d.patch(`/api/schedules/${t.id}`,e):await d.post(`/api/schedules`,e),r(),n()}catch(e){p(e instanceof Error?e.message:String(e))}finally{u(!1)}},disabled:l,className:`w-full min-h-11 cursor-pointer`,children:l?`Saving…`:t?`Save changes`:`Create schedule`})]}),E=t?`Edit: ${t.name}`:`New schedule`;return i?(0,I.jsxs)(te,{open:e,onClose:n,className:`max-h-[85vh] flex flex-col`,children:[(0,I.jsx)(`p`,{className:`text-sm font-semibold text-center pb-2`,children:E}),(0,I.jsx)(b,{className:`flex-1 min-h-0 px-3 pb-3`,children:T})]}):(0,I.jsx)(v,{open:e,onOpenChange:e=>!e&&n(),children:(0,I.jsxs)(g,{className:`max-w-md max-h-[85vh] overflow-y-auto`,children:[(0,I.jsx)(ee,{children:(0,I.jsx)(_,{className:`text-sm`,children:E})}),T]})})}function Q({label:e,children:t}){return(0,I.jsxs)(`div`,{className:`space-y-1`,children:[(0,I.jsx)(`p`,{className:`text-xs font-medium text-muted-foreground`,children:e}),t]})}function $(e){return{name:e?.name??``,cron_expr:e?.cron_expr??`0 7 * * *`,project_path:e?.project_path??``,prompt:e?.prompt??``,permission_mode:e?.permission_mode??`bypassPermissions`,max_turns:e?.max_turns==null?``:String(e.max_turns),timeout_ms:String(e?.timeout_ms??18e5),enabled:e?!!e.enabled:!0}}function de(){let{schedules:e,loading:t,refetch:n}=P(),[r,i]=(0,M.useState)(!1),[a,o]=(0,M.useState)(null),c=()=>{o(null),i(!0)},u=e=>{o(e),i(!0)};return(0,I.jsxs)(`div`,{className:`space-y-3`,children:[(0,I.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,I.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`Periodically wake Claude to work on a project unattended.`}),(0,I.jsxs)(h,{size:`sm`,onClick:c,className:`min-h-11 md:min-h-8 text-xs gap-1 cursor-pointer shrink-0`,children:[(0,I.jsx)(l,{className:`size-3.5`}),` Add`]})]}),t&&e.length===0?(0,I.jsx)(`p`,{className:`text-xs text-muted-foreground py-4 text-center`,children:`Loading…`}):e.length===0?(0,I.jsxs)(`div`,{className:`flex flex-col items-center gap-2 py-8 text-center`,children:[(0,I.jsx)(s,{className:`size-8 text-muted-foreground/50`}),(0,I.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`No schedules yet. Add one to run Claude periodically.`}),(0,I.jsxs)(h,{size:`sm`,onClick:c,className:`min-h-11 text-xs gap-1 cursor-pointer`,children:[(0,I.jsx)(l,{className:`size-3.5`}),` Add schedule`]})]}):(0,I.jsx)(`div`,{className:`space-y-2`,children:e.map(e=>(0,I.jsx)(ae,{schedule:e,onEdit:()=>u(e),onChanged:n},e.id))}),(0,I.jsx)(ue,{open:r,schedule:a,onClose:()=>i(!1),onSaved:n})]})}export{de as SchedulesSettingsSection};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/general-settings-section-fbSqpiKY.js","assets/rolldown-runtime-FhOqtrmT.js","assets/index-C3v3QRVR.js","assets/vendor-mermaid-D6lgjvVE.js","assets/vendor-ui-DmZ-Mb-H.js","assets/vendor-markdown-CuWCHIVb.js","assets/button-B9CTrsEf.js","assets/utils-Bmf_8h7Y.js","assets/createLucideIcon-DoiEKeJ_.js","assets/api-client-Jn3njtNw.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css","assets/onboarding-entry-C81awoR5.js","assets/separator-DwDoQpxS.js","assets/appearance-settings-section-DH0DxaKv.js","assets/ai-settings-section-ChEBg9Be.js","assets/ai-settings-section-CyWSTidP.js","assets/api-settings-BZFSteM_.js","assets/accounts-settings-section-BYz8j7Fq.js","assets/codex-daily-guard-PsB0g8B0.js","assets/ppmbot-settings-section-CY_yAGFM.js","assets/notifications-settings-section-C5v8FoH9.js","assets/jira-watcher-section-PYPh3xGU.js","assets/extension-manager-section-D8TSwRG8.js","assets/proxy-settings-section-CqcvneFB.js","assets/schedules-settings-section-ByCm7IOg.js","assets/keyboard-shortcuts-section-CM3pNiBR.js","assets/files-settings-section-Ne10pnQU.js","assets/query-audit-section-CpiXQVcS.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{Nn as r,Pt as i,S as a,Xt as o,Yn as s,Zt as c,_ as l,j as u,kt as d,l as f,ln as p,ot as m,sr as h,v as g,x as _,y as v}from"./icons-DQjqk0lJ.js";import{q as y}from"./vendor-mermaid-D6lgjvVE.js";import{n as b}from"./utils-Bmf_8h7Y.js";import{t as x}from"./button-B9CTrsEf.js";import{t as S}from"./scroll-area-C0fQWNnx.js";import{t as C}from"./separator-DwDoQpxS.js";var w=[{id:`core`,label:null},{id:`ai`,label:`AI & Accounts`},{id:`integrations`,label:`Integrations`},{id:`advanced`,label:`Advanced`}],T=[{id:`general`,group:`core`,label:`General`,subtitle:`Device name, password, version`,icon:h},{id:`appearance`,group:`core`,label:`Appearance`,subtitle:`Theme, tabs, explorer skin`,icon:r},{id:`ai-provider`,group:`ai`,label:`AI Provider`,subtitle:`Model, execution mode, limits`,icon:g},{id:`accounts`,group:`ai`,label:`Accounts`,subtitle:`Claude and Codex sign-ins, rotation`,icon:o},{id:`ppmbot`,group:`integrations`,label:`PPMBot`,subtitle:`Telegram AI bot`,icon:v},{id:`notifications`,group:`integrations`,label:`Notifications`,subtitle:`Push & Telegram alerts`,icon:l},{id:`jira`,group:`integrations`,label:`Jira Watcher`,subtitle:`Auto-debug Jira tickets`,icon:_},{id:`extensions`,group:`integrations`,label:`Extensions`,subtitle:`Install and manage extensions`,icon:s},{id:`proxy`,group:`integrations`,label:`API Proxy`,subtitle:`Expose accounts as Anthropic API`,icon:i},{id:`schedules`,group:`advanced`,label:`Scheduled Agents`,subtitle:`Run Claude on a cron schedule`,icon:a},{id:`shortcuts`,group:`advanced`,label:`Keyboard Shortcuts`,subtitle:`Customize key bindings`,icon:c},{id:`files`,group:`advanced`,label:`File Filters`,subtitle:`Exclude patterns, ignore files`,icon:d},{id:`query-audit`,group:`advanced`,label:`Query Audit Log`,subtitle:`SQL history retention and size`,icon:m}];function E(e){return typeof e==`string`&&T.some(t=>t.id===e)}function D(e){return T.find(t=>t.id===e)}function O(e){return T.filter(t=>t.group===e)}var k=n();function A({active:e,onSelect:t}){return(0,k.jsx)(S,{className:`h-full`,children:(0,k.jsx)(`nav`,{className:`p-2 space-y-4`,"aria-label":`Settings categories`,children:w.map(n=>{let r=O(n.id);return r.length===0?null:(0,k.jsxs)(`div`,{className:`space-y-1`,children:[n.label&&(0,k.jsx)(`h3`,{className:`px-2 pt-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:n.label}),r.map(n=>{let r=n.icon,i=n.id===e;return(0,k.jsxs)(`button`,{onClick:()=>t(n.id),"data-testid":`settings-rail-${n.id}`,"aria-current":i?`page`:void 0,className:b(`w-full flex items-center gap-2.5 px-2.5 py-2 rounded-md text-left cursor-pointer transition-colors`,i?`bg-accent text-accent-foreground`:`hover:bg-accent/50 active:bg-accent`),children:[(0,k.jsx)(r,{className:b(`size-4 shrink-0`,i?`text-foreground`:`text-muted-foreground`)}),(0,k.jsx)(`span`,{className:`text-sm truncate`,children:n.label})]},n.id)})]},n.id)})})})}function j({onSelect:e}){return(0,k.jsx)(S,{className:`h-full`,children:(0,k.jsx)(`nav`,{className:`p-3 space-y-5`,"aria-label":`Settings categories`,children:w.map(t=>{let n=O(t.id);return n.length===0?null:(0,k.jsxs)(`div`,{className:`space-y-1`,children:[t.label&&(0,k.jsx)(`h3`,{className:`px-1 pb-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:t.label}),n.map(t=>{let n=t.icon;return(0,k.jsxs)(`button`,{onClick:()=>e(t.id),"data-testid":`settings-index-${t.id}`,className:`w-full flex items-center gap-3 px-2.5 py-3 rounded-lg text-left cursor-pointer group hover:bg-accent/50 active:bg-accent transition-colors`,children:[(0,k.jsx)(`div`,{className:`size-10 rounded-md bg-muted flex items-center justify-center shrink-0 group-hover:bg-accent`,children:(0,k.jsx)(n,{className:`size-4 text-muted-foreground`})}),(0,k.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,k.jsx)(`p`,{className:`text-sm font-medium truncate`,children:t.label}),(0,k.jsx)(`p`,{className:`text-xs text-muted-foreground truncate`,children:t.subtitle})]}),(0,k.jsx)(u,{className:`size-4 text-muted-foreground shrink-0`})]},t.id)})]},t.id)})})})}var M=e(t(),1),N={general:(0,M.lazy)(()=>y(()=>import(`./general-settings-section-fbSqpiKY.js`).then(e=>({default:e.GeneralSettingsSection})),__vite__mapDeps([0,1,2,3,4,5,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]))),appearance:(0,M.lazy)(()=>y(()=>import(`./appearance-settings-section-DH0DxaKv.js`).then(e=>({default:e.AppearanceSettingsSection})),__vite__mapDeps([39,1,2,3,4,5,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,38]))),"ai-provider":(0,M.lazy)(()=>y(()=>import(`./ai-settings-section-ChEBg9Be.js`).then(e=>({default:e.AISettingsSection})),__vite__mapDeps([40,3,1,4,5,6,7,9,11,10,13,41,2,8,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,42]))),accounts:(0,M.lazy)(()=>y(()=>import(`./accounts-settings-section-BYz8j7Fq.js`).then(e=>({default:e.AccountsSettingsSection})),__vite__mapDeps([43,1,2,3,4,5,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,44,42]))),ppmbot:(0,M.lazy)(()=>y(()=>import(`./ppmbot-settings-section-CY_yAGFM.js`).then(e=>({default:e.PPMBotSettingsSection})),__vite__mapDeps([45,1,2,3,4,5,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,38]))),notifications:(0,M.lazy)(()=>y(()=>import(`./notifications-settings-section-C5v8FoH9.js`).then(e=>({default:e.NotificationsSettingsSection})),__vite__mapDeps([46,4,1,5,38,7,19]))),jira:(0,M.lazy)(()=>y(()=>import(`./jira-watcher-section-PYPh3xGU.js`).then(e=>({default:e.JiraWatcherSection})),__vite__mapDeps([47,2,1,3,4,5,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]))),extensions:(0,M.lazy)(()=>y(()=>import(`./extension-manager-section-D8TSwRG8.js`).then(e=>({default:e.ExtensionManagerSection})),__vite__mapDeps([48,1,2,3,4,5,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]))),proxy:(0,M.lazy)(()=>y(()=>import(`./proxy-settings-section-CqcvneFB.js`).then(e=>({default:e.ProxySettingsSection})),__vite__mapDeps([49,1,2,3,4,5,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,42]))),schedules:(0,M.lazy)(()=>y(()=>import(`./schedules-settings-section-ByCm7IOg.js`).then(e=>({default:e.SchedulesSettingsSection})),__vite__mapDeps([50,1,2,3,4,5,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]))),shortcuts:(0,M.lazy)(()=>y(()=>import(`./keyboard-shortcuts-section-CM3pNiBR.js`).then(e=>({default:e.KeyboardShortcutsSection})),__vite__mapDeps([51,1,2,3,4,5,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]))),files:(0,M.lazy)(()=>y(()=>import(`./files-settings-section-Ne10pnQU.js`).then(e=>({default:e.FilesSettingsSection})),__vite__mapDeps([52,1,2,3,4,5,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,38]))),"query-audit":(0,M.lazy)(()=>y(()=>import(`./query-audit-section-CpiXQVcS.js`).then(e=>({default:e.QueryAuditSection})),__vite__mapDeps([53,1,4,5,6,7,9,24,42,19])))};function P({category:e}){let t=N[e];return(0,k.jsx)(M.Suspense,{fallback:(0,k.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,k.jsx)(p,{className:`size-5 animate-spin text-muted-foreground`})}),children:(0,k.jsx)(t,{})})}function F({initialCategory:e,onCategoryChange:t}){let[n,r]=(0,M.useState)(e??`general`),[i,a]=(0,M.useState)(e===void 0),o=D(n),s=o.icon;function c(e){r(e),a(!1),t?.(e)}return(0,k.jsx)(`div`,{className:`@container h-full w-full`,"data-testid":`settings-window`,"data-category":n,children:(0,k.jsxs)(`div`,{className:`h-full w-full flex`,children:[(0,k.jsx)(`aside`,{className:`hidden @[640px]:flex @[640px]:flex-col w-[210px] shrink-0 border-r border-border min-h-0`,"data-testid":`settings-rail`,children:(0,k.jsx)(A,{active:n,onSelect:c})}),(0,k.jsxs)(`div`,{className:`relative flex-1 min-w-0`,children:[(0,k.jsxs)(`div`,{className:`h-full flex flex-col min-h-0`,children:[(0,k.jsxs)(`div`,{className:`shrink-0 flex items-center gap-2 px-2 py-2.5 @[640px]:px-4`,children:[(0,k.jsx)(x,{variant:`ghost`,size:`icon`,"aria-label":`Back to settings list`,className:`size-9 shrink-0 cursor-pointer @[640px]:hidden`,onClick:()=>a(!0),children:(0,k.jsx)(f,{className:`size-4`})}),(0,k.jsx)(s,{className:`size-4 text-muted-foreground shrink-0`}),(0,k.jsx)(`h2`,{className:`text-sm font-semibold truncate`,"data-testid":`settings-pane-title`,children:o.label})]}),(0,k.jsx)(C,{}),(0,k.jsx)(S,{className:`flex-1 min-h-0`,children:(0,k.jsx)(`div`,{className:`p-4 pb-8`,children:(0,k.jsx)(P,{category:n})})})]}),i&&(0,k.jsxs)(`div`,{className:`absolute inset-0 z-10 bg-background flex flex-col min-h-0 @[640px]:hidden`,"data-testid":`settings-index`,children:[(0,k.jsx)(`div`,{className:`shrink-0 px-4 py-3`,children:(0,k.jsx)(`h2`,{className:`text-sm font-semibold`,children:`Settings`})}),(0,k.jsx)(C,{}),(0,k.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,k.jsx)(j,{onSelect:c})})]})]})]})})}export{E as n,F as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/general-settings-section-mQiXM537.js","assets/rolldown-runtime-FhOqtrmT.js","assets/index-BoaecXhu.js","assets/vendor-mermaid-D6lgjvVE.js","assets/vendor-ui-DmZ-Mb-H.js","assets/vendor-markdown-CuWCHIVb.js","assets/button-B9CTrsEf.js","assets/utils-Bmf_8h7Y.js","assets/createLucideIcon-DoiEKeJ_.js","assets/api-client-Jn3njtNw.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css","assets/onboarding-entry-C81awoR5.js","assets/separator-DwDoQpxS.js","assets/appearance-settings-section-K5o_Di4V.js","assets/ai-settings-section-ArqD8Nlg.js","assets/ai-settings-section-DeWoAdLc.js","assets/api-settings-BZFSteM_.js","assets/accounts-settings-section-BDXYG6tT.js","assets/codex-daily-guard-CKk2WFlV.js","assets/ppmbot-settings-section-DeTFU1b-.js","assets/notifications-settings-section-C5v8FoH9.js","assets/jira-watcher-section-BKn3A8zI.js","assets/extension-manager-section-BFAGdy3G.js","assets/proxy-settings-section-DMGMRHH-.js","assets/schedules-settings-section-C8XNDdi9.js","assets/keyboard-shortcuts-section-Ck8KIbJ8.js","assets/files-settings-section-BE6o-oHu.js","assets/query-audit-section-CpiXQVcS.js"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{Nn as r,Pt as i,S as a,Xt as o,Yn as s,Zt as c,_ as l,j as u,kt as d,l as f,ln as p,ot as m,sr as h,v as g,x as _,y as v}from"./icons-DQjqk0lJ.js";import{q as y}from"./vendor-mermaid-D6lgjvVE.js";import{n as b}from"./utils-Bmf_8h7Y.js";import{t as x}from"./button-B9CTrsEf.js";import{t as S}from"./scroll-area-C0fQWNnx.js";import{t as C}from"./separator-DwDoQpxS.js";var w=[{id:`core`,label:null},{id:`ai`,label:`AI & Accounts`},{id:`integrations`,label:`Integrations`},{id:`advanced`,label:`Advanced`}],T=[{id:`general`,group:`core`,label:`General`,subtitle:`Device name, password, version`,icon:h},{id:`appearance`,group:`core`,label:`Appearance`,subtitle:`Theme, tabs, explorer skin`,icon:r},{id:`ai-provider`,group:`ai`,label:`AI Provider`,subtitle:`Model, execution mode, limits`,icon:g},{id:`accounts`,group:`ai`,label:`Accounts`,subtitle:`Claude and Codex sign-ins, rotation`,icon:o},{id:`ppmbot`,group:`integrations`,label:`PPMBot`,subtitle:`Telegram AI bot`,icon:v},{id:`notifications`,group:`integrations`,label:`Notifications`,subtitle:`Push & Telegram alerts`,icon:l},{id:`jira`,group:`integrations`,label:`Jira Watcher`,subtitle:`Auto-debug Jira tickets`,icon:_},{id:`extensions`,group:`integrations`,label:`Extensions`,subtitle:`Install and manage extensions`,icon:s},{id:`proxy`,group:`integrations`,label:`API Proxy`,subtitle:`Expose accounts as Anthropic API`,icon:i},{id:`schedules`,group:`advanced`,label:`Scheduled Agents`,subtitle:`Run Claude on a cron schedule`,icon:a},{id:`shortcuts`,group:`advanced`,label:`Keyboard Shortcuts`,subtitle:`Customize key bindings`,icon:c},{id:`files`,group:`advanced`,label:`File Filters`,subtitle:`Exclude patterns, ignore files`,icon:d},{id:`query-audit`,group:`advanced`,label:`Query Audit Log`,subtitle:`SQL history retention and size`,icon:m}];function E(e){return typeof e==`string`&&T.some(t=>t.id===e)}function D(e){return T.find(t=>t.id===e)}function O(e){return T.filter(t=>t.group===e)}var k=n();function A({active:e,onSelect:t}){return(0,k.jsx)(S,{className:`h-full`,children:(0,k.jsx)(`nav`,{className:`p-2 space-y-4`,"aria-label":`Settings categories`,children:w.map(n=>{let r=O(n.id);return r.length===0?null:(0,k.jsxs)(`div`,{className:`space-y-1`,children:[n.label&&(0,k.jsx)(`h3`,{className:`px-2 pt-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:n.label}),r.map(n=>{let r=n.icon,i=n.id===e;return(0,k.jsxs)(`button`,{onClick:()=>t(n.id),"data-testid":`settings-rail-${n.id}`,"aria-current":i?`page`:void 0,className:b(`w-full flex items-center gap-2.5 px-2.5 py-2 rounded-md text-left cursor-pointer transition-colors`,i?`bg-accent text-accent-foreground`:`hover:bg-accent/50 active:bg-accent`),children:[(0,k.jsx)(r,{className:b(`size-4 shrink-0`,i?`text-foreground`:`text-muted-foreground`)}),(0,k.jsx)(`span`,{className:`text-sm truncate`,children:n.label})]},n.id)})]},n.id)})})})}function j({onSelect:e}){return(0,k.jsx)(S,{className:`h-full`,children:(0,k.jsx)(`nav`,{className:`p-3 space-y-5`,"aria-label":`Settings categories`,children:w.map(t=>{let n=O(t.id);return n.length===0?null:(0,k.jsxs)(`div`,{className:`space-y-1`,children:[t.label&&(0,k.jsx)(`h3`,{className:`px-1 pb-1 text-[11px] font-medium uppercase tracking-wide text-muted-foreground`,children:t.label}),n.map(t=>{let n=t.icon;return(0,k.jsxs)(`button`,{onClick:()=>e(t.id),"data-testid":`settings-index-${t.id}`,className:`w-full flex items-center gap-3 px-2.5 py-3 rounded-lg text-left cursor-pointer group hover:bg-accent/50 active:bg-accent transition-colors`,children:[(0,k.jsx)(`div`,{className:`size-10 rounded-md bg-muted flex items-center justify-center shrink-0 group-hover:bg-accent`,children:(0,k.jsx)(n,{className:`size-4 text-muted-foreground`})}),(0,k.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,k.jsx)(`p`,{className:`text-sm font-medium truncate`,children:t.label}),(0,k.jsx)(`p`,{className:`text-xs text-muted-foreground truncate`,children:t.subtitle})]}),(0,k.jsx)(u,{className:`size-4 text-muted-foreground shrink-0`})]},t.id)})]},t.id)})})})}var M=e(t(),1),N={general:(0,M.lazy)(()=>y(()=>import(`./general-settings-section-mQiXM537.js`).then(e=>({default:e.GeneralSettingsSection})),__vite__mapDeps([0,1,2,3,4,5,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]))),appearance:(0,M.lazy)(()=>y(()=>import(`./appearance-settings-section-K5o_Di4V.js`).then(e=>({default:e.AppearanceSettingsSection})),__vite__mapDeps([39,1,2,3,4,5,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,38]))),"ai-provider":(0,M.lazy)(()=>y(()=>import(`./ai-settings-section-ArqD8Nlg.js`).then(e=>({default:e.AISettingsSection})),__vite__mapDeps([40,3,1,4,5,6,7,9,11,10,13,41,2,8,12,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,42]))),accounts:(0,M.lazy)(()=>y(()=>import(`./accounts-settings-section-BDXYG6tT.js`).then(e=>({default:e.AccountsSettingsSection})),__vite__mapDeps([43,1,2,3,4,5,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,44,42]))),ppmbot:(0,M.lazy)(()=>y(()=>import(`./ppmbot-settings-section-DeTFU1b-.js`).then(e=>({default:e.PPMBotSettingsSection})),__vite__mapDeps([45,1,2,3,4,5,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,38]))),notifications:(0,M.lazy)(()=>y(()=>import(`./notifications-settings-section-C5v8FoH9.js`).then(e=>({default:e.NotificationsSettingsSection})),__vite__mapDeps([46,4,1,5,38,7,19]))),jira:(0,M.lazy)(()=>y(()=>import(`./jira-watcher-section-BKn3A8zI.js`).then(e=>({default:e.JiraWatcherSection})),__vite__mapDeps([47,2,1,3,4,5,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]))),extensions:(0,M.lazy)(()=>y(()=>import(`./extension-manager-section-BFAGdy3G.js`).then(e=>({default:e.ExtensionManagerSection})),__vite__mapDeps([48,1,2,3,4,5,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]))),proxy:(0,M.lazy)(()=>y(()=>import(`./proxy-settings-section-DMGMRHH-.js`).then(e=>({default:e.ProxySettingsSection})),__vite__mapDeps([49,1,2,3,4,5,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,42]))),schedules:(0,M.lazy)(()=>y(()=>import(`./schedules-settings-section-C8XNDdi9.js`).then(e=>({default:e.SchedulesSettingsSection})),__vite__mapDeps([50,1,2,3,4,5,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]))),shortcuts:(0,M.lazy)(()=>y(()=>import(`./keyboard-shortcuts-section-Ck8KIbJ8.js`).then(e=>({default:e.KeyboardShortcutsSection})),__vite__mapDeps([51,1,2,3,4,5,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]))),files:(0,M.lazy)(()=>y(()=>import(`./files-settings-section-BE6o-oHu.js`).then(e=>({default:e.FilesSettingsSection})),__vite__mapDeps([52,1,2,3,4,5,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,38]))),"query-audit":(0,M.lazy)(()=>y(()=>import(`./query-audit-section-CpiXQVcS.js`).then(e=>({default:e.QueryAuditSection})),__vite__mapDeps([53,1,4,5,6,7,9,24,42,19])))};function P({category:e}){let t=N[e];return(0,k.jsx)(M.Suspense,{fallback:(0,k.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,k.jsx)(p,{className:`size-5 animate-spin text-muted-foreground`})}),children:(0,k.jsx)(t,{})})}function F({initialCategory:e,onCategoryChange:t}){let[n,r]=(0,M.useState)(e??`general`),[i,a]=(0,M.useState)(e===void 0),o=D(n),s=o.icon;function c(e){r(e),a(!1),t?.(e)}return(0,k.jsx)(`div`,{className:`@container h-full w-full`,"data-testid":`settings-window`,"data-category":n,children:(0,k.jsxs)(`div`,{className:`h-full w-full flex`,children:[(0,k.jsx)(`aside`,{className:`hidden @[640px]:flex @[640px]:flex-col w-[210px] shrink-0 border-r border-border min-h-0`,"data-testid":`settings-rail`,children:(0,k.jsx)(A,{active:n,onSelect:c})}),(0,k.jsxs)(`div`,{className:`relative flex-1 min-w-0`,children:[(0,k.jsxs)(`div`,{className:`h-full flex flex-col min-h-0`,children:[(0,k.jsxs)(`div`,{className:`shrink-0 flex items-center gap-2 px-2 py-2.5 @[640px]:px-4`,children:[(0,k.jsx)(x,{variant:`ghost`,size:`icon`,"aria-label":`Back to settings list`,className:`size-9 shrink-0 cursor-pointer @[640px]:hidden`,onClick:()=>a(!0),children:(0,k.jsx)(f,{className:`size-4`})}),(0,k.jsx)(s,{className:`size-4 text-muted-foreground shrink-0`}),(0,k.jsx)(`h2`,{className:`text-sm font-semibold truncate`,"data-testid":`settings-pane-title`,children:o.label})]}),(0,k.jsx)(C,{}),(0,k.jsx)(S,{className:`flex-1 min-h-0`,children:(0,k.jsx)(`div`,{className:`p-4 pb-8`,children:(0,k.jsx)(P,{category:n})})})]}),i&&(0,k.jsxs)(`div`,{className:`absolute inset-0 z-10 bg-background flex flex-col min-h-0 @[640px]:hidden`,"data-testid":`settings-index`,children:[(0,k.jsx)(`div`,{className:`shrink-0 px-4 py-3`,children:(0,k.jsx)(`h2`,{className:`text-sm font-semibold`,children:`Settings`})}),(0,k.jsx)(C,{}),(0,k.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,k.jsx)(j,{onSelect:c})})]})]})]})})}export{E as n,F as t};
@@ -1 +1 @@
1
- import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./vendor-mermaid-D6lgjvVE.js";import"./button-B9CTrsEf.js";import"./scroll-area-C0fQWNnx.js";import"./separator-DwDoQpxS.js";import{n as t,t as n}from"./settings-body-Dwt_rUSa.js";var r=e(),i=({metadata:e})=>(0,r.jsx)(n,{initialCategory:t(e?.category)?e.category:void 0});export{i as SettingsTab};
1
+ import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./vendor-mermaid-D6lgjvVE.js";import"./button-B9CTrsEf.js";import"./scroll-area-C0fQWNnx.js";import"./separator-DwDoQpxS.js";import{n as t,t as n}from"./settings-body-DelxmiKf.js";var r=e(),i=({metadata:e})=>(0,r.jsx)(n,{initialCategory:t(e?.category)?e.category:void 0});export{i as SettingsTab};
@@ -1 +1 @@
1
- import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./vendor-mermaid-D6lgjvVE.js";import{t}from"./window-store-UC1jJeLM.js";import"./button-B9CTrsEf.js";import"./scroll-area-C0fQWNnx.js";import"./separator-DwDoQpxS.js";import{n,t as r}from"./settings-body-Dwt_rUSa.js";var i=e();function a({id:e,payload:a}){let o=t(e=>e.setPayload);return(0,i.jsx)(r,{initialCategory:n(a?.category)?a.category:void 0,onCategoryChange:t=>o(e,{category:t})})}export{a as default};
1
+ import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./vendor-mermaid-D6lgjvVE.js";import{t}from"./window-store-UC1jJeLM.js";import"./button-B9CTrsEf.js";import"./scroll-area-C0fQWNnx.js";import"./separator-DwDoQpxS.js";import{n,t as r}from"./settings-body-DelxmiKf.js";var i=e();function a({id:e,payload:a}){let o=t(e=>e.setPayload);return(0,i.jsx)(r,{initialCategory:n(a?.category)?a.category:void 0,onCategoryChange:t=>o(e,{category:t})})}export{a as default};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{u as r}from"./index-C3v3QRVR.js";import{t as i}from"./use-monaco-theme-DGi9_j5M.js";import{a,i as o,r as s}from"./glide-data-grid-OhxZFlYg.js";var c=e(t(),1),l=n();function u({onExecute:e,loading:t,defaultValue:n=`SELECT * FROM `,schemaInfo:u,onSqlChange:d,persistedSql:f}){let[p,m]=(0,c.useState)(()=>f??n),h=(0,c.useRef)(!!f),g=(0,c.useRef)(null),_=(0,c.useRef)(null),v=(0,c.useRef)(null),y=(0,c.useRef)(e);y.current=e;let b=i();(0,c.useEffect)(()=>{if(!(!_.current||!u))return v.current?.dispose(),s(),v.current=_.current.languages.registerCompletionItemProvider(`sql`,o(_.current,u)),()=>{v.current?.dispose()}},[u]);let x=(0,c.useCallback)((e,t)=>{g.current=e,_.current=t,e.addAction({id:`run-query-at-cursor`,label:`Run Statement at Cursor`,keybindings:[t.KeyMod.CtrlCmd|t.KeyCode.Enter],run:e=>{let t=e.getPosition();if(!t)return;let n=a(e.getValue(),t.lineNumber);n&&y.current(n)}}),u&&(v.current?.dispose(),v.current=t.languages.registerCompletionItemProvider(`sql`,o(t,u)))},[u]);return(0,c.useEffect)(()=>{h.current||m(n)},[n]),(0,l.jsx)(`div`,{className:`h-full overflow-hidden`,children:(0,l.jsx)(r,{height:`100%`,language:`sql`,theme:b,value:p,onChange:e=>{let t=e??``;m(t),h.current=!0,d?.(t)},onMount:x,options:{minimap:{enabled:!1},lineNumbers:`off`,scrollBeyondLastLine:!1,wordWrap:`on`,fontSize:12,tabSize:2,renderLineHighlight:`none`,overviewRulerLanes:0,hideCursorInOverviewRuler:!0,scrollbar:{vertical:`auto`,horizontal:`auto`,verticalScrollbarSize:6,horizontalScrollbarSize:6},padding:{top:4,bottom:4},lineDecorationsWidth:4,lineNumbersMinChars:0,glyphMargin:!1,folding:!1,fixedOverflowWidgets:!0}})})}export{u as t};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{u as r}from"./index-BoaecXhu.js";import{t as i}from"./use-monaco-theme-Gd8cpt9n.js";import{a,i as o,r as s}from"./glide-data-grid-BjEF7M5i.js";var c=e(t(),1),l=n();function u({onExecute:e,loading:t,defaultValue:n=`SELECT * FROM `,schemaInfo:u,onSqlChange:d,persistedSql:f}){let[p,m]=(0,c.useState)(()=>f??n),h=(0,c.useRef)(!!f),g=(0,c.useRef)(null),_=(0,c.useRef)(null),v=(0,c.useRef)(null),y=(0,c.useRef)(e);y.current=e;let b=i();(0,c.useEffect)(()=>{if(!(!_.current||!u))return v.current?.dispose(),s(),v.current=_.current.languages.registerCompletionItemProvider(`sql`,o(_.current,u)),()=>{v.current?.dispose()}},[u]);let x=(0,c.useCallback)((e,t)=>{g.current=e,_.current=t,e.addAction({id:`run-query-at-cursor`,label:`Run Statement at Cursor`,keybindings:[t.KeyMod.CtrlCmd|t.KeyCode.Enter],run:e=>{let t=e.getPosition();if(!t)return;let n=a(e.getValue(),t.lineNumber);n&&y.current(n)}}),u&&(v.current?.dispose(),v.current=t.languages.registerCompletionItemProvider(`sql`,o(t,u)))},[u]);return(0,c.useEffect)(()=>{h.current||m(n)},[n]),(0,l.jsx)(`div`,{className:`h-full overflow-hidden`,children:(0,l.jsx)(r,{height:`100%`,language:`sql`,theme:b,value:p,onChange:e=>{let t=e??``;m(t),h.current=!0,d?.(t)},onMount:x,options:{minimap:{enabled:!1},lineNumbers:`off`,scrollBeyondLastLine:!1,wordWrap:`on`,fontSize:12,tabSize:2,renderLineHighlight:`none`,overviewRulerLanes:0,hideCursorInOverviewRuler:!0,scrollbar:{vertical:`auto`,horizontal:`auto`,verticalScrollbarSize:6,horizontalScrollbarSize:6},padding:{top:4,bottom:4},lineDecorationsWidth:4,lineNumbersMinChars:0,glyphMargin:!1,folding:!1,fixedOverflowWidgets:!0}})})}export{u as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Qn as r,at as i,ln as a,n as o,vr as s}from"./icons-DQjqk0lJ.js";import{i as c,n as l,s as u}from"./api-client-Jn3njtNw.js";import"./settings-store-m6qOXoy4.js";import"./vendor-mermaid-D6lgjvVE.js";import"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import"./tab-store-krAuHQ6_.js";import"./data-grid-types-C6UX8kgh.js";import"./use-monaco-theme-DGi9_j5M.js";import{t as d}from"./glide-data-grid-OhxZFlYg.js";import{t as f}from"./sql-query-editor-DgwwJxwJ.js";var p=e(t(),1);function m(e,t,n){let[r,i]=(0,p.useState)([]),[a,o]=(0,p.useState)(null),[s,d]=(0,p.useState)(null),[f,m]=(0,p.useState)([]),[h,g]=(0,p.useState)(!1),[_,v]=(0,p.useState)(null),[y,b]=(0,p.useState)(1),[x,S]=(0,p.useState)(null),[C,w]=(0,p.useState)(null),[T,E]=(0,p.useState)(!1),D=n?`/api/db/connections/${n}`:null,O=!n&&!e&&/^(\/|[A-Za-z]:[/\\])/.test(t),k=D??(O?`/api/fs/sqlite`:`${c(e)}/sqlite`),A=D?``:`path=${encodeURIComponent(t)}`,j=(0,p.useCallback)(async()=>{g(!0),v(null);try{let e=D?`?cached=1`:A?`?${A}`:``,t=await l.get(`${k}/tables${e}`);i(t),!D&&t.length>0&&!a&&o(t[0].name)}catch(e){v(e.message)}finally{g(!1)}},[k,A,D]);(0,p.useEffect)(()=>{j()},[j]);let M=(0,p.useCallback)(async()=>{if(a){g(!0);try{let e=A?`${A}&`:``,[t,n]=await Promise.all([l.get(`${k}/data?${e}table=${encodeURIComponent(a)}&page=${y}&limit=100`),l.get(`${k}/schema?${e}table=${encodeURIComponent(a)}`)]);d(t),m(n)}catch(e){v(e.message)}finally{g(!1)}}},[k,A,a,y]);(0,p.useEffect)(()=>{M()},[M]);let N=(0,p.useCallback)(e=>{o(e),b(1),S(null)},[]),P=(0,p.useCallback)(async e=>{E(!0),w(null);try{let n=D?{sql:e}:{path:t,sql:e},r=await l.post(`${k}/query`,n);S(r),r.changeType===`modify`&&M()}catch(e){w(e.message)}finally{E(!1)}},[k,D,t,M]),F=(0,p.useCallback)((e,t)=>{let n=t.message;v(n),u.error(`${e} failed`,{description:n})},[]);return{tables:r,selectedTable:a,selectTable:N,tableData:s,schema:f,loading:h,error:_,page:y,setPage:b,queryResult:x,queryError:C,queryLoading:T,executeQuery:P,updateCell:(0,p.useCallback)(async(e,n,r)=>{if(a)try{D?await l.put(`${k}/cell`,{table:a,pkColumn:`rowid`,pkValue:e,column:n,value:r}):await l.put(`${k}/cell`,{path:t,table:a,rowid:e,column:n,value:r}),M()}catch(e){F(`Update cell`,e)}},[k,D,t,a,M,F]),deleteRow:(0,p.useCallback)(async e=>{if(a)try{D?await l.del(`${k}/row`,{table:a,pkColumn:`rowid`,pkValue:e}):await l.del(`${k}/row`,{path:t,table:a,rowid:e}),M(),j()}catch(e){F(`Delete row`,e)}},[k,D,t,a,M,j,F]),refreshTables:j,refreshData:M}}var h=n();function g({tables:e,selectedTable:t,onSelect:n,onRefresh:i}){return(0,h.jsxs)(`div`,{className:`w-48 shrink-0 flex flex-col bg-background overflow-hidden`,children:[(0,h.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,h.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Tables`}),(0,h.jsx)(`button`,{type:`button`,onClick:i,className:`text-muted-foreground hover:text-foreground transition-colors`,title:`Refresh tables`,children:(0,h.jsx)(r,{className:`size-3`})})]}),(0,h.jsxs)(`div`,{className:`flex-1 overflow-y-auto`,children:[e.map(e=>(0,h.jsxs)(`button`,{type:`button`,onClick:()=>n(e.name),className:`w-full flex items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors ${t===e.name?`bg-muted text-foreground`:`text-muted-foreground hover:bg-muted/50 hover:text-foreground`}`,children:[(0,h.jsx)(s,{className:`size-3 shrink-0`}),(0,h.jsx)(`span`,{className:`truncate flex-1`,children:e.name}),(0,h.jsx)(`span`,{className:`text-[10px] opacity-60`,children:e.rowCount})]},e.name)),e.length===0&&(0,h.jsx)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground text-center`,children:`No tables found`})]})]})}function _({onExecute:e,loading:t}){return(0,h.jsx)(f,{onExecute:e,loading:t})}function v({metadata:e}){let t=e?.filePath,n=e?.projectName,r=e?.connectionId,a=e?.tableName,[o,s]=(0,p.useState)(!1);if(r)return(0,h.jsx)(y,{projectName:``,dbPath:``,connectionId:r,connectionName:e?.connectionName,initialTable:a,queryPanelOpen:o,onToggleQueryPanel:()=>s(e=>!e),hideTableList:!0});let c=!!t&&!n&&/^(\/|[A-Za-z]:[/\\])/.test(t);return!t||!n&&!c?(0,h.jsxs)(`div`,{className:`flex items-center justify-center h-full text-text-secondary text-sm`,children:[(0,h.jsx)(i,{className:`size-5 mr-2`}),` No database file selected.`]}):(0,h.jsx)(y,{projectName:n??``,dbPath:t,queryPanelOpen:o,onToggleQueryPanel:()=>s(e=>!e)})}function y({projectName:e,dbPath:t,connectionId:n,connectionName:r,initialTable:s,queryPanelOpen:c,onToggleQueryPanel:l,hideTableList:u}){let f=m(e,t,n),v=(0,p.useRef)(!1);return(0,p.useEffect)(()=>{s&&!v.current&&f.tables.length>0&&(v.current=!0,f.selectTable(s))},[s,f.tables]),f.error&&f.tables.length===0?(0,h.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary`,children:[(0,h.jsx)(o,{className:`size-10 text-destructive`}),(0,h.jsx)(`p`,{className:`text-sm`,children:f.error})]}):f.loading&&f.tables.length===0?(0,h.jsxs)(`div`,{className:`flex items-center justify-center h-full gap-2 text-text-secondary`,children:[(0,h.jsx)(a,{className:`size-5 animate-spin`}),(0,h.jsx)(`span`,{className:`text-sm`,children:`Loading database...`})]}):(0,h.jsxs)(`div`,{className:`flex h-full w-full overflow-hidden`,children:[!u&&(0,h.jsx)(g,{tables:f.tables,selectedTable:f.selectedTable,onSelect:f.selectTable,onRefresh:f.refreshTables}),(0,h.jsxs)(`div`,{className:`flex-1 flex flex-col overflow-hidden ${u?``:`border-l border-border`}`,children:[(0,h.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border bg-background shrink-0`,children:[(0,h.jsx)(i,{className:`size-3.5 text-muted-foreground`}),(0,h.jsx)(`span`,{className:`text-xs text-muted-foreground truncate`,children:r??t}),(0,h.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:f.selectedTable&&`/ ${f.selectedTable}`}),(0,h.jsx)(`div`,{className:`ml-auto`,children:(0,h.jsx)(`button`,{type:`button`,onClick:l,className:`px-2 py-1 rounded text-xs transition-colors ${c?`bg-muted text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:`SQL`})})]}),(0,h.jsx)(`div`,{className:`flex-1 overflow-hidden ${c?`max-h-[60%]`:``}`,children:f.tableData?(0,h.jsx)(d,{columns:f.tableData.columns,rows:f.tableData.rows,total:f.tableData.total,limit:f.tableData.limit,schema:f.schema.map(e=>({name:e.name,type:e.type,nullable:!e.notnull,pk:!!e.pk,defaultValue:e.dflt_value,fk:e.fk??null})),loading:f.loading,page:f.page,onPageChange:f.setPage,onCellUpdate:(e,t,n,r)=>f.updateCell(t,n,r),onRowDelete:(e,t)=>f.deleteRow(t)}):(0,h.jsx)(`div`,{className:`flex items-center justify-center h-full text-xs text-muted-foreground`,children:f.loading?(0,h.jsx)(a,{className:`size-4 animate-spin`}):`Select a table`})}),c&&(0,h.jsx)(`div`,{className:`border-t border-border h-[40%] shrink-0`,children:(0,h.jsx)(_,{onExecute:f.executeQuery,loading:f.queryLoading})})]})]})}export{v as SqliteViewer};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Qn as r,at as i,ln as a,n as o,vr as s}from"./icons-DQjqk0lJ.js";import{i as c,n as l,s as u}from"./api-client-Jn3njtNw.js";import"./settings-store-m6qOXoy4.js";import"./vendor-mermaid-D6lgjvVE.js";import"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import"./tab-store-krAuHQ6_.js";import"./data-grid-types-C6UX8kgh.js";import"./use-monaco-theme-Gd8cpt9n.js";import{t as d}from"./glide-data-grid-BjEF7M5i.js";import{t as f}from"./sql-query-editor-B3wrPR6K.js";var p=e(t(),1);function m(e,t,n){let[r,i]=(0,p.useState)([]),[a,o]=(0,p.useState)(null),[s,d]=(0,p.useState)(null),[f,m]=(0,p.useState)([]),[h,g]=(0,p.useState)(!1),[_,v]=(0,p.useState)(null),[y,b]=(0,p.useState)(1),[x,S]=(0,p.useState)(null),[C,w]=(0,p.useState)(null),[T,E]=(0,p.useState)(!1),D=n?`/api/db/connections/${n}`:null,O=!n&&!e&&/^(\/|[A-Za-z]:[/\\])/.test(t),k=D??(O?`/api/fs/sqlite`:`${c(e)}/sqlite`),A=D?``:`path=${encodeURIComponent(t)}`,j=(0,p.useCallback)(async()=>{g(!0),v(null);try{let e=D?`?cached=1`:A?`?${A}`:``,t=await l.get(`${k}/tables${e}`);i(t),!D&&t.length>0&&!a&&o(t[0].name)}catch(e){v(e.message)}finally{g(!1)}},[k,A,D]);(0,p.useEffect)(()=>{j()},[j]);let M=(0,p.useCallback)(async()=>{if(a){g(!0);try{let e=A?`${A}&`:``,[t,n]=await Promise.all([l.get(`${k}/data?${e}table=${encodeURIComponent(a)}&page=${y}&limit=100`),l.get(`${k}/schema?${e}table=${encodeURIComponent(a)}`)]);d(t),m(n)}catch(e){v(e.message)}finally{g(!1)}}},[k,A,a,y]);(0,p.useEffect)(()=>{M()},[M]);let N=(0,p.useCallback)(e=>{o(e),b(1),S(null)},[]),P=(0,p.useCallback)(async e=>{E(!0),w(null);try{let n=D?{sql:e}:{path:t,sql:e},r=await l.post(`${k}/query`,n);S(r),r.changeType===`modify`&&M()}catch(e){w(e.message)}finally{E(!1)}},[k,D,t,M]),F=(0,p.useCallback)((e,t)=>{let n=t.message;v(n),u.error(`${e} failed`,{description:n})},[]);return{tables:r,selectedTable:a,selectTable:N,tableData:s,schema:f,loading:h,error:_,page:y,setPage:b,queryResult:x,queryError:C,queryLoading:T,executeQuery:P,updateCell:(0,p.useCallback)(async(e,n,r)=>{if(a)try{D?await l.put(`${k}/cell`,{table:a,pkColumn:`rowid`,pkValue:e,column:n,value:r}):await l.put(`${k}/cell`,{path:t,table:a,rowid:e,column:n,value:r}),M()}catch(e){F(`Update cell`,e)}},[k,D,t,a,M,F]),deleteRow:(0,p.useCallback)(async e=>{if(a)try{D?await l.del(`${k}/row`,{table:a,pkColumn:`rowid`,pkValue:e}):await l.del(`${k}/row`,{path:t,table:a,rowid:e}),M(),j()}catch(e){F(`Delete row`,e)}},[k,D,t,a,M,j,F]),refreshTables:j,refreshData:M}}var h=n();function g({tables:e,selectedTable:t,onSelect:n,onRefresh:i}){return(0,h.jsxs)(`div`,{className:`w-48 shrink-0 flex flex-col bg-background overflow-hidden`,children:[(0,h.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border`,children:[(0,h.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground uppercase tracking-wider`,children:`Tables`}),(0,h.jsx)(`button`,{type:`button`,onClick:i,className:`text-muted-foreground hover:text-foreground transition-colors`,title:`Refresh tables`,children:(0,h.jsx)(r,{className:`size-3`})})]}),(0,h.jsxs)(`div`,{className:`flex-1 overflow-y-auto`,children:[e.map(e=>(0,h.jsxs)(`button`,{type:`button`,onClick:()=>n(e.name),className:`w-full flex items-center gap-2 px-3 py-1.5 text-left text-xs transition-colors ${t===e.name?`bg-muted text-foreground`:`text-muted-foreground hover:bg-muted/50 hover:text-foreground`}`,children:[(0,h.jsx)(s,{className:`size-3 shrink-0`}),(0,h.jsx)(`span`,{className:`truncate flex-1`,children:e.name}),(0,h.jsx)(`span`,{className:`text-[10px] opacity-60`,children:e.rowCount})]},e.name)),e.length===0&&(0,h.jsx)(`p`,{className:`px-3 py-4 text-xs text-muted-foreground text-center`,children:`No tables found`})]})]})}function _({onExecute:e,loading:t}){return(0,h.jsx)(f,{onExecute:e,loading:t})}function v({metadata:e}){let t=e?.filePath,n=e?.projectName,r=e?.connectionId,a=e?.tableName,[o,s]=(0,p.useState)(!1);if(r)return(0,h.jsx)(y,{projectName:``,dbPath:``,connectionId:r,connectionName:e?.connectionName,initialTable:a,queryPanelOpen:o,onToggleQueryPanel:()=>s(e=>!e),hideTableList:!0});let c=!!t&&!n&&/^(\/|[A-Za-z]:[/\\])/.test(t);return!t||!n&&!c?(0,h.jsxs)(`div`,{className:`flex items-center justify-center h-full text-text-secondary text-sm`,children:[(0,h.jsx)(i,{className:`size-5 mr-2`}),` No database file selected.`]}):(0,h.jsx)(y,{projectName:n??``,dbPath:t,queryPanelOpen:o,onToggleQueryPanel:()=>s(e=>!e)})}function y({projectName:e,dbPath:t,connectionId:n,connectionName:r,initialTable:s,queryPanelOpen:c,onToggleQueryPanel:l,hideTableList:u}){let f=m(e,t,n),v=(0,p.useRef)(!1);return(0,p.useEffect)(()=>{s&&!v.current&&f.tables.length>0&&(v.current=!0,f.selectTable(s))},[s,f.tables]),f.error&&f.tables.length===0?(0,h.jsxs)(`div`,{className:`flex flex-col items-center justify-center h-full gap-3 text-text-secondary`,children:[(0,h.jsx)(o,{className:`size-10 text-destructive`}),(0,h.jsx)(`p`,{className:`text-sm`,children:f.error})]}):f.loading&&f.tables.length===0?(0,h.jsxs)(`div`,{className:`flex items-center justify-center h-full gap-2 text-text-secondary`,children:[(0,h.jsx)(a,{className:`size-5 animate-spin`}),(0,h.jsx)(`span`,{className:`text-sm`,children:`Loading database...`})]}):(0,h.jsxs)(`div`,{className:`flex h-full w-full overflow-hidden`,children:[!u&&(0,h.jsx)(g,{tables:f.tables,selectedTable:f.selectedTable,onSelect:f.selectTable,onRefresh:f.refreshTables}),(0,h.jsxs)(`div`,{className:`flex-1 flex flex-col overflow-hidden ${u?``:`border-l border-border`}`,children:[(0,h.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border bg-background shrink-0`,children:[(0,h.jsx)(i,{className:`size-3.5 text-muted-foreground`}),(0,h.jsx)(`span`,{className:`text-xs text-muted-foreground truncate`,children:r??t}),(0,h.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:f.selectedTable&&`/ ${f.selectedTable}`}),(0,h.jsx)(`div`,{className:`ml-auto`,children:(0,h.jsx)(`button`,{type:`button`,onClick:l,className:`px-2 py-1 rounded text-xs transition-colors ${c?`bg-muted text-foreground`:`text-muted-foreground hover:text-foreground`}`,children:`SQL`})})]}),(0,h.jsx)(`div`,{className:`flex-1 overflow-hidden ${c?`max-h-[60%]`:``}`,children:f.tableData?(0,h.jsx)(d,{columns:f.tableData.columns,rows:f.tableData.rows,total:f.tableData.total,limit:f.tableData.limit,schema:f.schema.map(e=>({name:e.name,type:e.type,nullable:!e.notnull,pk:!!e.pk,defaultValue:e.dflt_value,fk:e.fk??null})),loading:f.loading,page:f.page,onPageChange:f.setPage,onCellUpdate:(e,t,n,r)=>f.updateCell(t,n,r),onRowDelete:(e,t)=>f.deleteRow(t)}):(0,h.jsx)(`div`,{className:`flex items-center justify-center h-full text-xs text-muted-foreground`,children:f.loading?(0,h.jsx)(a,{className:`size-4 animate-spin`}):`Select a table`})}),c&&(0,h.jsx)(`div`,{className:`border-t border-border h-[40%] shrink-0`,children:(0,h.jsx)(_,{onExecute:f.executeQuery,loading:f.queryLoading})})]})]})}export{v as SqliteViewer};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/overview-panel-9OdBcYJC.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-markdown-CuWCHIVb.js","assets/utils-Bmf_8h7Y.js","assets/format-bytes-amUJ8Js8.js","assets/process-table-1CN3rBVp.js","assets/index-C3v3QRVR.js","assets/vendor-mermaid-D6lgjvVE.js","assets/vendor-ui-DmZ-Mb-H.js","assets/button-B9CTrsEf.js","assets/createLucideIcon-DoiEKeJ_.js","assets/api-client-Jn3njtNw.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{Lr as r,Rr as i}from"./icons-DQjqk0lJ.js";import{q as a}from"./vendor-mermaid-D6lgjvVE.js";import{n as o}from"./utils-Bmf_8h7Y.js";import{T as s}from"./index-C3v3QRVR.js";var c=e(t(),1),l=n(),u=(0,c.lazy)(()=>a(()=>import(`./overview-panel-9OdBcYJC.js`).then(e=>({default:e.OverviewPanel})),__vite__mapDeps([0,1,2,3,4]))),d=(0,c.lazy)(()=>a(()=>import(`./process-table-1CN3rBVp.js`).then(e=>({default:e.ProcessTable})),__vite__mapDeps([5,1,6,7,8,2,9,3,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,4])));function f({isConnected:e,elapsed:t,tickCount:n}){return(0,l.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[10px] text-text-subtle`,"data-testid":`sysmon-connection`,"data-tick-count":n,children:[e?(0,l.jsx)(r,{className:`size-3 text-success`}):(0,l.jsx)(i,{className:`size-3 text-error`}),(0,l.jsx)(`span`,{children:e?`Updated ${t}s ago`:`Disconnected`})]})}var p=(0,c.memo)(function({initialTab:e=`overview`,onTabChange:t,variant:n=`tab`}){let{latest:r,history:i,isConnected:a,tickCount:p}=s({processes:!0}),[m,h]=(0,c.useState)(e),g=e=>{h(e),t?.(e)},_=r?Math.round((Date.now()-r.ts)/1e3):0,v=r?.warnings??[];return(0,l.jsxs)(`div`,{className:`h-full flex flex-col overflow-hidden`,"data-testid":`system-monitor-window`,children:[n===`tab`&&(0,l.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border shrink-0`,children:[(0,l.jsx)(`h2`,{className:`text-sm font-medium`,children:`System Monitor`}),(0,l.jsx)(f,{isConnected:a,elapsed:_,tickCount:p})]}),v.length>0&&(0,l.jsx)(`div`,{className:`px-3 py-1.5 text-[11px] text-warning bg-warning/10 border-b border-border shrink-0 space-y-0.5`,"data-testid":`sysmon-warnings`,children:v.map((e,t)=>(0,l.jsx)(`div`,{children:e},t))}),(0,l.jsxs)(`div`,{className:`flex items-center border-b border-border shrink-0`,role:`tablist`,children:[(0,l.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":m===`overview`,"data-testid":`sysmon-tab-overview`,onClick:()=>g(`overview`),className:o(`flex-1 md:flex-none min-h-11 px-4 text-sm font-medium transition-colors`,m===`overview`?`text-text-primary border-b-2 border-primary -mb-px`:`text-text-subtle hover:text-text-secondary`),children:`Overview`}),(0,l.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":m===`processes`,"data-testid":`sysmon-tab-processes`,onClick:()=>g(`processes`),className:o(`flex-1 md:flex-none min-h-11 px-4 text-sm font-medium transition-colors`,m===`processes`?`text-text-primary border-b-2 border-primary -mb-px`:`text-text-subtle hover:text-text-secondary`),children:`Processes`}),n===`window`&&(0,l.jsx)(`div`,{className:`ml-auto pr-3`,children:(0,l.jsx)(f,{isConnected:a,elapsed:_,tickCount:p})})]}),(0,l.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto`,children:(0,l.jsx)(c.Suspense,{fallback:(0,l.jsx)(`div`,{className:`p-4 text-xs text-text-subtle`,children:`Loading…`}),children:r?m===`overview`?(0,l.jsx)(u,{system:r.system,history:i}):(0,l.jsx)(d,{snapshot:r}):(0,l.jsx)(`div`,{className:`flex items-center justify-center h-full text-text-subtle text-sm p-4`,children:a?`Waiting for data…`:`Connecting to resource monitor…`})})})]})});export{p as t};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/overview-panel-9OdBcYJC.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-markdown-CuWCHIVb.js","assets/utils-Bmf_8h7Y.js","assets/format-bytes-amUJ8Js8.js","assets/process-table-DH7pnH5I.js","assets/index-BoaecXhu.js","assets/vendor-mermaid-D6lgjvVE.js","assets/vendor-ui-DmZ-Mb-H.js","assets/button-B9CTrsEf.js","assets/createLucideIcon-DoiEKeJ_.js","assets/api-client-Jn3njtNw.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{Lr as r,Rr as i}from"./icons-DQjqk0lJ.js";import{q as a}from"./vendor-mermaid-D6lgjvVE.js";import{n as o}from"./utils-Bmf_8h7Y.js";import{T as s}from"./index-BoaecXhu.js";var c=e(t(),1),l=n(),u=(0,c.lazy)(()=>a(()=>import(`./overview-panel-9OdBcYJC.js`).then(e=>({default:e.OverviewPanel})),__vite__mapDeps([0,1,2,3,4]))),d=(0,c.lazy)(()=>a(()=>import(`./process-table-DH7pnH5I.js`).then(e=>({default:e.ProcessTable})),__vite__mapDeps([5,1,6,7,8,2,9,3,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,4])));function f({isConnected:e,elapsed:t,tickCount:n}){return(0,l.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[10px] text-text-subtle`,"data-testid":`sysmon-connection`,"data-tick-count":n,children:[e?(0,l.jsx)(r,{className:`size-3 text-success`}):(0,l.jsx)(i,{className:`size-3 text-error`}),(0,l.jsx)(`span`,{children:e?`Updated ${t}s ago`:`Disconnected`})]})}var p=(0,c.memo)(function({initialTab:e=`overview`,onTabChange:t,variant:n=`tab`}){let{latest:r,history:i,isConnected:a,tickCount:p}=s({processes:!0}),[m,h]=(0,c.useState)(e),g=e=>{h(e),t?.(e)},_=r?Math.round((Date.now()-r.ts)/1e3):0,v=r?.warnings??[];return(0,l.jsxs)(`div`,{className:`h-full flex flex-col overflow-hidden`,"data-testid":`system-monitor-window`,children:[n===`tab`&&(0,l.jsxs)(`div`,{className:`flex items-center justify-between px-3 py-2 border-b border-border shrink-0`,children:[(0,l.jsx)(`h2`,{className:`text-sm font-medium`,children:`System Monitor`}),(0,l.jsx)(f,{isConnected:a,elapsed:_,tickCount:p})]}),v.length>0&&(0,l.jsx)(`div`,{className:`px-3 py-1.5 text-[11px] text-warning bg-warning/10 border-b border-border shrink-0 space-y-0.5`,"data-testid":`sysmon-warnings`,children:v.map((e,t)=>(0,l.jsx)(`div`,{children:e},t))}),(0,l.jsxs)(`div`,{className:`flex items-center border-b border-border shrink-0`,role:`tablist`,children:[(0,l.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":m===`overview`,"data-testid":`sysmon-tab-overview`,onClick:()=>g(`overview`),className:o(`flex-1 md:flex-none min-h-11 px-4 text-sm font-medium transition-colors`,m===`overview`?`text-text-primary border-b-2 border-primary -mb-px`:`text-text-subtle hover:text-text-secondary`),children:`Overview`}),(0,l.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":m===`processes`,"data-testid":`sysmon-tab-processes`,onClick:()=>g(`processes`),className:o(`flex-1 md:flex-none min-h-11 px-4 text-sm font-medium transition-colors`,m===`processes`?`text-text-primary border-b-2 border-primary -mb-px`:`text-text-subtle hover:text-text-secondary`),children:`Processes`}),n===`window`&&(0,l.jsx)(`div`,{className:`ml-auto pr-3`,children:(0,l.jsx)(f,{isConnected:a,elapsed:_,tickCount:p})})]}),(0,l.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto`,children:(0,l.jsx)(c.Suspense,{fallback:(0,l.jsx)(`div`,{className:`p-4 text-xs text-text-subtle`,children:`Loading…`}),children:r?m===`overview`?(0,l.jsx)(u,{system:r.system,history:i}):(0,l.jsx)(d,{snapshot:r}):(0,l.jsx)(`div`,{className:`flex items-center justify-center h-full text-text-subtle text-sm p-4`,children:a?`Waiting for data…`:`Connecting to resource monitor…`})})})]})});export{p as t};
@@ -1 +1 @@
1
- import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./api-client-Jn3njtNw.js";import"./vendor-mermaid-D6lgjvVE.js";import{t}from"./system-monitor-body-BJrVntEe.js";var n=e(),r=()=>(0,n.jsx)(t,{});export{r as SystemMonitorTab};
1
+ import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./api-client-Jn3njtNw.js";import"./vendor-mermaid-D6lgjvVE.js";import{t}from"./system-monitor-body-5grJyA7C.js";var n=e(),r=()=>(0,n.jsx)(t,{});export{r as SystemMonitorTab};
@@ -1 +1 @@
1
- import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./api-client-Jn3njtNw.js";import"./vendor-mermaid-D6lgjvVE.js";import{t}from"./window-store-UC1jJeLM.js";import{t as n}from"./system-monitor-body-BJrVntEe.js";var r=e();function i({id:e,payload:i}){let a=t(e=>e.setPayload);return(0,r.jsx)(n,{initialTab:i?.tab===`processes`?`processes`:`overview`,onTabChange:t=>a(e,{tab:t}),variant:`window`})}export{i as default};
1
+ import{S as e}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./api-client-Jn3njtNw.js";import"./vendor-mermaid-D6lgjvVE.js";import{t}from"./window-store-UC1jJeLM.js";import{t as n}from"./system-monitor-body-5grJyA7C.js";var r=e();function i({id:e,payload:i}){let a=t(e=>e.setPayload);return(0,r.jsx)(n,{initialTab:i?.tab===`processes`?`processes`:`overview`,onTabChange:t=>a(e,{tab:t}),variant:`window`})}export{i as default};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./vendor-mermaid-D6lgjvVE.js";import"./portal-container-context-BarKmT4S.js";import{p as r,t as i}from"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import"./use-is-mobile-TkcwP1Gx.js";import"./window-pip-registry-D1oXq-Dq.js";import{rn as a}from"./index-C3v3QRVR.js";var o=e(t(),1),s=n();function c({id:e,payload:t}){let n=r(e),c=(i(e=>e.panels[n])?.tabs.length??0)>0,l=(0,o.useRef)(!1);c&&(l.current=!0);let u=typeof t?.originPanelId==`string`?t.originPanelId:null,d=(0,o.useRef)(u);d.current=u;let f=(0,o.useCallback)(e=>a(n,e),[n]),p=(0,o.useRef)(null);return(0,o.useLayoutEffect)(()=>(p.current=null,()=>{let t={};p.current=t,queueMicrotask(()=>{p.current===t&&(p.current=null,i.getState().redockFromWindow(e,d.current))})}),[e]),(0,s.jsxs)(`div`,{className:`relative h-full w-full`,children:[(0,s.jsx)(`div`,{ref:f,className:`absolute inset-0`}),!c&&!l.current&&(0,s.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center text-xs text-text-2 pointer-events-none`,children:`Loading…`})]})}export{c as default};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import"./icons-DQjqk0lJ.js";import"./vendor-mermaid-D6lgjvVE.js";import"./portal-container-context-BarKmT4S.js";import{p as r,t as i}from"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import"./use-is-mobile-TkcwP1Gx.js";import"./window-pip-registry-D1oXq-Dq.js";import{rn as a}from"./index-BoaecXhu.js";var o=e(t(),1),s=n();function c({id:e,payload:t}){let n=r(e),c=(i(e=>e.panels[n])?.tabs.length??0)>0,l=(0,o.useRef)(!1);c&&(l.current=!0);let u=typeof t?.originPanelId==`string`?t.originPanelId:null,d=(0,o.useRef)(u);d.current=u;let f=(0,o.useCallback)(e=>a(n,e),[n]),p=(0,o.useRef)(null);return(0,o.useLayoutEffect)(()=>(p.current=null,()=>{let t={};p.current=t,queueMicrotask(()=>{p.current===t&&(p.current=null,i.getState().redockFromWindow(e,d.current))})}),[e]),(0,s.jsxs)(`div`,{className:`relative h-full w-full`,children:[(0,s.jsx)(`div`,{ref:f,className:`absolute inset-0`}),!c&&!l.current&&(0,s.jsx)(`div`,{className:`absolute inset-0 flex items-center justify-center text-xs text-text-2 pointer-events-none`,children:`Loading…`})]})}export{c as default};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/team-member-window-content-D6SxpWVr.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-mermaid-D6lgjvVE.js","assets/vendor-ui-DmZ-Mb-H.js","assets/vendor-markdown-CuWCHIVb.js","assets/utils-Bmf_8h7Y.js","assets/api-client-Jn3njtNw.js","assets/tool-cards-O9N-oJuB.js","assets/index-C3v3QRVR.js","assets/button-B9CTrsEf.js","assets/createLucideIcon-DoiEKeJ_.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css","assets/image-preview-geometry-BFKR37Pj.js","assets/use-blob-url-C0VR6Uhh.js","assets/image-gallery-DdQblMAe.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Br as r}from"./icons-DQjqk0lJ.js";import{q as i}from"./vendor-mermaid-D6lgjvVE.js";import"./portal-container-context-BarKmT4S.js";import"./window-store-UC1jJeLM.js";import"./use-is-mobile-TkcwP1Gx.js";import{t as a}from"./mobile-bottom-sheet-C3TniEP-.js";import"./use-visual-viewport-Lp878uzs.js";import{n as o}from"./use-open-team-member-y9sVhaNr.js";var s=e(t(),1),c=n(),l=(0,s.lazy)(()=>i(()=>import(`./team-member-window-content-D6SxpWVr.js`),__vite__mapDeps([0,1,2,3,4,5,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])));function u(){let e=o(e=>e.payload),t=o(e=>e.close);return e?(0,c.jsxs)(a,{open:!0,onClose:t,zIndex:45,className:`flex h-[var(--sheet-vh)] flex-col p-0`,children:[(0,c.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2 shrink-0`,children:[(0,c.jsxs)(`span`,{className:`truncate text-sm font-medium text-text-primary`,children:[`Session — `,e.memberName]}),(0,c.jsx)(`button`,{type:`button`,onClick:t,className:`ml-auto flex size-11 items-center justify-center rounded text-text-secondary hover:text-text-primary`,"aria-label":`Close`,children:(0,c.jsx)(r,{className:`size-5`})})]}),(0,c.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto`,children:(0,c.jsx)(s.Suspense,{fallback:(0,c.jsx)(`div`,{className:`p-4 text-sm text-text-2`,children:`Loading…`}),children:(0,c.jsx)(l,{id:`sheet-${e.memberName}`,payload:e})})})]}):null}export{u as TeamMemberSheet};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/team-member-window-content-C97N4RXb.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-mermaid-D6lgjvVE.js","assets/vendor-ui-DmZ-Mb-H.js","assets/vendor-markdown-CuWCHIVb.js","assets/utils-Bmf_8h7Y.js","assets/api-client-Jn3njtNw.js","assets/tool-cards-Bg4vjDYu.js","assets/index-BoaecXhu.js","assets/button-B9CTrsEf.js","assets/createLucideIcon-DoiEKeJ_.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css","assets/image-preview-geometry-BFKR37Pj.js","assets/use-blob-url-C0VR6Uhh.js","assets/image-gallery-DdQblMAe.js"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Br as r}from"./icons-DQjqk0lJ.js";import{q as i}from"./vendor-mermaid-D6lgjvVE.js";import"./portal-container-context-BarKmT4S.js";import"./window-store-UC1jJeLM.js";import"./use-is-mobile-TkcwP1Gx.js";import{t as a}from"./mobile-bottom-sheet-C3TniEP-.js";import"./use-visual-viewport-Lp878uzs.js";import{n as o}from"./use-open-team-member-y9sVhaNr.js";var s=e(t(),1),c=n(),l=(0,s.lazy)(()=>i(()=>import(`./team-member-window-content-C97N4RXb.js`),__vite__mapDeps([0,1,2,3,4,5,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])));function u(){let e=o(e=>e.payload),t=o(e=>e.close);return e?(0,c.jsxs)(a,{open:!0,onClose:t,zIndex:45,className:`flex h-[var(--sheet-vh)] flex-col p-0`,children:[(0,c.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-3 py-2 shrink-0`,children:[(0,c.jsxs)(`span`,{className:`truncate text-sm font-medium text-text-primary`,children:[`Session — `,e.memberName]}),(0,c.jsx)(`button`,{type:`button`,onClick:t,className:`ml-auto flex size-11 items-center justify-center rounded text-text-secondary hover:text-text-primary`,"aria-label":`Close`,children:(0,c.jsx)(r,{className:`size-5`})})]}),(0,c.jsx)(`div`,{className:`min-h-0 flex-1 overflow-auto`,children:(0,c.jsx)(s.Suspense,{fallback:(0,c.jsx)(`div`,{className:`p-4 text-sm text-text-2`,children:`Loading…`}),children:(0,c.jsx)(l,{id:`sheet-${e.memberName}`,payload:e})})})]}):null}export{u as TeamMemberSheet};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Qn as r,ln as i}from"./icons-DQjqk0lJ.js";import{n as a}from"./api-client-Jn3njtNw.js";import"./vendor-mermaid-D6lgjvVE.js";import{n as o}from"./utils-Bmf_8h7Y.js";import"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import"./tab-store-krAuHQ6_.js";import{t as s}from"./tool-cards-O9N-oJuB.js";import"./use-blob-url-C0VR6Uhh.js";var c=e(t(),1),l=3e3,u=2e3;function d(e,t){let[n,r]=(0,c.useState)([]),[i,o]=(0,c.useState)(!0),[s,d]=(0,c.useState)(null),[f,p]=(0,c.useState)(0);return(0,c.useEffect)(()=>{if(!e||!t){d(`Missing team or member`),o(!1);return}let n=!1,i=0,s=!1;r([]),o(!0),d(null);let c=async()=>{if(s)return;s=!0;let c=i===0;try{let o=await a.get(`/api/teams/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}/transcript?sinceBytes=${i}`);if(n)return;i=o?.nextBytes??i;let s=o?.events??[];c||o?.restarted?r(s.slice(-u)):s.length>0&&r(e=>[...e,...s].slice(-u)),d(null)}catch{!n&&c&&d(`Could not read this member's session`)}finally{s=!1,n||o(!1)}};c();let f=setInterval(()=>void c(),l);return()=>{n=!0,clearInterval(f)}},[e,t,f]),{events:n,loading:i,error:s,refresh:(0,c.useCallback)(()=>p(e=>e+1),[])}}var f=n();function p({payload:e}){let{teamName:t,memberName:n,projectName:a}=e??{},{events:c,loading:l,error:u,refresh:p}=d(t,n);return(0,f.jsxs)(`div`,{className:`flex flex-col h-full min-h-0 bg-surface`,children:[(0,f.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border/30 shrink-0`,children:[(0,f.jsx)(`span`,{className:`text-xs font-medium truncate`,children:n}),(0,f.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:c.length>0?`${c.length} steps`:``}),(0,f.jsx)(`button`,{type:`button`,onClick:p,className:`ml-auto text-text-subtle hover:text-foreground p-1 shrink-0`,"aria-label":`Reload session`,children:(0,f.jsx)(r,{className:o(`size-3`,l&&`animate-spin`)})})]}),l&&c.length===0?(0,f.jsxs)(`div`,{className:`flex-1 flex items-center justify-center gap-2 text-xs text-text-subtle`,children:[(0,f.jsx)(i,{className:`size-3 animate-spin`}),`Loading session…`]}):u?(0,f.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-xs text-error px-4 text-center`,children:u}):c.length===0?(0,f.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-xs text-text-subtle`,children:`This member has no recorded session`}):(0,f.jsx)(s,{events:c,projectName:a,className:`flex-1 min-h-0 overflow-y-auto px-3 py-2 space-y-1`})]})}export{p as default};
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{Qn as r,ln as i}from"./icons-DQjqk0lJ.js";import{n as a}from"./api-client-Jn3njtNw.js";import"./vendor-mermaid-D6lgjvVE.js";import{n as o}from"./utils-Bmf_8h7Y.js";import"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import"./tab-store-krAuHQ6_.js";import{t as s}from"./tool-cards-Bg4vjDYu.js";import"./use-blob-url-C0VR6Uhh.js";var c=e(t(),1),l=3e3,u=2e3;function d(e,t){let[n,r]=(0,c.useState)([]),[i,o]=(0,c.useState)(!0),[s,d]=(0,c.useState)(null),[f,p]=(0,c.useState)(0);return(0,c.useEffect)(()=>{if(!e||!t){d(`Missing team or member`),o(!1);return}let n=!1,i=0,s=!1;r([]),o(!0),d(null);let c=async()=>{if(s)return;s=!0;let c=i===0;try{let o=await a.get(`/api/teams/${encodeURIComponent(e)}/members/${encodeURIComponent(t)}/transcript?sinceBytes=${i}`);if(n)return;i=o?.nextBytes??i;let s=o?.events??[];c||o?.restarted?r(s.slice(-u)):s.length>0&&r(e=>[...e,...s].slice(-u)),d(null)}catch{!n&&c&&d(`Could not read this member's session`)}finally{s=!1,n||o(!1)}};c();let f=setInterval(()=>void c(),l);return()=>{n=!0,clearInterval(f)}},[e,t,f]),{events:n,loading:i,error:s,refresh:(0,c.useCallback)(()=>p(e=>e+1),[])}}var f=n();function p({payload:e}){let{teamName:t,memberName:n,projectName:a}=e??{},{events:c,loading:l,error:u,refresh:p}=d(t,n);return(0,f.jsxs)(`div`,{className:`flex flex-col h-full min-h-0 bg-surface`,children:[(0,f.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-border/30 shrink-0`,children:[(0,f.jsx)(`span`,{className:`text-xs font-medium truncate`,children:n}),(0,f.jsx)(`span`,{className:`text-[10px] text-text-subtle`,children:c.length>0?`${c.length} steps`:``}),(0,f.jsx)(`button`,{type:`button`,onClick:p,className:`ml-auto text-text-subtle hover:text-foreground p-1 shrink-0`,"aria-label":`Reload session`,children:(0,f.jsx)(r,{className:o(`size-3`,l&&`animate-spin`)})})]}),l&&c.length===0?(0,f.jsxs)(`div`,{className:`flex-1 flex items-center justify-center gap-2 text-xs text-text-subtle`,children:[(0,f.jsx)(i,{className:`size-3 animate-spin`}),`Loading session…`]}):u?(0,f.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-xs text-error px-4 text-center`,children:u}):c.length===0?(0,f.jsx)(`div`,{className:`flex-1 flex items-center justify-center text-xs text-text-subtle`,children:`This member has no recorded session`}):(0,f.jsx)(s,{events:c,projectName:a,className:`flex-1 min-h-0 overflow-y-auto px-3 py-2 space-y-1`})]})}export{p as default};
@@ -1,3 +1,3 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{$n as r,Cr as i,ct as a,fn as o,ln as s,nt as c,q as l,rn as u,tn as d,vn as f}from"./icons-DQjqk0lJ.js";import{n as p,s as m}from"./api-client-Jn3njtNw.js";import{t as h}from"./settings-store-m6qOXoy4.js";import"./vendor-mermaid-D6lgjvVE.js";import{n as g}from"./utils-Bmf_8h7Y.js";import"./portal-container-context-BarKmT4S.js";import{t as _}from"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import{t as v}from"./tab-store-krAuHQ6_.js";import{r as y,t as b}from"./apply-theme-CbR31K6I.js";import{t as x}from"./mobile-bottom-sheet-C3TniEP-.js";import"./use-visual-viewport-Lp878uzs.js";import{t as S}from"./resolve-theme-BNubecVz.js";import{t as C}from"./ws-auth-CaxV807E.js";import{an as w,ct as T,on as E}from"./index-C3v3QRVR.js";import{r as D}from"./editor-font-D_4aaSCa.js";import{r as O}from"./send-to-chat-C8l7AcV4.js";import{n as k,t as A}from"./run-in-terminal-BFR70TLU.js";import{i as j,n as M,r as N,t as P}from"./vendor-xterm-_yyu5n32.js";var F=e(t(),1);function I(e){let t=e.tokens;if(e.terminal){let n=e.terminal.ansi;return{background:t.bgSolid,foreground:t.text,cursor:e.terminal.cursor,cursorAccent:e.terminal.cursorAccent??t.bgSolid,selectionBackground:e.terminal.selection,black:n[0],red:n[1],green:n[2],yellow:n[3],blue:n[4],magenta:n[5],cyan:n[6],white:n[7],brightBlack:n[8],brightRed:n[9],brightGreen:n[10],brightYellow:n[11],brightBlue:n[12],brightMagenta:n[13],brightCyan:n[14],brightWhite:n[15]}}let n=e.mode===`dark`,r=n?`#1b1f2a`:`#2b2f38`,i=n?`#d7dce8`:`#e9edf5`,a=t.text3,o=n?`#f7f9ff`:`#ffffff`;return{background:t.bgSolid,foreground:t.text,cursor:t.accent,cursorAccent:t.bgSolid,selectionBackground:t.accentWash,black:r,red:t.error,green:t.success,yellow:t.warning,blue:t.accent,magenta:t.accent2,cyan:t.info,white:i,brightBlack:a,brightRed:t.error,brightGreen:t.success,brightYellow:t.warning,brightBlue:t.accent,brightMagenta:t.accent2,brightCyan:t.info,brightWhite:o}}function L(){let e=h.getState();return I(y()??S(e.themeStyle,e.themeMode,e.customThemes,e.customThemeId))}var R=/[).,;:'"\]}>]+$/,z=/\bhttps?:\/\/[^\s<>"'`]+/g,ee=5e3,te=100,B=250,V=3e3,H=`RESIZE:`,ne=`PING`,re=`PONG`,ie=15e3,ae=35e3;function U(e){let{sessionId:t,containerRef:n}=e,r=(0,F.useRef)(null),i=(0,F.useRef)(null),a=(0,F.useRef)(null),o=(0,F.useRef)(null),s=(0,F.useRef)(0),c=(0,F.useRef)(!1),l=(0,F.useRef)(Date.now()),[u,d]=(0,F.useState)(!1),[f,p]=(0,F.useState)(!1),[m,h]=(0,F.useState)(!1),[g,_]=(0,F.useState)(!1),v=(0,F.useRef)(null),y=(0,F.useRef)(null),x=e.tabId?`ppm:terminal-session:${e.tabId}`:null,S=(0,F.useRef)((()=>{if(x)try{return localStorage.getItem(x)??t}catch{}return t})()),w=(0,F.useRef)(0),T=(0,F.useRef)(-1),O=(0,F.useCallback)(e=>{let t=a.current;t?.readyState===WebSocket.OPEN&&t.send(e)},[]),k=(0,F.useCallback)(()=>{v.current&&clearTimeout(v.current),v.current=setTimeout(()=>_(!0),B)},[]),A=(0,F.useCallback)(()=>r.current?.getSelection()??``,[]),I=(0,F.useCallback)(()=>{let e=r.current;if(!e)return``;let t=e.buffer.active,n=w.current,i=t.baseY+t.cursorY,a=[];for(let e=n;e<=i;e++){let n=t.getLine(e);n&&a.push(n.translateToString(!0))}for(;a.length>0&&a[a.length-1].trim()===``;)a.pop();return a.join(`
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{$n as r,Cr as i,ct as a,fn as o,ln as s,nt as c,q as l,rn as u,tn as d,vn as f}from"./icons-DQjqk0lJ.js";import{n as p,s as m}from"./api-client-Jn3njtNw.js";import{t as h}from"./settings-store-m6qOXoy4.js";import"./vendor-mermaid-D6lgjvVE.js";import{n as g}from"./utils-Bmf_8h7Y.js";import"./portal-container-context-BarKmT4S.js";import{t as _}from"./panel-store-D20Zuf3i.js";import"./window-store-UC1jJeLM.js";import{t as v}from"./tab-store-krAuHQ6_.js";import{r as y,t as b}from"./apply-theme-CbR31K6I.js";import{t as x}from"./mobile-bottom-sheet-C3TniEP-.js";import"./use-visual-viewport-Lp878uzs.js";import{t as S}from"./resolve-theme-BNubecVz.js";import{t as C}from"./ws-auth-CaxV807E.js";import{an as w,ct as T,on as E}from"./index-BoaecXhu.js";import{r as D}from"./editor-font-D_4aaSCa.js";import{r as O}from"./send-to-chat-C8l7AcV4.js";import{n as k,t as A}from"./run-in-terminal-BFR70TLU.js";import{i as j,n as M,r as N,t as P}from"./vendor-xterm-_yyu5n32.js";var F=e(t(),1);function I(e){let t=e.tokens;if(e.terminal){let n=e.terminal.ansi;return{background:t.bgSolid,foreground:t.text,cursor:e.terminal.cursor,cursorAccent:e.terminal.cursorAccent??t.bgSolid,selectionBackground:e.terminal.selection,black:n[0],red:n[1],green:n[2],yellow:n[3],blue:n[4],magenta:n[5],cyan:n[6],white:n[7],brightBlack:n[8],brightRed:n[9],brightGreen:n[10],brightYellow:n[11],brightBlue:n[12],brightMagenta:n[13],brightCyan:n[14],brightWhite:n[15]}}let n=e.mode===`dark`,r=n?`#1b1f2a`:`#2b2f38`,i=n?`#d7dce8`:`#e9edf5`,a=t.text3,o=n?`#f7f9ff`:`#ffffff`;return{background:t.bgSolid,foreground:t.text,cursor:t.accent,cursorAccent:t.bgSolid,selectionBackground:t.accentWash,black:r,red:t.error,green:t.success,yellow:t.warning,blue:t.accent,magenta:t.accent2,cyan:t.info,white:i,brightBlack:a,brightRed:t.error,brightGreen:t.success,brightYellow:t.warning,brightBlue:t.accent,brightMagenta:t.accent2,brightCyan:t.info,brightWhite:o}}function L(){let e=h.getState();return I(y()??S(e.themeStyle,e.themeMode,e.customThemes,e.customThemeId))}var R=/[).,;:'"\]}>]+$/,z=/\bhttps?:\/\/[^\s<>"'`]+/g,ee=5e3,te=100,B=250,V=3e3,H=`RESIZE:`,ne=`PING`,re=`PONG`,ie=15e3,ae=35e3;function U(e){let{sessionId:t,containerRef:n}=e,r=(0,F.useRef)(null),i=(0,F.useRef)(null),a=(0,F.useRef)(null),o=(0,F.useRef)(null),s=(0,F.useRef)(0),c=(0,F.useRef)(!1),l=(0,F.useRef)(Date.now()),[u,d]=(0,F.useState)(!1),[f,p]=(0,F.useState)(!1),[m,h]=(0,F.useState)(!1),[g,_]=(0,F.useState)(!1),v=(0,F.useRef)(null),y=(0,F.useRef)(null),x=e.tabId?`ppm:terminal-session:${e.tabId}`:null,S=(0,F.useRef)((()=>{if(x)try{return localStorage.getItem(x)??t}catch{}return t})()),w=(0,F.useRef)(0),T=(0,F.useRef)(-1),O=(0,F.useCallback)(e=>{let t=a.current;t?.readyState===WebSocket.OPEN&&t.send(e)},[]),k=(0,F.useCallback)(()=>{v.current&&clearTimeout(v.current),v.current=setTimeout(()=>_(!0),B)},[]),A=(0,F.useCallback)(()=>r.current?.getSelection()??``,[]),I=(0,F.useCallback)(()=>{let e=r.current;if(!e)return``;let t=e.buffer.active,n=w.current,i=t.baseY+t.cursorY,a=[];for(let e=n;e<=i;e++){let n=t.getLine(e);n&&a.push(n.translateToString(!0))}for(;a.length>0&&a[a.length-1].trim()===``;)a.pop();return a.join(`
2
2
  `)},[]),U=(0,F.useCallback)(()=>{let e=r.current;return!e||T.current<0?``:e.buffer.active.getLine(T.current)?.translateToString(!0).trimEnd()??``},[]),W=(0,F.useCallback)(()=>{let e=r.current;if(!e)return[];let t=e.buffer.active,n=t.baseY+t.cursorY,i=Math.max(0,n-ee),a=[],o=``;for(let e=i;e<=n;e++){let n=t.getLine(e);n&&(o+=n.translateToString(!0),!t.getLine(e+1)?.isWrapped&&(a.push(o),o=``))}o&&a.push(o);let s=new Set,c=[];for(let e of a)for(let t of e.match(z)??[]){let e=t.replace(R,``);!e||s.has(e)||(s.add(e),c.push(e))}return c.reverse()},[]),G=(0,F.useCallback)(()=>{let e=r.current,t=a.current;e&&t?.readyState===WebSocket.OPEN&&t.send(`${H}${e.cols},${e.rows}`)},[]),K=(0,F.useCallback)(()=>{if(o.current&&clearTimeout(o.current),a.current?.close(),a.current=null,S.current=`new`,x)try{localStorage.removeItem(x)}catch{}s.current=0,h(!1),_(!1),d(!1),p(!1),setTimeout(()=>q(),0)},[]),q=(0,F.useCallback)(()=>{o.current&&=(clearTimeout(o.current),null),a.current&&=(a.current.onclose=null,a.current.close(),null);let t=r.current;if(!t)return;let n=window.location.protocol===`https:`?`wss:`:`ws:`,i=e.projectName??``,u=S.current,f=u===`new`&&e.cwd?`?cwd=${encodeURIComponent(e.cwd)}`:``,m=C(`/ws/project/${encodeURIComponent(i)}/terminal/${u}${f}`),g=`${n}//${window.location.host}${m}`,v=new WebSocket(g);a.current=v,v.onopen=()=>{c.current&&r.current&&r.current.clear(),c.current=!0,l.current=Date.now(),d(!0),p(!1),s.current=0,S.current===`new`&&_(!1),y.current&&clearTimeout(y.current),y.current=setTimeout(()=>_(!0),V),G()},v.onmessage=e=>{if(l.current=Date.now(),typeof e.data==`string`){if(e.data===re)return;if(e.data.startsWith(`{`))try{let n=JSON.parse(e.data);if(n.type){if(n.type===`session`&&n.id&&(S.current=n.id,x))try{localStorage.setItem(x,n.id)}catch{}n.type===`error`&&t.write(`\r\n\x1b[31mError: ${n.message}\x1b[0m\r\n`),n.type===`exited`&&h(!0);return}}catch{}k(),t.write(e.data)}},v.onclose=()=>{d(!1),Y()},v.onerror=()=>{v.close()}},[G]),J=(0,F.useCallback)(()=>{if(document.visibilityState!==`visible`)return;let e=a.current;if(!e||e.readyState!==WebSocket.OPEN){q();return}if(Date.now()-l.current>ae){q();return}try{e.send(ne)}catch{q()}},[q]);function Y(){let e=Math.min(1e3*2**s.current,3e4);s.current++,p(!0),o.current=setTimeout(()=>{q()},e)}return(0,F.useEffect)(()=>{let e=n.current;if(!e)return;let t=new j({cursorBlink:!0,fontSize:13,scrollback:5e4,fontFamily:D,theme:L(),minimumContrastRatio:4.5}),s=new N,c=new M;if(t.loadAddon(s),t.loadAddon(c),t.open(e),!(`ontouchstart`in window||navigator.maxTouchPoints>0))try{let e=new P;e.onContextLoss(()=>e.dispose()),t.loadAddon(e)}catch{}s.fit(),r.current=t,i.current=s;let l=!1;document.fonts.ready.then(()=>{if(!(l||r.current!==t)){l=!0;try{t.options.fontFamily=D,s.fit()}catch{}}}),t.onData(e=>{if(e.includes(`\r`)||e.includes(`
3
3
  `)){let e=t.buffer.active;T.current=e.baseY+e.cursorY,w.current=T.current+1}let n=a.current;n?.readyState===WebSocket.OPEN&&n.send(e)}),q();let u=setInterval(J,ie),d=e.ownerDocument,f=()=>{d.visibilityState===`visible`&&J()};d.addEventListener(`visibilitychange`,f);let p=null,m=new ResizeObserver(e=>{let t=e[0];!t||t.contentRect.width===0||t.contentRect.height===0||(p&&clearTimeout(p),p=setTimeout(()=>{try{s.fit(),G()}catch{}},te))});m.observe(e);let h=E(e,()=>{try{s.fit(),G()}catch{}}),g=()=>{t.options.theme=L()};window.addEventListener(b,g);let _=()=>window.removeEventListener(b,g),x=()=>{if(r.current===t)try{t.clearTextureAtlas(),t.refresh(0,t.rows-1)}catch{}};return document.fonts.addEventListener(`loadingdone`,x),()=>{_(),document.fonts.removeEventListener(`loadingdone`,x),h(),p&&clearTimeout(p),m.disconnect(),clearInterval(u),d.removeEventListener(`visibilitychange`,f),o.current&&clearTimeout(o.current),v.current&&clearTimeout(v.current),y.current&&clearTimeout(y.current),a.current?.close(),a.current=null,t.dispose(),r.current=null,i.current=null}},[]),{connected:u,reconnecting:f,exited:m,shellReady:g,sendData:O,getSelection:A,getLastCommandOutput:I,getLastCommand:U,getBufferUrls:W,restart:K}}function W(e,t,n){return new MouseEvent(e,{bubbles:!0,cancelable:!0,view:window,clientX:t.clientX,clientY:t.clientY,screenX:t.screenX,screenY:t.screenY,button:0,buttons:n,detail:1})}function G(e,t){(0,F.useEffect)(()=>{let n=e.current;if(!t||!n)return;let r=n.querySelector(`.xterm`);if(!r)return;let i=e=>{let t=e.touches[0];!t||e.touches.length>1||(e.preventDefault(),e.stopPropagation(),r.dispatchEvent(W(`mousedown`,t,1)))},a=e=>{let t=e.touches[0];t&&(e.preventDefault(),e.stopPropagation(),document.dispatchEvent(W(`mousemove`,t,1)))},o=e=>{let t=e.changedTouches[0];t&&(e.preventDefault(),e.stopPropagation(),document.dispatchEvent(W(`mouseup`,t,0)))},s={capture:!0,passive:!1};return n.addEventListener(`touchstart`,i,s),n.addEventListener(`touchmove`,a,s),n.addEventListener(`touchend`,o,s),n.addEventListener(`touchcancel`,o,s),()=>{n.removeEventListener(`touchstart`,i,s),n.removeEventListener(`touchmove`,a,s),n.removeEventListener(`touchend`,o,s),n.removeEventListener(`touchcancel`,o,s)}},[e,t])}var K=40;function q(e){if(!e||typeof e.checkVisibility==`function`&&!e.checkVisibility({visibilityProperty:!0}))return!1;let t=e.getBoundingClientRect();return t.width<K||t.height<K?!1:t.bottom>0&&t.right>0&&t.top<window.innerHeight&&t.left<window.innerWidth}function J({tabId:e,metadata:t,shellReady:n,sendData:r,focusTerminal:i,containerRef:a}){let o=(0,F.useRef)(null),[s,c]=(0,F.useState)(0),l=(0,F.useCallback)(e=>{o.current=e,c(e=>e+1)},[]),u=t?.pendingCommand;(0,F.useEffect)(()=>{if(!(typeof u!=`string`||!u)&&(l(u),e)){let n={...t??{}};delete n.pendingCommand,_.getState().updateTab(e,{metadata:n})}},[u,e,l]),(0,F.useEffect)(()=>{let e=e=>{let t=e.detail;t?.command&&q(a.current)&&(l(t.command),window.dispatchEvent(new Event(A)))};return window.addEventListener(k,e),()=>window.removeEventListener(k,e)},[a,l]),(0,F.useEffect)(()=>{if(!n)return;let e=o.current;e&&(o.current=null,r(e),i())},[n,s,r,i])}var Y=n(),oe=[{label:`Tab`,value:` `},{label:`Esc`,value:`\x1B`},{label:`Ctrl`,value:null},{label:`↑`,value:`\x1B[A`},{label:`↓`,value:`\x1B[B`},{label:`←`,value:`\x1B[D`},{label:`→`,value:`\x1B[C`},{label:`^C`,value:``}],X=`flex items-center justify-center shrink-0 min-w-11 min-h-11 rounded text-xs bg-surface-elevated text-text-primary active:bg-primary active:text-primary-foreground transition-colors select-none`;function se({ctrlMode:e,onToggleCtrl:t,selectMode:n,onToggleSelect:r,onKey:a,onCopy:o,onPaste:s,onSendToChat:u,onOpenLinks:p}){return(0,Y.jsxs)(`div`,{className:`relative shrink-0 bg-surface border-t border-border`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-1 px-2 py-1.5 overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,children:[(0,Y.jsx)(`button`,{onClick:r,"aria-label":`Select text`,"aria-pressed":n,className:g(X,n&&`bg-primary text-primary-foreground`),children:(0,Y.jsx)(i,{size:16})}),(0,Y.jsx)(`button`,{onClick:o,"aria-label":`Copy`,className:X,children:(0,Y.jsx)(c,{size:16})}),(0,Y.jsx)(`button`,{onClick:s,"aria-label":`Paste`,className:X,children:(0,Y.jsx)(l,{size:16})}),(0,Y.jsx)(`button`,{onClick:p,"aria-label":`Links`,className:X,children:(0,Y.jsx)(d,{size:16})}),(0,Y.jsx)(`button`,{onClick:u,"aria-label":`Send to Chat`,className:X,children:(0,Y.jsx)(f,{size:16})}),(0,Y.jsx)(`div`,{className:`w-px h-6 shrink-0 bg-border mx-0.5`}),oe.map(n=>(0,Y.jsx)(`button`,{onClick:()=>n.value===null?t():a(n.value),className:g(X,`font-mono`,n.value===null&&e&&`bg-primary text-primary-foreground`),children:n.label},n.label)),(0,Y.jsx)(`div`,{className:`w-6 shrink-0`,"aria-hidden":!0})]}),(0,Y.jsx)(`div`,{className:`pointer-events-none absolute inset-y-0 right-0 w-8 bg-gradient-to-l from-surface to-transparent`,"aria-hidden":!0})]})}var ce=new Set([`localhost`,`::1`]);function Z(e){let t=e.replace(/^\[|\]$/g,``).toLowerCase();return ce.has(t)?!0:/^127\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(t)}function Q(e){let t;try{t=new URL(e)}catch{return null}let n=t.searchParams.get(`redirect_uri`)??t.searchParams.get(`redirectUri`);if(!n)return null;try{let e=new URL(n);return Z(e.hostname)?e.port||(e.protocol===`https:`?`443`:`80`):null}catch{return null}}function $(e){try{let t=new URL(e.trim());return(t.protocol===`http:`||t.protocol===`https:`)&&Z(t.hostname)}catch{return!1}}function le({onDone:e}){let[t,n]=(0,F.useState)(``),[r,i]=(0,F.useState)(!1),a=t.trim(),c=!r&&$(a),l=async()=>{i(!0);try{await p.post(`/api/loopback/callback`,{url:a}),m.success(`Sent to the waiting command`,{duration:2e3}),n(``),e()}catch(e){m.error(e.message,{duration:4e3})}finally{i(!1)}};return(0,Y.jsxs)(`div`,{className:`shrink-0 border-t border-border px-3 py-3`,children:[(0,Y.jsx)(`p`,{className:`pb-2 text-[11px] leading-snug text-text-secondary`,children:`Finished signing in and landed on a page that would not load? Paste that address here — the machine will deliver it to the command still waiting.`}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(`input`,{value:t,onChange:e=>n(e.target.value),inputMode:`url`,autoCapitalize:`off`,autoCorrect:`off`,spellCheck:!1,placeholder:`http://127.0.0.1:54132/oauth/callback?code=…`,"aria-label":`Callback address`,className:`h-11 min-w-0 flex-1 rounded-lg border border-border bg-surface px-3 font-mono text-xs text-foreground placeholder:text-text-subtle`}),(0,Y.jsx)(`button`,{onClick:()=>void l(),disabled:!c,"aria-label":`Finish login`,className:`flex size-11 shrink-0 items-center justify-center rounded-lg bg-primary text-primary-foreground disabled:opacity-40 active:opacity-80 transition-opacity`,children:r?(0,Y.jsx)(s,{className:`size-4 animate-spin`}):(0,Y.jsx)(o,{className:`size-4`})})]}),a!==``&&!$(a)&&(0,Y.jsx)(`p`,{className:`pt-1.5 text-[11px] text-error`,children:`Needs to be the http://127.0.0.1:… address the sign-in redirected to.`})]})}function ue({open:e,onClose:t,urls:n}){let r=async e=>{let n=await w(e);m[n?`success`:`error`](n?`Link copied`:`Could not copy link`,{duration:1500}),t()},i=[...new Set(n.map(Q).filter(e=>!!e))];return(0,Y.jsxs)(x,{open:e,onClose:t,zIndex:70,className:`flex flex-col max-h-[70vh]`,children:[(0,Y.jsx)(`div`,{className:`shrink-0 px-4 pb-2 text-xs font-medium text-text-secondary`,children:n.length>0?`Links in terminal (${n.length})`:`Links in terminal`}),(0,Y.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto px-2 pb-2`,children:n.length===0?(0,Y.jsxs)(`div`,{className:`flex flex-col items-center gap-2 px-4 py-8 text-center text-sm text-text-secondary`,children:[(0,Y.jsx)(u,{className:`size-5 text-text-subtle`}),`No links found in the visible scrollback.`]}):n.map(e=>{let n=Q(e);return(0,Y.jsxs)(`div`,{children:[(0,Y.jsxs)(`div`,{className:`flex items-stretch gap-1`,children:[(0,Y.jsxs)(`a`,{href:e,target:`_blank`,rel:`noreferrer noopener`,onClick:t,className:`flex min-h-11 flex-1 min-w-0 items-center gap-2 rounded-lg px-3 py-2 text-sm text-foreground active:bg-accent transition-colors`,children:[(0,Y.jsx)(a,{className:`size-4 shrink-0 text-text-subtle`}),(0,Y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-left font-mono text-xs`,children:e})]}),(0,Y.jsx)(`button`,{onClick:()=>void r(e),"aria-label":`Copy ${e}`,className:`flex size-11 shrink-0 items-center justify-center rounded-lg text-text-secondary active:bg-accent transition-colors`,children:(0,Y.jsx)(c,{className:`size-4`})})]}),n&&(0,Y.jsxs)(`p`,{className:`px-3 pb-2 text-[11px] leading-snug text-text-secondary`,children:[`Signing in here sends you back to port `,n,` `,(0,Y.jsx)(`strong`,{children:`on the machine`}),`, not this device — so the terminal keeps waiting. Afterwards, paste the address bar below to finish it.`]})]},e)})}),i.length>0&&(0,Y.jsx)(le,{onDone:t})]})}var de=(0,F.memo)(function({metadata:e,tabId:t}){let n=e?.sessionId??`new`,i=e?.projectName,a=e?.cwd,o=(0,F.useRef)(null),{connected:s,reconnecting:c,exited:l,shellReady:u,sendData:d,getSelection:p,getLastCommandOutput:h,getLastCommand:_,getBufferUrls:y,restart:b}=U({sessionId:n,projectName:i,cwd:a,containerRef:o,tabId:t}),[x,S]=(0,F.useState)(!1),[C,E]=(0,F.useState)(!1),[D,k]=(0,F.useState)(!1),A=v(e=>e.activeTabId),[j,M]=(0,F.useState)(0);(0,F.useEffect)(()=>{let e=()=>M(e=>e+1);return window.addEventListener(`ppm:onboarding-refresh`,e),()=>window.removeEventListener(`ppm:onboarding-refresh`,e)},[]),(0,F.useEffect)(()=>{if(!i||!t||A!==t||!s||!u||c||l)return;let e=!!o.current?.checkVisibility({checkOpacity:!0,checkVisibilityCSS:!0});e&&T({type:`terminal-ready`,projectName:i,tabId:t,visible:e})},[j,i,t,A,s,u,c,l]),G(o,C);let N=(0,F.useCallback)(()=>{(o.current?.querySelector(`.xterm-helper-textarea`))?.focus()},[]);J({tabId:t,metadata:e,shellReady:u,sendData:d,focusTerminal:N,containerRef:o}),(0,F.useEffect)(()=>{let e=o.current;if(!e||C)return;let t=()=>N();return e.addEventListener(`touchend`,t,{capture:!0}),()=>e.removeEventListener(`touchend`,t,{capture:!0})},[N,C]);let P=(0,F.useCallback)(e=>{if(N(),x&&e.length===1){let t=e.toLowerCase().charCodeAt(0)-96;t>=1&&t<=26&&d(String.fromCharCode(t)),S(!1);return}d(e)},[x,d,N]),I=(0,F.useCallback)(async()=>{let e=p(),t=e||h();if(!t.trim()){m(`Nothing to copy`,{duration:1500});return}let n=await w(t);m[n?`success`:`error`](n?e?`Selection copied`:`Last output copied`:`Could not copy`,{duration:1500})},[p,h]),L=(0,F.useCallback)(async()=>{try{let e=await navigator.clipboard.readText();e&&(d(e),N())}catch{m.error(`Clipboard blocked — paste with the keyboard instead`,{duration:2500})}},[d,N]),R=(0,F.useCallback)(()=>{let e=p(),t=e||h();if(!t.trim())return;let n=e?``:_();O({text:"```bash\n"+(n?`${n}\n${t}`:t)+"\n```",label:e?`Terminal selection`:`Terminal output`,projectName:i}),m.success(`Sent to chat`,{duration:1500})},[p,h,_,i]),z=typeof window<`u`&&`ontouchstart`in window;return(0,Y.jsxs)(`div`,{"data-onboarding":`terminal`,className:`flex flex-col h-full min-h-0`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-1 bg-surface border-b border-border text-xs`,children:[(0,Y.jsx)(`span`,{className:g(`size-2 rounded-full`,l?`bg-error`:s?`bg-success`:c?`bg-warning`:`bg-error`)}),(0,Y.jsx)(`span`,{className:`text-text-secondary`,children:l?`Process exited`:s?`Connected`:c?`Reconnecting...`:`Disconnected`}),l&&(0,Y.jsxs)(`button`,{onClick:b,className:`flex items-center gap-1 px-1.5 py-0.5 rounded text-xs bg-surface-elevated text-text-primary hover:bg-primary hover:text-primary-foreground active:bg-primary active:text-primary-foreground transition-colors`,children:[(0,Y.jsx)(r,{size:10}),`Restart`]}),(0,Y.jsxs)(`button`,{onClick:R,title:`Send to Chat`,className:`flex items-center gap-1 px-1.5 py-0.5 rounded text-xs bg-surface-elevated text-text-primary hover:bg-primary hover:text-primary-foreground active:bg-primary active:text-primary-foreground transition-colors ml-auto`,children:[(0,Y.jsx)(f,{size:10}),`Chat`]}),(0,Y.jsx)(`span`,{className:`text-text-subtle font-mono`,children:n})]}),(0,Y.jsx)(`div`,{ref:o,onClick:C?void 0:N,className:g(`flex-1 min-h-0 bg-background p-1`,C&&`touch-none`)}),z&&(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(se,{ctrlMode:x,onToggleCtrl:()=>S(!x),selectMode:C,onToggleSelect:()=>E(!C),onKey:P,onCopy:()=>void I(),onPaste:()=>void L(),onSendToChat:R,onOpenLinks:()=>k(!0)}),(0,Y.jsx)(ue,{open:D,onClose:()=>k(!1),urls:D?y():[]})]})]})});export{de as TerminalTab};
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/markdown-renderer-Df1vynCr.js","assets/vendor-mermaid-D6lgjvVE.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-ui-DmZ-Mb-H.js","assets/vendor-markdown-CuWCHIVb.js","assets/markdown-renderer-DqNZUt1S.js","assets/index-C3v3QRVR.js","assets/button-B9CTrsEf.js","assets/utils-Bmf_8h7Y.js","assets/createLucideIcon-DoiEKeJ_.js","assets/api-client-Jn3njtNw.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css","assets/image-gallery-DdQblMAe.js","assets/run-in-terminal-BFR70TLU.js","assets/edit-diff-preview-BG5DsLJG.js","assets/libesm-cUHvIIuW.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{E as r,J as i,K as a,Kt as o,Nr as s,O as c,Pt as l,V as u,Vr as d,Z as f,an as p,ar as m,cn as h,ct as g,et as _,gt as v,ht as y,ir as b,j as x,ln as S,n as C,pr as w,pt as T,u as E,v as D,xr as O}from"./icons-DQjqk0lJ.js";import{q as k}from"./vendor-mermaid-D6lgjvVE.js";import{t as A}from"./utils-Bmf_8h7Y.js";import{t as j}from"./tab-store-krAuHQ6_.js";import{Wt as M,an as N,r as P}from"./index-C3v3QRVR.js";import{a as F,i as ee,n as I,r as te,t as ne}from"./image-preview-geometry-BFKR37Pj.js";import{t as re}from"./use-blob-url-C0VR6Uhh.js";import{r as ie,t as ae}from"./image-gallery-DdQblMAe.js";var L=e(t(),1),R=n(),oe=(0,L.lazy)(()=>k(()=>import(`./markdown-renderer-Df1vynCr.js`).then(e=>({default:e.MarkdownRenderer})),__vite__mapDeps([0,1,2,3,4,5,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])));function z({content:e,maxHeight:t=`max-h-48`}){return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`div`,{className:`animate-pulse h-4 bg-muted rounded`}),children:(0,R.jsx)(oe,{content:e,className:`text-text-secondary overflow-auto ${t}`})})}var B={task_assignment:{label:`task`,className:`bg-primary/20 text-primary`},idle_notification:{label:`idle`,className:`bg-warning/20 text-warning`},completion:{label:`done`,className:`bg-success/20 text-success`},shutdown_request:{label:`shutdown`,className:`bg-error/20 text-error`},shutdown_approved:{label:`shutdown ✓`,className:`bg-text-3/20 text-text-3`},shutdown_response:{label:`shutdown reply`,className:`bg-text-3/20 text-text-3`},plan_approval_request:{label:`plan review`,className:`bg-primary/20 text-primary`},plan_approval_response:{label:`plan reply`,className:`bg-primary/20 text-primary`}},se=new Set([`to`,`message`,`summary`,`notify_when_idle`,`recipient`,`content`,`type`]),V=e=>typeof e==`string`?e:e==null?``:String(e);function H(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e;return typeof t.type!=`string`||!t.type?null:{type:t.type,request_id:typeof t.request_id==`string`?t.request_id:void 0,approve:typeof t.approve==`boolean`?t.approve:void 0,reason:typeof t.reason==`string`?t.reason:void 0,feedback:typeof t.feedback==`string`?t.feedback:void 0}}function ce(e){let t=e.trim();if(!t.startsWith(`{`))return null;try{return H(JSON.parse(t))}catch{return null}}function U(e){let t=V(e.to)||V(e.recipient),n=e.message??e.content,r=H(n)??ce(V(n)),i=r?``:V(n),a=V(e.type),o=r?.type||(a&&a!==`message`?a:`message`),s=V(e.summary).trim(),c=Object.entries(e).filter(([e])=>!se.has(e)).map(([e,t])=>({key:e,value:typeof t==`string`?t:JSON.stringify(t)??``}));return{to:t,summary:s||void 0,text:i,firstLine:i.split(`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/markdown-renderer-Ddz8tPbb.js","assets/vendor-mermaid-D6lgjvVE.js","assets/rolldown-runtime-FhOqtrmT.js","assets/vendor-ui-DmZ-Mb-H.js","assets/vendor-markdown-CuWCHIVb.js","assets/markdown-renderer-BGuM2PBI.js","assets/index-BoaecXhu.js","assets/button-B9CTrsEf.js","assets/utils-Bmf_8h7Y.js","assets/createLucideIcon-DoiEKeJ_.js","assets/api-client-Jn3njtNw.js","assets/react-Bghu0NUO.js","assets/settings-store-m6qOXoy4.js","assets/file-store-Ds3qJ4hC.js","assets/window-store-UC1jJeLM.js","assets/window-pip-registry-D1oXq-Dq.js","assets/panel-store-D20Zuf3i.js","assets/onboarding-quick-orientation-Dqmis-E5.js","assets/dialog-B84_DJQ8.js","assets/portal-container-context-BarKmT4S.js","assets/icons-DQjqk0lJ.js","assets/use-is-mobile-TkcwP1Gx.js","assets/format-file-meta-eKLstbCL.js","assets/fs-api-orca76dV.js","assets/context-menu-C6pIsf83.js","assets/input-QNG_gTHh.js","assets/mobile-bottom-sheet-C3TniEP-.js","assets/use-visual-viewport-Lp878uzs.js","assets/scroll-area-C0fQWNnx.js","assets/file-icons-wS-OmEVu.js","assets/project-framework-store-ViZgce6y.js","assets/git-repo-store-BCEPfUGT.js","assets/project-store-hNvwfqX3.js","assets/ws-auth-CaxV807E.js","assets/tab-store-krAuHQ6_.js","assets/apply-theme-CbR31K6I.js","assets/resolve-theme-BNubecVz.js","assets/index-aXJy_SvC.css","assets/image-gallery-DdQblMAe.js","assets/run-in-terminal-BFR70TLU.js","assets/edit-diff-preview-BG5DsLJG.js","assets/libesm-cUHvIIuW.js"])))=>i.map(i=>d[i]);
2
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t,S as n}from"./vendor-markdown-CuWCHIVb.js";import{E as r,J as i,K as a,Kt as o,Nr as s,O as c,Pt as l,V as u,Vr as d,Z as f,an as p,ar as m,cn as h,ct as g,et as _,gt as v,ht as y,ir as b,j as x,ln as S,n as C,pr as w,pt as T,u as E,v as D,xr as O}from"./icons-DQjqk0lJ.js";import{q as k}from"./vendor-mermaid-D6lgjvVE.js";import{t as A}from"./utils-Bmf_8h7Y.js";import{t as j}from"./tab-store-krAuHQ6_.js";import{Wt as M,an as N,r as P}from"./index-BoaecXhu.js";import{a as F,i as ee,n as I,r as te,t as ne}from"./image-preview-geometry-BFKR37Pj.js";import{t as re}from"./use-blob-url-C0VR6Uhh.js";import{r as ie,t as ae}from"./image-gallery-DdQblMAe.js";var L=e(t(),1),R=n(),oe=(0,L.lazy)(()=>k(()=>import(`./markdown-renderer-Ddz8tPbb.js`).then(e=>({default:e.MarkdownRenderer})),__vite__mapDeps([0,1,2,3,4,5,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])));function z({content:e,maxHeight:t=`max-h-48`}){return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`div`,{className:`animate-pulse h-4 bg-muted rounded`}),children:(0,R.jsx)(oe,{content:e,className:`text-text-secondary overflow-auto ${t}`})})}var B={task_assignment:{label:`task`,className:`bg-primary/20 text-primary`},idle_notification:{label:`idle`,className:`bg-warning/20 text-warning`},completion:{label:`done`,className:`bg-success/20 text-success`},shutdown_request:{label:`shutdown`,className:`bg-error/20 text-error`},shutdown_approved:{label:`shutdown ✓`,className:`bg-text-3/20 text-text-3`},shutdown_response:{label:`shutdown reply`,className:`bg-text-3/20 text-text-3`},plan_approval_request:{label:`plan review`,className:`bg-primary/20 text-primary`},plan_approval_response:{label:`plan reply`,className:`bg-primary/20 text-primary`}},se=new Set([`to`,`message`,`summary`,`notify_when_idle`,`recipient`,`content`,`type`]),V=e=>typeof e==`string`?e:e==null?``:String(e);function H(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e;return typeof t.type!=`string`||!t.type?null:{type:t.type,request_id:typeof t.request_id==`string`?t.request_id:void 0,approve:typeof t.approve==`boolean`?t.approve:void 0,reason:typeof t.reason==`string`?t.reason:void 0,feedback:typeof t.feedback==`string`?t.feedback:void 0}}function ce(e){let t=e.trim();if(!t.startsWith(`{`))return null;try{return H(JSON.parse(t))}catch{return null}}function U(e){let t=V(e.to)||V(e.recipient),n=e.message??e.content,r=H(n)??ce(V(n)),i=r?``:V(n),a=V(e.type),o=r?.type||(a&&a!==`message`?a:`message`),s=V(e.summary).trim(),c=Object.entries(e).filter(([e])=>!se.has(e)).map(([e,t])=>({key:e,value:typeof t==`string`?t:JSON.stringify(t)??``}));return{to:t,summary:s||void 0,text:i,firstLine:i.split(`
3
3
  `).map(e=>e.trim()).find(e=>e.length>0)??``,protocol:r??void 0,kind:o,notifyWhenIdle:e.notify_when_idle===!0,extras:c}}function W(e){if(!e)return null;let t;try{t=JSON.parse(e)}catch{return null}if(Array.isArray(t)){let e=V(t.find(e=>e&&typeof e==`object`&&e.type===`text`)?.text);if(!e)return null;try{t=JSON.parse(e)}catch{return null}}if(!t||typeof t!=`object`||Array.isArray(t))return null;let n=t;if(typeof n.success!=`boolean`)return null;let r=n.pin&&typeof n.pin==`object`?n.pin:null;return{ok:n.success,detail:V(n.message)||V(n.error)||void 0,peer:r&&V(r.name)||void 0,ref:r&&V(r.ref)||void 0}}function le({kind:e}){if(e===`message`)return null;let t=B[e];return(0,R.jsx)(`span`,{className:`inline-block rounded px-1.5 py-0.5 text-[10px] ${t?.className??`bg-panel-2 text-text-3`}`,children:t?.label??e})}function ue({name:e,input:t}){let n=U(t),r=n.summary||n.firstLine||(n.protocol?n.kind:``),a=r.length>72?`${r.slice(0,72)}…`:r;return(0,R.jsxs)(R.Fragment,{children:[e,` `,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[(0,R.jsx)(E,{className:`size-3 inline`}),` `,n.to||`unknown`,a?` · ${a}`:``]}),n.notifyWhenIdle&&(0,R.jsx)(i,{className:`size-3 inline ml-1 text-text-3`})]})}function de({input:e}){let t=U(e);return(0,R.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,R.jsx)(`span`,{className:`text-text-subtle`,children:`To`}),(0,R.jsx)(`span`,{className:`font-medium text-text-primary`,children:t.to||`unknown`}),(0,R.jsx)(le,{kind:t.kind}),t.notifyWhenIdle&&(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] bg-panel-2 text-text-3`,children:[(0,R.jsx)(i,{className:`size-3`}),` notify when idle`]})]}),!!t.text&&(0,R.jsx)(z,{content:t.text,maxHeight:`max-h-40`}),t.protocol&&(0,R.jsxs)(`div`,{className:`space-y-0.5 text-text-secondary`,children:[t.protocol.approve!=null&&(0,R.jsxs)(`p`,{children:[t.protocol.approve?`Approved`:`Rejected`,t.protocol.request_id?(0,R.jsxs)(`span`,{className:`text-text-subtle font-mono`,children:[` · `,t.protocol.request_id]}):null]}),!!t.protocol.reason&&(0,R.jsx)(`p`,{className:`text-text-subtle`,children:t.protocol.reason}),!!t.protocol.feedback&&(0,R.jsx)(`p`,{className:`text-text-subtle`,children:t.protocol.feedback})]}),t.extras.length>0&&(0,R.jsx)(`div`,{className:`space-y-0.5`,children:t.extras.map(e=>(0,R.jsxs)(`p`,{className:`text-text-subtle`,children:[(0,R.jsx)(`span`,{className:`font-mono`,children:e.key}),`: `,e.value]},e.key))})]})}function fe({output:e}){let[t,n]=(0,L.useState)(!1),i=W(e);return i?(0,R.jsxs)(`div`,{className:`border-t border-border pt-1.5 space-y-1`,children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-1.5 flex-wrap`,children:[i.ok?(0,R.jsx)(r,{className:`size-3 text-success shrink-0`}):(0,R.jsx)(d,{className:`size-3 text-error shrink-0`}),(0,R.jsx)(`span`,{className:i.ok?`text-success`:`text-error`,children:i.ok?`Delivered`:`Not delivered`}),!!i.detail&&(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[`· `,i.detail]}),!!i.ref&&(0,R.jsxs)(`span`,{className:`text-text-3 font-mono text-[10px]`,children:[`[`,i.ref,`]`]})]}),(0,R.jsxs)(`button`,{type:`button`,onClick:()=>n(!t),className:`flex items-center gap-1 text-[10px] text-text-subtle hover:text-text-secondary transition-colors`,children:[(0,R.jsx)(f,{className:`size-3`}),t?`Hide`:`Show`,` raw`]}),t&&(0,R.jsx)(`pre`,{className:`overflow-x-auto text-text-subtle font-mono max-h-40 whitespace-pre-wrap break-all text-[10px]`,children:e})]}):null}var pe=new Set([`.png`,`.jpg`,`.jpeg`,`.gif`,`.webp`,`.bmp`,`.avif`,`.ico`]);function me(e){let t=e.lastIndexOf(`.`);return t===-1?!1:pe.has(e.slice(t).toLowerCase())}var he=/^\[image(?: · [\d.]+(?:B|KB|MB))?\]$/;function ge(e){if(!e.startsWith(`[`))return!1;let t;try{t=JSON.parse(e)}catch{return!1}return Array.isArray(t)?t.some(e=>{let t=e;return t?.type===`text`&&typeof t.text==`string`&&he.test(t.text)}):!1}var _e=`Async agent launched successfully`;function ve(e){return!!e&&e.includes(_e)}var ye=`text-[var(--img-meta-label)] @max-[470px]:hidden`,be=[`60%`,`45%`,`80%`];function xe({aspect:e,actions:t}){return(0,R.jsxs)(`div`,{className:`grid grid-cols-[132px_1fr] items-start gap-[14px] overflow-hidden rounded-lg border border-border bg-panel p-[14px] @max-[470px]:grid-cols-[64px_1fr] @max-[470px]:gap-[11px] @max-[470px]:p-[11px]`,children:[(0,R.jsx)(`div`,{className:`img-skeleton rounded-lg`,style:{aspectRatio:e}}),(0,R.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-[9px]`,children:[(0,R.jsx)(`div`,{className:`img-skeleton h-[13px] w-2/5 rounded @max-[470px]:hidden`}),(0,R.jsx)(`dl`,{className:`grid grid-cols-[auto_1fr] gap-x-[14px] gap-y-[4px] font-mono text-[11.5px] @max-[470px]:grid-cols-[1fr]`,children:[`dimensions`,`size`,`path`].map((e,t)=>(0,R.jsxs)(L.Fragment,{children:[(0,R.jsx)(`dt`,{className:ye,children:e}),(0,R.jsx)(`dd`,{className:`flex items-center`,children:(0,R.jsx)(`span`,{className:`img-skeleton h-[11px] rounded`,style:{width:be[t]}})})]},e))}),t]})]})}function Se({code:e,onRetry:t}){return(0,R.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-border bg-panel px-2.5 py-2 font-mono text-[12px] text-text-2`,children:[(0,R.jsx)(C,{className:`size-3 shrink-0`}),(0,R.jsxs)(`span`,{className:`truncate`,children:[`preview unavailable`,e?` · ${e}`:``]}),(0,R.jsx)(`button`,{type:`button`,onClick:t,className:`ml-auto shrink-0 text-accent`,children:`retry`})]})}var Ce=4/5,G=`text-[var(--img-meta-label)] @max-[470px]:hidden`,K=`truncate text-text @max-[470px]:text-text-2`,q=`h-[30px] @max-[470px]:h-[36px] shrink-0 rounded-[7px] px-[9px] font-mono text-[11.5px] text-text-2 bg-[var(--img-ghost)] border border-[var(--img-ghost-border)] backdrop-blur-[6px] transition-colors can-hover:hover:bg-[var(--img-ghost-hover)] can-hover:hover:border-[var(--img-ghost-hover-border)] can-hover:hover:text-text`;function we({filePath:e,projectName:t}){let[n,r]=(0,L.useState)(0),{blobUrl:i,blob:a,error:o,errorCode:s}=re(e,t,void 0,n),[c,l]=(0,L.useState)(()=>ee(e)),[u,d]=(0,L.useState)(!1),[f,p]=(0,L.useState)(!1),m=P(e=>e.open),{openTab:h}=j(M(e=>({openTab:e.openTab}))),g=A(e);(0,L.useEffect)(()=>{if(!f)return;let e=setTimeout(()=>p(!1),1200);return()=>clearTimeout(e)},[f]);let _=t=>{let n={w:t.naturalWidth,h:t.naturalHeight};if(!n.w||!n.h)return d(!0);ne(e,n),l(n)},v=()=>{d(!1),r(e=>e+1)};if(o||u)return(0,R.jsx)(`div`,{className:`border-t border-border pt-1.5`,children:(0,R.jsx)(Se,{code:u?void 0:s??void 0,onRetry:v})});let y=c?F(c,132):null,b=y?.aspect??Ce,x=(0,R.jsxs)(`div`,{className:`flex flex-wrap gap-[6px]`,children:[(0,R.jsxs)(`button`,{type:`button`,onClick:S,className:q,children:[(0,R.jsx)(`span`,{className:`@max-[470px]:hidden`,children:`open in editor`}),(0,R.jsx)(`span`,{className:`hidden @max-[470px]:inline`,children:`open`})]}),(0,R.jsx)(`button`,{type:`button`,onClick:C,className:q,children:f?`copied`:`copy path`}),(0,R.jsx)(`button`,{type:`button`,onClick:w,className:q,children:`full size`})]});function S(){t&&h({type:`editor`,title:g,metadata:{filePath:e,projectName:t},projectId:t,closable:!0})}function C(){N(e).then(()=>p(!0))}function w(e){i&&m(i,g,ie(e.currentTarget))}if(!i||!y||!c)return(0,R.jsxs)(`div`,{className:`@container border-t border-border pt-1.5`,children:[i&&(0,R.jsx)(`img`,{src:i,alt:``,className:`hidden`,onLoad:e=>_(e.currentTarget),onError:()=>d(!0)}),(0,R.jsx)(xe,{aspect:b,actions:x})]});let T=(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`dt`,{className:G,children:`dimensions`}),(0,R.jsx)(`dd`,{className:K,children:I(c,y.fit)}),a&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`dt`,{className:G,children:`size`}),(0,R.jsxs)(`dd`,{className:K,children:[te(a.size),a.type?` · ${a.type}`:``]})]}),(0,R.jsx)(`dt`,{className:G,children:`path`}),(0,R.jsx)(`dd`,{dir:`rtl`,className:`${K} text-left`,children:e})]}),E=(0,R.jsx)(`img`,{src:i,alt:g,[ae]:``,onLoad:e=>_(e.currentTarget),onError:()=>d(!0),className:y.fit===`cover`?`size-full object-cover`:y.fit===`contain`?`size-full object-contain`:`max-h-full max-w-full`});return(0,R.jsx)(`div`,{className:`@container border-t border-border pt-1.5`,children:(0,R.jsxs)(`div`,{className:`relative overflow-hidden rounded-lg border border-border p-[14px] @max-[470px]:p-[11px]`,children:[(0,R.jsx)(`img`,{"aria-hidden":`true`,alt:``,src:i,className:`absolute inset-0 size-full object-cover`,style:{filter:`var(--img-backdrop)`,transform:`scale(1.3)`}}),(0,R.jsx)(`div`,{className:`absolute inset-0`,style:{background:`var(--img-veil)`}}),y.variant===`band`?(0,R.jsxs)(`div`,{className:`relative grid gap-[11px]`,children:[(0,R.jsx)(`button`,{type:`button`,onClick:w,title:`Open ${g}`,className:`img-checkerboard w-full cursor-zoom-in overflow-hidden rounded-lg border border-[var(--img-plate-border)]`,style:{aspectRatio:y.aspect},children:E}),(0,R.jsx)(`dl`,{className:`grid grid-cols-[auto_auto_1fr] gap-x-[18px] font-mono text-[11.5px] [&_dt]:hidden`,children:T}),x]}):(0,R.jsxs)(`div`,{className:`relative grid grid-cols-[132px_1fr] items-start gap-[14px] @max-[470px]:grid-cols-[64px_1fr] @max-[470px]:gap-[11px]`,children:[(0,R.jsx)(`button`,{type:`button`,onClick:w,title:`Open ${g}`,className:`cursor-zoom-in overflow-hidden rounded-lg border border-[var(--img-plate-border)] bg-[var(--img-plate)] shadow-[var(--img-plate-shadow)] ${y.fit===`cover`?``:`img-checkerboard flex items-center justify-center`}`,style:{aspectRatio:y.aspect},children:E}),(0,R.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-[9px]`,children:[(0,R.jsx)(`p`,{className:`truncate text-[13px] font-semibold text-text @max-[470px]:hidden`,children:g}),(0,R.jsx)(`dl`,{className:`grid grid-cols-[auto_1fr] gap-x-[14px] gap-y-[4px] font-mono text-[11.5px] @max-[470px]:grid-cols-[1fr]`,children:T}),x]})]})]})})}function J(e,t){if(e!==`Agent`&&e!==`Task`)return null;let n=t.name;return typeof n==`string`&&n.trim()?n.trim():null}function Te(e,t,n=!1){if(t&&(e===`Bash`||e===`PowerShell`))return{Icon:O,cls:`bg-error/15 text-error`};if(n)return{Icon:s,cls:`bg-accent-2/15 text-accent-2`};switch(e){case`Read`:case`Glob`:case`LS`:return{Icon:v,cls:`bg-accent-wash text-primary`};case`Grep`:case`Search`:case`WebSearch`:case`ToolSearch`:return{Icon:b,cls:`bg-accent-wash text-primary`};case`WebFetch`:case`Fetch`:return{Icon:l,cls:`bg-info/15 text-info`};case`Edit`:case`MultiEdit`:case`NotebookEdit`:return{Icon:T,cls:`bg-accent-2/15 text-accent-2`};case`Write`:return{Icon:y,cls:`bg-success/15 text-success`};case`Bash`:case`PowerShell`:return{Icon:O,cls:`bg-panel-2 text-text-2`};case`TodoWrite`:return{Icon:p,cls:`bg-warning/15 text-warning`};case`Task`:case`Agent`:return{Icon:D,cls:`bg-accent-wash text-primary`};case`SendMessage`:return{Icon:m,cls:`bg-info/15 text-info`};case`AskUserQuestion`:return{Icon:u,cls:`bg-accent-wash text-primary`};case`ExitPlanMode`:return{Icon:a,cls:`bg-accent-wash text-primary`};case`Skill`:return{Icon:w,cls:`bg-accent-2/15 text-accent-2`};case`ImageGen`:return{Icon:o,cls:`bg-accent-2/15 text-accent-2`};default:return{Icon:f,cls:`bg-panel-2 text-text-2`}}}function Ee(e){let t=e.type===`approval_request`;return{toolName:e.type===`tool_use`?e.tool:t?e.tool??`Tool`:`Tool`,input:e.type===`tool_use`?e.input:t?e.input??{}:{}}}var De=new Set([`Read`,`ImageGen`]);function Y(e){if(e.type!==`tool_use`||!De.has(e.tool))return null;let t=e.input?.file_path;return typeof t!=`string`||!/^(\/|[A-Za-z]:[/\\])/.test(t)?null:me(t)?t:null}function X({tool:e,result:t,completed:n,projectName:i,bashPartialOutput:a}){let[o,s]=(0,L.useState)(()=>{let n=(e.type,e.tool),r=t?.type===`tool_result`&&!!t.isError;return(n===`Edit`||n===`MultiEdit`)&&!r?!0:!!Y(e)});if(e.type===`error`)return(0,R.jsxs)(`div`,{className:`flex items-center gap-2 rounded bg-error/10 border border-error/20 px-2 py-1.5 text-xs text-error`,children:[(0,R.jsx)(C,{className:`size-3`}),(0,R.jsx)(`span`,{children:e.message})]});let{toolName:l,input:u}=Ee(e),f=t?.type===`tool_result`,p=f&&!!t.isError,m=f&&typeof t.exitCode==`number`?t.exitCode:void 0,h=l===`AskUserQuestion`&&!!u?.answers,g=e.type===`approval_request`&&e.approved!=null,_=(l===`Agent`||l===`Task`)&&e.type===`tool_use`,v=_?e.children:void 0,y=v&&v.length>0,b=_&&e.type===`tool_use`?e.bgStatus:void 0,w=_&&(b!=null||f&&!p&&ve(String(t.output??``)))&&b==null,T=b===`failed`||b===`stopped`,E=w?!1:f||h||g||n,D=[`Edit`,`MultiEdit`,`Write`,`NotebookEdit`].includes(l),O=Y(e),k=f&&ge(String(t.output??``)),A=!!O,j=e.type===`tool_use`?e.toolUseId:void 0,M=(l===`Bash`||l===`PowerShell`)&&!f&&j?a?.current?.get(j):void 0,N=!!M;(0,L.useEffect)(()=>{N&&!o&&s(!0)},[N]);let P=(0,L.useRef)(!1);(0,L.useEffect)(()=>{p&&(l===`Edit`||l===`MultiEdit`)&&!P.current&&(P.current=!0,s(!1))},[p,l]);let{Icon:F,cls:ee}=Te(l,p,!!J(l,u)),I=l===`AskUserQuestion`||l===`ExitPlanMode`||_;return(0,R.jsxs)(`div`,{"data-tool-ref":j,className:`rounded-[11px] border overflow-hidden text-xs bg-panel ${I?`border-accent-wash-border`:`border-border`}`,children:[(0,R.jsxs)(`button`,{onClick:()=>s(!o),className:`flex items-center gap-2.5 px-2.5 py-2 w-full text-left hover:bg-panel-2/40 transition-colors min-w-0`,children:[(0,R.jsx)(`span`,{className:`inline-flex items-center justify-center size-6 rounded-[7px] shrink-0 ${ee}`,children:(0,R.jsx)(F,{className:`size-3.5`})}),(0,R.jsx)(`span`,{className:`truncate text-text font-medium`,children:(0,R.jsx)(Oe,{name:l,input:u})}),(0,R.jsxs)(`span`,{className:`ml-auto flex items-center gap-2 shrink-0`,children:[N&&(0,R.jsxs)(`span`,{className:`text-[10px] text-warning`,children:[M.lineCount,` line`,M.lineCount===1?``:`s`,` streaming…`]}),y&&!N&&(0,R.jsxs)(`span`,{className:`text-[10px] text-text-3 font-mono`,children:[v.length,` steps`]}),w&&(0,R.jsx)(`span`,{className:`text-[10px] text-primary`,children:`running…`}),m!=null&&(0,R.jsxs)(`span`,{className:`text-[10px] font-mono ${m===0?`text-text-3`:`text-error`}`,children:[`exit `,m]}),p||T?(0,R.jsx)(d,{className:`size-3.5 text-error`}):E?(0,R.jsx)(r,{className:`size-3.5 text-success`}):(0,R.jsx)(S,{className:`size-3.5 text-primary animate-spin`}),o?(0,R.jsx)(c,{className:`size-3 text-text-3`}):(0,R.jsx)(x,{className:`size-3 text-text-3`})]})]}),o&&(0,R.jsxs)(`div`,{className:`px-2 pb-2 space-y-1.5 select-text`,children:[(e.type===`tool_use`||e.type===`approval_request`)&&(0,R.jsx)(ke,{name:l,input:u,projectName:i,toolUseId:j}),M&&(0,R.jsx)(Ne,{content:M.content,lineCount:M.lineCount}),y&&(0,R.jsx)(Q,{events:v,projectName:i}),O&&(0,R.jsx)(we,{filePath:O,projectName:i??``}),f&&!(D&&!p)&&!(k&&!p)&&!(A&&!p)&&(0,R.jsx)(je,{toolName:l,output:t.output})]})]})}function Oe({name:e,input:t}){let n=e=>String(e??``);switch(e){case`Read`:case`Write`:case`Edit`:case`MultiEdit`:case`NotebookEdit`:return(0,R.jsxs)(R.Fragment,{children:[e,` `,(0,R.jsx)(`span`,{className:`text-text-subtle`,children:A(n(t.file_path))})]});case`Bash`:case`PowerShell`:{let r=t.description?n(t.description):n(t.command);return(0,R.jsxs)(R.Fragment,{children:[e,` `,(0,R.jsx)(`span`,{className:`text-text-subtle${t.description?``:` font-mono`}`,children:$(r,60)})]})}case`Glob`:return(0,R.jsxs)(R.Fragment,{children:[e,` `,(0,R.jsx)(`span`,{className:`font-mono text-text-subtle`,children:n(t.pattern)})]});case`Grep`:return(0,R.jsxs)(R.Fragment,{children:[e,` `,(0,R.jsx)(`span`,{className:`font-mono text-text-subtle`,children:$(n(t.pattern),40)})]});case`WebSearch`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(b,{className:`size-3 inline`}),` `,e,` `,(0,R.jsx)(`span`,{className:`text-text-subtle`,children:$(n(t.query),50)})]});case`WebFetch`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(l,{className:`size-3 inline`}),` `,e,` `,(0,R.jsx)(`span`,{className:`text-text-subtle`,children:$(n(t.url),50)})]});case`ToolSearch`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(b,{className:`size-3 inline`}),` `,e,` `,(0,R.jsx)(`span`,{className:`text-text-subtle`,children:$(n(t.query),50)})]});case`ImageGen`:{let e=(n(t.prompt).split(`
4
4
  `).find(e=>e.trim())??``)||A(n(t.file_path));return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(o,{className:`size-3 inline`}),` Image`,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[` `,$(e,50)]})]})}case`Agent`:case`Task`:{let r=J(e,t),i=$(n(t.description||t.prompt),r?44:60);return(0,R.jsxs)(R.Fragment,{children:[!r&&(0,R.jsx)(D,{className:`size-3 inline`}),` `,e,` `,r&&(0,R.jsx)(`span`,{className:`text-text-primary font-medium`,children:r}),(0,R.jsx)(`span`,{className:`text-text-subtle`,children:r?` · ${i}`:i})]})}case`SendMessage`:return(0,R.jsx)(ue,{name:e,input:t});case`TodoWrite`:{let n=Array.isArray(t.todos)?t.todos:[],r=n.filter(e=>e.status===`completed`).length;return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(h,{className:`size-3 inline`}),` `,e,` `,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[r,`/`,n.length,` done`]})]})}case`AskUserQuestion`:{let n=Array.isArray(t.questions)?t.questions:[],r=!!t.answers;return(0,R.jsxs)(R.Fragment,{children:[e,` `,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[n.length,` question`,n.length===1?``:`s`,r?` ✓`:``]})]})}case`ScheduleWakeup`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(i,{className:`size-3 inline`}),` `,e,` `,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[`in `,Le(Number(t.delaySeconds)),t.reason?` — ${$(n(t.reason),50)}`:``]})]});case`TaskCreate`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(h,{className:`size-3 inline`}),` `,e,` `,(0,R.jsx)(`span`,{className:`text-text-subtle`,children:$(n(t.subject),60)})]});case`TaskUpdate`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(h,{className:`size-3 inline`}),` `,e,` `,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[`#`,n(t.taskId),` → `,n(t.status)]})]});case`TaskStop`:return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(h,{className:`size-3 inline`}),` `,e,` `,(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[`#`,n(t.taskId),` stopped`]})]});default:return(0,R.jsx)(R.Fragment,{children:e})}}function ke({name:e,input:t,projectName:n,toolUseId:r}){let a=e=>String(e??``),{openTab:o}=j(M(e=>({openTab:e.openTab}))),s=e=>{n&&o({type:`editor`,title:A(e),metadata:{filePath:e,projectName:n},projectId:n,closable:!0})},c=(e,t,r)=>{o({type:`git-diff`,title:`Diff ${A(e)}`,metadata:{filePath:e,projectName:n,original:t,modified:r},projectId:n??null,closable:!0})};switch(e){case`Bash`:case`PowerShell`:return(0,R.jsxs)(`div`,{className:`space-y-1`,children:[!!t.description&&(0,R.jsx)(`p`,{className:`text-text-subtle italic`,children:a(t.description)}),(0,R.jsx)(`pre`,{className:`font-mono text-text-secondary overflow-x-auto whitespace-pre-wrap break-all`,children:a(t.command)})]});case`Read`:case`Write`:case`Edit`:case`MultiEdit`:case`NotebookEdit`:{let n=a(t.notebook_path||t.file_path),i=e===`Edit`&&(!!t.old_string||!!t.new_string),o=e=>r?`${r}-${e}`:void 0;return(0,R.jsxs)(`div`,{className:`space-y-1`,children:[(0,R.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,R.jsxs)(`button`,{type:`button`,className:`font-mono text-text-secondary break-all hover:text-primary hover:underline text-left flex items-center gap-1 min-w-0`,onClick:()=>s(n),title:`Open file in editor`,children:[(0,R.jsx)(g,{className:`size-3 shrink-0`}),n]}),i&&(0,R.jsxs)(`button`,{type:`button`,className:`text-text-subtle hover:text-primary hover:underline flex items-center gap-1 shrink-0 whitespace-nowrap`,onClick:()=>c(n,a(t.old_string),a(t.new_string)),title:`View diff in new tab`,children:[(0,R.jsx)(_,{className:`size-3 shrink-0`}),`View Diff`]})]}),i&&(0,R.jsx)(`div`,{"data-edit-ref":o(0),children:(0,R.jsx)(Ie,{oldStr:a(t.old_string),newStr:a(t.new_string),filePath:n})}),e===`MultiEdit`&&Array.isArray(t.edits)&&(0,R.jsx)(`div`,{className:`space-y-1.5`,children:t.edits.map((e,t)=>(0,R.jsxs)(`div`,{"data-edit-ref":o(t),className:`space-y-0.5`,children:[(0,R.jsxs)(`p`,{className:`text-text-subtle text-[10px]`,children:[`Edit `,t+1]}),(0,R.jsx)(Ie,{oldStr:a(e.old_string),newStr:a(e.new_string),filePath:n})]},t))}),e===`Write`&&!!t.content&&(0,R.jsx)(`pre`,{"data-edit-ref":o(0),className:`font-mono text-text-subtle overflow-x-auto max-h-32 whitespace-pre-wrap`,children:$(a(t.content),300)})]})}case`Glob`:return(0,R.jsxs)(`p`,{className:`font-mono text-text-secondary`,children:[a(t.pattern),t.path?` in ${a(t.path)}`:``]});case`Grep`:return(0,R.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,R.jsxs)(`p`,{className:`font-mono text-text-secondary`,children:[`/`,a(t.pattern),`/`]}),!!t.path&&(0,R.jsxs)(`p`,{className:`text-text-subtle`,children:[`in `,a(t.path)]})]});case`TodoWrite`:return(0,R.jsx)(Ae,{todos:t.todos??[]});case`Agent`:case`Task`:{let n=J(e,t);return(0,R.jsxs)(`div`,{className:`space-y-1`,children:[!!n&&(0,R.jsxs)(`p`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,R.jsx)(`span`,{className:`text-text-subtle`,children:`Name`}),(0,R.jsx)(`span`,{className:`font-medium text-text-primary`,children:n}),(0,R.jsx)(`span`,{className:`inline-block rounded px-1.5 py-0.5 text-[10px] bg-accent-2/15 text-accent-2`,children:`teammate`}),t.isolation===`worktree`&&(0,R.jsx)(`span`,{className:`inline-block rounded px-1.5 py-0.5 text-[10px] bg-panel-2 text-text-3`,children:`worktree`})]}),!!t.description&&(0,R.jsx)(`p`,{className:`text-text-secondary font-medium`,children:a(t.description)}),!!t.subagent_type&&(0,R.jsxs)(`p`,{className:`text-text-subtle`,children:[`Type: `,a(t.subagent_type)]}),!!t.prompt&&(0,R.jsx)(z,{content:a(t.prompt),maxHeight:`max-h-48`})]})}case`SendMessage`:return(0,R.jsx)(de,{input:t});case`ToolSearch`:return(0,R.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,R.jsx)(`p`,{className:`font-mono text-text-secondary`,children:a(t.query)}),!!t.max_results&&(0,R.jsxs)(`p`,{className:`text-text-subtle`,children:[`Max results: `,a(t.max_results)]})]});case`WebFetch`:return(0,R.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,R.jsxs)(`a`,{href:a(t.url),target:`_blank`,rel:`noopener noreferrer`,className:`font-mono text-primary hover:underline break-all flex items-center gap-1`,children:[(0,R.jsx)(l,{className:`size-3 shrink-0`}),a(t.url)]}),!!t.prompt&&(0,R.jsx)(`p`,{className:`text-text-subtle`,children:$(a(t.prompt),100)})]});case`AskUserQuestion`:{let e=t.questions??[],n=t.answers??{};return(0,R.jsx)(`div`,{className:`space-y-2`,children:e.map((e,t)=>(0,R.jsxs)(`div`,{className:`space-y-0.5`,children:[(0,R.jsxs)(`p`,{className:`text-text-primary font-medium`,children:[e.header?`${e.header}: `:``,e.question]}),(0,R.jsx)(`div`,{className:`flex flex-wrap gap-1`,children:e.options.map((t,r)=>(0,R.jsx)(`span`,{className:`inline-block rounded px-1.5 py-0.5 text-xs border ${(n[e.question]??``).split(`, `).includes(t.label)?`border-primary bg-primary/20 text-text-primary`:`border-border text-text-subtle`}`,children:t.label},r))}),n[e.question]&&(0,R.jsxs)(`p`,{className:`text-foreground text-xs`,children:[`Answer: `,n[e.question]]})]},t))})}case`ScheduleWakeup`:{let e=Number(t.delaySeconds)||0;return(0,R.jsxs)(`div`,{className:`space-y-1`,children:[(0,R.jsxs)(`p`,{className:`text-text-secondary`,children:[(0,R.jsx)(i,{className:`size-3 inline mr-1`}),`Wake in `,(0,R.jsx)(`span`,{className:`font-medium text-text-primary`,children:Le(e)}),(0,R.jsxs)(`span`,{className:`text-text-subtle`,children:[` (`,e,`s)`]})]}),!!t.reason&&(0,R.jsx)(`p`,{className:`text-text-secondary italic`,children:a(t.reason)}),!!t.prompt&&(0,R.jsxs)(`div`,{children:[(0,R.jsx)(`p`,{className:`text-text-subtle text-[10px] mb-0.5`,children:`Prompt on wake`}),(0,R.jsx)(z,{content:a(t.prompt),maxHeight:`max-h-48`})]})]})}case`TaskCreate`:return(0,R.jsxs)(`div`,{className:`space-y-1`,children:[(0,R.jsx)(`p`,{className:`text-text-primary font-medium`,children:a(t.subject)}),!!t.description&&(0,R.jsx)(`p`,{className:`text-text-subtle`,children:a(t.description)}),!!t.activeForm&&(0,R.jsx)(`p`,{className:`text-text-subtle italic`,children:a(t.activeForm)})]});case`TaskUpdate`:return(0,R.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,R.jsxs)(`span`,{className:`font-mono text-text-secondary`,children:[`#`,a(t.taskId)]}),(0,R.jsx)(Z,{status:a(t.status)})]});case`TaskStop`:return(0,R.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,R.jsxs)(`span`,{className:`font-mono text-text-secondary`,children:[`#`,a(t.taskId)]}),(0,R.jsx)(Z,{status:`stopped`})]});case`ImageGen`:return(0,R.jsxs)(`div`,{className:`space-y-1`,children:[!!t.prompt&&(0,R.jsx)(`p`,{className:`text-text-secondary whitespace-pre-wrap`,children:a(t.prompt)}),t.transparentBackground===!0&&(0,R.jsx)(`p`,{className:`text-text-subtle`,children:`Transparent background`})]});default:return(0,R.jsx)(`pre`,{className:`overflow-x-auto text-text-secondary font-mono whitespace-pre-wrap break-all`,children:JSON.stringify(t,null,2)})}}function Z({status:e}){return(0,R.jsx)(`span`,{className:`inline-block rounded px-1.5 py-0.5 text-[10px] border ${e===`completed`?`text-success border-success/30 bg-success/10`:e===`in_progress`?`text-warning border-warning/30 bg-warning/10`:`text-text-subtle border-border bg-surface`}`,children:e})}function Ae({todos:e}){return(0,R.jsx)(`div`,{className:`space-y-0.5`,children:e.map((e,t)=>(0,R.jsxs)(`div`,{className:`flex items-start gap-1.5`,children:[(0,R.jsx)(`span`,{className:`shrink-0 mt-0.5 ${e.status===`completed`?`text-success`:e.status===`in_progress`?`text-warning`:`text-text-subtle`}`,children:e.status===`completed`?`✓`:e.status===`in_progress`?`▶`:`○`}),(0,R.jsx)(`span`,{className:e.status===`completed`?`line-through text-text-subtle`:`text-text-secondary`,children:e.content})]},t))})}function je({toolName:e,output:t}){let[n,r]=(0,L.useState)(!1),i=(0,L.useMemo)(()=>{if(e!==`Agent`&&e!==`Task`)return null;try{let e=JSON.parse(t);if(Array.isArray(e)){let t=e.filter(e=>e.type===`text`&&e.text).map(e=>e.text).join(`
5
5
 
@@ -1,4 +1,4 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{n,s as r}from"./api-client-Jn3njtNw.js";import{i}from"./project-store-hNvwfqX3.js";import{Mt as a,an as o}from"./index-C3v3QRVR.js";`0`.repeat(40);function s(e){return/^0+$/.test(e)}function c(e,t=Date.now()){if(!e)return``;if(s(e.hash))return`You, uncommitted changes`;let n=e.author||`Unknown`,r=e.authorTime>0?l(e.authorTime*1e3,t):``,i=r?`${n}, ${r}`:n;return e.summary?`${i} • ${e.summary}`:i}function l(e,t=Date.now()){let n=Math.max(0,Math.round((t-e)/1e3));if(n<60)return`just now`;for(let[e,t,r]of[[3600,60,`minute`],[86400,3600,`hour`],[2592e3,86400,`day`],[31536e3,2592e3,`month`],[1/0,31536e3,`year`]])if(n<e){let e=Math.floor(n/t);return`${e} ${r}${e===1?``:`s`} ago`}return`just now`}function u(e){let t=new Date(e),n=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],r=t.getDate(),i=t.getHours()%12||12,a=String(t.getMinutes()).padStart(2,`0`),o=t.getHours()<12?`AM`:`PM`;return`${n[t.getMonth()]} ${r}${d(r)}, ${t.getFullYear()} ${i}:${a} ${o}`}function d(e){return e%100>=11&&e%100<=13?`th`:[`th`,`st`,`nd`,`rd`][e%10]??`th`}var f=[`ppm.blame.copySha`,`ppm.blame.fileHistory`,`ppm.blame.blameFile`,`ppm.blame.showInGraph`],p=7;function m(e){return e.replace(/[\\`*_{}[\]()#+\-!<>]/g,e=>`\\${e}`)}function h(e){let t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?`?`:(t[0][0]+(t.length>1?t[t.length-1][0]:``)).toUpperCase()}var g=[`4E79A7`,`F28E2B`,`E15759`,`76B7B2`,`59A14F`,`AF7AA1`,`9C755F`,`B07AA1`];function _(e){let t=0;for(let n=0;n<e.length;n++)t=t*31+e.charCodeAt(n)|0;return g[Math.abs(t)%g.length]}function v(e){let t=`<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><circle cx="8" cy="8" r="8" fill="#${_(e)}"/><text x="8" y="11.5" font-family="sans-serif" font-size="7" font-weight="700" fill="#ffffff" text-anchor="middle">${y(h(e))}</text></svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(t)}`}function y(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}function b(e,t){return`command:${e}?${encodeURIComponent(JSON.stringify(t))}`}function x(e){let{commit:t,detail:n,filePath:r,projectPath:i,now:a=Date.now()}=e;if(s(t.hash))return null;let o=t.author||`Unknown`,c=t.hash.slice(0,p),d=[],h=t.authorTime>0?`${l(t.authorTime*1e3,a)} (${u(t.authorTime*1e3)})`:``;d.push(`![](${v(o)}) **${m(o)}**${h?` &nbsp;$(history) ${m(h)}`:``}`);let g=n?.message||t.summary;g&&(d.push(``),d.push(m(g).split(`
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import{n,s as r}from"./api-client-Jn3njtNw.js";import{i}from"./project-store-hNvwfqX3.js";import{Mt as a,an as o}from"./index-BoaecXhu.js";`0`.repeat(40);function s(e){return/^0+$/.test(e)}function c(e,t=Date.now()){if(!e)return``;if(s(e.hash))return`You, uncommitted changes`;let n=e.author||`Unknown`,r=e.authorTime>0?l(e.authorTime*1e3,t):``,i=r?`${n}, ${r}`:n;return e.summary?`${i} • ${e.summary}`:i}function l(e,t=Date.now()){let n=Math.max(0,Math.round((t-e)/1e3));if(n<60)return`just now`;for(let[e,t,r]of[[3600,60,`minute`],[86400,3600,`hour`],[2592e3,86400,`day`],[31536e3,2592e3,`month`],[1/0,31536e3,`year`]])if(n<e){let e=Math.floor(n/t);return`${e} ${r}${e===1?``:`s`} ago`}return`just now`}function u(e){let t=new Date(e),n=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],r=t.getDate(),i=t.getHours()%12||12,a=String(t.getMinutes()).padStart(2,`0`),o=t.getHours()<12?`AM`:`PM`;return`${n[t.getMonth()]} ${r}${d(r)}, ${t.getFullYear()} ${i}:${a} ${o}`}function d(e){return e%100>=11&&e%100<=13?`th`:[`th`,`st`,`nd`,`rd`][e%10]??`th`}var f=[`ppm.blame.copySha`,`ppm.blame.fileHistory`,`ppm.blame.blameFile`,`ppm.blame.showInGraph`],p=7;function m(e){return e.replace(/[\\`*_{}[\]()#+\-!<>]/g,e=>`\\${e}`)}function h(e){let t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?`?`:(t[0][0]+(t.length>1?t[t.length-1][0]:``)).toUpperCase()}var g=[`4E79A7`,`F28E2B`,`E15759`,`76B7B2`,`59A14F`,`AF7AA1`,`9C755F`,`B07AA1`];function _(e){let t=0;for(let n=0;n<e.length;n++)t=t*31+e.charCodeAt(n)|0;return g[Math.abs(t)%g.length]}function v(e){let t=`<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><circle cx="8" cy="8" r="8" fill="#${_(e)}"/><text x="8" y="11.5" font-family="sans-serif" font-size="7" font-weight="700" fill="#ffffff" text-anchor="middle">${y(h(e))}</text></svg>`;return`data:image/svg+xml;charset=utf-8,${encodeURIComponent(t)}`}function y(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}function b(e,t){return`command:${e}?${encodeURIComponent(JSON.stringify(t))}`}function x(e){let{commit:t,detail:n,filePath:r,projectPath:i,now:a=Date.now()}=e;if(s(t.hash))return null;let o=t.author||`Unknown`,c=t.hash.slice(0,p),d=[],h=t.authorTime>0?`${l(t.authorTime*1e3,a)} (${u(t.authorTime*1e3)})`:``;d.push(`![](${v(o)}) **${m(o)}**${h?` &nbsp;$(history) ${m(h)}`:``}`);let g=n?.message||t.summary;g&&(d.push(``),d.push(m(g).split(`
2
2
  `).join(`
3
3
  `)));let _=[``,`---`,``],y=[`[$(git-commit) ${c}](${b(`ppm.blame.copySha`,[t.hash])} "Copy commit hash")`];i&&y.push(`[$(history) File History](${b(`ppm.blame.fileHistory`,[i,r])} "Open the file's history")`,`[$(users) Blame](${b(`ppm.blame.blameFile`,[i,r])} "Open the blame view")`,`[$(git-branch) Graph](${b(`ppm.blame.showInGraph`,[i])} "Open the commit graph")`),d.push(..._),d.push(y.join(` &nbsp; `));let x=[...(n?.removed??[]).map(e=>`-${e}`),...(n?.added??[]).map(e=>`+${e}`)];if(x.length>0){d.push(..._),d.push("```diff"),d.push(...x),d.push("```"),d.push(``);let e=(n?.removed.length??0)===0?`added in`:`in`;d.push(`Changes ${e} \`${c}\``)}return{value:d.join(`
4
4
  `),isTrusted:{enabledCommands:[...f]},supportThemeIcons:!0}}var S=!1;function C(e,t){window.dispatchEvent(new CustomEvent(`ext:command:execute`,{detail:{command:e,args:t}}))}function w(e){return typeof e==`string`&&/^[0-9a-f]{7,40}$/.test(e)?e:null}function T(e){return typeof e==`string`&&e.length>0?e:null}function E(e,t,n){let r=T(t),i=T(n);!r||!i||C(e,[r,i])}function D(e){S||(S=!0,e.editor.registerCommand(`ppm.blame.copySha`,(e,t)=>{let n=w(t);n&&o(n).then(e=>{r[e?`success`:`error`](e?`Copied ${n.slice(0,7)}`:`Could not copy`)})}),e.editor.registerCommand(`ppm.blame.fileHistory`,(e,t,n)=>{E(`git-graph.fileHistory`,t,n)}),e.editor.registerCommand(`ppm.blame.blameFile`,(e,t,n)=>{E(`git-graph.blame`,t,n)}),e.editor.registerCommand(`ppm.blame.showInGraph`,(e,t)=>{let n=T(t);n&&C(`git-graph.view`,[n])}))}var O=`diff`,k=!1;function A(e){if(!k){if(e.languages.getLanguages().some(e=>e.id===`diff`)){k=!0;return}e.languages.register({id:O,aliases:[`Diff`,`patch`],extensions:[`.diff`,`.patch`]}),e.languages.setMonarchTokensProvider(O,{tokenizer:{root:[[/^diff .*$/,`meta.diff.header`],[/^(index|similarity index|rename from|rename to|new file mode|deleted file mode|old mode|new mode) .*$/,`meta.diff.header`],[/^(\+\+\+|---) .*$/,`meta.diff.header`],[/^@@.*$/,`meta.diff.range`],[/^\+.*$/,`inserted`],[/^-.*$/,`deleted`],[/^\\ .*$/,`meta.diff.header`],[/^.*$/,``]]}}),k=!0}}var j=e(t(),1),M=`inline-blame-styles`,N=`
@@ -1,4 +1,4 @@
1
- import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{i as n,n as r}from"./api-client-Jn3njtNw.js";import"./ws-auth-CaxV807E.js";import{s as i,w as a}from"./index-C3v3QRVR.js";var o=e(t(),1),s=15e3;function c(e){clearTimeout(e.timer),e.detach?.()}var l=class{ws;docs=new Map;pending=new Map;notificationListeners=new Set;statusListeners=new Set;nextId=1;constructor(e){this.projectName=e,this.ws=new i(`/ws/project/${encodeURIComponent(e)}/lsp`),this.ws.onMessage(e=>this.receive(e)),this.ws.connect()}open(e,t){this.docs.set(e,{source:t,status:{state:`opening`}}),this.setStatus(e,{state:`opening`}),this.sendOpen(e)}sendOpen(e){let t=this.docs.get(e);t&&this.send({t:`open`,path:e,version:t.source.getVersion(),text:t.source.getText(),clientUri:t.source.clientUri})}close(e){this.docs.delete(e)&&this.send({t:`close`,path:e})}change(e,t,n){this.docs.has(e)&&this.send({t:`change`,path:e,version:t,changes:n})}save(e,t){this.docs.has(e)&&this.send({t:`save`,path:e,text:t})}statusOf(e){return this.docs.get(e)?.status}request(e,t,n,r={}){let i=this.docs.get(e);if(!i||i.status.state!==`ready`)return Promise.reject(Error(`No language server is ready for ${e}`));let{timeoutMs:a=s,signal:o}=r;if(o?.aborted)return Promise.reject(Error(`${t} was cancelled`));let c=this.nextId++;return new Promise((r,i)=>{let s=setTimeout(()=>{this.pending.delete(c),this.send({t:`cancel`,id:c}),i(Error(`${t} timed out`))},a),l=()=>{this.pending.delete(c)&&(clearTimeout(s),this.send({t:`cancel`,id:c}),i(Error(`${t} was cancelled`)))};o?.addEventListener(`abort`,l,{once:!0}),this.pending.set(c,{resolve:r,reject:i,timer:s,detach:o?()=>o.removeEventListener(`abort`,l):void 0}),this.send({t:`request`,id:c,path:e,method:t,params:n})})}onNotification(e){return this.notificationListeners.add(e),()=>this.notificationListeners.delete(e)}onStatus(e){return this.statusListeners.add(e),()=>this.statusListeners.delete(e)}send(e){this.ws.send(JSON.stringify(e))}receive(e){let t;try{t=JSON.parse(typeof e.data==`string`?e.data:``)}catch{return}switch(t.t){case`hello`:for(let e of this.docs.keys())this.sendOpen(e);break;case`ready`:this.setStatus(String(t.path),{state:`ready`,languageId:String(t.languageId),server:t.server,projectPath:String(t.projectPath??``),capabilities:t.capabilities??{}});break;case`unavailable`:this.setStatus(String(t.path),{state:`unavailable`,reason:String(t.reason),server:t.server??null,message:String(t.message)});break;case`resync`:{let e=String(t.path),n=this.docs.get(e);n&&this.send({t:`change`,path:e,version:n.source.getVersion(),text:n.source.getText()});break}case`response`:{let e=this.pending.get(Number(t.id));if(!e)return;c(e),this.pending.delete(Number(t.id)),e.resolve(t.result);break}case`error`:{let e=this.pending.get(Number(t.id));if(!e)return;c(e),this.pending.delete(Number(t.id)),e.reject(Error(String(t.message)));break}case`notification`:for(let e of this.notificationListeners)e(String(t.method),t.params);break}}setStatus(e,t){let n=this.docs.get(e);n&&(n.status=t);for(let n of this.statusListeners)n(e,t)}dispose(){for(let e of this.pending.values())c(e),e.reject(Error(`The language server connection was closed`));this.pending.clear(),this.docs.clear(),this.notificationListeners.clear(),this.statusListeners.clear(),this.ws.disconnect()}},u=new Map;function d(e){let t=u.get(e);if(t)return t.holders++,t.connection;let n=new l(e);return u.set(e,{connection:n,holders:1}),n}function f(e){let t=u.get(e);return!t||(t.holders--,t.holders>0)?!1:(u.delete(e),t.connection.dispose(),!0)}var p=new Map;function ee(e,t){p.set(e.uri.toString(),t)}function m(e){p.delete(e.uri.toString())}function h(e){return p.get(e.uri.toString())}function g(e){if(!e.startsWith(`file:`))return null;let t=e.slice(5),n=``;if(t.startsWith(`//`)){t=t.slice(2);let e=t.indexOf(`/`);n=e<0?t:t.slice(0,e),t=e<0?``:t.slice(e)}let r=t.split(`/`).map(_).join(`/`);return/^\/[A-Za-z]:/.test(r)?r.slice(1):n?`//${_(n)}${r}`:r}function _(e){try{return decodeURIComponent(e)}catch{return e}}var te=40,v=500,y=3,ne=6,b=new Map,x=new Map;function re(e){return(x.get(e)??0)>=y}function S(e){w(e,(x.get(e)??0)+1)}function C(e){w(e,y)}function w(e,t){for(x.delete(e),x.set(e,t);x.size>v;){let e=x.keys().next().value;if(e===void 0)return;x.delete(e)}}function T(e){x.delete(e)}async function ie(e,t,n){let r=0,i=Array.from({length:Math.min(t,e.length)},async()=>{for(;;){let t=r++;if(t>=e.length)return;await n(e[t])}});await Promise.all(i)}function ae(e,t){let n=e.replace(/\\/g,`/`).replace(/\/+$/,``),r=t.replace(/\\/g,`/`),i=n+`/`,a=/^[A-Za-z]:\//.test(i),o=r.slice(0,i.length);return(a?o.toLowerCase()!==i.toLowerCase():o!==i)?null:r.slice(i.length)}async function oe(e,t,i,a){if(!i)return;let o=new Set,s=[...new Set(a)].filter(t=>{if(re(t))return!1;let n=b.get(t);return n&&(b.delete(t),!n.isDisposed())?(b.set(t,n),o.add(t),!1):t.startsWith(`file:`)&&!e.editor.getModel(e.Uri.parse(t))});s.length!==0&&(await ie(s,ne,async a=>{try{let s=g(a),c=s?ae(i,s):null;if(!c){C(a);return}let l=(await r.get(`${n(t)}/files/read?path=${encodeURIComponent(c)}`))?.content;if(typeof l!=`string`){S(a);return}T(a);let u=e.Uri.parse(a);if(e.editor.getModel(u)){o.add(a);return}b.set(a,e.editor.createModel(l,void 0,u)),o.add(a)}catch{S(a)}}),se(o))}function se(e){for(let t of[...b.keys()]){if(b.size<=te)return;if(e.has(t))continue;let n=b.get(t);b.delete(t);try{n?.dispose()}catch{}}}function ce(){for(let e of b.values())try{e.dispose()}catch{}b.clear(),x.clear()}function E(e){if(!e)return;let t=new AbortController;return e.isCancellationRequested?t.abort():e.onCancellationRequested(()=>t.abort()),t.signal}function D(e){return{line:e.lineNumber-1,character:e.column-1}}function le(e){return{lineNumber:e.line+1,column:e.character+1}}function O(e){return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function k(e){return{startLineNumber:e.start.line+1,startColumn:e.start.character+1,endLineNumber:e.end.line+1,endColumn:e.end.character+1}}var ue={1:`Text`,2:`Method`,3:`Function`,4:`Constructor`,5:`Field`,6:`Variable`,7:`Class`,8:`Interface`,9:`Module`,10:`Property`,11:`Unit`,12:`Value`,13:`Enum`,14:`Keyword`,15:`Snippet`,16:`Color`,17:`File`,18:`Reference`,19:`Folder`,20:`EnumMember`,21:`Constant`,22:`Struct`,23:`Event`,24:`Operator`,25:`TypeParameter`},A={1:`File`,2:`Module`,3:`Namespace`,4:`Package`,5:`Class`,6:`Method`,7:`Property`,8:`Field`,9:`Constructor`,10:`Enum`,11:`Interface`,12:`Function`,13:`Variable`,14:`Constant`,15:`String`,16:`Number`,17:`Boolean`,18:`Array`,19:`Object`,20:`Key`,21:`Null`,22:`EnumMember`,23:`Struct`,24:`Event`,25:`Operator`,26:`TypeParameter`},j={1:`Error`,2:`Warning`,3:`Info`,4:`Hint`},M={1:`Text`,2:`Read`,3:`Write`};function N(e,t){let n=ue[t??0];return e.languages.CompletionItemKind[n??`Text`]}function P(e,t){let n=A[t??0];return e.languages.SymbolKind[n??`Variable`]}function F(e,t){let n=j[t??0];return e.MarkerSeverity[n??`Warning`]}function I(e,t){let n=M[t??0];return e.languages.DocumentHighlightKind[n??`Text`]}function L(e){if(e!=null){if(Array.isArray(e)){let t=e.map(L).filter(e=>!!e?.value);return t.length===0?void 0:{value:t.map(e=>e.value).join(`
1
+ import{o as e}from"./rolldown-runtime-FhOqtrmT.js";import{C as t}from"./vendor-markdown-CuWCHIVb.js";import"./vendor-ui-DmZ-Mb-H.js";import{i as n,n as r}from"./api-client-Jn3njtNw.js";import"./ws-auth-CaxV807E.js";import{s as i,w as a}from"./index-BoaecXhu.js";var o=e(t(),1),s=15e3;function c(e){clearTimeout(e.timer),e.detach?.()}var l=class{ws;docs=new Map;pending=new Map;notificationListeners=new Set;statusListeners=new Set;nextId=1;constructor(e){this.projectName=e,this.ws=new i(`/ws/project/${encodeURIComponent(e)}/lsp`),this.ws.onMessage(e=>this.receive(e)),this.ws.connect()}open(e,t){this.docs.set(e,{source:t,status:{state:`opening`}}),this.setStatus(e,{state:`opening`}),this.sendOpen(e)}sendOpen(e){let t=this.docs.get(e);t&&this.send({t:`open`,path:e,version:t.source.getVersion(),text:t.source.getText(),clientUri:t.source.clientUri})}close(e){this.docs.delete(e)&&this.send({t:`close`,path:e})}change(e,t,n){this.docs.has(e)&&this.send({t:`change`,path:e,version:t,changes:n})}save(e,t){this.docs.has(e)&&this.send({t:`save`,path:e,text:t})}statusOf(e){return this.docs.get(e)?.status}request(e,t,n,r={}){let i=this.docs.get(e);if(!i||i.status.state!==`ready`)return Promise.reject(Error(`No language server is ready for ${e}`));let{timeoutMs:a=s,signal:o}=r;if(o?.aborted)return Promise.reject(Error(`${t} was cancelled`));let c=this.nextId++;return new Promise((r,i)=>{let s=setTimeout(()=>{this.pending.delete(c),this.send({t:`cancel`,id:c}),i(Error(`${t} timed out`))},a),l=()=>{this.pending.delete(c)&&(clearTimeout(s),this.send({t:`cancel`,id:c}),i(Error(`${t} was cancelled`)))};o?.addEventListener(`abort`,l,{once:!0}),this.pending.set(c,{resolve:r,reject:i,timer:s,detach:o?()=>o.removeEventListener(`abort`,l):void 0}),this.send({t:`request`,id:c,path:e,method:t,params:n})})}onNotification(e){return this.notificationListeners.add(e),()=>this.notificationListeners.delete(e)}onStatus(e){return this.statusListeners.add(e),()=>this.statusListeners.delete(e)}send(e){this.ws.send(JSON.stringify(e))}receive(e){let t;try{t=JSON.parse(typeof e.data==`string`?e.data:``)}catch{return}switch(t.t){case`hello`:for(let e of this.docs.keys())this.sendOpen(e);break;case`ready`:this.setStatus(String(t.path),{state:`ready`,languageId:String(t.languageId),server:t.server,projectPath:String(t.projectPath??``),capabilities:t.capabilities??{}});break;case`unavailable`:this.setStatus(String(t.path),{state:`unavailable`,reason:String(t.reason),server:t.server??null,message:String(t.message)});break;case`resync`:{let e=String(t.path),n=this.docs.get(e);n&&this.send({t:`change`,path:e,version:n.source.getVersion(),text:n.source.getText()});break}case`response`:{let e=this.pending.get(Number(t.id));if(!e)return;c(e),this.pending.delete(Number(t.id)),e.resolve(t.result);break}case`error`:{let e=this.pending.get(Number(t.id));if(!e)return;c(e),this.pending.delete(Number(t.id)),e.reject(Error(String(t.message)));break}case`notification`:for(let e of this.notificationListeners)e(String(t.method),t.params);break}}setStatus(e,t){let n=this.docs.get(e);n&&(n.status=t);for(let n of this.statusListeners)n(e,t)}dispose(){for(let e of this.pending.values())c(e),e.reject(Error(`The language server connection was closed`));this.pending.clear(),this.docs.clear(),this.notificationListeners.clear(),this.statusListeners.clear(),this.ws.disconnect()}},u=new Map;function d(e){let t=u.get(e);if(t)return t.holders++,t.connection;let n=new l(e);return u.set(e,{connection:n,holders:1}),n}function f(e){let t=u.get(e);return!t||(t.holders--,t.holders>0)?!1:(u.delete(e),t.connection.dispose(),!0)}var p=new Map;function ee(e,t){p.set(e.uri.toString(),t)}function m(e){p.delete(e.uri.toString())}function h(e){return p.get(e.uri.toString())}function g(e){if(!e.startsWith(`file:`))return null;let t=e.slice(5),n=``;if(t.startsWith(`//`)){t=t.slice(2);let e=t.indexOf(`/`);n=e<0?t:t.slice(0,e),t=e<0?``:t.slice(e)}let r=t.split(`/`).map(_).join(`/`);return/^\/[A-Za-z]:/.test(r)?r.slice(1):n?`//${_(n)}${r}`:r}function _(e){try{return decodeURIComponent(e)}catch{return e}}var te=40,v=500,y=3,ne=6,b=new Map,x=new Map;function re(e){return(x.get(e)??0)>=y}function S(e){w(e,(x.get(e)??0)+1)}function C(e){w(e,y)}function w(e,t){for(x.delete(e),x.set(e,t);x.size>v;){let e=x.keys().next().value;if(e===void 0)return;x.delete(e)}}function T(e){x.delete(e)}async function ie(e,t,n){let r=0,i=Array.from({length:Math.min(t,e.length)},async()=>{for(;;){let t=r++;if(t>=e.length)return;await n(e[t])}});await Promise.all(i)}function ae(e,t){let n=e.replace(/\\/g,`/`).replace(/\/+$/,``),r=t.replace(/\\/g,`/`),i=n+`/`,a=/^[A-Za-z]:\//.test(i),o=r.slice(0,i.length);return(a?o.toLowerCase()!==i.toLowerCase():o!==i)?null:r.slice(i.length)}async function oe(e,t,i,a){if(!i)return;let o=new Set,s=[...new Set(a)].filter(t=>{if(re(t))return!1;let n=b.get(t);return n&&(b.delete(t),!n.isDisposed())?(b.set(t,n),o.add(t),!1):t.startsWith(`file:`)&&!e.editor.getModel(e.Uri.parse(t))});s.length!==0&&(await ie(s,ne,async a=>{try{let s=g(a),c=s?ae(i,s):null;if(!c){C(a);return}let l=(await r.get(`${n(t)}/files/read?path=${encodeURIComponent(c)}`))?.content;if(typeof l!=`string`){S(a);return}T(a);let u=e.Uri.parse(a);if(e.editor.getModel(u)){o.add(a);return}b.set(a,e.editor.createModel(l,void 0,u)),o.add(a)}catch{S(a)}}),se(o))}function se(e){for(let t of[...b.keys()]){if(b.size<=te)return;if(e.has(t))continue;let n=b.get(t);b.delete(t);try{n?.dispose()}catch{}}}function ce(){for(let e of b.values())try{e.dispose()}catch{}b.clear(),x.clear()}function E(e){if(!e)return;let t=new AbortController;return e.isCancellationRequested?t.abort():e.onCancellationRequested(()=>t.abort()),t.signal}function D(e){return{line:e.lineNumber-1,character:e.column-1}}function le(e){return{lineNumber:e.line+1,column:e.character+1}}function O(e){return{start:{line:e.startLineNumber-1,character:e.startColumn-1},end:{line:e.endLineNumber-1,character:e.endColumn-1}}}function k(e){return{startLineNumber:e.start.line+1,startColumn:e.start.character+1,endLineNumber:e.end.line+1,endColumn:e.end.character+1}}var ue={1:`Text`,2:`Method`,3:`Function`,4:`Constructor`,5:`Field`,6:`Variable`,7:`Class`,8:`Interface`,9:`Module`,10:`Property`,11:`Unit`,12:`Value`,13:`Enum`,14:`Keyword`,15:`Snippet`,16:`Color`,17:`File`,18:`Reference`,19:`Folder`,20:`EnumMember`,21:`Constant`,22:`Struct`,23:`Event`,24:`Operator`,25:`TypeParameter`},A={1:`File`,2:`Module`,3:`Namespace`,4:`Package`,5:`Class`,6:`Method`,7:`Property`,8:`Field`,9:`Constructor`,10:`Enum`,11:`Interface`,12:`Function`,13:`Variable`,14:`Constant`,15:`String`,16:`Number`,17:`Boolean`,18:`Array`,19:`Object`,20:`Key`,21:`Null`,22:`EnumMember`,23:`Struct`,24:`Event`,25:`Operator`,26:`TypeParameter`},j={1:`Error`,2:`Warning`,3:`Info`,4:`Hint`},M={1:`Text`,2:`Read`,3:`Write`};function N(e,t){let n=ue[t??0];return e.languages.CompletionItemKind[n??`Text`]}function P(e,t){let n=A[t??0];return e.languages.SymbolKind[n??`Variable`]}function F(e,t){let n=j[t??0];return e.MarkerSeverity[n??`Warning`]}function I(e,t){let n=M[t??0];return e.languages.DocumentHighlightKind[n??`Text`]}function L(e){if(e!=null){if(Array.isArray(e)){let t=e.map(L).filter(e=>!!e?.value);return t.length===0?void 0:{value:t.map(e=>e.value).join(`
2
2
 
3
3
  ---
4
4