decocms 2.316.3 → 2.317.0

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 (207) hide show
  1. package/dist/client/assets/{AlertCircle-CIhNxTTl.js → AlertCircle-DBGfLjQw.js} +1 -1
  2. package/dist/client/assets/{Archive-DOUYQc8s.js → Archive-BKT9Dg_O.js} +1 -1
  3. package/dist/client/assets/{ArrowNarrowLeft-B1LOVgdw.js → ArrowNarrowLeft-CukpweKs.js} +1 -1
  4. package/dist/client/assets/{ArrowUpRight-BXCPGKW0.js → ArrowUpRight-D9dARFlG.js} +1 -1
  5. package/dist/client/assets/{Check-CV-PYcTx.js → Check-BXg4TGxE.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-DSnO-ZRF.js → CheckCircle-Bo4QB9pu.js} +1 -1
  7. package/dist/client/assets/{ChevronDown-d1XZuPx_.js → ChevronDown-DEP8rKZT.js} +1 -1
  8. package/dist/client/assets/{ChevronRight-OA6RE0bm.js → ChevronRight-CXiW90Fz.js} +1 -1
  9. package/dist/client/assets/{ChevronUp-BPXArXn4.js → ChevronUp-BhNdg10c.js} +1 -1
  10. package/dist/client/assets/{Container-D2TENyxw.js → Container-CxQrLgnS.js} +1 -1
  11. package/dist/client/assets/{DotsVertical-CkjufnVc.js → DotsVertical-Caoo-NuL.js} +1 -1
  12. package/dist/client/assets/{LayoutLeft-CdHsorDG.js → LayoutLeft-Br6mPXCN.js} +1 -1
  13. package/dist/client/assets/{LinkExternal01-C_Dp-9up.js → LinkExternal01-FDsQXojs.js} +1 -1
  14. package/dist/client/assets/{Lock01-DbAsRqsB.js → Lock01-CjoGpFGs.js} +1 -1
  15. package/dist/client/assets/{Palette-TGj5HRZ0.js → Palette-C1Yvme6Z.js} +1 -1
  16. package/dist/client/assets/{Play-Bqd6KoLL.js → Play-BFNsKgtb.js} +1 -1
  17. package/dist/client/assets/{Plus-DU1c_qIh.js → Plus-BPcc_-zf.js} +1 -1
  18. package/dist/client/assets/{RefreshCcw01-D_ZQRj8n.js → RefreshCcw01-DebjkWfq.js} +1 -1
  19. package/dist/client/assets/{SearchMd-D2HCX03E.js → SearchMd-CePuFGwO.js} +1 -1
  20. package/dist/client/assets/{Settings02-DvgEzqo-.js → Settings02-B5jIAnK4.js} +1 -1
  21. package/dist/client/assets/{Shield01-Bam4M-YR.js → Shield01-CKYDfpKE.js} +1 -1
  22. package/dist/client/assets/{Star01-eRHoMpoz.js → Star01-CxJjtPnY.js} +1 -1
  23. package/dist/client/assets/{Sun-CK-d8u_d.js → Sun-CBmGK6wu.js} +1 -1
  24. package/dist/client/assets/{Tool01-DXA_DwTO.js → Tool01-YKVy1yNP.js} +1 -1
  25. package/dist/client/assets/{Trash01-C98MAtHO.js → Trash01--KbsY2dn.js} +1 -1
  26. package/dist/client/assets/{User01-Ci3O3rgG.js → User01-BLvWkS9e.js} +1 -1
  27. package/dist/client/assets/{Users03-BE87UJzh.js → Users03-C4su_vOM.js} +1 -1
  28. package/dist/client/assets/{X-C8gNxXPZ.js → X-CNAnrf0f.js} +1 -1
  29. package/dist/client/assets/{XCircle-DcF4hahE.js → XCircle-QSJN9xhv.js} +1 -1
  30. package/dist/client/assets/{XClose-DM_WC7Hv.js → XClose-CPKu5cnb.js} +1 -1
  31. package/dist/client/assets/{Zap-BtcijgPp.js → Zap-B4MS-NKo.js} +1 -1
  32. package/dist/client/assets/{ZapSquare-ugGzur7h.js → ZapSquare-D07uWeTi.js} +1 -1
  33. package/dist/client/assets/{accordion-eVPt3AxV.js → accordion-DK_H38Gy.js} +1 -1
  34. package/dist/client/assets/{agent-icon-BaSFWyhf.js → agent-icon-ChigV_SM.js} +1 -1
  35. package/dist/client/assets/{agents-list-Bs-Qg8TC.js → agents-list-CQyCCUIN.js} +1 -1
  36. package/dist/client/assets/{ai-providers-goX3mYeT.js → ai-providers-D8YlgZiZ.js} +1 -1
  37. package/dist/client/assets/{alert-dialog-B28bzmjR.js → alert-dialog-B-CFL8EO.js} +1 -1
  38. package/dist/client/assets/{auth-catchall-D8AsZk2D.js → auth-catchall-CI1pA1WK.js} +1 -1
  39. package/dist/client/assets/{automation-list-row-Cw-nvI9t.js → automation-list-row-exexu0fc.js} +1 -1
  40. package/dist/client/assets/{automations-CIogEm_v.js → automations-Ch8DHfAX.js} +1 -1
  41. package/dist/client/assets/{avatar-BccIYZD6.js → avatar-DLcW-A0B.js} +1 -1
  42. package/dist/client/assets/{badge-B7UYPtu8.js → badge-Bovdptse.js} +1 -1
  43. package/dist/client/assets/{brand-context-GjgBMUq2.js → brand-context-BEky_t3d.js} +1 -1
  44. package/dist/client/assets/{card-e_SApZv-.js → card-Bij24Dhu.js} +1 -1
  45. package/dist/client/assets/{chat-context-BGitM-1g.js → chat-context-C_XiURbM.js} +1 -1
  46. package/dist/client/assets/{checkbox-BwDKjjzH.js → checkbox-DepLdWR1.js} +1 -1
  47. package/dist/client/assets/{collection-detail-CWgaM8qe.js → collection-detail-CWWkHJjz.js} +1 -1
  48. package/dist/client/assets/{collection-display-button-C5UVbYH9.js → collection-display-button-U6oQljTt.js} +1 -1
  49. package/dist/client/assets/{collection-search-BSC882az.js → collection-search-BCf7pr5A.js} +1 -1
  50. package/dist/client/assets/{collection-search-CXkehpMy.js → collection-search-oUHE77Ko.js} +1 -1
  51. package/dist/client/assets/{collection-table-wrapper-DBwS-ncE.js → collection-table-wrapper-CIXt2Qna.js} +1 -1
  52. package/dist/client/assets/{collection-tabs-BIBHPtug.js → collection-tabs-CHoGEXEE.js} +1 -1
  53. package/dist/client/assets/{collections-CgxUTBvp.js → collections-DbmVPIqC.js} +1 -1
  54. package/dist/client/assets/{command-DTQGiHmi.js → command-BJXJqdxz.js} +1 -1
  55. package/dist/client/assets/{connection-card-BrngMsBW.js → connection-card-DvWQmocE.js} +1 -1
  56. package/dist/client/assets/{connection-detail-CCeKFmMl.js → connection-detail-DMePaT7A.js} +1 -1
  57. package/dist/client/assets/{connection-form-helpers-DlHOUpQU.js → connection-form-helpers-z7ekyahw.js} +1 -1
  58. package/dist/client/assets/{connections-BZs9OYYi.js → connections-C2W6I3Kx.js} +1 -1
  59. package/dist/client/assets/{constants-CiNOCN3_.js → constants-CrCZOO5F.js} +1 -1
  60. package/dist/client/assets/{constants-aoAzOZlb.js → constants-D2ruRIzu.js} +1 -1
  61. package/dist/client/assets/{dialog-D9JDljl1.js → dialog-zxbh5ng1.js} +1 -1
  62. package/dist/client/assets/{domain-settings-b037kHqN.js → domain-settings-CG6GaRrK.js} +1 -1
  63. package/dist/client/assets/{drawer-CPYyZD60.js → drawer-DNDd7AZJ.js} +1 -1
  64. package/dist/client/assets/{dropdown-menu-v2GBEFa6.js → dropdown-menu-BHUBCwIp.js} +1 -1
  65. package/dist/client/assets/{dynamic-plugin-layout-DmLmlikq.js → dynamic-plugin-layout-DuN_fdev.js} +1 -1
  66. package/dist/client/assets/{empty-state-DzxY5CBA.js → empty-state-16qSOU0O.js} +1 -1
  67. package/dist/client/assets/{empty-state-Qo0QLKm5.js → empty-state-9cIH1OSj.js} +1 -1
  68. package/dist/client/assets/{extract-connection-data-C2xJ0Fj_.js → extract-connection-data-CA-1nswb.js} +1 -1
  69. package/dist/client/assets/{features-_6JkrMwd.js → features-CemeaDAi.js} +1 -1
  70. package/dist/client/assets/{form-B4UBGEp5.js → form-DK_rcfC8.js} +1 -1
  71. package/dist/client/assets/{general-BHYjmLRM.js → general-C8mtE7AK.js} +1 -1
  72. package/dist/client/assets/{index-yZgZglUT.js → index-77yxUsUU.js} +1 -1
  73. package/dist/client/assets/{index-Ciepzli1.js → index-7mIMVlht.js} +9 -9
  74. package/dist/client/assets/{index-C45moMcG.js → index-B19uc8uS.js} +1 -1
  75. package/dist/client/assets/{index-DTJ_e6nL.js → index-BOMQKZYe.js} +1 -1
  76. package/dist/client/assets/index-BSzZmTb_.js +1 -0
  77. package/dist/client/assets/{index-cnKKVRZj.js → index-By1GUFmc.js} +1 -1
  78. package/dist/client/assets/index-C-NbBgOF.js +1 -0
  79. package/dist/client/assets/{index-DoCu980b.js → index-CCt7tyZ0.js} +1 -1
  80. package/dist/client/assets/{index-D379-Ra5.js → index-CEKdquZV.js} +1 -1
  81. package/dist/client/assets/{index-CNmK2UE6.js → index-CLwT6SqX.js} +1 -1
  82. package/dist/client/assets/{index--m7BENdv.js → index-CMD-gSoU.js} +1 -1
  83. package/dist/client/assets/{index-DXRwI8-Q.js → index-CVz9D9gf.js} +1 -1
  84. package/dist/client/assets/{index-CsB6QrBB.js → index-CzOMQ7ME.js} +2 -2
  85. package/dist/client/assets/index-D8oXDizB.js +1 -0
  86. package/dist/client/assets/index-DHNiGAXq.js +547 -0
  87. package/dist/client/assets/index-DtJ8d1aI.css +1 -0
  88. package/dist/client/assets/{index-B85sFotX.js → index-nTgL534f.js} +1 -1
  89. package/dist/client/assets/{infiniteQueryObserver-C-liTxtI.js → infiniteQueryObserver-C3rVl4tZ.js} +1 -1
  90. package/dist/client/assets/{input-C-eXOMYP.js → input-B0c-2DIW.js} +1 -1
  91. package/dist/client/assets/{integration-icon-Ckowj_b4.js → integration-icon-BaScZvO6.js} +1 -1
  92. package/dist/client/assets/{label-C3Wj5fRJ.js → label-gqBY6uyz.js} +1 -1
  93. package/dist/client/assets/{layout-DyhaKtIo.js → layout-CYKmcI2j.js} +1 -1
  94. package/dist/client/assets/{lean-canvas-recruit-modal-B7oEpItL.js → lean-canvas-recruit-modal-CHTxHUjM.js} +1 -1
  95. package/dist/client/assets/{login-BfSyXKzY.js → login-DClTL_nN.js} +1 -1
  96. package/dist/client/assets/{members-2l-bN7R0.js → members-DhsQ9190.js} +1 -1
  97. package/dist/client/assets/{monaco-editor-2DI4BCuN.js → monaco-editor-BBalufRy.js} +1 -1
  98. package/dist/client/assets/{monitoring-stats-row-O0i0E0sX.js → monitoring-stats-row-Dv-X2RbZ.js} +1 -1
  99. package/dist/client/assets/{oauth-callback-FXnsziuV.js → oauth-callback-B-3DKhKg.js} +1 -1
  100. package/dist/client/assets/{oauth-callback-ai-provider-B_mMMBGP.js → oauth-callback-ai-provider-Bkh9HG7z.js} +1 -1
  101. package/dist/client/assets/{onboarding-C3R9iT7_.js → onboarding-D7bymWNF.js} +1 -1
  102. package/dist/client/assets/{org-layout-C5vsvaCJ.js → org-layout-CYfpIgy5.js} +1 -1
  103. package/dist/client/assets/{org-plugin-layout-TVmKREDe.js → org-plugin-layout-C8RFioa3.js} +1 -1
  104. package/dist/client/assets/{pair-C-p-DbTv.js → pair-Bg3A59Mm.js} +2 -2
  105. package/dist/client/assets/{plugin-empty-state-DsUYr3t-.js → plugin-empty-state-BrALBpmq.js} +1 -1
  106. package/dist/client/assets/{plugin-header-92zfiruf.js → plugin-header-ClLf_cJL.js} +1 -1
  107. package/dist/client/assets/{plugin-layout-Ci2Gezpo.js → plugin-layout-C1cPizmH.js} +1 -1
  108. package/dist/client/assets/{popover-DaEdoMLv.js → popover-DVDtU_6G.js} +1 -1
  109. package/dist/client/assets/{profile-C64u-o9k.js → profile-OTfGZyjY.js} +1 -1
  110. package/dist/client/assets/{project-app-view-__Y1p7Pu.js → project-app-view-C5TQg2cG.js} +1 -1
  111. package/dist/client/assets/registry-CXDPGCG2.js +2 -0
  112. package/dist/client/assets/{registry-layout-BA3b7Khm.js → registry-layout-CmjO7_QP.js} +1 -1
  113. package/dist/client/assets/{required-auth-layout-CKWnvSJk.js → required-auth-layout-BRR_6ANi.js} +1 -1
  114. package/dist/client/assets/{reset-password-BqmAkVAO.js → reset-password-BIYV3F1f.js} +1 -1
  115. package/dist/client/assets/{roles-99Si_WzF.js → roles-DjfHoeEL.js} +1 -1
  116. package/dist/client/assets/{scroll-area-BMqRsz1X.js → scroll-area-9lFTzWCb.js} +1 -1
  117. package/dist/client/assets/{search-input-DsCiCzet.js → search-input-BWH3fQpv.js} +1 -1
  118. package/dist/client/assets/{select-B7los4LB.js → select-Ilj6kxB7.js} +1 -1
  119. package/dist/client/assets/{select-model-CC6Vrb5m.js → select-model-Ca5uLyFK.js} +1 -1
  120. package/dist/client/assets/{settings-layout-nfV08EHo.js → settings-layout-DGVGgKqW.js} +1 -1
  121. package/dist/client/assets/{settings-section-CkhTzM-S.js → settings-section-DfJOrTB5.js} +1 -1
  122. package/dist/client/assets/{shell-layout-kk9CghF9.js → shell-layout-DbyGG6Wz.js} +1 -1
  123. package/dist/client/assets/{sidebar-YQQk47mU.js → sidebar-CHkSPfi1.js} +1 -1
  124. package/dist/client/assets/{skeleton-DyIf1f58.js → skeleton-BhYsT5bA.js} +1 -1
  125. package/dist/client/assets/{spinner-Cx3i9jg1.js → spinner-DRDdaYJh.js} +1 -1
  126. package/dist/client/assets/{sso-BdnItz6L.js → sso-BWvJitB4.js} +1 -1
  127. package/dist/client/assets/{store-BkZwsjod.js → store-CRnNdTmg.js} +1 -1
  128. package/dist/client/assets/store-registry-6e--RkKu.js +2 -0
  129. package/dist/client/assets/{switch-Ba58imnw.js → switch-MdXM9LTQ.js} +1 -1
  130. package/dist/client/assets/{table-BR31N60P.js → table-DqMsTisq.js} +1 -1
  131. package/dist/client/assets/{tabs-DgJzKZHT.js → tabs-BOCdrF2i.js} +1 -1
  132. package/dist/client/assets/{task-status-BAiKcdqG.js → task-status-BMDGQef8.js} +1 -1
  133. package/dist/client/assets/{textarea-CT2Jghcd.js → textarea-BqfIjmtd.js} +1 -1
  134. package/dist/client/assets/{toggle-group-BwCswIiA.js → toggle-group-i_HO-0bV.js} +1 -1
  135. package/dist/client/assets/{tools-list-Dkz550hJ.js → tools-list-BdLDYsTK.js} +1 -1
  136. package/dist/client/assets/{tooltip-v9goNoMa.js → tooltip-Dk-x7ks3.js} +1 -1
  137. package/dist/client/assets/{types-D30V4GBK.js → types-G67jsjMK.js} +1 -1
  138. package/dist/client/assets/{use-ai-providers-DuJ557zy.js → use-ai-providers-Bo9kqLtW.js} +1 -1
  139. package/dist/client/assets/{use-collections-CfoSjDkZ.js → use-collections-DaGR-TK3.js} +1 -1
  140. package/dist/client/assets/{use-connection-CL8Sz4aB.js → use-connection-Bw3IdOYX.js} +1 -1
  141. package/dist/client/assets/{use-copy-9B_lKCQP.js → use-copy-B-uFxHk6.js} +1 -1
  142. package/dist/client/assets/{use-create-virtual-mcp-B4YkhF26.js → use-create-virtual-mcp-CCKFB_a7.js} +1 -1
  143. package/dist/client/assets/{use-debounced-autosave-CnKA4yL_.js → use-debounced-autosave-T0GvbwUO.js} +1 -1
  144. package/dist/client/assets/{use-decopilot-events-CKsjNSwH.js → use-decopilot-events-Co1GYuP2.js} +1 -1
  145. package/dist/client/assets/{use-delete-connection-CdrzrkWw.js → use-delete-connection-kRigiWM3.js} +1 -1
  146. package/dist/client/assets/{use-infinite-scroll-BYU0Szfl.js → use-infinite-scroll-BNHelzzC.js} +1 -1
  147. package/dist/client/assets/{use-list-state-BV6nWWeI.js → use-list-state-DUJmWeK2.js} +1 -1
  148. package/dist/client/assets/{use-mcp-tools-C0h3zeNG.js → use-mcp-tools-DVY8KcMA.js} +1 -1
  149. package/dist/client/assets/{use-members-Bc88CE0J.js → use-members-BgQ7Ica2.js} +1 -1
  150. package/dist/client/assets/{use-navigate-to-agent-D3pu_YG_.js → use-navigate-to-agent-BQ5qza3f.js} +1 -1
  151. package/dist/client/assets/{use-org-auth-client-DKocDk2P.js → use-org-auth-client-CJlh_N8L.js} +1 -1
  152. package/dist/client/assets/{use-org-sso-Cow3Y2YN.js → use-org-sso-B3swYyz4.js} +1 -1
  153. package/dist/client/assets/{use-organization-roles-B-MXbHky.js → use-organization-roles-BIsWMlMh.js} +1 -1
  154. package/dist/client/assets/{use-organization-settings-BtgJutO3.js → use-organization-settings-BMveAMB5.js} +1 -1
  155. package/dist/client/assets/{use-registry-connections-CGJfCg9t.js → use-registry-connections-Cld8pkRO.js} +1 -1
  156. package/dist/client/assets/{use-status-sounds-IPRVjHSk.js → use-status-sounds-DsCr5ian.js} +1 -1
  157. package/dist/client/assets/{use-tasks-LPt7s23P.js → use-tasks-ChwW8r_K.js} +1 -1
  158. package/dist/client/assets/{use-view-mode-NK71s2Nx.js → use-view-mode-MWDbD9TW.js} +1 -1
  159. package/dist/client/assets/{use-virtual-mcp-CcbuH5vn.js → use-virtual-mcp-lxX8wI4d.js} +1 -1
  160. package/dist/client/assets/useInfiniteQuery-ImrWnFFo.js +1 -0
  161. package/dist/client/assets/useSuspenseInfiniteQuery-CpJJnQ6p.js +1 -0
  162. package/dist/client/assets/{user-CHg0uxVs.js → user-BesiartC.js} +1 -1
  163. package/dist/client/assets/{view-mode-toggle-Ck5p4f38.js → view-mode-toggle-Dn0_DV4a.js} +1 -1
  164. package/dist/client/assets/{workflow-DBHhsoUK.js → workflow-8tifDY_U.js} +1 -1
  165. package/dist/client/assets/workflow-detail-8AQCTpUe.js +1 -0
  166. package/dist/client/index.html +2 -2
  167. package/dist/server/cli.js +1 -1
  168. package/dist/server/node_modules/get-east-asian-width/index.d.ts +60 -0
  169. package/dist/server/node_modules/get-east-asian-width/index.js +30 -0
  170. package/dist/server/node_modules/get-east-asian-width/lookup-data.js +18 -0
  171. package/dist/server/node_modules/get-east-asian-width/lookup.js +135 -0
  172. package/dist/server/node_modules/get-east-asian-width/package.json +71 -0
  173. package/dist/server/node_modules/get-east-asian-width/readme.md +65 -0
  174. package/dist/server/node_modules/get-east-asian-width/utilities.js +24 -0
  175. package/package.json +1 -1
  176. package/dist/client/assets/index-9VIcQuRp.js +0 -1
  177. package/dist/client/assets/index-BJOFaTKm.js +0 -1
  178. package/dist/client/assets/index-Bo94M6wo.css +0 -1
  179. package/dist/client/assets/index-D5NG6paH.js +0 -547
  180. package/dist/client/assets/index-DW1EySXD.js +0 -1
  181. package/dist/client/assets/registry-LJpFNvAF.js +0 -2
  182. package/dist/client/assets/store-registry-Dr7mJzaG.js +0 -2
  183. package/dist/client/assets/useInfiniteQuery-BIRZrmWs.js +0 -1
  184. package/dist/client/assets/useSuspenseInfiniteQuery-Bq4CZEUT.js +0 -1
  185. package/dist/client/assets/workflow-detail-BIpbk5VT.js +0 -1
  186. package/dist/server/node_modules/ansi-styles/index.d.ts +0 -236
  187. package/dist/server/node_modules/ansi-styles/index.js +0 -223
  188. package/dist/server/node_modules/ansi-styles/package.json +0 -54
  189. package/dist/server/node_modules/ansi-styles/readme.md +0 -173
  190. package/dist/server/node_modules/is-fullwidth-code-point/index.d.ts +0 -17
  191. package/dist/server/node_modules/is-fullwidth-code-point/index.js +0 -12
  192. package/dist/server/node_modules/is-fullwidth-code-point/license +0 -9
  193. package/dist/server/node_modules/is-fullwidth-code-point/package.json +0 -53
  194. package/dist/server/node_modules/is-fullwidth-code-point/readme.md +0 -31
  195. package/dist/server/node_modules/onetime/index.d.ts +0 -64
  196. package/dist/server/node_modules/onetime/index.js +0 -44
  197. package/dist/server/node_modules/onetime/license +0 -9
  198. package/dist/server/node_modules/onetime/package.json +0 -43
  199. package/dist/server/node_modules/onetime/readme.md +0 -94
  200. package/dist/server/node_modules/xtend/.jshintrc +0 -30
  201. package/dist/server/node_modules/xtend/LICENSE +0 -20
  202. package/dist/server/node_modules/xtend/README.md +0 -32
  203. package/dist/server/node_modules/xtend/immutable.js +0 -19
  204. package/dist/server/node_modules/xtend/mutable.js +0 -17
  205. package/dist/server/node_modules/xtend/package.json +0 -55
  206. package/dist/server/node_modules/xtend/test.js +0 -103
  207. /package/dist/server/node_modules/{ansi-styles → get-east-asian-width}/license +0 -0
@@ -1,7 +1,7 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/project-app-view-__Y1p7Pu.js","assets/index-CsB6QrBB.js","assets/index-Bo94M6wo.css","assets/pair-C-p-DbTv.js","assets/agent-icon-BaSFWyhf.js","assets/AlertCircle-CIhNxTTl.js","assets/Tool01-DXA_DwTO.js","assets/Archive-DOUYQc8s.js","assets/XClose-DM_WC7Hv.js","assets/RefreshCcw01-D_ZQRj8n.js","assets/ArrowNarrowLeft-B1LOVgdw.js","assets/XCircle-DcF4hahE.js","assets/ArrowUpRight-BXCPGKW0.js","assets/ZapSquare-ugGzur7h.js","assets/Users03-BE87UJzh.js","assets/CheckCircle-DSnO-ZRF.js","assets/Check-CV-PYcTx.js","assets/ChevronDown-d1XZuPx_.js","assets/ChevronRight-OA6RE0bm.js","assets/ChevronUp-BPXArXn4.js","assets/DotsVertical-CkjufnVc.js","assets/Container-D2TENyxw.js","assets/Star01-eRHoMpoz.js","assets/Palette-TGj5HRZ0.js","assets/SearchMd-D2HCX03E.js","assets/LayoutLeft-CdHsorDG.js","assets/LinkExternal01-C_Dp-9up.js","assets/Lock01-DbAsRqsB.js","assets/Sun-CK-d8u_d.js","assets/Play-Bqd6KoLL.js","assets/Plus-DU1c_qIh.js","assets/Settings02-DvgEzqo-.js","assets/Shield01-Bam4M-YR.js","assets/Trash01-C98MAtHO.js","assets/User01-Ci3O3rgG.js","assets/X-C8gNxXPZ.js","assets/Zap-BtcijgPp.js","assets/index-B85sFotX.js","assets/use-copy-9B_lKCQP.js","assets/tooltip-v9goNoMa.js","assets/differenceInSeconds-NQ4PDo0z.js","assets/dialog-D9JDljl1.js","assets/content-blocks-o63cs2vh.js","assets/types-D30V4GBK.js","assets/constants-CiNOCN3_.js","assets/chat-context-BGitM-1g.js","assets/use-virtual-mcp-CcbuH5vn.js","assets/use-collections-CfoSjDkZ.js","assets/use-ai-providers-DuJ557zy.js","assets/use-decopilot-events-CKsjNSwH.js","assets/create-sse-subscription-CxkOgzKf.js","assets/use-tasks-LPt7s23P.js","assets/use-organization-settings-BtgJutO3.js","assets/shell-layout-kk9CghF9.js","assets/required-auth-layout-CKWnvSJk.js","assets/use-org-sso-Cow3Y2YN.js","assets/integration-icon-Ckowj_b4.js","assets/use-mcp-tools-C0h3zeNG.js"])))=>i.map(i=>d[i]);
2
- import{o as as,r as B,p as Il,q as Pl,e as z,s as ge,K as Is,n as Ho,a as Wo,c as Z,j as o,l as $e,B as se,E as Tt,b as Yr,v as Uo,f as Ut,d as Ko,w as Bl,x as fe,y as nr,V as Ll,t as be,C as ht,z as Vo,D as Ol,F as zl,G as xn,L as $l,H as Pi,I as Gs,J as nt,M as Ps,P as Fl,_ as Hl,Q as qo,R as Go,T as Wl,g as Ul}from"./index-CsB6QrBB.js";import{C as Ce,u as Kl,w as Vl,A as ql,T as Gl,a as Yl,S as Xl}from"./index-D5NG6paH.js";import{I as Kt}from"./integration-icon-Ckowj_b4.js";import{S as Vt,u as He,g as Yo,a as Xo}from"./constants-CiNOCN3_.js";import{u as vt,a as Jl}from"./use-virtual-mcp-CcbuH5vn.js";import{a as Zl}from"./Users03-BE87UJzh.js";import{u as Jo,a as xt,b as Xr,c as Fs,t as Ql,d as bn}from"./chat-context-BGitM-1g.js";import{i as Jr}from"./AlertCircle-CIhNxTTl.js";import{i as ec}from"./CheckCircle-DSnO-ZRF.js";import{a as Sn,n as tc}from"./ZapSquare-ugGzur7h.js";import{i as sc,a as ic,b as rc,c as Zr,d as nc}from"./XCircle-DcF4hahE.js";import{s as rs,i as oc}from"./XClose-DM_WC7Hv.js";import{c as ac,r as lc,p as Zo,f as yn,a as cc,F as hc,t as wn,M as Qr,G as dc,i as uc,b as fc,d as mc,e as _c}from"./pair-C-p-DbTv.js";import{C as pc,a as Cn,b as kn,c as gc,d as vc,e as xc,f as bc}from"./command-DTQGiHmi.js";import{P as ls,a as cs,b as hs}from"./popover-DaEdoMLv.js";import{i as Rs,a as Sc,b as yc,p as Si,g as yi,c as en,d as Qo,h as or,e as Bi,f as Nn,A as jn,j as tn,k as wc,l as Cc,n as kc,t as Nc,m as jc,s as Ec,o as ea,q as ta,r as sa,u as ia,v as En,w as ra,x as Ds,y as Tc,z as na,B as oa}from"./agent-icon-BaSFWyhf.js";import{u as ds,a as Rc}from"./use-mcp-tools-C0h3zeNG.js";import{u as Dc}from"./use-ai-providers-DuJ557zy.js";import{g as $t,d as Tn,u as Mc,b as ar,e as Ac,f as Ic,c as Pc,T as Bc}from"./index-BJOFaTKm.js";import{u as sn,i as Lc}from"./shell-layout-kk9CghF9.js";import{u as Oc,c as zc,d as $c,e as Fc}from"./sidebar-YQQk47mU.js";import{u as aa,T as Te,a as Re,b as De,c as Hc}from"./tooltip-v9goNoMa.js";import{u as Wc}from"./use-status-sounds-IPRVjHSk.js";import{E as fi}from"./empty-state-Qo0QLKm5.js";import{A as Uc,a as Kc,b as Vc,c as qc,R as la,d as Gc,e as Yc}from"./accordion-eVPt3AxV.js";import{u as wi,a as rn,b as Xc}from"./use-connection-CL8Sz4aB.js";import{g as Jc}from"./constants-aoAzOZlb.js";import{u as Zc,g as Qc}from"./types-D30V4GBK.js";import{G as eh,u as ca}from"./lean-canvas-recruit-modal-B7oEpItL.js";import{U as ha}from"./user-CHg0uxVs.js";import{T as th,u as da}from"./tools-list-Dkz550hJ.js";import{u as sh}from"./unwrap-tool-result-BYXdCQMg.js";import{s as ua,g as ih}from"./connection-slug-eyAPH6o3.js";import{A as fa,a as ma,b as _a,c as pa,d as ga,e as va,f as xa,g as ba}from"./alert-dialog-B28bzmjR.js";import{D as rh,a as nn,b as on,c as Sa,d as ya}from"./dialog-D9JDljl1.js";import{C as wa,a as lr}from"./card-e_SApZv-.js";import{I as qt}from"./input-C-eXOMYP.js";import{L as Bt}from"./label-C3Wj5fRJ.js";import{S as es,a as ts,b as ss,c as is,d as Dt}from"./select-B7los4LB.js";import{S as cr}from"./switch-Ba58imnw.js";import{T as Rn}from"./textarea-CT2Jghcd.js";import{i as Ft}from"./Play-Bqd6KoLL.js";import{s as ns}from"./Plus-DU1c_qIh.js";import{a as nh}from"./Settings02-DvgEzqo-.js";import{t as Ca,i as oh}from"./Tool01-DXA_DwTO.js";import{s as hr}from"./Trash01-C98MAtHO.js";import{u as mi}from"./use-debounced-autosave-CnKA4yL_.js";import{S as ka}from"./scroll-area-BMqRsz1X.js";import{i as Na,a as ah}from"./SearchMd-D2HCX03E.js";import{i as lh}from"./LayoutLeft-CdHsorDG.js";import{P as it}from"./index--m7BENdv.js";import{C as ch}from"./collection-tabs-BIBHPtug.js";import{C as hh}from"./checkbox-BwDKjjzH.js";import{u as dh,T as Li,a as uh,b as fh,c as Oi}from"./tabs-DgJzKZHT.js";import{D as mh,a as _h,b as ph}from"./drawer-CPYyZD60.js";import{i as Ci}from"./Check-CV-PYcTx.js";import{n as us}from"./LinkExternal01-C_Dp-9up.js";import{S as gh}from"./spinner-Cx3i9jg1.js";import{D as ki,a as Ni,b as ji,c as Lt,d as vh,e as xh,f as bh}from"./dropdown-menu-v2GBEFa6.js";import{t as ja}from"./ChevronDown-d1XZuPx_.js";import{i as Ea}from"./RefreshCcw01-D_ZQRj8n.js";import{V as Sh}from"./view-mode-toggle-Ck5p4f38.js";import{i as yh}from"./X-C8gNxXPZ.js";import{u as Hs,a as wh,b as Ch,c as kh,A as Nh,d as jh}from"./automation-list-row-Cw-nvI9t.js";import{i as Bs}from"./Zap-BtcijgPp.js";import{S as Eh}from"./search-input-DsCiCzet.js";import"./use-navigate-to-agent-D3pu_YG_.js";import"./use-tasks-LPt7s23P.js";import"./use-collections-CfoSjDkZ.js";import"./collection-search-CXkehpMy.js";import"./form-B4UBGEp5.js";import"./Star01-eRHoMpoz.js";import"./Lock01-DbAsRqsB.js";import"./toggle-group-BwCswIiA.js";import"./select-model-CC6Vrb5m.js";import"./skeleton-DyIf1f58.js";import"./ai-providers-logos-DD3qZ33J.js";import"./ChevronRight-OA6RE0bm.js";import"./avatar-BccIYZD6.js";import"./User01-Ci3O3rgG.js";import"./settings-section-CkhTzM-S.js";import"./ArrowUpRight-BXCPGKW0.js";import"./index-B85sFotX.js";import"./index-DTJ_e6nL.js";import"./question-004-sINsf4GQ.js";import"./connection-card-BrngMsBW.js";import"./use-registry-connections-CGJfCg9t.js";import"./use-organization-settings-BtgJutO3.js";import"./useInfiniteQuery-BIRZrmWs.js";import"./infiniteQueryObserver-C-liTxtI.js";import"./extract-connection-data-C2xJ0Fj_.js";import"./Container-D2TENyxw.js";import"./connection-form-helpers-DlHOUpQU.js";import"./use-infinite-scroll-BYU0Szfl.js";import"./useSuspenseInfiniteQuery-Bq4CZEUT.js";import"./badge-B7UYPtu8.js";import"./use-decopilot-events-CKsjNSwH.js";import"./create-sse-subscription-CxkOgzKf.js";import"./use-copy-9B_lKCQP.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./content-blocks-o63cs2vh.js";import"./Sun-CK-d8u_d.js";import"./index-DoCu980b.js";import"./Archive-DOUYQc8s.js";import"./ArrowNarrowLeft-B1LOVgdw.js";import"./ChevronUp-BPXArXn4.js";import"./DotsVertical-CkjufnVc.js";import"./Palette-TGj5HRZ0.js";import"./Shield01-Bam4M-YR.js";import"./index-DXRwI8-Q.js";import"./collection-search-BSC882az.js";import"./use-create-virtual-mcp-B4YkhF26.js";import"./task-status-BAiKcdqG.js";import"./required-auth-layout-CKWnvSJk.js";import"./use-org-sso-Cow3Y2YN.js";import"./collections-CgxUTBvp.js";function Th(t,e){const s=as(e);return Rh({filters:{...t,status:"pending"}},s).length}function Dn(t,e){return t.findAll(e.filters).map(s=>e.select?e.select(s):s.state)}function Rh(t={},e){const s=as(e).getMutationCache(),i=B.useRef(t),r=B.useRef(null);return r.current===null&&(r.current=Dn(s,t)),B.useEffect(()=>{i.current=t}),B.useSyncExternalStore(B.useCallback(n=>s.subscribe(()=>{const a=Il(r.current,Dn(s,i.current));r.current!==a&&(r.current=a,Pl.schedule(n))}),[s]),()=>r.current,()=>r.current)}function Dh(t,e){const s=z.c(40),{org:i,locator:r}=ge();let n;s[0]!==i.id||s[1]!==i.slug?(n={connectionId:Vt,orgId:i.id,orgSlug:i.slug},s[0]=i.id,s[1]=i.slug,s[2]=n):n=s[2];const a=He(n),l=as();let h;s[3]!==t||s[4]!==i.id?(h=Is.ensureTask(i.id,t),s[3]=t,s[4]=i.id,s[5]=h):h=s[5];let c;s[6]!==a||s[7]!==t?(c=async()=>(await a.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}})).structuredContent?.item??null,s[6]=a,s[7]=t,s[8]=c):c=s[8];const d=t.length>0;let u;s[9]!==h||s[10]!==c||s[11]!==d?(u={queryKey:h,queryFn:c,enabled:d,retry:!1,refetchOnWindowFocus:!1},s[9]=h,s[10]=c,s[11]=d,s[12]=u):u=s[12];const f=Ho(u);let m;s[13]!==a||s[14]!==e?(m=async v=>{const y=await a.callTool({name:"COLLECTION_THREADS_CREATE",arguments:{data:{id:v,virtual_mcp_id:e}}});if(y.isError){const N=y.content,j=Array.isArray(N)&&N[0]&&typeof N[0]=="object"?N[0].text??"Create failed":"Create failed";throw new Error(j)}return y.structuredContent.item},s[13]=a,s[14]=e,s[15]=m):m=s[15];let _;s[16]!==r||s[17]!==i.id||s[18]!==f||s[19]!==l?(_=()=>{l.invalidateQueries({predicate:v=>v.queryKey[1]===i.id&&v.queryKey[3]==="collection"&&v.queryKey[4]==="THREADS"}),l.invalidateQueries({queryKey:Is.tasksPrefix(r)}),f.refetch()},s[16]=r,s[17]=i.id,s[18]=f,s[19]=l,s[20]=_):_=s[20];let p;s[21]!==m||s[22]!==_?(p={mutationFn:m,onSuccess:_},s[21]=m,s[22]=_,s[23]=p):p=s[23];const g=Wo(p);let x,b;if(s[24]!==g||s[25]!==t||s[26]!==f.data||s[27]!==f.isSuccess?(x=()=>{t&&(!f.isSuccess||f.data||g.isPending||g.variables!==t&&g.mutate(t))},b=[t,f.isSuccess,f.data,g],s[24]=g,s[25]=t,s[26]=f.data,s[27]=f.isSuccess,s[28]=x,s[29]=b):(x=s[28],b=s[29]),B.useEffect(x,b),!t){let v;return s[30]===Symbol.for("react.memo_cache_sentinel")?(v={status:"ready",task:null},s[30]=v):v=s[30],v}if(f.isLoading){let v;return s[31]===Symbol.for("react.memo_cache_sentinel")?(v={status:"loading"},s[31]=v):v=s[31],v}if(f.isError){const v=f.error;let y;return s[32]!==v?(y={status:"error",error:v},s[32]=v,s[33]=y):y=s[33],y}if(f.isSuccess&&f.data){let v;return s[34]!==f.data?(v={status:"ready",task:f.data},s[34]=f.data,s[35]=v):v=s[35],v}if(g.isPending||f.isSuccess&&!f.data){let v;return s[36]===Symbol.for("react.memo_cache_sentinel")?(v={status:"creating"},s[36]=v):v=s[36],v}if(g.isError){let v;return s[37]!==g.error?(v={status:"error",error:g.error},s[37]=g.error,s[38]=v):v=s[38],v}let S;return s[39]===Symbol.for("react.memo_cache_sentinel")?(S={status:"loading"},s[39]=S):S=s[39],S}function gs(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function Mn(t){if(!t)return"—";const e=typeof t=="string"?new Date(t):t;return isNaN(e.getTime())?"—":e.toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})}function Mh(t){return t?t.replace(/-\d{8}(?:-[a-z0-9]+)*$/i,"").replace(/-/g," "):"—"}function Ah(t){const e=z.c(4),{items:s}=t;let i;e[0]!==s?(i=s.map(Ih),e[0]=s,e[1]=i):i=e[1];let r;return e[2]!==i?(r=o.jsx("div",{className:"grid grid-cols-2 gap-x-8 gap-y-6",children:i}),e[2]=i,e[3]=r):r=e[3],r}function Ih(t){return o.jsxs("div",{className:"flex flex-col gap-1 min-w-0",children:[o.jsx("span",{className:"text-xs text-muted-foreground truncate",children:t.label}),o.jsx("span",{className:"text-sm text-foreground tabular-nums truncate",children:t.value})]},t.label)}function Ph(t){const e=z.c(30),{userTokens:s,assistantTokens:i,otherTokens:r}=t,n=s+i+r,a=n>0?s/n*100:0,l=n>0?i/n*100:0,h=n>0?r/n*100:0;let c;e[0]!==a?(c=a>0&&o.jsx("div",{className:"h-full bg-chart-1",style:{width:`${a}%`}}),e[0]=a,e[1]=c):c=e[1];let d;e[2]!==l?(d=l>0&&o.jsx("div",{className:"h-full bg-chart-2",style:{width:`${l}%`}}),e[2]=l,e[3]=d):d=e[3];let u;e[4]!==h?(u=h>0&&o.jsx("div",{className:"h-full bg-muted-foreground/30",style:{width:`${h}%`}}),e[4]=h,e[5]=u):u=e[5];let f;e[6]!==c||e[7]!==d||e[8]!==u?(f=o.jsxs("div",{className:"flex h-2 w-full overflow-hidden rounded-full bg-muted",children:[c,d,u]}),e[6]=c,e[7]=d,e[8]=u,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-1 shrink-0"}),e[10]=m):m=e[10];let _;e[11]!==a?(_=a.toFixed(1),e[11]=a,e[12]=_):_=e[12];let p;e[13]!==_?(p=o.jsxs("div",{className:"flex items-center gap-1.5",children:[m,o.jsxs("span",{className:"text-xs text-muted-foreground",children:["User ",_,"%"]})]}),e[13]=_,e[14]=p):p=e[14];let g;e[15]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-2 shrink-0"}),e[15]=g):g=e[15];let x;e[16]!==l?(x=l.toFixed(1),e[16]=l,e[17]=x):x=e[17];let b;e[18]!==x?(b=o.jsxs("div",{className:"flex items-center gap-1.5",children:[g,o.jsxs("span",{className:"text-xs text-muted-foreground",children:["Assistant ",x,"%"]})]}),e[18]=x,e[19]=b):b=e[19];let S;e[20]!==h||e[21]!==r?(S=r>0&&o.jsxs("div",{className:"flex items-center gap-1.5",children:[o.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-muted-foreground/30 shrink-0"}),o.jsxs("span",{className:"text-xs text-muted-foreground",children:["Other ",h.toFixed(1),"%"]})]}),e[20]=h,e[21]=r,e[22]=S):S=e[22];let v;e[23]!==b||e[24]!==S||e[25]!==p?(v=o.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[p,b,S]}),e[23]=b,e[24]=S,e[25]=p,e[26]=v):v=e[26];let y;return e[27]!==v||e[28]!==f?(y=o.jsxs("div",{className:"flex flex-col gap-2",children:[f,v]}),e[27]=v,e[28]=f,e[29]=y):y=e[29],y}function Bh(t){const e=z.c(11),{agentId:s,isError:i}=t,r=vt(s),n=r?.title??"Subtask",a=r?.icon??null;let l;e[0]!==a||e[1]!==n?(l=o.jsx(Kt,{icon:a,name:n,size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=a,e[1]=n,e[2]=l):l=e[2];const h=i?"text-destructive":"text-foreground";let c;e[3]!==h?(c=Z("shrink-0 font-medium",h),e[3]=h,e[4]=c):c=e[4];let d;e[5]!==n||e[6]!==c?(d=o.jsx("span",{className:c,children:n}),e[5]=n,e[6]=c,e[7]=d):d=e[7];let u;return e[8]!==l||e[9]!==d?(u=o.jsxs(o.Fragment,{children:[l,d]}),e[8]=l,e[9]=d,e[10]=u):u=e[10],u}function Lh(t){const e=z.c(5),{isError:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(Kt,{icon:null,name:"Subtask",size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=i):i=e[0];const r=s?"text-destructive":"text-foreground";let n;e[1]!==r?(n=Z("shrink-0 font-medium",r),e[1]=r,e[2]=n):n=e[2];let a;return e[3]!==n?(a=o.jsxs(o.Fragment,{children:[i,o.jsx("span",{className:n,children:"Subtask"})]}),e[3]=n,e[4]=a):a=e[4],a}function Oh(t){const e=z.c(18),{part:s}=t,i=s.input?.agent_id,r=s.state==="input-streaming"||s.state==="input-available"||s.state==="output-available"&&s.preliminary===!0,n=s.state==="output-error",a=s.state==="approval-requested";let l;e[0]!==n?(l=o.jsx(Lh,{isError:n}),e[0]=n,e[1]=l):l=e[1];let h;e[2]!==i||e[3]!==n?(h=o.jsx(Bh,{agentId:i,isError:n}),e[2]=i,e[3]=n,e[4]=h):h=e[4];let c;e[5]!==l||e[6]!==h?(c=o.jsx(B.Suspense,{fallback:l,children:h}),e[5]=l,e[6]=h,e[7]=c):c=e[7];let d;e[8]!==s.input?(d=s.input?.prompt&&o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-muted-foreground/50",children:"·"}),o.jsx("span",{className:"truncate text-muted-foreground",children:s.input.prompt})]}),e[8]=s.input,e[9]=d):d=e[9];let u;e[10]!==a||e[11]!==n||e[12]!==r?(u=o.jsx("span",{className:"ml-auto shrink-0",children:r?o.jsx($e,{size:12,className:"animate-spin text-muted-foreground"}):n?o.jsx(sc,{size:12,className:"text-destructive"}):a?o.jsx(Jr,{size:12,className:"text-warning"}):o.jsx(ec,{size:12,className:"text-emerald-500"})}),e[10]=a,e[11]=n,e[12]=r,e[13]=u):u=e[13];let f;return e[14]!==c||e[15]!==d||e[16]!==u?(f=o.jsxs("div",{className:"flex items-center gap-2 text-xs min-w-0",children:[c,d,u]}),e[14]=c,e[15]=d,e[16]=u,e[17]=f):f=e[17],f}function zh(t){const e=z.c(58),{onClose:s,back:i,className:r}=t,[n,a]=B.useState(null),{messages:l}=Jo(),{tasks:h,taskId:c}=xt(),{selectedModel:d,selectedVirtualMcp:u}=Xr();let f,m,_,p,g,x,b,S;if(e[0]!==i||e[1]!==r||e[2]!==l||e[3]!==s||e[4]!==n?.id||e[5]!==d||e[6]!==u?.title||e[7]!==c||e[8]!==h){S=Symbol.for("react.early_return_sentinel");e:{let k;e[17]!==c?(k=U=>U.id===c,e[17]=c,e[18]=k):k=e[18];const N=h.find(k),j=ac(l),T=[...l].reverse().find(Xh),I=T?.metadata?.usage,D=T?.metadata?.modelLimits?.contextWindow??d?.limits?.contextWindow??null,M=I?.contextTokens??I?.totalTokens??0,w=D&&D>0?(M/D*100).toFixed(1):null,R=l;let E;e[19]!==R?(E=R.filter(Yh).reduce(Gh,0),e[19]=R,e[20]=E):E=e[20];const C=E,P=l;let A;e[21]!==P?(A=P.filter(qh).reduce(Vh,0),e[21]=P,e[22]=A):A=e[22];const $=A,K=Math.max(0,j.totalTokens-C-$),q=l[0],F=l.at(-1),Y=q?.metadata?.created_at??N?.created_at,J=F?.metadata?.created_at??N?.updated_at,G=l.filter(Kh),H=l.flatMap(Wh),Q=d?.modelId?Mh(d.modelId):"—",ie=u?.title??"Decopilot",L=[{label:"Session",value:N?.title??"New chat"},{label:"Messages",value:G.length},{label:"Agent",value:ie},{label:"Model",value:Q},{label:"Context Limit",value:D?gs(D):"—"},{label:"Session Tokens (billed)",value:j.totalTokens>0?gs(j.totalTokens):"0"},{label:"Usage",value:w!==null?`${w}%`:"—"},{label:"Input Tokens",value:j.inputTokens>0?gs(j.inputTokens):"0"},{label:"Output Tokens",value:j.outputTokens>0?gs(j.outputTokens):"0"},{label:"Reasoning Tokens",value:j.reasoningTokens>0?gs(j.reasoningTokens):"0"},{label:"Cost",value:j.cost>0?`$${j.cost<.001?j.cost.toFixed(6):j.cost.toFixed(4)}`:"$0.00"},{label:"Session Created",value:Mn(Y)},{label:"Last Activity",value:Mn(J)}];if(!N&&G.length===0){let U;e[23]!==r?(U=Z("flex flex-col h-full w-full border-l border-border bg-background",r),e[23]=r,e[24]=U):U=e[24];let re;e[25]===Symbol.for("react.memo_cache_sentinel")?(re=o.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[25]=re):re=e[25];let de;e[26]!==i?(de=i?o.jsx(Sn,{size:14,className:"text-muted-foreground"}):o.jsx(rs,{size:14,className:"text-muted-foreground"}),e[26]=i,e[27]=de):de=e[27];let ce;e[28]!==s||e[29]!==de?(ce=o.jsxs("div",{className:"h-11 px-4 flex items-center justify-between shrink-0 border-b border-border/50",children:[re,o.jsx("button",{type:"button",onClick:s,className:"flex size-6 items-center justify-center rounded hover:bg-accent transition-colors",children:de})]}),e[28]=s,e[29]=de,e[30]=ce):ce=e[30];let he;e[31]===Symbol.for("react.memo_cache_sentinel")?(he=o.jsx("div",{className:"flex-1 flex items-center justify-center px-4 text-center",children:o.jsx("p",{className:"text-xs text-muted-foreground",children:"Start a conversation to see context"})}),e[31]=he):he=e[31];let _e;e[32]!==U||e[33]!==ce?(_e=o.jsxs("div",{className:U,children:[ce,he]}),e[32]=U,e[33]=ce,e[34]=_e):_e=e[34],S=_e;break e}e[35]!==r?(x=Z("flex flex-col h-full w-full border-l border-border bg-background overflow-y-auto",r),e[35]=r,e[36]=x):x=e[36];let ee;e[37]===Symbol.for("react.memo_cache_sentinel")?(ee=o.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[37]=ee):ee=e[37];let te;e[38]!==i?(te=i?o.jsx(Sn,{size:14}):o.jsx(rs,{size:14}),e[38]=i,e[39]=te):te=e[39],e[40]!==s||e[41]!==te?(b=o.jsxs("div",{className:"flex h-11 shrink-0 items-center justify-between border-b border-border/50 px-4",children:[ee,o.jsx("button",{type:"button",onClick:s,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:te})]}),e[40]=s,e[41]=te,e[42]=b):b=e[42],f="flex flex-col gap-8 p-6",m=H.length>0&&o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("span",{className:"text-xs text-muted-foreground",children:"Subtasks"}),o.jsx("div",{className:"flex flex-col gap-1",children:H.map(Hh)})]}),_=o.jsx(Ah,{items:L});let W;e[43]===Symbol.for("react.memo_cache_sentinel")?(W=o.jsx("span",{className:"text-xs text-muted-foreground",children:"Context Breakdown"}),e[43]=W):W=e[43],e[44]!==$||e[45]!==K||e[46]!==C?(p=o.jsxs("div",{className:"flex flex-col gap-3",children:[W,o.jsx(Ph,{userTokens:C,assistantTokens:$,otherTokens:K})]}),e[44]=$,e[45]=K,e[46]=C,e[47]=p):p=e[47],g=G.length>0&&o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("span",{className:"text-xs text-muted-foreground",children:"Raw messages"}),o.jsx("div",{className:"flex flex-col gap-1",children:G.map(U=>{const re=U.metadata?.created_at,de=n?.id===U.id;return o.jsxs("div",{className:"rounded-md border border-border/50 overflow-hidden",children:[o.jsxs("button",{type:"button",onClick:()=>a(de?null:U),className:"flex items-center justify-between gap-2 px-3 py-2 text-xs hover:bg-accent/50 w-full text-left cursor-pointer",children:[o.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[o.jsx("span",{className:Z("shrink-0 font-medium",U.role==="user"?"text-chart-1":"text-chart-2"),children:U.role}),o.jsx("span",{className:"text-muted-foreground",children:"•"}),o.jsx("span",{className:"truncate text-muted-foreground font-mono",children:U.id})]}),re&&o.jsx("span",{className:"shrink-0 text-muted-foreground tabular-nums",children:new Date(re).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})})]}),de&&o.jsxs(o.Fragment,{children:[U.role==="assistant"&&(()=>{const ce=U.metadata?._request;if(!ce)return null;const he=ce.systemSections??[],_e=Math.max(1,...he.map(Fh)),rt=he.reduce($h,0);return o.jsxs("div",{className:"border-t border-border/50 px-3 py-2.5 text-xs space-y-2.5",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"font-medium text-foreground",children:"Request"}),o.jsxs("span",{className:"text-muted-foreground tabular-nums",children:[ce.activeTools??0," / ",ce.tools??0," ","tools active"]})]}),he.length>0&&o.jsxs("div",{className:"space-y-1.5",children:[o.jsxs("div",{className:"text-muted-foreground",children:["System prompt"," ",o.jsxs("span",{className:"tabular-nums",children:["~",Math.round(rt/4).toLocaleString()," ","tok"]})]}),he.map((Xe,st)=>{const yt=Xe.preview.match(/^<([a-z-]+)/i)?.[1]??`section ${st}`,Oe=Xe.chars/_e*100,oe=Math.round(Xe.chars/4);return o.jsxs("div",{className:"space-y-0.5",children:[o.jsxs("div",{className:"flex items-center justify-between gap-2",children:[o.jsx("span",{className:"font-mono text-foreground truncate",children:yt}),o.jsxs("span",{className:"text-muted-foreground tabular-nums shrink-0",children:["~",oe.toLocaleString()," tok"]})]}),o.jsx("div",{className:"h-1 w-full rounded-full bg-muted overflow-hidden",children:o.jsx("div",{className:"h-full rounded-full bg-chart-3",style:{width:`${Oe}%`}})})]},st)})]})]})})(),o.jsx("pre",{className:"text-xs font-mono bg-muted px-3 py-2 overflow-auto whitespace-pre-wrap break-all border-t border-border/50 max-h-64",children:JSON.stringify(U,null,2)})]})]},U.id)})})]})}e[0]=i,e[1]=r,e[2]=l,e[3]=s,e[4]=n?.id,e[5]=d,e[6]=u?.title,e[7]=c,e[8]=h,e[9]=f,e[10]=m,e[11]=_,e[12]=p,e[13]=g,e[14]=x,e[15]=b,e[16]=S}else f=e[9],m=e[10],_=e[11],p=e[12],g=e[13],x=e[14],b=e[15],S=e[16];if(S!==Symbol.for("react.early_return_sentinel"))return S;let v;e[48]!==f||e[49]!==m||e[50]!==_||e[51]!==p||e[52]!==g?(v=o.jsxs("div",{className:f,children:[m,_,p,g]}),e[48]=f,e[49]=m,e[50]=_,e[51]=p,e[52]=g,e[53]=v):v=e[53];let y;return e[54]!==x||e[55]!==b||e[56]!==v?(y=o.jsxs("div",{className:x,children:[b,v]}),e[54]=x,e[55]=b,e[56]=v,e[57]=y):y=e[57],y}function $h(t,e){return t+e.chars}function Fh(t){return t.chars}function Hh(t,e){return o.jsx(Oh,{part:t},e)}function Wh(t){return(t.parts??[]).filter(Uh)}function Uh(t){return t.type==="tool-subtask"}function Kh(t){return t.role!=="system"}function Vh(t,e){const s=e.metadata?.usage;return t+(s?.outputTokens??0)}function qh(t){return t.role==="assistant"}function Gh(t,e){const s=e.metadata?.usage;return t+(s?.inputTokens??0)}function Yh(t){return t.role==="user"}function Xh(t){return t.role==="assistant"&&t.metadata?.usage}const An=["amber","bold","bright","calm","crimson","coral","daring","deep","dusty","eager","faint","fierce","frozen","gentle","golden","grand","green","hollow","iron","ivory","keen","lasting","lunar","mellow","misty","noble","olive","pale","prime","quiet","rapid","rustic","serene","sharp","silver","sleek","solar","stark","still","swift","tawny","tender","thin","true","vast","velvet","warm","wild","young","zen"],In=["anchor","birch","brook","cedar","cliff","cove","crane","dune","echo","ember","falcon","fern","flint","forge","frost","glade","grove","harbor","hawk","iris","jade","lark","maple","marsh","mesa","opal","orbit","peak","pine","plume","quartz","rapids","reef","ridge","river","sage","shore","slate","spruce","stone","summit","thorn","tide","trail","vale","wren","aspen","delta","crest","spark"];function Jh(){const t=An[Math.floor(Math.random()*An.length)],e=In[Math.floor(Math.random()*In.length)];return`deco/${t}-${e}`}function Zh(t){const e=t;if(e.structuredContent)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(s)try{return JSON.parse(s)}catch{return[]}return[]}function Qh(t){const e=z.c(26),{orgId:s,orgSlug:i,userId:r,connectionId:n,vmMap:a,owner:l,repo:h,enabled:c}=t,d=c===void 0?!0:c,u=n??null;let f;e[0]!==s||e[1]!==i||e[2]!==u?(f={connectionId:u,orgId:s,orgSlug:i},e[0]=s,e[1]=i,e[2]=u,e[3]=f):f=e[3];const m=He(f);let _;e[4]!==l||e[5]!==h?(_={owner:l,repo:h},e[4]=l,e[5]=h,e[6]=_):_=e[6];const p=d&&!!n&&!!l&&!!h;let g;e[7]!==m||e[8]!==_||e[9]!==p?(g={client:m,toolName:"list_branches",toolArguments:_,enabled:p,staleTime:3e4,select:id},e[7]=m,e[8]=_,e[9]=p,e[10]=g):g=e[10];const{data:x,isLoading:b,isError:S}=ds(g);let v,y;e[11]!==r||e[12]!==a?(y=new Set(Object.keys(a?.[r]??{})),v=[...y].sort().map(sd),e[11]=r,e[12]=a,e[13]=v,e[14]=y):(v=e[13],y=e[14]);const k=v;let N;if(e[15]!==x||e[16]!==y){const D=Array.isArray(x)?x:x?.branches??[];let M;e[18]!==y?(M=w=>!y.has(w.name),e[18]=y,e[19]=M):M=e[19],N=D.filter(td).filter(M).map(ed),e[15]=x,e[16]=y,e[17]=N}else N=e[17];const j=N,T=Array.isArray(x)?null:x?.default_branch??null;let I;return e[20]!==T||e[21]!==S||e[22]!==b||e[23]!==j||e[24]!==k?(I={yours:k,others:j,defaultBase:T,isLoading:b,isError:S},e[20]=T,e[21]=S,e[22]=b,e[23]=j,e[24]=k,e[25]=I):I=e[25],I}function ed(t){return{name:t.name,source:"other",author:typeof t.commit?.author=="string"?t.commit.author:t.commit?.author?.login??null}}function td(t){return typeof t.name=="string"}function sd(t){return{name:t,source:"yours"}}function id(t){return Zh(t)}function rd(t){const e=z.c(42),{orgId:s,orgSlug:i,userId:r,connectionId:n,owner:a,repo:l,vmMap:h,value:c,onChange:d}=t,[u,f]=B.useState(!1);let m;e[0]!==n||e[1]!==u||e[2]!==s||e[3]!==i||e[4]!==a||e[5]!==l||e[6]!==r||e[7]!==h?(m={orgId:s,orgSlug:i,userId:r,connectionId:n,vmMap:h,owner:a,repo:l,enabled:u},e[0]=n,e[1]=u,e[2]=s,e[3]=i,e[4]=a,e[5]=l,e[6]=r,e[7]=h,e[8]=m):m=e[8];const{yours:_,others:p,isLoading:g,isError:x}=Qh(m);let b;e[9]!==d?(b=C=>{d(C),f(!1)},e[9]=d,e[10]=b):b=e[10];const S=b,v=c??"Select branch…";let y;e[11]===Symbol.for("react.memo_cache_sentinel")?(y=o.jsx(Rs,{className:"h-3.5 w-3.5"}),e[11]=y):y=e[11];let k;e[12]!==v?(k=o.jsx(ls,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 font-mono text-xs",children:[y,o.jsx("span",{className:"max-w-[200px] truncate",children:v})]})}),e[12]=v,e[13]=k):k=e[13];let N;e[14]===Symbol.for("react.memo_cache_sentinel")?(N=o.jsx(vc,{placeholder:"Search branches…"}),e[14]=N):N=e[14];let j;e[15]!==S?(j=o.jsxs("div",{className:"flex items-center border-b pr-2 [&>[data-slot=command-input-wrapper]]:flex-1 [&>[data-slot=command-input-wrapper]]:border-b-0",children:[N,o.jsx(se,{variant:"outline",size:"sm",className:"h-7 shrink-0",onClick:()=>S(Jh()),children:"New"})]}),e[15]=S,e[16]=j):j=e[16];let T;e[17]!==x?(T=x&&o.jsx("div",{className:"p-3 text-xs text-muted-foreground",children:"Couldn't load branches from GitHub. You can still pick from your branches."}),e[17]=x,e[18]=T):T=e[18];let I;e[19]!==x||e[20]!==g||e[21]!==p.length||e[22]!==_.length?(I=!x&&!g&&_.length===0&&p.length===0&&o.jsx(pc,{children:"No branches found."}),e[19]=x,e[20]=g,e[21]=p.length,e[22]=_.length,e[23]=I):I=e[23];let D;e[24]!==S||e[25]!==_?(D=_.length>0&&o.jsx(Cn,{heading:"Your branches",children:_.map(C=>o.jsxs(kn,{value:C.name,onSelect:()=>S(C.name),children:[o.jsx(Rs,{className:"mr-2 h-4 w-4"}),o.jsx("span",{className:"flex-1 truncate",children:C.name})]},C.name))}),e[24]=S,e[25]=_,e[26]=D):D=e[26];let M;e[27]!==p||e[28]!==S?(M=p.length>0&&o.jsxs(o.Fragment,{children:[o.jsx(gc,{}),o.jsx(Cn,{heading:"Other branches in repo",children:p.map(C=>o.jsxs(kn,{value:C.name,onSelect:()=>S(C.name),children:[o.jsx(Rs,{className:"mr-2 h-4 w-4"}),o.jsx("span",{className:"flex-1 truncate",children:C.name}),C.author&&o.jsxs("span",{className:"text-xs text-muted-foreground",children:["@",C.author]})]},C.name))})]}),e[27]=p,e[28]=S,e[29]=M):M=e[29];let w;e[30]!==M||e[31]!==T||e[32]!==I||e[33]!==D?(w=o.jsxs(xc,{children:[T,I,D,M]}),e[30]=M,e[31]=T,e[32]=I,e[33]=D,e[34]=w):w=e[34];let R;e[35]!==w||e[36]!==j?(R=o.jsx(cs,{className:"w-[min(420px,calc(100vw-2rem))] p-0",align:"start",children:o.jsxs(bc,{children:[j,w]})}),e[35]=w,e[36]=j,e[37]=R):R=e[37];let E;return e[38]!==u||e[39]!==R||e[40]!==k?(E=o.jsxs(hs,{open:u,onOpenChange:f,children:[k,R]}),e[38]=u,e[39]=R,e[40]=k,e[41]=E):E=e[41],E}function nd(){const t=z.c(27),{org:e}=ge(),{selectedVirtualMcp:s}=Xr(),{data:i}=Yr.useSession(),{currentBranch:r,setCurrentTaskBranch:n}=xt();let a;t[0]!==e.id?(a=Yo(e.id),t[0]=e.id,t[1]=a):a=t[1];const h=s??a,c=vt(h.id),d=i?.user?.id??"",u=c?.metadata?.githubRepo??null,f=!!u?.connectionId&&!!d;let m;t[2]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(Zl,{size:32}),t[2]=m):m=t[2];let _;t[3]!==h.icon||t[4]!==h.title?(_=o.jsx(Kt,{icon:h.icon,name:h.title,size:"lg",fallbackIcon:m,className:"size-10 min-w-10 md:size-[60px]! md:min-w-[60px] rounded-xl md:rounded-[18px]!"}),t[3]=h.icon,t[4]=h.title,t[5]=_):_=t[5];let p;t[6]!==h.title?(p=o.jsx("h3",{className:"text-base md:text-xl font-medium text-foreground",children:h.title}),t[6]=h.title,t[7]=p):p=t[7];const g=h.description??"Ask anything about configuring model providers or using MCP Mesh.";let x;t[8]!==g?(x=o.jsx("div",{className:"text-muted-foreground text-center text-base max-w-md line-clamp-2",children:g}),t[8]=g,t[9]=x):x=t[9];let b;t[10]!==r||t[11]!==c?.metadata?.vmMap||t[12]!==u||t[13]!==e.id||t[14]!==e.slug||t[15]!==n||t[16]!==f||t[17]!==d?(b=f&&o.jsx("div",{className:"mt-2",children:o.jsx(rd,{orgId:e.id,orgSlug:e.slug,userId:d,connectionId:u.connectionId,owner:u.owner,repo:u.name,vmMap:c?.metadata?.vmMap,value:r??void 0,onChange:n})}),t[10]=r,t[11]=c?.metadata?.vmMap,t[12]=u,t[13]=e.id,t[14]=e.slug,t[15]=n,t[16]=f,t[17]=d,t[18]=b):b=t[18];let S;t[19]!==_||t[20]!==p||t[21]!==x||t[22]!==b?(S=o.jsxs("div",{className:"flex flex-col items-center justify-center gap-2 md:gap-4 text-center",children:[_,p,x,b]}),t[19]=_,t[20]=p,t[21]=x,t[22]=b,t[23]=S):S=t[23];let v;t[24]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx("div",{className:"w-full max-w-3xl mx-auto",children:o.jsx(Ce.IceBreakers,{})}),t[24]=v):v=t[24];let y;return t[25]!==S?(y=o.jsxs("div",{className:"h-full w-full flex flex-col items-center justify-center gap-6 px-4",children:[S,v]}),t[25]=S,t[26]=y):y=t[26],y}function od(){const t=z.c(26),{org:e}=ge(),s=Dc(),{isChatEmpty:i}=Jo(),[r,n]=B.useState("chat"),a=Kl();if(s.length===0){let S;return t[0]===Symbol.for("react.memo_cache_sentinel")?(S=o.jsx(Ce,{className:"animate-in fade-in-0 duration-200",children:o.jsx(Ce.Main,{className:"flex flex-col items-center",children:o.jsx(Ce.EmptyState,{children:o.jsx(Ce.NoAiProviderEmptyState,{})})})}),t[0]=S):S=t[0],S}let l;t[1]!==a.hasDecoKey||t[2]!==a.hasOnlyDecoProvider||t[3]!==a.isLoading||t[4]!==a.isZeroBalance||t[5]!==i||t[6]!==e?(l=a.hasDecoKey&&a.isZeroBalance&&a.hasOnlyDecoProvider&&!a.isLoading&&i&&!Vl(e.id),t[1]=a.hasDecoKey,t[2]=a.hasOnlyDecoProvider,t[3]=a.isLoading,t[4]=a.isZeroBalance,t[5]=i,t[6]=e,t[7]=l):l=t[7];const h=l;let c;t[8]!==h?(c=h&&o.jsx(Ce.CreditsEmptyState,{}),t[8]=h,t[9]=c):c=t[9];const d=r!=="chat"?"opacity-0 pointer-events-none":"opacity-100";let u;t[10]!==d?(u=Z("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",d),t[10]=d,t[11]=u):u=t[11];let f;t[12]!==i?(f=i?o.jsxs(o.Fragment,{children:[o.jsx(Ce.Main,{children:o.jsx(nd,{})}),o.jsx(Ce.Footer,{children:o.jsx(Ce.Input,{onOpenContextPanel:()=>n("context")})})]}):o.jsxs(o.Fragment,{children:[o.jsx(Ce.Main,{children:o.jsx(Ce.Messages,{})}),o.jsx(Ce.Footer,{children:o.jsx(Ce.Input,{onOpenContextPanel:()=>n("context")})})]}),t[12]=i,t[13]=f):f=t[13];let m;t[14]!==u||t[15]!==f?(m=o.jsx("div",{className:u,children:f}),t[14]=u,t[15]=f,t[16]=m):m=t[16];const _=r==="context"?"opacity-100":"opacity-0 pointer-events-none";let p;t[17]!==_?(p=Z("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",_),t[17]=_,t[18]=p):p=t[18];let g;t[19]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx(zh,{back:!0,onClose:()=>n("chat")}),t[19]=g):g=t[19];let x;t[20]!==p?(x=o.jsx("div",{className:p,children:g}),t[20]=p,t[21]=x):x=t[21];let b;return t[22]!==c||t[23]!==m||t[24]!==x?(b=o.jsxs(Ce,{className:"relative overflow-hidden animate-in fade-in-0 duration-200",children:[c,m,x]}),t[22]=c,t[23]=m,t[24]=x,t[25]=b):b=t[25],b}function Ta(){const t=z.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx(Ce.Skeleton,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Tt,{fallback:e,children:o.jsx(B.Suspense,{fallback:o.jsx(Ce.Skeleton,{}),children:o.jsx(od,{})})}),t[1]=s):s=t[1],s}async function ad(t,e,s){const i=await t.callTool({name:e,arguments:s});if(i.isError){const r=i.content?.[0]?.text??`Tool ${e} failed without a message`;throw new Error(r)}return i}const Ra=["VM_START"],Ys=new Map,ld=t=>`${t.virtualMcpId}::${t.branch??""}`,zi=new Set,ni={mark:(t,e)=>zi.add(`${t}::${e}`),clear:(t,e)=>zi.delete(`${t}::${e}`),isStopped:(t,e)=>zi.has(`${t}::${e}`)};function Da(t){const e=as();return Wo({mutationKey:Ra,mutationFn:async s=>{s.branch&&ni.clear(s.virtualMcpId,s.branch);const i=ld(s),r=Ys.get(i);if(r)return r;const n=(async()=>(await ad(t,"VM_START",s)).structuredContent)();Ys.set(i,n);try{return await n}finally{Ys.get(i)===n&&Ys.delete(i)}},onSuccess:()=>{Uo(e)}})}function cd(t,e){const s=z.c(3);let i;return s[0]!==e||s[1]!==t?(i={mutationKey:Ra,predicate:n=>{if(!t)return!1;const a=n.state.variables;return!a||a.virtualMcpId!==t?!1:(a.branch??"")===(e??"")}},s[0]=e,s[1]=t,s[2]=i):i=s[2],Th(i)>0}const hd={settings:yc,automations:Sc,preview:ic,git:Rs};function Pn(t){const e=Si(t);if(e.type==="icon"){const s=yi(e.name);return s?{kind:"component",Component:s}:null}return e.type==="url"?{kind:"url",src:e.url}:null}function $i(t){if(t.kind==="system")return{kind:"component",Component:hd[t.tabId]};const e=Pn(t.iconUrl);if(e)return e;if(!t.appId)return{kind:"fallback"};const s=t.connections.find(r=>r.id===t.appId);if(!s)return{kind:"fallback"};const i=Pn(s.icon);return i||{kind:"fallback"}}function dd(t){const{org:e}=ge(),s=He({connectionId:Vt,orgId:e.id,orgSlug:e.slug}),{data:i}=Bl({queryKey:Is.threadMetadata(t),queryFn:async()=>{if(!s||!t)return null;try{const r=await s.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}});return(r.structuredContent??r).item?.metadata??null}catch{return null}},staleTime:3e4});return i}function Ma(t){const e=z.c(8),s=Ut();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},e[0]=i):i=e[0];const r=Ko(i),n=vt(t.virtualMcpId),a=dd(t.taskId),{currentBranch:l}=xt(),h=n?.metadata?.ui??null,c=h?.layout??null,d=c?.tabs??[],u=h?.pinnedViews??[],f=a?.expanded_tools??[],m=!!(n&&$t(n));let _;e[1]===Symbol.for("react.memo_cache_sentinel")?(_={includeVirtual:!0},e[1]=_):_=e[1];const p=wi(_),{activeTab:g,mainOpen:x}=lc({mainParam:r.main,metadata:c?{defaultMainView:c.defaultMainView??null,tabs:d.map(ud)}:null}),b=Zo(g),S=[];m&&(S.push({id:"preview",title:"Preview"}),S.push({id:"git",title:l??"git"})),S.push({id:"settings",title:"Settings"}),S.push({id:"automations",title:"Automations"});const v=new Map;for(const T of f){const I=yn(T.appId,T.toolName);v.set(I,{id:I,title:T.toolName,appId:T.appId,iconKey:T.toolName})}for(const T of u){const I=yn(T.connectionId,T.toolName);v.set(I,{id:I,title:T.label||T.toolName,appId:T.connectionId,iconKey:T.toolName,iconUrl:T.icon??null})}let y;e[2]!==p?(y=T=>({id:T.id,title:T.title,kind:"agent",icon:$i({tabId:T.id,kind:"agent",appId:T.view.appId,connections:p})}),e[2]=p,e[3]=y):y=e[3];const k=[...d.map(y),...Array.from(v.values()).map(T=>({id:T.id,title:T.title,kind:"expanded",icon:$i({tabId:T.iconKey,kind:"expanded",appId:T.appId,iconUrl:T.iconUrl,connections:p})})),...S.map(T=>({id:T.id,title:T.title,kind:"system",icon:$i({tabId:T.id,kind:"system",connections:p})}))];let N;return e[4]!==g||e[5]!==x||e[6]!==s?(N=T=>{const I=cc({clickedId:T,activeTab:g,mainOpen:x});s({to:".",search:D=>({...D,main:I}),replace:!0})},e[4]=g,e[5]=x,e[6]=s,e[7]=N):N=e[7],{activeTab:g,mainOpen:x,setActiveTab:N,systemTabs:S,layoutTabs:d,expandedTools:f,automationTabParsed:b,tabs:k}}function ud(t){return{id:t.id}}function Aa(t){const{managerAgentId:e,managerName:s,kind:i,id:r,instructions:n}=t,a=` to improve the instructions of ${i} "${r}". Here are its current instructions.
3
- <current_instructions>${n}</current_instructions>`;return{type:"doc",content:[{type:"paragraph",content:[{type:"text",text:"Use "},{type:"mention",attrs:{id:e,name:s,char:"@",metadata:{agentId:e,title:s}}},{type:"text",text:a}]}]}}function fd(t){const e=z.c(84),{value:s,onChange:i,onColorChange:r,name:n,size:a,className:l,avatarClassName:h,showHoverOverlay:c,disabled:d}=t,u=a===void 0?"lg":a,f=c===void 0?!0:c,m=d===void 0?!1:d,[_,p]=B.useState(!1),[g,x]=B.useState("icons"),[b,S]=B.useState(""),[v,y]=B.useState("blue");let k;e[0]!==s?(k=Si(s),e[0]=s,e[1]=k):k=e[1];const N=k,j=N.type==="icon"||N.type==="url"&&N.color?N.color:v;let T;e[2]!==i||e[3]!==j?(T=Oe=>{i(Bi(Oe,j))},e[2]=i,e[3]=j,e[4]=T):T=e[4];const I=T;let D;e[5]!==i||e[6]!==r||e[7]!==N.name||e[8]!==N.type||e[9]!==N.url?(D=Oe=>{y(Oe),r?.(Oe),N.type==="icon"?i(Bi(N.name,Oe)):N.type==="url"&&i(Nn(N.url,Oe))},e[5]=i,e[6]=r,e[7]=N.name,e[8]=N.type,e[9]=N.url,e[10]=D):D=e[10];const M=D;let w;e[11]!==i||e[12]!==j?(w=Oe=>{i(Nn(Oe,j)),p(!1)},e[11]=i,e[12]=j,e[13]=w):w=e[13];const R=w;let E;e[14]!==i||e[15]!==j?(E=()=>{const Oe=en(),oe=Oe[Math.floor(Math.random()*Oe.length)];i(Bi(oe,j))},e[14]=i,e[15]=j,e[16]=E):E=e[16];const C=E;let P,A,$,K,q,F,Y,J;if(e[17]!==l||e[18]!==m||e[19]!==_||e[20]!==u){const Oe={xs:"rounded-md",sm:"rounded-lg","sm+":"rounded-xl",md:"rounded-xl",lg:"rounded-2xl",xl:"rounded-2xl"};A=hs,F=m?!1:_,Y=p,P=ls,q=!0,J="button",$=m,K=Z("relative group overflow-hidden",m?"cursor-default opacity-50":"cursor-pointer",Oe[u],l),e[17]=l,e[18]=m,e[19]=_,e[20]=u,e[21]=P,e[22]=A,e[23]=$,e[24]=K,e[25]=q,e[26]=F,e[27]=Y,e[28]=J}else P=e[21],A=e[22],$=e[23],K=e[24],q=e[25],F=e[26],Y=e[27],J=e[28];let G;e[29]!==h||e[30]!==n||e[31]!==u||e[32]!==s?(G=o.jsx(jn,{icon:s,name:n,size:u,className:h}),e[29]=h,e[30]=n,e[31]=u,e[32]=s,e[33]=G):G=e[33];let H;e[34]!==m||e[35]!==f?(H=f&&!m&&o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity",children:o.jsx(tn,{size:16,className:"text-white"})}),e[34]=m,e[35]=f,e[36]=H):H=e[36];let Q;e[37]!==$||e[38]!==K||e[39]!==G||e[40]!==H||e[41]!==J?(Q=o.jsxs("button",{type:J,disabled:$,className:K,children:[G,H]}),e[37]=$,e[38]=K,e[39]=G,e[40]=H,e[41]=J,e[42]=Q):Q=e[42];let ie;e[43]!==P||e[44]!==q||e[45]!==Q?(ie=o.jsx(P,{asChild:q,children:Q}),e[43]=P,e[44]=q,e[45]=Q,e[46]=ie):ie=e[46];let L;e[47]!==n||e[48]!==s?(L=o.jsx("div",{className:"flex items-center justify-center py-4",children:o.jsx(jn,{icon:s,name:n,size:"xl"})}),e[47]=n,e[48]=s,e[49]=L):L=e[49];let ee;e[50]===Symbol.for("react.memo_cache_sentinel")?(ee=()=>x("icons"),e[50]=ee):ee=e[50];const te=g==="icons"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let W;e[51]!==te?(W=Z("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",te),e[51]=te,e[52]=W):W=e[52];let U;e[53]!==W?(U=o.jsx("button",{type:"button",onClick:ee,className:W,children:"Icons"}),e[53]=W,e[54]=U):U=e[54];let re;e[55]===Symbol.for("react.memo_cache_sentinel")?(re=()=>x("upload"),e[55]=re):re=e[55];const de=g==="upload"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let ce;e[56]!==de?(ce=Z("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",de),e[56]=de,e[57]=ce):ce=e[57];let he;e[58]!==ce?(he=o.jsx("button",{type:"button",onClick:re,className:ce,children:"Upload"}),e[58]=ce,e[59]=he):he=e[59];let _e;e[60]===Symbol.for("react.memo_cache_sentinel")?(_e=o.jsx("div",{className:"flex-1"}),e[60]=_e):_e=e[60];let rt;e[61]!==U||e[62]!==he?(rt=o.jsxs("div",{className:"flex items-center border-b border-border px-3",children:[U,he,_e]}),e[61]=U,e[62]=he,e[63]=rt):rt=e[63];let Xe;e[64]!==M||e[65]!==C||e[66]!==I||e[67]!==R||e[68]!==N.name||e[69]!==N.type||e[70]!==b||e[71]!==j||e[72]!==g?(Xe=g==="icons"?o.jsx(gd,{search:b,onSearchChange:S,selectedColor:j,onColorChange:M,onSelectIcon:I,onRandom:C,currentIconName:N.type==="icon"?N.name:null}):o.jsx(vd,{onUpload:R}),e[64]=M,e[65]=C,e[66]=I,e[67]=R,e[68]=N.name,e[69]=N.type,e[70]=b,e[71]=j,e[72]=g,e[73]=Xe):Xe=e[73];let st;e[74]!==L||e[75]!==rt||e[76]!==Xe?(st=o.jsx(cs,{align:"start",className:"w-80 p-0",onOpenAutoFocus:md,children:o.jsxs("div",{className:"flex flex-col",children:[L,rt,Xe]})}),e[74]=L,e[75]=rt,e[76]=Xe,e[77]=st):st=e[77];let yt;return e[78]!==A||e[79]!==F||e[80]!==Y||e[81]!==ie||e[82]!==st?(yt=o.jsxs(A,{open:F,onOpenChange:Y,children:[ie,st]}),e[78]=A,e[79]=F,e[80]=Y,e[81]=ie,e[82]=st,e[83]=yt):yt=e[83],yt}function md(t){return t.preventDefault()}function _d(t){const e=z.c(27),{selectedColor:s,onColorChange:i}=t,[r,n]=B.useState(!1);let a,l,h,c,d,u,f;if(e[0]!==r||e[1]!==s){const b=Qo(s);l=hs,u=r,f=n,a=ls,d=!0,h="button",c=Z("h-6 w-6 rounded-full shrink-0 ring-2 ring-offset-2 ring-offset-background transition-all cursor-pointer hover:scale-110",b.dot,"ring-foreground/20"),e[0]=r,e[1]=s,e[2]=a,e[3]=l,e[4]=h,e[5]=c,e[6]=d,e[7]=u,e[8]=f}else a=e[2],l=e[3],h=e[4],c=e[5],d=e[6],u=e[7],f=e[8];let m;e[9]!==h||e[10]!==c?(m=o.jsx("button",{type:h,className:c,title:"Change color"}),e[9]=h,e[10]=c,e[11]=m):m=e[11];let _;e[12]!==a||e[13]!==d||e[14]!==m?(_=o.jsx(a,{asChild:d,children:m}),e[12]=a,e[13]=d,e[14]=m,e[15]=_):_=e[15];let p;e[16]!==i||e[17]!==s?(p=Cc.map(b=>o.jsx("button",{type:"button",onClick:()=>{i(b.name),n(!1)},className:Z("h-5 w-5 rounded-full transition-all shrink-0 cursor-pointer",b.dot,s===b.name?"ring-2 ring-offset-1 ring-offset-background ring-foreground/30 scale-110":"hover:scale-110"),title:b.name},b.name)),e[16]=i,e[17]=s,e[18]=p):p=e[18];let g;e[19]!==p?(g=o.jsx(cs,{align:"start",side:"right",sideOffset:8,className:"w-auto p-2",onOpenAutoFocus:pd,children:o.jsx("div",{className:"grid grid-cols-4 gap-1",children:p})}),e[19]=p,e[20]=g):g=e[20];let x;return e[21]!==l||e[22]!==u||e[23]!==f||e[24]!==_||e[25]!==g?(x=o.jsxs(l,{open:u,onOpenChange:f,children:[_,g]}),e[21]=l,e[22]=u,e[23]=f,e[24]=_,e[25]=g,e[26]=x):x=e[26],x}function pd(t){return t.preventDefault()}function gd(t){const e=z.c(44),{search:s,onSearchChange:i,selectedColor:r,onColorChange:n,onSelectIcon:a,onRandom:l,currentIconName:h}=t;let c,d,u,f,m,_,p;if(e[0]!==h||e[1]!==n||e[2]!==l||e[3]!==i||e[4]!==a||e[5]!==s||e[6]!==r){const v=en(),y=Qo(r);d=s.trim()?v.filter(M=>{const w=or(M),R=s.toLowerCase();return w.includes(R)||M.toLowerCase().includes(R)}):v,_="flex flex-col";let k;e[14]===Symbol.for("react.memo_cache_sentinel")?(k=o.jsx(Na,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[14]=k):k=e[14];let N;e[15]!==i?(N=M=>i(M.target.value),e[15]=i,e[16]=N):N=e[16];let j;e[17]!==s||e[18]!==N?(j=o.jsxs("div",{className:"relative flex-1",children:[k,o.jsx(qt,{value:s,onChange:N,placeholder:"Filter...",className:"h-8 text-xs pl-7"})]}),e[17]=s,e[18]=N,e[19]=j):j=e[19];let T;e[20]===Symbol.for("react.memo_cache_sentinel")?(T=o.jsx(wc,{size:14,className:"text-muted-foreground"}),e[20]=T):T=e[20];let I;e[21]!==l?(I=o.jsx("button",{type:"button",onClick:l,className:"h-8 w-8 flex items-center justify-center rounded-md border border-border hover:bg-accent transition-colors shrink-0",title:"Random icon",children:T}),e[21]=l,e[22]=I):I=e[22];let D;e[23]!==n||e[24]!==r?(D=o.jsx(_d,{selectedColor:r,onColorChange:n}),e[23]=n,e[24]=r,e[25]=D):D=e[25],e[26]!==I||e[27]!==D||e[28]!==j?(p=o.jsxs("div",{className:"flex items-center gap-2 px-3 py-2",children:[j,I,D]}),e[26]=I,e[27]=D,e[28]=j,e[29]=p):p=e[29],c=ka,m="h-56",u="grid grid-cols-9 gap-0.5 px-2 pb-2",f=d.map(M=>{const w=yi(M);return w?o.jsx("button",{type:"button",onClick:()=>a(M),className:Z("h-8 w-8 flex items-center justify-center rounded-md transition-colors cursor-pointer",h===M?Z(y.bg,y.text):Z(y.text,"hover:bg-accent")),title:M,children:o.jsx(w,{size:18})},M):null}),e[0]=h,e[1]=n,e[2]=l,e[3]=i,e[4]=a,e[5]=s,e[6]=r,e[7]=c,e[8]=d,e[9]=u,e[10]=f,e[11]=m,e[12]=_,e[13]=p}else c=e[7],d=e[8],u=e[9],f=e[10],m=e[11],_=e[12],p=e[13];let g;e[30]!==u||e[31]!==f?(g=o.jsx("div",{className:u,children:f}),e[30]=u,e[31]=f,e[32]=g):g=e[32];let x;e[33]!==d.length?(x=d.length===0&&o.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No icons found"}),e[33]=d.length,e[34]=x):x=e[34];let b;e[35]!==c||e[36]!==m||e[37]!==g||e[38]!==x?(b=o.jsxs(c,{className:m,children:[g,x]}),e[35]=c,e[36]=m,e[37]=g,e[38]=x,e[39]=b):b=e[39];let S;return e[40]!==_||e[41]!==p||e[42]!==b?(S=o.jsxs("div",{className:_,children:[p,b]}),e[40]=_,e[41]=p,e[42]=b,e[43]=S):S=e[43],S}function vd(t){const e=z.c(27),{onUpload:s}=t,i=B.useRef(null);let r;e[0]!==s?(r=k=>{const N=k.target.files?.[0];if(!N)return;if(N.size>2097152){fe.error("Image must be smaller than 2MB"),k.target.value="";return}const j=new FileReader;j.onerror=()=>{fe.error("Failed to read image file"),i.current&&(i.current.value="")},j.onloadend=()=>{j.readyState===FileReader.DONE&&j.result&&s(j.result),i.current&&(i.current.value="")},j.readAsDataURL(N)},e[0]=s,e[1]=r):r=e[1];const n=r,[a,l]=B.useState("");let h;e[2]!==s||e[3]!==a?(h=()=>{const k=a.trim();k&&(s(k),l(""))},e[2]=s,e[3]=a,e[4]=h):h=e[4];const c=h;let d;e[5]!==n?(d=o.jsx("input",{type:"file",ref:i,className:"hidden",accept:"image/*",onChange:n}),e[5]=n,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=()=>i.current?.click(),e[7]=u):u=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=o.jsxs("button",{type:"button",onClick:u,className:"h-24 rounded-lg border-2 border-dashed border-border hover:border-foreground/50 hover:bg-accent/50 transition-colors flex flex-col items-center justify-center gap-2 text-muted-foreground hover:text-foreground",children:[o.jsx(rc,{size:20}),o.jsx("span",{className:"text-xs",children:"Click to upload an image (max 2MB)"})]}),e[8]=f):f=e[8];let m;e[9]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"text-xs text-muted-foreground",children:"or"}),o.jsx("div",{className:"flex-1 h-px bg-border"})]}),e[9]=m):m=e[9];let _;e[10]===Symbol.for("react.memo_cache_sentinel")?(_=k=>l(k.target.value),e[10]=_):_=e[10];let p;e[11]!==c?(p=k=>{k.key==="Enter"&&(k.preventDefault(),c())},e[11]=c,e[12]=p):p=e[12];let g;e[13]!==a||e[14]!==p?(g=o.jsx(qt,{value:a,onChange:_,placeholder:"Paste image URL...",className:"h-8 text-xs flex-1",onKeyDown:p}),e[13]=a,e[14]=p,e[15]=g):g=e[15];let x;e[16]!==a?(x=a.trim(),e[16]=a,e[17]=x):x=e[17];const b=!x;let S;e[18]!==c||e[19]!==b?(S=o.jsx(se,{variant:"outline",size:"sm",className:"h-8 px-3 text-xs shrink-0",onClick:c,disabled:b,children:"Apply"}),e[18]=c,e[19]=b,e[20]=S):S=e[20];let v;e[21]!==S||e[22]!==g?(v=o.jsxs("div",{className:"flex items-center gap-1.5",children:[g,S]}),e[21]=S,e[22]=g,e[23]=v):v=e[23];let y;return e[24]!==v||e[25]!==d?(y=o.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[d,f,m,v]}),e[24]=v,e[25]=d,e[26]=y):y=e[26],y}function xd(t){const e=z.c(5),{value:s}=t;let i;if(e[0]!==s){i=Symbol.for("react.early_return_sentinel");e:{const n=Si(s);if(n.type==="icon"){const a=yi(n.name);if(a){let l;e[2]!==a?(l=o.jsx(a,{size:16,className:"text-muted-foreground"}),e[2]=a,e[3]=l):l=e[3],i=l;break e}}}e[0]=s,e[1]=i}else i=e[1];if(i!==Symbol.for("react.early_return_sentinel"))return i;let r;return e[4]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx(lh,{size:16,className:"text-muted-foreground"}),e[4]=r):r=e[4],r}function bd(t){const e=z.c(66),{value:s,onChange:i,className:r,disabled:n}=t,[a,l]=B.useState(!1),[h,c]=B.useState("");let d;e[0]!==s?(d=Si(s),e[0]=s,e[1]=d):d=e[1];const u=d,f=u.type==="icon"?u.name:null;let m,_,p,g,x,b,S,v,y,k,N,j,T,I,D;if(e[2]!==r||e[3]!==f||e[4]!==n||e[5]!==i||e[6]!==a||e[7]!==h||e[8]!==s){const A=en();g=h.trim()?A.filter(G=>{const H=h.toLowerCase();return or(G).includes(H)||G.toLowerCase().includes(H)}):A,p=hs,x=n?!1:a,b=l;const $=n?"cursor-default opacity-50":"cursor-pointer hover:bg-accent";let K;e[24]!==r||e[25]!==$?(K=Z("size-7 shrink-0 rounded-md transition-colors flex items-center justify-center",$,r),e[24]=r,e[25]=$,e[26]=K):K=e[26];let q;e[27]!==s?(q=o.jsx(xd,{value:s}),e[27]=s,e[28]=q):q=e[28],e[29]!==n||e[30]!==K||e[31]!==q?(S=o.jsx(ls,{asChild:!0,children:o.jsx("button",{type:"button",disabled:n,className:K,children:q})}),e[29]=n,e[30]=K,e[31]=q,e[32]=S):S=e[32],_=cs,T="start",I="w-64 p-0",D=Sd,N="flex flex-col";let F;e[33]===Symbol.for("react.memo_cache_sentinel")?(F=o.jsx(Na,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[33]=F):F=e[33];let Y;e[34]===Symbol.for("react.memo_cache_sentinel")?(Y=G=>c(G.target.value),e[34]=Y):Y=e[34],e[35]!==h?(j=o.jsx("div",{className:"px-2 py-2",children:o.jsxs("div",{className:"relative",children:[F,o.jsx(qt,{value:h,onChange:Y,placeholder:"Filter...",className:"h-7 text-xs pl-7"})]})}),e[35]=h,e[36]=j):j=e[36],m=ka,k="h-48",v="grid grid-cols-8 gap-0.5 px-2 pb-2";let J;e[37]!==f||e[38]!==i?(J=G=>{const H=yi(G);return H?o.jsx("button",{type:"button",onClick:()=>{i(`icon://${G}`),l(!1)},className:Z("h-7 w-7 flex items-center justify-center rounded-md transition-colors cursor-pointer",f===G?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"),title:or(G),children:o.jsx(H,{size:16})},G):null},e[37]=f,e[38]=i,e[39]=J):J=e[39],y=g.map(J),e[2]=r,e[3]=f,e[4]=n,e[5]=i,e[6]=a,e[7]=h,e[8]=s,e[9]=m,e[10]=_,e[11]=p,e[12]=g,e[13]=x,e[14]=b,e[15]=S,e[16]=v,e[17]=y,e[18]=k,e[19]=N,e[20]=j,e[21]=T,e[22]=I,e[23]=D}else m=e[9],_=e[10],p=e[11],g=e[12],x=e[13],b=e[14],S=e[15],v=e[16],y=e[17],k=e[18],N=e[19],j=e[20],T=e[21],I=e[22],D=e[23];let M;e[40]!==v||e[41]!==y?(M=o.jsx("div",{className:v,children:y}),e[40]=v,e[41]=y,e[42]=M):M=e[42];let w;e[43]!==g.length?(w=g.length===0&&o.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:"No icons found"}),e[43]=g.length,e[44]=w):w=e[44];let R;e[45]!==m||e[46]!==M||e[47]!==w||e[48]!==k?(R=o.jsxs(m,{className:k,children:[M,w]}),e[45]=m,e[46]=M,e[47]=w,e[48]=k,e[49]=R):R=e[49];let E;e[50]!==R||e[51]!==N||e[52]!==j?(E=o.jsxs("div",{className:N,children:[j,R]}),e[50]=R,e[51]=N,e[52]=j,e[53]=E):E=e[53];let C;e[54]!==_||e[55]!==E||e[56]!==T||e[57]!==I||e[58]!==D?(C=o.jsx(_,{align:T,className:I,onOpenAutoFocus:D,children:E}),e[54]=_,e[55]=E,e[56]=T,e[57]=I,e[58]=D,e[59]=C):C=e[59];let P;return e[60]!==p||e[61]!==x||e[62]!==b||e[63]!==S||e[64]!==C?(P=o.jsxs(p,{open:x,onOpenChange:b,children:[S,C]}),e[60]=p,e[61]=x,e[62]=b,e[63]=S,e[64]=C,e[65]=P):P=e[65],P}function Sd(t){return t.preventDefault()}function oi(){const t=z.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx("div",{className:"flex items-center justify-center h-32",children:o.jsx($e,{className:"animate-spin text-muted-foreground",size:24})}),t[0]=e):e=t[0],e}function Fi(t){return({error:e})=>e?.message?.includes("Method not found")||e?.code===-32601?o.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:o.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:t})}):o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center h-full p-6 text-center space-y-4",children:[o.jsx("div",{className:"bg-destructive/10 p-3 rounded-full",children:o.jsx(nr,{className:"h-6 w-6 text-destructive"})}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("h3",{className:"text-lg font-medium",children:"Something went wrong"}),o.jsx("p",{className:"text-sm text-muted-foreground max-w-xs mx-auto",children:e?.message?e.message.length>200?`${e.message.slice(0,200)}...`:e.message:"An unexpected error occurred"})]})]})}function yd(t){const e=z.c(23),{item:s,isSelected:i,onToggle:r,disabled:n}=t,a=n?"cursor-not-allowed opacity-50":"cursor-pointer",l=i?"bg-accent/25":"hover:bg-muted/50";let h;e[0]!==a||e[1]!==l?(h=Z("flex items-start gap-3 p-4 rounded-lg transition-colors",a,l),e[0]=a,e[1]=l,e[2]=h):h=e[2];let c;e[3]!==s.name?(c=o.jsx("p",{className:"text-sm font-medium leading-none truncate",children:s.name}),e[3]=s.name,e[4]=c):c=e[4];let d;e[5]!==s.tags?(d=s.tags&&o.jsx("span",{className:"shrink-0",children:s.tags}),e[5]=s.tags,e[6]=d):d=e[6];let u;e[7]!==c||e[8]!==d?(u=o.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[c,d]}),e[7]=c,e[8]=d,e[9]=u):u=e[9];let f;e[10]!==s.description?(f=s.description&&o.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:s.description}),e[10]=s.description,e[11]=f):f=e[11];let m;e[12]!==u||e[13]!==f?(m=o.jsxs("div",{className:"flex-1 min-w-0 space-y-2",children:[u,f]}),e[12]=u,e[13]=f,e[14]=m):m=e[14];let _;e[15]!==n||e[16]!==i||e[17]!==r?(_=o.jsx(hh,{checked:i,onCheckedChange:r,disabled:n,className:"mt-0.5"}),e[15]=n,e[16]=i,e[17]=r,e[18]=_):_=e[18];let p;return e[19]!==h||e[20]!==m||e[21]!==_?(p=o.jsxs("label",{className:h,children:[m,_]}),e[19]=h,e[20]=m,e[21]=_,e[22]=p):p=e[22],p}function an(t){const e=z.c(13),{items:s,selections:i,onToggle:r,emptyMessage:n,disabled:a}=t;let l,h,c;if(e[0]!==a||e[1]!==n||e[2]!==s||e[3]!==r||e[4]!==i){c=Symbol.for("react.early_return_sentinel");e:{const u=s.map(wd);if(s.length===0){let f;e[8]!==n?(f=o.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:o.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:n})}),e[8]=n,e[9]=f):f=e[9],c=f;break e}l="flex-1 overflow-auto px-4 py-3 space-y-1",h=s.map(f=>o.jsx(yd,{item:f,isSelected:i===null||i?.includes(f.id),onToggle:()=>r(f.id,u),disabled:a},f.id))}e[0]=a,e[1]=n,e[2]=s,e[3]=r,e[4]=i,e[5]=l,e[6]=h,e[7]=c}else l=e[5],h=e[6],c=e[7];if(c!==Symbol.for("react.early_return_sentinel"))return c;let d;return e[10]!==l||e[11]!==h?(d=o.jsx("div",{className:l,children:h}),e[10]=l,e[11]=h,e[12]=d):d=e[12],d}function wd(t){return t.id}function Cd(t){const e=z.c(13),{connectionId:s,selections:i,onToggle:r,disabled:n}=t,{org:a}=ge();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=He(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=Rc(c);let u;e[6]!==d.tools?(u=d.tools.map(kd),e[6]=d.tools,e[7]=u):u=e[7];const f=u;let m;return e[8]!==n||e[9]!==f||e[10]!==r||e[11]!==i?(m=o.jsx(an,{items:f,selections:i,onToggle:r,emptyMessage:"No tools available",disabled:n}),e[8]=n,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function kd(t){return{id:t.name,name:t.name,description:t.description,tags:o.jsx(th,{annotations:t.annotations,_meta:t._meta})}}function Nd(t){const e=z.c(13),{connectionId:s,selections:i,onToggle:r,disabled:n}=t,{org:a}=ge();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=He(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=Zc(c);let u;e[6]!==d.resources?(u=d.resources.map(jd),e[6]=d.resources,e[7]=u):u=e[7];const f=u;let m;return e[8]!==n||e[9]!==f||e[10]!==r||e[11]!==i?(m=o.jsx(an,{items:f,selections:i,onToggle:r,emptyMessage:"No resources available",disabled:n}),e[8]=n,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function jd(t){return{id:t.name||t.uri,name:t.name||t.uri,description:t.description}}function Ed(t){const e=z.c(13),{connectionId:s,selections:i,onToggle:r,disabled:n}=t,{org:a}=ge();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=He(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=dh(c);let u;e[6]!==d.prompts?(u=d.prompts.map(Td),e[6]=d.prompts,e[7]=u):u=e[7];const f=u;let m;return e[8]!==n||e[9]!==f||e[10]!==r||e[11]!==i?(m=o.jsx(an,{items:f,selections:i,onToggle:r,emptyMessage:"No prompts available",disabled:n}),e[8]=n,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function Td(t){return{id:t.name,name:t.name,description:t.description}}function Rd(t){const e=z.c(54),{currentConnection:s,activeTab:i,selectedId:r,formData:n,toggleTool:a,toggleResource:l,togglePrompt:h,toggleAllTools:c,toggleAllResources:d,toggleAllPrompts:u,onTabChange:f}=t,m=n[r],_=i==="tools"?m?.tools===null:i==="resources"?m?.resources===null:m?.prompts===null;let p;e[0]!==i||e[1]!==r||e[2]!==u||e[3]!==d||e[4]!==c?(p=()=>{i==="tools"?c(r):i==="resources"?d(r):u(r)},e[0]=i,e[1]=r,e[2]=u,e[3]=d,e[4]=c,e[5]=p):p=e[5];const g=p;let x;e[6]!==s.icon||e[7]!==s.title?(x=o.jsx(Kt,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[6]=s.icon,e[7]=s.title,e[8]=x):x=e[8];let b;e[9]!==s.title?(b=o.jsx("h2",{className:"text-base font-semibold truncate",children:s.title}),e[9]=s.title,e[10]=b):b=e[10];let S;e[11]!==s.description?(S=s.description&&o.jsx("p",{className:"text-xs text-muted-foreground truncate",children:s.description}),e[11]=s.description,e[12]=S):S=e[12];let v;e[13]!==b||e[14]!==S?(v=o.jsxs("div",{className:"flex-1 min-w-0",children:[b,S]}),e[13]=b,e[14]=S,e[15]=v):v=e[15];let y;e[16]!==x||e[17]!==v?(y=o.jsx("div",{className:"px-6 pt-5 pb-4 shrink-0",children:o.jsxs("div",{className:"flex items-center gap-3",children:[x,v]})}),e[16]=x,e[17]=v,e[18]=y):y=e[18];let k;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=[{id:"tools",label:"Tools"},{id:"resources",label:"Resources"},{id:"prompts",label:"Prompts"}],e[19]=k):k=e[19];let N;e[20]!==f?(N=P=>f(P),e[20]=f,e[21]=N):N=e[21];let j;e[22]!==i||e[23]!==N?(j=o.jsx(ch,{tabs:k,activeTab:i,onTabChange:N}),e[22]=i,e[23]=N,e[24]=j):j=e[24];const T=_?"Deselect all":"Select all";let I;e[25]!==g||e[26]!==T?(I=o.jsx("button",{type:"button",onClick:g,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:T}),e[25]=g,e[26]=T,e[27]=I):I=e[27];let D;e[28]!==I||e[29]!==j?(D=o.jsxs("div",{className:"flex items-center justify-between px-6 py-3 border-t border-border shrink-0",children:[j,I]}),e[28]=I,e[29]=j,e[30]=D):D=e[30];let M;e[31]!==i||e[32]!==n||e[33]!==r||e[34]!==a?(M=i==="tools"&&o.jsx(Tt,{fallback:Fi("Tools not supported by this server"),children:o.jsx(B.Suspense,{fallback:o.jsx(oi,{}),children:o.jsx(Cd,{connectionId:r,selections:n[r]?n[r].tools:[],onToggle:(P,A)=>a(r,P,A)})})}),e[31]=i,e[32]=n,e[33]=r,e[34]=a,e[35]=M):M=e[35];let w;e[36]!==i||e[37]!==n||e[38]!==r||e[39]!==l?(w=i==="resources"&&o.jsx(Tt,{fallback:Fi("Resources not supported by this server"),children:o.jsx(B.Suspense,{fallback:o.jsx(oi,{}),children:o.jsx(Nd,{connectionId:r,selections:n[r]?n[r].resources:[],onToggle:(P,A)=>l(r,P,A)})})}),e[36]=i,e[37]=n,e[38]=r,e[39]=l,e[40]=w):w=e[40];let R;e[41]!==i||e[42]!==n||e[43]!==r||e[44]!==h?(R=i==="prompts"&&o.jsx(Tt,{fallback:Fi("Prompts not supported by this server"),children:o.jsx(B.Suspense,{fallback:o.jsx(oi,{}),children:o.jsx(Ed,{connectionId:r,selections:n[r]?n[r].prompts:[],onToggle:(P,A)=>h(r,P,A)})})}),e[41]=i,e[42]=n,e[43]=r,e[44]=h,e[45]=R):R=e[45];let E;e[46]!==M||e[47]!==w||e[48]!==R?(E=o.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[M,w,R]}),e[46]=M,e[47]=w,e[48]=R,e[49]=E):E=e[49];let C;return e[50]!==D||e[51]!==E||e[52]!==y?(C=o.jsxs(o.Fragment,{children:[y,D,E]}),e[50]=D,e[51]=E,e[52]=y,e[53]=C):C=e[53],C}function Dd(t){const e=z.c(11),{connectionId:s,onAuthenticate:i,children:r}=t;let n;e[0]!==s?(n={connectionId:s},e[0]=s,e[1]=n):n=e[1];const a=da(n);if(a.supportsOAuth&&!a.isAuthenticated){let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex items-center justify-center size-12 rounded-full bg-muted",children:o.jsx(kc,{size:22,className:"text-muted-foreground"})}),e[2]=c):c=e[2];let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsxs("div",{className:"space-y-1",children:[o.jsx("p",{className:"text-sm font-medium",children:"Authorization required"}),o.jsx("p",{className:"text-xs text-muted-foreground max-w-xs",children:"This connection needs to be authorized before you can configure its tools and resources."})]}),e[3]=d):d=e[3];let u;e[4]!==s||e[5]!==i?(u=i&&o.jsx(se,{variant:"outline",size:"sm",onClick:()=>i(s),children:"Authorize"}),e[4]=s,e[5]=i,e[6]=u):u=e[6];let f;return e[7]!==u?(f=o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-4 p-8 text-center",children:[c,d,u]}),e[7]=u,e[8]=f):f=e[8],f}let h;return e[9]!==r?(h=o.jsx(o.Fragment,{children:r}),e[9]=r,e[10]=h):h=e[10],h}function Md(t){const e={};for(const s of t)e[s.connection_id]={tools:s.selected_tools,resources:s.selected_resources??null,prompts:s.selected_prompts??null};return e}function Bn(t){return Object.entries(t).map(([e,s])=>({connection_id:e,selected_tools:s.tools,selected_resources:s.resources,selected_prompts:s.prompts}))}function Ad(t,e){return e.type==="SET_ACTIVE_TAB"?{...t,activeTab:e.payload}:t}function Id(t){const e=z.c(49),{open:s,onOpenChange:i,selectedId:r,form:n,connections:a,onAuthenticate:l}=t;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h={activeTab:"tools"},e[0]=h):h=e[0];const[c,d]=B.useReducer(Ad,h),u=rn(r??"");let f;e[1]!==a?(f=a??[],e[1]=a,e[2]=f):f=e[2];let m;e[3]!==f?(m=Md(f),e[3]=f,e[4]=m):m=e[4];const _=m;let p;e[5]!==n||e[6]!==_?(p=(F,Y,J,G)=>{const H=_[F]?.[Y];let Q;H===null?Q=G.filter(L=>L!==J):H?.includes(J)?Q=H.filter(L=>L!==J):(Q=[...H??[],J],Q.length===G.length&&(Q=null));const ie={..._};ie[F]?ie[F]={...ie[F]}:ie[F]={tools:null,resources:null,prompts:null},ie[F][Y]=Q,n.setValue("connections",Bn(ie),{shouldDirty:!0,shouldTouch:!0})},e[5]=n,e[6]=_,e[7]=p):p=e[7];const g=p;let x;e[8]!==n||e[9]!==_?(x=(F,Y)=>{const G=_[F]?.[Y]===null?[]:null,H={..._};H[F]?H[F]={...H[F]}:H[F]={tools:null,resources:null,prompts:null},H[F][Y]=G,n.setValue("connections",Bn(H),{shouldDirty:!0,shouldTouch:!0})},e[8]=n,e[9]=_,e[10]=x):x=e[10];const b=x;let S;e[11]!==g?(S=(F,Y,J)=>g(F,"tools",Y,J),e[11]=g,e[12]=S):S=e[12];const v=S;let y;e[13]!==g?(y=(F,Y,J)=>g(F,"resources",Y,J),e[13]=g,e[14]=y):y=e[14];const k=y;let N;e[15]!==g?(N=(F,Y,J)=>g(F,"prompts",Y,J),e[15]=g,e[16]=N):N=e[16];const j=N;let T;e[17]!==b?(T=F=>b(F,"tools"),e[17]=b,e[18]=T):T=e[18];const I=T;let D;e[19]!==b?(D=F=>b(F,"resources"),e[19]=b,e[20]=D):D=e[20];const M=D;let w;e[21]!==b?(w=F=>b(F,"prompts"),e[21]=b,e[22]=w):w=e[22];const R=w;if(!r||!u)return null;let E;e[23]===Symbol.for("react.memo_cache_sentinel")?(E=o.jsx(oi,{}),e[23]=E):E=e[23];let C;e[24]===Symbol.for("react.memo_cache_sentinel")?(C=F=>d({type:"SET_ACTIVE_TAB",payload:F}),e[24]=C):C=e[24];let P;e[25]!==u||e[26]!==c.activeTab||e[27]!==_||e[28]!==r||e[29]!==R||e[30]!==M||e[31]!==I||e[32]!==j||e[33]!==k||e[34]!==v?(P=o.jsx(Rd,{currentConnection:u,activeTab:c.activeTab,selectedId:r,formData:_,toggleTool:v,toggleResource:k,togglePrompt:j,toggleAllTools:I,toggleAllResources:M,toggleAllPrompts:R,onTabChange:C},r),e[25]=u,e[26]=c.activeTab,e[27]=_,e[28]=r,e[29]=R,e[30]=M,e[31]=I,e[32]=j,e[33]=k,e[34]=v,e[35]=P):P=e[35];let A;e[36]!==l||e[37]!==r||e[38]!==P?(A=o.jsx(B.Suspense,{fallback:E,children:o.jsx(Dd,{connectionId:r,onAuthenticate:l,children:P})}),e[36]=l,e[37]=r,e[38]=P,e[39]=A):A=e[39];let $;e[40]!==i?($=o.jsx(rh,{className:"px-6 py-4 border-t border-border shrink-0",children:o.jsx(se,{variant:"outline",onClick:()=>i(!1),children:"Done"})}),e[40]=i,e[41]=$):$=e[41];let K;e[42]!==A||e[43]!==$?(K=o.jsxs(nn,{className:"sm:max-w-2xl h-[75vh] max-h-[75vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[A,$]}),e[42]=A,e[43]=$,e[44]=K):K=e[44];let q;return e[45]!==i||e[46]!==s||e[47]!==K?(q=o.jsx(on,{open:s,onOpenChange:i,children:K}),e[45]=i,e[46]=s,e[47]=K,e[48]=q):q=e[48],q}const Hi={tools:null,resources:null,prompts:null},Pd=Ll.pick({status:!0,title:!0,description:!0,icon:!0,metadata:!0,connections:!0});function Bd(t){const s=new TextEncoder().encode(t),i=Array.from(s,r=>String.fromCharCode(r)).join("");return btoa(i)}function Ld(t){const e=z.c(11),{url:s,agentId:i}=t,[r,n]=B.useState(!1);let a;e[0]!==i||e[1]!==s?(a=async()=>{be("agent_connect_action",{agent_id:i,action:"copy_url"}),await navigator.clipboard.writeText(s),n(!0),fe.success("Agent URL copied to clipboard"),setTimeout(()=>n(!1),2e3)},e[0]=i,e[1]=s,e[2]=a):a=e[2];const l=a;let h;e[3]!==r?(h=r?o.jsx(Ci,{size:20,className:"text-green-600"}):o.jsx(Zr,{size:20}),e[3]=r,e[4]=h):h=e[4];const c=r?"Copied!":"Copy URL";let d;e[5]!==c?(d=o.jsx("span",{className:"text-xs font-medium",children:c}),e[5]=c,e[6]=d):d=e[6];let u;return e[7]!==l||e[8]!==h||e[9]!==d?(u=o.jsxs(se,{type:"button",variant:"outline",onClick:l,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[h,d]}),e[7]=l,e[8]=h,e[9]=d,e[10]=u):u=e[10],u}function Od(t){const e=z.c(8),{url:s,serverName:i,agentId:r}=t;let n;e[0]!==r||e[1]!==i||e[2]!==s?(n=()=>{be("agent_connect_action",{agent_id:r,action:"install_cursor"});const d=ua(i),f=Bd(JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Cursor"}},null,2)),m=`cursor://anysphere.cursor-deeplink/mcp/install?name=${encodeURIComponent(d)}&config=${encodeURIComponent(f)}`;window.open(m,"_blank"),fe.success("Opening Cursor...")},e[0]=r,e[1]=i,e[2]=s,e[3]=n):n=e[3];const a=n;let l,h;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=o.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(11%) sepia(8%) saturate(785%) hue-rotate(1deg) brightness(95%) contrast(89%)"}}),h=o.jsx("span",{className:"text-xs font-medium",children:"Install on Cursor"}),e[4]=l,e[5]=h):(l=e[4],h=e[5]);let c;return e[6]!==a?(c=o.jsxs(se,{type:"button",variant:"outline",onClick:a,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[l,h]}),e[6]=a,e[7]=c):c=e[7],c}function zd(t){const e=z.c(12),{url:s,serverName:i,agentId:r}=t,[n,a]=B.useState(!1);let l;e[0]!==r||e[1]!==i||e[2]!==s?(l=async()=>{be("agent_connect_action",{agent_id:r,action:"install_claude_code"});const m=ua(i),p=JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Claude Code"}},null,2),g=`claude mcp add-json "${m}" '${p.replace(/'/g,"'\\''")}' --scope user`;await navigator.clipboard.writeText(g),a(!0),fe.success("Claude Code command copied to clipboard"),setTimeout(()=>a(!1),2e3)},e[0]=r,e[1]=i,e[2]=s,e[3]=l):l=e[3];const h=l;let c;e[4]!==n?(c=n?o.jsx(Ci,{size:20,className:"text-green-600"}):o.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude Code",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(55%) sepia(31%) saturate(1264%) hue-rotate(331deg) brightness(92%) contrast(86%)"}}),e[4]=n,e[5]=c):c=e[5];const d=n?"Copied!":"Install on Claude Code";let u;e[6]!==d?(u=o.jsx("span",{className:"text-xs font-medium",children:d}),e[6]=d,e[7]=u):u=e[7];let f;return e[8]!==h||e[9]!==c||e[10]!==u?(f=o.jsxs(se,{type:"button",variant:"outline",onClick:h,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[c,u]}),e[8]=h,e[9]=c,e[10]=u,e[11]=f):f=e[11],f}function $d({virtualMcp:t}){const{org:e}=ge(),s=He({connectionId:Vt,orgId:e.id,orgSlug:e.slug}),[i,r]=B.useState(null),[n,a]=B.useState(!1),[l,h]=B.useState(!1),c=t.id,d=t.title||`agent-${c.slice(0,8)}`,u=i?`bunx @decocms/typegen@latest --mcp ${c} --key ${i} --output client.ts`:`bunx @decocms/typegen@latest --mcp ${c} --key <api-key> --output client.ts`,f=async()=>{a(!0);try{const p=(await s.callTool({name:"API_KEY_CREATE",arguments:{name:`typegen-${d}`,permissions:{[c]:["*"]}}})).structuredContent?.key;if(!p)throw new Error("No key in response");r(p),be("agent_typegen_key_generated",{agent_id:c})}catch{be("agent_typegen_key_failed",{agent_id:c}),fe.error("Failed to generate API key")}finally{a(!1)}},m=async()=>{be("agent_connect_action",{agent_id:c,action:"typegen_copy_command",has_api_key:!!i}),await navigator.clipboard.writeText(u),h(!0),fe.success("Command copied to clipboard"),setTimeout(()=>h(!1),2e3)};return o.jsxs("div",{className:"flex min-w-0 flex-col gap-3",children:[o.jsxs("div",{className:"flex items-start justify-between gap-3",children:[o.jsxs("div",{className:"flex flex-col gap-0.5",children:[o.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Generate typed client"}),o.jsxs("p",{className:"text-xs text-muted-foreground",children:["Introspects this agent and writes a typed"," ",o.jsx("code",{className:"font-mono",children:"client.ts"})," you can import directly."]})]}),!i&&o.jsxs(se,{type:"button",variant:"outline",size:"sm",className:"shrink-0 gap-1.5",onClick:f,disabled:n,children:[n?o.jsx($e,{size:14,className:"animate-spin"}):o.jsx(ah,{size:14}),o.jsx("span",{children:n?"Generating…":"Generate API key"})]})]}),i&&o.jsx("p",{className:"rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-700",children:"Store this key securely — it won't be shown again."}),o.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Generate client"}),o.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx("code",{className:"min-w-0 flex-1 break-all font-mono text-xs text-muted-foreground",children:u}),o.jsx(se,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:m,children:l?o.jsx(Ci,{size:12,className:"text-green-600"}):o.jsx(Zr,{size:12})})]})}),o.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Runtime variables"}),o.jsx(Fd,{apiKey:i,agentId:c})]})}function Fd(t){const e=z.c(21),{apiKey:s,agentId:i}=t,[r,n]=B.useState(!1),a=window.location.origin,l=s?`MESH_API_KEY=${s}`:"MESH_API_KEY=<api-key>",h=`MESH_BASE_URL=${a}`,c=`${l}
4
- ${h}`;let d;e[0]!==i||e[1]!==s||e[2]!==c?(d=async()=>{be("agent_connect_action",{agent_id:i,action:"typegen_copy_env",has_api_key:!!s}),await navigator.clipboard.writeText(c),n(!0),setTimeout(()=>n(!1),2e3)},e[0]=i,e[1]=s,e[2]=c,e[3]=d):d=e[3];const u=d,f=!s;let m;e[4]!==f?(m=Z({"opacity-50":f}),e[4]=f,e[5]=m):m=e[5];let _;e[6]!==l||e[7]!==m?(_=o.jsx("span",{className:m,children:l}),e[6]=l,e[7]=m,e[8]=_):_=e[8];let p,g;e[9]===Symbol.for("react.memo_cache_sentinel")?(p=o.jsx("br",{}),g=o.jsx("span",{children:h}),e[9]=p,e[10]=g):(p=e[9],g=e[10]);let x;e[11]!==_?(x=o.jsxs("code",{className:"min-w-0 flex-1 font-mono text-xs text-muted-foreground",children:[_,p,g]}),e[11]=_,e[12]=x):x=e[12];let b;e[13]!==r?(b=r?o.jsx(Ci,{size:12,className:"text-green-600"}):o.jsx(Zr,{size:12}),e[13]=r,e[14]=b):b=e[14];let S;e[15]!==u||e[16]!==b?(S=o.jsx(se,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:u,children:b}),e[15]=u,e[16]=b,e[17]=S):S=e[17];let v;return e[18]!==x||e[19]!==S?(v=o.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:o.jsxs("div",{className:"flex items-start gap-2",children:[x,S]})}),e[18]=x,e[19]=S,e[20]=v):v=e[20],v}function Hd(t){const e=z.c(3),{virtualMcp:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx("div",{className:"h-20 animate-pulse rounded-md bg-muted"}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=o.jsx(B.Suspense,{fallback:i,children:o.jsx($d,{virtualMcp:s})}),e[1]=s,e[2]=r):r=e[2],r}function Wd(t){const e=z.c(37),{open:s,onOpenChange:i,virtualMcp:r}=t,{org:n}=ge(),a=`/api/${n.slug}/mcp/virtual-mcp/${r.id}`;let l;e[0]!==a?(l=new URL(a,window.location.origin),e[0]=a,e[1]=l):l=e[1];const h=l;let c;e[2]!==r.id||e[3]!==r.title?(c=r.title||`agent-${r.id?.slice(0,8)??"default"}`,e[2]=r.id,e[3]=r.title,e[4]=c):c=e[4];const d=c,u=aa();let f;e[5]!==r.id||e[6]!==h.href?(f=o.jsx(Ld,{url:h.href,agentId:r.id}),e[5]=r.id,e[6]=h.href,e[7]=f):f=e[7];let m,_;e[8]!==d||e[9]!==r.id||e[10]!==h.href?(m=o.jsx(Od,{url:h.href,serverName:d,agentId:r.id}),_=o.jsx(zd,{url:h.href,serverName:d,agentId:r.id}),e[8]=d,e[9]=r.id,e[10]=h.href,e[11]=m,e[12]=_):(m=e[11],_=e[12]);let p;e[13]!==f||e[14]!==m||e[15]!==_?(p=o.jsx("div",{className:"flex flex-col gap-3 pt-2",children:o.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[f,m,_]})}),e[13]=f,e[14]=m,e[15]=_,e[16]=p):p=e[16];let g;e[17]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"border-t border-border"}),e[17]=g):g=e[17];let x;e[18]!==r?(x=o.jsx(Hd,{virtualMcp:r}),e[18]=r,e[19]=x):x=e[19];let b;e[20]!==p||e[21]!==x?(b=o.jsxs("div",{className:"flex flex-col gap-6",children:[p,g,x]}),e[20]=p,e[21]=x,e[22]=b):b=e[22];const S=b;if(u){let N;e[23]===Symbol.for("react.memo_cache_sentinel")?(N=o.jsx(mh,{className:"mt-4 mb-4 text-base font-semibold",children:"Connect"}),e[23]=N):N=e[23];let j;e[24]!==S?(j=o.jsx(_h,{children:o.jsxs("div",{className:"flex-1 overflow-y-auto px-4 pb-6 [touch-action:pan-y]",children:[N,S]})}),e[24]=S,e[25]=j):j=e[25];let T;return e[26]!==i||e[27]!==s||e[28]!==j?(T=o.jsx(ph,{open:s,onOpenChange:i,children:j}),e[26]=i,e[27]=s,e[28]=j,e[29]=T):T=e[29],T}let v;e[30]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx(Sa,{children:o.jsx(ya,{children:"Connect"})}),e[30]=v):v=e[30];let y;e[31]!==S?(y=o.jsxs(nn,{className:"max-h-[80vh] overflow-y-auto sm:max-w-2xl",children:[v,S]}),e[31]=S,e[32]=y):y=e[32];let k;return e[33]!==i||e[34]!==s||e[35]!==y?(k=o.jsx(on,{open:s,onOpenChange:i,children:y}),e[33]=i,e[34]=s,e[35]=y,e[36]=k):k=e[36],k}function Ud(t){const e=z.c(12),{repo:s,className:i}=t;let r;e[0]!==i?(r=Z("space-y-2",i),e[0]=i,e[1]=r):r=e[1];let n;e[2]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx(Bt,{children:"Repository"}),e[2]=n):n=e[2];let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(eh,{size:20,className:"shrink-0 text-foreground/60"}),e[3]=a):a=e[3];let l;e[4]!==s?(l=o.jsx(Te,{asChild:!0,children:o.jsxs("div",{className:"flex items-center gap-3 rounded-lg border border-border bg-background px-4 py-3",tabIndex:0,children:[a,o.jsx("div",{className:"min-w-0 flex-1",children:s?o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"truncate text-sm font-medium",children:[s.owner,"/",s.name]}),o.jsx("div",{className:"truncate text-xs text-muted-foreground",children:s.url})]}):o.jsx("div",{className:"text-sm text-muted-foreground",children:"No repository connected"})})]})}),e[4]=s,e[5]=l):l=e[5];let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Re,{children:"The connected GitHub repository for this agent. Manage in Connections."}),e[6]=h):h=e[6];let c;e[7]!==l?(c=o.jsxs(De,{children:[l,h]}),e[7]=l,e[8]=c):c=e[8];let d;return e[9]!==r||e[10]!==c?(d=o.jsxs("div",{className:r,children:[n,c]}),e[9]=r,e[10]=c,e[11]=d):d=e[11],d}const Kd={npm:{install:"npm install",run:t=>`npm run ${t}`,runtime:"node"},pnpm:{install:"pnpm install",run:t=>`pnpm run ${t}`,runtime:"node"},yarn:{install:"yarn install",run:t=>`yarn run ${t}`,runtime:"node"},bun:{install:"bun install",run:t=>`bun run ${t}`,runtime:"bun"},deno:{install:"deno install",run:t=>`deno task ${t}`,runtime:"deno"}};function Vd(t){const e=t.trim();if(e==="")return{ok:!0,value:null};if(!/^\d+$/.test(e))return{ok:!1};const s=Number(e);return s<1||s>65535?{ok:!1}:{ok:!0,value:String(s)}}const qd=Object.keys(Kd),Wi="__none__";function Gd(t){const e=z.c(20),{control:s}=t,i=B.useRef(null);let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx(Bt,{htmlFor:"runtime-pm",children:"Package manager"}),e[0]=r):r=e[0];let n;e[1]!==s?(n=o.jsxs("div",{className:"space-y-2",children:[r,o.jsx(ht,{control:s,name:"metadata.runtime.selected",render:Xd})]}),e[1]=s,e[2]=n):n=e[2];let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(Bt,{htmlFor:"runtime-path",children:"Package path"}),e[3]=a):a=e[3];let l;e[4]!==s?(l=o.jsx(ht,{control:s,name:"metadata.runtime.path",render:Yd}),e[4]=s,e[5]=l):l=e[5];let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx("p",{className:"text-xs text-muted-foreground",children:"Path (relative to repo root) to the directory containing package.json. Leave blank for the repo root."}),e[6]=h):h=e[6];let c;e[7]!==l?(c=o.jsxs("div",{className:"space-y-2",children:[a,l,h]}),e[7]=l,e[8]=c):c=e[8];let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(Bt,{htmlFor:"runtime-port",children:"Dev server port"}),e[9]=d):d=e[9];let u;e[10]===Symbol.for("react.memo_cache_sentinel")?(u=g=>{const{field:x}=g;return o.jsx(qt,{ref:i,id:"runtime-port",inputMode:"numeric",placeholder:"Auto",defaultValue:x.value??"",onBlur:b=>{const S=Vd(b.target.value);S.ok?x.onChange(S.value):i.current&&(i.current.value=x.value??"")}})},e[10]=u):u=e[10];let f;e[11]!==s?(f=o.jsx(ht,{control:s,name:"metadata.runtime.port",render:u}),e[11]=s,e[12]=f):f=e[12];let m;e[13]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx("p",{className:"text-xs text-muted-foreground",children:"Leave blank to let the runner pick."}),e[13]=m):m=e[13];let _;e[14]!==f?(_=o.jsxs("div",{className:"space-y-2",children:[d,f,m]}),e[14]=f,e[15]=_):_=e[15];let p;return e[16]!==_||e[17]!==n||e[18]!==c?(p=o.jsxs("div",{className:"space-y-5",children:[n,c,_]}),e[16]=_,e[17]=n,e[18]=c,e[19]=p):p=e[19],p}function Yd(t){const{field:e}=t;return o.jsx(qt,{id:"runtime-path",placeholder:".",defaultValue:e.value??"",onBlur:s=>{const i=s.target.value.trim();e.onChange(i===""?null:i)}})}function Xd(t){const{field:e}=t;return o.jsxs(es,{value:e.value??Wi,onValueChange:s=>e.onChange(s===Wi?null:s),children:[o.jsx(ts,{id:"runtime-pm",children:o.jsx(ss,{placeholder:"Auto-detect"})}),o.jsxs(is,{children:[o.jsx(Dt,{value:Wi,children:"Auto-detect"}),qd.map(Jd)]})]})}function Jd(t){return o.jsx(Dt,{value:t,children:t},t)}function Zd(t,e){switch(e.type){case"SET_SHARE_DIALOG_OPEN":return{...t,shareDialogOpen:e.payload};case"SET_ADD_DIALOG_OPEN":return{...t,addDialogOpen:e.payload};case"OPEN_SETTINGS":return{...t,settingsDialogOpen:!0,settingsConnectionId:e.payload};case"CLOSE_SETTINGS":return{...t,settingsDialogOpen:!1,settingsConnectionId:null};default:return t}}function Qd(t,e){switch(e.type){case"accumulate":{const s=t??{start:e.now,fields:new Set,saveCount:0,instructionsLength:null},i=new Set(s.fields);for(const r of e.fields)i.add(r);return{...s,fields:i,saveCount:s.saveCount+1,instructionsLength:e.instructionsLength??s.instructionsLength}}case"reset":return null}}function eu(t){const e=z.c(22),{connection_id:s,usedConnectionIds:i,onOpenSettings:r,onRemove:n,onAuthenticate:a,onSwitchInstance:l,onNewInstance:h}=t,c=rn(s),{org:d}=ge();if(!c)return null;let u;e[0]!==c?(u=ih(c),e[0]=c,e[1]=u):u=e[1];const f=u;let m;e[2]!==s?(m=o.jsx(ru,{connection_id:s}),e[2]=s,e[3]=m):m=e[3];let _;e[4]!==c.app_name||e[5]!==c.connection_type||e[6]!==c.description||e[7]!==c.icon||e[8]!==c.title||e[9]!==s||e[10]!==a||e[11]!==h||e[12]!==r||e[13]!==n||e[14]!==l||e[15]!==d.slug||e[16]!==f||e[17]!==i?(_=o.jsx(iu,{connection_id:s,connectionTitle:c.title,connectionDescription:c.description,connectionIcon:c.icon,connectionType:c.connection_type,slug:f,orgSlug:d.slug,appName:c.app_name,usedConnectionIds:i,onOpenSettings:r,onRemove:n,onAuthenticate:a,onSwitchInstance:l,onNewInstance:h}),e[4]=c.app_name,e[5]=c.connection_type,e[6]=c.description,e[7]=c.icon,e[8]=c.title,e[9]=s,e[10]=a,e[11]=h,e[12]=r,e[13]=n,e[14]=l,e[15]=d.slug,e[16]=f,e[17]=i,e[18]=_):_=e[18];let p;return e[19]!==m||e[20]!==_?(p=o.jsx(B.Suspense,{fallback:m,children:_}),e[19]=m,e[20]=_,e[21]=p):p=e[21],p}const Ln="__new_instance__";async function tu(t,e){const s=t?.idToken??null;if(s){const r=On(s);if(r)return r}const i=t?.userinfoEndpoint??null;if(i)try{const r=await fetch(i,{headers:{Authorization:`Bearer ${e}`}});if(r.ok){const n=await r.json(),a=typeof n.email=="string"?n.email:typeof n.upn=="string"?n.upn:typeof n.preferred_username=="string"?n.preferred_username:null;if(a)return a}}catch{}return On(e)}function On(t){try{const e=t.split(".");if(e.length===3&&e[1]){const s=JSON.parse(atob(e[1].replace(/-/g,"+").replace(/_/g,"/")));if(typeof s.email=="string")return s.email;if(typeof s.upn=="string")return s.upn;if(typeof s.preferred_username=="string")return s.preferred_username}}catch{}return null}function su(t){const e=z.c(23),{appName:s,connectionId:i,usedConnectionIds:r,onSwitchInstance:n,onNewInstance:a}=t;let l;e[0]!==s?(l={filters:[{column:"app_name",value:s}]},e[0]=s,e[1]=l):l=e[1];const h=wi(l);if(h.length<=1)return null;let c;e[2]!==i||e[3]!==a||e[4]!==n?(c=p=>{p===Ln?a?.():n(i,p)},e[2]=i,e[3]=a,e[4]=n,e[5]=c):c=e[5];let d;e[6]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(ts,{size:"sm",className:"w-auto text-xs gap-1 px-2 shadow-none",children:o.jsx(ss,{})}),e[6]=d):d=e[6];let u;if(e[7]!==i||e[8]!==h||e[9]!==r){let p;e[11]!==i||e[12]!==r?(p=g=>o.jsx(Dt,{value:g.id,className:"text-xs",disabled:g.id!==i&&r.has(g.id),children:g.title},g.id),e[11]=i,e[12]=r,e[13]=p):p=e[13],u=h.map(p),e[7]=i,e[8]=h,e[9]=r,e[10]=u}else u=e[10];let f;e[14]!==a?(f=a&&o.jsx(Dt,{value:Ln,className:"text-xs text-muted-foreground",children:"+ New instance"}),e[14]=a,e[15]=f):f=e[15];let m;e[16]!==u||e[17]!==f?(m=o.jsxs(is,{children:[u,f]}),e[16]=u,e[17]=f,e[18]=m):m=e[18];let _;return e[19]!==i||e[20]!==c||e[21]!==m?(_=o.jsxs(es,{value:i,onValueChange:c,children:[d,m]}),e[19]=i,e[20]=c,e[21]=m,e[22]=_):_=e[22],_}function iu(t){const e=z.c(55),{connection_id:s,connectionTitle:i,connectionDescription:r,connectionIcon:n,connectionType:a,slug:l,orgSlug:h,appName:c,usedConnectionIds:d,onOpenSettings:u,onRemove:f,onAuthenticate:m,onSwitchInstance:_,onNewInstance:p}=t;let g;e[0]!==s?(g={connectionId:s},e[0]=s,e[1]=g):g=e[1];const x=da(g),S=!(a==="VIRTUAL")&&x.supportsOAuth&&!x.isAuthenticated,v=S?"border-destructive/50 bg-destructive/5":"border-border";let y;e[2]!==v?(y=Z("rounded-xl border overflow-hidden transition-colors",v),e[2]=v,e[3]=y):y=e[3];let k;e[4]!==h||e[5]!==l?(k={org:h,appSlug:l},e[4]=h,e[5]=l,e[6]=k):k=e[6];let N;e[7]!==n||e[8]!==i?(N=o.jsx(Kt,{icon:n,name:i,size:"sm",className:"shrink-0"}),e[7]=n,e[8]=i,e[9]=N):N=e[9];let j;e[10]!==i?(j=o.jsx("p",{className:"text-sm font-medium truncate",children:i}),e[10]=i,e[11]=j):j=e[11];let T;e[12]!==r||e[13]!==S?(T=S?o.jsx("span",{className:"text-xs text-destructive font-medium",children:"Needs authorization"}):r&&o.jsx("p",{className:"text-xs text-muted-foreground truncate",children:r}),e[12]=r,e[13]=S,e[14]=T):T=e[14];let I;e[15]!==j||e[16]!==T?(I=o.jsxs("div",{className:"flex-1 min-w-0",children:[j,T]}),e[15]=j,e[16]=T,e[17]=I):I=e[17];let D;e[18]!==s||e[19]!==S||e[20]!==m?(D=S?o.jsx(se,{variant:"outline",size:"sm",className:"h-7 text-xs shrink-0",onClick:G=>{G.preventDefault(),G.stopPropagation(),m(s)},children:"Authorize"}):o.jsxs(De,{delayDuration:0,children:[o.jsx(Te,{asChild:!0,children:o.jsx("span",{className:"inline-flex items-center justify-center rounded-md h-7 w-7 hover:bg-accent text-muted-foreground shrink-0 transition-colors",children:o.jsx(nh,{size:16})})}),o.jsx(Re,{side:"bottom",children:"Connection settings"})]}),e[18]=s,e[19]=S,e[20]=m,e[21]=D):D=e[21];let M;e[22]!==k||e[23]!==N||e[24]!==I||e[25]!==D?(M=o.jsxs($l,{to:"/$org/settings/connections/$appSlug",params:k,className:"flex items-center gap-3 px-4 py-3 cursor-pointer hover:bg-muted/50 transition-colors",children:[N,I,D]}),e[22]=k,e[23]=N,e[24]=I,e[25]=D,e[26]=M):M=e[26];let w;e[27]!==c||e[28]!==s||e[29]!==p||e[30]!==_||e[31]!==d?(w=c&&o.jsx(su,{appName:c,connectionId:s,usedConnectionIds:d,onSwitchInstance:_,onNewInstance:p}),e[27]=c,e[28]=s,e[29]=p,e[30]=_,e[31]=d,e[32]=w):w=e[32];let R;e[33]===Symbol.for("react.memo_cache_sentinel")?(R=o.jsx(jc,{size:13}),e[33]=R):R=e[33];let E;e[34]!==u?(E=o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:u,"aria-label":"Configure resources",children:R})}),e[34]=u,e[35]=E):E=e[35];let C;e[36]===Symbol.for("react.memo_cache_sentinel")?(C=o.jsx(Re,{side:"bottom",children:"Configure resources"}),e[36]=C):C=e[36];let P;e[37]!==E?(P=o.jsxs(De,{delayDuration:0,children:[E,C]}),e[37]=E,e[38]=P):P=e[38];let A;e[39]===Symbol.for("react.memo_cache_sentinel")?(A=o.jsx(rs,{size:13}),e[39]=A):A=e[39];let $;e[40]!==f?($=o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-destructive",onClick:f,"aria-label":"Remove connection",children:A})}),e[40]=f,e[41]=$):$=e[41];let K;e[42]===Symbol.for("react.memo_cache_sentinel")?(K=o.jsx(Re,{side:"bottom",children:"Remove"}),e[42]=K):K=e[42];let q;e[43]!==$?(q=o.jsxs(De,{delayDuration:0,children:[$,K]}),e[43]=$,e[44]=q):q=e[44];let F;e[45]!==P||e[46]!==q?(F=o.jsxs("div",{className:"flex items-center gap-0.5 ml-auto",children:[P,q]}),e[45]=P,e[46]=q,e[47]=F):F=e[47];let Y;e[48]!==w||e[49]!==F?(Y=o.jsxs("div",{className:"flex items-center gap-3 px-4 py-2 border-t border-border bg-muted/25",children:[w,F]}),e[48]=w,e[49]=F,e[50]=Y):Y=e[50];let J;return e[51]!==M||e[52]!==Y||e[53]!==y?(J=o.jsxs("div",{className:y,children:[M,Y]}),e[51]=M,e[52]=Y,e[53]=y,e[54]=J):J=e[54],J}function ru(t){const e=z.c(17),{connection_id:s}=t,i=rn(s);if(!i){let u;return e[0]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(Ia,{}),e[0]=u):u=e[0],u}let r;e[1]!==i.icon||e[2]!==i.title?(r=o.jsx(Kt,{icon:i.icon,name:i.title,size:"sm",className:"shrink-0"}),e[1]=i.icon,e[2]=i.title,e[3]=r):r=e[3];let n;e[4]!==i.title?(n=o.jsx("p",{className:"text-sm font-medium truncate",children:i.title}),e[4]=i.title,e[5]=n):n=e[5];let a;e[6]!==i.description?(a=i.description&&o.jsx("p",{className:"text-xs text-muted-foreground truncate",children:i.description}),e[6]=i.description,e[7]=a):a=e[7];let l;e[8]!==n||e[9]!==a?(l=o.jsxs("div",{className:"flex-1 min-w-0",children:[n,a]}),e[8]=n,e[9]=a,e[10]=l):l=e[10];let h;e[11]!==r||e[12]!==l?(h=o.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[r,l]}),e[11]=r,e[12]=l,e[13]=h):h=e[13];let c;e[14]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:o.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})}),e[14]=c):c=e[14];let d;return e[15]!==h?(d=o.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[h,c]}),e[15]=h,e[16]=d):d=e[16],d}function Ia(){const t=z.c(3);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx("div",{className:"size-8 rounded-md bg-muted animate-pulse shrink-0"}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[e,o.jsxs("div",{className:"flex-1 space-y-1.5",children:[o.jsx("div",{className:"h-4 w-32 rounded bg-muted animate-pulse"}),o.jsx("div",{className:"h-3 w-48 rounded bg-muted animate-pulse"})]})]}),t[1]=s):s=t[1];let i;return t[2]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[s,o.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:o.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})})]}),t[2]=i):i=t[2],i}function nu({virtualMcpId:t,form:e,flushAndSave:s}){const{org:i}=ge(),r=He({connectionId:Vt,orgId:i.id,orgSlug:i.slug}),n=vt(t),a=(n?.connections??[]).map(w=>w.connection_id).sort(),{data:l}=Ho({queryKey:Is.projectConnectionDetails(t,a),enabled:a.length>0,queryFn:async()=>await Promise.all(a.map(async R=>{try{const E=await r.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:R}}),{item:C}=sh(E),P=(C?.tools??[]).filter(A=>!!Qc(A._meta)).map(A=>({name:A.name,description:A.description}));return{fetchOk:!0,id:R,title:C?.title??R,icon:C?.icon??null,uiTools:P}}catch{return{fetchOk:!1,id:R,title:R,icon:null,uiTools:[]}}}))}),h=(l??[]).filter(w=>w.uiTools.length>0),c=new Set(hc),d=e.watch("metadata.ui.pinnedViews")??[],u=e.watch("metadata.ui.layout")??null,f=u?.defaultMainView??null,m=u?.chatDefaultOpen??!1,_=!f||f.type==="chat"?"chat":f.type==="instructions"||f.type==="connections"||f.type==="layout"?"settings":c.has(f.type)?f.type:`${f.type}:${f.id??""}:${f.toolName??""}`,p=w=>{const[R,E,C]=w.split(":");return R?R==="chat"?{type:R}:c.has(R)?{type:R}:R==="ext-apps"&&E?{type:"ext-apps",id:E,toolName:C||void 0}:null:null},g=w=>{e.setValue("metadata.ui.pinnedViews",w,{shouldDirty:!0})},x=w=>{e.setValue("metadata.ui.layout",{...u,...w},{shouldDirty:!0})},b=B.useRef(!1);if(l&&l.length>0&&!b.current){b.current=!0;const w=new Set((l??[]).filter(C=>C.fetchOk).map(C=>C.id)),R=new Set(h.flatMap(C=>C.uiTools.map(P=>`${C.id}:${P.name}`))),E=d.filter(C=>!w.has(C.connectionId)||R.has(`${C.connectionId}:${C.toolName}`));E.length!==d.length&&(g(E),f?.type==="ext-apps"&&!E.some(C=>C.connectionId===f.id&&C.toolName===f.toolName)&&x({defaultMainView:{type:"chat"}}))}const S=(w,R)=>{if(d.some(C=>C.connectionId===w&&C.toolName===R)){const C=d.filter(A=>!(A.connectionId===w&&A.toolName===R));g(C);const P=`ext-apps:${w}:${R}`;_===P&&x({defaultMainView:{type:"chat"}})}else g([...d,{connectionId:w,toolName:R,label:wn(R),icon:null}]);s()},v=(w,R,E)=>{g(d.map(C=>C.connectionId===w&&C.toolName===R?{...C,label:E}:C))},y=()=>{s()},k=(w,R,E)=>{g(d.map(C=>C.connectionId===w&&C.toolName===R?{...C,icon:E}:C)),s()},N=w=>{x({defaultMainView:p(w)}),s()},j=a.length===0,T=l&&h.length===0,I=!!$t(n),D=[{value:"chat",label:"Chat"},{value:"settings",label:"Settings"},{value:"automations",label:"Automations"}];I&&D.push({value:"preview",label:"Preview"});for(const w of d)D.push({value:`ext-apps:${w.connectionId}:${w.toolName}`,label:w.label||w.toolName});const M=h.length>0||j||T;return o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("div",{className:"flex items-center justify-between gap-3",children:o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Layout"})}),o.jsxs(wa,{className:"p-6 gap-5",children:[o.jsxs(lr,{className:"p-0 space-y-5",children:[o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsxs("div",{className:"space-y-0.5 min-w-0",children:[o.jsx(Bt,{className:"font-normal text-foreground",children:"Main view"}),o.jsx("p",{className:"text-xs text-muted-foreground",children:"What users see when they first open this agent."})]}),o.jsxs(es,{value:_,onValueChange:N,children:[o.jsx(ts,{className:"w-44 h-8 text-sm capitalize shrink-0",children:o.jsx(ss,{})}),o.jsx(is,{children:D.map(w=>o.jsx(Dt,{value:w.value,className:"capitalize",children:w.label},w.value))})]})]}),o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsxs("div",{className:"space-y-0.5 min-w-0",children:[o.jsx(Bt,{className:"font-normal text-foreground",children:"Show chat"}),o.jsx("p",{className:"text-xs text-muted-foreground",children:"Display the chat panel alongside the main view."})]}),o.jsxs(De,{delayDuration:0,children:[o.jsx(Te,{asChild:!0,children:o.jsx("span",{className:"shrink-0",children:o.jsx(cr,{checked:_==="chat"?!0:m,disabled:_==="chat",onCheckedChange:w=>{x({chatDefaultOpen:w}),s()}})})}),_==="chat"&&o.jsx(Re,{side:"top",children:"Chat is always shown when it is the default view"})]})]})]}),M&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"border-t border-border -mx-6"}),o.jsxs(lr,{className:"p-0 space-y-3",children:[o.jsx("div",{className:"flex items-center justify-between gap-4",children:o.jsxs("div",{className:"space-y-0.5 min-w-0",children:[o.jsx(Bt,{className:"font-normal text-foreground",children:"Pinned views"}),o.jsx("p",{className:"text-xs text-muted-foreground",children:"Surface interactive tools as top-level tabs in the agent."})]})}),j&&o.jsx("p",{className:"text-xs text-muted-foreground",children:"Add a connection above to configure pinned views."}),T&&!j&&o.jsx("p",{className:"text-xs text-muted-foreground",children:"None of the connected servers expose interactive tools."}),h.length>0&&o.jsx("div",{className:"space-y-4 pt-1",children:h.map((w,R)=>o.jsxs("div",{children:[R>0&&o.jsx("div",{className:"border-t border-border -mx-6 mb-4"}),o.jsxs("div",{className:"flex items-center gap-2 mb-2.5",children:[o.jsx(Kt,{icon:w.icon,name:w.title,size:"xs",className:"shrink-0"}),o.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:w.title})]}),o.jsx("div",{className:"space-y-1.5",children:w.uiTools.map(E=>{const C=d.some(A=>A.connectionId===w.id&&A.toolName===E.name),P=d.find(A=>A.connectionId===w.id&&A.toolName===E.name);return o.jsxs("div",{className:Z("flex items-center justify-between gap-3 px-3 py-2 rounded-lg border transition-colors",C?"bg-accent/40 border-border":"bg-transparent border-border"),children:[o.jsxs("div",{className:"min-w-0 flex-1 flex items-center gap-2",children:[o.jsx(bd,{value:P?.icon??null,onChange:A=>k(w.id,E.name,A),disabled:!C}),o.jsx(qt,{value:C&&P?P.label:wn(E.name),onChange:A=>v(w.id,E.name,A.target.value),onBlur:y,className:"h-7 text-sm w-40",disabled:!C,readOnly:!C})]}),o.jsx(cr,{checked:C,onCheckedChange:()=>S(w.id,E.name)})]},E.name)})})]},w.id))})]})]})]})]})}function ou({virtualMcp:t,hideOwnTitle:e}){const{org:s}=ge(),i=Jl(),r=Xc(),n=as(),a=He({connectionId:Vt,orgId:s.id,orgSlug:s.slug}),l=Vo({resolver:Ol(Pd),defaultValues:t}),h=l.watch("connections"),c=!!$t(t),d=$t(t),u=d?{owner:d.owner,name:d.name,url:d.url}:null,[f,m]=B.useReducer(Zd,{shareDialogOpen:!1,addDialogOpen:!1,settingsDialogOpen:!1,settingsConnectionId:null}),[_,p]=B.useState(!1),[g,x]=B.useState(!1),{createNewTask:b,setChatOpen:S}=sn(),{sendMessage:v}=Fs(),y=ca(),k=async()=>{if(g)return;const L=l.getValues("metadata.instructions");if(L?.trim()){x(!0);try{M(),be("agent_instructions_improve_clicked",{agent_id:t.id,instructions_length:L.length}),await y(["studio-agent-manager"]),S(!0),await v({tiptapDoc:Aa({managerAgentId:Xo.AGENT_MANAGER(s.id),managerName:"Agent Manager",kind:"agent",id:t.id,instructions:L})})}finally{x(!1)}}},N=()=>{M(),be("agent_test_clicked",{agent_id:t.id}),b()},[j,T]=B.useReducer(Qd,null),I=()=>{j!==null&&(be("agent_updated",{agent_id:t.id,fields:Array.from(j.fields),instructions_length:j.instructionsLength,save_count:j.saveCount,edit_duration_ms:Date.now()-j.start}),T({type:"reset"}))},{schedule:D,flush:M}=mi({delayMs:3e4,save:async()=>I()}),w=async()=>{const L=Object.keys(l.control._formState.dirtyFields);if(L.length===0)return;const ee=L.includes("metadata"),te=l.getValues();l.reset(te,{keepValues:!0}),await i.update.mutateAsync({id:t.id,data:te}),T({type:"accumulate",now:Date.now(),fields:L,instructionsLength:ee?te.metadata?.instructions?.length??0:null}),D()},{schedule:R,flush:E}=mi({save:w});B.useEffect(()=>{const L=l.watch(()=>R());return()=>L.unsubscribe()},[]);const C=()=>{be("connections_dialog_opened",{source:"agent_settings",mode:"add"}),m({type:"SET_ADD_DIALOG_OPEN",payload:!0})},P=async L=>{const ee=l.getValues("connections");if(ee.some(U=>U.connection_id===L))return;l.setValue("connections",[...ee,{connection_id:L,selected_tools:Hi.tools,selected_resources:Hi.resources,selected_prompts:Hi.prompts}],{shouldDirty:!0}),m({type:"SET_ADD_DIALOG_OPEN",payload:!1});const te=new URL(`/api/${s.slug}/mcp/${L}`,window.location.origin),W=await xn({url:te.href,token:null,orgId:s.id});W.supportsOAuth&&!W.isAuthenticated&&await F(L)},A=L=>{const te=l.getValues("connections").filter(W=>W.connection_id!==L);l.setValue("connections",te,{shouldDirty:!0})},$=(L,ee)=>{const te=l.getValues("connections");if(te.some(W=>W.connection_id===ee)){fe.error("This instance is already added to the agent");return}l.setValue("connections",te.map(W=>W.connection_id===L?{...W,connection_id:ee}:W),{shouldDirty:!0})},K=async L=>{if(l.getValues("connections").find(te=>te.connection_id===L))try{const te=await a.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:L}}),{item:W}=te.structuredContent??{};if(!W)return;const U=W.title.replace(/\s*\(.*?\)\s*$/,""),re=Jc("conn"),de=`${U} (${Date.now().toString(36).slice(-4)})`;await r.create.mutateAsync({id:re,title:de,description:W.description??null,connection_type:W.connection_type,connection_url:W.connection_url??null,connection_token:null,icon:W.icon??null,app_name:W.app_name??null,app_id:W.app_id??null,connection_headers:W.connection_headers??null});const ce=new URL(`/api/${s.slug}/mcp/${re}`,window.location.origin),he=await xn({url:ce.href,token:null,orgId:s.id});if(he.supportsOAuth&&!he.isAuthenticated){const _e=await F(re);if(!_e){await r.delete.mutateAsync(re);return}await r.update.mutateAsync({id:re,data:{title:`${U} (${_e})`}})}$(L,re),fe.success("New instance created")}catch(te){console.error("Failed to create instance:",te),fe.error("Failed to create instance")}},q=L=>{m({type:"OPEN_SETTINGS",payload:L})},F=async L=>{const{token:ee,tokenInfo:te,error:W}=await zl({connectionId:L,orgSlug:s.slug,scope:"offline_access"});if(W||!ee)return fe.error(`Authentication failed: ${W}`),null;if(te)try{const re=await fetch(`/api/${s.slug}/connections/${L}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:te.accessToken,refreshToken:te.refreshToken,expiresIn:te.expiresIn,scope:te.scope,clientId:te.clientId,clientSecret:te.clientSecret,tokenEndpoint:te.tokenEndpoint})});if(!re.ok)console.error("Failed to save OAuth token:",await re.text()),await r.update.mutateAsync({id:L,data:{connection_token:ee}});else try{await r.update.mutateAsync({id:L,data:{}})}catch(de){console.warn("Failed to refresh connection tools after OAuth:",de)}}catch(re){console.error("Error saving OAuth token:",re),await r.update.mutateAsync({id:L,data:{connection_token:ee}})}else await r.update.mutateAsync({id:L,data:{connection_token:ee}});const U=new URL(`/api/${s.slug}/mcp/${L}`,window.location.origin);return await n.invalidateQueries({queryKey:Is.isMCPAuthenticated(U.href,null)}),fe.success("Authentication successful"),tu(te,ee)},Y=()=>{const L=l.getValues("metadata.instructions")??"",ee=`<role>
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/project-app-view-C5TQg2cG.js","assets/index-CzOMQ7ME.js","assets/index-DtJ8d1aI.css","assets/pair-Bg3A59Mm.js","assets/agent-icon-ChigV_SM.js","assets/AlertCircle-DBGfLjQw.js","assets/Tool01-YKVy1yNP.js","assets/Archive-BKT9Dg_O.js","assets/XClose-CPKu5cnb.js","assets/RefreshCcw01-DebjkWfq.js","assets/ArrowNarrowLeft-CukpweKs.js","assets/XCircle-QSJN9xhv.js","assets/ArrowUpRight-D9dARFlG.js","assets/ZapSquare-D07uWeTi.js","assets/Users03-C4su_vOM.js","assets/CheckCircle-Bo4QB9pu.js","assets/Check-BXg4TGxE.js","assets/ChevronDown-DEP8rKZT.js","assets/ChevronRight-CXiW90Fz.js","assets/ChevronUp-BhNdg10c.js","assets/DotsVertical-Caoo-NuL.js","assets/Container-CxQrLgnS.js","assets/Star01-CxJjtPnY.js","assets/Palette-C1Yvme6Z.js","assets/SearchMd-CePuFGwO.js","assets/LayoutLeft-Br6mPXCN.js","assets/LinkExternal01-FDsQXojs.js","assets/Lock01-CjoGpFGs.js","assets/Sun-CBmGK6wu.js","assets/Play-BFNsKgtb.js","assets/Plus-BPcc_-zf.js","assets/Settings02-B5jIAnK4.js","assets/Shield01-CKYDfpKE.js","assets/Trash01--KbsY2dn.js","assets/User01-BLvWkS9e.js","assets/X-CNAnrf0f.js","assets/Zap-B4MS-NKo.js","assets/index-nTgL534f.js","assets/use-copy-B-uFxHk6.js","assets/tooltip-Dk-x7ks3.js","assets/differenceInSeconds-NQ4PDo0z.js","assets/dialog-zxbh5ng1.js","assets/content-blocks-o63cs2vh.js","assets/types-G67jsjMK.js","assets/constants-CrCZOO5F.js","assets/chat-context-C_XiURbM.js","assets/use-virtual-mcp-lxX8wI4d.js","assets/use-collections-DaGR-TK3.js","assets/use-ai-providers-Bo9kqLtW.js","assets/use-decopilot-events-Co1GYuP2.js","assets/create-sse-subscription-CxkOgzKf.js","assets/use-tasks-ChwW8r_K.js","assets/use-organization-settings-BMveAMB5.js","assets/shell-layout-DbyGG6Wz.js","assets/required-auth-layout-BRR_6ANi.js","assets/use-org-sso-B3swYyz4.js","assets/integration-icon-BaScZvO6.js","assets/use-mcp-tools-DVY8KcMA.js"])))=>i.map(i=>d[i]);
2
+ import{o as as,r as B,p as Il,q as Pl,e as z,s as ge,K as Is,n as Ho,a as Wo,c as Z,j as o,l as $e,B as se,E as Tt,b as Yr,v as Uo,f as Ut,d as Ko,w as Bl,x as fe,y as nr,V as Ll,t as be,C as ht,z as Vo,D as Ol,F as zl,G as xn,L as $l,H as Pi,I as Gs,J as nt,M as Ps,P as Fl,_ as Hl,Q as qo,R as Go,T as Wl,g as Ul}from"./index-CzOMQ7ME.js";import{C as Ce,b as Kl,w as Vl,A as ql,c as Gl,d as Yl,S as Xl,e as bn,u as Jl,a as or,f as Zl,g as Ql}from"./index-DHNiGAXq.js";import{I as Kt}from"./integration-icon-BaScZvO6.js";import{S as Vt,u as He,g as Yo,a as Xo}from"./constants-CrCZOO5F.js";import{u as vt,a as ec}from"./use-virtual-mcp-lxX8wI4d.js";import{a as tc}from"./Users03-C4su_vOM.js";import{u as Jo,a as xt,b as Xr,c as Fs,t as sc,d as Sn}from"./chat-context-C_XiURbM.js";import{i as Jr}from"./AlertCircle-DBGfLjQw.js";import{i as ic}from"./CheckCircle-Bo4QB9pu.js";import{a as yn,n as rc}from"./ZapSquare-D07uWeTi.js";import{i as nc,a as oc,b as ac,c as Zr,d as lc}from"./XCircle-QSJN9xhv.js";import{s as rs,i as cc}from"./XClose-CPKu5cnb.js";import{c as hc,r as dc,p as Zo,f as wn,a as uc,F as fc,t as Cn,M as Qr,G as mc,i as _c,b as pc,d as gc,e as vc}from"./pair-Bg3A59Mm.js";import{C as xc,a as kn,b as Nn,c as bc,d as Sc,e as yc,f as wc}from"./command-BJXJqdxz.js";import{P as ls,a as cs,b as hs}from"./popover-DVDtU_6G.js";import{i as Rs,a as Cc,b as kc,p as Si,g as yi,c as en,d as Qo,h as ar,e as Bi,f as jn,A as En,j as tn,k as Nc,l as jc,n as Ec,t as Tc,m as Rc,s as Dc,o as ea,q as ta,r as sa,u as ia,v as Tn,w as ra,x as Ds,y as Mc,z as na,B as oa}from"./agent-icon-ChigV_SM.js";import{u as ds,a as Ac}from"./use-mcp-tools-DVY8KcMA.js";import{u as Ic}from"./use-ai-providers-Bo9kqLtW.js";import{g as $t,a as Pc,T as Bc}from"./index-BSzZmTb_.js";import{u as sn,i as Lc}from"./shell-layout-DbyGG6Wz.js";import{u as Oc,c as zc,d as $c,e as Fc}from"./sidebar-CHkSPfi1.js";import{u as aa,T as Te,a as Re,b as De,c as Hc}from"./tooltip-Dk-x7ks3.js";import{u as Wc}from"./use-status-sounds-DsCr5ian.js";import{E as fi}from"./empty-state-9cIH1OSj.js";import{A as Uc,a as Kc,b as Vc,c as qc,R as la,d as Gc,e as Yc}from"./accordion-DK_H38Gy.js";import{u as wi,a as rn,b as Xc}from"./use-connection-Bw3IdOYX.js";import{g as Jc}from"./constants-D2ruRIzu.js";import{u as Zc,g as Qc}from"./types-G67jsjMK.js";import{G as eh,u as ca}from"./lean-canvas-recruit-modal-CHTxHUjM.js";import{U as ha}from"./user-BesiartC.js";import{T as th,u as da}from"./tools-list-BdLDYsTK.js";import{u as sh}from"./unwrap-tool-result-BYXdCQMg.js";import{s as ua,g as ih}from"./connection-slug-eyAPH6o3.js";import{A as fa,a as ma,b as _a,c as pa,d as ga,e as va,f as xa,g as ba}from"./alert-dialog-B-CFL8EO.js";import{D as rh,a as nn,b as on,c as Sa,d as ya}from"./dialog-zxbh5ng1.js";import{C as wa,a as lr}from"./card-Bij24Dhu.js";import{I as qt}from"./input-B0c-2DIW.js";import{L as Bt}from"./label-gqBY6uyz.js";import{S as es,a as ts,b as ss,c as is,d as Dt}from"./select-Ilj6kxB7.js";import{S as cr}from"./switch-MdXM9LTQ.js";import{T as Rn}from"./textarea-BqfIjmtd.js";import{i as Ft}from"./Play-BFNsKgtb.js";import{s as ns}from"./Plus-BPcc_-zf.js";import{a as nh}from"./Settings02-B5jIAnK4.js";import{t as Ca,i as oh}from"./Tool01-YKVy1yNP.js";import{s as hr}from"./Trash01--KbsY2dn.js";import{u as mi}from"./use-debounced-autosave-T0GvbwUO.js";import{S as ka}from"./scroll-area-9lFTzWCb.js";import{i as Na,a as ah}from"./SearchMd-CePuFGwO.js";import{i as lh}from"./LayoutLeft-Br6mPXCN.js";import{P as it}from"./index-CMD-gSoU.js";import{C as ch}from"./collection-tabs-CHoGEXEE.js";import{C as hh}from"./checkbox-DepLdWR1.js";import{u as dh,T as Li,a as uh,b as fh,c as Oi}from"./tabs-BOCdrF2i.js";import{D as mh,a as _h,b as ph}from"./drawer-DNDd7AZJ.js";import{i as Ci}from"./Check-BXg4TGxE.js";import{n as us}from"./LinkExternal01-FDsQXojs.js";import{S as gh}from"./spinner-DRDdaYJh.js";import{D as ki,a as Ni,b as ji,c as Lt,d as vh,e as xh,f as bh}from"./dropdown-menu-BHUBCwIp.js";import{t as ja}from"./ChevronDown-DEP8rKZT.js";import{i as Ea}from"./RefreshCcw01-DebjkWfq.js";import{V as Sh}from"./view-mode-toggle-Dn0_DV4a.js";import{i as yh}from"./X-CNAnrf0f.js";import{u as Hs,a as wh,b as Ch,c as kh,A as Nh,d as jh}from"./automation-list-row-exexu0fc.js";import{i as Bs}from"./Zap-B4MS-NKo.js";import{S as Eh}from"./search-input-BWH3fQpv.js";import"./use-navigate-to-agent-BQ5qza3f.js";import"./use-tasks-ChwW8r_K.js";import"./use-collections-DaGR-TK3.js";import"./ChevronRight-CXiW90Fz.js";import"./collection-search-oUHE77Ko.js";import"./form-DK_rcfC8.js";import"./Star01-CxJjtPnY.js";import"./Lock01-CjoGpFGs.js";import"./toggle-group-i_HO-0bV.js";import"./select-model-Ca5uLyFK.js";import"./skeleton-BhYsT5bA.js";import"./ai-providers-logos-DD3qZ33J.js";import"./avatar-DLcW-A0B.js";import"./User01-BLvWkS9e.js";import"./settings-section-DfJOrTB5.js";import"./ArrowUpRight-D9dARFlG.js";import"./index-nTgL534f.js";import"./index-BOMQKZYe.js";import"./question-004-sINsf4GQ.js";import"./connection-card-DvWQmocE.js";import"./use-registry-connections-Cld8pkRO.js";import"./use-organization-settings-BMveAMB5.js";import"./useInfiniteQuery-ImrWnFFo.js";import"./infiniteQueryObserver-C3rVl4tZ.js";import"./extract-connection-data-CA-1nswb.js";import"./Container-CxQrLgnS.js";import"./connection-form-helpers-z7ekyahw.js";import"./use-infinite-scroll-BNHelzzC.js";import"./useSuspenseInfiniteQuery-CpJJnQ6p.js";import"./badge-Bovdptse.js";import"./use-decopilot-events-Co1GYuP2.js";import"./create-sse-subscription-CxkOgzKf.js";import"./use-copy-B-uFxHk6.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./content-blocks-o63cs2vh.js";import"./Sun-CBmGK6wu.js";import"./index-CCt7tyZ0.js";import"./Archive-BKT9Dg_O.js";import"./ArrowNarrowLeft-CukpweKs.js";import"./ChevronUp-BhNdg10c.js";import"./DotsVertical-Caoo-NuL.js";import"./Palette-C1Yvme6Z.js";import"./Shield01-CKYDfpKE.js";import"./index-CVz9D9gf.js";import"./collection-search-BCf7pr5A.js";import"./use-create-virtual-mcp-CCKFB_a7.js";import"./task-status-BMDGQef8.js";import"./required-auth-layout-BRR_6ANi.js";import"./use-org-sso-B3swYyz4.js";import"./collections-DbmVPIqC.js";function Th(t,e){const s=as(e);return Rh({filters:{...t,status:"pending"}},s).length}function Dn(t,e){return t.findAll(e.filters).map(s=>e.select?e.select(s):s.state)}function Rh(t={},e){const s=as(e).getMutationCache(),i=B.useRef(t),r=B.useRef(null);return r.current===null&&(r.current=Dn(s,t)),B.useEffect(()=>{i.current=t}),B.useSyncExternalStore(B.useCallback(n=>s.subscribe(()=>{const a=Il(r.current,Dn(s,i.current));r.current!==a&&(r.current=a,Pl.schedule(n))}),[s]),()=>r.current,()=>r.current)}function Dh(t,e){const s=z.c(40),{org:i,locator:r}=ge();let n;s[0]!==i.id||s[1]!==i.slug?(n={connectionId:Vt,orgId:i.id,orgSlug:i.slug},s[0]=i.id,s[1]=i.slug,s[2]=n):n=s[2];const a=He(n),l=as();let h;s[3]!==t||s[4]!==i.id?(h=Is.ensureTask(i.id,t),s[3]=t,s[4]=i.id,s[5]=h):h=s[5];let c;s[6]!==a||s[7]!==t?(c=async()=>(await a.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}})).structuredContent?.item??null,s[6]=a,s[7]=t,s[8]=c):c=s[8];const d=t.length>0;let u;s[9]!==h||s[10]!==c||s[11]!==d?(u={queryKey:h,queryFn:c,enabled:d,retry:!1,refetchOnWindowFocus:!1},s[9]=h,s[10]=c,s[11]=d,s[12]=u):u=s[12];const f=Ho(u);let m;s[13]!==a||s[14]!==e?(m=async v=>{const y=await a.callTool({name:"COLLECTION_THREADS_CREATE",arguments:{data:{id:v,virtual_mcp_id:e}}});if(y.isError){const N=y.content,j=Array.isArray(N)&&N[0]&&typeof N[0]=="object"?N[0].text??"Create failed":"Create failed";throw new Error(j)}return y.structuredContent.item},s[13]=a,s[14]=e,s[15]=m):m=s[15];let _;s[16]!==r||s[17]!==i.id||s[18]!==f||s[19]!==l?(_=()=>{l.invalidateQueries({predicate:v=>v.queryKey[1]===i.id&&v.queryKey[3]==="collection"&&v.queryKey[4]==="THREADS"}),l.invalidateQueries({queryKey:Is.tasksPrefix(r)}),f.refetch()},s[16]=r,s[17]=i.id,s[18]=f,s[19]=l,s[20]=_):_=s[20];let p;s[21]!==m||s[22]!==_?(p={mutationFn:m,onSuccess:_},s[21]=m,s[22]=_,s[23]=p):p=s[23];const g=Wo(p);let x,b;if(s[24]!==g||s[25]!==t||s[26]!==f.data||s[27]!==f.isSuccess?(x=()=>{t&&(!f.isSuccess||f.data||g.isPending||g.variables!==t&&g.mutate(t))},b=[t,f.isSuccess,f.data,g],s[24]=g,s[25]=t,s[26]=f.data,s[27]=f.isSuccess,s[28]=x,s[29]=b):(x=s[28],b=s[29]),B.useEffect(x,b),!t){let v;return s[30]===Symbol.for("react.memo_cache_sentinel")?(v={status:"ready",task:null},s[30]=v):v=s[30],v}if(f.isLoading){let v;return s[31]===Symbol.for("react.memo_cache_sentinel")?(v={status:"loading"},s[31]=v):v=s[31],v}if(f.isError){const v=f.error;let y;return s[32]!==v?(y={status:"error",error:v},s[32]=v,s[33]=y):y=s[33],y}if(f.isSuccess&&f.data){let v;return s[34]!==f.data?(v={status:"ready",task:f.data},s[34]=f.data,s[35]=v):v=s[35],v}if(g.isPending||f.isSuccess&&!f.data){let v;return s[36]===Symbol.for("react.memo_cache_sentinel")?(v={status:"creating"},s[36]=v):v=s[36],v}if(g.isError){let v;return s[37]!==g.error?(v={status:"error",error:g.error},s[37]=g.error,s[38]=v):v=s[38],v}let S;return s[39]===Symbol.for("react.memo_cache_sentinel")?(S={status:"loading"},s[39]=S):S=s[39],S}function gs(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}k`:String(t)}function Mn(t){if(!t)return"—";const e=typeof t=="string"?new Date(t):t;return isNaN(e.getTime())?"—":e.toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})}function Mh(t){return t?t.replace(/-\d{8}(?:-[a-z0-9]+)*$/i,"").replace(/-/g," "):"—"}function Ah(t){const e=z.c(4),{items:s}=t;let i;e[0]!==s?(i=s.map(Ih),e[0]=s,e[1]=i):i=e[1];let r;return e[2]!==i?(r=o.jsx("div",{className:"grid grid-cols-2 gap-x-8 gap-y-6",children:i}),e[2]=i,e[3]=r):r=e[3],r}function Ih(t){return o.jsxs("div",{className:"flex flex-col gap-1 min-w-0",children:[o.jsx("span",{className:"text-xs text-muted-foreground truncate",children:t.label}),o.jsx("span",{className:"text-sm text-foreground tabular-nums truncate",children:t.value})]},t.label)}function Ph(t){const e=z.c(30),{userTokens:s,assistantTokens:i,otherTokens:r}=t,n=s+i+r,a=n>0?s/n*100:0,l=n>0?i/n*100:0,h=n>0?r/n*100:0;let c;e[0]!==a?(c=a>0&&o.jsx("div",{className:"h-full bg-chart-1",style:{width:`${a}%`}}),e[0]=a,e[1]=c):c=e[1];let d;e[2]!==l?(d=l>0&&o.jsx("div",{className:"h-full bg-chart-2",style:{width:`${l}%`}}),e[2]=l,e[3]=d):d=e[3];let u;e[4]!==h?(u=h>0&&o.jsx("div",{className:"h-full bg-muted-foreground/30",style:{width:`${h}%`}}),e[4]=h,e[5]=u):u=e[5];let f;e[6]!==c||e[7]!==d||e[8]!==u?(f=o.jsxs("div",{className:"flex h-2 w-full overflow-hidden rounded-full bg-muted",children:[c,d,u]}),e[6]=c,e[7]=d,e[8]=u,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-1 shrink-0"}),e[10]=m):m=e[10];let _;e[11]!==a?(_=a.toFixed(1),e[11]=a,e[12]=_):_=e[12];let p;e[13]!==_?(p=o.jsxs("div",{className:"flex items-center gap-1.5",children:[m,o.jsxs("span",{className:"text-xs text-muted-foreground",children:["User ",_,"%"]})]}),e[13]=_,e[14]=p):p=e[14];let g;e[15]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-chart-2 shrink-0"}),e[15]=g):g=e[15];let x;e[16]!==l?(x=l.toFixed(1),e[16]=l,e[17]=x):x=e[17];let b;e[18]!==x?(b=o.jsxs("div",{className:"flex items-center gap-1.5",children:[g,o.jsxs("span",{className:"text-xs text-muted-foreground",children:["Assistant ",x,"%"]})]}),e[18]=x,e[19]=b):b=e[19];let S;e[20]!==h||e[21]!==r?(S=r>0&&o.jsxs("div",{className:"flex items-center gap-1.5",children:[o.jsx("span",{className:"inline-block h-2 w-2 rounded-sm bg-muted-foreground/30 shrink-0"}),o.jsxs("span",{className:"text-xs text-muted-foreground",children:["Other ",h.toFixed(1),"%"]})]}),e[20]=h,e[21]=r,e[22]=S):S=e[22];let v;e[23]!==b||e[24]!==S||e[25]!==p?(v=o.jsxs("div",{className:"flex flex-wrap gap-x-3 gap-y-1",children:[p,b,S]}),e[23]=b,e[24]=S,e[25]=p,e[26]=v):v=e[26];let y;return e[27]!==v||e[28]!==f?(y=o.jsxs("div",{className:"flex flex-col gap-2",children:[f,v]}),e[27]=v,e[28]=f,e[29]=y):y=e[29],y}function Bh(t){const e=z.c(11),{agentId:s,isError:i}=t,r=vt(s),n=r?.title??"Subtask",a=r?.icon??null;let l;e[0]!==a||e[1]!==n?(l=o.jsx(Kt,{icon:a,name:n,size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=a,e[1]=n,e[2]=l):l=e[2];const h=i?"text-destructive":"text-foreground";let c;e[3]!==h?(c=Z("shrink-0 font-medium",h),e[3]=h,e[4]=c):c=e[4];let d;e[5]!==n||e[6]!==c?(d=o.jsx("span",{className:c,children:n}),e[5]=n,e[6]=c,e[7]=d):d=e[7];let u;return e[8]!==l||e[9]!==d?(u=o.jsxs(o.Fragment,{children:[l,d]}),e[8]=l,e[9]=d,e[10]=u):u=e[10],u}function Lh(t){const e=z.c(5),{isError:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(Kt,{icon:null,name:"Subtask",size:"xs",className:"size-6 rounded-md shrink-0"}),e[0]=i):i=e[0];const r=s?"text-destructive":"text-foreground";let n;e[1]!==r?(n=Z("shrink-0 font-medium",r),e[1]=r,e[2]=n):n=e[2];let a;return e[3]!==n?(a=o.jsxs(o.Fragment,{children:[i,o.jsx("span",{className:n,children:"Subtask"})]}),e[3]=n,e[4]=a):a=e[4],a}function Oh(t){const e=z.c(18),{part:s}=t,i=s.input?.agent_id,r=s.state==="input-streaming"||s.state==="input-available"||s.state==="output-available"&&s.preliminary===!0,n=s.state==="output-error",a=s.state==="approval-requested";let l;e[0]!==n?(l=o.jsx(Lh,{isError:n}),e[0]=n,e[1]=l):l=e[1];let h;e[2]!==i||e[3]!==n?(h=o.jsx(Bh,{agentId:i,isError:n}),e[2]=i,e[3]=n,e[4]=h):h=e[4];let c;e[5]!==l||e[6]!==h?(c=o.jsx(B.Suspense,{fallback:l,children:h}),e[5]=l,e[6]=h,e[7]=c):c=e[7];let d;e[8]!==s.input?(d=s.input?.prompt&&o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-muted-foreground/50",children:"·"}),o.jsx("span",{className:"truncate text-muted-foreground",children:s.input.prompt})]}),e[8]=s.input,e[9]=d):d=e[9];let u;e[10]!==a||e[11]!==n||e[12]!==r?(u=o.jsx("span",{className:"ml-auto shrink-0",children:r?o.jsx($e,{size:12,className:"animate-spin text-muted-foreground"}):n?o.jsx(nc,{size:12,className:"text-destructive"}):a?o.jsx(Jr,{size:12,className:"text-warning"}):o.jsx(ic,{size:12,className:"text-emerald-500"})}),e[10]=a,e[11]=n,e[12]=r,e[13]=u):u=e[13];let f;return e[14]!==c||e[15]!==d||e[16]!==u?(f=o.jsxs("div",{className:"flex items-center gap-2 text-xs min-w-0",children:[c,d,u]}),e[14]=c,e[15]=d,e[16]=u,e[17]=f):f=e[17],f}function zh(t){const e=z.c(58),{onClose:s,back:i,className:r}=t,[n,a]=B.useState(null),{messages:l}=Jo(),{tasks:h,taskId:c}=xt(),{selectedModel:d,selectedVirtualMcp:u}=Xr();let f,m,_,p,g,x,b,S;if(e[0]!==i||e[1]!==r||e[2]!==l||e[3]!==s||e[4]!==n?.id||e[5]!==d||e[6]!==u?.title||e[7]!==c||e[8]!==h){S=Symbol.for("react.early_return_sentinel");e:{let k;e[17]!==c?(k=U=>U.id===c,e[17]=c,e[18]=k):k=e[18];const N=h.find(k),j=hc(l),T=[...l].reverse().find(Xh),I=T?.metadata?.usage,D=T?.metadata?.modelLimits?.contextWindow??d?.limits?.contextWindow??null,M=I?.contextTokens??I?.totalTokens??0,w=D&&D>0?(M/D*100).toFixed(1):null,R=l;let E;e[19]!==R?(E=R.filter(Yh).reduce(Gh,0),e[19]=R,e[20]=E):E=e[20];const C=E,P=l;let A;e[21]!==P?(A=P.filter(qh).reduce(Vh,0),e[21]=P,e[22]=A):A=e[22];const $=A,K=Math.max(0,j.totalTokens-C-$),q=l[0],F=l.at(-1),Y=q?.metadata?.created_at??N?.created_at,J=F?.metadata?.created_at??N?.updated_at,G=l.filter(Kh),H=l.flatMap(Wh),Q=d?.modelId?Mh(d.modelId):"—",ie=u?.title??"Decopilot",L=[{label:"Session",value:N?.title??"New chat"},{label:"Messages",value:G.length},{label:"Agent",value:ie},{label:"Model",value:Q},{label:"Context Limit",value:D?gs(D):"—"},{label:"Session Tokens (billed)",value:j.totalTokens>0?gs(j.totalTokens):"0"},{label:"Usage",value:w!==null?`${w}%`:"—"},{label:"Input Tokens",value:j.inputTokens>0?gs(j.inputTokens):"0"},{label:"Output Tokens",value:j.outputTokens>0?gs(j.outputTokens):"0"},{label:"Reasoning Tokens",value:j.reasoningTokens>0?gs(j.reasoningTokens):"0"},{label:"Cost",value:j.cost>0?`$${j.cost<.001?j.cost.toFixed(6):j.cost.toFixed(4)}`:"$0.00"},{label:"Session Created",value:Mn(Y)},{label:"Last Activity",value:Mn(J)}];if(!N&&G.length===0){let U;e[23]!==r?(U=Z("flex flex-col h-full w-full border-l border-border bg-background",r),e[23]=r,e[24]=U):U=e[24];let re;e[25]===Symbol.for("react.memo_cache_sentinel")?(re=o.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[25]=re):re=e[25];let de;e[26]!==i?(de=i?o.jsx(yn,{size:14,className:"text-muted-foreground"}):o.jsx(rs,{size:14,className:"text-muted-foreground"}),e[26]=i,e[27]=de):de=e[27];let ce;e[28]!==s||e[29]!==de?(ce=o.jsxs("div",{className:"h-11 px-4 flex items-center justify-between shrink-0 border-b border-border/50",children:[re,o.jsx("button",{type:"button",onClick:s,className:"flex size-6 items-center justify-center rounded hover:bg-accent transition-colors",children:de})]}),e[28]=s,e[29]=de,e[30]=ce):ce=e[30];let he;e[31]===Symbol.for("react.memo_cache_sentinel")?(he=o.jsx("div",{className:"flex-1 flex items-center justify-center px-4 text-center",children:o.jsx("p",{className:"text-xs text-muted-foreground",children:"Start a conversation to see context"})}),e[31]=he):he=e[31];let _e;e[32]!==U||e[33]!==ce?(_e=o.jsxs("div",{className:U,children:[ce,he]}),e[32]=U,e[33]=ce,e[34]=_e):_e=e[34],S=_e;break e}e[35]!==r?(x=Z("flex flex-col h-full w-full border-l border-border bg-background overflow-y-auto",r),e[35]=r,e[36]=x):x=e[36];let ee;e[37]===Symbol.for("react.memo_cache_sentinel")?(ee=o.jsx("span",{className:"text-sm font-medium text-foreground",children:"Context"}),e[37]=ee):ee=e[37];let te;e[38]!==i?(te=i?o.jsx(yn,{size:14}):o.jsx(rs,{size:14}),e[38]=i,e[39]=te):te=e[39],e[40]!==s||e[41]!==te?(b=o.jsxs("div",{className:"flex h-11 shrink-0 items-center justify-between border-b border-border/50 px-4",children:[ee,o.jsx("button",{type:"button",onClick:s,className:"flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:te})]}),e[40]=s,e[41]=te,e[42]=b):b=e[42],f="flex flex-col gap-8 p-6",m=H.length>0&&o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("span",{className:"text-xs text-muted-foreground",children:"Subtasks"}),o.jsx("div",{className:"flex flex-col gap-1",children:H.map(Hh)})]}),_=o.jsx(Ah,{items:L});let W;e[43]===Symbol.for("react.memo_cache_sentinel")?(W=o.jsx("span",{className:"text-xs text-muted-foreground",children:"Context Breakdown"}),e[43]=W):W=e[43],e[44]!==$||e[45]!==K||e[46]!==C?(p=o.jsxs("div",{className:"flex flex-col gap-3",children:[W,o.jsx(Ph,{userTokens:C,assistantTokens:$,otherTokens:K})]}),e[44]=$,e[45]=K,e[46]=C,e[47]=p):p=e[47],g=G.length>0&&o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("span",{className:"text-xs text-muted-foreground",children:"Raw messages"}),o.jsx("div",{className:"flex flex-col gap-1",children:G.map(U=>{const re=U.metadata?.created_at,de=n?.id===U.id;return o.jsxs("div",{className:"rounded-md border border-border/50 overflow-hidden",children:[o.jsxs("button",{type:"button",onClick:()=>a(de?null:U),className:"flex items-center justify-between gap-2 px-3 py-2 text-xs hover:bg-accent/50 w-full text-left cursor-pointer",children:[o.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[o.jsx("span",{className:Z("shrink-0 font-medium",U.role==="user"?"text-chart-1":"text-chart-2"),children:U.role}),o.jsx("span",{className:"text-muted-foreground",children:"•"}),o.jsx("span",{className:"truncate text-muted-foreground font-mono",children:U.id})]}),re&&o.jsx("span",{className:"shrink-0 text-muted-foreground tabular-nums",children:new Date(re).toLocaleString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit"})})]}),de&&o.jsxs(o.Fragment,{children:[U.role==="assistant"&&(()=>{const ce=U.metadata?._request;if(!ce)return null;const he=ce.systemSections??[],_e=Math.max(1,...he.map(Fh)),rt=he.reduce($h,0);return o.jsxs("div",{className:"border-t border-border/50 px-3 py-2.5 text-xs space-y-2.5",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"font-medium text-foreground",children:"Request"}),o.jsxs("span",{className:"text-muted-foreground tabular-nums",children:[ce.activeTools??0," / ",ce.tools??0," ","tools active"]})]}),he.length>0&&o.jsxs("div",{className:"space-y-1.5",children:[o.jsxs("div",{className:"text-muted-foreground",children:["System prompt"," ",o.jsxs("span",{className:"tabular-nums",children:["~",Math.round(rt/4).toLocaleString()," ","tok"]})]}),he.map((Xe,st)=>{const yt=Xe.preview.match(/^<([a-z-]+)/i)?.[1]??`section ${st}`,Oe=Xe.chars/_e*100,oe=Math.round(Xe.chars/4);return o.jsxs("div",{className:"space-y-0.5",children:[o.jsxs("div",{className:"flex items-center justify-between gap-2",children:[o.jsx("span",{className:"font-mono text-foreground truncate",children:yt}),o.jsxs("span",{className:"text-muted-foreground tabular-nums shrink-0",children:["~",oe.toLocaleString()," tok"]})]}),o.jsx("div",{className:"h-1 w-full rounded-full bg-muted overflow-hidden",children:o.jsx("div",{className:"h-full rounded-full bg-chart-3",style:{width:`${Oe}%`}})})]},st)})]})]})})(),o.jsx("pre",{className:"text-xs font-mono bg-muted px-3 py-2 overflow-auto whitespace-pre-wrap break-all border-t border-border/50 max-h-64",children:JSON.stringify(U,null,2)})]})]},U.id)})})]})}e[0]=i,e[1]=r,e[2]=l,e[3]=s,e[4]=n?.id,e[5]=d,e[6]=u?.title,e[7]=c,e[8]=h,e[9]=f,e[10]=m,e[11]=_,e[12]=p,e[13]=g,e[14]=x,e[15]=b,e[16]=S}else f=e[9],m=e[10],_=e[11],p=e[12],g=e[13],x=e[14],b=e[15],S=e[16];if(S!==Symbol.for("react.early_return_sentinel"))return S;let v;e[48]!==f||e[49]!==m||e[50]!==_||e[51]!==p||e[52]!==g?(v=o.jsxs("div",{className:f,children:[m,_,p,g]}),e[48]=f,e[49]=m,e[50]=_,e[51]=p,e[52]=g,e[53]=v):v=e[53];let y;return e[54]!==x||e[55]!==b||e[56]!==v?(y=o.jsxs("div",{className:x,children:[b,v]}),e[54]=x,e[55]=b,e[56]=v,e[57]=y):y=e[57],y}function $h(t,e){return t+e.chars}function Fh(t){return t.chars}function Hh(t,e){return o.jsx(Oh,{part:t},e)}function Wh(t){return(t.parts??[]).filter(Uh)}function Uh(t){return t.type==="tool-subtask"}function Kh(t){return t.role!=="system"}function Vh(t,e){const s=e.metadata?.usage;return t+(s?.outputTokens??0)}function qh(t){return t.role==="assistant"}function Gh(t,e){const s=e.metadata?.usage;return t+(s?.inputTokens??0)}function Yh(t){return t.role==="user"}function Xh(t){return t.role==="assistant"&&t.metadata?.usage}const An=["amber","bold","bright","calm","crimson","coral","daring","deep","dusty","eager","faint","fierce","frozen","gentle","golden","grand","green","hollow","iron","ivory","keen","lasting","lunar","mellow","misty","noble","olive","pale","prime","quiet","rapid","rustic","serene","sharp","silver","sleek","solar","stark","still","swift","tawny","tender","thin","true","vast","velvet","warm","wild","young","zen"],In=["anchor","birch","brook","cedar","cliff","cove","crane","dune","echo","ember","falcon","fern","flint","forge","frost","glade","grove","harbor","hawk","iris","jade","lark","maple","marsh","mesa","opal","orbit","peak","pine","plume","quartz","rapids","reef","ridge","river","sage","shore","slate","spruce","stone","summit","thorn","tide","trail","vale","wren","aspen","delta","crest","spark"];function Jh(){const t=An[Math.floor(Math.random()*An.length)],e=In[Math.floor(Math.random()*In.length)];return`deco/${t}-${e}`}function Zh(t){const e=t;if(e.structuredContent)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(s)try{return JSON.parse(s)}catch{return[]}return[]}function Qh(t){const e=z.c(26),{orgId:s,orgSlug:i,userId:r,connectionId:n,vmMap:a,owner:l,repo:h,enabled:c}=t,d=c===void 0?!0:c,u=n??null;let f;e[0]!==s||e[1]!==i||e[2]!==u?(f={connectionId:u,orgId:s,orgSlug:i},e[0]=s,e[1]=i,e[2]=u,e[3]=f):f=e[3];const m=He(f);let _;e[4]!==l||e[5]!==h?(_={owner:l,repo:h},e[4]=l,e[5]=h,e[6]=_):_=e[6];const p=d&&!!n&&!!l&&!!h;let g;e[7]!==m||e[8]!==_||e[9]!==p?(g={client:m,toolName:"list_branches",toolArguments:_,enabled:p,staleTime:3e4,select:id},e[7]=m,e[8]=_,e[9]=p,e[10]=g):g=e[10];const{data:x,isLoading:b,isError:S}=ds(g);let v,y;e[11]!==r||e[12]!==a?(y=new Set(Object.keys(a?.[r]??{})),v=[...y].sort().map(sd),e[11]=r,e[12]=a,e[13]=v,e[14]=y):(v=e[13],y=e[14]);const k=v;let N;if(e[15]!==x||e[16]!==y){const D=Array.isArray(x)?x:x?.branches??[];let M;e[18]!==y?(M=w=>!y.has(w.name),e[18]=y,e[19]=M):M=e[19],N=D.filter(td).filter(M).map(ed),e[15]=x,e[16]=y,e[17]=N}else N=e[17];const j=N,T=Array.isArray(x)?null:x?.default_branch??null;let I;return e[20]!==T||e[21]!==S||e[22]!==b||e[23]!==j||e[24]!==k?(I={yours:k,others:j,defaultBase:T,isLoading:b,isError:S},e[20]=T,e[21]=S,e[22]=b,e[23]=j,e[24]=k,e[25]=I):I=e[25],I}function ed(t){return{name:t.name,source:"other",author:typeof t.commit?.author=="string"?t.commit.author:t.commit?.author?.login??null}}function td(t){return typeof t.name=="string"}function sd(t){return{name:t,source:"yours"}}function id(t){return Zh(t)}function rd(t){const e=z.c(42),{orgId:s,orgSlug:i,userId:r,connectionId:n,owner:a,repo:l,vmMap:h,value:c,onChange:d}=t,[u,f]=B.useState(!1);let m;e[0]!==n||e[1]!==u||e[2]!==s||e[3]!==i||e[4]!==a||e[5]!==l||e[6]!==r||e[7]!==h?(m={orgId:s,orgSlug:i,userId:r,connectionId:n,vmMap:h,owner:a,repo:l,enabled:u},e[0]=n,e[1]=u,e[2]=s,e[3]=i,e[4]=a,e[5]=l,e[6]=r,e[7]=h,e[8]=m):m=e[8];const{yours:_,others:p,isLoading:g,isError:x}=Qh(m);let b;e[9]!==d?(b=C=>{d(C),f(!1)},e[9]=d,e[10]=b):b=e[10];const S=b,v=c??"Select branch…";let y;e[11]===Symbol.for("react.memo_cache_sentinel")?(y=o.jsx(Rs,{className:"h-3.5 w-3.5"}),e[11]=y):y=e[11];let k;e[12]!==v?(k=o.jsx(ls,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 font-mono text-xs",children:[y,o.jsx("span",{className:"max-w-[200px] truncate",children:v})]})}),e[12]=v,e[13]=k):k=e[13];let N;e[14]===Symbol.for("react.memo_cache_sentinel")?(N=o.jsx(Sc,{placeholder:"Search branches…"}),e[14]=N):N=e[14];let j;e[15]!==S?(j=o.jsxs("div",{className:"flex items-center border-b pr-2 [&>[data-slot=command-input-wrapper]]:flex-1 [&>[data-slot=command-input-wrapper]]:border-b-0",children:[N,o.jsx(se,{variant:"outline",size:"sm",className:"h-7 shrink-0",onClick:()=>S(Jh()),children:"New"})]}),e[15]=S,e[16]=j):j=e[16];let T;e[17]!==x?(T=x&&o.jsx("div",{className:"p-3 text-xs text-muted-foreground",children:"Couldn't load branches from GitHub. You can still pick from your branches."}),e[17]=x,e[18]=T):T=e[18];let I;e[19]!==x||e[20]!==g||e[21]!==p.length||e[22]!==_.length?(I=!x&&!g&&_.length===0&&p.length===0&&o.jsx(xc,{children:"No branches found."}),e[19]=x,e[20]=g,e[21]=p.length,e[22]=_.length,e[23]=I):I=e[23];let D;e[24]!==S||e[25]!==_?(D=_.length>0&&o.jsx(kn,{heading:"Your branches",children:_.map(C=>o.jsxs(Nn,{value:C.name,onSelect:()=>S(C.name),children:[o.jsx(Rs,{className:"mr-2 h-4 w-4"}),o.jsx("span",{className:"flex-1 truncate",children:C.name})]},C.name))}),e[24]=S,e[25]=_,e[26]=D):D=e[26];let M;e[27]!==p||e[28]!==S?(M=p.length>0&&o.jsxs(o.Fragment,{children:[o.jsx(bc,{}),o.jsx(kn,{heading:"Other branches in repo",children:p.map(C=>o.jsxs(Nn,{value:C.name,onSelect:()=>S(C.name),children:[o.jsx(Rs,{className:"mr-2 h-4 w-4"}),o.jsx("span",{className:"flex-1 truncate",children:C.name}),C.author&&o.jsxs("span",{className:"text-xs text-muted-foreground",children:["@",C.author]})]},C.name))})]}),e[27]=p,e[28]=S,e[29]=M):M=e[29];let w;e[30]!==M||e[31]!==T||e[32]!==I||e[33]!==D?(w=o.jsxs(yc,{children:[T,I,D,M]}),e[30]=M,e[31]=T,e[32]=I,e[33]=D,e[34]=w):w=e[34];let R;e[35]!==w||e[36]!==j?(R=o.jsx(cs,{className:"w-[min(420px,calc(100vw-2rem))] p-0",align:"start",children:o.jsxs(wc,{children:[j,w]})}),e[35]=w,e[36]=j,e[37]=R):R=e[37];let E;return e[38]!==u||e[39]!==R||e[40]!==k?(E=o.jsxs(hs,{open:u,onOpenChange:f,children:[k,R]}),e[38]=u,e[39]=R,e[40]=k,e[41]=E):E=e[41],E}function nd(){const t=z.c(27),{org:e}=ge(),{selectedVirtualMcp:s}=Xr(),{data:i}=Yr.useSession(),{currentBranch:r,setCurrentTaskBranch:n}=xt();let a;t[0]!==e.id?(a=Yo(e.id),t[0]=e.id,t[1]=a):a=t[1];const h=s??a,c=vt(h.id),d=i?.user?.id??"",u=c?.metadata?.githubRepo??null,f=!!u?.connectionId&&!!d;let m;t[2]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(tc,{size:32}),t[2]=m):m=t[2];let _;t[3]!==h.icon||t[4]!==h.title?(_=o.jsx(Kt,{icon:h.icon,name:h.title,size:"lg",fallbackIcon:m,className:"size-10 min-w-10 md:size-[60px]! md:min-w-[60px] rounded-xl md:rounded-[18px]!"}),t[3]=h.icon,t[4]=h.title,t[5]=_):_=t[5];let p;t[6]!==h.title?(p=o.jsx("h3",{className:"text-base md:text-xl font-medium text-foreground",children:h.title}),t[6]=h.title,t[7]=p):p=t[7];const g=h.description??"Ask anything about configuring model providers or using MCP Mesh.";let x;t[8]!==g?(x=o.jsx("div",{className:"text-muted-foreground text-center text-base max-w-md line-clamp-2",children:g}),t[8]=g,t[9]=x):x=t[9];let b;t[10]!==r||t[11]!==c?.metadata?.vmMap||t[12]!==u||t[13]!==e.id||t[14]!==e.slug||t[15]!==n||t[16]!==f||t[17]!==d?(b=f&&o.jsx("div",{className:"mt-2",children:o.jsx(rd,{orgId:e.id,orgSlug:e.slug,userId:d,connectionId:u.connectionId,owner:u.owner,repo:u.name,vmMap:c?.metadata?.vmMap,value:r??void 0,onChange:n})}),t[10]=r,t[11]=c?.metadata?.vmMap,t[12]=u,t[13]=e.id,t[14]=e.slug,t[15]=n,t[16]=f,t[17]=d,t[18]=b):b=t[18];let S;t[19]!==_||t[20]!==p||t[21]!==x||t[22]!==b?(S=o.jsxs("div",{className:"flex flex-col items-center justify-center gap-2 md:gap-4 text-center",children:[_,p,x,b]}),t[19]=_,t[20]=p,t[21]=x,t[22]=b,t[23]=S):S=t[23];let v;t[24]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx("div",{className:"w-full max-w-3xl mx-auto",children:o.jsx(Ce.IceBreakers,{})}),t[24]=v):v=t[24];let y;return t[25]!==S?(y=o.jsxs("div",{className:"h-full w-full flex flex-col items-center justify-center gap-6 px-4",children:[S,v]}),t[25]=S,t[26]=y):y=t[26],y}function od(){const t=z.c(26),{org:e}=ge(),s=Ic(),{isChatEmpty:i}=Jo(),[r,n]=B.useState("chat"),a=Kl();if(s.length===0){let S;return t[0]===Symbol.for("react.memo_cache_sentinel")?(S=o.jsx(Ce,{className:"animate-in fade-in-0 duration-200",children:o.jsx(Ce.Main,{className:"flex flex-col items-center",children:o.jsx(Ce.EmptyState,{children:o.jsx(Ce.NoAiProviderEmptyState,{})})})}),t[0]=S):S=t[0],S}let l;t[1]!==a.hasDecoKey||t[2]!==a.hasOnlyDecoProvider||t[3]!==a.isLoading||t[4]!==a.isZeroBalance||t[5]!==i||t[6]!==e?(l=a.hasDecoKey&&a.isZeroBalance&&a.hasOnlyDecoProvider&&!a.isLoading&&i&&!Vl(e.id),t[1]=a.hasDecoKey,t[2]=a.hasOnlyDecoProvider,t[3]=a.isLoading,t[4]=a.isZeroBalance,t[5]=i,t[6]=e,t[7]=l):l=t[7];const h=l;let c;t[8]!==h?(c=h&&o.jsx(Ce.CreditsEmptyState,{}),t[8]=h,t[9]=c):c=t[9];const d=r!=="chat"?"opacity-0 pointer-events-none":"opacity-100";let u;t[10]!==d?(u=Z("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",d),t[10]=d,t[11]=u):u=t[11];let f;t[12]!==i?(f=i?o.jsxs(o.Fragment,{children:[o.jsx(Ce.Main,{children:o.jsx(nd,{})}),o.jsx(Ce.Footer,{children:o.jsx(Ce.Input,{onOpenContextPanel:()=>n("context")})})]}):o.jsxs(o.Fragment,{children:[o.jsx(Ce.Main,{children:o.jsx(Ce.Messages,{})}),o.jsx(Ce.Footer,{children:o.jsx(Ce.Input,{onOpenContextPanel:()=>n("context")})})]}),t[12]=i,t[13]=f):f=t[13];let m;t[14]!==u||t[15]!==f?(m=o.jsx("div",{className:u,children:f}),t[14]=u,t[15]=f,t[16]=m):m=t[16];const _=r==="context"?"opacity-100":"opacity-0 pointer-events-none";let p;t[17]!==_?(p=Z("absolute inset-0 flex flex-col transition-opacity duration-100 ease-out",_),t[17]=_,t[18]=p):p=t[18];let g;t[19]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx(zh,{back:!0,onClose:()=>n("chat")}),t[19]=g):g=t[19];let x;t[20]!==p?(x=o.jsx("div",{className:p,children:g}),t[20]=p,t[21]=x):x=t[21];let b;return t[22]!==c||t[23]!==m||t[24]!==x?(b=o.jsxs(Ce,{className:"relative overflow-hidden animate-in fade-in-0 duration-200",children:[c,m,x]}),t[22]=c,t[23]=m,t[24]=x,t[25]=b):b=t[25],b}function Ta(){const t=z.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx(Ce.Skeleton,{}),t[0]=e):e=t[0];let s;return t[1]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Tt,{fallback:e,children:o.jsx(B.Suspense,{fallback:o.jsx(Ce.Skeleton,{}),children:o.jsx(od,{})})}),t[1]=s):s=t[1],s}async function ad(t,e,s){const i=await t.callTool({name:e,arguments:s});if(i.isError){const r=i.content?.[0]?.text??`Tool ${e} failed without a message`;throw new Error(r)}return i}const Ra=["VM_START"],Ys=new Map,ld=t=>`${t.virtualMcpId}::${t.branch??""}`,zi=new Set,ni={mark:(t,e)=>zi.add(`${t}::${e}`),clear:(t,e)=>zi.delete(`${t}::${e}`),isStopped:(t,e)=>zi.has(`${t}::${e}`)};function Da(t){const e=as();return Wo({mutationKey:Ra,mutationFn:async s=>{s.branch&&ni.clear(s.virtualMcpId,s.branch);const i=ld(s),r=Ys.get(i);if(r)return r;const n=(async()=>(await ad(t,"VM_START",s)).structuredContent)();Ys.set(i,n);try{return await n}finally{Ys.get(i)===n&&Ys.delete(i)}},onSuccess:()=>{Uo(e)}})}function cd(t,e){const s=z.c(3);let i;return s[0]!==e||s[1]!==t?(i={mutationKey:Ra,predicate:n=>{if(!t)return!1;const a=n.state.variables;return!a||a.virtualMcpId!==t?!1:(a.branch??"")===(e??"")}},s[0]=e,s[1]=t,s[2]=i):i=s[2],Th(i)>0}const hd={settings:kc,automations:Cc,preview:oc,git:Rs};function Pn(t){const e=Si(t);if(e.type==="icon"){const s=yi(e.name);return s?{kind:"component",Component:s}:null}return e.type==="url"?{kind:"url",src:e.url}:null}function $i(t){if(t.kind==="system")return{kind:"component",Component:hd[t.tabId]};const e=Pn(t.iconUrl);if(e)return e;if(!t.appId)return{kind:"fallback"};const s=t.connections.find(r=>r.id===t.appId);if(!s)return{kind:"fallback"};const i=Pn(s.icon);return i||{kind:"fallback"}}function dd(t){const{org:e}=ge(),s=He({connectionId:Vt,orgId:e.id,orgSlug:e.slug}),{data:i}=Bl({queryKey:Is.threadMetadata(t),queryFn:async()=>{if(!s||!t)return null;try{const r=await s.callTool({name:"COLLECTION_THREADS_GET",arguments:{id:t}});return(r.structuredContent??r).item?.metadata??null}catch{return null}},staleTime:3e4});return i}function Ma(t){const e=z.c(8),s=Ut();let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i={strict:!1},e[0]=i):i=e[0];const r=Ko(i),n=vt(t.virtualMcpId),a=dd(t.taskId),{currentBranch:l}=xt(),h=n?.metadata?.ui??null,c=h?.layout??null,d=c?.tabs??[],u=h?.pinnedViews??[],f=a?.expanded_tools??[],m=!!(n&&$t(n));let _;e[1]===Symbol.for("react.memo_cache_sentinel")?(_={includeVirtual:!0},e[1]=_):_=e[1];const p=wi(_),{activeTab:g,mainOpen:x}=dc({mainParam:r.main,metadata:c?{defaultMainView:c.defaultMainView??null,tabs:d.map(ud)}:null}),b=Zo(g),S=[];m&&(S.push({id:"preview",title:"Preview"}),S.push({id:"git",title:l??"git"})),S.push({id:"settings",title:"Settings"}),S.push({id:"automations",title:"Automations"});const v=new Map;for(const T of f){const I=wn(T.appId,T.toolName);v.set(I,{id:I,title:T.toolName,appId:T.appId,iconKey:T.toolName})}for(const T of u){const I=wn(T.connectionId,T.toolName);v.set(I,{id:I,title:T.label||T.toolName,appId:T.connectionId,iconKey:T.toolName,iconUrl:T.icon??null})}let y;e[2]!==p?(y=T=>({id:T.id,title:T.title,kind:"agent",icon:$i({tabId:T.id,kind:"agent",appId:T.view.appId,connections:p})}),e[2]=p,e[3]=y):y=e[3];const k=[...d.map(y),...Array.from(v.values()).map(T=>({id:T.id,title:T.title,kind:"expanded",icon:$i({tabId:T.iconKey,kind:"expanded",appId:T.appId,iconUrl:T.iconUrl,connections:p})})),...S.map(T=>({id:T.id,title:T.title,kind:"system",icon:$i({tabId:T.id,kind:"system",connections:p})}))];let N;return e[4]!==g||e[5]!==x||e[6]!==s?(N=T=>{const I=uc({clickedId:T,activeTab:g,mainOpen:x});s({to:".",search:D=>({...D,main:I}),replace:!0})},e[4]=g,e[5]=x,e[6]=s,e[7]=N):N=e[7],{activeTab:g,mainOpen:x,setActiveTab:N,systemTabs:S,layoutTabs:d,expandedTools:f,automationTabParsed:b,tabs:k}}function ud(t){return{id:t.id}}function Aa(t){const{managerAgentId:e,managerName:s,kind:i,id:r,instructions:n}=t,a=` to improve the instructions of ${i} "${r}". Here are its current instructions.
3
+ <current_instructions>${n}</current_instructions>`;return{type:"doc",content:[{type:"paragraph",content:[{type:"text",text:"Use "},{type:"mention",attrs:{id:e,name:s,char:"@",metadata:{agentId:e,title:s}}},{type:"text",text:a}]}]}}function fd(t){const e=z.c(84),{value:s,onChange:i,onColorChange:r,name:n,size:a,className:l,avatarClassName:h,showHoverOverlay:c,disabled:d}=t,u=a===void 0?"lg":a,f=c===void 0?!0:c,m=d===void 0?!1:d,[_,p]=B.useState(!1),[g,x]=B.useState("icons"),[b,S]=B.useState(""),[v,y]=B.useState("blue");let k;e[0]!==s?(k=Si(s),e[0]=s,e[1]=k):k=e[1];const N=k,j=N.type==="icon"||N.type==="url"&&N.color?N.color:v;let T;e[2]!==i||e[3]!==j?(T=Oe=>{i(Bi(Oe,j))},e[2]=i,e[3]=j,e[4]=T):T=e[4];const I=T;let D;e[5]!==i||e[6]!==r||e[7]!==N.name||e[8]!==N.type||e[9]!==N.url?(D=Oe=>{y(Oe),r?.(Oe),N.type==="icon"?i(Bi(N.name,Oe)):N.type==="url"&&i(jn(N.url,Oe))},e[5]=i,e[6]=r,e[7]=N.name,e[8]=N.type,e[9]=N.url,e[10]=D):D=e[10];const M=D;let w;e[11]!==i||e[12]!==j?(w=Oe=>{i(jn(Oe,j)),p(!1)},e[11]=i,e[12]=j,e[13]=w):w=e[13];const R=w;let E;e[14]!==i||e[15]!==j?(E=()=>{const Oe=en(),oe=Oe[Math.floor(Math.random()*Oe.length)];i(Bi(oe,j))},e[14]=i,e[15]=j,e[16]=E):E=e[16];const C=E;let P,A,$,K,q,F,Y,J;if(e[17]!==l||e[18]!==m||e[19]!==_||e[20]!==u){const Oe={xs:"rounded-md",sm:"rounded-lg","sm+":"rounded-xl",md:"rounded-xl",lg:"rounded-2xl",xl:"rounded-2xl"};A=hs,F=m?!1:_,Y=p,P=ls,q=!0,J="button",$=m,K=Z("relative group overflow-hidden",m?"cursor-default opacity-50":"cursor-pointer",Oe[u],l),e[17]=l,e[18]=m,e[19]=_,e[20]=u,e[21]=P,e[22]=A,e[23]=$,e[24]=K,e[25]=q,e[26]=F,e[27]=Y,e[28]=J}else P=e[21],A=e[22],$=e[23],K=e[24],q=e[25],F=e[26],Y=e[27],J=e[28];let G;e[29]!==h||e[30]!==n||e[31]!==u||e[32]!==s?(G=o.jsx(En,{icon:s,name:n,size:u,className:h}),e[29]=h,e[30]=n,e[31]=u,e[32]=s,e[33]=G):G=e[33];let H;e[34]!==m||e[35]!==f?(H=f&&!m&&o.jsx("div",{className:"absolute inset-0 flex items-center justify-center bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity",children:o.jsx(tn,{size:16,className:"text-white"})}),e[34]=m,e[35]=f,e[36]=H):H=e[36];let Q;e[37]!==$||e[38]!==K||e[39]!==G||e[40]!==H||e[41]!==J?(Q=o.jsxs("button",{type:J,disabled:$,className:K,children:[G,H]}),e[37]=$,e[38]=K,e[39]=G,e[40]=H,e[41]=J,e[42]=Q):Q=e[42];let ie;e[43]!==P||e[44]!==q||e[45]!==Q?(ie=o.jsx(P,{asChild:q,children:Q}),e[43]=P,e[44]=q,e[45]=Q,e[46]=ie):ie=e[46];let L;e[47]!==n||e[48]!==s?(L=o.jsx("div",{className:"flex items-center justify-center py-4",children:o.jsx(En,{icon:s,name:n,size:"xl"})}),e[47]=n,e[48]=s,e[49]=L):L=e[49];let ee;e[50]===Symbol.for("react.memo_cache_sentinel")?(ee=()=>x("icons"),e[50]=ee):ee=e[50];const te=g==="icons"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let W;e[51]!==te?(W=Z("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",te),e[51]=te,e[52]=W):W=e[52];let U;e[53]!==W?(U=o.jsx("button",{type:"button",onClick:ee,className:W,children:"Icons"}),e[53]=W,e[54]=U):U=e[54];let re;e[55]===Symbol.for("react.memo_cache_sentinel")?(re=()=>x("upload"),e[55]=re):re=e[55];const de=g==="upload"?"border-foreground text-foreground":"border-transparent text-muted-foreground hover:text-foreground";let ce;e[56]!==de?(ce=Z("px-3 py-2 text-sm font-medium border-b-2 -mb-px transition-colors",de),e[56]=de,e[57]=ce):ce=e[57];let he;e[58]!==ce?(he=o.jsx("button",{type:"button",onClick:re,className:ce,children:"Upload"}),e[58]=ce,e[59]=he):he=e[59];let _e;e[60]===Symbol.for("react.memo_cache_sentinel")?(_e=o.jsx("div",{className:"flex-1"}),e[60]=_e):_e=e[60];let rt;e[61]!==U||e[62]!==he?(rt=o.jsxs("div",{className:"flex items-center border-b border-border px-3",children:[U,he,_e]}),e[61]=U,e[62]=he,e[63]=rt):rt=e[63];let Xe;e[64]!==M||e[65]!==C||e[66]!==I||e[67]!==R||e[68]!==N.name||e[69]!==N.type||e[70]!==b||e[71]!==j||e[72]!==g?(Xe=g==="icons"?o.jsx(gd,{search:b,onSearchChange:S,selectedColor:j,onColorChange:M,onSelectIcon:I,onRandom:C,currentIconName:N.type==="icon"?N.name:null}):o.jsx(vd,{onUpload:R}),e[64]=M,e[65]=C,e[66]=I,e[67]=R,e[68]=N.name,e[69]=N.type,e[70]=b,e[71]=j,e[72]=g,e[73]=Xe):Xe=e[73];let st;e[74]!==L||e[75]!==rt||e[76]!==Xe?(st=o.jsx(cs,{align:"start",className:"w-80 p-0",onOpenAutoFocus:md,children:o.jsxs("div",{className:"flex flex-col",children:[L,rt,Xe]})}),e[74]=L,e[75]=rt,e[76]=Xe,e[77]=st):st=e[77];let yt;return e[78]!==A||e[79]!==F||e[80]!==Y||e[81]!==ie||e[82]!==st?(yt=o.jsxs(A,{open:F,onOpenChange:Y,children:[ie,st]}),e[78]=A,e[79]=F,e[80]=Y,e[81]=ie,e[82]=st,e[83]=yt):yt=e[83],yt}function md(t){return t.preventDefault()}function _d(t){const e=z.c(27),{selectedColor:s,onColorChange:i}=t,[r,n]=B.useState(!1);let a,l,h,c,d,u,f;if(e[0]!==r||e[1]!==s){const b=Qo(s);l=hs,u=r,f=n,a=ls,d=!0,h="button",c=Z("h-6 w-6 rounded-full shrink-0 ring-2 ring-offset-2 ring-offset-background transition-all cursor-pointer hover:scale-110",b.dot,"ring-foreground/20"),e[0]=r,e[1]=s,e[2]=a,e[3]=l,e[4]=h,e[5]=c,e[6]=d,e[7]=u,e[8]=f}else a=e[2],l=e[3],h=e[4],c=e[5],d=e[6],u=e[7],f=e[8];let m;e[9]!==h||e[10]!==c?(m=o.jsx("button",{type:h,className:c,title:"Change color"}),e[9]=h,e[10]=c,e[11]=m):m=e[11];let _;e[12]!==a||e[13]!==d||e[14]!==m?(_=o.jsx(a,{asChild:d,children:m}),e[12]=a,e[13]=d,e[14]=m,e[15]=_):_=e[15];let p;e[16]!==i||e[17]!==s?(p=jc.map(b=>o.jsx("button",{type:"button",onClick:()=>{i(b.name),n(!1)},className:Z("h-5 w-5 rounded-full transition-all shrink-0 cursor-pointer",b.dot,s===b.name?"ring-2 ring-offset-1 ring-offset-background ring-foreground/30 scale-110":"hover:scale-110"),title:b.name},b.name)),e[16]=i,e[17]=s,e[18]=p):p=e[18];let g;e[19]!==p?(g=o.jsx(cs,{align:"start",side:"right",sideOffset:8,className:"w-auto p-2",onOpenAutoFocus:pd,children:o.jsx("div",{className:"grid grid-cols-4 gap-1",children:p})}),e[19]=p,e[20]=g):g=e[20];let x;return e[21]!==l||e[22]!==u||e[23]!==f||e[24]!==_||e[25]!==g?(x=o.jsxs(l,{open:u,onOpenChange:f,children:[_,g]}),e[21]=l,e[22]=u,e[23]=f,e[24]=_,e[25]=g,e[26]=x):x=e[26],x}function pd(t){return t.preventDefault()}function gd(t){const e=z.c(44),{search:s,onSearchChange:i,selectedColor:r,onColorChange:n,onSelectIcon:a,onRandom:l,currentIconName:h}=t;let c,d,u,f,m,_,p;if(e[0]!==h||e[1]!==n||e[2]!==l||e[3]!==i||e[4]!==a||e[5]!==s||e[6]!==r){const v=en(),y=Qo(r);d=s.trim()?v.filter(M=>{const w=ar(M),R=s.toLowerCase();return w.includes(R)||M.toLowerCase().includes(R)}):v,_="flex flex-col";let k;e[14]===Symbol.for("react.memo_cache_sentinel")?(k=o.jsx(Na,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[14]=k):k=e[14];let N;e[15]!==i?(N=M=>i(M.target.value),e[15]=i,e[16]=N):N=e[16];let j;e[17]!==s||e[18]!==N?(j=o.jsxs("div",{className:"relative flex-1",children:[k,o.jsx(qt,{value:s,onChange:N,placeholder:"Filter...",className:"h-8 text-xs pl-7"})]}),e[17]=s,e[18]=N,e[19]=j):j=e[19];let T;e[20]===Symbol.for("react.memo_cache_sentinel")?(T=o.jsx(Nc,{size:14,className:"text-muted-foreground"}),e[20]=T):T=e[20];let I;e[21]!==l?(I=o.jsx("button",{type:"button",onClick:l,className:"h-8 w-8 flex items-center justify-center rounded-md border border-border hover:bg-accent transition-colors shrink-0",title:"Random icon",children:T}),e[21]=l,e[22]=I):I=e[22];let D;e[23]!==n||e[24]!==r?(D=o.jsx(_d,{selectedColor:r,onColorChange:n}),e[23]=n,e[24]=r,e[25]=D):D=e[25],e[26]!==I||e[27]!==D||e[28]!==j?(p=o.jsxs("div",{className:"flex items-center gap-2 px-3 py-2",children:[j,I,D]}),e[26]=I,e[27]=D,e[28]=j,e[29]=p):p=e[29],c=ka,m="h-56",u="grid grid-cols-9 gap-0.5 px-2 pb-2",f=d.map(M=>{const w=yi(M);return w?o.jsx("button",{type:"button",onClick:()=>a(M),className:Z("h-8 w-8 flex items-center justify-center rounded-md transition-colors cursor-pointer",h===M?Z(y.bg,y.text):Z(y.text,"hover:bg-accent")),title:M,children:o.jsx(w,{size:18})},M):null}),e[0]=h,e[1]=n,e[2]=l,e[3]=i,e[4]=a,e[5]=s,e[6]=r,e[7]=c,e[8]=d,e[9]=u,e[10]=f,e[11]=m,e[12]=_,e[13]=p}else c=e[7],d=e[8],u=e[9],f=e[10],m=e[11],_=e[12],p=e[13];let g;e[30]!==u||e[31]!==f?(g=o.jsx("div",{className:u,children:f}),e[30]=u,e[31]=f,e[32]=g):g=e[32];let x;e[33]!==d.length?(x=d.length===0&&o.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"No icons found"}),e[33]=d.length,e[34]=x):x=e[34];let b;e[35]!==c||e[36]!==m||e[37]!==g||e[38]!==x?(b=o.jsxs(c,{className:m,children:[g,x]}),e[35]=c,e[36]=m,e[37]=g,e[38]=x,e[39]=b):b=e[39];let S;return e[40]!==_||e[41]!==p||e[42]!==b?(S=o.jsxs("div",{className:_,children:[p,b]}),e[40]=_,e[41]=p,e[42]=b,e[43]=S):S=e[43],S}function vd(t){const e=z.c(27),{onUpload:s}=t,i=B.useRef(null);let r;e[0]!==s?(r=k=>{const N=k.target.files?.[0];if(!N)return;if(N.size>2097152){fe.error("Image must be smaller than 2MB"),k.target.value="";return}const j=new FileReader;j.onerror=()=>{fe.error("Failed to read image file"),i.current&&(i.current.value="")},j.onloadend=()=>{j.readyState===FileReader.DONE&&j.result&&s(j.result),i.current&&(i.current.value="")},j.readAsDataURL(N)},e[0]=s,e[1]=r):r=e[1];const n=r,[a,l]=B.useState("");let h;e[2]!==s||e[3]!==a?(h=()=>{const k=a.trim();k&&(s(k),l(""))},e[2]=s,e[3]=a,e[4]=h):h=e[4];const c=h;let d;e[5]!==n?(d=o.jsx("input",{type:"file",ref:i,className:"hidden",accept:"image/*",onChange:n}),e[5]=n,e[6]=d):d=e[6];let u;e[7]===Symbol.for("react.memo_cache_sentinel")?(u=()=>i.current?.click(),e[7]=u):u=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=o.jsxs("button",{type:"button",onClick:u,className:"h-24 rounded-lg border-2 border-dashed border-border hover:border-foreground/50 hover:bg-accent/50 transition-colors flex flex-col items-center justify-center gap-2 text-muted-foreground hover:text-foreground",children:[o.jsx(ac,{size:20}),o.jsx("span",{className:"text-xs",children:"Click to upload an image (max 2MB)"})]}),e[8]=f):f=e[8];let m;e[9]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx("span",{className:"text-xs text-muted-foreground",children:"or"}),o.jsx("div",{className:"flex-1 h-px bg-border"})]}),e[9]=m):m=e[9];let _;e[10]===Symbol.for("react.memo_cache_sentinel")?(_=k=>l(k.target.value),e[10]=_):_=e[10];let p;e[11]!==c?(p=k=>{k.key==="Enter"&&(k.preventDefault(),c())},e[11]=c,e[12]=p):p=e[12];let g;e[13]!==a||e[14]!==p?(g=o.jsx(qt,{value:a,onChange:_,placeholder:"Paste image URL...",className:"h-8 text-xs flex-1",onKeyDown:p}),e[13]=a,e[14]=p,e[15]=g):g=e[15];let x;e[16]!==a?(x=a.trim(),e[16]=a,e[17]=x):x=e[17];const b=!x;let S;e[18]!==c||e[19]!==b?(S=o.jsx(se,{variant:"outline",size:"sm",className:"h-8 px-3 text-xs shrink-0",onClick:c,disabled:b,children:"Apply"}),e[18]=c,e[19]=b,e[20]=S):S=e[20];let v;e[21]!==S||e[22]!==g?(v=o.jsxs("div",{className:"flex items-center gap-1.5",children:[g,S]}),e[21]=S,e[22]=g,e[23]=v):v=e[23];let y;return e[24]!==v||e[25]!==d?(y=o.jsxs("div",{className:"flex flex-col gap-3 p-4",children:[d,f,m,v]}),e[24]=v,e[25]=d,e[26]=y):y=e[26],y}function xd(t){const e=z.c(5),{value:s}=t;let i;if(e[0]!==s){i=Symbol.for("react.early_return_sentinel");e:{const n=Si(s);if(n.type==="icon"){const a=yi(n.name);if(a){let l;e[2]!==a?(l=o.jsx(a,{size:16,className:"text-muted-foreground"}),e[2]=a,e[3]=l):l=e[3],i=l;break e}}}e[0]=s,e[1]=i}else i=e[1];if(i!==Symbol.for("react.early_return_sentinel"))return i;let r;return e[4]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx(lh,{size:16,className:"text-muted-foreground"}),e[4]=r):r=e[4],r}function bd(t){const e=z.c(66),{value:s,onChange:i,className:r,disabled:n}=t,[a,l]=B.useState(!1),[h,c]=B.useState("");let d;e[0]!==s?(d=Si(s),e[0]=s,e[1]=d):d=e[1];const u=d,f=u.type==="icon"?u.name:null;let m,_,p,g,x,b,S,v,y,k,N,j,T,I,D;if(e[2]!==r||e[3]!==f||e[4]!==n||e[5]!==i||e[6]!==a||e[7]!==h||e[8]!==s){const A=en();g=h.trim()?A.filter(G=>{const H=h.toLowerCase();return ar(G).includes(H)||G.toLowerCase().includes(H)}):A,p=hs,x=n?!1:a,b=l;const $=n?"cursor-default opacity-50":"cursor-pointer hover:bg-accent";let K;e[24]!==r||e[25]!==$?(K=Z("size-7 shrink-0 rounded-md transition-colors flex items-center justify-center",$,r),e[24]=r,e[25]=$,e[26]=K):K=e[26];let q;e[27]!==s?(q=o.jsx(xd,{value:s}),e[27]=s,e[28]=q):q=e[28],e[29]!==n||e[30]!==K||e[31]!==q?(S=o.jsx(ls,{asChild:!0,children:o.jsx("button",{type:"button",disabled:n,className:K,children:q})}),e[29]=n,e[30]=K,e[31]=q,e[32]=S):S=e[32],_=cs,T="start",I="w-64 p-0",D=Sd,N="flex flex-col";let F;e[33]===Symbol.for("react.memo_cache_sentinel")?(F=o.jsx(Na,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground pointer-events-none"}),e[33]=F):F=e[33];let Y;e[34]===Symbol.for("react.memo_cache_sentinel")?(Y=G=>c(G.target.value),e[34]=Y):Y=e[34],e[35]!==h?(j=o.jsx("div",{className:"px-2 py-2",children:o.jsxs("div",{className:"relative",children:[F,o.jsx(qt,{value:h,onChange:Y,placeholder:"Filter...",className:"h-7 text-xs pl-7"})]})}),e[35]=h,e[36]=j):j=e[36],m=ka,k="h-48",v="grid grid-cols-8 gap-0.5 px-2 pb-2";let J;e[37]!==f||e[38]!==i?(J=G=>{const H=yi(G);return H?o.jsx("button",{type:"button",onClick:()=>{i(`icon://${G}`),l(!1)},className:Z("h-7 w-7 flex items-center justify-center rounded-md transition-colors cursor-pointer",f===G?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent hover:text-foreground"),title:ar(G),children:o.jsx(H,{size:16})},G):null},e[37]=f,e[38]=i,e[39]=J):J=e[39],y=g.map(J),e[2]=r,e[3]=f,e[4]=n,e[5]=i,e[6]=a,e[7]=h,e[8]=s,e[9]=m,e[10]=_,e[11]=p,e[12]=g,e[13]=x,e[14]=b,e[15]=S,e[16]=v,e[17]=y,e[18]=k,e[19]=N,e[20]=j,e[21]=T,e[22]=I,e[23]=D}else m=e[9],_=e[10],p=e[11],g=e[12],x=e[13],b=e[14],S=e[15],v=e[16],y=e[17],k=e[18],N=e[19],j=e[20],T=e[21],I=e[22],D=e[23];let M;e[40]!==v||e[41]!==y?(M=o.jsx("div",{className:v,children:y}),e[40]=v,e[41]=y,e[42]=M):M=e[42];let w;e[43]!==g.length?(w=g.length===0&&o.jsx("div",{className:"flex items-center justify-center py-6 text-xs text-muted-foreground",children:"No icons found"}),e[43]=g.length,e[44]=w):w=e[44];let R;e[45]!==m||e[46]!==M||e[47]!==w||e[48]!==k?(R=o.jsxs(m,{className:k,children:[M,w]}),e[45]=m,e[46]=M,e[47]=w,e[48]=k,e[49]=R):R=e[49];let E;e[50]!==R||e[51]!==N||e[52]!==j?(E=o.jsxs("div",{className:N,children:[j,R]}),e[50]=R,e[51]=N,e[52]=j,e[53]=E):E=e[53];let C;e[54]!==_||e[55]!==E||e[56]!==T||e[57]!==I||e[58]!==D?(C=o.jsx(_,{align:T,className:I,onOpenAutoFocus:D,children:E}),e[54]=_,e[55]=E,e[56]=T,e[57]=I,e[58]=D,e[59]=C):C=e[59];let P;return e[60]!==p||e[61]!==x||e[62]!==b||e[63]!==S||e[64]!==C?(P=o.jsxs(p,{open:x,onOpenChange:b,children:[S,C]}),e[60]=p,e[61]=x,e[62]=b,e[63]=S,e[64]=C,e[65]=P):P=e[65],P}function Sd(t){return t.preventDefault()}function oi(){const t=z.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx("div",{className:"flex items-center justify-center h-32",children:o.jsx($e,{className:"animate-spin text-muted-foreground",size:24})}),t[0]=e):e=t[0],e}function Fi(t){return({error:e})=>e?.message?.includes("Method not found")||e?.code===-32601?o.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:o.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:t})}):o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center h-full p-6 text-center space-y-4",children:[o.jsx("div",{className:"bg-destructive/10 p-3 rounded-full",children:o.jsx(nr,{className:"h-6 w-6 text-destructive"})}),o.jsxs("div",{className:"space-y-2",children:[o.jsx("h3",{className:"text-lg font-medium",children:"Something went wrong"}),o.jsx("p",{className:"text-sm text-muted-foreground max-w-xs mx-auto",children:e?.message?e.message.length>200?`${e.message.slice(0,200)}...`:e.message:"An unexpected error occurred"})]})]})}function yd(t){const e=z.c(23),{item:s,isSelected:i,onToggle:r,disabled:n}=t,a=n?"cursor-not-allowed opacity-50":"cursor-pointer",l=i?"bg-accent/25":"hover:bg-muted/50";let h;e[0]!==a||e[1]!==l?(h=Z("flex items-start gap-3 p-4 rounded-lg transition-colors",a,l),e[0]=a,e[1]=l,e[2]=h):h=e[2];let c;e[3]!==s.name?(c=o.jsx("p",{className:"text-sm font-medium leading-none truncate",children:s.name}),e[3]=s.name,e[4]=c):c=e[4];let d;e[5]!==s.tags?(d=s.tags&&o.jsx("span",{className:"shrink-0",children:s.tags}),e[5]=s.tags,e[6]=d):d=e[6];let u;e[7]!==c||e[8]!==d?(u=o.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[c,d]}),e[7]=c,e[8]=d,e[9]=u):u=e[9];let f;e[10]!==s.description?(f=s.description&&o.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:s.description}),e[10]=s.description,e[11]=f):f=e[11];let m;e[12]!==u||e[13]!==f?(m=o.jsxs("div",{className:"flex-1 min-w-0 space-y-2",children:[u,f]}),e[12]=u,e[13]=f,e[14]=m):m=e[14];let _;e[15]!==n||e[16]!==i||e[17]!==r?(_=o.jsx(hh,{checked:i,onCheckedChange:r,disabled:n,className:"mt-0.5"}),e[15]=n,e[16]=i,e[17]=r,e[18]=_):_=e[18];let p;return e[19]!==h||e[20]!==m||e[21]!==_?(p=o.jsxs("label",{className:h,children:[m,_]}),e[19]=h,e[20]=m,e[21]=_,e[22]=p):p=e[22],p}function an(t){const e=z.c(13),{items:s,selections:i,onToggle:r,emptyMessage:n,disabled:a}=t;let l,h,c;if(e[0]!==a||e[1]!==n||e[2]!==s||e[3]!==r||e[4]!==i){c=Symbol.for("react.early_return_sentinel");e:{const u=s.map(wd);if(s.length===0){let f;e[8]!==n?(f=o.jsx("div",{className:"flex-1 overflow-auto px-4 py-3 space-y-1",children:o.jsx("div",{className:"flex items-center justify-center h-32 text-sm text-muted-foreground",children:n})}),e[8]=n,e[9]=f):f=e[9],c=f;break e}l="flex-1 overflow-auto px-4 py-3 space-y-1",h=s.map(f=>o.jsx(yd,{item:f,isSelected:i===null||i?.includes(f.id),onToggle:()=>r(f.id,u),disabled:a},f.id))}e[0]=a,e[1]=n,e[2]=s,e[3]=r,e[4]=i,e[5]=l,e[6]=h,e[7]=c}else l=e[5],h=e[6],c=e[7];if(c!==Symbol.for("react.early_return_sentinel"))return c;let d;return e[10]!==l||e[11]!==h?(d=o.jsx("div",{className:l,children:h}),e[10]=l,e[11]=h,e[12]=d):d=e[12],d}function wd(t){return t.id}function Cd(t){const e=z.c(13),{connectionId:s,selections:i,onToggle:r,disabled:n}=t,{org:a}=ge();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=He(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=Ac(c);let u;e[6]!==d.tools?(u=d.tools.map(kd),e[6]=d.tools,e[7]=u):u=e[7];const f=u;let m;return e[8]!==n||e[9]!==f||e[10]!==r||e[11]!==i?(m=o.jsx(an,{items:f,selections:i,onToggle:r,emptyMessage:"No tools available",disabled:n}),e[8]=n,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function kd(t){return{id:t.name,name:t.name,description:t.description,tags:o.jsx(th,{annotations:t.annotations,_meta:t._meta})}}function Nd(t){const e=z.c(13),{connectionId:s,selections:i,onToggle:r,disabled:n}=t,{org:a}=ge();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=He(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=Zc(c);let u;e[6]!==d.resources?(u=d.resources.map(jd),e[6]=d.resources,e[7]=u):u=e[7];const f=u;let m;return e[8]!==n||e[9]!==f||e[10]!==r||e[11]!==i?(m=o.jsx(an,{items:f,selections:i,onToggle:r,emptyMessage:"No resources available",disabled:n}),e[8]=n,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function jd(t){return{id:t.name||t.uri,name:t.name||t.uri,description:t.description}}function Ed(t){const e=z.c(13),{connectionId:s,selections:i,onToggle:r,disabled:n}=t,{org:a}=ge();let l;e[0]!==s||e[1]!==a.id||e[2]!==a.slug?(l={connectionId:s,orgId:a.id,orgSlug:a.slug},e[0]=s,e[1]=a.id,e[2]=a.slug,e[3]=l):l=e[3];const h=He(l);let c;e[4]!==h?(c={client:h},e[4]=h,e[5]=c):c=e[5];const{data:d}=dh(c);let u;e[6]!==d.prompts?(u=d.prompts.map(Td),e[6]=d.prompts,e[7]=u):u=e[7];const f=u;let m;return e[8]!==n||e[9]!==f||e[10]!==r||e[11]!==i?(m=o.jsx(an,{items:f,selections:i,onToggle:r,emptyMessage:"No prompts available",disabled:n}),e[8]=n,e[9]=f,e[10]=r,e[11]=i,e[12]=m):m=e[12],m}function Td(t){return{id:t.name,name:t.name,description:t.description}}function Rd(t){const e=z.c(54),{currentConnection:s,activeTab:i,selectedId:r,formData:n,toggleTool:a,toggleResource:l,togglePrompt:h,toggleAllTools:c,toggleAllResources:d,toggleAllPrompts:u,onTabChange:f}=t,m=n[r],_=i==="tools"?m?.tools===null:i==="resources"?m?.resources===null:m?.prompts===null;let p;e[0]!==i||e[1]!==r||e[2]!==u||e[3]!==d||e[4]!==c?(p=()=>{i==="tools"?c(r):i==="resources"?d(r):u(r)},e[0]=i,e[1]=r,e[2]=u,e[3]=d,e[4]=c,e[5]=p):p=e[5];const g=p;let x;e[6]!==s.icon||e[7]!==s.title?(x=o.jsx(Kt,{icon:s.icon,name:s.title,size:"sm",className:"shrink-0"}),e[6]=s.icon,e[7]=s.title,e[8]=x):x=e[8];let b;e[9]!==s.title?(b=o.jsx("h2",{className:"text-base font-semibold truncate",children:s.title}),e[9]=s.title,e[10]=b):b=e[10];let S;e[11]!==s.description?(S=s.description&&o.jsx("p",{className:"text-xs text-muted-foreground truncate",children:s.description}),e[11]=s.description,e[12]=S):S=e[12];let v;e[13]!==b||e[14]!==S?(v=o.jsxs("div",{className:"flex-1 min-w-0",children:[b,S]}),e[13]=b,e[14]=S,e[15]=v):v=e[15];let y;e[16]!==x||e[17]!==v?(y=o.jsx("div",{className:"px-6 pt-5 pb-4 shrink-0",children:o.jsxs("div",{className:"flex items-center gap-3",children:[x,v]})}),e[16]=x,e[17]=v,e[18]=y):y=e[18];let k;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=[{id:"tools",label:"Tools"},{id:"resources",label:"Resources"},{id:"prompts",label:"Prompts"}],e[19]=k):k=e[19];let N;e[20]!==f?(N=P=>f(P),e[20]=f,e[21]=N):N=e[21];let j;e[22]!==i||e[23]!==N?(j=o.jsx(ch,{tabs:k,activeTab:i,onTabChange:N}),e[22]=i,e[23]=N,e[24]=j):j=e[24];const T=_?"Deselect all":"Select all";let I;e[25]!==g||e[26]!==T?(I=o.jsx("button",{type:"button",onClick:g,className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:T}),e[25]=g,e[26]=T,e[27]=I):I=e[27];let D;e[28]!==I||e[29]!==j?(D=o.jsxs("div",{className:"flex items-center justify-between px-6 py-3 border-t border-border shrink-0",children:[j,I]}),e[28]=I,e[29]=j,e[30]=D):D=e[30];let M;e[31]!==i||e[32]!==n||e[33]!==r||e[34]!==a?(M=i==="tools"&&o.jsx(Tt,{fallback:Fi("Tools not supported by this server"),children:o.jsx(B.Suspense,{fallback:o.jsx(oi,{}),children:o.jsx(Cd,{connectionId:r,selections:n[r]?n[r].tools:[],onToggle:(P,A)=>a(r,P,A)})})}),e[31]=i,e[32]=n,e[33]=r,e[34]=a,e[35]=M):M=e[35];let w;e[36]!==i||e[37]!==n||e[38]!==r||e[39]!==l?(w=i==="resources"&&o.jsx(Tt,{fallback:Fi("Resources not supported by this server"),children:o.jsx(B.Suspense,{fallback:o.jsx(oi,{}),children:o.jsx(Nd,{connectionId:r,selections:n[r]?n[r].resources:[],onToggle:(P,A)=>l(r,P,A)})})}),e[36]=i,e[37]=n,e[38]=r,e[39]=l,e[40]=w):w=e[40];let R;e[41]!==i||e[42]!==n||e[43]!==r||e[44]!==h?(R=i==="prompts"&&o.jsx(Tt,{fallback:Fi("Prompts not supported by this server"),children:o.jsx(B.Suspense,{fallback:o.jsx(oi,{}),children:o.jsx(Ed,{connectionId:r,selections:n[r]?n[r].prompts:[],onToggle:(P,A)=>h(r,P,A)})})}),e[41]=i,e[42]=n,e[43]=r,e[44]=h,e[45]=R):R=e[45];let E;e[46]!==M||e[47]!==w||e[48]!==R?(E=o.jsxs("div",{className:"flex-1 overflow-hidden flex flex-col",children:[M,w,R]}),e[46]=M,e[47]=w,e[48]=R,e[49]=E):E=e[49];let C;return e[50]!==D||e[51]!==E||e[52]!==y?(C=o.jsxs(o.Fragment,{children:[y,D,E]}),e[50]=D,e[51]=E,e[52]=y,e[53]=C):C=e[53],C}function Dd(t){const e=z.c(11),{connectionId:s,onAuthenticate:i,children:r}=t;let n;e[0]!==s?(n={connectionId:s},e[0]=s,e[1]=n):n=e[1];const a=da(n);if(a.supportsOAuth&&!a.isAuthenticated){let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex items-center justify-center size-12 rounded-full bg-muted",children:o.jsx(Ec,{size:22,className:"text-muted-foreground"})}),e[2]=c):c=e[2];let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsxs("div",{className:"space-y-1",children:[o.jsx("p",{className:"text-sm font-medium",children:"Authorization required"}),o.jsx("p",{className:"text-xs text-muted-foreground max-w-xs",children:"This connection needs to be authorized before you can configure its tools and resources."})]}),e[3]=d):d=e[3];let u;e[4]!==s||e[5]!==i?(u=i&&o.jsx(se,{variant:"outline",size:"sm",onClick:()=>i(s),children:"Authorize"}),e[4]=s,e[5]=i,e[6]=u):u=e[6];let f;return e[7]!==u?(f=o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-4 p-8 text-center",children:[c,d,u]}),e[7]=u,e[8]=f):f=e[8],f}let h;return e[9]!==r?(h=o.jsx(o.Fragment,{children:r}),e[9]=r,e[10]=h):h=e[10],h}function Md(t){const e={};for(const s of t)e[s.connection_id]={tools:s.selected_tools,resources:s.selected_resources??null,prompts:s.selected_prompts??null};return e}function Bn(t){return Object.entries(t).map(([e,s])=>({connection_id:e,selected_tools:s.tools,selected_resources:s.resources,selected_prompts:s.prompts}))}function Ad(t,e){return e.type==="SET_ACTIVE_TAB"?{...t,activeTab:e.payload}:t}function Id(t){const e=z.c(49),{open:s,onOpenChange:i,selectedId:r,form:n,connections:a,onAuthenticate:l}=t;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h={activeTab:"tools"},e[0]=h):h=e[0];const[c,d]=B.useReducer(Ad,h),u=rn(r??"");let f;e[1]!==a?(f=a??[],e[1]=a,e[2]=f):f=e[2];let m;e[3]!==f?(m=Md(f),e[3]=f,e[4]=m):m=e[4];const _=m;let p;e[5]!==n||e[6]!==_?(p=(F,Y,J,G)=>{const H=_[F]?.[Y];let Q;H===null?Q=G.filter(L=>L!==J):H?.includes(J)?Q=H.filter(L=>L!==J):(Q=[...H??[],J],Q.length===G.length&&(Q=null));const ie={..._};ie[F]?ie[F]={...ie[F]}:ie[F]={tools:null,resources:null,prompts:null},ie[F][Y]=Q,n.setValue("connections",Bn(ie),{shouldDirty:!0,shouldTouch:!0})},e[5]=n,e[6]=_,e[7]=p):p=e[7];const g=p;let x;e[8]!==n||e[9]!==_?(x=(F,Y)=>{const G=_[F]?.[Y]===null?[]:null,H={..._};H[F]?H[F]={...H[F]}:H[F]={tools:null,resources:null,prompts:null},H[F][Y]=G,n.setValue("connections",Bn(H),{shouldDirty:!0,shouldTouch:!0})},e[8]=n,e[9]=_,e[10]=x):x=e[10];const b=x;let S;e[11]!==g?(S=(F,Y,J)=>g(F,"tools",Y,J),e[11]=g,e[12]=S):S=e[12];const v=S;let y;e[13]!==g?(y=(F,Y,J)=>g(F,"resources",Y,J),e[13]=g,e[14]=y):y=e[14];const k=y;let N;e[15]!==g?(N=(F,Y,J)=>g(F,"prompts",Y,J),e[15]=g,e[16]=N):N=e[16];const j=N;let T;e[17]!==b?(T=F=>b(F,"tools"),e[17]=b,e[18]=T):T=e[18];const I=T;let D;e[19]!==b?(D=F=>b(F,"resources"),e[19]=b,e[20]=D):D=e[20];const M=D;let w;e[21]!==b?(w=F=>b(F,"prompts"),e[21]=b,e[22]=w):w=e[22];const R=w;if(!r||!u)return null;let E;e[23]===Symbol.for("react.memo_cache_sentinel")?(E=o.jsx(oi,{}),e[23]=E):E=e[23];let C;e[24]===Symbol.for("react.memo_cache_sentinel")?(C=F=>d({type:"SET_ACTIVE_TAB",payload:F}),e[24]=C):C=e[24];let P;e[25]!==u||e[26]!==c.activeTab||e[27]!==_||e[28]!==r||e[29]!==R||e[30]!==M||e[31]!==I||e[32]!==j||e[33]!==k||e[34]!==v?(P=o.jsx(Rd,{currentConnection:u,activeTab:c.activeTab,selectedId:r,formData:_,toggleTool:v,toggleResource:k,togglePrompt:j,toggleAllTools:I,toggleAllResources:M,toggleAllPrompts:R,onTabChange:C},r),e[25]=u,e[26]=c.activeTab,e[27]=_,e[28]=r,e[29]=R,e[30]=M,e[31]=I,e[32]=j,e[33]=k,e[34]=v,e[35]=P):P=e[35];let A;e[36]!==l||e[37]!==r||e[38]!==P?(A=o.jsx(B.Suspense,{fallback:E,children:o.jsx(Dd,{connectionId:r,onAuthenticate:l,children:P})}),e[36]=l,e[37]=r,e[38]=P,e[39]=A):A=e[39];let $;e[40]!==i?($=o.jsx(rh,{className:"px-6 py-4 border-t border-border shrink-0",children:o.jsx(se,{variant:"outline",onClick:()=>i(!1),children:"Done"})}),e[40]=i,e[41]=$):$=e[41];let K;e[42]!==A||e[43]!==$?(K=o.jsxs(nn,{className:"sm:max-w-2xl h-[75vh] max-h-[75vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[A,$]}),e[42]=A,e[43]=$,e[44]=K):K=e[44];let q;return e[45]!==i||e[46]!==s||e[47]!==K?(q=o.jsx(on,{open:s,onOpenChange:i,children:K}),e[45]=i,e[46]=s,e[47]=K,e[48]=q):q=e[48],q}const Hi={tools:null,resources:null,prompts:null},Pd=Ll.pick({status:!0,title:!0,description:!0,icon:!0,metadata:!0,connections:!0});function Bd(t){const s=new TextEncoder().encode(t),i=Array.from(s,r=>String.fromCharCode(r)).join("");return btoa(i)}function Ld(t){const e=z.c(11),{url:s,agentId:i}=t,[r,n]=B.useState(!1);let a;e[0]!==i||e[1]!==s?(a=async()=>{be("agent_connect_action",{agent_id:i,action:"copy_url"}),await navigator.clipboard.writeText(s),n(!0),fe.success("Agent URL copied to clipboard"),setTimeout(()=>n(!1),2e3)},e[0]=i,e[1]=s,e[2]=a):a=e[2];const l=a;let h;e[3]!==r?(h=r?o.jsx(Ci,{size:20,className:"text-green-600"}):o.jsx(Zr,{size:20}),e[3]=r,e[4]=h):h=e[4];const c=r?"Copied!":"Copy URL";let d;e[5]!==c?(d=o.jsx("span",{className:"text-xs font-medium",children:c}),e[5]=c,e[6]=d):d=e[6];let u;return e[7]!==l||e[8]!==h||e[9]!==d?(u=o.jsxs(se,{type:"button",variant:"outline",onClick:l,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[h,d]}),e[7]=l,e[8]=h,e[9]=d,e[10]=u):u=e[10],u}function Od(t){const e=z.c(8),{url:s,serverName:i,agentId:r}=t;let n;e[0]!==r||e[1]!==i||e[2]!==s?(n=()=>{be("agent_connect_action",{agent_id:r,action:"install_cursor"});const d=ua(i),f=Bd(JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Cursor"}},null,2)),m=`cursor://anysphere.cursor-deeplink/mcp/install?name=${encodeURIComponent(d)}&config=${encodeURIComponent(f)}`;window.open(m,"_blank"),fe.success("Opening Cursor...")},e[0]=r,e[1]=i,e[2]=s,e[3]=n):n=e[3];const a=n;let l,h;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=o.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(11%) sepia(8%) saturate(785%) hue-rotate(1deg) brightness(95%) contrast(89%)"}}),h=o.jsx("span",{className:"text-xs font-medium",children:"Install on Cursor"}),e[4]=l,e[5]=h):(l=e[4],h=e[5]);let c;return e[6]!==a?(c=o.jsxs(se,{type:"button",variant:"outline",onClick:a,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[l,h]}),e[6]=a,e[7]=c):c=e[7],c}function zd(t){const e=z.c(12),{url:s,serverName:i,agentId:r}=t,[n,a]=B.useState(!1);let l;e[0]!==r||e[1]!==i||e[2]!==s?(l=async()=>{be("agent_connect_action",{agent_id:r,action:"install_claude_code"});const m=ua(i),p=JSON.stringify({type:"http",url:s,headers:{"x-mesh-client":"Claude Code"}},null,2),g=`claude mcp add-json "${m}" '${p.replace(/'/g,"'\\''")}' --scope user`;await navigator.clipboard.writeText(g),a(!0),fe.success("Claude Code command copied to clipboard"),setTimeout(()=>a(!1),2e3)},e[0]=r,e[1]=i,e[2]=s,e[3]=l):l=e[3];const h=l;let c;e[4]!==n?(c=n?o.jsx(Ci,{size:20,className:"text-green-600"}):o.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude Code",className:"h-5 w-5",style:{filter:"brightness(0) saturate(100%) invert(55%) sepia(31%) saturate(1264%) hue-rotate(331deg) brightness(92%) contrast(86%)"}}),e[4]=n,e[5]=c):c=e[5];const d=n?"Copied!":"Install on Claude Code";let u;e[6]!==d?(u=o.jsx("span",{className:"text-xs font-medium",children:d}),e[6]=d,e[7]=u):u=e[7];let f;return e[8]!==h||e[9]!==c||e[10]!==u?(f=o.jsxs(se,{type:"button",variant:"outline",onClick:h,className:"h-auto py-3 px-4 flex flex-col items-center gap-2",children:[c,u]}),e[8]=h,e[9]=c,e[10]=u,e[11]=f):f=e[11],f}function $d({virtualMcp:t}){const{org:e}=ge(),s=He({connectionId:Vt,orgId:e.id,orgSlug:e.slug}),[i,r]=B.useState(null),[n,a]=B.useState(!1),[l,h]=B.useState(!1),c=t.id,d=t.title||`agent-${c.slice(0,8)}`,u=i?`bunx @decocms/typegen@latest --mcp ${c} --key ${i} --output client.ts`:`bunx @decocms/typegen@latest --mcp ${c} --key <api-key> --output client.ts`,f=async()=>{a(!0);try{const p=(await s.callTool({name:"API_KEY_CREATE",arguments:{name:`typegen-${d}`,permissions:{[c]:["*"]}}})).structuredContent?.key;if(!p)throw new Error("No key in response");r(p),be("agent_typegen_key_generated",{agent_id:c})}catch{be("agent_typegen_key_failed",{agent_id:c}),fe.error("Failed to generate API key")}finally{a(!1)}},m=async()=>{be("agent_connect_action",{agent_id:c,action:"typegen_copy_command",has_api_key:!!i}),await navigator.clipboard.writeText(u),h(!0),fe.success("Command copied to clipboard"),setTimeout(()=>h(!1),2e3)};return o.jsxs("div",{className:"flex min-w-0 flex-col gap-3",children:[o.jsxs("div",{className:"flex items-start justify-between gap-3",children:[o.jsxs("div",{className:"flex flex-col gap-0.5",children:[o.jsx("h4",{className:"text-sm font-medium text-foreground",children:"Generate typed client"}),o.jsxs("p",{className:"text-xs text-muted-foreground",children:["Introspects this agent and writes a typed"," ",o.jsx("code",{className:"font-mono",children:"client.ts"})," you can import directly."]})]}),!i&&o.jsxs(se,{type:"button",variant:"outline",size:"sm",className:"shrink-0 gap-1.5",onClick:f,disabled:n,children:[n?o.jsx($e,{size:14,className:"animate-spin"}):o.jsx(ah,{size:14}),o.jsx("span",{children:n?"Generating…":"Generate API key"})]})]}),i&&o.jsx("p",{className:"rounded-md border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-700",children:"Store this key securely — it won't be shown again."}),o.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Generate client"}),o.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:o.jsxs("div",{className:"flex items-start gap-2",children:[o.jsx("code",{className:"min-w-0 flex-1 break-all font-mono text-xs text-muted-foreground",children:u}),o.jsx(se,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:m,children:l?o.jsx(Ci,{size:12,className:"text-green-600"}):o.jsx(Zr,{size:12})})]})}),o.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Runtime variables"}),o.jsx(Fd,{apiKey:i,agentId:c})]})}function Fd(t){const e=z.c(21),{apiKey:s,agentId:i}=t,[r,n]=B.useState(!1),a=window.location.origin,l=s?`MESH_API_KEY=${s}`:"MESH_API_KEY=<api-key>",h=`MESH_BASE_URL=${a}`,c=`${l}
4
+ ${h}`;let d;e[0]!==i||e[1]!==s||e[2]!==c?(d=async()=>{be("agent_connect_action",{agent_id:i,action:"typegen_copy_env",has_api_key:!!s}),await navigator.clipboard.writeText(c),n(!0),setTimeout(()=>n(!1),2e3)},e[0]=i,e[1]=s,e[2]=c,e[3]=d):d=e[3];const u=d,f=!s;let m;e[4]!==f?(m=Z({"opacity-50":f}),e[4]=f,e[5]=m):m=e[5];let _;e[6]!==l||e[7]!==m?(_=o.jsx("span",{className:m,children:l}),e[6]=l,e[7]=m,e[8]=_):_=e[8];let p,g;e[9]===Symbol.for("react.memo_cache_sentinel")?(p=o.jsx("br",{}),g=o.jsx("span",{children:h}),e[9]=p,e[10]=g):(p=e[9],g=e[10]);let x;e[11]!==_?(x=o.jsxs("code",{className:"min-w-0 flex-1 font-mono text-xs text-muted-foreground",children:[_,p,g]}),e[11]=_,e[12]=x):x=e[12];let b;e[13]!==r?(b=r?o.jsx(Ci,{size:12,className:"text-green-600"}):o.jsx(Zr,{size:12}),e[13]=r,e[14]=b):b=e[14];let S;e[15]!==u||e[16]!==b?(S=o.jsx(se,{type:"button",variant:"ghost",size:"icon",className:"size-6 shrink-0",onClick:u,children:b}),e[15]=u,e[16]=b,e[17]=S):S=e[17];let v;return e[18]!==x||e[19]!==S?(v=o.jsx("div",{className:"rounded-md border border-input bg-muted/50 px-3 py-2.5",children:o.jsxs("div",{className:"flex items-start gap-2",children:[x,S]})}),e[18]=x,e[19]=S,e[20]=v):v=e[20],v}function Hd(t){const e=z.c(3),{virtualMcp:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx("div",{className:"h-20 animate-pulse rounded-md bg-muted"}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=o.jsx(B.Suspense,{fallback:i,children:o.jsx($d,{virtualMcp:s})}),e[1]=s,e[2]=r):r=e[2],r}function Wd(t){const e=z.c(37),{open:s,onOpenChange:i,virtualMcp:r}=t,{org:n}=ge(),a=`/api/${n.slug}/mcp/virtual-mcp/${r.id}`;let l;e[0]!==a?(l=new URL(a,window.location.origin),e[0]=a,e[1]=l):l=e[1];const h=l;let c;e[2]!==r.id||e[3]!==r.title?(c=r.title||`agent-${r.id?.slice(0,8)??"default"}`,e[2]=r.id,e[3]=r.title,e[4]=c):c=e[4];const d=c,u=aa();let f;e[5]!==r.id||e[6]!==h.href?(f=o.jsx(Ld,{url:h.href,agentId:r.id}),e[5]=r.id,e[6]=h.href,e[7]=f):f=e[7];let m,_;e[8]!==d||e[9]!==r.id||e[10]!==h.href?(m=o.jsx(Od,{url:h.href,serverName:d,agentId:r.id}),_=o.jsx(zd,{url:h.href,serverName:d,agentId:r.id}),e[8]=d,e[9]=r.id,e[10]=h.href,e[11]=m,e[12]=_):(m=e[11],_=e[12]);let p;e[13]!==f||e[14]!==m||e[15]!==_?(p=o.jsx("div",{className:"flex flex-col gap-3 pt-2",children:o.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[f,m,_]})}),e[13]=f,e[14]=m,e[15]=_,e[16]=p):p=e[16];let g;e[17]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"border-t border-border"}),e[17]=g):g=e[17];let x;e[18]!==r?(x=o.jsx(Hd,{virtualMcp:r}),e[18]=r,e[19]=x):x=e[19];let b;e[20]!==p||e[21]!==x?(b=o.jsxs("div",{className:"flex flex-col gap-6",children:[p,g,x]}),e[20]=p,e[21]=x,e[22]=b):b=e[22];const S=b;if(u){let N;e[23]===Symbol.for("react.memo_cache_sentinel")?(N=o.jsx(mh,{className:"mt-4 mb-4 text-base font-semibold",children:"Connect"}),e[23]=N):N=e[23];let j;e[24]!==S?(j=o.jsx(_h,{children:o.jsxs("div",{className:"flex-1 overflow-y-auto px-4 pb-6 [touch-action:pan-y]",children:[N,S]})}),e[24]=S,e[25]=j):j=e[25];let T;return e[26]!==i||e[27]!==s||e[28]!==j?(T=o.jsx(ph,{open:s,onOpenChange:i,children:j}),e[26]=i,e[27]=s,e[28]=j,e[29]=T):T=e[29],T}let v;e[30]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx(Sa,{children:o.jsx(ya,{children:"Connect"})}),e[30]=v):v=e[30];let y;e[31]!==S?(y=o.jsxs(nn,{className:"max-h-[80vh] overflow-y-auto sm:max-w-2xl",children:[v,S]}),e[31]=S,e[32]=y):y=e[32];let k;return e[33]!==i||e[34]!==s||e[35]!==y?(k=o.jsx(on,{open:s,onOpenChange:i,children:y}),e[33]=i,e[34]=s,e[35]=y,e[36]=k):k=e[36],k}function Ud(t){const e=z.c(12),{repo:s,className:i}=t;let r;e[0]!==i?(r=Z("space-y-2",i),e[0]=i,e[1]=r):r=e[1];let n;e[2]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx(Bt,{children:"Repository"}),e[2]=n):n=e[2];let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(eh,{size:20,className:"shrink-0 text-foreground/60"}),e[3]=a):a=e[3];let l;e[4]!==s?(l=o.jsx(Te,{asChild:!0,children:o.jsxs("div",{className:"flex items-center gap-3 rounded-lg border border-border bg-background px-4 py-3",tabIndex:0,children:[a,o.jsx("div",{className:"min-w-0 flex-1",children:s?o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"truncate text-sm font-medium",children:[s.owner,"/",s.name]}),o.jsx("div",{className:"truncate text-xs text-muted-foreground",children:s.url})]}):o.jsx("div",{className:"text-sm text-muted-foreground",children:"No repository connected"})})]})}),e[4]=s,e[5]=l):l=e[5];let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Re,{children:"The connected GitHub repository for this agent. Manage in Connections."}),e[6]=h):h=e[6];let c;e[7]!==l?(c=o.jsxs(De,{children:[l,h]}),e[7]=l,e[8]=c):c=e[8];let d;return e[9]!==r||e[10]!==c?(d=o.jsxs("div",{className:r,children:[n,c]}),e[9]=r,e[10]=c,e[11]=d):d=e[11],d}const Kd={npm:{install:"npm install",run:t=>`npm run ${t}`,runtime:"node"},pnpm:{install:"pnpm install",run:t=>`pnpm run ${t}`,runtime:"node"},yarn:{install:"yarn install",run:t=>`yarn run ${t}`,runtime:"node"},bun:{install:"bun install",run:t=>`bun run ${t}`,runtime:"bun"},deno:{install:"deno install",run:t=>`deno task ${t}`,runtime:"deno"}};function Vd(t){const e=t.trim();if(e==="")return{ok:!0,value:null};if(!/^\d+$/.test(e))return{ok:!1};const s=Number(e);return s<1||s>65535?{ok:!1}:{ok:!0,value:String(s)}}const qd=Object.keys(Kd),Wi="__none__";function Gd(t){const e=z.c(20),{control:s}=t,i=B.useRef(null);let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx(Bt,{htmlFor:"runtime-pm",children:"Package manager"}),e[0]=r):r=e[0];let n;e[1]!==s?(n=o.jsxs("div",{className:"space-y-2",children:[r,o.jsx(ht,{control:s,name:"metadata.runtime.selected",render:Xd})]}),e[1]=s,e[2]=n):n=e[2];let a;e[3]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(Bt,{htmlFor:"runtime-path",children:"Package path"}),e[3]=a):a=e[3];let l;e[4]!==s?(l=o.jsx(ht,{control:s,name:"metadata.runtime.path",render:Yd}),e[4]=s,e[5]=l):l=e[5];let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx("p",{className:"text-xs text-muted-foreground",children:"Path (relative to repo root) to the directory containing package.json. Leave blank for the repo root."}),e[6]=h):h=e[6];let c;e[7]!==l?(c=o.jsxs("div",{className:"space-y-2",children:[a,l,h]}),e[7]=l,e[8]=c):c=e[8];let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(Bt,{htmlFor:"runtime-port",children:"Dev server port"}),e[9]=d):d=e[9];let u;e[10]===Symbol.for("react.memo_cache_sentinel")?(u=g=>{const{field:x}=g;return o.jsx(qt,{ref:i,id:"runtime-port",inputMode:"numeric",placeholder:"Auto",defaultValue:x.value??"",onBlur:b=>{const S=Vd(b.target.value);S.ok?x.onChange(S.value):i.current&&(i.current.value=x.value??"")}})},e[10]=u):u=e[10];let f;e[11]!==s?(f=o.jsx(ht,{control:s,name:"metadata.runtime.port",render:u}),e[11]=s,e[12]=f):f=e[12];let m;e[13]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx("p",{className:"text-xs text-muted-foreground",children:"Leave blank to let the runner pick."}),e[13]=m):m=e[13];let _;e[14]!==f?(_=o.jsxs("div",{className:"space-y-2",children:[d,f,m]}),e[14]=f,e[15]=_):_=e[15];let p;return e[16]!==_||e[17]!==n||e[18]!==c?(p=o.jsxs("div",{className:"space-y-5",children:[n,c,_]}),e[16]=_,e[17]=n,e[18]=c,e[19]=p):p=e[19],p}function Yd(t){const{field:e}=t;return o.jsx(qt,{id:"runtime-path",placeholder:".",defaultValue:e.value??"",onBlur:s=>{const i=s.target.value.trim();e.onChange(i===""?null:i)}})}function Xd(t){const{field:e}=t;return o.jsxs(es,{value:e.value??Wi,onValueChange:s=>e.onChange(s===Wi?null:s),children:[o.jsx(ts,{id:"runtime-pm",children:o.jsx(ss,{placeholder:"Auto-detect"})}),o.jsxs(is,{children:[o.jsx(Dt,{value:Wi,children:"Auto-detect"}),qd.map(Jd)]})]})}function Jd(t){return o.jsx(Dt,{value:t,children:t},t)}function Zd(t,e){switch(e.type){case"SET_SHARE_DIALOG_OPEN":return{...t,shareDialogOpen:e.payload};case"SET_ADD_DIALOG_OPEN":return{...t,addDialogOpen:e.payload};case"OPEN_SETTINGS":return{...t,settingsDialogOpen:!0,settingsConnectionId:e.payload};case"CLOSE_SETTINGS":return{...t,settingsDialogOpen:!1,settingsConnectionId:null};default:return t}}function Qd(t,e){switch(e.type){case"accumulate":{const s=t??{start:e.now,fields:new Set,saveCount:0,instructionsLength:null},i=new Set(s.fields);for(const r of e.fields)i.add(r);return{...s,fields:i,saveCount:s.saveCount+1,instructionsLength:e.instructionsLength??s.instructionsLength}}case"reset":return null}}function eu(t){const e=z.c(22),{connection_id:s,usedConnectionIds:i,onOpenSettings:r,onRemove:n,onAuthenticate:a,onSwitchInstance:l,onNewInstance:h}=t,c=rn(s),{org:d}=ge();if(!c)return null;let u;e[0]!==c?(u=ih(c),e[0]=c,e[1]=u):u=e[1];const f=u;let m;e[2]!==s?(m=o.jsx(ru,{connection_id:s}),e[2]=s,e[3]=m):m=e[3];let _;e[4]!==c.app_name||e[5]!==c.connection_type||e[6]!==c.description||e[7]!==c.icon||e[8]!==c.title||e[9]!==s||e[10]!==a||e[11]!==h||e[12]!==r||e[13]!==n||e[14]!==l||e[15]!==d.slug||e[16]!==f||e[17]!==i?(_=o.jsx(iu,{connection_id:s,connectionTitle:c.title,connectionDescription:c.description,connectionIcon:c.icon,connectionType:c.connection_type,slug:f,orgSlug:d.slug,appName:c.app_name,usedConnectionIds:i,onOpenSettings:r,onRemove:n,onAuthenticate:a,onSwitchInstance:l,onNewInstance:h}),e[4]=c.app_name,e[5]=c.connection_type,e[6]=c.description,e[7]=c.icon,e[8]=c.title,e[9]=s,e[10]=a,e[11]=h,e[12]=r,e[13]=n,e[14]=l,e[15]=d.slug,e[16]=f,e[17]=i,e[18]=_):_=e[18];let p;return e[19]!==m||e[20]!==_?(p=o.jsx(B.Suspense,{fallback:m,children:_}),e[19]=m,e[20]=_,e[21]=p):p=e[21],p}const Ln="__new_instance__";async function tu(t,e){const s=t?.idToken??null;if(s){const r=On(s);if(r)return r}const i=t?.userinfoEndpoint??null;if(i)try{const r=await fetch(i,{headers:{Authorization:`Bearer ${e}`}});if(r.ok){const n=await r.json(),a=typeof n.email=="string"?n.email:typeof n.upn=="string"?n.upn:typeof n.preferred_username=="string"?n.preferred_username:null;if(a)return a}}catch{}return On(e)}function On(t){try{const e=t.split(".");if(e.length===3&&e[1]){const s=JSON.parse(atob(e[1].replace(/-/g,"+").replace(/_/g,"/")));if(typeof s.email=="string")return s.email;if(typeof s.upn=="string")return s.upn;if(typeof s.preferred_username=="string")return s.preferred_username}}catch{}return null}function su(t){const e=z.c(23),{appName:s,connectionId:i,usedConnectionIds:r,onSwitchInstance:n,onNewInstance:a}=t;let l;e[0]!==s?(l={filters:[{column:"app_name",value:s}]},e[0]=s,e[1]=l):l=e[1];const h=wi(l);if(h.length<=1)return null;let c;e[2]!==i||e[3]!==a||e[4]!==n?(c=p=>{p===Ln?a?.():n(i,p)},e[2]=i,e[3]=a,e[4]=n,e[5]=c):c=e[5];let d;e[6]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(ts,{size:"sm",className:"w-auto text-xs gap-1 px-2 shadow-none",children:o.jsx(ss,{})}),e[6]=d):d=e[6];let u;if(e[7]!==i||e[8]!==h||e[9]!==r){let p;e[11]!==i||e[12]!==r?(p=g=>o.jsx(Dt,{value:g.id,className:"text-xs",disabled:g.id!==i&&r.has(g.id),children:g.title},g.id),e[11]=i,e[12]=r,e[13]=p):p=e[13],u=h.map(p),e[7]=i,e[8]=h,e[9]=r,e[10]=u}else u=e[10];let f;e[14]!==a?(f=a&&o.jsx(Dt,{value:Ln,className:"text-xs text-muted-foreground",children:"+ New instance"}),e[14]=a,e[15]=f):f=e[15];let m;e[16]!==u||e[17]!==f?(m=o.jsxs(is,{children:[u,f]}),e[16]=u,e[17]=f,e[18]=m):m=e[18];let _;return e[19]!==i||e[20]!==c||e[21]!==m?(_=o.jsxs(es,{value:i,onValueChange:c,children:[d,m]}),e[19]=i,e[20]=c,e[21]=m,e[22]=_):_=e[22],_}function iu(t){const e=z.c(55),{connection_id:s,connectionTitle:i,connectionDescription:r,connectionIcon:n,connectionType:a,slug:l,orgSlug:h,appName:c,usedConnectionIds:d,onOpenSettings:u,onRemove:f,onAuthenticate:m,onSwitchInstance:_,onNewInstance:p}=t;let g;e[0]!==s?(g={connectionId:s},e[0]=s,e[1]=g):g=e[1];const x=da(g),S=!(a==="VIRTUAL")&&x.supportsOAuth&&!x.isAuthenticated,v=S?"border-destructive/50 bg-destructive/5":"border-border";let y;e[2]!==v?(y=Z("rounded-xl border overflow-hidden transition-colors",v),e[2]=v,e[3]=y):y=e[3];let k;e[4]!==h||e[5]!==l?(k={org:h,appSlug:l},e[4]=h,e[5]=l,e[6]=k):k=e[6];let N;e[7]!==n||e[8]!==i?(N=o.jsx(Kt,{icon:n,name:i,size:"sm",className:"shrink-0"}),e[7]=n,e[8]=i,e[9]=N):N=e[9];let j;e[10]!==i?(j=o.jsx("p",{className:"text-sm font-medium truncate",children:i}),e[10]=i,e[11]=j):j=e[11];let T;e[12]!==r||e[13]!==S?(T=S?o.jsx("span",{className:"text-xs text-destructive font-medium",children:"Needs authorization"}):r&&o.jsx("p",{className:"text-xs text-muted-foreground truncate",children:r}),e[12]=r,e[13]=S,e[14]=T):T=e[14];let I;e[15]!==j||e[16]!==T?(I=o.jsxs("div",{className:"flex-1 min-w-0",children:[j,T]}),e[15]=j,e[16]=T,e[17]=I):I=e[17];let D;e[18]!==s||e[19]!==S||e[20]!==m?(D=S?o.jsx(se,{variant:"outline",size:"sm",className:"h-7 text-xs shrink-0",onClick:G=>{G.preventDefault(),G.stopPropagation(),m(s)},children:"Authorize"}):o.jsxs(De,{delayDuration:0,children:[o.jsx(Te,{asChild:!0,children:o.jsx("span",{className:"inline-flex items-center justify-center rounded-md h-7 w-7 hover:bg-accent text-muted-foreground shrink-0 transition-colors",children:o.jsx(nh,{size:16})})}),o.jsx(Re,{side:"bottom",children:"Connection settings"})]}),e[18]=s,e[19]=S,e[20]=m,e[21]=D):D=e[21];let M;e[22]!==k||e[23]!==N||e[24]!==I||e[25]!==D?(M=o.jsxs($l,{to:"/$org/settings/connections/$appSlug",params:k,className:"flex items-center gap-3 px-4 py-3 cursor-pointer hover:bg-muted/50 transition-colors",children:[N,I,D]}),e[22]=k,e[23]=N,e[24]=I,e[25]=D,e[26]=M):M=e[26];let w;e[27]!==c||e[28]!==s||e[29]!==p||e[30]!==_||e[31]!==d?(w=c&&o.jsx(su,{appName:c,connectionId:s,usedConnectionIds:d,onSwitchInstance:_,onNewInstance:p}),e[27]=c,e[28]=s,e[29]=p,e[30]=_,e[31]=d,e[32]=w):w=e[32];let R;e[33]===Symbol.for("react.memo_cache_sentinel")?(R=o.jsx(Rc,{size:13}),e[33]=R):R=e[33];let E;e[34]!==u?(E=o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:u,"aria-label":"Configure resources",children:R})}),e[34]=u,e[35]=E):E=e[35];let C;e[36]===Symbol.for("react.memo_cache_sentinel")?(C=o.jsx(Re,{side:"bottom",children:"Configure resources"}),e[36]=C):C=e[36];let P;e[37]!==E?(P=o.jsxs(De,{delayDuration:0,children:[E,C]}),e[37]=E,e[38]=P):P=e[38];let A;e[39]===Symbol.for("react.memo_cache_sentinel")?(A=o.jsx(rs,{size:13}),e[39]=A):A=e[39];let $;e[40]!==f?($=o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",className:"h-7 w-7 text-muted-foreground hover:text-destructive",onClick:f,"aria-label":"Remove connection",children:A})}),e[40]=f,e[41]=$):$=e[41];let K;e[42]===Symbol.for("react.memo_cache_sentinel")?(K=o.jsx(Re,{side:"bottom",children:"Remove"}),e[42]=K):K=e[42];let q;e[43]!==$?(q=o.jsxs(De,{delayDuration:0,children:[$,K]}),e[43]=$,e[44]=q):q=e[44];let F;e[45]!==P||e[46]!==q?(F=o.jsxs("div",{className:"flex items-center gap-0.5 ml-auto",children:[P,q]}),e[45]=P,e[46]=q,e[47]=F):F=e[47];let Y;e[48]!==w||e[49]!==F?(Y=o.jsxs("div",{className:"flex items-center gap-3 px-4 py-2 border-t border-border bg-muted/25",children:[w,F]}),e[48]=w,e[49]=F,e[50]=Y):Y=e[50];let J;return e[51]!==M||e[52]!==Y||e[53]!==y?(J=o.jsxs("div",{className:y,children:[M,Y]}),e[51]=M,e[52]=Y,e[53]=y,e[54]=J):J=e[54],J}function ru(t){const e=z.c(17),{connection_id:s}=t,i=rn(s);if(!i){let u;return e[0]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(Ia,{}),e[0]=u):u=e[0],u}let r;e[1]!==i.icon||e[2]!==i.title?(r=o.jsx(Kt,{icon:i.icon,name:i.title,size:"sm",className:"shrink-0"}),e[1]=i.icon,e[2]=i.title,e[3]=r):r=e[3];let n;e[4]!==i.title?(n=o.jsx("p",{className:"text-sm font-medium truncate",children:i.title}),e[4]=i.title,e[5]=n):n=e[5];let a;e[6]!==i.description?(a=i.description&&o.jsx("p",{className:"text-xs text-muted-foreground truncate",children:i.description}),e[6]=i.description,e[7]=a):a=e[7];let l;e[8]!==n||e[9]!==a?(l=o.jsxs("div",{className:"flex-1 min-w-0",children:[n,a]}),e[8]=n,e[9]=a,e[10]=l):l=e[10];let h;e[11]!==r||e[12]!==l?(h=o.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[r,l]}),e[11]=r,e[12]=l,e[13]=h):h=e[13];let c;e[14]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:o.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})}),e[14]=c):c=e[14];let d;return e[15]!==h?(d=o.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[h,c]}),e[15]=h,e[16]=d):d=e[16],d}function Ia(){const t=z.c(3);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx("div",{className:"size-8 rounded-md bg-muted animate-pulse shrink-0"}),t[0]=e):e=t[0];let s;t[1]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsxs("div",{className:"flex items-center gap-3 px-4 py-3",children:[e,o.jsxs("div",{className:"flex-1 space-y-1.5",children:[o.jsx("div",{className:"h-4 w-32 rounded bg-muted animate-pulse"}),o.jsx("div",{className:"h-3 w-48 rounded bg-muted animate-pulse"})]})]}),t[1]=s):s=t[1];let i;return t[2]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsxs("div",{className:"rounded-xl border border-border overflow-hidden",children:[s,o.jsx("div",{className:"flex items-center px-4 py-2 border-t border-border bg-muted/25",children:o.jsx("div",{className:"h-5 w-20 rounded bg-muted animate-pulse"})})]}),t[2]=i):i=t[2],i}function nu({virtualMcpId:t,form:e,flushAndSave:s}){const{org:i}=ge(),r=He({connectionId:Vt,orgId:i.id,orgSlug:i.slug}),n=vt(t),a=(n?.connections??[]).map(w=>w.connection_id).sort(),{data:l}=Ho({queryKey:Is.projectConnectionDetails(t,a),enabled:a.length>0,queryFn:async()=>await Promise.all(a.map(async R=>{try{const E=await r.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:R}}),{item:C}=sh(E),P=(C?.tools??[]).filter(A=>!!Qc(A._meta)).map(A=>({name:A.name,description:A.description}));return{fetchOk:!0,id:R,title:C?.title??R,icon:C?.icon??null,uiTools:P}}catch{return{fetchOk:!1,id:R,title:R,icon:null,uiTools:[]}}}))}),h=(l??[]).filter(w=>w.uiTools.length>0),c=new Set(fc),d=e.watch("metadata.ui.pinnedViews")??[],u=e.watch("metadata.ui.layout")??null,f=u?.defaultMainView??null,m=u?.chatDefaultOpen??!1,_=!f||f.type==="chat"?"chat":f.type==="instructions"||f.type==="connections"||f.type==="layout"?"settings":c.has(f.type)?f.type:`${f.type}:${f.id??""}:${f.toolName??""}`,p=w=>{const[R,E,C]=w.split(":");return R?R==="chat"?{type:R}:c.has(R)?{type:R}:R==="ext-apps"&&E?{type:"ext-apps",id:E,toolName:C||void 0}:null:null},g=w=>{e.setValue("metadata.ui.pinnedViews",w,{shouldDirty:!0})},x=w=>{e.setValue("metadata.ui.layout",{...u,...w},{shouldDirty:!0})},b=B.useRef(!1);if(l&&l.length>0&&!b.current){b.current=!0;const w=new Set((l??[]).filter(C=>C.fetchOk).map(C=>C.id)),R=new Set(h.flatMap(C=>C.uiTools.map(P=>`${C.id}:${P.name}`))),E=d.filter(C=>!w.has(C.connectionId)||R.has(`${C.connectionId}:${C.toolName}`));E.length!==d.length&&(g(E),f?.type==="ext-apps"&&!E.some(C=>C.connectionId===f.id&&C.toolName===f.toolName)&&x({defaultMainView:{type:"chat"}}))}const S=(w,R)=>{if(d.some(C=>C.connectionId===w&&C.toolName===R)){const C=d.filter(A=>!(A.connectionId===w&&A.toolName===R));g(C);const P=`ext-apps:${w}:${R}`;_===P&&x({defaultMainView:{type:"chat"}})}else g([...d,{connectionId:w,toolName:R,label:Cn(R),icon:null}]);s()},v=(w,R,E)=>{g(d.map(C=>C.connectionId===w&&C.toolName===R?{...C,label:E}:C))},y=()=>{s()},k=(w,R,E)=>{g(d.map(C=>C.connectionId===w&&C.toolName===R?{...C,icon:E}:C)),s()},N=w=>{x({defaultMainView:p(w)}),s()},j=a.length===0,T=l&&h.length===0,I=!!$t(n),D=[{value:"chat",label:"Chat"},{value:"settings",label:"Settings"},{value:"automations",label:"Automations"}];I&&D.push({value:"preview",label:"Preview"});for(const w of d)D.push({value:`ext-apps:${w.connectionId}:${w.toolName}`,label:w.label||w.toolName});const M=h.length>0||j||T;return o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("div",{className:"flex items-center justify-between gap-3",children:o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Layout"})}),o.jsxs(wa,{className:"p-6 gap-5",children:[o.jsxs(lr,{className:"p-0 space-y-5",children:[o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsxs("div",{className:"space-y-0.5 min-w-0",children:[o.jsx(Bt,{className:"font-normal text-foreground",children:"Main view"}),o.jsx("p",{className:"text-xs text-muted-foreground",children:"What users see when they first open this agent."})]}),o.jsxs(es,{value:_,onValueChange:N,children:[o.jsx(ts,{className:"w-44 h-8 text-sm capitalize shrink-0",children:o.jsx(ss,{})}),o.jsx(is,{children:D.map(w=>o.jsx(Dt,{value:w.value,className:"capitalize",children:w.label},w.value))})]})]}),o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsxs("div",{className:"space-y-0.5 min-w-0",children:[o.jsx(Bt,{className:"font-normal text-foreground",children:"Show chat"}),o.jsx("p",{className:"text-xs text-muted-foreground",children:"Display the chat panel alongside the main view."})]}),o.jsxs(De,{delayDuration:0,children:[o.jsx(Te,{asChild:!0,children:o.jsx("span",{className:"shrink-0",children:o.jsx(cr,{checked:_==="chat"?!0:m,disabled:_==="chat",onCheckedChange:w=>{x({chatDefaultOpen:w}),s()}})})}),_==="chat"&&o.jsx(Re,{side:"top",children:"Chat is always shown when it is the default view"})]})]})]}),M&&o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"border-t border-border -mx-6"}),o.jsxs(lr,{className:"p-0 space-y-3",children:[o.jsx("div",{className:"flex items-center justify-between gap-4",children:o.jsxs("div",{className:"space-y-0.5 min-w-0",children:[o.jsx(Bt,{className:"font-normal text-foreground",children:"Pinned views"}),o.jsx("p",{className:"text-xs text-muted-foreground",children:"Surface interactive tools as top-level tabs in the agent."})]})}),j&&o.jsx("p",{className:"text-xs text-muted-foreground",children:"Add a connection above to configure pinned views."}),T&&!j&&o.jsx("p",{className:"text-xs text-muted-foreground",children:"None of the connected servers expose interactive tools."}),h.length>0&&o.jsx("div",{className:"space-y-4 pt-1",children:h.map((w,R)=>o.jsxs("div",{children:[R>0&&o.jsx("div",{className:"border-t border-border -mx-6 mb-4"}),o.jsxs("div",{className:"flex items-center gap-2 mb-2.5",children:[o.jsx(Kt,{icon:w.icon,name:w.title,size:"xs",className:"shrink-0"}),o.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:w.title})]}),o.jsx("div",{className:"space-y-1.5",children:w.uiTools.map(E=>{const C=d.some(A=>A.connectionId===w.id&&A.toolName===E.name),P=d.find(A=>A.connectionId===w.id&&A.toolName===E.name);return o.jsxs("div",{className:Z("flex items-center justify-between gap-3 px-3 py-2 rounded-lg border transition-colors",C?"bg-accent/40 border-border":"bg-transparent border-border"),children:[o.jsxs("div",{className:"min-w-0 flex-1 flex items-center gap-2",children:[o.jsx(bd,{value:P?.icon??null,onChange:A=>k(w.id,E.name,A),disabled:!C}),o.jsx(qt,{value:C&&P?P.label:Cn(E.name),onChange:A=>v(w.id,E.name,A.target.value),onBlur:y,className:"h-7 text-sm w-40",disabled:!C,readOnly:!C})]}),o.jsx(cr,{checked:C,onCheckedChange:()=>S(w.id,E.name)})]},E.name)})})]},w.id))})]})]})]})]})}function ou({virtualMcp:t,hideOwnTitle:e}){const{org:s}=ge(),i=ec(),r=Xc(),n=as(),a=He({connectionId:Vt,orgId:s.id,orgSlug:s.slug}),l=Vo({resolver:Ol(Pd),defaultValues:t}),h=l.watch("connections"),c=!!$t(t),d=$t(t),u=d?{owner:d.owner,name:d.name,url:d.url}:null,[f,m]=B.useReducer(Zd,{shareDialogOpen:!1,addDialogOpen:!1,settingsDialogOpen:!1,settingsConnectionId:null}),[_,p]=B.useState(!1),[g,x]=B.useState(!1),{createNewTask:b,setChatOpen:S}=sn(),{sendMessage:v}=Fs(),y=ca(),k=async()=>{if(g)return;const L=l.getValues("metadata.instructions");if(L?.trim()){x(!0);try{M(),be("agent_instructions_improve_clicked",{agent_id:t.id,instructions_length:L.length}),await y(["studio-agent-manager"]),S(!0),await v({tiptapDoc:Aa({managerAgentId:Xo.AGENT_MANAGER(s.id),managerName:"Agent Manager",kind:"agent",id:t.id,instructions:L})})}finally{x(!1)}}},N=()=>{M(),be("agent_test_clicked",{agent_id:t.id}),b()},[j,T]=B.useReducer(Qd,null),I=()=>{j!==null&&(be("agent_updated",{agent_id:t.id,fields:Array.from(j.fields),instructions_length:j.instructionsLength,save_count:j.saveCount,edit_duration_ms:Date.now()-j.start}),T({type:"reset"}))},{schedule:D,flush:M}=mi({delayMs:3e4,save:async()=>I()}),w=async()=>{const L=Object.keys(l.control._formState.dirtyFields);if(L.length===0)return;const ee=L.includes("metadata"),te=l.getValues();l.reset(te,{keepValues:!0}),await i.update.mutateAsync({id:t.id,data:te}),T({type:"accumulate",now:Date.now(),fields:L,instructionsLength:ee?te.metadata?.instructions?.length??0:null}),D()},{schedule:R,flush:E}=mi({save:w});B.useEffect(()=>{const L=l.watch(()=>R());return()=>L.unsubscribe()},[]);const C=()=>{be("connections_dialog_opened",{source:"agent_settings",mode:"add"}),m({type:"SET_ADD_DIALOG_OPEN",payload:!0})},P=async L=>{const ee=l.getValues("connections");if(ee.some(U=>U.connection_id===L))return;l.setValue("connections",[...ee,{connection_id:L,selected_tools:Hi.tools,selected_resources:Hi.resources,selected_prompts:Hi.prompts}],{shouldDirty:!0}),m({type:"SET_ADD_DIALOG_OPEN",payload:!1});const te=new URL(`/api/${s.slug}/mcp/${L}`,window.location.origin),W=await xn({url:te.href,token:null,orgId:s.id});W.supportsOAuth&&!W.isAuthenticated&&await F(L)},A=L=>{const te=l.getValues("connections").filter(W=>W.connection_id!==L);l.setValue("connections",te,{shouldDirty:!0})},$=(L,ee)=>{const te=l.getValues("connections");if(te.some(W=>W.connection_id===ee)){fe.error("This instance is already added to the agent");return}l.setValue("connections",te.map(W=>W.connection_id===L?{...W,connection_id:ee}:W),{shouldDirty:!0})},K=async L=>{if(l.getValues("connections").find(te=>te.connection_id===L))try{const te=await a.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:L}}),{item:W}=te.structuredContent??{};if(!W)return;const U=W.title.replace(/\s*\(.*?\)\s*$/,""),re=Jc("conn"),de=`${U} (${Date.now().toString(36).slice(-4)})`;await r.create.mutateAsync({id:re,title:de,description:W.description??null,connection_type:W.connection_type,connection_url:W.connection_url??null,connection_token:null,icon:W.icon??null,app_name:W.app_name??null,app_id:W.app_id??null,connection_headers:W.connection_headers??null});const ce=new URL(`/api/${s.slug}/mcp/${re}`,window.location.origin),he=await xn({url:ce.href,token:null,orgId:s.id});if(he.supportsOAuth&&!he.isAuthenticated){const _e=await F(re);if(!_e){await r.delete.mutateAsync(re);return}await r.update.mutateAsync({id:re,data:{title:`${U} (${_e})`}})}$(L,re),fe.success("New instance created")}catch(te){console.error("Failed to create instance:",te),fe.error("Failed to create instance")}},q=L=>{m({type:"OPEN_SETTINGS",payload:L})},F=async L=>{const{token:ee,tokenInfo:te,error:W}=await zl({connectionId:L,orgSlug:s.slug,scope:"offline_access"});if(W||!ee)return fe.error(`Authentication failed: ${W}`),null;if(te)try{const re=await fetch(`/api/${s.slug}/connections/${L}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:te.accessToken,refreshToken:te.refreshToken,expiresIn:te.expiresIn,scope:te.scope,clientId:te.clientId,clientSecret:te.clientSecret,tokenEndpoint:te.tokenEndpoint})});if(!re.ok)console.error("Failed to save OAuth token:",await re.text()),await r.update.mutateAsync({id:L,data:{connection_token:ee}});else try{await r.update.mutateAsync({id:L,data:{}})}catch(de){console.warn("Failed to refresh connection tools after OAuth:",de)}}catch(re){console.error("Error saving OAuth token:",re),await r.update.mutateAsync({id:L,data:{connection_token:ee}})}else await r.update.mutateAsync({id:L,data:{connection_token:ee}});const U=new URL(`/api/${s.slug}/mcp/${L}`,window.location.origin);return await n.invalidateQueries({queryKey:Is.isMCPAuthenticated(U.href,null)}),fe.success("Authentication successful"),tu(te,ee)},Y=()=>{const L=l.getValues("metadata.instructions")??"",ee=`<role>
5
5
  Define who this agent is and what it specializes in.
6
6
  Example: You are a support triage agent for B2B merchants.
7
7
  </role>
@@ -28,7 +28,7 @@ Define step-by-step how the agent should handle requests.
28
28
  4. Ask for confirmation before making any changes.
29
29
  </workflows>`,te=L.trim()?`${L}
30
30
 
31
- ${ee}`:ee;l.setValue("metadata.instructions",te,{shouldDirty:!0})},J=new Set(h.map(L=>L.connection_id)),G=Ut(),[H,Q]=B.useState(!1),ie=async()=>{M();try{await i.delete.mutateAsync(t.id),be("agent_deleted",{agent_id:t.id,source:"agent_detail"}),fe.success(`Deleted "${t.title}"`),G({to:"/$org",params:{org:s.slug}})}catch{}};return o.jsxs(it,{children:[o.jsx(it.Content,{children:o.jsx(it.Body,{children:o.jsxs("div",{className:"flex flex-col gap-10",children:[!e&&o.jsx(it.Title,{actions:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs(se,{variant:"outline",size:"sm",onClick:N,children:[o.jsx(Ft,{size:14,className:"!size-[14px]"}),"Test Agent"]}),o.jsx(se,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive",onClick:()=>Q(!0),children:o.jsx(hr,{size:14})})]}),children:"Settings"}),o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx(ht,{name:"icon",control:l.control,render:({field:L})=>o.jsx(fd,{value:L.value??null,onChange:ee=>{L.onChange(ee),E()},onColorChange:ee=>{l.setValue("metadata.ui.themeColor",ee,{shouldDirty:!0}),E()},name:l.watch("title")||"Agent",size:"md",className:"shrink-0",avatarClassName:"[&_svg]:w-1/2 [&_svg]:h-1/2",disabled:c})}),o.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[o.jsx(ht,{name:"title",control:l.control,render:({field:L})=>o.jsx("input",{...L,type:"text",value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Agent name",className:"text-lg font-medium leading-tight text-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})}),o.jsx(ht,{name:"description",control:l.control,render:({field:L})=>o.jsx("input",{...L,type:"text",value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Add a description...",className:"text-sm text-muted-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})})]}),o.jsxs(se,{variant:"outline",size:"sm",className:"shrink-0",onClick:()=>{be("agent_connect_modal_opened",{agent_id:t.id}),m({type:"SET_SHARE_DIALOG_OPEN",payload:!0})},children:[o.jsxs("span",{className:"flex items-center -space-x-1.5 mr-0.5",children:[o.jsx("span",{className:"inline-flex items-center justify-center size-4 rounded-full bg-black ring-1 ring-white/20 shrink-0",children:o.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"size-2.5 brightness-0 invert"})}),o.jsx("span",{className:"relative z-10 inline-flex items-center justify-center size-4 rounded-full ring-1 ring-background shrink-0",style:{backgroundColor:"#D97757"},children:o.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude",className:"size-2.5 brightness-0 invert"})})]}),"Connect"]})]}),o.jsxs("div",{className:"flex items-center gap-2 -mt-6 text-muted-foreground",children:[o.jsx(ha,{id:t.created_by,size:"2xs",className:"text-sm text-muted-foreground"}),o.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),o.jsx("span",{className:"text-sm",children:new Date(t.created_at).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})})]}),o.jsxs("section",{className:"flex flex-col gap-3",children:[o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Connections"}),h.length>0&&o.jsxs(se,{variant:"outline",size:"sm",onClick:C,children:[o.jsx(ns,{size:14}),"Add connection"]})]}),o.jsx("div",{className:"flex flex-col gap-2",children:h.length===0?o.jsxs("button",{type:"button",onClick:C,className:"flex items-center gap-3 px-3 py-2.5 rounded-lg border border-dashed border-border hover:bg-accent/50 transition-colors w-full text-left cursor-pointer",children:[o.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:o.jsx(ns,{size:16})}),o.jsx("span",{className:"text-sm text-muted-foreground",children:"No connections yet. Add one to get started."})]}):h.map(L=>o.jsx(Tt,{fallback:()=>null,children:o.jsx(B.Suspense,{fallback:o.jsx(Ia,{}),children:o.jsx(eu,{connection_id:L.connection_id,usedConnectionIds:J,onOpenSettings:()=>q(L.connection_id),onRemove:()=>A(L.connection_id),onAuthenticate:F,onSwitchInstance:$,onNewInstance:()=>K(L.connection_id)})})},L.connection_id))})]}),o.jsxs("section",{className:"flex flex-col gap-3",children:[o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Instructions"}),!c&&o.jsxs("div",{className:"flex items-center gap-2",children:[!l.watch("metadata.instructions")?.trim()&&o.jsx(se,{variant:"outline",size:"sm",onClick:Y,children:"+ Prompt template"}),o.jsxs(se,{variant:"outline",size:"sm",disabled:g||!l.watch("metadata.instructions")?.trim(),onClick:k,children:[o.jsx(Ca,{size:13}),"Improve"]})]})]}),o.jsx(ht,{name:"metadata.instructions",control:l.control,render:({field:L})=>o.jsxs("div",{className:"relative rounded-xl card-shadow bg-card focus-within:ring-1 focus-within:ring-ring",children:[o.jsx(Rn,{...L,value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"min-h-[200px] max-h-[360px] overflow-auto resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed border-0 shadow-none px-4 py-3 pr-11 focus-visible:ring-0 focus-visible:ring-offset-0 bg-transparent",style:{boxShadow:"none"}}),o.jsxs(De,{delayDuration:0,children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{type:"button",variant:"ghost",size:"icon",className:"absolute top-2 right-2 h-7 w-7 text-muted-foreground",onClick:()=>p(!0),"aria-label":"Open fullscreen editor",children:o.jsx(Nc,{size:14})})}),o.jsx(Re,{side:"left",children:"Fullscreen"})]})]})})]}),o.jsx(nu,{virtualMcpId:t.id,form:l,flushAndSave:E}),o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("div",{className:"flex items-center justify-between gap-3",children:o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Sandbox"})}),o.jsx(wa,{className:"p-6 gap-5",children:o.jsxs(lr,{className:"p-0 space-y-5",children:[o.jsx(Ud,{repo:u}),o.jsx(Gd,{control:l.control})]})})]}),o.jsxs("section",{className:"flex items-center justify-between border-t border-border pt-6",children:[o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-medium",children:"Delete agent"}),o.jsx("p",{className:"text-sm text-muted-foreground",children:"Permanently delete this agent and all its data."})]}),o.jsxs(se,{variant:"outline",size:"sm",className:"text-destructive border-destructive/40 hover:bg-destructive/10 hover:text-destructive shrink-0",onClick:()=>Q(!0),children:[o.jsx(hr,{size:14}),"Delete agent"]})]})]})})}),o.jsx(fa,{open:H,onOpenChange:Q,children:o.jsxs(ma,{children:[o.jsxs(_a,{children:[o.jsx(pa,{children:"Delete Agent?"}),o.jsxs(ga,{children:["This action cannot be undone. This will permanently delete"," ",o.jsx("span",{className:"font-medium text-foreground",children:t.title}),"."]})]}),o.jsxs(va,{children:[o.jsx(xa,{children:"Cancel"}),o.jsx(ba,{onClick:ie,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),o.jsx(ql,{open:f.addDialogOpen,onOpenChange:L=>m({type:"SET_ADD_DIALOG_OPEN",payload:L}),agentId:t.id,addedConnectionIds:J,onAdd:P}),o.jsx(Id,{open:f.settingsDialogOpen,onOpenChange:L=>{L||m({type:"CLOSE_SETTINGS"})},selectedId:f.settingsConnectionId,form:l,connections:h,onAuthenticate:F}),o.jsx(Wd,{open:f.shareDialogOpen,onOpenChange:L=>m({type:"SET_SHARE_DIALOG_OPEN",payload:L}),virtualMcp:t}),o.jsx(on,{open:_,onOpenChange:p,children:o.jsxs(nn,{className:"w-[90vw] sm:max-w-6xl h-[85vh] flex flex-col p-0 gap-0",children:[o.jsx(Sa,{className:"px-6 pt-6 pb-3 border-b border-border shrink-0",children:o.jsx(ya,{children:"Instructions"})}),o.jsx("div",{className:"flex-1 min-h-0 p-6",children:o.jsx(ht,{name:"metadata.instructions",control:l.control,render:({field:L})=>o.jsx(Rn,{...L,value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"w-full h-full resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed rounded-xl card-shadow px-4 py-3 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-0 bg-card border-0",style:{boxShadow:"none"}})})})]})})]})}function au(t){const e=z.c(9),{virtualMcpId:s,hideOwnTitle:i}=t,r=Ut(),{org:n}=ge(),a=vt(s);if(!a){let c;return e[0]!==r||e[1]!==n.slug?(c=o.jsx("div",{className:"flex h-full w-full bg-background",children:o.jsx(fi,{title:"Space not found",description:"This space may have been deleted or you may not have access.",actions:o.jsx(se,{variant:"outline",onClick:()=>r({to:"/$org",params:{org:n.slug}}),children:"Back to spaces"})})}),e[0]=r,e[1]=n.slug,e[2]=c):c=e[2],c}let l;e[3]!==a?(l=$t(a)?.connectionId??"",e[3]=a,e[4]=l):l=e[4];let h;return e[5]!==i||e[6]!==l||e[7]!==a?(h=o.jsx(ou,{virtualMcp:a,hideOwnTitle:i},l),e[5]=i,e[6]=l,e[7]=a,e[8]=h):h=e[8],h}function zn(t){const e=z.c(2),{virtualMcpId:s}=t;let i;return e[0]!==s?(i=o.jsx(au,{virtualMcpId:s,hideOwnTitle:!0}),e[0]=s,e[1]=i):i=e[1],i}const lu={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "};function Ls(t){return t?t.replace(/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,(e,s)=>{if(s.startsWith("#x")||s.startsWith("#X")){const i=Number.parseInt(s.slice(2),16);return Number.isFinite(i)?String.fromCodePoint(i):e}if(s.startsWith("#")){const i=Number.parseInt(s.slice(1),10);return Number.isFinite(i)?String.fromCodePoint(i):e}return lu[s]??e}):""}function Ws(t){if(!t||typeof t!="object")return null;const e=t;if(e.structuredContent!==void 0)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(!s)return null;try{return JSON.parse(s)}catch{return null}}const Ei=6e4,Ti=3e4;function Pa(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.branch?`${t.owner}:${t.branch}`:void 0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={owner:t.owner,repo:t.repo,state:"all",head:r,perPage:1},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.branch;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"list_pull_requests",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:cu},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function cu(t){const e=Ws(t);if(!e||!Array.isArray(e)||e.length===0)return null;const s=e[0],i=s.base,r=s.head,n=s.user;return{number:s.number??0,title:s.title??"",body:s.body??"",state:s.state==="closed"?"closed":"open",merged:s.merged_at!=null,mergedAt:s.merged_at??null,base:i?.ref??"main",head:r?.ref??"",headSha:r?.sha??"",htmlUrl:s.html_url??"",author:n?.login??""}}function Ba(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get_files",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:hu},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function hu(t){const e=Ws(t);return Array.isArray(e)?e.map(du):[]}function du(t){const e=Number(t.additions??0),s=Number(t.changes??e),i=Number(t.deletions??Math.max(0,s-e));return{filename:String(t.filename??""),status:t.status??"modified",additions:e,deletions:i,blobUrl:typeof t.blob_url=="string"?t.blob_url:null}}function La(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get_check_runs",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:uu},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function uu(t){const e=Ws(t);return(Array.isArray(e)?e:e?.check_runs??[]).map(fu)}function fu(t){const e=t.started_at,s=t.completed_at,i=e&&s?new Date(s).getTime()-new Date(e).getTime():null;return{id:String(t.id??""),name:String(t.name??""),status:t.status??"completed",conclusion:t.conclusion??null,htmlUrl:String(t.html_url??""),durationMs:i}}function mu(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get_comments",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:_u},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function _u(t){const e=Ws(t);return Array.isArray(e)?e.map(pu):[]}function pu(t){const e=t.user;return{id:Number(t.id??0),author:e?.login??"",body:String(t.body??""),createdAt:String(t.created_at??""),htmlUrl:String(t.html_url??"")}}function gu(t){const e=z.c(28),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=l):l=e[6];const h=Ba(l);if(h.isLoading){let b;return e[7]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading files…"}),e[7]=b):b=e[7],b}if(h.isError){let b;return e[8]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load file list."}),e[8]=b):b=e[8],b}let c;e[9]!==h.data?(c=h.data??[],e[9]=h.data,e[10]=c):c=e[10];const d=c;if(d.length===0){let b;return e[11]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"text-sm text-muted-foreground",children:"No files changed."}),e[11]=b):b=e[11],b}const u=d.length===1?"":"s",f=`${s.htmlUrl}/files`;let m;e[12]!==f?(m=o.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:"underline hover:text-foreground",children:"View diffs on GitHub"}),e[12]=f,e[13]=m):m=e[13];let _;e[14]!==d.length||e[15]!==u||e[16]!==m?(_=o.jsxs("div",{className:"pb-2 text-xs text-muted-foreground",children:[d.length," file",u," changed ·"," ",m]}),e[14]=d.length,e[15]=u,e[16]=m,e[17]=_):_=e[17];let p;if(e[18]!==d||e[19]!==s.htmlUrl){let b;e[21]!==s.htmlUrl?(b=S=>o.jsx("li",{children:o.jsxs("a",{href:S.blobUrl??`${s.htmlUrl}/files`,target:"_blank",rel:"noreferrer",className:"flex items-center justify-between rounded px-2 py-1 font-mono text-xs hover:bg-muted",children:[o.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[o.jsx(vu,{status:S.status}),o.jsx("span",{className:"truncate",children:S.filename})]}),o.jsxs("span",{className:"flex shrink-0 items-center gap-2 tabular-nums",children:[o.jsxs("span",{children:[o.jsxs("span",{className:"text-success",children:["+",S.additions]})," ",o.jsxs("span",{className:"text-destructive",children:["−",S.deletions]})]}),o.jsx(us,{className:"h-3 w-3 text-muted-foreground"})]})]})},S.filename),e[21]=s.htmlUrl,e[22]=b):b=e[22],p=d.map(b),e[18]=d,e[19]=s.htmlUrl,e[20]=p}else p=e[20];let g;e[23]!==p?(g=o.jsx("ul",{className:"space-y-0.5",children:p}),e[23]=p,e[24]=g):g=e[24];let x;return e[25]!==_||e[26]!==g?(x=o.jsxs("div",{className:"flex flex-col gap-1",children:[_,g]}),e[25]=_,e[26]=g,e[27]=x):x=e[27],x}function vu(t){const e=z.c(2),{status:s}=t,i=s==="added"?"A":s==="removed"?"D":s==="renamed"?"R":s==="copied"?"C":"M";let r;return e[0]!==i?(r=o.jsx("span",{className:"inline-flex h-4 w-4 items-center justify-center rounded bg-muted text-[10px] font-bold text-muted-foreground",children:i}),e[0]=i,e[1]=r):r=e[1],r}const mt="The user clicked this action deliberately — execute directly. Do not call user_ask unless you hit an actual problem outside the scope of this intent (missing auth, unresolvable conflict, a check with multiple plausible fixes).";function xu(t){return`Commit every pending change in the working tree with a concise conventional-commit message summarizing the diff, then push to \`origin/${t.branch}\`. If local commits are ahead of the remote, push those in the same invocation. ${mt}`}function bu(t){return`Open a pull request for \`${t.branch}\` against its base. Write a clear title and a summary of the changes so far. ${mt}`}function Su(t){return`Reopen PR #${t.prNumber}. ${mt}`}function yu(t){return`Rebase \`${t.branch}\` on the latest base and force-push with --force-with-lease. ${mt}`}function wu(t){return`Re-run the \`${t.checkName}\` check on PR #${t.prNumber}. If an empty commit is needed to retrigger CI, create and push one. ${mt}`}function Cu(t){const e=(t.failingChecks??[]).map(s=>`\`${s}\``).join(", ");return`PR #${t.prNumber} has failing checks: ${e}. For each: read the logs, diagnose the root cause, apply the smallest fix that makes it pass, commit, and push. ${mt}`}function ku(t){return`Mark PR #${t.prNumber} ready for review. ${mt}`}function Nu(t){return`Read the unresolved review threads on PR #${t.prNumber}. For each thread: understand the reviewer's ask, apply the needed changes, commit, push, reply explaining what changed, and resolve the thread. If a comment is a question that doesn't need a code change, reply with the answer and resolve. ${mt}`}function ju(t){return`Review PR #${t.prNumber}. Read the full diff, analyze every changed file for correctness, security, code quality, and alignment with the repo's patterns. Post specific line-level review comments on concerns, then submit an overall review (approve / request changes / comment) with a concise summary. Do not modify the code — this is a read-and-comment pass. ${mt}`}function Eu(t){return`Squash-merge PR #${t.prNumber} into its base. ${mt}`}function Tu(t){const e=z.c(24),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge(),l=Fs();let h;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(h={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=h):h=e[6];const c=La(h);let d;e[7]!==l||e[8]!==s.number?(d=g=>l.sendMessage({parts:[{type:"text",text:wu({prNumber:s.number,checkName:g})}]}),e[7]=l,e[8]=s.number,e[9]=d):d=e[9];const u=d;if(c.isLoading){let g;return e[10]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading checks…"}),e[10]=g):g=e[10],g}if(c.isError){let g;return e[11]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load check runs."}),e[11]=g):g=e[11],g}let f;e[12]!==c.data?(f=c.data??[],e[12]=c.data,e[13]=f):f=e[13];const m=f;if(m.length===0){let g;return e[14]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"text-sm text-muted-foreground",children:"No check runs on the PR head commit."}),e[14]=g):g=e[14],g}let _;if(e[15]!==l||e[16]!==m||e[17]!==u){let g;e[19]!==l||e[20]!==u?(g=x=>o.jsxs("li",{className:"flex items-center justify-between gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[o.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[o.jsx(Ru,{check:x}),o.jsx("span",{className:"truncate",children:x.name}),x.durationMs!=null&&o.jsx("span",{className:"text-xs text-muted-foreground",children:Du(x.durationMs)})]}),o.jsxs("span",{className:"flex shrink-0 items-center gap-1",children:[x.htmlUrl&&o.jsx("a",{href:x.htmlUrl,target:"_blank",rel:"noreferrer",className:"inline-flex h-7 items-center justify-center rounded px-2 text-xs text-muted-foreground hover:bg-background",title:"View run",children:o.jsx(us,{className:"h-3.5 w-3.5"})}),x.conclusion==="failure"&&o.jsx(se,{size:"sm",variant:"ghost",disabled:l.isStreaming,onClick:()=>u(x.name),children:"Re-run"})]})]},x.id),e[19]=l,e[20]=u,e[21]=g):g=e[21],_=m.map(g),e[15]=l,e[16]=m,e[17]=u,e[18]=_}else _=e[18];let p;return e[22]!==_?(p=o.jsx("ul",{className:"flex flex-col gap-0.5",children:_}),e[22]=_,e[23]=p):p=e[23],p}function Ru(t){const e=z.c(5),{check:s}=t;if(s.status!=="completed"){let n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("span",{className:"text-muted-foreground","aria-label":"In progress",children:"○"}),e[0]=n):n=e[0],n}if(s.conclusion==="success"){let n;return e[1]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("span",{className:"text-success","aria-label":"Success",children:"✓"}),e[1]=n):n=e[1],n}if(s.conclusion==="failure"){let n;return e[2]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("span",{className:"text-destructive","aria-label":"Failure",children:"✗"}),e[2]=n):n=e[2],n}const i=s.conclusion??"—";let r;return e[3]!==i?(r=o.jsx("span",{className:"text-muted-foreground","aria-label":i,children:"—"}),e[3]=i,e[4]=r):r=e[4],r}function Du(t){const e=Math.round(t/1e3);return e<60?`${e}s`:`${Math.round(e/60)}m`}function Mu(t){const e=z.c(10),{comments:s,isLoading:i,isError:r}=t;if(i||r||!s||s.length===0)return null;const n=s.length===1?"":"s";let a;e[0]!==s.length||e[1]!==n?(a=o.jsxs(Uc,{className:"py-3 text-sm font-medium",children:[s.length," comment",n]}),e[0]=s.length,e[1]=n,e[2]=a):a=e[2];let l;e[3]!==s?(l=s.map(Au),e[3]=s,e[4]=l):l=e[4];let h;e[5]!==l?(h=o.jsx(Kc,{className:"space-y-3 pb-3",children:l}),e[5]=l,e[6]=h):h=e[6];let c;return e[7]!==a||e[8]!==h?(c=o.jsx(Vc,{type:"single",collapsible:!0,className:"border-t border-border",children:o.jsxs(qc,{value:"comments",className:"border-b-0",children:[a,h]})}),e[7]=a,e[8]=h,e[9]=c):c=e[9],c}function Au(t){return o.jsxs("div",{className:"rounded-md border border-border p-3",children:[o.jsxs("div",{className:"mb-1 text-xs text-muted-foreground",children:["@",t.author," · ",Iu(t.createdAt)]}),o.jsx(Qr,{id:`pr-comment-${t.id}`,text:Ls(t.body)})]},t.id)}function Iu(t){if(!t)return"";const e=new Date(t).getTime();if(!Number.isFinite(e))return"";const s=Date.now()-e;if(s<0)return"just now";const i=Math.floor(s/864e5);if(i>0)return`${i}d ago`;const r=Math.floor(s/36e5);if(r>0)return`${r}h ago`;const n=Math.floor(s/6e4);return`${Math.max(1,n)}m ago`}function Pu(t){const e=z.c(19),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=l):l=e[6];const h=mu(l);let c;e[7]!==s.body||e[8]!==s.number?(c=s.body&&o.jsx("div",{className:"text-sm",children:o.jsx(Qr,{id:`pr-body-${s.number}`,text:Ls(s.body)})}),e[7]=s.body,e[8]=s.number,e[9]=c):c=e[9];let d;e[10]!==h.data?(d=h.data??[],e[10]=h.data,e[11]=d):d=e[11];let u;e[12]!==h.isError||e[13]!==h.isLoading||e[14]!==d?(u=o.jsx(Mu,{comments:d,isLoading:h.isLoading,isError:h.isError}),e[12]=h.isError,e[13]=h.isLoading,e[14]=d,e[15]=u):u=e[15];let f;return e[16]!==c||e[17]!==u?(f=o.jsxs("div",{className:"space-y-8",children:[c,u]}),e[16]=c,e[17]=u,e[18]=f):f=e[18],f}function Bu(t){const e=z.c(27),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=l):l=e[6];const c=Ba(l).data?.length,[d,u]=B.useState("description"),f=B.useRef({description:null,changes:null,checks:null}),[m,_]=B.useState(null),p=j=>T=>{if(f.current[j]=T,T&&j===d){const I=T.offsetLeft,D=T.offsetWidth;(m===null||I!==m.left||D!==m.width)&&_({left:I,width:D})}},g=j=>{const T=j;u(T);const I=f.current[T];I&&_({left:I.offsetLeft,width:I.offsetWidth})},x=Li,b=p("checks");let S;e[7]!==x||e[8]!==b?(S=o.jsx(x,{ref:b,variant:"underline",value:"checks",className:"pb-3 data-[state=active]:border-transparent",children:"Checks"}),e[7]=x,e[8]=b,e[9]=S):S=e[9];let v;e[10]!==m?(v=m&&o.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute bottom-[-1px] h-0.5 bg-primary transition-[left,width] duration-200 ease-out",style:{left:m.left,width:m.width}}),e[10]=m,e[11]=v):v=e[11];let y;e[12]!==i||e[13]!==r||e[14]!==s||e[15]!==n?(y=o.jsx(Oi,{value:"description",className:"mt-6",children:o.jsx(Pu,{pr:s,connectionId:i,owner:r,repo:n})}),e[12]=i,e[13]=r,e[14]=s,e[15]=n,e[16]=y):y=e[16];let k;e[17]!==i||e[18]!==r||e[19]!==s||e[20]!==n?(k=o.jsx(Oi,{value:"changes",className:"mt-6",children:o.jsx(gu,{pr:s,connectionId:i,owner:r,repo:n})}),e[17]=i,e[18]=r,e[19]=s,e[20]=n,e[21]=k):k=e[21];let N;return e[22]!==i||e[23]!==r||e[24]!==s||e[25]!==n?(N=o.jsx(Oi,{value:"checks",className:"mt-6",children:o.jsx(Tu,{pr:s,connectionId:i,owner:r,repo:n})}),e[22]=i,e[23]=r,e[24]=s,e[25]=n,e[26]=N):N=e[26],o.jsxs(uh,{value:d,onValueChange:g,variant:"underline",children:[o.jsxs(fh,{variant:"underline",className:"relative h-auto p-0",children:[o.jsx(Li,{ref:p("description"),variant:"underline",value:"description",className:"pb-3 data-[state=active]:border-transparent",children:"Description"}),o.jsxs(Li,{ref:p("changes"),variant:"underline",value:"changes",className:"pb-3 data-[state=active]:border-transparent",children:["Changes",c!==void 0?` ${c}`:""]}),S,v]}),y,k,N]})}function Lu(t){const e=z.c(5),{pr:s}=t,i=`Open PR #${s.number} on GitHub`;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx(us,{className:"h-4 w-4 text-muted-foreground"}),e[0]=r):r=e[0];let n;return e[1]!==s.htmlUrl||e[2]!==s.number||e[3]!==i?(n=o.jsx("div",{className:"flex h-12 items-center border-b border-border px-4 shrink-0",children:o.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":i,className:"inline-flex items-center gap-1.5 text-base font-medium text-foreground hover:underline",children:["PR #",s.number,r]})}),e[1]=s.htmlUrl,e[2]=s.number,e[3]=i,e[4]=n):n=e[4],n}function Ou(t){const e=z.c(23),{pr:s}=t;let i;e[0]!==s.title?(i=Ls(s.title),e[0]=s.title,e[1]=i):i=e[1];let r;e[2]!==i?(r=o.jsx("h1",{className:"text-2xl font-semibold",children:i}),e[2]=i,e[3]=r):r=e[3];const n=`Open PR #${s.number} on GitHub`;let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(us,{className:"h-3.5 w-3.5"}),e[4]=a):a=e[4];let l;e[5]!==s.htmlUrl||e[6]!==s.number||e[7]!==n?(l=o.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":n,className:"inline-flex items-center gap-1 hover:text-foreground",children:["PR #",s.number,a]}),e[5]=s.htmlUrl,e[6]=s.number,e[7]=n,e[8]=l):l=e[8];let h;e[9]!==s.author?(h=s.author&&o.jsxs(o.Fragment,{children:["@",s.author," · "]}),e[9]=s.author,e[10]=h):h=e[10];let c;e[11]!==s.base?(c=o.jsx("span",{className:"font-mono text-xs",children:s.base}),e[11]=s.base,e[12]=c):c=e[12];let d;e[13]!==s.head?(d=o.jsx("span",{className:"font-mono text-xs",children:s.head}),e[13]=s.head,e[14]=d):d=e[14];let u;e[15]!==l||e[16]!==h||e[17]!==c||e[18]!==d?(u=o.jsxs("div",{className:"text-sm text-muted-foreground",children:[l," · ",h,c," ← ",d]}),e[15]=l,e[16]=h,e[17]=c,e[18]=d,e[19]=u):u=e[19];let f;return e[20]!==r||e[21]!==u?(f=o.jsxs("div",{className:"space-y-2",children:[r,u]}),e[20]=r,e[21]=u,e[22]=f):f=e[22],f}function zu(t){const e=z.c(9),{virtualMcpId:s}=t,{org:i}=ge(),r=vt(s),{currentBranch:n}=xt(),a=r?.metadata?.githubRepo??null;if(!a?.connectionId){let h;return e[0]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx("div",{className:"flex h-full items-center justify-center p-8 text-sm text-muted-foreground",children:"This virtualmcp is not linked to a GitHub repository."}),e[0]=h):h=e[0],h}if(!n){let h;return e[1]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-8 text-sm",children:[o.jsx(Rs,{className:"h-6 w-6 text-muted-foreground"}),o.jsx("div",{className:"text-muted-foreground",children:"No branch selected."}),o.jsx("div",{className:"text-xs text-muted-foreground",children:"Pick a branch from the dropdown in the header to see PR status."})]}),e[1]=h):h=e[1],h}let l;return e[2]!==n||e[3]!==a.connectionId||e[4]!==a.name||e[5]!==a.owner||e[6]!==i.id||e[7]!==i.slug?(l=o.jsx($u,{orgId:i.id,orgSlug:i.slug,connectionId:a.connectionId,owner:a.owner,repo:a.name,branch:n}),e[2]=n,e[3]=a.connectionId,e[4]=a.name,e[5]=a.owner,e[6]=i.id,e[7]=i.slug,e[8]=l):l=e[8],l}function $u(t){const e=z.c(50),{orgId:s,orgSlug:i,connectionId:r,owner:n,repo:a,branch:l}=t;let h;e[0]!==l||e[1]!==r||e[2]!==s||e[3]!==i||e[4]!==n||e[5]!==a?(h={orgId:s,orgSlug:i,connectionId:r,owner:n,repo:a,branch:l},e[0]=l,e[1]=r,e[2]=s,e[3]=i,e[4]=n,e[5]=a,e[6]=h):h=e[6];const{data:c,isLoading:d,isError:u}=Pa(h),f=Fu;if(d){let b;return e[7]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"Loading PR state…"}),e[7]=b):b=e[7],b}if(u){let b;return e[8]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"p-4 text-sm text-destructive",children:"Couldn't load PR state. The GitHub connection may be broken."}),e[8]=b):b=e[8],b}const m=`https://github.com/${n}/${a}/tree/${l}`;if(c&&c.state==="closed"){let b;e[9]!==c?(b=o.jsx(Lu,{pr:c}),e[9]=c,e[10]=b):b=e[10];const S=c.merged?"✓ Merged":"✗ Closed";let v;e[11]!==c.mergedAt?(v=c.mergedAt&&o.jsxs(o.Fragment,{children:[" · ",new Date(c.mergedAt).toLocaleDateString()]}),e[11]=c.mergedAt,e[12]=v):v=e[12];let y;e[13]!==c.author?(y=c.author&&o.jsxs(o.Fragment,{children:[" · by @",c.author]}),e[13]=c.author,e[14]=y):y=e[14];let k;e[15]!==c.base||e[16]!==S||e[17]!==v||e[18]!==y?(k=o.jsxs("div",{className:"text-sm text-success",children:[S," into ",c.base,v,y]}),e[15]=c.base,e[16]=S,e[17]=v,e[18]=y,e[19]=k):k=e[19];let N;e[20]!==c.title?(N=Ls(c.title),e[20]=c.title,e[21]=N):N=e[21];let j;e[22]!==N?(j=o.jsx("h1",{className:"text-lg font-semibold",children:N}),e[22]=N,e[23]=j):j=e[23];let T;e[24]!==c.body||e[25]!==c.number?(T=c.body&&o.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-3 text-sm",children:o.jsx(Qr,{id:`pr-body-${c.number}`,text:Ls(c.body)})}),e[24]=c.body,e[25]=c.number,e[26]=T):T=e[26];let I;e[27]!==k||e[28]!==j||e[29]!==T?(I=o.jsxs("div",{className:"flex flex-col gap-4 p-4 overflow-auto",children:[k,j,T]}),e[27]=k,e[28]=j,e[29]=T,e[30]=I):I=e[30];let D;return e[31]!==b||e[32]!==I?(D=o.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[b,I]}),e[31]=b,e[32]=I,e[33]=D):D=e[33],D}if(c&&c.state==="open"){let b;e[34]!==c?(b=o.jsx(Ou,{pr:c}),e[34]=c,e[35]=b):b=e[35];let S;e[36]!==r||e[37]!==n||e[38]!==c||e[39]!==a?(S=o.jsx("div",{className:"mt-8",children:o.jsx(Bu,{pr:c,connectionId:r,owner:n,repo:a})}),e[36]=r,e[37]=n,e[38]=c,e[39]=a,e[40]=S):S=e[40];let v;return e[41]!==b||e[42]!==S?(v=o.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:o.jsx("div",{className:"flex-1 overflow-auto",children:o.jsxs("div",{className:"mx-auto w-full max-w-[1200px] px-4 pt-8 pb-6 md:px-10 md:pt-12 md:pb-10",children:[b,S]})})}),e[41]=b,e[42]=S,e[43]=v):v=e[43],v}let _;e[44]===Symbol.for("react.memo_cache_sentinel")?(_=o.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-4 text-sm",children:`This branch doesn't have an open pull request. Click "Submit for review" in the header to open one; the agent will draft the title and summary from the current state of the branch.`}),e[44]=_):_=e[44];let p;e[45]!==m?(p=()=>f(m),e[45]=m,e[46]=p):p=e[46];let g;e[47]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx(us,{className:"mr-1.5 h-4 w-4"}),e[47]=g):g=e[47];let x;return e[48]!==p?(x=o.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[_,o.jsx("div",{className:"flex items-center gap-2",children:o.jsxs(se,{size:"sm",variant:"outline",onClick:p,children:[g,"Open branch on GitHub"]})})]}),e[48]=p,e[49]=x):x=e[49],x}function Fu(t){window.open(t,"_blank","noopener,noreferrer")}const Hu=Pi({tag:nt(),id:nt(),classes:nt(),text:nt(),html:nt(),manifestKey:nt().nullable(),componentName:nt().nullable(),parents:nt(),url:nt(),path:nt(),viewport:Pi({width:Gs(),height:Gs()}),position:Pi({x:Gs(),y:Gs()})}),Wu=`(function() {
31
+ ${ee}`:ee;l.setValue("metadata.instructions",te,{shouldDirty:!0})},J=new Set(h.map(L=>L.connection_id)),G=Ut(),[H,Q]=B.useState(!1),ie=async()=>{M();try{await i.delete.mutateAsync(t.id),be("agent_deleted",{agent_id:t.id,source:"agent_detail"}),fe.success(`Deleted "${t.title}"`),G({to:"/$org",params:{org:s.slug}})}catch{}};return o.jsxs(it,{children:[o.jsx(it.Content,{children:o.jsx(it.Body,{children:o.jsxs("div",{className:"flex flex-col gap-10",children:[!e&&o.jsx(it.Title,{actions:o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsxs(se,{variant:"outline",size:"sm",onClick:N,children:[o.jsx(Ft,{size:14,className:"!size-[14px]"}),"Test Agent"]}),o.jsx(se,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive",onClick:()=>Q(!0),children:o.jsx(hr,{size:14})})]}),children:"Settings"}),o.jsxs("div",{className:"flex items-center gap-3",children:[o.jsx(ht,{name:"icon",control:l.control,render:({field:L})=>o.jsx(fd,{value:L.value??null,onChange:ee=>{L.onChange(ee),E()},onColorChange:ee=>{l.setValue("metadata.ui.themeColor",ee,{shouldDirty:!0}),E()},name:l.watch("title")||"Agent",size:"md",className:"shrink-0",avatarClassName:"[&_svg]:w-1/2 [&_svg]:h-1/2",disabled:c})}),o.jsxs("div",{className:"flex flex-col flex-1 min-w-0",children:[o.jsx(ht,{name:"title",control:l.control,render:({field:L})=>o.jsx("input",{...L,type:"text",value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Agent name",className:"text-lg font-medium leading-tight text-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})}),o.jsx(ht,{name:"description",control:l.control,render:({field:L})=>o.jsx("input",{...L,type:"text",value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Add a description...",className:"text-sm text-muted-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-full truncate disabled:hover:bg-transparent disabled:focus:bg-transparent disabled:opacity-50"})})]}),o.jsxs(se,{variant:"outline",size:"sm",className:"shrink-0",onClick:()=>{be("agent_connect_modal_opened",{agent_id:t.id}),m({type:"SET_SHARE_DIALOG_OPEN",payload:!0})},children:[o.jsxs("span",{className:"flex items-center -space-x-1.5 mr-0.5",children:[o.jsx("span",{className:"inline-flex items-center justify-center size-4 rounded-full bg-black ring-1 ring-white/20 shrink-0",children:o.jsx("img",{src:"/logos/cursor.svg",alt:"Cursor",className:"size-2.5 brightness-0 invert"})}),o.jsx("span",{className:"relative z-10 inline-flex items-center justify-center size-4 rounded-full ring-1 ring-background shrink-0",style:{backgroundColor:"#D97757"},children:o.jsx("img",{src:"/logos/Claude Code.svg",alt:"Claude",className:"size-2.5 brightness-0 invert"})})]}),"Connect"]})]}),o.jsxs("div",{className:"flex items-center gap-2 -mt-6 text-muted-foreground",children:[o.jsx(ha,{id:t.created_by,size:"2xs",className:"text-sm text-muted-foreground"}),o.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),o.jsx("span",{className:"text-sm",children:new Date(t.created_at).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})})]}),o.jsxs("section",{className:"flex flex-col gap-3",children:[o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Connections"}),h.length>0&&o.jsxs(se,{variant:"outline",size:"sm",onClick:C,children:[o.jsx(ns,{size:14}),"Add connection"]})]}),o.jsx("div",{className:"flex flex-col gap-2",children:h.length===0?o.jsxs("button",{type:"button",onClick:C,className:"flex items-center gap-3 px-3 py-2.5 rounded-lg border border-dashed border-border hover:bg-accent/50 transition-colors w-full text-left cursor-pointer",children:[o.jsx("div",{className:"flex items-center justify-center size-8 rounded-md text-muted-foreground/75 border border-dashed border-border shrink-0",children:o.jsx(ns,{size:16})}),o.jsx("span",{className:"text-sm text-muted-foreground",children:"No connections yet. Add one to get started."})]}):h.map(L=>o.jsx(Tt,{fallback:()=>null,children:o.jsx(B.Suspense,{fallback:o.jsx(Ia,{}),children:o.jsx(eu,{connection_id:L.connection_id,usedConnectionIds:J,onOpenSettings:()=>q(L.connection_id),onRemove:()=>A(L.connection_id),onAuthenticate:F,onSwitchInstance:$,onNewInstance:()=>K(L.connection_id)})})},L.connection_id))})]}),o.jsxs("section",{className:"flex flex-col gap-3",children:[o.jsxs("div",{className:"flex items-center justify-between gap-3",children:[o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Instructions"}),!c&&o.jsxs("div",{className:"flex items-center gap-2",children:[!l.watch("metadata.instructions")?.trim()&&o.jsx(se,{variant:"outline",size:"sm",onClick:Y,children:"+ Prompt template"}),o.jsxs(se,{variant:"outline",size:"sm",disabled:g||!l.watch("metadata.instructions")?.trim(),onClick:k,children:[o.jsx(Ca,{size:13}),"Improve"]})]})]}),o.jsx(ht,{name:"metadata.instructions",control:l.control,render:({field:L})=>o.jsxs("div",{className:"relative rounded-xl card-shadow bg-card focus-within:ring-1 focus-within:ring-ring",children:[o.jsx(Rn,{...L,value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"min-h-[200px] max-h-[360px] overflow-auto resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed border-0 shadow-none px-4 py-3 pr-11 focus-visible:ring-0 focus-visible:ring-offset-0 bg-transparent",style:{boxShadow:"none"}}),o.jsxs(De,{delayDuration:0,children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{type:"button",variant:"ghost",size:"icon",className:"absolute top-2 right-2 h-7 w-7 text-muted-foreground",onClick:()=>p(!0),"aria-label":"Open fullscreen editor",children:o.jsx(Tc,{size:14})})}),o.jsx(Re,{side:"left",children:"Fullscreen"})]})]})})]}),o.jsx(nu,{virtualMcpId:t.id,form:l,flushAndSave:E}),o.jsxs("div",{className:"flex flex-col gap-3",children:[o.jsx("div",{className:"flex items-center justify-between gap-3",children:o.jsx("h2",{className:"text-sm font-medium text-foreground",children:"Sandbox"})}),o.jsx(wa,{className:"p-6 gap-5",children:o.jsxs(lr,{className:"p-0 space-y-5",children:[o.jsx(Ud,{repo:u}),o.jsx(Gd,{control:l.control})]})})]}),o.jsxs("section",{className:"flex items-center justify-between border-t border-border pt-6",children:[o.jsxs("div",{children:[o.jsx("p",{className:"text-sm font-medium",children:"Delete agent"}),o.jsx("p",{className:"text-sm text-muted-foreground",children:"Permanently delete this agent and all its data."})]}),o.jsxs(se,{variant:"outline",size:"sm",className:"text-destructive border-destructive/40 hover:bg-destructive/10 hover:text-destructive shrink-0",onClick:()=>Q(!0),children:[o.jsx(hr,{size:14}),"Delete agent"]})]})]})})}),o.jsx(fa,{open:H,onOpenChange:Q,children:o.jsxs(ma,{children:[o.jsxs(_a,{children:[o.jsx(pa,{children:"Delete Agent?"}),o.jsxs(ga,{children:["This action cannot be undone. This will permanently delete"," ",o.jsx("span",{className:"font-medium text-foreground",children:t.title}),"."]})]}),o.jsxs(va,{children:[o.jsx(xa,{children:"Cancel"}),o.jsx(ba,{onClick:ie,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),o.jsx(ql,{open:f.addDialogOpen,onOpenChange:L=>m({type:"SET_ADD_DIALOG_OPEN",payload:L}),agentId:t.id,addedConnectionIds:J,onAdd:P}),o.jsx(Id,{open:f.settingsDialogOpen,onOpenChange:L=>{L||m({type:"CLOSE_SETTINGS"})},selectedId:f.settingsConnectionId,form:l,connections:h,onAuthenticate:F}),o.jsx(Wd,{open:f.shareDialogOpen,onOpenChange:L=>m({type:"SET_SHARE_DIALOG_OPEN",payload:L}),virtualMcp:t}),o.jsx(on,{open:_,onOpenChange:p,children:o.jsxs(nn,{className:"w-[90vw] sm:max-w-6xl h-[85vh] flex flex-col p-0 gap-0",children:[o.jsx(Sa,{className:"px-6 pt-6 pb-3 border-b border-border shrink-0",children:o.jsx(ya,{children:"Instructions"})}),o.jsx("div",{className:"flex-1 min-h-0 p-6",children:o.jsx(ht,{name:"metadata.instructions",control:l.control,render:({field:L})=>o.jsx(Rn,{...L,value:L.value??"",onChange:ee=>{L.onChange(ee)},onBlur:()=>{L.onBlur(),E()},disabled:c,placeholder:"Define how this agent should behave, what tone to use, any constraints or guidelines...",className:"w-full h-full resize-none text-base text-muted-foreground placeholder:text-muted-foreground/40 leading-relaxed rounded-xl card-shadow px-4 py-3 focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-0 bg-card border-0",style:{boxShadow:"none"}})})})]})})]})}function au(t){const e=z.c(9),{virtualMcpId:s,hideOwnTitle:i}=t,r=Ut(),{org:n}=ge(),a=vt(s);if(!a){let c;return e[0]!==r||e[1]!==n.slug?(c=o.jsx("div",{className:"flex h-full w-full bg-background",children:o.jsx(fi,{title:"Space not found",description:"This space may have been deleted or you may not have access.",actions:o.jsx(se,{variant:"outline",onClick:()=>r({to:"/$org",params:{org:n.slug}}),children:"Back to spaces"})})}),e[0]=r,e[1]=n.slug,e[2]=c):c=e[2],c}let l;e[3]!==a?(l=$t(a)?.connectionId??"",e[3]=a,e[4]=l):l=e[4];let h;return e[5]!==i||e[6]!==l||e[7]!==a?(h=o.jsx(ou,{virtualMcp:a,hideOwnTitle:i},l),e[5]=i,e[6]=l,e[7]=a,e[8]=h):h=e[8],h}function zn(t){const e=z.c(2),{virtualMcpId:s}=t;let i;return e[0]!==s?(i=o.jsx(au,{virtualMcpId:s,hideOwnTitle:!0}),e[0]=s,e[1]=i):i=e[1],i}const lu={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:" "};function Ls(t){return t?t.replace(/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,(e,s)=>{if(s.startsWith("#x")||s.startsWith("#X")){const i=Number.parseInt(s.slice(2),16);return Number.isFinite(i)?String.fromCodePoint(i):e}if(s.startsWith("#")){const i=Number.parseInt(s.slice(1),10);return Number.isFinite(i)?String.fromCodePoint(i):e}return lu[s]??e}):""}function Ws(t){if(!t||typeof t!="object")return null;const e=t;if(e.structuredContent!==void 0)return e.structuredContent;const s=e.content?.find(i=>i.type==="text")?.text;if(!s)return null;try{return JSON.parse(s)}catch{return null}}const Ei=6e4,Ti=3e4;function Pa(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.branch?`${t.owner}:${t.branch}`:void 0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={owner:t.owner,repo:t.repo,state:"all",head:r,perPage:1},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.branch;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"list_pull_requests",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:cu},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function cu(t){const e=Ws(t);if(!e||!Array.isArray(e)||e.length===0)return null;const s=e[0],i=s.base,r=s.head,n=s.user;return{number:s.number??0,title:s.title??"",body:s.body??"",state:s.state==="closed"?"closed":"open",merged:s.merged_at!=null,mergedAt:s.merged_at??null,base:i?.ref??"main",head:r?.ref??"",headSha:r?.sha??"",htmlUrl:s.html_url??"",author:n?.login??""}}function Ba(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get_files",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:hu},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function hu(t){const e=Ws(t);return Array.isArray(e)?e.map(du):[]}function du(t){const e=Number(t.additions??0),s=Number(t.changes??e),i=Number(t.deletions??Math.max(0,s-e));return{filename:String(t.filename??""),status:t.status??"modified",additions:e,deletions:i,blobUrl:typeof t.blob_url=="string"?t.blob_url:null}}function La(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get_check_runs",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:uu},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function uu(t){const e=Ws(t);return(Array.isArray(e)?e:e?.check_runs??[]).map(fu)}function fu(t){const e=t.started_at,s=t.completed_at,i=e&&s?new Date(s).getTime()-new Date(e).getTime():null;return{id:String(t.id??""),name:String(t.name??""),status:t.status??"completed",conclusion:t.conclusion??null,htmlUrl:String(t.html_url??""),durationMs:i}}function mu(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get_comments",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ei,refetchIntervalInBackground:!1,staleTime:Ti,select:_u},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function _u(t){const e=Ws(t);return Array.isArray(e)?e.map(pu):[]}function pu(t){const e=t.user;return{id:Number(t.id??0),author:e?.login??"",body:String(t.body??""),createdAt:String(t.created_at??""),htmlUrl:String(t.html_url??"")}}function gu(t){const e=z.c(28),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=l):l=e[6];const h=Ba(l);if(h.isLoading){let b;return e[7]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading files…"}),e[7]=b):b=e[7],b}if(h.isError){let b;return e[8]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load file list."}),e[8]=b):b=e[8],b}let c;e[9]!==h.data?(c=h.data??[],e[9]=h.data,e[10]=c):c=e[10];const d=c;if(d.length===0){let b;return e[11]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"text-sm text-muted-foreground",children:"No files changed."}),e[11]=b):b=e[11],b}const u=d.length===1?"":"s",f=`${s.htmlUrl}/files`;let m;e[12]!==f?(m=o.jsx("a",{href:f,target:"_blank",rel:"noreferrer",className:"underline hover:text-foreground",children:"View diffs on GitHub"}),e[12]=f,e[13]=m):m=e[13];let _;e[14]!==d.length||e[15]!==u||e[16]!==m?(_=o.jsxs("div",{className:"pb-2 text-xs text-muted-foreground",children:[d.length," file",u," changed ·"," ",m]}),e[14]=d.length,e[15]=u,e[16]=m,e[17]=_):_=e[17];let p;if(e[18]!==d||e[19]!==s.htmlUrl){let b;e[21]!==s.htmlUrl?(b=S=>o.jsx("li",{children:o.jsxs("a",{href:S.blobUrl??`${s.htmlUrl}/files`,target:"_blank",rel:"noreferrer",className:"flex items-center justify-between rounded px-2 py-1 font-mono text-xs hover:bg-muted",children:[o.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[o.jsx(vu,{status:S.status}),o.jsx("span",{className:"truncate",children:S.filename})]}),o.jsxs("span",{className:"flex shrink-0 items-center gap-2 tabular-nums",children:[o.jsxs("span",{children:[o.jsxs("span",{className:"text-success",children:["+",S.additions]})," ",o.jsxs("span",{className:"text-destructive",children:["−",S.deletions]})]}),o.jsx(us,{className:"h-3 w-3 text-muted-foreground"})]})]})},S.filename),e[21]=s.htmlUrl,e[22]=b):b=e[22],p=d.map(b),e[18]=d,e[19]=s.htmlUrl,e[20]=p}else p=e[20];let g;e[23]!==p?(g=o.jsx("ul",{className:"space-y-0.5",children:p}),e[23]=p,e[24]=g):g=e[24];let x;return e[25]!==_||e[26]!==g?(x=o.jsxs("div",{className:"flex flex-col gap-1",children:[_,g]}),e[25]=_,e[26]=g,e[27]=x):x=e[27],x}function vu(t){const e=z.c(2),{status:s}=t,i=s==="added"?"A":s==="removed"?"D":s==="renamed"?"R":s==="copied"?"C":"M";let r;return e[0]!==i?(r=o.jsx("span",{className:"inline-flex h-4 w-4 items-center justify-center rounded bg-muted text-[10px] font-bold text-muted-foreground",children:i}),e[0]=i,e[1]=r):r=e[1],r}const mt="The user clicked this action deliberately — execute directly. Do not call user_ask unless you hit an actual problem outside the scope of this intent (missing auth, unresolvable conflict, a check with multiple plausible fixes).";function xu(t){return`Commit every pending change in the working tree with a concise conventional-commit message summarizing the diff, then push to \`origin/${t.branch}\`. If local commits are ahead of the remote, push those in the same invocation. ${mt}`}function bu(t){return`Open a pull request for \`${t.branch}\` against its base. Write a clear title and a summary of the changes so far. ${mt}`}function Su(t){return`Reopen PR #${t.prNumber}. ${mt}`}function yu(t){return`Rebase \`${t.branch}\` on the latest base and force-push with --force-with-lease. ${mt}`}function wu(t){return`Re-run the \`${t.checkName}\` check on PR #${t.prNumber}. If an empty commit is needed to retrigger CI, create and push one. ${mt}`}function Cu(t){const e=(t.failingChecks??[]).map(s=>`\`${s}\``).join(", ");return`PR #${t.prNumber} has failing checks: ${e}. For each: read the logs, diagnose the root cause, apply the smallest fix that makes it pass, commit, and push. ${mt}`}function ku(t){return`Mark PR #${t.prNumber} ready for review. ${mt}`}function Nu(t){return`Read the unresolved review threads on PR #${t.prNumber}. For each thread: understand the reviewer's ask, apply the needed changes, commit, push, reply explaining what changed, and resolve the thread. If a comment is a question that doesn't need a code change, reply with the answer and resolve. ${mt}`}function ju(t){return`Review PR #${t.prNumber}. Read the full diff, analyze every changed file for correctness, security, code quality, and alignment with the repo's patterns. Post specific line-level review comments on concerns, then submit an overall review (approve / request changes / comment) with a concise summary. Do not modify the code — this is a read-and-comment pass. ${mt}`}function Eu(t){return`Squash-merge PR #${t.prNumber} into its base. ${mt}`}function Tu(t){const e=z.c(24),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge(),l=Fs();let h;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(h={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=h):h=e[6];const c=La(h);let d;e[7]!==l||e[8]!==s.number?(d=g=>l.sendMessage({parts:[{type:"text",text:wu({prNumber:s.number,checkName:g})}]}),e[7]=l,e[8]=s.number,e[9]=d):d=e[9];const u=d;if(c.isLoading){let g;return e[10]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading checks…"}),e[10]=g):g=e[10],g}if(c.isError){let g;return e[11]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"text-sm text-destructive",children:"Couldn't load check runs."}),e[11]=g):g=e[11],g}let f;e[12]!==c.data?(f=c.data??[],e[12]=c.data,e[13]=f):f=e[13];const m=f;if(m.length===0){let g;return e[14]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"text-sm text-muted-foreground",children:"No check runs on the PR head commit."}),e[14]=g):g=e[14],g}let _;if(e[15]!==l||e[16]!==m||e[17]!==u){let g;e[19]!==l||e[20]!==u?(g=x=>o.jsxs("li",{className:"flex items-center justify-between gap-2 rounded px-2 py-1.5 text-sm hover:bg-muted",children:[o.jsxs("span",{className:"flex min-w-0 items-center gap-2",children:[o.jsx(Ru,{check:x}),o.jsx("span",{className:"truncate",children:x.name}),x.durationMs!=null&&o.jsx("span",{className:"text-xs text-muted-foreground",children:Du(x.durationMs)})]}),o.jsxs("span",{className:"flex shrink-0 items-center gap-1",children:[x.htmlUrl&&o.jsx("a",{href:x.htmlUrl,target:"_blank",rel:"noreferrer",className:"inline-flex h-7 items-center justify-center rounded px-2 text-xs text-muted-foreground hover:bg-background",title:"View run",children:o.jsx(us,{className:"h-3.5 w-3.5"})}),x.conclusion==="failure"&&o.jsx(se,{size:"sm",variant:"ghost",disabled:l.isStreaming,onClick:()=>u(x.name),children:"Re-run"})]})]},x.id),e[19]=l,e[20]=u,e[21]=g):g=e[21],_=m.map(g),e[15]=l,e[16]=m,e[17]=u,e[18]=_}else _=e[18];let p;return e[22]!==_?(p=o.jsx("ul",{className:"flex flex-col gap-0.5",children:_}),e[22]=_,e[23]=p):p=e[23],p}function Ru(t){const e=z.c(5),{check:s}=t;if(s.status!=="completed"){let n;return e[0]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("span",{className:"text-muted-foreground","aria-label":"In progress",children:"○"}),e[0]=n):n=e[0],n}if(s.conclusion==="success"){let n;return e[1]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("span",{className:"text-success","aria-label":"Success",children:"✓"}),e[1]=n):n=e[1],n}if(s.conclusion==="failure"){let n;return e[2]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("span",{className:"text-destructive","aria-label":"Failure",children:"✗"}),e[2]=n):n=e[2],n}const i=s.conclusion??"—";let r;return e[3]!==i?(r=o.jsx("span",{className:"text-muted-foreground","aria-label":i,children:"—"}),e[3]=i,e[4]=r):r=e[4],r}function Du(t){const e=Math.round(t/1e3);return e<60?`${e}s`:`${Math.round(e/60)}m`}function Mu(t){const e=z.c(10),{comments:s,isLoading:i,isError:r}=t;if(i||r||!s||s.length===0)return null;const n=s.length===1?"":"s";let a;e[0]!==s.length||e[1]!==n?(a=o.jsxs(Uc,{className:"py-3 text-sm font-medium",children:[s.length," comment",n]}),e[0]=s.length,e[1]=n,e[2]=a):a=e[2];let l;e[3]!==s?(l=s.map(Au),e[3]=s,e[4]=l):l=e[4];let h;e[5]!==l?(h=o.jsx(Kc,{className:"space-y-3 pb-3",children:l}),e[5]=l,e[6]=h):h=e[6];let c;return e[7]!==a||e[8]!==h?(c=o.jsx(Vc,{type:"single",collapsible:!0,className:"border-t border-border",children:o.jsxs(qc,{value:"comments",className:"border-b-0",children:[a,h]})}),e[7]=a,e[8]=h,e[9]=c):c=e[9],c}function Au(t){return o.jsxs("div",{className:"rounded-md border border-border p-3",children:[o.jsxs("div",{className:"mb-1 text-xs text-muted-foreground",children:["@",t.author," · ",Iu(t.createdAt)]}),o.jsx(Qr,{id:`pr-comment-${t.id}`,text:Ls(t.body)})]},t.id)}function Iu(t){if(!t)return"";const e=new Date(t).getTime();if(!Number.isFinite(e))return"";const s=Date.now()-e;if(s<0)return"just now";const i=Math.floor(s/864e5);if(i>0)return`${i}d ago`;const r=Math.floor(s/36e5);if(r>0)return`${r}h ago`;const n=Math.floor(s/6e4);return`${Math.max(1,n)}m ago`}function Pu(t){const e=z.c(19),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=l):l=e[6];const h=mu(l);let c;e[7]!==s.body||e[8]!==s.number?(c=s.body&&o.jsx("div",{className:"text-sm",children:o.jsx(Qr,{id:`pr-body-${s.number}`,text:Ls(s.body)})}),e[7]=s.body,e[8]=s.number,e[9]=c):c=e[9];let d;e[10]!==h.data?(d=h.data??[],e[10]=h.data,e[11]=d):d=e[11];let u;e[12]!==h.isError||e[13]!==h.isLoading||e[14]!==d?(u=o.jsx(Mu,{comments:d,isLoading:h.isLoading,isError:h.isError}),e[12]=h.isError,e[13]=h.isLoading,e[14]=d,e[15]=u):u=e[15];let f;return e[16]!==c||e[17]!==u?(f=o.jsxs("div",{className:"space-y-8",children:[c,u]}),e[16]=c,e[17]=u,e[18]=f):f=e[18],f}function Bu(t){const e=z.c(27),{pr:s,connectionId:i,owner:r,repo:n}=t,{org:a}=ge();let l;e[0]!==i||e[1]!==a.id||e[2]!==a.slug||e[3]!==r||e[4]!==s.number||e[5]!==n?(l={orgId:a.id,orgSlug:a.slug,connectionId:i,owner:r,repo:n,prNumber:s.number},e[0]=i,e[1]=a.id,e[2]=a.slug,e[3]=r,e[4]=s.number,e[5]=n,e[6]=l):l=e[6];const c=Ba(l).data?.length,[d,u]=B.useState("description"),f=B.useRef({description:null,changes:null,checks:null}),[m,_]=B.useState(null),p=j=>T=>{if(f.current[j]=T,T&&j===d){const I=T.offsetLeft,D=T.offsetWidth;(m===null||I!==m.left||D!==m.width)&&_({left:I,width:D})}},g=j=>{const T=j;u(T);const I=f.current[T];I&&_({left:I.offsetLeft,width:I.offsetWidth})},x=Li,b=p("checks");let S;e[7]!==x||e[8]!==b?(S=o.jsx(x,{ref:b,variant:"underline",value:"checks",className:"pb-3 data-[state=active]:border-transparent",children:"Checks"}),e[7]=x,e[8]=b,e[9]=S):S=e[9];let v;e[10]!==m?(v=m&&o.jsx("div",{"aria-hidden":!0,className:"pointer-events-none absolute bottom-[-1px] h-0.5 bg-primary transition-[left,width] duration-200 ease-out",style:{left:m.left,width:m.width}}),e[10]=m,e[11]=v):v=e[11];let y;e[12]!==i||e[13]!==r||e[14]!==s||e[15]!==n?(y=o.jsx(Oi,{value:"description",className:"mt-6",children:o.jsx(Pu,{pr:s,connectionId:i,owner:r,repo:n})}),e[12]=i,e[13]=r,e[14]=s,e[15]=n,e[16]=y):y=e[16];let k;e[17]!==i||e[18]!==r||e[19]!==s||e[20]!==n?(k=o.jsx(Oi,{value:"changes",className:"mt-6",children:o.jsx(gu,{pr:s,connectionId:i,owner:r,repo:n})}),e[17]=i,e[18]=r,e[19]=s,e[20]=n,e[21]=k):k=e[21];let N;return e[22]!==i||e[23]!==r||e[24]!==s||e[25]!==n?(N=o.jsx(Oi,{value:"checks",className:"mt-6",children:o.jsx(Tu,{pr:s,connectionId:i,owner:r,repo:n})}),e[22]=i,e[23]=r,e[24]=s,e[25]=n,e[26]=N):N=e[26],o.jsxs(uh,{value:d,onValueChange:g,variant:"underline",children:[o.jsxs(fh,{variant:"underline",className:"relative h-auto p-0",children:[o.jsx(Li,{ref:p("description"),variant:"underline",value:"description",className:"pb-3 data-[state=active]:border-transparent",children:"Description"}),o.jsxs(Li,{ref:p("changes"),variant:"underline",value:"changes",className:"pb-3 data-[state=active]:border-transparent",children:["Changes",c!==void 0?` ${c}`:""]}),S,v]}),y,k,N]})}function Lu(t){const e=z.c(5),{pr:s}=t,i=`Open PR #${s.number} on GitHub`;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx(us,{className:"h-4 w-4 text-muted-foreground"}),e[0]=r):r=e[0];let n;return e[1]!==s.htmlUrl||e[2]!==s.number||e[3]!==i?(n=o.jsx("div",{className:"flex h-12 items-center border-b border-border px-4 shrink-0",children:o.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":i,className:"inline-flex items-center gap-1.5 text-base font-medium text-foreground hover:underline",children:["PR #",s.number,r]})}),e[1]=s.htmlUrl,e[2]=s.number,e[3]=i,e[4]=n):n=e[4],n}function Ou(t){const e=z.c(23),{pr:s}=t;let i;e[0]!==s.title?(i=Ls(s.title),e[0]=s.title,e[1]=i):i=e[1];let r;e[2]!==i?(r=o.jsx("h1",{className:"text-2xl font-semibold",children:i}),e[2]=i,e[3]=r):r=e[3];const n=`Open PR #${s.number} on GitHub`;let a;e[4]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(us,{className:"h-3.5 w-3.5"}),e[4]=a):a=e[4];let l;e[5]!==s.htmlUrl||e[6]!==s.number||e[7]!==n?(l=o.jsxs("a",{href:s.htmlUrl,target:"_blank",rel:"noreferrer","aria-label":n,className:"inline-flex items-center gap-1 hover:text-foreground",children:["PR #",s.number,a]}),e[5]=s.htmlUrl,e[6]=s.number,e[7]=n,e[8]=l):l=e[8];let h;e[9]!==s.author?(h=s.author&&o.jsxs(o.Fragment,{children:["@",s.author," · "]}),e[9]=s.author,e[10]=h):h=e[10];let c;e[11]!==s.base?(c=o.jsx("span",{className:"font-mono text-xs",children:s.base}),e[11]=s.base,e[12]=c):c=e[12];let d;e[13]!==s.head?(d=o.jsx("span",{className:"font-mono text-xs",children:s.head}),e[13]=s.head,e[14]=d):d=e[14];let u;e[15]!==l||e[16]!==h||e[17]!==c||e[18]!==d?(u=o.jsxs("div",{className:"text-sm text-muted-foreground",children:[l," · ",h,c," ← ",d]}),e[15]=l,e[16]=h,e[17]=c,e[18]=d,e[19]=u):u=e[19];let f;return e[20]!==r||e[21]!==u?(f=o.jsxs("div",{className:"space-y-2",children:[r,u]}),e[20]=r,e[21]=u,e[22]=f):f=e[22],f}function zu(t){const e=z.c(9),{virtualMcpId:s}=t,{org:i}=ge(),r=vt(s),{currentBranch:n}=xt(),a=r?.metadata?.githubRepo??null;if(!a?.connectionId){let h;return e[0]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx("div",{className:"flex h-full items-center justify-center p-8 text-sm text-muted-foreground",children:"This virtualmcp is not linked to a GitHub repository."}),e[0]=h):h=e[0],h}if(!n){let h;return e[1]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-8 text-sm",children:[o.jsx(Rs,{className:"h-6 w-6 text-muted-foreground"}),o.jsx("div",{className:"text-muted-foreground",children:"No branch selected."}),o.jsx("div",{className:"text-xs text-muted-foreground",children:"Pick a branch from the dropdown in the header to see PR status."})]}),e[1]=h):h=e[1],h}let l;return e[2]!==n||e[3]!==a.connectionId||e[4]!==a.name||e[5]!==a.owner||e[6]!==i.id||e[7]!==i.slug?(l=o.jsx($u,{orgId:i.id,orgSlug:i.slug,connectionId:a.connectionId,owner:a.owner,repo:a.name,branch:n}),e[2]=n,e[3]=a.connectionId,e[4]=a.name,e[5]=a.owner,e[6]=i.id,e[7]=i.slug,e[8]=l):l=e[8],l}function $u(t){const e=z.c(50),{orgId:s,orgSlug:i,connectionId:r,owner:n,repo:a,branch:l}=t;let h;e[0]!==l||e[1]!==r||e[2]!==s||e[3]!==i||e[4]!==n||e[5]!==a?(h={orgId:s,orgSlug:i,connectionId:r,owner:n,repo:a,branch:l},e[0]=l,e[1]=r,e[2]=s,e[3]=i,e[4]=n,e[5]=a,e[6]=h):h=e[6];const{data:c,isLoading:d,isError:u}=Pa(h),f=Fu;if(d){let b;return e[7]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"p-4 text-sm text-muted-foreground",children:"Loading PR state…"}),e[7]=b):b=e[7],b}if(u){let b;return e[8]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx("div",{className:"p-4 text-sm text-destructive",children:"Couldn't load PR state. The GitHub connection may be broken."}),e[8]=b):b=e[8],b}const m=`https://github.com/${n}/${a}/tree/${l}`;if(c&&c.state==="closed"){let b;e[9]!==c?(b=o.jsx(Lu,{pr:c}),e[9]=c,e[10]=b):b=e[10];const S=c.merged?"✓ Merged":"✗ Closed";let v;e[11]!==c.mergedAt?(v=c.mergedAt&&o.jsxs(o.Fragment,{children:[" · ",new Date(c.mergedAt).toLocaleDateString()]}),e[11]=c.mergedAt,e[12]=v):v=e[12];let y;e[13]!==c.author?(y=c.author&&o.jsxs(o.Fragment,{children:[" · by @",c.author]}),e[13]=c.author,e[14]=y):y=e[14];let k;e[15]!==c.base||e[16]!==S||e[17]!==v||e[18]!==y?(k=o.jsxs("div",{className:"text-sm text-success",children:[S," into ",c.base,v,y]}),e[15]=c.base,e[16]=S,e[17]=v,e[18]=y,e[19]=k):k=e[19];let N;e[20]!==c.title?(N=Ls(c.title),e[20]=c.title,e[21]=N):N=e[21];let j;e[22]!==N?(j=o.jsx("h1",{className:"text-lg font-semibold",children:N}),e[22]=N,e[23]=j):j=e[23];let T;e[24]!==c.body||e[25]!==c.number?(T=c.body&&o.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-3 text-sm",children:o.jsx(Qr,{id:`pr-body-${c.number}`,text:Ls(c.body)})}),e[24]=c.body,e[25]=c.number,e[26]=T):T=e[26];let I;e[27]!==k||e[28]!==j||e[29]!==T?(I=o.jsxs("div",{className:"flex flex-col gap-4 p-4 overflow-auto",children:[k,j,T]}),e[27]=k,e[28]=j,e[29]=T,e[30]=I):I=e[30];let D;return e[31]!==b||e[32]!==I?(D=o.jsxs("div",{className:"flex min-h-0 flex-1 flex-col",children:[b,I]}),e[31]=b,e[32]=I,e[33]=D):D=e[33],D}if(c&&c.state==="open"){let b;e[34]!==c?(b=o.jsx(Ou,{pr:c}),e[34]=c,e[35]=b):b=e[35];let S;e[36]!==r||e[37]!==n||e[38]!==c||e[39]!==a?(S=o.jsx("div",{className:"mt-8",children:o.jsx(Bu,{pr:c,connectionId:r,owner:n,repo:a})}),e[36]=r,e[37]=n,e[38]=c,e[39]=a,e[40]=S):S=e[40];let v;return e[41]!==b||e[42]!==S?(v=o.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:o.jsx("div",{className:"flex-1 overflow-auto",children:o.jsxs("div",{className:"mx-auto w-full max-w-[1200px] px-4 pt-8 pb-6 md:px-10 md:pt-12 md:pb-10",children:[b,S]})})}),e[41]=b,e[42]=S,e[43]=v):v=e[43],v}let _;e[44]===Symbol.for("react.memo_cache_sentinel")?(_=o.jsx("div",{className:"rounded-md border border-border bg-muted/30 p-4 text-sm",children:`This branch doesn't have an open pull request. Click "Submit for review" in the header to open one; the agent will draft the title and summary from the current state of the branch.`}),e[44]=_):_=e[44];let p;e[45]!==m?(p=()=>f(m),e[45]=m,e[46]=p):p=e[46];let g;e[47]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx(us,{className:"mr-1.5 h-4 w-4"}),e[47]=g):g=e[47];let x;return e[48]!==p?(x=o.jsxs("div",{className:"flex flex-col gap-4 p-4",children:[_,o.jsx("div",{className:"flex items-center gap-2",children:o.jsxs(se,{size:"sm",variant:"outline",onClick:p,children:[g,"Open branch on GitHub"]})})]}),e[48]=p,e[49]=x):x=e[49],x}function Fu(t){window.open(t,"_blank","noopener,noreferrer")}const Hu=Pi({tag:nt(),id:nt(),classes:nt(),text:nt(),html:nt(),manifestKey:nt().nullable(),componentName:nt().nullable(),parents:nt(),url:nt(),path:nt(),viewport:Pi({width:Gs(),height:Gs()}),position:Pi({x:Gs(),y:Gs()})}),Wu=`(function() {
32
32
  if (window.__visualEditorActive) return;
33
33
  window.__visualEditorActive = true;
34
34
 
@@ -152,7 +152,7 @@ ${ee}`:ee;l.setValue("metadata.instructions",te,{shouldDirty:!0})},J=new Set(h.m
152
152
  });
153
153
  })();`;function Yt(t){return t.replace(/[`*_]/g,"\\$&")}function Uu(t,e){const s=[`The user selected an element on the live preview and asked: **"${Yt(e.trim())}"**`,"","For text content changes, locate the correct source file and apply the change.","For code and CSS changes, understand which component the user is referring to and apply changes to the correct component.",""];t.manifestKey&&s.push(`**Section source file:** \`${Yt(t.manifestKey)}\``,"");const i=`<${t.tag}${t.classes?` class="${Yt(t.classes)}"`:""}>`;s.push(`**Clicked element:** \`${i}\``),t.parents&&s.push(`**DOM breadcrumb:** ${Yt(t.parents)} > ${t.tag}`),t.text&&s.push(`**Text content:** "${Yt(t.text)}"`),t.componentName&&s.push(`**Component name:** ${Yt(t.componentName)}`);const r=t.html.replace(/```/g,"`` `");return s.push("","**HTML snippet:**","```html",r,"```"),s.push("","Please read the source file, locate the element, and apply the requested change."),s.join(`
154
154
  `)}function Ku(t,e,s=320,i=44,r=12){const{x:n,y:a}=t,{width:l,height:h}=e,c=Math.max(r,Math.min(n-s/2,l-s-r)),u=a/h>.68?Math.max(r,a-i-18):Math.min(a+18,h-i-r);return{leftPct:c/l*100,topPct:u/h*100}}function Vu(t){const e=z.c(32),{element:s,onDismiss:i}=t,[r,n]=B.useState(""),a=B.useRef(null),{sendMessage:l}=Fs(),{setChatOpen:h}=sn();let c;e[0]!==s||e[1]!==r||e[2]!==i||e[3]!==l||e[4]!==h?(c=()=>{if(!r.trim())return;const I=Uu(s,r);h(!0),l({parts:[{type:"text",text:I}]}),i()},e[0]=s,e[1]=r,e[2]=i,e[3]=l,e[4]=h,e[5]=c):c=e[5];const d=c;let u;e[6]!==s.position||e[7]!==s.viewport?(u=Ku(s.position,s.viewport),e[6]=s.position,e[7]=s.viewport,e[8]=u):u=e[8];const f=u,m=`${f.leftPct}%`,_=`${f.topPct}%`;let p;e[9]!==m||e[10]!==_?(p={left:m,top:_,width:"320px"},e[9]=m,e[10]=_,e[11]=p):p=e[11];let g;e[12]!==d?(g=I=>{I.preventDefault(),d()},e[12]=d,e[13]=g):g=e[13];let x;e[14]===Symbol.for("react.memo_cache_sentinel")?(x=I=>n(I.target.value),e[14]=x):x=e[14];let b;e[15]!==i?(b=I=>{I.key==="Escape"&&i()},e[15]=i,e[16]=b):b=e[16];let S;e[17]!==r||e[18]!==b?(S=o.jsx("input",{ref:a,autoFocus:!0,type:"text",value:r,onChange:x,onKeyDown:b,placeholder:"Ask the AI...",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground"}),e[17]=r,e[18]=b,e[19]=S):S=e[19];let v;e[20]!==r?(v=r.trim(),e[20]=r,e[21]=v):v=e[21];const y=!v;let k;e[22]===Symbol.for("react.memo_cache_sentinel")?(k=o.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[o.jsx("title",{children:"Send"}),o.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),e[22]=k):k=e[22];let N;e[23]!==y?(N=o.jsx("button",{type:"submit",disabled:y,className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-foreground text-background transition-opacity disabled:opacity-30",title:"Send",children:k}),e[23]=y,e[24]=N):N=e[24];let j;e[25]!==N||e[26]!==g||e[27]!==S?(j=o.jsxs("form",{className:"pointer-events-auto flex w-full items-center gap-1.5 rounded-xl border border-border bg-background/95 px-3 py-1.5 shadow-lg backdrop-blur",onSubmit:g,children:[S,N]}),e[25]=N,e[26]=g,e[27]=S,e[28]=j):j=e[28];let T;return e[29]!==j||e[30]!==p?(T=o.jsx("div",{className:"absolute z-30 pointer-events-none",style:p,children:j}),e[29]=j,e[30]=p,e[31]=T):T=e[31],T}const qu={phase:null,lifecycle:{phase:"idle"},status:{state:"running"},branch:{kind:"unknown"},suspended:!1,notFound:!1,scripts:[],activeProcesses:[],getBuffer:()=>"",hasData:()=>!1,subscribeChunks:()=>()=>{},subscribeReload:()=>()=>{}},Oa=B.createContext(qu),$n=16384;class Gu{data="";append(e){this.data+=e,this.data.length>$n&&(this.data=this.data.slice(this.data.length-$n))}get(){return this.data}clear(){this.data=""}}const Yu=6e4,Xu=1e3,Ju=3e4,Zu=["lifecycle","status","tasks","scripts","branch","reload"],Qu="log";function ef({virtualMcpId:t,branch:e,children:s}){const{org:i}=ge(),[r,n]=B.useState(null),[a,l]=B.useState({phase:"idle"}),[h,c]=B.useState({state:"running"}),[d,u]=B.useState({kind:"unknown"}),[f,m]=B.useState(!1),[_,p]=B.useState(!1),[g,x]=B.useState([]),[b,S]=B.useState([]),[,v]=B.useState(0),y=B.useRef(new Map),k=B.useRef(new Set),N=B.useRef(new Set),j=B.useRef(null),T=D=>{let M=y.current.get(D);return M||(M=new Gu,y.current.set(D,M)),M};B.useEffect(()=>{if(n(null),l({phase:"idle"}),c({state:"running"}),u({kind:"unknown"}),j.current=null,m(!1),p(!1),x([]),S([]),y.current.clear(),!t||!e)return;const D=`/api/${encodeURIComponent(i.slug)}/vm-events?virtualMcpId=${encodeURIComponent(t)}&branch=${encodeURIComponent(e)}`;let M=!1,w=0,R=null,E=null,C=null,P=!1;const A=()=>{E||(E=setTimeout(()=>{m(!0)},Yu))},$=()=>{E&&(clearTimeout(E),E=null)},K=H=>{try{const Q=JSON.parse(H.data);n(Q),Q.kind!=="failed"&&p(!1),Q.kind==="failed"&&(P=!0,C?.close())}catch(Q){console.warn("[vm-events] bad phase payload",Q)}},q=()=>{p(!0),n(null),l({phase:"idle"}),c({state:"running"}),u({kind:"unknown"}),x([]),S([]),y.current.clear()},F=H=>{try{const Q=JSON.parse(H.data);if(typeof Q.data!="string")return;const ie=Q.data.replace(/\r?\n/g,`\r
155
- `);T(Q.source).append(ie);for(const L of k.current)try{L(Q.source,ie)}catch{}v(L=>L+1)}catch{}},Y=H=>{const Q=H.type;try{const ie=JSON.parse(H.data);switch(Q){case"lifecycle":{const L=ie;l(L.state);const ee=L.state.phase==="running"?L.state.port:null,te=j.current;if(j.current=ee,te!==null&&ee!==null&&te!==ee)for(const W of N.current)try{W()}catch{}return}case"status":c(ie);return;case"tasks":{const ee=ie.active.map(te=>te.logName??"").filter(Boolean);S(ee);return}case"scripts":x(ie.scripts);return;case"branch":u(ie.meta);return;case"reload":for(const L of N.current)try{L()}catch{}return}}catch{}};function J(){if(!(M||P)){C=new EventSource(D),C.onopen=()=>{w=0,$(),m(!1)},C.onerror=()=>{C?.readyState===EventSource.CLOSED&&(P||(A(),G()))},C.addEventListener("phase",K),C.addEventListener("gone",q),C.addEventListener(Qu,F);for(const H of Zu)C.addEventListener(H,Y)}}function G(){if(M||R||P)return;const H=Math.min(Xu*2**w,Ju);w++,R=setTimeout(()=>{R=null,!M&&(C?.close(),J())},H)}return J(),()=>{M=!0,C?.close(),R&&clearTimeout(R),$()}},[t,e,i.slug]);const I={phase:r,lifecycle:a,status:h,branch:d,suspended:f,notFound:_,scripts:g,activeProcesses:b,getBuffer:D=>y.current.get(D)?.get()??"",hasData:D=>(y.current.get(D)?.get().length??0)>0,subscribeChunks:D=>(k.current.add(D),()=>{k.current.delete(D)}),subscribeReload:D=>(N.current.add(D),()=>{N.current.delete(D)})};return o.jsx(Oa,{value:I,children:s})}function fs(){return B.use(Oa)}function tf(t){const{subscribeChunks:e}=fs(),s=B.useRef(t);s.current=t,B.useEffect(()=>e((n,a)=>{s.current?.(n,a)}),[e])}function sf(t){const{subscribeReload:e}=fs(),s=B.useRef(t);s.current=t,B.useEffect(()=>e(()=>{s.current?.()}),[e])}function rf(t){return t.lastStartError?{kind:"errored",error:t.lastStartError}:t.suspended||t.appPaused?{kind:"suspended"}:t.userStopped?{kind:"never-started"}:t.notFound?{kind:"starting-now"}:!t.previewUrl&&t.vmStartPending?{kind:"starting-now"}:!t.previewUrl&&t.claimPhase&&t.claimPhase.kind!=="failed"?{kind:"starting-now"}:t.previewUrl?t.status==="online"||t.status==="offline"?t.htmlSupport?{kind:"iframe",previewUrl:t.previewUrl}:t.status==="offline"?{kind:"crashed",previewUrl:t.previewUrl}:{kind:"no-html",previewUrl:t.previewUrl}:{kind:"starting-now"}:{kind:"never-started"}}const za={claiming:{long:"Reserving sandbox",short:"Reserving sandbox"},"waiting-for-capacity":{long:"Waiting for cluster capacity",short:"Waiting for capacity"},"pulling-image":{long:"Downloading sandbox image",short:"Downloading image"},"starting-container":{long:"Starting your sandbox",short:"Starting container"},"warming-daemon":{long:"Connecting to your sandbox",short:"Connecting to sandbox"}},dr=["provision","cloning","install","dev"];function nf(t){switch(t.lifecycle.phase){case"cloning":case"checking-out":return{step:"cloning",status:"doing"};case"clone-failed":return{step:"cloning",status:"failed"};case"installing":return{step:"install",status:"doing"};case"install-failed":return{step:"install",status:"failed"};case"starting":return{step:"dev",status:"doing"};case"running":return{step:"dev",status:"done"};case"start-failed":return{step:"dev",status:"failed"};case"crashed":return{step:"dev",status:"failed"};case"idle":return t.claimPhase&&t.claimPhase.kind!=="ready"&&t.claimPhase.kind!=="failed"?{step:"provision",status:"doing"}:{step:"cloning",status:"doing"}}}function of(t){switch(t){case"done":return"✓";case"failed":return"✗";case"doing":return"◐";case"pending":return"○"}}function af(t){switch(t){case"never-started":return"Your sandbox is not running";case"starting-now":return"Starting your sandbox";case"errored":return"Sandbox failed to start";case"suspended":return"Sandbox is paused";case"crashed":return"Preview is unavailable"}}function Xs(t,e){const s=dr.indexOf(t.step),i=dr.indexOf(e);return i<s?"done":i>s?"pending":t.status}function lf(t){return dr.indexOf(t.step)}const cf={provision:"Reserving sandbox",cloning:"Cloning your repo",install:"Installing packages",dev:"Starting your preview"};function hf(t,e){return t.step==="provision"&&e!=null&&e.kind!=="ready"&&e.kind!=="failed"?za[e.kind].long:cf[t.step]}const ct="bg-foreground/[0.05]",Qe="bg-foreground/[0.09]",df=Array.from({length:35},()=>Math.random()*1.8),uf=Array.from({length:35},()=>Math.random()<.4);function ff(t){const e=z.c(30),{progress:s,claimPhase:i}=t;let r;e[0]!==s?(r=lf(s),e[0]=s,e[1]=r):r=e[1];const n=r;let a;e[2]!==i||e[3]!==s?(a=hf(s,i),e[2]=i,e[3]=s,e[4]=a):a=e[4];const l=a;let h;e[5]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(dc,{}),e[5]=h):h=e[5];const c=`${s.step}-${l}`;let d;e[6]!==l||e[7]!==c?(d=o.jsxs("div",{className:"flex items-center gap-2 rounded-full border border-foreground/10 bg-background px-3.5 py-1.5 shadow-[0_4px_20px_-4px_rgb(0_0_0_/_0.12)]",children:[h,o.jsxs("span",{className:"animate-in fade-in text-[13px] font-medium text-foreground/85 duration-500",children:[l,"…"]},c)]}),e[6]=l,e[7]=c,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(mf,{}),e[9]=u):u=e[9];let f;e[10]!==n?(f=o.jsx(Js,{phase:0,current:n,children:u}),e[10]=n,e[11]=f):f=e[11];let m;e[12]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(_f,{}),e[12]=m):m=e[12];let _;e[13]!==n?(_=o.jsx(Js,{phase:1,current:n,children:m}),e[13]=n,e[14]=_):_=e[14];let p;e[15]===Symbol.for("react.memo_cache_sentinel")?(p=o.jsx(pf,{}),e[15]=p):p=e[15];let g;e[16]!==n?(g=o.jsx(Js,{phase:2,current:n,children:p}),e[16]=n,e[17]=g):g=e[17];let x;e[18]===Symbol.for("react.memo_cache_sentinel")?(x=o.jsx(vf,{}),e[18]=x):x=e[18];let b;e[19]!==n?(b=o.jsx(Js,{phase:3,current:n,children:x}),e[19]=n,e[20]=b):b=e[20];let S;e[21]!==g||e[22]!==b||e[23]!==f||e[24]!==_?(S=o.jsxs("div",{className:"relative aspect-[4/3] w-[min(78%,560px)]",children:[f,_,g,b]}),e[21]=g,e[22]=b,e[23]=f,e[24]=_,e[25]=S):S=e[25];let v;e[26]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx("style",{children:`
155
+ `);T(Q.source).append(ie);for(const L of k.current)try{L(Q.source,ie)}catch{}v(L=>L+1)}catch{}},Y=H=>{const Q=H.type;try{const ie=JSON.parse(H.data);switch(Q){case"lifecycle":{const L=ie;l(L.state);const ee=L.state.phase==="running"?L.state.port:null,te=j.current;if(j.current=ee,te!==null&&ee!==null&&te!==ee)for(const W of N.current)try{W()}catch{}return}case"status":c(ie);return;case"tasks":{const ee=ie.active.map(te=>te.logName??"").filter(Boolean);S(ee);return}case"scripts":x(ie.scripts);return;case"branch":u(ie.meta);return;case"reload":for(const L of N.current)try{L()}catch{}return}}catch{}};function J(){if(!(M||P)){C=new EventSource(D),C.onopen=()=>{w=0,$(),m(!1)},C.onerror=()=>{C?.readyState===EventSource.CLOSED&&(P||(A(),G()))},C.addEventListener("phase",K),C.addEventListener("gone",q),C.addEventListener(Qu,F);for(const H of Zu)C.addEventListener(H,Y)}}function G(){if(M||R||P)return;const H=Math.min(Xu*2**w,Ju);w++,R=setTimeout(()=>{R=null,!M&&(C?.close(),J())},H)}return J(),()=>{M=!0,C?.close(),R&&clearTimeout(R),$()}},[t,e,i.slug]);const I={phase:r,lifecycle:a,status:h,branch:d,suspended:f,notFound:_,scripts:g,activeProcesses:b,getBuffer:D=>y.current.get(D)?.get()??"",hasData:D=>(y.current.get(D)?.get().length??0)>0,subscribeChunks:D=>(k.current.add(D),()=>{k.current.delete(D)}),subscribeReload:D=>(N.current.add(D),()=>{N.current.delete(D)})};return o.jsx(Oa,{value:I,children:s})}function fs(){return B.use(Oa)}function tf(t){const{subscribeChunks:e}=fs(),s=B.useRef(t);s.current=t,B.useEffect(()=>e((n,a)=>{s.current?.(n,a)}),[e])}function sf(t){const{subscribeReload:e}=fs(),s=B.useRef(t);s.current=t,B.useEffect(()=>e(()=>{s.current?.()}),[e])}function rf(t){return t.lastStartError?{kind:"errored",error:t.lastStartError}:t.suspended||t.appPaused?{kind:"suspended"}:t.userStopped?{kind:"never-started"}:t.notFound?{kind:"starting-now"}:!t.previewUrl&&t.vmStartPending?{kind:"starting-now"}:!t.previewUrl&&t.claimPhase&&t.claimPhase.kind!=="failed"?{kind:"starting-now"}:t.previewUrl?t.status==="online"||t.status==="offline"?t.htmlSupport?{kind:"iframe",previewUrl:t.previewUrl}:t.status==="offline"?{kind:"crashed",previewUrl:t.previewUrl}:{kind:"no-html",previewUrl:t.previewUrl}:{kind:"starting-now"}:{kind:"never-started"}}const za={claiming:{long:"Reserving sandbox",short:"Reserving sandbox"},"waiting-for-capacity":{long:"Waiting for cluster capacity",short:"Waiting for capacity"},"pulling-image":{long:"Downloading sandbox image",short:"Downloading image"},"starting-container":{long:"Starting your sandbox",short:"Starting container"},"warming-daemon":{long:"Connecting to your sandbox",short:"Connecting to sandbox"}},dr=["provision","cloning","install","dev"];function nf(t){switch(t.lifecycle.phase){case"cloning":case"checking-out":return{step:"cloning",status:"doing"};case"clone-failed":return{step:"cloning",status:"failed"};case"installing":return{step:"install",status:"doing"};case"install-failed":return{step:"install",status:"failed"};case"starting":return{step:"dev",status:"doing"};case"running":return{step:"dev",status:"done"};case"start-failed":return{step:"dev",status:"failed"};case"crashed":return{step:"dev",status:"failed"};case"idle":return t.claimPhase&&t.claimPhase.kind!=="ready"&&t.claimPhase.kind!=="failed"?{step:"provision",status:"doing"}:{step:"cloning",status:"doing"}}}function of(t){switch(t){case"done":return"✓";case"failed":return"✗";case"doing":return"◐";case"pending":return"○"}}function af(t){switch(t){case"never-started":return"Your sandbox is not running";case"starting-now":return"Starting your sandbox";case"errored":return"Sandbox failed to start";case"suspended":return"Sandbox is paused";case"crashed":return"Preview is unavailable"}}function Xs(t,e){const s=dr.indexOf(t.step),i=dr.indexOf(e);return i<s?"done":i>s?"pending":t.status}function lf(t){return dr.indexOf(t.step)}const cf={provision:"Reserving sandbox",cloning:"Cloning your repo",install:"Installing packages",dev:"Starting your preview"};function hf(t,e){return t.step==="provision"&&e!=null&&e.kind!=="ready"&&e.kind!=="failed"?za[e.kind].long:cf[t.step]}const ct="bg-foreground/[0.05]",Qe="bg-foreground/[0.09]",df=Array.from({length:35},()=>Math.random()*1.8),uf=Array.from({length:35},()=>Math.random()<.4);function ff(t){const e=z.c(30),{progress:s,claimPhase:i}=t;let r;e[0]!==s?(r=lf(s),e[0]=s,e[1]=r):r=e[1];const n=r;let a;e[2]!==i||e[3]!==s?(a=hf(s,i),e[2]=i,e[3]=s,e[4]=a):a=e[4];const l=a;let h;e[5]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(mc,{}),e[5]=h):h=e[5];const c=`${s.step}-${l}`;let d;e[6]!==l||e[7]!==c?(d=o.jsxs("div",{className:"flex items-center gap-2 rounded-full border border-foreground/10 bg-background px-3.5 py-1.5 shadow-[0_4px_20px_-4px_rgb(0_0_0_/_0.12)]",children:[h,o.jsxs("span",{className:"animate-in fade-in text-[13px] font-medium text-foreground/85 duration-500",children:[l,"…"]},c)]}),e[6]=l,e[7]=c,e[8]=d):d=e[8];let u;e[9]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(mf,{}),e[9]=u):u=e[9];let f;e[10]!==n?(f=o.jsx(Js,{phase:0,current:n,children:u}),e[10]=n,e[11]=f):f=e[11];let m;e[12]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(_f,{}),e[12]=m):m=e[12];let _;e[13]!==n?(_=o.jsx(Js,{phase:1,current:n,children:m}),e[13]=n,e[14]=_):_=e[14];let p;e[15]===Symbol.for("react.memo_cache_sentinel")?(p=o.jsx(pf,{}),e[15]=p):p=e[15];let g;e[16]!==n?(g=o.jsx(Js,{phase:2,current:n,children:p}),e[16]=n,e[17]=g):g=e[17];let x;e[18]===Symbol.for("react.memo_cache_sentinel")?(x=o.jsx(vf,{}),e[18]=x):x=e[18];let b;e[19]!==n?(b=o.jsx(Js,{phase:3,current:n,children:x}),e[19]=n,e[20]=b):b=e[20];let S;e[21]!==g||e[22]!==b||e[23]!==f||e[24]!==_?(S=o.jsxs("div",{className:"relative aspect-[4/3] w-[min(78%,560px)]",children:[f,_,g,b]}),e[21]=g,e[22]=b,e[23]=f,e[24]=_,e[25]=S):S=e[25];let v;e[26]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx("style",{children:`
156
156
  @keyframes vm-pulse-soft {
157
157
  0%, 100% { opacity: 0.25; }
158
158
  50% { opacity: 1; }
@@ -176,6 +176,6 @@ WARNING: This link could potentially be dangerous`)){let s=window.open();if(s){t
176
176
  `)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(t){this._refreshAnimationFrame||(this._refreshAnimationFrame=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh())),gn&&t&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(t){let e=this._getMouseBufferCoords(t),s=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!s||!i||!e?!1:this._areCoordsInSelection(e,s,i)}isCellInSelection(t,e){let s=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!s||!i?!1:this._areCoordsInSelection([t,e],s,i)}_areCoordsInSelection(t,e,s){return t[1]>e[1]&&t[1]<s[1]||e[1]===s[1]&&t[1]===e[1]&&t[0]>=e[0]&&t[0]<s[0]||e[1]<s[1]&&t[1]===s[1]&&t[0]<s[0]||e[1]<s[1]&&t[1]===e[1]&&t[0]>=e[0]}_selectWordAtCursor(t,e){let s=this._linkifier.currentLink?.link?.range;if(s)return this._model.selectionStart=[s.start.x-1,s.start.y-1],this._model.selectionStartLength=ho(s,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let i=this._getMouseBufferCoords(t);return i?(this._selectWordAt(i,e),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(t,e){this._model.clearSelection(),t=Math.max(t,0),e=Math.min(e,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,t],this._model.selectionEnd=[this._bufferService.cols,e],this.refresh(),this._onSelectionChange.fire()}_handleTrim(t){this._model.handleTrim(t)&&this.refresh()}_getMouseBufferCoords(t){let e=this._mouseService.getCoords(t,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(e)return e[0]--,e[1]--,e[1]+=this._bufferService.buffer.ydisp,e}_getMouseEventScrollAmount(t){let e=pn(this._coreBrowserService.window,t,this._screenElement)[1],s=this._renderService.dimensions.css.canvas.height;return e>=0&&e<=s?0:(e>s&&(e-=s),e=Math.min(Math.max(e,-Xi),Xi),e/=Xi,e/Math.abs(e)+Math.round(e*(j_-1)))}shouldForceSelection(t){return vi?t.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:t.shiftKey}handleMouseDown(t){if(this._mouseDownTimeStamp=t.timeStamp,!(t.button===2&&this.hasSelection)&&t.button===0){if(!this._enabled){if(!this.shouldForceSelection(t))return;t.stopPropagation()}t.preventDefault(),this._dragScrollAmount=0,this._enabled&&t.shiftKey?this._handleIncrementalClick(t):t.detail===1?this._handleSingleClick(t):t.detail===2?this._handleDoubleClick(t):t.detail===3&&this._handleTripleClick(t),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),E_)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(t){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(t))}_handleSingleClick(t){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(t)?3:0,this._model.selectionStart=this._getMouseBufferCoords(t),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let e=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);e&&e.length!==this._model.selectionStart[0]&&e.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(t){this._selectWordAtCursor(t,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(t){let e=this._getMouseBufferCoords(t);e&&(this._activeSelectionMode=2,this._selectLineAt(e[1]))}shouldColumnSelect(t){return t.altKey&&!(vi&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(t){if(t.stopImmediatePropagation(),!this._model.selectionStart)return;let e=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(t),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(t),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let s=this._bufferService.buffer;if(this._model.selectionEnd[1]<s.lines.length){let i=s.lines.get(this._model.selectionEnd[1]);i&&i.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!e||e[0]!==this._model.selectionEnd[0]||e[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let t=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(t.ydisp+this._bufferService.rows,t.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=t.ydisp),this.refresh()}}_handleMouseUp(t){let e=t.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&e<T_&&t.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let s=this._mouseService.getCoords(t,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(s&&s[0]!==void 0&&s[1]!==void 0){let i=x_(s[0]-1,s[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let t=this._model.finalSelectionStart,e=this._model.finalSelectionEnd,s=!!t&&!!e&&(t[0]!==e[0]||t[1]!==e[1]);if(!s){this._oldHasSelection&&this._fireOnSelectionChange(t,e,s);return}!t||!e||(!this._oldSelectionStart||!this._oldSelectionEnd||t[0]!==this._oldSelectionStart[0]||t[1]!==this._oldSelectionStart[1]||e[0]!==this._oldSelectionEnd[0]||e[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(t,e,s)}_fireOnSelectionChange(t,e,s){this._oldSelectionStart=t,this._oldSelectionEnd=e,this._oldHasSelection=s,this._onSelectionChange.fire()}_handleBufferActivate(t){this.clearSelection(),this._trimListener.dispose(),this._trimListener=t.activeBuffer.lines.onTrim(e=>this._handleTrim(e))}_convertViewportColToCharacterIndex(t,e){let s=e;for(let i=0;e>=i;i++){let r=t.loadCell(i,this._workCell).getChars().length;this._workCell.getWidth()===0?s--:r>1&&e!==i&&(s+=r-1)}return s}setSelection(t,e,s){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[t,e],this._model.selectionStartLength=s,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(t){this._isClickInSelection(t)||(this._selectWordAtCursor(t,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(t,e,s=!0,i=!0){if(t[0]>=this._bufferService.cols)return;let r=this._bufferService.buffer,n=r.lines.get(t[1]);if(!n)return;let a=r.translateBufferLineToString(t[1],!1),l=this._convertViewportColToCharacterIndex(n,t[0]),h=l,c=t[0]-l,d=0,u=0,f=0,m=0;if(a.charAt(l)===" "){for(;l>0&&a.charAt(l-1)===" ";)l--;for(;h<a.length&&a.charAt(h+1)===" ";)h++}else{let g=t[0],x=t[0];n.getWidth(g)===0&&(d++,g--),n.getWidth(x)===2&&(u++,x++);let b=n.getString(x).length;for(b>1&&(m+=b-1,h+=b-1);g>0&&l>0&&!this._isCharWordSeparator(n.loadCell(g-1,this._workCell));){n.loadCell(g-1,this._workCell);let S=this._workCell.getChars().length;this._workCell.getWidth()===0?(d++,g--):S>1&&(f+=S-1,l-=S-1),l--,g--}for(;x<n.length&&h+1<a.length&&!this._isCharWordSeparator(n.loadCell(x+1,this._workCell));){n.loadCell(x+1,this._workCell);let S=this._workCell.getChars().length;this._workCell.getWidth()===2?(u++,x++):S>1&&(m+=S-1,h+=S-1),h++,x++}}h++;let _=l+c-d+f,p=Math.min(this._bufferService.cols,h-l+d+u-f-m);if(!(!e&&a.slice(l,h).trim()==="")){if(s&&_===0&&n.getCodePoint(0)!==32){let g=r.lines.get(t[1]-1);if(g&&n.isWrapped&&g.getCodePoint(this._bufferService.cols-1)!==32){let x=this._getWordAt([this._bufferService.cols-1,t[1]-1],!1,!0,!1);if(x){let b=this._bufferService.cols-x.start;_-=b,p+=b}}}if(i&&_+p===this._bufferService.cols&&n.getCodePoint(this._bufferService.cols-1)!==32){let g=r.lines.get(t[1]+1);if(g?.isWrapped&&g.getCodePoint(0)!==32){let x=this._getWordAt([0,t[1]+1],!1,!1,!0);x&&(p+=x.length)}}return{start:_,length:p}}}_selectWordAt(t,e){let s=this._getWordAt(t,e);if(s){for(;s.start<0;)s.start+=this._bufferService.cols,t[1]--;this._model.selectionStart=[s.start,t[1]],this._model.selectionStartLength=s.length}}_selectToWordAt(t){let e=this._getWordAt(t,!0);if(e){let s=t[1];for(;e.start<0;)e.start+=this._bufferService.cols,s--;if(!this._model.areSelectionValuesReversed())for(;e.start+e.length>this._bufferService.cols;)e.length-=this._bufferService.cols,s++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?e.start:e.start+e.length,s]}}_isCharWordSeparator(t){return t.getWidth()===0?!1:this._optionsService.rawOptions.wordSeparator.indexOf(t.getChars())>=0}_selectLineAt(t){let e=this._bufferService.buffer.getWrappedRangeForLine(t),s={start:{x:0,y:e.first},end:{x:this._bufferService.cols-1,y:e.last}};this._model.selectionStart=[0,e.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=ho(s,this._bufferService.cols)}};zr=ye([X(3,Ue),X(4,Gt),X(5,cn),X(6,Ke),X(7,St),X(8,bt)],zr);var uo=class{constructor(){this._data={}}set(t,e,s){this._data[t]||(this._data[t]={}),this._data[t][e]=s}get(t,e){return this._data[t]?this._data[t][e]:void 0}clear(){this._data={}}},fo=class{constructor(){this._color=new uo,this._css=new uo}setCss(t,e,s){this._css.set(t,e,s)}getCss(t,e){return this._css.get(t,e)}setColor(t,e,s){this._color.set(t,e,s)}getColor(t,e){return this._color.get(t,e)}clear(){this._color.clear(),this._css.clear()}},je=Object.freeze((()=>{let t=[xe.toColor("#2e3436"),xe.toColor("#cc0000"),xe.toColor("#4e9a06"),xe.toColor("#c4a000"),xe.toColor("#3465a4"),xe.toColor("#75507b"),xe.toColor("#06989a"),xe.toColor("#d3d7cf"),xe.toColor("#555753"),xe.toColor("#ef2929"),xe.toColor("#8ae234"),xe.toColor("#fce94f"),xe.toColor("#729fcf"),xe.toColor("#ad7fa8"),xe.toColor("#34e2e2"),xe.toColor("#eeeeec")],e=[0,95,135,175,215,255];for(let s=0;s<216;s++){let i=e[s/36%6|0],r=e[s/6%6|0],n=e[s%6];t.push({css:Ne.toCss(i,r,n),rgba:Ne.toRgba(i,r,n)})}for(let s=0;s<24;s++){let i=8+s*10;t.push({css:Ne.toCss(i,i,i),rgba:Ne.toRgba(i,i,i)})}return t})()),At=xe.toColor("#ffffff"),Ns=xe.toColor("#000000"),mo=xe.toColor("#ffffff"),_o=Ns,bs={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117},M_=At,$r=class extends le{constructor(t){super(),this._optionsService=t,this._contrastCache=new fo,this._halfContrastCache=new fo,this._onChangeColors=this._register(new V),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:At,background:Ns,cursor:mo,cursorAccent:_o,selectionForeground:void 0,selectionBackgroundTransparent:bs,selectionBackgroundOpaque:me.blend(Ns,bs),selectionInactiveBackgroundTransparent:bs,selectionInactiveBackgroundOpaque:me.blend(Ns,bs),scrollbarSliderBackground:me.opacity(At,.2),scrollbarSliderHoverBackground:me.opacity(At,.4),scrollbarSliderActiveBackground:me.opacity(At,.5),overviewRulerBorder:At,ansi:je.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange("minimumContrastRatio",()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange("theme",()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(t={}){let e=this._colors;if(e.foreground=ue(t.foreground,At),e.background=ue(t.background,Ns),e.cursor=me.blend(e.background,ue(t.cursor,mo)),e.cursorAccent=me.blend(e.background,ue(t.cursorAccent,_o)),e.selectionBackgroundTransparent=ue(t.selectionBackground,bs),e.selectionBackgroundOpaque=me.blend(e.background,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundTransparent=ue(t.selectionInactiveBackground,e.selectionBackgroundTransparent),e.selectionInactiveBackgroundOpaque=me.blend(e.background,e.selectionInactiveBackgroundTransparent),e.selectionForeground=t.selectionForeground?ue(t.selectionForeground,ao):void 0,e.selectionForeground===ao&&(e.selectionForeground=void 0),me.isOpaque(e.selectionBackgroundTransparent)&&(e.selectionBackgroundTransparent=me.opacity(e.selectionBackgroundTransparent,.3)),me.isOpaque(e.selectionInactiveBackgroundTransparent)&&(e.selectionInactiveBackgroundTransparent=me.opacity(e.selectionInactiveBackgroundTransparent,.3)),e.scrollbarSliderBackground=ue(t.scrollbarSliderBackground,me.opacity(e.foreground,.2)),e.scrollbarSliderHoverBackground=ue(t.scrollbarSliderHoverBackground,me.opacity(e.foreground,.4)),e.scrollbarSliderActiveBackground=ue(t.scrollbarSliderActiveBackground,me.opacity(e.foreground,.5)),e.overviewRulerBorder=ue(t.overviewRulerBorder,M_),e.ansi=je.slice(),e.ansi[0]=ue(t.black,je[0]),e.ansi[1]=ue(t.red,je[1]),e.ansi[2]=ue(t.green,je[2]),e.ansi[3]=ue(t.yellow,je[3]),e.ansi[4]=ue(t.blue,je[4]),e.ansi[5]=ue(t.magenta,je[5]),e.ansi[6]=ue(t.cyan,je[6]),e.ansi[7]=ue(t.white,je[7]),e.ansi[8]=ue(t.brightBlack,je[8]),e.ansi[9]=ue(t.brightRed,je[9]),e.ansi[10]=ue(t.brightGreen,je[10]),e.ansi[11]=ue(t.brightYellow,je[11]),e.ansi[12]=ue(t.brightBlue,je[12]),e.ansi[13]=ue(t.brightMagenta,je[13]),e.ansi[14]=ue(t.brightCyan,je[14]),e.ansi[15]=ue(t.brightWhite,je[15]),t.extendedAnsi){let s=Math.min(e.ansi.length-16,t.extendedAnsi.length);for(let i=0;i<s;i++)e.ansi[i+16]=ue(t.extendedAnsi[i],je[i+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(t){this._restoreColor(t),this._onChangeColors.fire(this.colors)}_restoreColor(t){if(t===void 0){for(let e=0;e<this._restoreColors.ansi.length;++e)this._colors.ansi[e]=this._restoreColors.ansi[e];return}switch(t){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[t]=this._restoreColors.ansi[t]}}modifyColors(t){t(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};$r=ye([X(0,Ke)],$r);function ue(t,e){if(t!==void 0)try{return xe.toColor(t)}catch{}return e}var A_=class{constructor(...t){this._entries=new Map;for(let[e,s]of t)this.set(e,s)}set(t,e){let s=this._entries.get(t);return this._entries.set(t,e),s}forEach(t){for(let[e,s]of this._entries.entries())t(e,s)}has(t){return this._entries.has(t)}get(t){return this._entries.get(t)}},I_=class{constructor(){this._services=new A_,this._services.set(ln,this)}setService(t,e){this._services.set(t,e)}getService(t){return this._services.get(t)}createInstance(t,...e){let s=jf(t).sort((n,a)=>n.index-a.index),i=[];for(let n of s){let a=this._services.get(n.id);if(!a)throw new Error(`[createInstance] ${t.name} depends on UNKNOWN service ${n.id._id}.`);i.push(a)}let r=s.length>0?s[0].index:e.length;if(e.length!==r)throw new Error(`[createInstance] First service dependency of ${t.name} at position ${r+1} conflicts with ${e.length} static arguments`);return new t(...e,...i)}},P_={trace:0,debug:1,info:2,warn:3,error:4,off:5},B_="xterm.js: ",Fr=class extends le{constructor(t){super(),this._optionsService=t,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange("logLevel",()=>this._updateLogLevel()))}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=P_[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(t){for(let e=0;e<t.length;e++)typeof t[e]=="function"&&(t[e]=t[e]())}_log(t,e,s){this._evalLazyOptionalParams(s),t.call(console,(this._optionsService.options.logger?"":B_)+e,...s)}trace(t,...e){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,t,e)}debug(t,...e){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,t,e)}info(t,...e){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,t,e)}warn(t,...e){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,t,e)}error(t,...e){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,t,e)}};Fr=ye([X(0,Ke)],Fr);var po=class extends le{constructor(t){super(),this._maxLength=t,this.onDeleteEmitter=this._register(new V),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new V),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new V),this.onTrim=this.onTrimEmitter.event,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(t){if(this._maxLength===t)return;let e=new Array(t);for(let s=0;s<Math.min(t,this.length);s++)e[s]=this._array[this._getCyclicIndex(s)];this._array=e,this._maxLength=t,this._startIndex=0}get length(){return this._length}set length(t){if(t>this._length)for(let e=this._length;e<t;e++)this._array[e]=void 0;this._length=t}get(t){return this._array[this._getCyclicIndex(t)]}set(t,e){this._array[this._getCyclicIndex(t)]=e}push(t){this._array[this._getCyclicIndex(this._length)]=t,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw new Error("Can only recycle when the buffer is full");return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(t,e,...s){if(e){for(let i=t;i<this._length-e;i++)this._array[this._getCyclicIndex(i)]=this._array[this._getCyclicIndex(i+e)];this._length-=e,this.onDeleteEmitter.fire({index:t,amount:e})}for(let i=this._length-1;i>=t;i--)this._array[this._getCyclicIndex(i+s.length)]=this._array[this._getCyclicIndex(i)];for(let i=0;i<s.length;i++)this._array[this._getCyclicIndex(t+i)]=s[i];if(s.length&&this.onInsertEmitter.fire({index:t,amount:s.length}),this._length+s.length>this._maxLength){let i=this._length+s.length-this._maxLength;this._startIndex+=i,this._length=this._maxLength,this.onTrimEmitter.fire(i)}else this._length+=s.length}trimStart(t){t>this._length&&(t=this._length),this._startIndex+=t,this._length-=t,this.onTrimEmitter.fire(t)}shiftElements(t,e,s){if(!(e<=0)){if(t<0||t>=this._length)throw new Error("start argument out of range");if(t+s<0)throw new Error("Cannot shift elements in list beyond index 0");if(s>0){for(let r=e-1;r>=0;r--)this.set(t+r+s,this.get(t+r));let i=t+e+s-this._length;if(i>0)for(this._length+=i;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let i=0;i<e;i++)this.set(t+i+s,this.get(t+i))}}_getCyclicIndex(t){return(this._startIndex+t)%this._maxLength}},ae=3,ke=Object.freeze(new Us),ii=0,Ji=2,js=class Cl{constructor(e,s,i=!1){this.isWrapped=i,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*ae);let r=s||tt.fromCharData([0,Wa,1,0]);for(let n=0;n<e;++n)this.setCell(n,r);this.length=e}get(e){let s=this._data[e*ae+0],i=s&2097151;return[this._data[e*ae+1],s&2097152?this._combined[e]:i?jt(i):"",s>>22,s&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):i]}set(e,s){this._data[e*ae+1]=s[0],s[1].length>1?(this._combined[e]=s[1],this._data[e*ae+0]=e|2097152|s[2]<<22):this._data[e*ae+0]=s[1].charCodeAt(0)|s[2]<<22}getWidth(e){return this._data[e*ae+0]>>22}hasWidth(e){return this._data[e*ae+0]&12582912}getFg(e){return this._data[e*ae+1]}getBg(e){return this._data[e*ae+2]}hasContent(e){return this._data[e*ae+0]&4194303}getCodePoint(e){let s=this._data[e*ae+0];return s&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):s&2097151}isCombined(e){return this._data[e*ae+0]&2097152}getString(e){let s=this._data[e*ae+0];return s&2097152?this._combined[e]:s&2097151?jt(s&2097151):""}isProtected(e){return this._data[e*ae+2]&536870912}loadCell(e,s){return ii=e*ae,s.content=this._data[ii+0],s.fg=this._data[ii+1],s.bg=this._data[ii+2],s.content&2097152&&(s.combinedData=this._combined[e]),s.bg&268435456&&(s.extended=this._extendedAttrs[e]),s}setCell(e,s){s.content&2097152&&(this._combined[e]=s.combinedData),s.bg&268435456&&(this._extendedAttrs[e]=s.extended),this._data[e*ae+0]=s.content,this._data[e*ae+1]=s.fg,this._data[e*ae+2]=s.bg}setCellFromCodepoint(e,s,i,r){r.bg&268435456&&(this._extendedAttrs[e]=r.extended),this._data[e*ae+0]=s|i<<22,this._data[e*ae+1]=r.fg,this._data[e*ae+2]=r.bg}addCodepointToCell(e,s,i){let r=this._data[e*ae+0];r&2097152?this._combined[e]+=jt(s):r&2097151?(this._combined[e]=jt(r&2097151)+jt(s),r&=-2097152,r|=2097152):r=s|1<<22,i&&(r&=-12582913,r|=i<<22),this._data[e*ae+0]=r}insertCells(e,s,i){if(e%=this.length,e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length-e){let r=new tt;for(let n=this.length-e-s-1;n>=0;--n)this.setCell(e+s+n,this.loadCell(e+n,r));for(let n=0;n<s;++n)this.setCell(e+n,i)}else for(let r=e;r<this.length;++r)this.setCell(r,i);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,i)}deleteCells(e,s,i){if(e%=this.length,s<this.length-e){let r=new tt;for(let n=0;n<this.length-e-s;++n)this.setCell(e+n,this.loadCell(e+s+n,r));for(let n=this.length-s;n<this.length;++n)this.setCell(n,i)}else for(let r=e;r<this.length;++r)this.setCell(r,i);e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),this.getWidth(e)===0&&!this.hasContent(e)&&this.setCellFromCodepoint(e,0,1,i)}replaceCells(e,s,i,r=!1){if(r){for(e&&this.getWidth(e-1)===2&&!this.isProtected(e-1)&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length&&this.getWidth(s-1)===2&&!this.isProtected(s)&&this.setCellFromCodepoint(s,0,1,i);e<s&&e<this.length;)this.isProtected(e)||this.setCell(e,i),e++;return}for(e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,i),s<this.length&&this.getWidth(s-1)===2&&this.setCellFromCodepoint(s,0,1,i);e<s&&e<this.length;)this.setCell(e++,i)}resize(e,s){if(e===this.length)return this._data.length*4*Ji<this._data.buffer.byteLength;let i=e*ae;if(e>this.length){if(this._data.buffer.byteLength>=i*4)this._data=new Uint32Array(this._data.buffer,0,i);else{let r=new Uint32Array(i);r.set(this._data),this._data=r}for(let r=this.length;r<e;++r)this.setCell(r,s)}else{this._data=this._data.subarray(0,i);let r=Object.keys(this._combined);for(let a=0;a<r.length;a++){let l=parseInt(r[a],10);l>=e&&delete this._combined[l]}let n=Object.keys(this._extendedAttrs);for(let a=0;a<n.length;a++){let l=parseInt(n[a],10);l>=e&&delete this._extendedAttrs[l]}}return this.length=e,i*4*Ji<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*Ji<this._data.buffer.byteLength){let e=new Uint32Array(this._data.length);return e.set(this._data),this._data=e,1}return 0}fill(e,s=!1){if(s){for(let i=0;i<this.length;++i)this.isProtected(i)||this.setCell(i,e);return}this._combined={},this._extendedAttrs={};for(let i=0;i<this.length;++i)this.setCell(i,e)}copyFrom(e){this.length!==e.length?this._data=new Uint32Array(e._data):this._data.set(e._data),this.length=e.length,this._combined={};for(let s in e._combined)this._combined[s]=e._combined[s];this._extendedAttrs={};for(let s in e._extendedAttrs)this._extendedAttrs[s]=e._extendedAttrs[s];this.isWrapped=e.isWrapped}clone(){let e=new Cl(0);e._data=new Uint32Array(this._data),e.length=this.length;for(let s in this._combined)e._combined[s]=this._combined[s];for(let s in this._extendedAttrs)e._extendedAttrs[s]=this._extendedAttrs[s];return e.isWrapped=this.isWrapped,e}getTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*ae+0]&4194303)return e+(this._data[e*ae+0]>>22);return 0}getNoBgTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*ae+0]&4194303||this._data[e*ae+2]&50331648)return e+(this._data[e*ae+0]>>22);return 0}copyCellsFrom(e,s,i,r,n){let a=e._data;if(n)for(let h=r-1;h>=0;h--){for(let c=0;c<ae;c++)this._data[(i+h)*ae+c]=a[(s+h)*ae+c];a[(s+h)*ae+2]&268435456&&(this._extendedAttrs[i+h]=e._extendedAttrs[s+h])}else for(let h=0;h<r;h++){for(let c=0;c<ae;c++)this._data[(i+h)*ae+c]=a[(s+h)*ae+c];a[(s+h)*ae+2]&268435456&&(this._extendedAttrs[i+h]=e._extendedAttrs[s+h])}let l=Object.keys(e._combined);for(let h=0;h<l.length;h++){let c=parseInt(l[h],10);c>=s&&(this._combined[c-s+i]=e._combined[c])}}translateToString(e,s,i,r){s=s??0,i=i??this.length,e&&(i=Math.min(i,this.getTrimmedLength())),r&&(r.length=0);let n="";for(;s<i;){let a=this._data[s*ae+0],l=a&2097151,h=a&2097152?this._combined[s]:l?jt(l):Et;if(n+=h,r)for(let c=0;c<h.length;++c)r.push(s);s+=a>>22||1}return r&&r.push(s),n}};function L_(t,e,s,i,r,n){let a=[];for(let l=0;l<t.length-1;l++){let h=l,c=t.get(++h);if(!c.isWrapped)continue;let d=[t.get(l)];for(;h<t.length&&c.isWrapped;)d.push(c),c=t.get(++h);if(!n&&i>=l&&i<h){l+=d.length-1;continue}let u=0,f=$s(d,u,e),m=1,_=0;for(;m<d.length;){let g=$s(d,m,e),x=g-_,b=s-f,S=Math.min(x,b);d[u].copyCellsFrom(d[m],_,f,S,!1),f+=S,f===s&&(u++,f=0),_+=S,_===g&&(m++,_=0),f===0&&u!==0&&d[u-1].getWidth(s-1)===2&&(d[u].copyCellsFrom(d[u-1],s-1,f++,1,!1),d[u-1].setCell(s-1,r))}d[u].replaceCells(f,s,r);let p=0;for(let g=d.length-1;g>0&&(g>u||d[g].getTrimmedLength()===0);g--)p++;p>0&&(a.push(l+d.length-p),a.push(p)),l+=d.length-1}return a}function O_(t,e){let s=[],i=0,r=e[i],n=0;for(let a=0;a<t.length;a++)if(r===a){let l=e[++i];t.onDeleteEmitter.fire({index:a-n,amount:l}),a+=l-1,n+=l,r=e[++i]}else s.push(a);return{layout:s,countRemoved:n}}function z_(t,e){let s=[];for(let i=0;i<e.length;i++)s.push(t.get(e[i]));for(let i=0;i<s.length;i++)t.set(i,s[i]);t.length=e.length}function $_(t,e,s){let i=[],r=t.map((h,c)=>$s(t,c,e)).reduce((h,c)=>h+c),n=0,a=0,l=0;for(;l<r;){if(r-l<s){i.push(r-l);break}n+=s;let h=$s(t,a,e);n>h&&(n-=h,a++);let c=t[a].getWidth(n-1)===2;c&&n--;let d=c?s-1:s;i.push(d),l+=d}return i}function $s(t,e,s){if(e===t.length-1)return t[e].getTrimmedLength();let i=!t[e].hasContent(s-1)&&t[e].getWidth(s-1)===1,r=t[e+1].getWidth(0)===2;return i&&r?s-1:s}var kl=class Nl{constructor(e){this.line=e,this.isDisposed=!1,this._disposables=[],this._id=Nl._nextId++,this._onDispose=this.register(new V),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),Ht(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};kl._nextId=1;var F_=kl,Me={},It=Me.B;Me[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"};Me.A={"#":"£"};Me.B=void 0;Me[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"};Me.C=Me[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};Me.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"};Me.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"};Me.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"};Me.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"};Me.E=Me[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"};Me.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"};Me.H=Me[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"};Me["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"};var go=4294967295,vo=class{constructor(t,e,s){this._hasScrollback=t,this._optionsService=e,this._bufferService=s,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=ke.clone(),this.savedCharset=It,this.markers=[],this._nullCell=tt.fromCharData([0,Wa,1,0]),this._whitespaceCell=tt.fromCharData([0,Et,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new xi,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new po(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(t){return t?(this._nullCell.fg=t.fg,this._nullCell.bg=t.bg,this._nullCell.extended=t.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new _i),this._nullCell}getWhitespaceCell(t){return t?(this._whitespaceCell.fg=t.fg,this._whitespaceCell.bg=t.bg,this._whitespaceCell.extended=t.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new _i),this._whitespaceCell}getBlankLine(t,e){return new js(this._bufferService.cols,this.getNullCell(t),e)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let t=this.ybase+this.y-this.ydisp;return t>=0&&t<this._rows}_getCorrectBufferLength(t){if(!this._hasScrollback)return t;let e=t+this._optionsService.rawOptions.scrollback;return e>go?go:e}fillViewportRows(t){if(this.lines.length===0){t===void 0&&(t=ke);let e=this._rows;for(;e--;)this.lines.push(this.getBlankLine(t))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new po(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(t,e){let s=this.getNullCell(ke),i=0,r=this._getCorrectBufferLength(e);if(r>this.lines.maxLength&&(this.lines.maxLength=r),this.lines.length>0){if(this._cols<t)for(let a=0;a<this.lines.length;a++)i+=+this.lines.get(a).resize(t,s);let n=0;if(this._rows<e)for(let a=this._rows;a<e;a++)this.lines.length<e+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new js(t,s)):this.ybase>0&&this.lines.length<=this.ybase+this.y+n+1?(this.ybase--,n++,this.ydisp>0&&this.ydisp--):this.lines.push(new js(t,s)));else for(let a=this._rows;a>e;a--)this.lines.length>e+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(r<this.lines.maxLength){let a=this.lines.length-r;a>0&&(this.lines.trimStart(a),this.ybase=Math.max(this.ybase-a,0),this.ydisp=Math.max(this.ydisp-a,0),this.savedY=Math.max(this.savedY-a,0)),this.lines.maxLength=r}this.x=Math.min(this.x,t-1),this.y=Math.min(this.y,e-1),n&&(this.y+=n),this.savedX=Math.min(this.savedX,t-1),this.scrollTop=0}if(this.scrollBottom=e-1,this._isReflowEnabled&&(this._reflow(t,e),this._cols>t))for(let n=0;n<this.lines.length;n++)i+=+this.lines.get(n).resize(t,s);this._cols=t,this._rows=e,this._memoryCleanupQueue.clear(),i>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let t=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,t=!1);let e=0;for(;this._memoryCleanupPosition<this.lines.length;)if(e+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),e>100)return!0;return t}get _isReflowEnabled(){let t=this._optionsService.rawOptions.windowsPty;return t&&t.buildNumber?this._hasScrollback&&t.backend==="conpty"&&t.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(t,e){this._cols!==t&&(t>this._cols?this._reflowLarger(t,e):this._reflowSmaller(t,e))}_reflowLarger(t,e){let s=this._optionsService.rawOptions.reflowCursorLine,i=L_(this.lines,this._cols,t,this.ybase+this.y,this.getNullCell(ke),s);if(i.length>0){let r=O_(this.lines,i);z_(this.lines,r.layout),this._reflowLargerAdjustViewport(t,e,r.countRemoved)}}_reflowLargerAdjustViewport(t,e,s){let i=this.getNullCell(ke),r=s;for(;r-- >0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<e&&this.lines.push(new js(t,i))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-s,0)}_reflowSmaller(t,e){let s=this._optionsService.rawOptions.reflowCursorLine,i=this.getNullCell(ke),r=[],n=0;for(let a=this.lines.length-1;a>=0;a--){let l=this.lines.get(a);if(!l||!l.isWrapped&&l.getTrimmedLength()<=t)continue;let h=[l];for(;l.isWrapped&&a>0;)l=this.lines.get(--a),h.unshift(l);if(!s){let S=this.ybase+this.y;if(S>=a&&S<a+h.length)continue}let c=h[h.length-1].getTrimmedLength(),d=$_(h,this._cols,t),u=d.length-h.length,f;this.ybase===0&&this.y!==this.lines.length-1?f=Math.max(0,this.y-this.lines.maxLength+u):f=Math.max(0,this.lines.length-this.lines.maxLength+u);let m=[];for(let S=0;S<u;S++){let v=this.getBlankLine(ke,!0);m.push(v)}m.length>0&&(r.push({start:a+h.length+n,newLines:m}),n+=m.length),h.push(...m);let _=d.length-1,p=d[_];p===0&&(_--,p=d[_]);let g=h.length-u-1,x=c;for(;g>=0;){let S=Math.min(x,p);if(h[_]===void 0)break;if(h[_].copyCellsFrom(h[g],x-S,p-S,S,!0),p-=S,p===0&&(_--,p=d[_]),x-=S,x===0){g--;let v=Math.max(g,0);x=$s(h,v,this._cols)}}for(let S=0;S<h.length;S++)d[S]<t&&h[S].setCell(d[S],i);let b=u-f;for(;b-- >0;)this.ybase===0?this.y<e-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+n)-e&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+u,this.ybase+e-1)}if(r.length>0){let a=[],l=[];for(let p=0;p<this.lines.length;p++)l.push(this.lines.get(p));let h=this.lines.length,c=h-1,d=0,u=r[d];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+n);let f=0;for(let p=Math.min(this.lines.maxLength-1,h+n-1);p>=0;p--)if(u&&u.start>c+f){for(let g=u.newLines.length-1;g>=0;g--)this.lines.set(p--,u.newLines[g]);p++,a.push({index:c+1,amount:u.newLines.length}),f+=u.newLines.length,u=r[++d]}else this.lines.set(p,l[c--]);let m=0;for(let p=a.length-1;p>=0;p--)a[p].index+=m,this.lines.onInsertEmitter.fire(a[p]),m+=a[p].amount;let _=Math.max(0,h+n-this.lines.maxLength);_>0&&this.lines.onTrimEmitter.fire(_)}}translateBufferLineToString(t,e,s=0,i){let r=this.lines.get(t);return r?r.translateToString(e,s,i):""}getWrappedRangeForLine(t){let e=t,s=t;for(;e>0&&this.lines.get(e).isWrapped;)e--;for(;s+1<this.lines.length&&this.lines.get(s+1).isWrapped;)s++;return{first:e,last:s}}setupTabStops(t){for(t!=null?this.tabs[t]||(t=this.prevStop(t)):(this.tabs={},t=0);t<this._cols;t+=this._optionsService.rawOptions.tabStopWidth)this.tabs[t]=!0}prevStop(t){for(t==null&&(t=this.x);!this.tabs[--t]&&t>0;);return t>=this._cols?this._cols-1:t<0?0:t}nextStop(t){for(t==null&&(t=this.x);!this.tabs[++t]&&t<this._cols;);return t>=this._cols?this._cols-1:t<0?0:t}clearMarkers(t){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].line===t&&(this.markers[e].dispose(),this.markers.splice(e--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].dispose();this.markers.length=0,this._isClearing=!1}addMarker(t){let e=new F_(t);return this.markers.push(e),e.register(this.lines.onTrim(s=>{e.line-=s,e.line<0&&e.dispose()})),e.register(this.lines.onInsert(s=>{e.line>=s.index&&(e.line+=s.amount)})),e.register(this.lines.onDelete(s=>{e.line>=s.index&&e.line<s.index+s.amount&&e.dispose(),e.line>s.index&&(e.line-=s.amount)})),e.register(e.onDispose(()=>this._removeMarker(e))),e}_removeMarker(t){this._isClearing||this.markers.splice(this.markers.indexOf(t),1)}},H_=class extends le{constructor(t,e){super(),this._optionsService=t,this._bufferService=e,this._onBufferActivate=this._register(new V),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange("scrollback",()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange("tabStopWidth",()=>this.setupTabStops()))}reset(){this._normal=new vo(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new vo(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(t){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(t),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(t,e){this._normal.resize(t,e),this._alt.resize(t,e),this.setupTabStops(t)}setupTabStops(t){this._normal.setupTabStops(t),this._alt.setupTabStops(t)}},jl=2,El=1,Hr=class extends le{constructor(t){super(),this.isUserScrolling=!1,this._onResize=this._register(new V),this.onResize=this._onResize.event,this._onScroll=this._register(new V),this.onScroll=this._onScroll.event,this.cols=Math.max(t.rawOptions.cols||0,jl),this.rows=Math.max(t.rawOptions.rows||0,El),this.buffers=this._register(new H_(t,this)),this._register(this.buffers.onBufferActivate(e=>{this._onScroll.fire(e.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(t,e){let s=this.cols!==t,i=this.rows!==e;this.cols=t,this.rows=e,this.buffers.resize(t,e),this._onResize.fire({cols:t,rows:e,colsChanged:s,rowsChanged:i})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(t,e=!1){let s=this.buffer,i;i=this._cachedBlankLine,(!i||i.length!==this.cols||i.getFg(0)!==t.fg||i.getBg(0)!==t.bg)&&(i=s.getBlankLine(t,e),this._cachedBlankLine=i),i.isWrapped=e;let r=s.ybase+s.scrollTop,n=s.ybase+s.scrollBottom;if(s.scrollTop===0){let a=s.lines.isFull;n===s.lines.length-1?a?s.lines.recycle().copyFrom(i):s.lines.push(i.clone()):s.lines.splice(n+1,0,i.clone()),a?this.isUserScrolling&&(s.ydisp=Math.max(s.ydisp-1,0)):(s.ybase++,this.isUserScrolling||s.ydisp++)}else{let a=n-r+1;s.lines.shiftElements(r+1,a-1,-1),s.lines.set(n,i.clone())}this.isUserScrolling||(s.ydisp=s.ybase),this._onScroll.fire(s.ydisp)}scrollLines(t,e){let s=this.buffer;if(t<0){if(s.ydisp===0)return;this.isUserScrolling=!0}else t+s.ydisp>=s.ybase&&(this.isUserScrolling=!1);let i=s.ydisp;s.ydisp=Math.max(Math.min(s.ydisp+t,s.ybase),0),i!==s.ydisp&&(e||this._onScroll.fire(s.ydisp))}};Hr=ye([X(0,Ke)],Hr);var Jt={cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,cursorInactiveStyle:"outline",customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:"info",logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:vi,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1,overviewRuler:{}},W_=["normal","bold","100","200","300","400","500","600","700","800","900"],U_=class extends le{constructor(t){super(),this._onOptionChange=this._register(new V),this.onOptionChange=this._onOptionChange.event;let e={...Jt};for(let s in t)if(s in e)try{let i=t[s];e[s]=this._sanitizeAndValidateOption(s,i)}catch(i){console.error(i)}this.rawOptions=e,this.options={...e},this._setupOptions(),this._register(pe(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(t,e){return this.onOptionChange(s=>{s===t&&e(this.rawOptions[t])})}onMultipleOptionChange(t,e){return this.onOptionChange(s=>{t.indexOf(s)!==-1&&e()})}_setupOptions(){let t=s=>{if(!(s in Jt))throw new Error(`No option with key "${s}"`);return this.rawOptions[s]},e=(s,i)=>{if(!(s in Jt))throw new Error(`No option with key "${s}"`);i=this._sanitizeAndValidateOption(s,i),this.rawOptions[s]!==i&&(this.rawOptions[s]=i,this._onOptionChange.fire(s))};for(let s in this.rawOptions){let i={get:t.bind(this,s),set:e.bind(this,s)};Object.defineProperty(this.options,s,i)}}_sanitizeAndValidateOption(t,e){switch(t){case"cursorStyle":if(e||(e=Jt[t]),!K_(e))throw new Error(`"${e}" is not a valid value for ${t}`);break;case"wordSeparator":e||(e=Jt[t]);break;case"fontWeight":case"fontWeightBold":if(typeof e=="number"&&1<=e&&e<=1e3)break;e=W_.includes(e)?e:Jt[t];break;case"cursorWidth":e=Math.floor(e);case"lineHeight":case"tabStopWidth":if(e<1)throw new Error(`${t} cannot be less than 1, value: ${e}`);break;case"minimumContrastRatio":e=Math.max(1,Math.min(21,Math.round(e*10)/10));break;case"scrollback":if(e=Math.min(e,4294967295),e<0)throw new Error(`${t} cannot be less than 0, value: ${e}`);break;case"fastScrollSensitivity":case"scrollSensitivity":if(e<=0)throw new Error(`${t} cannot be less than or equal to 0, value: ${e}`);break;case"rows":case"cols":if(!e&&e!==0)throw new Error(`${t} must be numeric, value: ${e}`);break;case"windowsPty":e=e??{};break}return e}};function K_(t){return t==="block"||t==="underline"||t==="bar"}function Es(t,e=5){if(typeof t!="object")return t;let s=Array.isArray(t)?[]:{};for(let i in t)s[i]=e<=1?t[i]:t[i]&&Es(t[i],e-1);return s}var xo=Object.freeze({insertMode:!1}),bo=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),Wr=class extends le{constructor(t,e,s){super(),this._bufferService=t,this._logService=e,this._optionsService=s,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new V),this.onData=this._onData.event,this._onUserInput=this._register(new V),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new V),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new V),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=Es(xo),this.decPrivateModes=Es(bo)}reset(){this.modes=Es(xo),this.decPrivateModes=Es(bo)}triggerDataEvent(t,e=!1){if(this._optionsService.rawOptions.disableStdin)return;let s=this._bufferService.buffer;e&&this._optionsService.rawOptions.scrollOnUserInput&&s.ybase!==s.ydisp&&this._onRequestScrollToBottom.fire(),e&&this._onUserInput.fire(),this._logService.debug(`sending data "${t}"`),this._logService.trace("sending data (codes)",()=>t.split("").map(i=>i.charCodeAt(0))),this._onData.fire(t)}triggerBinaryEvent(t){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${t}"`),this._logService.trace("sending binary (codes)",()=>t.split("").map(e=>e.charCodeAt(0))),this._onBinary.fire(t))}};Wr=ye([X(0,Ue),X(1,Ga),X(2,Ke)],Wr);var So={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:t=>t.button===4||t.action!==1?!1:(t.ctrl=!1,t.alt=!1,t.shift=!1,!0)},VT200:{events:19,restrict:t=>t.action!==32},DRAG:{events:23,restrict:t=>!(t.action===32&&t.button===3)},ANY:{events:31,restrict:t=>!0}};function Zi(t,e){let s=(t.ctrl?16:0)|(t.shift?4:0)|(t.alt?8:0);return t.button===4?(s|=64,s|=t.action):(s|=t.button&3,t.button&4&&(s|=64),t.button&8&&(s|=128),t.action===32?s|=32:t.action===0&&!e&&(s|=3)),s}var Qi=String.fromCharCode,yo={DEFAULT:t=>{let e=[Zi(t,!1)+32,t.col+32,t.row+32];return e[0]>255||e[1]>255||e[2]>255?"":`\x1B[M${Qi(e[0])}${Qi(e[1])}${Qi(e[2])}`},SGR:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${Zi(t,!0)};${t.col};${t.row}${e}`},SGR_PIXELS:t=>{let e=t.action===0&&t.button!==4?"m":"M";return`\x1B[<${Zi(t,!0)};${t.x};${t.y}${e}`}},Ur=class extends le{constructor(t,e,s){super(),this._bufferService=t,this._coreService=e,this._optionsService=s,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new V),this.onProtocolChange=this._onProtocolChange.event;for(let i of Object.keys(So))this.addProtocol(i,So[i]);for(let i of Object.keys(yo))this.addEncoding(i,yo[i]);this.reset()}addProtocol(t,e){this._protocols[t]=e}addEncoding(t,e){this._encodings[t]=e}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(t){if(!this._protocols[t])throw new Error(`unknown protocol "${t}"`);this._activeProtocol=t,this._onProtocolChange.fire(this._protocols[t].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(t){if(!this._encodings[t])throw new Error(`unknown encoding "${t}"`);this._activeEncoding=t}reset(){this.activeProtocol="NONE",this.activeEncoding="DEFAULT",this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(t,e,s){if(t.deltaY===0||t.shiftKey||e===void 0||s===void 0)return 0;let i=e/s,r=this._applyScrollModifier(t.deltaY,t);return t.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(r/=i+0,Math.abs(t.deltaY)<50&&(r*=.3),this._wheelPartialScroll+=r,r=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):t.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(r*=this._bufferService.rows),r}_applyScrollModifier(t,e){return e.altKey||e.ctrlKey||e.shiftKey?t*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:t*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(t){if(t.col<0||t.col>=this._bufferService.cols||t.row<0||t.row>=this._bufferService.rows||t.button===4&&t.action===32||t.button===3&&t.action!==32||t.button!==4&&(t.action===2||t.action===3)||(t.col++,t.row++,t.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,t,this._activeEncoding==="SGR_PIXELS"))||!this._protocols[this._activeProtocol].restrict(t))return!1;let e=this._encodings[this._activeEncoding](t);return e&&(this._activeEncoding==="DEFAULT"?this._coreService.triggerBinaryEvent(e):this._coreService.triggerDataEvent(e,!0)),this._lastEvent=t,!0}explainEvents(t){return{down:!!(t&1),up:!!(t&2),drag:!!(t&4),move:!!(t&8),wheel:!!(t&16)}}_equalEvents(t,e,s){if(s){if(t.x!==e.x||t.y!==e.y)return!1}else if(t.col!==e.col||t.row!==e.row)return!1;return!(t.button!==e.button||t.action!==e.action||t.ctrl!==e.ctrl||t.alt!==e.alt||t.shift!==e.shift)}};Ur=ye([X(0,Ue),X(1,Gt),X(2,Ke)],Ur);var er=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],V_=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],Ee;function q_(t,e){let s=0,i=e.length-1,r;if(t<e[0][0]||t>e[i][1])return!1;for(;i>=s;)if(r=s+i>>1,t>e[r][1])s=r+1;else if(t<e[r][0])i=r-1;else return!0;return!1}var G_=class{constructor(){if(this.version="6",!Ee){Ee=new Uint8Array(65536),Ee.fill(1),Ee[0]=0,Ee.fill(0,1,32),Ee.fill(0,127,160),Ee.fill(2,4352,4448),Ee[9001]=2,Ee[9002]=2,Ee.fill(2,11904,42192),Ee[12351]=1,Ee.fill(2,44032,55204),Ee.fill(2,63744,64256),Ee.fill(2,65040,65050),Ee.fill(2,65072,65136),Ee.fill(2,65280,65377),Ee.fill(2,65504,65511);for(let t=0;t<er.length;++t)Ee.fill(0,er[t][0],er[t][1]+1)}}wcwidth(t){return t<32?0:t<127?1:t<65536?Ee[t]:q_(t,V_)?0:t>=131072&&t<=196605||t>=196608&&t<=262141?2:1}charProperties(t,e){let s=this.wcwidth(t),i=s===0&&e!==0;if(i){let r=Pt.extractWidth(e);r===0?i=!1:r>s&&(s=r)}return Pt.createPropertyValue(0,s,i)}},Pt=class ui{constructor(){this._providers=Object.create(null),this._active="",this._onChange=new V,this.onChange=this._onChange.event;let e=new G_;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return(e&1)!==0}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,s,i=!1){return(e&16777215)<<3|(s&3)<<1|(i?1:0)}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw new Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(e){let s=0,i=0,r=e.length;for(let n=0;n<r;++n){let a=e.charCodeAt(n);if(55296<=a&&a<=56319){if(++n>=r)return s+this.wcwidth(a);let c=e.charCodeAt(n);56320<=c&&c<=57343?a=(a-55296)*1024+c-56320+65536:s+=this.wcwidth(c)}let l=this.charProperties(a,i),h=ui.extractWidth(l);ui.extractShouldJoin(l)&&(h-=ui.extractWidth(i)),s+=h,i=l}return s}charProperties(e,s){return this._activeProvider.charProperties(e,s)}},Y_=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(t){this.glevel=t,this.charset=this._charsets[t]}setgCharset(t,e){this._charsets[t]=e,this.glevel===t&&(this.charset=e)}};function wo(t){let e=t.buffer.lines.get(t.buffer.ybase+t.buffer.y-1)?.get(t.cols-1),s=t.buffer.lines.get(t.buffer.ybase+t.buffer.y);s&&e&&(s.isWrapped=e[3]!==0&&e[3]!==32)}var Ss=2147483647,X_=256,Tl=class Kr{constructor(e=32,s=32){if(this.maxLength=e,this.maxSubParamsLength=s,s>X_)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(s),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(e){let s=new Kr;if(!e.length)return s;for(let i=Array.isArray(e[0])?1:0;i<e.length;++i){let r=e[i];if(Array.isArray(r))for(let n=0;n<r.length;++n)s.addSubParam(r[n]);else s.addParam(r)}return s}clone(){let e=new Kr(this.maxLength,this.maxSubParamsLength);return e.params.set(this.params),e.length=this.length,e._subParams.set(this._subParams),e._subParamsLength=this._subParamsLength,e._subParamsIdx.set(this._subParamsIdx),e._rejectDigits=this._rejectDigits,e._rejectSubDigits=this._rejectSubDigits,e._digitIsSub=this._digitIsSub,e}toArray(){let e=[];for(let s=0;s<this.length;++s){e.push(this.params[s]);let i=this._subParamsIdx[s]>>8,r=this._subParamsIdx[s]&255;r-i>0&&e.push(Array.prototype.slice.call(this._subParams,i,r))}return e}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(e){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>Ss?Ss:e}addSubParam(e){if(this._digitIsSub=!0,!!this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>Ss?Ss:e,this._subParamsIdx[this.length-1]++}}hasSubParams(e){return(this._subParamsIdx[e]&255)-(this._subParamsIdx[e]>>8)>0}getSubParams(e){let s=this._subParamsIdx[e]>>8,i=this._subParamsIdx[e]&255;return i-s>0?this._subParams.subarray(s,i):null}getSubParamsAll(){let e={};for(let s=0;s<this.length;++s){let i=this._subParamsIdx[s]>>8,r=this._subParamsIdx[s]&255;r-i>0&&(e[s]=this._subParams.slice(i,r))}return e}addDigit(e){let s;if(this._rejectDigits||!(s=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let i=this._digitIsSub?this._subParams:this.params,r=i[s-1];i[s-1]=~r?Math.min(r*10+e,Ss):e}},ys=[],J_=class{constructor(){this._state=0,this._active=ys,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let s=this._handlers[t];return s.push(e),{dispose:()=>{let i=s.indexOf(e);i!==-1&&s.splice(i,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=ys}reset(){if(this._state===2)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].end(!1);this._stack.paused=!1,this._active=ys,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||ys,!this._active.length)this._handlerFb(this._id,"START");else for(let t=this._active.length-1;t>=0;t--)this._active[t].start()}_put(t,e,s){if(!this._active.length)this._handlerFb(this._id,"PUT",Di(t,e,s));else for(let i=this._active.length-1;i>=0;i--)this._active[i].put(t,e,s)}start(){this.reset(),this._state=1}put(t,e,s){if(this._state!==3){if(this._state===1)for(;e<s;){let i=t[e++];if(i===59){this._state=2,this._start();break}if(i<48||57<i){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+i-48}this._state===2&&s-e>0&&this._put(t,e,s)}}end(t,e=!0){if(this._state!==0){if(this._state!==3)if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,"END",t);else{let s=!1,i=this._active.length-1,r=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,r=this._stack.fallThrough,this._stack.paused=!1),!r&&s===!1){for(;i>=0&&(s=this._active[i].end(t),s!==!0);i--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,s;i--}for(;i>=0;i--)if(s=this._active[i].end(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,s}this._active=ys,this._id=-1,this._state=0}}},Ge=class{constructor(t){this._handler=t,this._data="",this._hitLimit=!1}start(){this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=Di(t,e,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}end(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data),e instanceof Promise))return e.then(s=>(this._data="",this._hitLimit=!1,s));return this._data="",this._hitLimit=!1,e}},ws=[],Z_=class{constructor(){this._handlers=Object.create(null),this._active=ws,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=ws}registerHandler(t,e){this._handlers[t]===void 0&&(this._handlers[t]=[]);let s=this._handlers[t];return s.push(e),{dispose:()=>{let i=s.indexOf(e);i!==-1&&s.splice(i,1)}}}clearHandler(t){this._handlers[t]&&delete this._handlers[t]}setHandlerFallback(t){this._handlerFb=t}reset(){if(this._active.length)for(let t=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;t>=0;--t)this._active[t].unhook(!1);this._stack.paused=!1,this._active=ws,this._ident=0}hook(t,e){if(this.reset(),this._ident=t,this._active=this._handlers[t]||ws,!this._active.length)this._handlerFb(this._ident,"HOOK",e);else for(let s=this._active.length-1;s>=0;s--)this._active[s].hook(e)}put(t,e,s){if(!this._active.length)this._handlerFb(this._ident,"PUT",Di(t,e,s));else for(let i=this._active.length-1;i>=0;i--)this._active[i].put(t,e,s)}unhook(t,e=!0){if(!this._active.length)this._handlerFb(this._ident,"UNHOOK",t);else{let s=!1,i=this._active.length-1,r=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,s=e,r=this._stack.fallThrough,this._stack.paused=!1),!r&&s===!1){for(;i>=0&&(s=this._active[i].unhook(t),s!==!0);i--)if(s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,s;i--}for(;i>=0;i--)if(s=this._active[i].unhook(!1),s instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,s}this._active=ws,this._ident=0}},Ts=new Tl;Ts.addParam(0);var Co=class{constructor(t){this._handler=t,this._data="",this._params=Ts,this._hitLimit=!1}hook(t){this._params=t.length>1||t.params[0]?t.clone():Ts,this._data="",this._hitLimit=!1}put(t,e,s){this._hitLimit||(this._data+=Di(t,e,s),this._data.length>1e7&&(this._data="",this._hitLimit=!0))}unhook(t){let e=!1;if(this._hitLimit)e=!1;else if(t&&(e=this._handler(this._data,this._params),e instanceof Promise))return e.then(s=>(this._params=Ts,this._data="",this._hitLimit=!1,s));return this._params=Ts,this._data="",this._hitLimit=!1,e}},Q_=class{constructor(t){this.table=new Uint8Array(t)}setDefault(t,e){this.table.fill(t<<4|e)}add(t,e,s,i){this.table[e<<8|t]=s<<4|i}addMany(t,e,s,i){for(let r=0;r<t.length;r++)this.table[e<<8|t[r]]=s<<4|i}},et=160,ep=(function(){let t=new Q_(4095),e=Array.apply(null,Array(256)).map((l,h)=>h),s=(l,h)=>e.slice(l,h),i=s(32,127),r=s(0,24);r.push(25),r.push.apply(r,s(28,32));let n=s(0,14),a;t.setDefault(1,0),t.addMany(i,0,2,0);for(a in n)t.addMany([24,26,153,154],a,3,0),t.addMany(s(128,144),a,3,0),t.addMany(s(144,152),a,3,0),t.add(156,a,0,0),t.add(27,a,11,1),t.add(157,a,4,8),t.addMany([152,158,159],a,0,7),t.add(155,a,11,3),t.add(144,a,11,9);return t.addMany(r,0,3,0),t.addMany(r,1,3,1),t.add(127,1,0,1),t.addMany(r,8,0,8),t.addMany(r,3,3,3),t.add(127,3,0,3),t.addMany(r,4,3,4),t.add(127,4,0,4),t.addMany(r,6,3,6),t.addMany(r,5,3,5),t.add(127,5,0,5),t.addMany(r,2,3,2),t.add(127,2,0,2),t.add(93,1,4,8),t.addMany(i,8,5,8),t.add(127,8,5,8),t.addMany([156,27,24,26,7],8,6,0),t.addMany(s(28,32),8,0,8),t.addMany([88,94,95],1,0,7),t.addMany(i,7,0,7),t.addMany(r,7,0,7),t.add(156,7,0,0),t.add(127,7,0,7),t.add(91,1,11,3),t.addMany(s(64,127),3,7,0),t.addMany(s(48,60),3,8,4),t.addMany([60,61,62,63],3,9,4),t.addMany(s(48,60),4,8,4),t.addMany(s(64,127),4,7,0),t.addMany([60,61,62,63],4,0,6),t.addMany(s(32,64),6,0,6),t.add(127,6,0,6),t.addMany(s(64,127),6,0,0),t.addMany(s(32,48),3,9,5),t.addMany(s(32,48),5,9,5),t.addMany(s(48,64),5,0,6),t.addMany(s(64,127),5,7,0),t.addMany(s(32,48),4,9,5),t.addMany(s(32,48),1,9,2),t.addMany(s(32,48),2,9,2),t.addMany(s(48,127),2,10,0),t.addMany(s(48,80),1,10,0),t.addMany(s(81,88),1,10,0),t.addMany([89,90,92],1,10,0),t.addMany(s(96,127),1,10,0),t.add(80,1,11,9),t.addMany(r,9,0,9),t.add(127,9,0,9),t.addMany(s(28,32),9,0,9),t.addMany(s(32,48),9,9,12),t.addMany(s(48,60),9,8,10),t.addMany([60,61,62,63],9,9,10),t.addMany(r,11,0,11),t.addMany(s(32,128),11,0,11),t.addMany(s(28,32),11,0,11),t.addMany(r,10,0,10),t.add(127,10,0,10),t.addMany(s(28,32),10,0,10),t.addMany(s(48,60),10,8,10),t.addMany([60,61,62,63],10,0,11),t.addMany(s(32,48),10,9,12),t.addMany(r,12,0,12),t.add(127,12,0,12),t.addMany(s(28,32),12,0,12),t.addMany(s(32,48),12,9,12),t.addMany(s(48,64),12,0,11),t.addMany(s(64,127),12,12,13),t.addMany(s(64,127),10,12,13),t.addMany(s(64,127),9,12,13),t.addMany(r,13,13,13),t.addMany(i,13,13,13),t.add(127,13,0,13),t.addMany([27,156,24,26],13,14,0),t.add(et,0,2,0),t.add(et,8,5,8),t.add(et,6,0,6),t.add(et,11,0,11),t.add(et,13,13,13),t})(),tp=class extends le{constructor(t=ep){super(),this._transitions=t,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new Tl,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,s,i)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,s)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(pe(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new J_),this._dcsParser=this._register(new Z_),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:"\\"},()=>!0)}_identifier(t,e=[64,126]){let s=0;if(t.prefix){if(t.prefix.length>1)throw new Error("only one byte as prefix supported");if(s=t.prefix.charCodeAt(0),s&&60>s||s>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(t.intermediates){if(t.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(let r=0;r<t.intermediates.length;++r){let n=t.intermediates.charCodeAt(r);if(32>n||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");s<<=8,s|=n}}if(t.final.length!==1)throw new Error("final must be a single byte");let i=t.final.charCodeAt(0);if(e[0]>i||i>e[1])throw new Error(`final must be in range ${e[0]} .. ${e[1]}`);return s<<=8,s|=i,s}identToString(t){let e=[];for(;t;)e.push(String.fromCharCode(t&255)),t>>=8;return e.reverse().join("")}setPrintHandler(t){this._printHandler=t}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(t,e){let s=this._identifier(t,[48,126]);this._escHandlers[s]===void 0&&(this._escHandlers[s]=[]);let i=this._escHandlers[s];return i.push(e),{dispose:()=>{let r=i.indexOf(e);r!==-1&&i.splice(r,1)}}}clearEscHandler(t){this._escHandlers[this._identifier(t,[48,126])]&&delete this._escHandlers[this._identifier(t,[48,126])]}setEscHandlerFallback(t){this._escHandlerFb=t}setExecuteHandler(t,e){this._executeHandlers[t.charCodeAt(0)]=e}clearExecuteHandler(t){this._executeHandlers[t.charCodeAt(0)]&&delete this._executeHandlers[t.charCodeAt(0)]}setExecuteHandlerFallback(t){this._executeHandlerFb=t}registerCsiHandler(t,e){let s=this._identifier(t);this._csiHandlers[s]===void 0&&(this._csiHandlers[s]=[]);let i=this._csiHandlers[s];return i.push(e),{dispose:()=>{let r=i.indexOf(e);r!==-1&&i.splice(r,1)}}}clearCsiHandler(t){this._csiHandlers[this._identifier(t)]&&delete this._csiHandlers[this._identifier(t)]}setCsiHandlerFallback(t){this._csiHandlerFb=t}registerDcsHandler(t,e){return this._dcsParser.registerHandler(this._identifier(t),e)}clearDcsHandler(t){this._dcsParser.clearHandler(this._identifier(t))}setDcsHandlerFallback(t){this._dcsParser.setHandlerFallback(t)}registerOscHandler(t,e){return this._oscParser.registerHandler(t,e)}clearOscHandler(t){this._oscParser.clearHandler(t)}setOscHandlerFallback(t){this._oscParser.setHandlerFallback(t)}setErrorHandler(t){this._errorHandler=t}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(t,e,s,i,r){this._parseStack.state=t,this._parseStack.handlers=e,this._parseStack.handlerPos=s,this._parseStack.transition=i,this._parseStack.chunkPos=r}parse(t,e,s){let i=0,r=0,n=0,a;if(this._parseStack.state)if(this._parseStack.state===2)this._parseStack.state=0,n=this._parseStack.chunkPos+1;else{if(s===void 0||this._parseStack.state===1)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");let l=this._parseStack.handlers,h=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(s===!1&&h>-1){for(;h>=0&&(a=l[h](this._params),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 4:if(s===!1&&h>-1){for(;h>=0&&(a=l[h](),a!==!0);h--)if(a instanceof Promise)return this._parseStack.handlerPos=h,a}this._parseStack.handlers=[];break;case 6:if(i=t[this._parseStack.chunkPos],a=this._dcsParser.unhook(i!==24&&i!==26,s),a)return a;i===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(i=t[this._parseStack.chunkPos],a=this._oscParser.end(i!==24&&i!==26,s),a)return a;i===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break}this._parseStack.state=0,n=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}for(let l=n;l<e;++l){switch(i=t[l],r=this._transitions.table[this.currentState<<8|(i<160?i:et)],r>>4){case 2:for(let f=l+1;;++f){if(f>=e||(i=t[f])<32||i>126&&i<et){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<et){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<et){this._printHandler(t,l,f),l=f-1;break}if(++f>=e||(i=t[f])<32||i>126&&i<et){this._printHandler(t,l,f),l=f-1;break}}break;case 3:this._executeHandlers[i]?this._executeHandlers[i]():this._executeHandlerFb(i),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:l,code:i,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let h=this._csiHandlers[this._collect<<8|i],c=h?h.length-1:-1;for(;c>=0&&(a=h[c](this._params),a!==!0);c--)if(a instanceof Promise)return this._preserveStack(3,h,c,r,l),a;c<0&&this._csiHandlerFb(this._collect<<8|i,this._params),this.precedingJoinState=0;break;case 8:do switch(i){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(i-48)}while(++l<e&&(i=t[l])>47&&i<60);l--;break;case 9:this._collect<<=8,this._collect|=i;break;case 10:let d=this._escHandlers[this._collect<<8|i],u=d?d.length-1:-1;for(;u>=0&&(a=d[u](),a!==!0);u--)if(a instanceof Promise)return this._preserveStack(4,d,u,r,l),a;u<0&&this._escHandlerFb(this._collect<<8|i),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|i,this._params);break;case 13:for(let f=l+1;;++f)if(f>=e||(i=t[f])===24||i===26||i===27||i>127&&i<et){this._dcsParser.put(t,l,f),l=f-1;break}break;case 14:if(a=this._dcsParser.unhook(i!==24&&i!==26),a)return this._preserveStack(6,[],0,r,l),a;i===27&&(r|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let f=l+1;;f++)if(f>=e||(i=t[f])<32||i>127&&i<et){this._oscParser.put(t,l,f),l=f-1;break}break;case 6:if(a=this._oscParser.end(i!==24&&i!==26),a)return this._preserveStack(5,[],0,r,l),a;i===27&&(r|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break}this.currentState=r&15}}},sp=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,ip=/^[\da-f]+$/;function ko(t){if(!t)return;let e=t.toLowerCase();if(e.indexOf("rgb:")===0){e=e.slice(4);let s=sp.exec(e);if(s){let i=s[1]?15:s[4]?255:s[7]?4095:65535;return[Math.round(parseInt(s[1]||s[4]||s[7]||s[10],16)/i*255),Math.round(parseInt(s[2]||s[5]||s[8]||s[11],16)/i*255),Math.round(parseInt(s[3]||s[6]||s[9]||s[12],16)/i*255)]}}else if(e.indexOf("#")===0&&(e=e.slice(1),ip.exec(e)&&[3,6,9,12].includes(e.length))){let s=e.length/3,i=[0,0,0];for(let r=0;r<3;++r){let n=parseInt(e.slice(s*r,s*r+s),16);i[r]=s===1?n<<4:s===2?n:s===3?n>>4:n>>8}return i}}function tr(t,e){let s=t.toString(16),i=s.length<2?"0"+s:s;switch(e){case 4:return s[0];case 8:return i;case 12:return(i+i).slice(0,3);default:return i+i}}function rp(t,e=16){let[s,i,r]=t;return`rgb:${tr(s,e)}/${tr(i,e)}/${tr(r,e)}`}var np={"(":0,")":1,"*":2,"+":3,"-":1,".":2},Nt=131072,No=10;function jo(t,e){if(t>24)return e.setWinLines||!1;switch(t){case 1:return!!e.restoreWin;case 2:return!!e.minimizeWin;case 3:return!!e.setWinPosition;case 4:return!!e.setWinSizePixels;case 5:return!!e.raiseWin;case 6:return!!e.lowerWin;case 7:return!!e.refreshWin;case 8:return!!e.setWinSizeChars;case 9:return!!e.maximizeWin;case 10:return!!e.fullscreenWin;case 11:return!!e.getWinState;case 13:return!!e.getWinPosition;case 14:return!!e.getWinSizePixels;case 15:return!!e.getScreenSizePixels;case 16:return!!e.getCellSizePixels;case 18:return!!e.getWinSizeChars;case 19:return!!e.getScreenSizeChars;case 20:return!!e.getIconTitle;case 21:return!!e.getWinTitle;case 22:return!!e.pushTitle;case 23:return!!e.popTitle;case 24:return!!e.setWinLines}return!1}var Eo=5e3,To=0,op=class extends le{constructor(t,e,s,i,r,n,a,l,h=new tp){super(),this._bufferService=t,this._charsetService=e,this._coreService=s,this._logService=i,this._optionsService=r,this._oscLinkService=n,this._coreMouseService=a,this._unicodeService=l,this._parser=h,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new kf,this._utf8Decoder=new Nf,this._windowTitle="",this._iconName="",this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=ke.clone(),this._eraseAttrDataInternal=ke.clone(),this._onRequestBell=this._register(new V),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new V),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new V),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new V),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new V),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new V),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new V),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new V),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new V),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new V),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new V),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new V),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new V),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new Vr(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(c=>this._activeBuffer=c.activeBuffer)),this._parser.setCsiHandlerFallback((c,d)=>{this._logService.debug("Unknown CSI code: ",{identifier:this._parser.identToString(c),params:d.toArray()})}),this._parser.setEscHandlerFallback(c=>{this._logService.debug("Unknown ESC code: ",{identifier:this._parser.identToString(c)})}),this._parser.setExecuteHandlerFallback(c=>{this._logService.debug("Unknown EXECUTE code: ",{code:c})}),this._parser.setOscHandlerFallback((c,d,u)=>{this._logService.debug("Unknown OSC code: ",{identifier:c,action:d,data:u})}),this._parser.setDcsHandlerFallback((c,d,u)=>{d==="HOOK"&&(u=u.toArray()),this._logService.debug("Unknown DCS code: ",{identifier:this._parser.identToString(c),action:d,payload:u})}),this._parser.setPrintHandler((c,d,u)=>this.print(c,d,u)),this._parser.registerCsiHandler({final:"@"},c=>this.insertChars(c)),this._parser.registerCsiHandler({intermediates:" ",final:"@"},c=>this.scrollLeft(c)),this._parser.registerCsiHandler({final:"A"},c=>this.cursorUp(c)),this._parser.registerCsiHandler({intermediates:" ",final:"A"},c=>this.scrollRight(c)),this._parser.registerCsiHandler({final:"B"},c=>this.cursorDown(c)),this._parser.registerCsiHandler({final:"C"},c=>this.cursorForward(c)),this._parser.registerCsiHandler({final:"D"},c=>this.cursorBackward(c)),this._parser.registerCsiHandler({final:"E"},c=>this.cursorNextLine(c)),this._parser.registerCsiHandler({final:"F"},c=>this.cursorPrecedingLine(c)),this._parser.registerCsiHandler({final:"G"},c=>this.cursorCharAbsolute(c)),this._parser.registerCsiHandler({final:"H"},c=>this.cursorPosition(c)),this._parser.registerCsiHandler({final:"I"},c=>this.cursorForwardTab(c)),this._parser.registerCsiHandler({final:"J"},c=>this.eraseInDisplay(c,!1)),this._parser.registerCsiHandler({prefix:"?",final:"J"},c=>this.eraseInDisplay(c,!0)),this._parser.registerCsiHandler({final:"K"},c=>this.eraseInLine(c,!1)),this._parser.registerCsiHandler({prefix:"?",final:"K"},c=>this.eraseInLine(c,!0)),this._parser.registerCsiHandler({final:"L"},c=>this.insertLines(c)),this._parser.registerCsiHandler({final:"M"},c=>this.deleteLines(c)),this._parser.registerCsiHandler({final:"P"},c=>this.deleteChars(c)),this._parser.registerCsiHandler({final:"S"},c=>this.scrollUp(c)),this._parser.registerCsiHandler({final:"T"},c=>this.scrollDown(c)),this._parser.registerCsiHandler({final:"X"},c=>this.eraseChars(c)),this._parser.registerCsiHandler({final:"Z"},c=>this.cursorBackwardTab(c)),this._parser.registerCsiHandler({final:"`"},c=>this.charPosAbsolute(c)),this._parser.registerCsiHandler({final:"a"},c=>this.hPositionRelative(c)),this._parser.registerCsiHandler({final:"b"},c=>this.repeatPrecedingCharacter(c)),this._parser.registerCsiHandler({final:"c"},c=>this.sendDeviceAttributesPrimary(c)),this._parser.registerCsiHandler({prefix:">",final:"c"},c=>this.sendDeviceAttributesSecondary(c)),this._parser.registerCsiHandler({final:"d"},c=>this.linePosAbsolute(c)),this._parser.registerCsiHandler({final:"e"},c=>this.vPositionRelative(c)),this._parser.registerCsiHandler({final:"f"},c=>this.hVPosition(c)),this._parser.registerCsiHandler({final:"g"},c=>this.tabClear(c)),this._parser.registerCsiHandler({final:"h"},c=>this.setMode(c)),this._parser.registerCsiHandler({prefix:"?",final:"h"},c=>this.setModePrivate(c)),this._parser.registerCsiHandler({final:"l"},c=>this.resetMode(c)),this._parser.registerCsiHandler({prefix:"?",final:"l"},c=>this.resetModePrivate(c)),this._parser.registerCsiHandler({final:"m"},c=>this.charAttributes(c)),this._parser.registerCsiHandler({final:"n"},c=>this.deviceStatus(c)),this._parser.registerCsiHandler({prefix:"?",final:"n"},c=>this.deviceStatusPrivate(c)),this._parser.registerCsiHandler({intermediates:"!",final:"p"},c=>this.softReset(c)),this._parser.registerCsiHandler({intermediates:" ",final:"q"},c=>this.setCursorStyle(c)),this._parser.registerCsiHandler({final:"r"},c=>this.setScrollRegion(c)),this._parser.registerCsiHandler({final:"s"},c=>this.saveCursor(c)),this._parser.registerCsiHandler({final:"t"},c=>this.windowOptions(c)),this._parser.registerCsiHandler({final:"u"},c=>this.restoreCursor(c)),this._parser.registerCsiHandler({intermediates:"'",final:"}"},c=>this.insertColumns(c)),this._parser.registerCsiHandler({intermediates:"'",final:"~"},c=>this.deleteColumns(c)),this._parser.registerCsiHandler({intermediates:'"',final:"q"},c=>this.selectProtected(c)),this._parser.registerCsiHandler({intermediates:"$",final:"p"},c=>this.requestMode(c,!0)),this._parser.registerCsiHandler({prefix:"?",intermediates:"$",final:"p"},c=>this.requestMode(c,!1)),this._parser.setExecuteHandler(O.BEL,()=>this.bell()),this._parser.setExecuteHandler(O.LF,()=>this.lineFeed()),this._parser.setExecuteHandler(O.VT,()=>this.lineFeed()),this._parser.setExecuteHandler(O.FF,()=>this.lineFeed()),this._parser.setExecuteHandler(O.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler(O.BS,()=>this.backspace()),this._parser.setExecuteHandler(O.HT,()=>this.tab()),this._parser.setExecuteHandler(O.SO,()=>this.shiftOut()),this._parser.setExecuteHandler(O.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(hi.IND,()=>this.index()),this._parser.setExecuteHandler(hi.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(hi.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new Ge(c=>(this.setTitle(c),this.setIconName(c),!0))),this._parser.registerOscHandler(1,new Ge(c=>this.setIconName(c))),this._parser.registerOscHandler(2,new Ge(c=>this.setTitle(c))),this._parser.registerOscHandler(4,new Ge(c=>this.setOrReportIndexedColor(c))),this._parser.registerOscHandler(8,new Ge(c=>this.setHyperlink(c))),this._parser.registerOscHandler(10,new Ge(c=>this.setOrReportFgColor(c))),this._parser.registerOscHandler(11,new Ge(c=>this.setOrReportBgColor(c))),this._parser.registerOscHandler(12,new Ge(c=>this.setOrReportCursorColor(c))),this._parser.registerOscHandler(104,new Ge(c=>this.restoreIndexedColor(c))),this._parser.registerOscHandler(110,new Ge(c=>this.restoreFgColor(c))),this._parser.registerOscHandler(111,new Ge(c=>this.restoreBgColor(c))),this._parser.registerOscHandler(112,new Ge(c=>this.restoreCursorColor(c))),this._parser.registerEscHandler({final:"7"},()=>this.saveCursor()),this._parser.registerEscHandler({final:"8"},()=>this.restoreCursor()),this._parser.registerEscHandler({final:"D"},()=>this.index()),this._parser.registerEscHandler({final:"E"},()=>this.nextLine()),this._parser.registerEscHandler({final:"H"},()=>this.tabSet()),this._parser.registerEscHandler({final:"M"},()=>this.reverseIndex()),this._parser.registerEscHandler({final:"="},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:">"},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:"c"},()=>this.fullReset()),this._parser.registerEscHandler({final:"n"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"o"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"|"},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:"}"},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:"~"},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:"%",final:"@"},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:"%",final:"G"},()=>this.selectDefaultCharset());for(let c in Me)this._parser.registerEscHandler({intermediates:"(",final:c},()=>this.selectCharset("("+c)),this._parser.registerEscHandler({intermediates:")",final:c},()=>this.selectCharset(")"+c)),this._parser.registerEscHandler({intermediates:"*",final:c},()=>this.selectCharset("*"+c)),this._parser.registerEscHandler({intermediates:"+",final:c},()=>this.selectCharset("+"+c)),this._parser.registerEscHandler({intermediates:"-",final:c},()=>this.selectCharset("-"+c)),this._parser.registerEscHandler({intermediates:".",final:c},()=>this.selectCharset("."+c)),this._parser.registerEscHandler({intermediates:"/",final:c},()=>this.selectCharset("/"+c));this._parser.registerEscHandler({intermediates:"#",final:"8"},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(c=>(this._logService.error("Parsing error: ",c),c)),this._parser.registerDcsHandler({intermediates:"$",final:"q"},new Co((c,d)=>this.requestStatusString(c,d)))}getAttrData(){return this._curAttrData}_preserveStack(t,e,s,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=t,this._parseStack.cursorStartY=e,this._parseStack.decodedLength=s,this._parseStack.position=i}_logSlowResolvingAsync(t){this._logService.logLevel<=3&&Promise.race([t,new Promise((e,s)=>setTimeout(()=>s("#SLOW_TIMEOUT"),Eo))]).catch(e=>{if(e!=="#SLOW_TIMEOUT")throw e;console.warn(`async parser handler taking longer than ${Eo} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(t,e){let s,i=this._activeBuffer.x,r=this._activeBuffer.y,n=0,a=this._parseStack.paused;if(a){if(s=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,e))return this._logSlowResolvingAsync(s),s;i=this._parseStack.cursorStartX,r=this._parseStack.cursorStartY,this._parseStack.paused=!1,t.length>Nt&&(n=this._parseStack.position+Nt)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof t=="string"?` "${t}"`:` "${Array.prototype.map.call(t,c=>String.fromCharCode(c)).join("")}"`}`),this._logService.logLevel===0&&this._logService.trace("parsing data (codes)",typeof t=="string"?t.split("").map(c=>c.charCodeAt(0)):t),this._parseBuffer.length<t.length&&this._parseBuffer.length<Nt&&(this._parseBuffer=new Uint32Array(Math.min(t.length,Nt))),a||this._dirtyRowTracker.clearRange(),t.length>Nt)for(let c=n;c<t.length;c+=Nt){let d=c+Nt<t.length?c+Nt:t.length,u=typeof t=="string"?this._stringDecoder.decode(t.substring(c,d),this._parseBuffer):this._utf8Decoder.decode(t.subarray(c,d),this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,u))return this._preserveStack(i,r,u,c),this._logSlowResolvingAsync(s),s}else if(!a){let c=typeof t=="string"?this._stringDecoder.decode(t,this._parseBuffer):this._utf8Decoder.decode(t,this._parseBuffer);if(s=this._parser.parse(this._parseBuffer,c))return this._preserveStack(i,r,c,0),this._logSlowResolvingAsync(s),s}(this._activeBuffer.x!==i||this._activeBuffer.y!==r)&&this._onCursorMove.fire();let l=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),h=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);h<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(h,this._bufferService.rows-1),end:Math.min(l,this._bufferService.rows-1)})}print(t,e,s){let i,r,n=this._charsetService.charset,a=this._optionsService.rawOptions.screenReaderMode,l=this._bufferService.cols,h=this._coreService.decPrivateModes.wraparound,c=this._coreService.modes.insertMode,d=this._curAttrData,u=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&s-e>0&&u.getWidth(this._activeBuffer.x-1)===2&&u.setCellFromCodepoint(this._activeBuffer.x-1,0,1,d);let f=this._parser.precedingJoinState;for(let m=e;m<s;++m){if(i=t[m],i<127&&n){let x=n[String.fromCharCode(i)];x&&(i=x.charCodeAt(0))}let _=this._unicodeService.charProperties(i,f);r=Pt.extractWidth(_);let p=Pt.extractShouldJoin(_),g=p?Pt.extractWidth(f):0;if(f=_,a&&this._onA11yChar.fire(jt(i)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+r-g>l){if(h){let x=u,b=this._activeBuffer.x-g;for(this._activeBuffer.x=g,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),u=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),g>0&&u instanceof js&&u.copyCellsFrom(x,b,0,g,!1);b<l;)x.setCellFromCodepoint(b++,0,1,d)}else if(this._activeBuffer.x=l-1,r===2)continue}if(p&&this._activeBuffer.x){let x=u.getWidth(this._activeBuffer.x-1)?1:2;u.addCodepointToCell(this._activeBuffer.x-x,i,r);for(let b=r-g;--b>=0;)u.setCellFromCodepoint(this._activeBuffer.x++,0,0,d);continue}if(c&&(u.insertCells(this._activeBuffer.x,r-g,this._activeBuffer.getNullCell(d)),u.getWidth(l-1)===2&&u.setCellFromCodepoint(l-1,0,1,d)),u.setCellFromCodepoint(this._activeBuffer.x++,i,r,d),r>0)for(;--r;)u.setCellFromCodepoint(this._activeBuffer.x++,0,0,d)}this._parser.precedingJoinState=f,this._activeBuffer.x<l&&s-e>0&&u.getWidth(this._activeBuffer.x)===0&&!u.hasContent(this._activeBuffer.x)&&u.setCellFromCodepoint(this._activeBuffer.x,0,1,d),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(t,e){return t.final==="t"&&!t.prefix&&!t.intermediates?this._parser.registerCsiHandler(t,s=>jo(s.params[0],this._optionsService.rawOptions.windowOptions)?e(s):!0):this._parser.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._parser.registerDcsHandler(t,new Co(e))}registerEscHandler(t,e){return this._parser.registerEscHandler(t,e)}registerOscHandler(t,e){return this._parser.registerOscHandler(t,new Ge(e))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);t.hasWidth(this._activeBuffer.x)&&!t.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-t),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(t=this._bufferService.cols-1){this._activeBuffer.x=Math.min(t,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(t,e){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=t,this._activeBuffer.y=this._activeBuffer.scrollTop+e):(this._activeBuffer.x=t,this._activeBuffer.y=e),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(t,e){this._restrictCursor(),this._setCursor(this._activeBuffer.x+t,this._activeBuffer.y+e)}cursorUp(t){let e=this._activeBuffer.y-this._activeBuffer.scrollTop;return e>=0?this._moveCursor(0,-Math.min(e,t.params[0]||1)):this._moveCursor(0,-(t.params[0]||1)),!0}cursorDown(t){let e=this._activeBuffer.scrollBottom-this._activeBuffer.y;return e>=0?this._moveCursor(0,Math.min(e,t.params[0]||1)):this._moveCursor(0,t.params[0]||1),!0}cursorForward(t){return this._moveCursor(t.params[0]||1,0),!0}cursorBackward(t){return this._moveCursor(-(t.params[0]||1),0),!0}cursorNextLine(t){return this.cursorDown(t),this._activeBuffer.x=0,!0}cursorPrecedingLine(t){return this.cursorUp(t),this._activeBuffer.x=0,!0}cursorCharAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(t){return this._setCursor(t.length>=2?(t.params[1]||1)-1:0,(t.params[0]||1)-1),!0}charPosAbsolute(t){return this._setCursor((t.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(t){return this._moveCursor(t.params[0]||1,0),!0}linePosAbsolute(t){return this._setCursor(this._activeBuffer.x,(t.params[0]||1)-1),!0}vPositionRelative(t){return this._moveCursor(0,t.params[0]||1),!0}hVPosition(t){return this.cursorPosition(t),!0}tabClear(t){let e=t.params[0];return e===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:e===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(t){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=t.params[0]||1;for(;e--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(t){let e=t.params[0];return e===1&&(this._curAttrData.bg|=536870912),(e===2||e===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(t,e,s,i=!1,r=!1){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);n.replaceCells(e,s,this._activeBuffer.getNullCell(this._eraseAttrData()),r),i&&(n.isWrapped=!1)}_resetBufferLine(t,e=!1){let s=this._activeBuffer.lines.get(this._activeBuffer.ybase+t);s&&(s.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),e),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+t),s.isWrapped=!1)}eraseInDisplay(t,e=!1){this._restrictCursor(this._bufferService.cols);let s;switch(t.params[0]){case 0:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);s<this._bufferService.rows;s++)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(s);break;case 1:for(s=this._activeBuffer.y,this._dirtyRowTracker.markDirty(s),this._eraseInBufferLine(s,0,this._activeBuffer.x+1,!0,e),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(s+1).isWrapped=!1);s--;)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(s=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,s-1);s--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+s)?.getTrimmedLength(););for(;s>=0;s--)this._bufferService.scroll(this._eraseAttrData())}else{for(s=this._bufferService.rows,this._dirtyRowTracker.markDirty(s-1);s--;)this._resetBufferLine(s,e);this._dirtyRowTracker.markDirty(0)}break;case 3:let i=this._activeBuffer.lines.length-this._bufferService.rows;i>0&&(this._activeBuffer.lines.trimStart(i),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-i,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-i,0),this._onScroll.fire(0));break}return!0}eraseInLine(t,e=!1){switch(this._restrictCursor(this._bufferService.cols),t.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,e);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,e);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,e);break}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,i=this._bufferService.rows-1-this._activeBuffer.scrollBottom,r=this._bufferService.rows-1+this._activeBuffer.ybase-i+1;for(;e--;)this._activeBuffer.lines.splice(r-1,1),this._activeBuffer.lines.splice(s,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(t){this._restrictCursor();let e=t.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let s=this._activeBuffer.ybase+this._activeBuffer.y,i;for(i=this._bufferService.rows-1-this._activeBuffer.scrollBottom,i=this._bufferService.rows-1+this._activeBuffer.ybase-i;e--;)this._activeBuffer.lines.splice(s,1),this._activeBuffer.lines.splice(i,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.insertCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.deleteCells(this._activeBuffer.x,t.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(t){let e=t.params[0]||1;for(;e--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(ke));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.deleteCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.insertCells(0,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.insertCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(t){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let e=t.params[0]||1;for(let s=this._activeBuffer.scrollTop;s<=this._activeBuffer.scrollBottom;++s){let i=this._activeBuffer.lines.get(this._activeBuffer.ybase+s);i.deleteCells(this._activeBuffer.x,e,this._activeBuffer.getNullCell(this._eraseAttrData())),i.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(t){this._restrictCursor();let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return e&&(e.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(t.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(t){let e=this._parser.precedingJoinState;if(!e)return!0;let s=t.params[0]||1,i=Pt.extractWidth(e),r=this._activeBuffer.x-i,n=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(r),a=new Uint32Array(n.length*s),l=0;for(let c=0;c<n.length;){let d=n.codePointAt(c)||0;a[l++]=d,c+=d>65535?2:1}let h=l;for(let c=1;c<s;++c)a.copyWithin(h,0,l),h+=l;return this.print(a,0,h),!0}sendDeviceAttributesPrimary(t){return t.params[0]>0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(O.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(O.ESC+"[?6c")),!0}sendDeviceAttributesSecondary(t){return t.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(O.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(O.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(t.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(O.ESC+"[>83;40003;0c")),!0}_is(t){return(this._optionsService.rawOptions.termName+"").indexOf(t)===0}setMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,It),this._charsetService.setgCharset(1,It),this._charsetService.setgCharset(2,It),this._charsetService.setgCharset(3,It);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol="X10";break;case 1e3:this._coreMouseService.activeProtocol="VT200";break;case 1002:this._coreMouseService.activeProtocol="DRAG";break;case 1003:this._coreMouseService.activeProtocol="ANY";break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug("DECSET 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="SGR";break;case 1015:this._logService.debug("DECSET 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="SGR_PIXELS";break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(t){for(let e=0;e<t.length;e++)switch(t.params[e]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol="NONE";break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug("DECRST 1005 not supported (see #2507)");break;case 1006:this._coreMouseService.activeEncoding="DEFAULT";break;case 1015:this._logService.debug("DECRST 1015 not supported (see #2507)");break;case 1016:this._coreMouseService.activeEncoding="DEFAULT";break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),t.params[e]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(t,e){let s;(p=>(p[p.NOT_RECOGNIZED=0]="NOT_RECOGNIZED",p[p.SET=1]="SET",p[p.RESET=2]="RESET",p[p.PERMANENTLY_SET=3]="PERMANENTLY_SET",p[p.PERMANENTLY_RESET=4]="PERMANENTLY_RESET"))(s||={});let i=this._coreService.decPrivateModes,{activeProtocol:r,activeEncoding:n}=this._coreMouseService,a=this._coreService,{buffers:l,cols:h}=this._bufferService,{active:c,alt:d}=l,u=this._optionsService.rawOptions,f=(p,g)=>(a.triggerDataEvent(`${O.ESC}[${e?"":"?"}${p};${g}$y`),!0),m=p=>p?1:2,_=t.params[0];return e?_===2?f(_,4):_===4?f(_,m(a.modes.insertMode)):_===12?f(_,3):_===20?f(_,m(u.convertEol)):f(_,0):_===1?f(_,m(i.applicationCursorKeys)):_===3?f(_,u.windowOptions.setWinLines?h===80?2:h===132?1:0:0):_===6?f(_,m(i.origin)):_===7?f(_,m(i.wraparound)):_===8?f(_,3):_===9?f(_,m(r==="X10")):_===12?f(_,m(u.cursorBlink)):_===25?f(_,m(!a.isCursorHidden)):_===45?f(_,m(i.reverseWraparound)):_===66?f(_,m(i.applicationKeypad)):_===67?f(_,4):_===1e3?f(_,m(r==="VT200")):_===1002?f(_,m(r==="DRAG")):_===1003?f(_,m(r==="ANY")):_===1004?f(_,m(i.sendFocus)):_===1005?f(_,4):_===1006?f(_,m(n==="SGR")):_===1015?f(_,4):_===1016?f(_,m(n==="SGR_PIXELS")):_===1048?f(_,1):_===47||_===1047||_===1049?f(_,m(c===d)):_===2004?f(_,m(i.bracketedPasteMode)):_===2026?f(_,m(i.synchronizedOutput)):f(_,0)}_updateAttrColor(t,e,s,i,r){return e===2?(t|=50331648,t&=-16777216,t|=Us.fromColorRGB([s,i,r])):e===5&&(t&=-50331904,t|=33554432|s&255),t}_extractColor(t,e,s){let i=[0,0,-1,0,0,0],r=0,n=0;do{if(i[n+r]=t.params[e+n],t.hasSubParams(e+n)){let a=t.getSubParams(e+n),l=0;do i[1]===5&&(r=1),i[n+l+1+r]=a[l];while(++l<a.length&&l+n+1+r<i.length);break}if(i[1]===5&&n+r>=2||i[1]===2&&n+r>=5)break;i[1]&&(r=1)}while(++n+e<t.length&&n+r<i.length);for(let a=2;a<i.length;++a)i[a]===-1&&(i[a]=0);switch(i[0]){case 38:s.fg=this._updateAttrColor(s.fg,i[1],i[3],i[4],i[5]);break;case 48:s.bg=this._updateAttrColor(s.bg,i[1],i[3],i[4],i[5]);break;case 58:s.extended=s.extended.clone(),s.extended.underlineColor=this._updateAttrColor(s.extended.underlineColor,i[1],i[3],i[4],i[5])}return n}_processUnderline(t,e){e.extended=e.extended.clone(),(!~t||t>5)&&(t=1),e.extended.underlineStyle=t,e.fg|=268435456,t===0&&(e.fg&=-268435457),e.updateExtended()}_processSGR0(t){t.fg=ke.fg,t.bg=ke.bg,t.extended=t.extended.clone(),t.extended.underlineStyle=0,t.extended.underlineColor&=-67108864,t.updateExtended()}charAttributes(t){if(t.length===1&&t.params[0]===0)return this._processSGR0(this._curAttrData),!0;let e=t.length,s,i=this._curAttrData;for(let r=0;r<e;r++)s=t.params[r],s>=30&&s<=37?(i.fg&=-50331904,i.fg|=16777216|s-30):s>=40&&s<=47?(i.bg&=-50331904,i.bg|=16777216|s-40):s>=90&&s<=97?(i.fg&=-50331904,i.fg|=16777216|s-90|8):s>=100&&s<=107?(i.bg&=-50331904,i.bg|=16777216|s-100|8):s===0?this._processSGR0(i):s===1?i.fg|=134217728:s===3?i.bg|=67108864:s===4?(i.fg|=268435456,this._processUnderline(t.hasSubParams(r)?t.getSubParams(r)[0]:1,i)):s===5?i.fg|=536870912:s===7?i.fg|=67108864:s===8?i.fg|=1073741824:s===9?i.fg|=2147483648:s===2?i.bg|=134217728:s===21?this._processUnderline(2,i):s===22?(i.fg&=-134217729,i.bg&=-134217729):s===23?i.bg&=-67108865:s===24?(i.fg&=-268435457,this._processUnderline(0,i)):s===25?i.fg&=-536870913:s===27?i.fg&=-67108865:s===28?i.fg&=-1073741825:s===29?i.fg&=2147483647:s===39?(i.fg&=-67108864,i.fg|=ke.fg&16777215):s===49?(i.bg&=-67108864,i.bg|=ke.bg&16777215):s===38||s===48||s===58?r+=this._extractColor(t,r,i):s===53?i.bg|=1073741824:s===55?i.bg&=-1073741825:s===59?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):s===100?(i.fg&=-67108864,i.fg|=ke.fg&16777215,i.bg&=-67108864,i.bg|=ke.bg&16777215):this._logService.debug("Unknown SGR attribute: %d.",s);return!0}deviceStatus(t){switch(t.params[0]){case 5:this._coreService.triggerDataEvent(`${O.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${O.ESC}[${e};${s}R`);break}return!0}deviceStatusPrivate(t){if(t.params[0]===6){let e=this._activeBuffer.y+1,s=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${O.ESC}[?${e};${s}R`)}return!0}softReset(t){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=ke.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(t){let e=t.length===0?1:t.params[0];if(e===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(e){case 1:case 2:this._coreService.decPrivateModes.cursorStyle="block";break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle="underline";break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle="bar";break}let s=e%2===1;this._coreService.decPrivateModes.cursorBlink=s}return!0}setScrollRegion(t){let e=t.params[0]||1,s;return(t.length<2||(s=t.params[1])>this._bufferService.rows||s===0)&&(s=this._bufferService.rows),s>e&&(this._activeBuffer.scrollTop=e-1,this._activeBuffer.scrollBottom=s-1,this._setCursor(0,0)),!0}windowOptions(t){if(!jo(t.params[0],this._optionsService.rawOptions.windowOptions))return!0;let e=t.length>1?t.params[1]:0;switch(t.params[0]){case 14:e!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${O.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(e===0||e===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>No&&this._windowTitleStack.shift()),(e===0||e===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>No&&this._iconNameStack.shift());break;case 23:(e===0||e===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(e===0||e===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop());break}return!0}saveCursor(t){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(t){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(t){return this._windowTitle=t,this._onTitleChange.fire(t),!0}setIconName(t){return this._iconName=t,!0}setOrReportIndexedColor(t){let e=[],s=t.split(";");for(;s.length>1;){let i=s.shift(),r=s.shift();if(/^\d+$/.exec(i)){let n=parseInt(i);if(Ro(n))if(r==="?")e.push({type:0,index:n});else{let a=ko(r);a&&e.push({type:1,index:n,color:a})}}}return e.length&&this._onColor.fire(e),!0}setHyperlink(t){let e=t.indexOf(";");if(e===-1)return!0;let s=t.slice(0,e).trim(),i=t.slice(e+1);return i?this._createHyperlink(s,i):s.trim()?!1:this._finishHyperlink()}_createHyperlink(t,e){this._getCurrentLinkId()&&this._finishHyperlink();let s=t.split(":"),i,r=s.findIndex(n=>n.startsWith("id="));return r!==-1&&(i=s[r].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:i,uri:e}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(t,e){let s=t.split(";");for(let i=0;i<s.length&&!(e>=this._specialColors.length);++i,++e)if(s[i]==="?")this._onColor.fire([{type:0,index:this._specialColors[e]}]);else{let r=ko(s[i]);r&&this._onColor.fire([{type:1,index:this._specialColors[e],color:r}])}return!0}setOrReportFgColor(t){return this._setOrReportSpecialColor(t,0)}setOrReportBgColor(t){return this._setOrReportSpecialColor(t,1)}setOrReportCursorColor(t){return this._setOrReportSpecialColor(t,2)}restoreIndexedColor(t){if(!t)return this._onColor.fire([{type:2}]),!0;let e=[],s=t.split(";");for(let i=0;i<s.length;++i)if(/^\d+$/.exec(s[i])){let r=parseInt(s[i]);Ro(r)&&e.push({type:2,index:r})}return e.length&&this._onColor.fire(e),!0}restoreFgColor(t){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(t){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(t){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,It),!0}selectCharset(t){return t.length!==2?(this.selectDefaultCharset(),!0):(t[0]==="/"||this._charsetService.setgCharset(np[t[0]],Me[t[1]]||It),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let t=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,t,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=ke.clone(),this._eraseAttrDataInternal=ke.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(t){return this._charsetService.setgLevel(t),!0}screenAlignmentPattern(){let t=new tt;t.content=1<<22|69,t.fg=this._curAttrData.fg,t.bg=this._curAttrData.bg,this._setCursor(0,0);for(let e=0;e<this._bufferService.rows;++e){let s=this._activeBuffer.ybase+this._activeBuffer.y+e,i=this._activeBuffer.lines.get(s);i&&(i.fill(t),i.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(t,e){let s=a=>(this._coreService.triggerDataEvent(`${O.ESC}${a}${O.ESC}\\`),!0),i=this._bufferService.buffer,r=this._optionsService.rawOptions;return s(t==='"q'?`P1$r${this._curAttrData.isProtected()?1:0}"q`:t==='"p'?'P1$r61;1"p':t==="r"?`P1$r${i.scrollTop+1};${i.scrollBottom+1}r`:t==="m"?"P1$r0m":t===" q"?`P1$r${{block:2,underline:4,bar:6}[r.cursorStyle]-(r.cursorBlink?1:0)} q`:"P0$r")}markRangeDirty(t,e){this._dirtyRowTracker.markRangeDirty(t,e)}},Vr=class{constructor(t){this._bufferService=t,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(t){t<this.start?this.start=t:t>this.end&&(this.end=t)}markRangeDirty(t,e){t>e&&(To=t,t=e,e=To),t<this.start&&(this.start=t),e>this.end&&(this.end=e)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};Vr=ye([X(0,Ue)],Vr);function Ro(t){return 0<=t&&t<256}var ap=5e7,Do=12,lp=50,cp=class extends le{constructor(t){super(),this._action=t,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new V),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(t,e){if(e!==void 0&&this._syncCalls>e){this._syncCalls=0;return}if(this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let s;for(;s=this._writeBuffer.shift();){this._action(s);let i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(t,e){if(this._pendingData>ap)throw new Error("write data discarded, use flow control to avoid losing data");if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=t.length,this._writeBuffer.push(t),this._callbacks.push(e)}_innerWrite(t=0,e=!0){let s=t||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let i=this._writeBuffer[this._bufferOffset],r=this._action(i,e);if(r){let a=l=>performance.now()-s>=Do?setTimeout(()=>this._innerWrite(0,l)):this._innerWrite(s,l);r.catch(l=>(queueMicrotask(()=>{throw l}),Promise.resolve(!1))).then(a);return}let n=this._callbacks[this._bufferOffset];if(n&&n(),this._bufferOffset++,this._pendingData-=i.length,performance.now()-s>=Do)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>lp&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},qr=class{constructor(t){this._bufferService=t,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(t){let e=this._bufferService.buffer;if(t.id===void 0){let l=e.addMarker(e.ybase+e.y),h={data:t,id:this._nextId++,lines:[l]};return l.onDispose(()=>this._removeMarkerFromLink(h,l)),this._dataByLinkId.set(h.id,h),h.id}let s=t,i=this._getEntryIdKey(s),r=this._entriesWithId.get(i);if(r)return this.addLineToLink(r.id,e.ybase+e.y),r.id;let n=e.addMarker(e.ybase+e.y),a={id:this._nextId++,key:this._getEntryIdKey(s),data:s,lines:[n]};return n.onDispose(()=>this._removeMarkerFromLink(a,n)),this._entriesWithId.set(a.key,a),this._dataByLinkId.set(a.id,a),a.id}addLineToLink(t,e){let s=this._dataByLinkId.get(t);if(s&&s.lines.every(i=>i.line!==e)){let i=this._bufferService.buffer.addMarker(e);s.lines.push(i),i.onDispose(()=>this._removeMarkerFromLink(s,i))}}getLinkData(t){return this._dataByLinkId.get(t)?.data}_getEntryIdKey(t){return`${t.id};;${t.uri}`}_removeMarkerFromLink(t,e){let s=t.lines.indexOf(e);s!==-1&&(t.lines.splice(s,1),t.lines.length===0&&(t.data.id!==void 0&&this._entriesWithId.delete(t.key),this._dataByLinkId.delete(t.id)))}};qr=ye([X(0,Ue)],qr);var Mo=!1,hp=class extends le{constructor(t){super(),this._windowsWrappingHeuristics=this._register(new os),this._onBinary=this._register(new V),this.onBinary=this._onBinary.event,this._onData=this._register(new V),this.onData=this._onData.event,this._onLineFeed=this._register(new V),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new V),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new V),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new V),this._instantiationService=new I_,this.optionsService=this._register(new U_(t)),this._instantiationService.setService(Ke,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(Hr)),this._instantiationService.setService(Ue,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(Fr)),this._instantiationService.setService(Ga,this._logService),this.coreService=this._register(this._instantiationService.createInstance(Wr)),this._instantiationService.setService(Gt,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(Ur)),this._instantiationService.setService(qa,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(Pt)),this._instantiationService.setService(Rf,this.unicodeService),this._charsetService=this._instantiationService.createInstance(Y_),this._instantiationService.setService(Tf,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(qr),this._instantiationService.setService(Ya,this._oscLinkService),this._inputHandler=this._register(new op(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(ze.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(ze.forward(this._bufferService.onResize,this._onResize)),this._register(ze.forward(this.coreService.onData,this._onData)),this._register(ze.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange(["windowsMode","windowsPty"],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new cp((e,s)=>this._inputHandler.parse(e,s))),this._register(ze.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new V),this._onScroll.event(t=>{this._onScrollApi?.fire(t.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(t){for(let e in t)this.optionsService.options[e]=t[e]}write(t,e){this._writeBuffer.write(t,e)}writeSync(t,e){this._logService.logLevel<=3&&!Mo&&(this._logService.warn("writeSync is unreliable and will be removed soon."),Mo=!0),this._writeBuffer.writeSync(t,e)}input(t,e=!0){this.coreService.triggerDataEvent(t,e)}resize(t,e){isNaN(t)||isNaN(e)||(t=Math.max(t,jl),e=Math.max(e,El),this._bufferService.resize(t,e))}scroll(t,e=!1){this._bufferService.scroll(t,e)}scrollLines(t,e){this._bufferService.scrollLines(t,e)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}registerEscHandler(t,e){return this._inputHandler.registerEscHandler(t,e)}registerDcsHandler(t,e){return this._inputHandler.registerDcsHandler(t,e)}registerCsiHandler(t,e){return this._inputHandler.registerCsiHandler(t,e)}registerOscHandler(t,e){return this._inputHandler.registerOscHandler(t,e)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let t=!1,e=this.optionsService.rawOptions.windowsPty;e&&e.buildNumber!==void 0&&e.buildNumber!==void 0?t=e.backend==="conpty"&&e.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(t=!0),t?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let t=[];t.push(this.onLineFeed(wo.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},()=>(wo(this._bufferService),!1))),this._windowsWrappingHeuristics.value=pe(()=>{for(let e of t)e.dispose()})}}},dp={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};function up(t,e,s,i){let r={type:0,cancel:!1,key:void 0},n=(t.shiftKey?1:0)|(t.altKey?2:0)|(t.ctrlKey?4:0)|(t.metaKey?8:0);switch(t.keyCode){case 0:t.key==="UIKeyInputUpArrow"?e?r.key=O.ESC+"OA":r.key=O.ESC+"[A":t.key==="UIKeyInputLeftArrow"?e?r.key=O.ESC+"OD":r.key=O.ESC+"[D":t.key==="UIKeyInputRightArrow"?e?r.key=O.ESC+"OC":r.key=O.ESC+"[C":t.key==="UIKeyInputDownArrow"&&(e?r.key=O.ESC+"OB":r.key=O.ESC+"[B");break;case 8:r.key=t.ctrlKey?"\b":O.DEL,t.altKey&&(r.key=O.ESC+r.key);break;case 9:if(t.shiftKey){r.key=O.ESC+"[Z";break}r.key=O.HT,r.cancel=!0;break;case 13:r.key=t.altKey?O.ESC+O.CR:O.CR,r.cancel=!0;break;case 27:r.key=O.ESC,t.altKey&&(r.key=O.ESC+O.ESC),r.cancel=!0;break;case 37:if(t.metaKey)break;n?r.key=O.ESC+"[1;"+(n+1)+"D":e?r.key=O.ESC+"OD":r.key=O.ESC+"[D";break;case 39:if(t.metaKey)break;n?r.key=O.ESC+"[1;"+(n+1)+"C":e?r.key=O.ESC+"OC":r.key=O.ESC+"[C";break;case 38:if(t.metaKey)break;n?r.key=O.ESC+"[1;"+(n+1)+"A":e?r.key=O.ESC+"OA":r.key=O.ESC+"[A";break;case 40:if(t.metaKey)break;n?r.key=O.ESC+"[1;"+(n+1)+"B":e?r.key=O.ESC+"OB":r.key=O.ESC+"[B";break;case 45:!t.shiftKey&&!t.ctrlKey&&(r.key=O.ESC+"[2~");break;case 46:n?r.key=O.ESC+"[3;"+(n+1)+"~":r.key=O.ESC+"[3~";break;case 36:n?r.key=O.ESC+"[1;"+(n+1)+"H":e?r.key=O.ESC+"OH":r.key=O.ESC+"[H";break;case 35:n?r.key=O.ESC+"[1;"+(n+1)+"F":e?r.key=O.ESC+"OF":r.key=O.ESC+"[F";break;case 33:t.shiftKey?r.type=2:t.ctrlKey?r.key=O.ESC+"[5;"+(n+1)+"~":r.key=O.ESC+"[5~";break;case 34:t.shiftKey?r.type=3:t.ctrlKey?r.key=O.ESC+"[6;"+(n+1)+"~":r.key=O.ESC+"[6~";break;case 112:n?r.key=O.ESC+"[1;"+(n+1)+"P":r.key=O.ESC+"OP";break;case 113:n?r.key=O.ESC+"[1;"+(n+1)+"Q":r.key=O.ESC+"OQ";break;case 114:n?r.key=O.ESC+"[1;"+(n+1)+"R":r.key=O.ESC+"OR";break;case 115:n?r.key=O.ESC+"[1;"+(n+1)+"S":r.key=O.ESC+"OS";break;case 116:n?r.key=O.ESC+"[15;"+(n+1)+"~":r.key=O.ESC+"[15~";break;case 117:n?r.key=O.ESC+"[17;"+(n+1)+"~":r.key=O.ESC+"[17~";break;case 118:n?r.key=O.ESC+"[18;"+(n+1)+"~":r.key=O.ESC+"[18~";break;case 119:n?r.key=O.ESC+"[19;"+(n+1)+"~":r.key=O.ESC+"[19~";break;case 120:n?r.key=O.ESC+"[20;"+(n+1)+"~":r.key=O.ESC+"[20~";break;case 121:n?r.key=O.ESC+"[21;"+(n+1)+"~":r.key=O.ESC+"[21~";break;case 122:n?r.key=O.ESC+"[23;"+(n+1)+"~":r.key=O.ESC+"[23~";break;case 123:n?r.key=O.ESC+"[24;"+(n+1)+"~":r.key=O.ESC+"[24~";break;default:if(t.ctrlKey&&!t.shiftKey&&!t.altKey&&!t.metaKey)t.keyCode>=65&&t.keyCode<=90?r.key=String.fromCharCode(t.keyCode-64):t.keyCode===32?r.key=O.NUL:t.keyCode>=51&&t.keyCode<=55?r.key=String.fromCharCode(t.keyCode-51+27):t.keyCode===56?r.key=O.DEL:t.keyCode===219?r.key=O.ESC:t.keyCode===220?r.key=O.FS:t.keyCode===221&&(r.key=O.GS);else if((!s||i)&&t.altKey&&!t.metaKey){let a=dp[t.keyCode]?.[t.shiftKey?1:0];if(a)r.key=O.ESC+a;else if(t.keyCode>=65&&t.keyCode<=90){let l=t.ctrlKey?t.keyCode-64:t.keyCode+32,h=String.fromCharCode(l);t.shiftKey&&(h=h.toUpperCase()),r.key=O.ESC+h}else if(t.keyCode===32)r.key=O.ESC+(t.ctrlKey?O.NUL:" ");else if(t.key==="Dead"&&t.code.startsWith("Key")){let l=t.code.slice(3,4);t.shiftKey||(l=l.toLowerCase()),r.key=O.ESC+l,r.cancel=!0}}else s&&!t.altKey&&!t.ctrlKey&&!t.shiftKey&&t.metaKey?t.keyCode===65&&(r.type=1):t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.keyCode>=48&&t.key.length===1?r.key=t.key:t.key&&t.ctrlKey&&(t.key==="_"&&(r.key=O.US),t.key==="@"&&(r.key=O.NUL));break}return r}var we=0,fp=class{constructor(t){this._getKey=t,this._array=[],this._insertedValues=[],this._flushInsertedTask=new xi,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new xi,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(t){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(t)}_flushInserted(){let t=this._insertedValues.sort((r,n)=>this._getKey(r)-this._getKey(n)),e=0,s=0,i=new Array(this._array.length+this._insertedValues.length);for(let r=0;r<i.length;r++)s>=this._array.length||this._getKey(t[e])<=this._getKey(this._array[s])?(i[r]=t[e],e++):i[r]=this._array[s++];this._array=i,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(t){if(this._flushCleanupInserted(),this._array.length===0)return!1;let e=this._getKey(t);if(e===void 0||(we=this._search(e),we===-1)||this._getKey(this._array[we])!==e)return!1;do if(this._array[we]===t)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(we),!0;while(++we<this._array.length&&this._getKey(this._array[we])===e);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let t=this._deletedIndices.sort((r,n)=>r-n),e=0,s=new Array(this._array.length-t.length),i=0;for(let r=0;r<this._array.length;r++)t[e]===r?e++:s[i++]=this._array[r];this._array=s,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(we=this._search(t),!(we<0||we>=this._array.length)&&this._getKey(this._array[we])===t))do yield this._array[we];while(++we<this._array.length&&this._getKey(this._array[we])===t)}forEachByKey(t,e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(we=this._search(t),!(we<0||we>=this._array.length)&&this._getKey(this._array[we])===t))do e(this._array[we]);while(++we<this._array.length&&this._getKey(this._array[we])===t)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(t){let e=0,s=this._array.length-1;for(;s>=e;){let i=e+s>>1,r=this._getKey(this._array[i]);if(r>t)s=i-1;else if(r<t)e=i+1;else{for(;i>0&&this._getKey(this._array[i-1])===t;)i--;return i}}return e}},sr=0,Ao=0,mp=class extends le{constructor(){super(),this._decorations=new fp(t=>t?.marker.line),this._onDecorationRegistered=this._register(new V),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new V),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(pe(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(t){if(t.marker.isDisposed)return;let e=new _p(t);if(e){let s=e.marker.onDispose(()=>e.dispose()),i=e.onDispose(()=>{i.dispose(),e&&(this._decorations.delete(e)&&this._onDecorationRemoved.fire(e),s.dispose())});this._decorations.insert(e),this._onDecorationRegistered.fire(e)}return e}reset(){for(let t of this._decorations.values())t.dispose();this._decorations.clear()}*getDecorationsAtCell(t,e,s){let i=0,r=0;for(let n of this._decorations.getKeyIterator(e))i=n.options.x??0,r=i+(n.options.width??1),t>=i&&t<r&&(!s||(n.options.layer??"bottom")===s)&&(yield n)}forEachDecorationAtCell(t,e,s,i){this._decorations.forEachByKey(e,r=>{sr=r.options.x??0,Ao=sr+(r.options.width??1),t>=sr&&t<Ao&&(!s||(r.options.layer??"bottom")===s)&&i(r)})}},_p=class extends Rt{constructor(t){super(),this.options=t,this.onRenderEmitter=this.add(new V),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new V),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=t.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position="full")}get backgroundColorRGB(){return this._cachedBg===null&&(this.options.backgroundColor?this._cachedBg=xe.toColor(this.options.backgroundColor):this._cachedBg=void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this.options.foregroundColor?this._cachedFg=xe.toColor(this.options.foregroundColor):this._cachedFg=void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},pp=1e3,gp=class{constructor(t,e=pp){this._renderCallback=t,this._debounceThresholdMS=e,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(t,e,s){this._rowCount=s,t=t!==void 0?t:0,e=e!==void 0?e:this._rowCount-1,this._rowStart=this._rowStart!==void 0?Math.min(this._rowStart,t):t,this._rowEnd=this._rowEnd!==void 0?Math.max(this._rowEnd,e):e;let i=performance.now();if(i-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=i,this._innerRefresh();else if(!this._additionalRefreshRequested){let r=i-this._lastRefreshMs,n=this._debounceThresholdMS-r;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},n)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let t=Math.max(this._rowStart,0),e=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(t,e)}},Io=20,bi=class extends le{constructor(t,e,s,i){super(),this._terminal=t,this._coreBrowserService=s,this._renderService=i,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce="";let r=this._coreBrowserService.mainDocument;this._accessibilityContainer=r.createElement("div"),this._accessibilityContainer.classList.add("xterm-accessibility"),this._rowContainer=r.createElement("div"),this._rowContainer.setAttribute("role","list"),this._rowContainer.classList.add("xterm-accessibility-tree"),this._rowElements=[];for(let n=0;n<this._terminal.rows;n++)this._rowElements[n]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[n]);if(this._topBoundaryFocusListener=n=>this._handleBoundaryFocus(n,0),this._bottomBoundaryFocusListener=n=>this._handleBoundaryFocus(n,1),this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=r.createElement("div"),this._liveRegion.classList.add("live-region"),this._liveRegion.setAttribute("aria-live","assertive"),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new gp(this._renderRows.bind(this))),!this._terminal.element)throw new Error("Cannot enable accessibility before Terminal.open");this._terminal.element.insertAdjacentElement("afterbegin",this._accessibilityContainer),this._register(this._terminal.onResize(n=>this._handleResize(n.rows))),this._register(this._terminal.onRender(n=>this._refreshRows(n.start,n.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(n=>this._handleChar(n))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
177
177
  `))),this._register(this._terminal.onA11yTab(n=>this._handleTab(n))),this._register(this._terminal.onKey(n=>this._handleKey(n.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(ne(r,"selectionchange",()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(pe(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(t){for(let e=0;e<t;e++)this._handleChar(" ")}_handleChar(t){this._liveRegionLineCount<Io+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==t&&(this._charsToAnnounce+=t):this._charsToAnnounce+=t,t===`
178
178
  `&&(this._liveRegionLineCount++,this._liveRegionLineCount===Io+1&&(this._liveRegion.textContent+=fr.get())))}_clearLiveRegion(){this._liveRegion.textContent="",this._liveRegionLineCount=0}_handleKey(t){this._clearLiveRegion(),new RegExp("\\p{Control}","u").test(t)||this._charsToConsume.push(t)}_refreshRows(t,e){this._liveRegionDebouncer.refresh(t,e,this._terminal.rows)}_renderRows(t,e){let s=this._terminal.buffer,i=s.lines.length.toString();for(let r=t;r<=e;r++){let n=s.lines.get(s.ydisp+r),a=[],l=n?.translateToString(!0,void 0,void 0,a)||"",h=(s.ydisp+r+1).toString(),c=this._rowElements[r];c&&(l.length===0?(c.textContent=" ",this._rowColumns.set(c,[0,1])):(c.textContent=l,this._rowColumns.set(c,a)),c.setAttribute("aria-posinset",h),c.setAttribute("aria-setsize",i),this._alignRowWidth(c))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce="")}_handleBoundaryFocus(t,e){let s=t.target,i=this._rowElements[e===0?1:this._rowElements.length-2],r=s.getAttribute("aria-posinset"),n=e===0?"1":`${this._terminal.buffer.lines.length}`;if(r===n||t.relatedTarget!==i)return;let a,l;if(e===0?(a=s,l=this._rowElements.pop(),this._rowContainer.removeChild(l)):(a=this._rowElements.shift(),l=s,this._rowContainer.removeChild(a)),a.removeEventListener("focus",this._topBoundaryFocusListener),l.removeEventListener("focus",this._bottomBoundaryFocusListener),e===0){let h=this._createAccessibilityTreeNode();this._rowElements.unshift(h),this._rowContainer.insertAdjacentElement("afterbegin",h)}else{let h=this._createAccessibilityTreeNode();this._rowElements.push(h),this._rowContainer.appendChild(h)}this._rowElements[0].addEventListener("focus",this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._terminal.scrollLines(e===0?-1:1),this._rowElements[e===0?1:this._rowElements.length-2].focus(),t.preventDefault(),t.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let t=this._coreBrowserService.mainDocument.getSelection();if(!t)return;if(t.isCollapsed){this._rowContainer.contains(t.anchorNode)&&this._terminal.clearSelection();return}if(!t.anchorNode||!t.focusNode){console.error("anchorNode and/or focusNode are null");return}let e={node:t.anchorNode,offset:t.anchorOffset},s={node:t.focusNode,offset:t.focusOffset};if((e.node.compareDocumentPosition(s.node)&Node.DOCUMENT_POSITION_PRECEDING||e.node===s.node&&e.offset>s.offset)&&([e,s]=[s,e]),e.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(e={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(e.node))return;let i=this._rowElements.slice(-1)[0];if(s.node.compareDocumentPosition(i)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(s={node:i,offset:i.textContent?.length??0}),!this._rowContainer.contains(s.node))return;let r=({node:l,offset:h})=>{let c=l instanceof Text?l.parentNode:l,d=parseInt(c?.getAttribute("aria-posinset"),10)-1;if(isNaN(d))return console.warn("row is invalid. Race condition?"),null;let u=this._rowColumns.get(c);if(!u)return console.warn("columns is null. Race condition?"),null;let f=h<u.length?u[h]:u.slice(-1)[0]+1;return f>=this._terminal.cols&&(++d,f=0),{row:d,column:f}},n=r(e),a=r(s);if(!(!n||!a)){if(n.row>a.row||n.row===a.row&&n.column>=a.column)throw new Error("invalid range");this._terminal.select(n.column,n.row,(a.row-n.row)*this._terminal.cols-n.column+a.column)}}_handleResize(t){this._rowElements[this._rowElements.length-1].removeEventListener("focus",this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>t;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let t=this._coreBrowserService.mainDocument.createElement("div");return t.setAttribute("role","listitem"),t.tabIndex=-1,this._refreshRowDimensions(t),t}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let t=0;t<this._terminal.rows;t++)this._refreshRowDimensions(this._rowElements[t]),this._alignRowWidth(this._rowElements[t])}}_refreshRowDimensions(t){t.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(t){t.style.transform="";let e=t.getBoundingClientRect().width,s=this._rowColumns.get(t)?.slice(-1)?.[0];if(!s)return;let i=s*this._renderService.dimensions.css.cell.width;t.style.transform=`scaleX(${i/e})`}};bi=ye([X(1,ln),X(2,bt),X(3,St)],bi);var Gr=class extends le{constructor(t,e,s,i,r){super(),this._element=t,this._mouseService=e,this._renderService=s,this._bufferService=i,this._linkProviderService=r,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new V),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new V),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(pe(()=>{Ht(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(ne(this._element,"mouseleave",()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(ne(this._element,"mousemove",this._handleMouseMove.bind(this))),this._register(ne(this._element,"mousedown",this._handleMouseDown.bind(this))),this._register(ne(this._element,"mouseup",this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(t){this._lastMouseEvent=t;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);if(!e)return;this._isMouseOut=!1;let s=t.composedPath();for(let i=0;i<s.length;i++){let r=s[i];if(r.classList.contains("xterm"))break;if(r.classList.contains("xterm-hover"))return}(!this._lastBufferCell||e.x!==this._lastBufferCell.x||e.y!==this._lastBufferCell.y)&&(this._handleHover(e),this._lastBufferCell=e)}_handleHover(t){if(this._activeLine!==t.y||this._wasResized){this._clearCurrentLink(),this._askForLink(t,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,t)||(this._clearCurrentLink(),this._askForLink(t,!0))}_askForLink(t,e){(!this._activeProviderReplies||!e)&&(this._activeProviderReplies?.forEach(i=>{i?.forEach(r=>{r.link.dispose&&r.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=t.y);let s=!1;for(let[i,r]of this._linkProviderService.linkProviders.entries())e?this._activeProviderReplies?.get(i)&&(s=this._checkLinkProviderResult(i,t,s)):r.provideLinks(t.y,n=>{if(this._isMouseOut)return;let a=n?.map(l=>({link:l}));this._activeProviderReplies?.set(i,a),s=this._checkLinkProviderResult(i,t,s),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(t.y,this._activeProviderReplies)})}_removeIntersectingLinks(t,e){let s=new Set;for(let i=0;i<e.size;i++){let r=e.get(i);if(r)for(let n=0;n<r.length;n++){let a=r[n],l=a.link.range.start.y<t?0:a.link.range.start.x,h=a.link.range.end.y>t?this._bufferService.cols:a.link.range.end.x;for(let c=l;c<=h;c++){if(s.has(c)){r.splice(n--,1);break}s.add(c)}}}}_checkLinkProviderResult(t,e,s){if(!this._activeProviderReplies)return s;let i=this._activeProviderReplies.get(t),r=!1;for(let n=0;n<t;n++)(!this._activeProviderReplies.has(n)||this._activeProviderReplies.get(n))&&(r=!0);if(!r&&i){let n=i.find(a=>this._linkAtPosition(a.link,e));n&&(s=!0,this._handleNewLink(n))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!s)for(let n=0;n<this._activeProviderReplies.size;n++){let a=this._activeProviderReplies.get(n)?.find(l=>this._linkAtPosition(l.link,e));if(a){s=!0,this._handleNewLink(a);break}}return s}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(t){if(!this._currentLink)return;let e=this._positionFromMouseEvent(t,this._element,this._mouseService);e&&this._mouseDownLink&&vp(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,e)&&this._currentLink.link.activate(t,this._currentLink.link.text)}_clearCurrentLink(t,e){!this._currentLink||!this._lastMouseEvent||(!t||!e||this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=e)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,Ht(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(t){if(!this._lastMouseEvent)return;let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._linkAtPosition(t.link,e)&&(this._currentLink=t,this._currentLink.state={decorations:{underline:t.link.decorations===void 0?!0:t.link.decorations.underline,pointerCursor:t.link.decorations===void 0?!0:t.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,t.link,this._lastMouseEvent),t.link.decorations={},Object.defineProperties(t.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:s=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==s&&(this._currentLink.state.decorations.pointerCursor=s,this._currentLink.state.isHovered&&this._element.classList.toggle("xterm-cursor-pointer",s))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:s=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==s&&(this._currentLink.state.decorations.underline=s,this._currentLink.state.isHovered&&this._fireUnderlineEvent(t.link,s))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(s=>{if(!this._currentLink)return;let i=s.start===0?0:s.start+1+this._bufferService.buffer.ydisp,r=this._bufferService.buffer.ydisp+1+s.end;if(this._currentLink.link.range.start.y>=i&&this._currentLink.link.range.end.y<=r&&(this._clearCurrentLink(i,r),this._lastMouseEvent)){let n=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);n&&this._askForLink(n,!1)}})))}_linkHover(t,e,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!0),this._currentLink.state.decorations.pointerCursor&&t.classList.add("xterm-cursor-pointer")),e.hover&&e.hover(s,e.text)}_fireUnderlineEvent(t,e){let s=t.range,i=this._bufferService.buffer.ydisp,r=this._createLinkUnderlineEvent(s.start.x-1,s.start.y-i-1,s.end.x,s.end.y-i-1,void 0);(e?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(r)}_linkLeave(t,e,s){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(e,!1),this._currentLink.state.decorations.pointerCursor&&t.classList.remove("xterm-cursor-pointer")),e.leave&&e.leave(s,e.text)}_linkAtPosition(t,e){let s=t.range.start.y*this._bufferService.cols+t.range.start.x,i=t.range.end.y*this._bufferService.cols+t.range.end.x,r=e.y*this._bufferService.cols+e.x;return s<=r&&r<=i}_positionFromMouseEvent(t,e,s){let i=s.getCoords(t,e,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(t,e,s,i,r){return{x1:t,y1:e,x2:s,y2:i,cols:this._bufferService.cols,fg:r}}};Gr=ye([X(1,cn),X(2,St),X(3,Ue),X(4,Ja)],Gr);function vp(t,e){return t.text===e.text&&t.range.start.x===e.range.start.x&&t.range.start.y===e.range.start.y&&t.range.end.x===e.range.end.x&&t.range.end.y===e.range.end.y}var xp=class extends hp{constructor(t={}){super(t),this._linkifier=this._register(new os),this.browser=pl,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new os),this._onCursorMove=this._register(new V),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new V),this.onKey=this._onKey.event,this._onRender=this._register(new V),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new V),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new V),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new V),this.onBell=this._onBell.event,this._onFocus=this._register(new V),this._onBlur=this._register(new V),this._onA11yCharEmitter=this._register(new V),this._onA11yTabEmitter=this._register(new V),this._onWillOpen=this._register(new V),this._setup(),this._decorationService=this._instantiationService.createInstance(mp),this._instantiationService.setService(Ks,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(l_),this._instantiationService.setService(Ja,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(_r)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh(e?.start??0,e?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register(ze.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(ze.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(ze.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(ze.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(pe(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(t){if(this._themeService)for(let e of t){let s,i="";switch(e.index){case 256:s="foreground",i="10";break;case 257:s="background",i="11";break;case 258:s="cursor",i="12";break;default:s="ansi",i="4;"+e.index}switch(e.type){case 0:let r=me.toColorRGB(s==="ansi"?this._themeService.colors.ansi[e.index]:this._themeService.colors[s]);this.coreService.triggerDataEvent(`${O.ESC}]${i};${rp(r)}${ml.ST}`);break;case 1:if(s==="ansi")this._themeService.modifyColors(n=>n.ansi[e.index]=Ne.toColor(...e.color));else{let n=s;this._themeService.modifyColors(a=>a[n]=Ne.toColor(...e.color))}break;case 2:this._themeService.restoreColor(e.index);break}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(t){t?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(bi,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(t){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(O.ESC+"[I"),this.element.classList.add("focus"),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value="",this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent(O.ESC+"[O"),this.element.classList.remove("focus"),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let t=this.buffer.ybase+this.buffer.y,e=this.buffer.lines.get(t);if(!e)return;let s=Math.min(this.buffer.x,this.cols-1),i=this._renderService.dimensions.css.cell.height,r=e.getWidth(s),n=this._renderService.dimensions.css.cell.width*r,a=this.buffer.y*this._renderService.dimensions.css.cell.height,l=s*this._renderService.dimensions.css.cell.width;this.textarea.style.left=l+"px",this.textarea.style.top=a+"px",this.textarea.style.width=n+"px",this.textarea.style.height=i+"px",this.textarea.style.lineHeight=i+"px",this.textarea.style.zIndex="-5"}_initGlobal(){this._bindKeys(),this._register(ne(this.element,"copy",e=>{this.hasSelection()&&wf(e,this._selectionService)}));let t=e=>Cf(e,this.textarea,this.coreService,this.optionsService);this._register(ne(this.textarea,"paste",t)),this._register(ne(this.element,"paste",t)),gl?this._register(ne(this.element,"mousedown",e=>{e.button===2&&Wn(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(ne(this.element,"contextmenu",e=>{Wn(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),gn&&this._register(ne(this.element,"auxclick",e=>{e.button===1&&Ha(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(ne(this.textarea,"keyup",t=>this._keyUp(t),!0)),this._register(ne(this.textarea,"keydown",t=>this._keyDown(t),!0)),this._register(ne(this.textarea,"keypress",t=>this._keyPress(t),!0)),this._register(ne(this.textarea,"compositionstart",()=>this._compositionHelper.compositionstart())),this._register(ne(this.textarea,"compositionupdate",t=>this._compositionHelper.compositionupdate(t))),this._register(ne(this.textarea,"compositionend",()=>this._compositionHelper.compositionend())),this._register(ne(this.textarea,"input",t=>this._inputEvent(t),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(t){if(!t)throw new Error("Terminal requires a parent element.");if(t.isConnected||this._logService.debug("Terminal.open was called on an element that was not attached to the DOM"),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=t.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement("div"),this.element.dir="ltr",this.element.classList.add("terminal"),this.element.classList.add("xterm"),t.appendChild(this.element);let e=this._document.createDocumentFragment();this._viewportElement=this._document.createElement("div"),this._viewportElement.classList.add("xterm-viewport"),e.appendChild(this._viewportElement),this.screenElement=this._document.createElement("div"),this.screenElement.classList.add("xterm-screen"),this._register(ne(this.screenElement,"mousemove",r=>this.updateCursorStyle(r))),this._helperContainer=this._document.createElement("div"),this._helperContainer.classList.add("xterm-helpers"),this.screenElement.appendChild(this._helperContainer),e.appendChild(this.screenElement);let s=this.textarea=this._document.createElement("textarea");this.textarea.classList.add("xterm-helper-textarea"),this.textarea.setAttribute("aria-label",ur.get()),bl||this.textarea.setAttribute("aria-multiline","false"),this.textarea.setAttribute("autocorrect","off"),this.textarea.setAttribute("autocapitalize","off"),this.textarea.setAttribute("spellcheck","false"),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange("disableStdin",()=>s.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(o_,this.textarea,t.ownerDocument.defaultView??window,this._document??typeof window<"u"?window.document:null)),this._instantiationService.setService(bt,this._coreBrowserService),this._register(ne(this.textarea,"focus",r=>this._handleTextAreaFocus(r))),this._register(ne(this.textarea,"blur",()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(Br,this._document,this._helperContainer),this._instantiationService.setService(Mi,this._charSizeService),this._themeService=this._instantiationService.createInstance($r),this._instantiationService.setService(ms,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(gi),this._instantiationService.setService(Xa,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(Or,this.rows,this.screenElement)),this._instantiationService.setService(St,this._renderService),this._register(this._renderService.onRenderedViewportChange(r=>this._onRender.fire(r))),this.onResize(r=>this._renderService.resize(r.cols,r.rows)),this._compositionView=this._document.createElement("div"),this._compositionView.classList.add("composition-view"),this._compositionHelper=this._instantiationService.createInstance(Ar,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(Lr),this._instantiationService.setService(cn,this._mouseService);let i=this._linkifier.value=this._register(this._instantiationService.createInstance(Gr,this.screenElement));this.element.appendChild(e);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(Dr,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(r=>{super.scrollLines(r,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(zr,this.element,this.screenElement,i)),this._instantiationService.setService(Mf,this._selectionService),this._register(this._selectionService.onRequestScrollLines(r=>this.scrollLines(r.amount,r.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(r=>this._renderService.handleSelectionChanged(r.start,r.end,r.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(r=>{this.textarea.value=r,this.textarea.focus(),this.textarea.select()})),this._register(ze.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(Mr,this.screenElement)),this._register(ne(this.element,"mousedown",r=>this._selectionService.handleMouseDown(r))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add("enable-mouse-events")):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(bi,this)),this._register(this.optionsService.onSpecificOptionChange("screenReaderMode",r=>this._handleScreenReaderModeOptionChange(r))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(pi,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange("overviewRuler",r=>{!this._overviewRulerRenderer&&r&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(pi,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(Pr,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let t=this,e=this.element;function s(n){let a=t._mouseService.getMouseReportCoords(n,t.screenElement);if(!a)return!1;let l,h;switch(n.overrideType||n.type){case"mousemove":h=32,n.buttons===void 0?(l=3,n.button!==void 0&&(l=n.button<3?n.button:3)):l=n.buttons&1?0:n.buttons&4?1:n.buttons&2?2:3;break;case"mouseup":h=0,l=n.button<3?n.button:3;break;case"mousedown":h=1,l=n.button<3?n.button:3;break;case"wheel":if(t._customWheelEventHandler&&t._customWheelEventHandler(n)===!1)return!1;let c=n.deltaY;if(c===0||t.coreMouseService.consumeWheelEvent(n,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return!1;h=c<0?0:1,l=4;break;default:return!1}return h===void 0||l===void 0||l>4?!1:t.coreMouseService.triggerMouseEvent({col:a.col,row:a.row,x:a.x,y:a.y,button:l,action:h,ctrl:n.ctrlKey,alt:n.altKey,shift:n.shiftKey})}let i={mouseup:null,wheel:null,mousedrag:null,mousemove:null},r={mouseup:n=>(s(n),n.buttons||(this._document.removeEventListener("mouseup",i.mouseup),i.mousedrag&&this._document.removeEventListener("mousemove",i.mousedrag)),this.cancel(n)),wheel:n=>(s(n),this.cancel(n,!0)),mousedrag:n=>{n.buttons&&s(n)},mousemove:n=>{n.buttons||s(n)}};this._register(this.coreMouseService.onProtocolChange(n=>{n?(this.optionsService.rawOptions.logLevel==="debug"&&this._logService.debug("Binding to mouse events:",this.coreMouseService.explainEvents(n)),this.element.classList.add("enable-mouse-events"),this._selectionService.disable()):(this._logService.debug("Unbinding from mouse events."),this.element.classList.remove("enable-mouse-events"),this._selectionService.enable()),n&8?i.mousemove||(e.addEventListener("mousemove",r.mousemove),i.mousemove=r.mousemove):(e.removeEventListener("mousemove",i.mousemove),i.mousemove=null),n&16?i.wheel||(e.addEventListener("wheel",r.wheel,{passive:!1}),i.wheel=r.wheel):(e.removeEventListener("wheel",i.wheel),i.wheel=null),n&2?i.mouseup||(i.mouseup=r.mouseup):(this._document.removeEventListener("mouseup",i.mouseup),i.mouseup=null),n&4?i.mousedrag||(i.mousedrag=r.mousedrag):(this._document.removeEventListener("mousemove",i.mousedrag),i.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(ne(e,"mousedown",n=>{if(n.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(n)))return s(n),i.mouseup&&this._document.addEventListener("mouseup",i.mouseup),i.mousedrag&&this._document.addEventListener("mousemove",i.mousedrag),this.cancel(n)})),this._register(ne(e,"wheel",n=>{if(!i.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(n)===!1)return!1;if(!this.buffer.hasScrollback){if(n.deltaY===0)return!1;if(t.coreMouseService.consumeWheelEvent(n,t._renderService?.dimensions?.device?.cell?.height,t._coreBrowserService?.dpr)===0)return this.cancel(n,!0);let a=O.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(n.deltaY<0?"A":"B");return this.coreService.triggerDataEvent(a,!0),this.cancel(n,!0)}}},{passive:!1}))}refresh(t,e){this._renderService?.refreshRows(t,e)}updateCursorStyle(t){this._selectionService?.shouldColumnSelect(t)?this.element.classList.add("column-select"):this.element.classList.remove("column-select")}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(t,e){this._viewport?this._viewport.scrollLines(t):super.scrollLines(t,e),this.refresh(0,this.rows-1)}scrollPages(t){this.scrollLines(t*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(t){t&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(t){let e=t-this._bufferService.buffer.ydisp;e!==0&&this.scrollLines(e)}paste(t){Fa(t,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(t){this._customKeyEventHandler=t}attachCustomWheelEventHandler(t){this._customWheelEventHandler=t}registerLinkProvider(t){return this._linkProviderService.registerLinkProvider(t)}registerCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");let e=this._characterJoinerService.register(t);return this.refresh(0,this.rows-1),e}deregisterCharacterJoiner(t){if(!this._characterJoinerService)throw new Error("Terminal must be opened first");this._characterJoinerService.deregister(t)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(t){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+t)}registerDecoration(t){return this._decorationService.registerDecoration(t)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(t,e,s){this._selectionService.setSelection(t,e,s)}getSelection(){return this._selectionService?this._selectionService.selectionText:""}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(t,e){this._selectionService?.selectLines(t,e)}_keyDown(t){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;let e=this.browser.isMac&&this.options.macOptionIsMeta&&t.altKey;if(!e&&!this._compositionHelper.keydown(t))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!e&&(t.key==="Dead"||t.key==="AltGraph")&&(this._unprocessedDeadKey=!0);let s=up(t,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(t),s.type===3||s.type===2){let i=this.rows-1;return this.scrollLines(s.type===2?-i:i),this.cancel(t,!0)}if(s.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,t)||(s.cancel&&this.cancel(t,!0),!s.key)||t.key&&!t.ctrlKey&&!t.altKey&&!t.metaKey&&t.key.length===1&&t.key.charCodeAt(0)>=65&&t.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((s.key===O.ETX||s.key===O.CR)&&(this.textarea.value=""),this._onKey.fire({key:s.key,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(s.key,!0),!this.optionsService.rawOptions.screenReaderMode||t.altKey||t.ctrlKey)return this.cancel(t,!0);this._keyDownHandled=!0}_isThirdLevelShift(t,e){let s=t.isMac&&!this.options.macOptionIsMeta&&e.altKey&&!e.ctrlKey&&!e.metaKey||t.isWindows&&e.altKey&&e.ctrlKey&&!e.metaKey||t.isWindows&&e.getModifierState("AltGraph");return e.type==="keypress"?s:s&&(!e.keyCode||e.keyCode>47)}_keyUp(t){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)&&(bp(t)||this.focus(),this.updateCursorStyle(t),this._keyPressHandled=!1)}_keyPress(t){let e;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(t)===!1)return!1;if(this.cancel(t),t.charCode)e=t.charCode;else if(t.which===null||t.which===void 0)e=t.keyCode;else if(t.which!==0&&t.charCode!==0)e=t.which;else return!1;return!e||(t.altKey||t.ctrlKey||t.metaKey)&&!this._isThirdLevelShift(this.browser,t)?!1:(e=String.fromCharCode(e),this._onKey.fire({key:e,domEvent:t}),this._showCursor(),this.coreService.triggerDataEvent(e,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(t){if(t.data&&t.inputType==="insertText"&&(!t.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let e=t.data;return this.coreService.triggerDataEvent(e,!0),this.cancel(t),!0}return!1}resize(t,e){if(t===this.cols&&e===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(t,e)}_afterResize(t,e){this._charSizeService?.measure()}clear(){if(!(this.buffer.ybase===0&&this.buffer.y===0)){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let t=1;t<this.rows;t++)this.buffer.lines.push(this.buffer.getBlankLine(ke));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let t=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=t,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains("focus")?this.coreService.triggerDataEvent(O.ESC+"[I"):this.coreService.triggerDataEvent(O.ESC+"[O")}_reportWindowsOptions(t){if(this._renderService)switch(t){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),s=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${O.ESC}[4;${s};${e}t`);break;case 1:let i=this._renderService.dimensions.css.cell.width.toFixed(0),r=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${O.ESC}[6;${r};${i}t`);break}}cancel(t,e){if(!(!this.options.cancelEvents&&!e))return t.preventDefault(),t.stopPropagation(),!1}};function bp(t){return t.keyCode===16||t.keyCode===17||t.keyCode===18}var Sp=class{constructor(){this._addons=[]}dispose(){for(let t=this._addons.length-1;t>=0;t--)this._addons[t].instance.dispose()}loadAddon(t,e){let s={instance:e,dispose:e.dispose,isDisposed:!1};this._addons.push(s),e.dispose=()=>this._wrappedAddonDispose(s),e.activate(t)}_wrappedAddonDispose(t){if(t.isDisposed)return;let e=-1;for(let s=0;s<this._addons.length;s++)if(this._addons[s]===t){e=s;break}if(e===-1)throw new Error("Could not dispose an addon that has not been loaded");t.isDisposed=!0,t.dispose.apply(t.instance),this._addons.splice(e,1)}},yp=class{constructor(t){this._line=t}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(t,e){if(!(t<0||t>=this._line.length))return e?(this._line.loadCell(t,e),e):this._line.loadCell(t,new tt)}translateToString(t,e,s){return this._line.translateToString(t,e,s)}},Po=class{constructor(t,e){this._buffer=t,this.type=e}init(t){return this._buffer=t,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(t){let e=this._buffer.lines.get(t);if(e)return new yp(e)}getNullCell(){return new tt}},wp=class extends le{constructor(t){super(),this._core=t,this._onBufferChange=this._register(new V),this.onBufferChange=this._onBufferChange.event,this._normal=new Po(this._core.buffers.normal,"normal"),this._alternate=new Po(this._core.buffers.alt,"alternate"),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw new Error("Active buffer is neither normal nor alternate")}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},Cp=class{constructor(t){this._core=t}registerCsiHandler(t,e){return this._core.registerCsiHandler(t,s=>e(s.toArray()))}addCsiHandler(t,e){return this.registerCsiHandler(t,e)}registerDcsHandler(t,e){return this._core.registerDcsHandler(t,(s,i)=>e(s,i.toArray()))}addDcsHandler(t,e){return this.registerDcsHandler(t,e)}registerEscHandler(t,e){return this._core.registerEscHandler(t,e)}addEscHandler(t,e){return this.registerEscHandler(t,e)}registerOscHandler(t,e){return this._core.registerOscHandler(t,e)}addOscHandler(t,e){return this.registerOscHandler(t,e)}},kp=class{constructor(t){this._core=t}register(t){this._core.unicodeService.register(t)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(t){this._core.unicodeService.activeVersion=t}},Np=["cols","rows"],at=0,jp=class extends le{constructor(t){super(),this._core=this._register(new xp(t)),this._addonManager=this._register(new Sp),this._publicOptions={...this._core.options};let e=i=>this._core.options[i],s=(i,r)=>{this._checkReadonlyOptions(i),this._core.options[i]=r};for(let i in this._core.options){let r={get:e.bind(this,i),set:s.bind(this,i)};Object.defineProperty(this._publicOptions,i,r)}}_checkReadonlyOptions(t){if(Np.includes(t))throw new Error(`Option "${t}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||(this._parser=new Cp(this._core)),this._parser}get unicode(){return this._checkProposedApi(),new kp(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||(this._buffer=this._register(new wp(this._core))),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let t=this._core.coreService.decPrivateModes,e="none";switch(this._core.coreMouseService.activeProtocol){case"X10":e="x10";break;case"VT200":e="vt200";break;case"DRAG":e="drag";break;case"ANY":e="any";break}return{applicationCursorKeysMode:t.applicationCursorKeys,applicationKeypadMode:t.applicationKeypad,bracketedPasteMode:t.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:e,originMode:t.origin,reverseWraparoundMode:t.reverseWraparound,sendFocusMode:t.sendFocus,synchronizedOutputMode:t.synchronizedOutput,wraparoundMode:t.wraparound}}get options(){return this._publicOptions}set options(t){for(let e in t)this._publicOptions[e]=t[e]}blur(){this._core.blur()}focus(){this._core.focus()}input(t,e=!0){this._core.input(t,e)}resize(t,e){this._verifyIntegers(t,e),this._core.resize(t,e)}open(t){this._core.open(t)}attachCustomKeyEventHandler(t){this._core.attachCustomKeyEventHandler(t)}attachCustomWheelEventHandler(t){this._core.attachCustomWheelEventHandler(t)}registerLinkProvider(t){return this._core.registerLinkProvider(t)}registerCharacterJoiner(t){return this._checkProposedApi(),this._core.registerCharacterJoiner(t)}deregisterCharacterJoiner(t){this._checkProposedApi(),this._core.deregisterCharacterJoiner(t)}registerMarker(t=0){return this._verifyIntegers(t),this._core.registerMarker(t)}registerDecoration(t){return this._checkProposedApi(),this._verifyPositiveIntegers(t.x??0,t.width??0,t.height??0),this._core.registerDecoration(t)}hasSelection(){return this._core.hasSelection()}select(t,e,s){this._verifyIntegers(t,e,s),this._core.select(t,e,s)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(t,e){this._verifyIntegers(t,e),this._core.selectLines(t,e)}dispose(){super.dispose()}scrollLines(t){this._verifyIntegers(t),this._core.scrollLines(t)}scrollPages(t){this._verifyIntegers(t),this._core.scrollPages(t)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(t){this._verifyIntegers(t),this._core.scrollToLine(t)}clear(){this._core.clear()}write(t,e){this._core.write(t,e)}writeln(t,e){this._core.write(t),this._core.write(`\r
179
- `,e)}paste(t){this._core.paste(t)}refresh(t,e){this._verifyIntegers(t,e),this._core.refresh(t,e)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(t){this._addonManager.loadAddon(this,t)}static get strings(){return{get promptLabel(){return ur.get()},set promptLabel(t){ur.set(t)},get tooMuchOutput(){return fr.get()},set tooMuchOutput(t){fr.set(t)}}}_verifyIntegers(...t){for(at of t)if(at===1/0||isNaN(at)||at%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...t){for(at of t)if(at&&(at===1/0||isNaN(at)||at%1!==0||at<0))throw new Error("This API only accepts positive integers")}};var Ep=2,Tp=1,Rp=class{activate(t){this._terminal=t}dispose(){}fit(){let t=this.proposeDimensions();if(!t||!this._terminal||isNaN(t.cols)||isNaN(t.rows))return;let e=this._terminal._core;(this._terminal.rows!==t.rows||this._terminal.cols!==t.cols)&&(e._renderService.clear(),this._terminal.resize(t.cols,t.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let t=this._terminal._core._renderService.dimensions;if(t.css.cell.width===0||t.css.cell.height===0)return;let e=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,s=window.getComputedStyle(this._terminal.element.parentElement),i=parseInt(s.getPropertyValue("height")),r=Math.max(0,parseInt(s.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),a={top:parseInt(n.getPropertyValue("padding-top")),bottom:parseInt(n.getPropertyValue("padding-bottom")),right:parseInt(n.getPropertyValue("padding-right")),left:parseInt(n.getPropertyValue("padding-left"))},l=a.top+a.bottom,h=a.right+a.left,c=i-l,d=r-h-e;return{cols:Math.max(Ep,Math.floor(d/t.css.cell.width)),rows:Math.max(Tp,Math.floor(c/t.css.cell.height))}}};function Rl({source:t,onReady:e,onSelectionChange:s,className:i}){const r=B.useRef(null),n=B.useRef(null),a=B.useRef(s);a.current=s;const l=fs(),h=B.useRef(t);return h.current=t,tf((c,d)=>{c===h.current&&n.current?.write(d)}),B.useEffect(()=>{const c=r.current;if(!c)return;const d=getComputedStyle(document.documentElement),u=x=>d.getPropertyValue(x).trim()||void 0,f=new jp({allowTransparency:!1,fontFamily:u("--font-mono")||"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontSize:12.5,lineHeight:1.5,scrollback:5e3,cursorBlink:!1,disableStdin:!0,theme:{background:u("--sidebar")||u("--card")||u("--background")||"#1e1e1e",cursor:"transparent",foreground:u("--foreground")||"#d4d4d4",selectionBackground:u("--accent"),selectionForeground:u("--accent-foreground"),black:u("--muted"),red:u("--destructive"),green:u("--success"),yellow:u("--warning"),blue:u("--chart-1"),magenta:u("--chart-3"),cyan:u("--chart-5"),white:u("--foreground"),brightBlack:u("--muted-foreground"),brightRed:u("--destructive"),brightGreen:u("--success"),brightYellow:u("--warning"),brightBlue:u("--chart-1"),brightMagenta:u("--chart-3"),brightCyan:u("--chart-5"),brightWhite:u("--foreground")}}),m=new Rp;f.loadAddon(m),f.open(c),m.fit();const _=l.getBuffer(t);_&&f.write(_),n.current=f,e?.(f);const p=f.onSelectionChange(()=>{const x=!!f.getSelection();a.current?.(x,()=>f.getSelection())}),g=new ResizeObserver(()=>{m.fit()});return g.observe(c),()=>{p.dispose(),g.disconnect(),n.current=null,f.dispose()}},[]),o.jsx("div",{className:Z("h-full bg-sidebar p-3",i),children:o.jsx("div",{ref:r,className:"h-full"})})}function Cs(t){const e=z.c(24);if(t.kind==="starting-now"){let c;return e[0]!==t.claimPhase||e[1]!==t.progress?(c=o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-6",children:o.jsx(ff,{progress:t.progress,claimPhase:t.claimPhase})}),e[0]=t.claimPhase,e[1]=t.progress,e[2]=c):c=e[2],c}let s,i;e[3]!==t.kind?(s=o.jsx(Dp,{kind:t.kind}),i=o.jsx(Mp,{kind:t.kind}),e[3]=t.kind,e[4]=s,e[5]=i):(s=e[4],i=e[5]);let r;e[6]!==t?(r=o.jsx(Ap,{...t}),e[6]=t,e[7]=r):r=e[7];let n;e[8]!==t.kind||e[9]!==t.progress?(n=t.kind==="errored"&&o.jsx(Ip,{progress:t.progress}),e[8]=t.kind,e[9]=t.progress,e[10]=n):n=e[10];let a;e[11]!==t.drawerOpen||e[12]!==t.kind||e[13]!==t.logSource?(a=t.kind==="errored"&&!t.drawerOpen&&o.jsx(Pp,{source:t.logSource}),e[11]=t.drawerOpen,e[12]=t.kind,e[13]=t.logSource,e[14]=a):a=e[14];let l;e[15]!==t?(l=o.jsx(Bp,{...t}),e[15]=t,e[16]=l):l=e[16];let h;return e[17]!==s||e[18]!==i||e[19]!==r||e[20]!==n||e[21]!==a||e[22]!==l?(h=o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-6",children:o.jsxs("div",{className:"flex w-full max-w-md flex-col items-center gap-4 text-center",children:[s,i,r,n,a,l]})}),e[17]=s,e[18]=i,e[19]=r,e[20]=n,e[21]=a,e[22]=l,e[23]=h):h=e[23],h}function Dp(t){const e=z.c(4),{kind:s}=t;switch(s){case"never-started":{let i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(ea,{className:Z("size-12","text-muted-foreground/60")}),e[0]=i):i=e[0],i}case"errored":{let i;return e[1]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(nr,{className:Z("size-12","text-destructive")}),e[1]=i):i=e[1],i}case"suspended":{let i;return e[2]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(Ec,{className:Z("size-12","text-blue-500")}),e[2]=i):i=e[2],i}case"crashed":{let i;return e[3]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(nr,{className:Z("size-12","text-amber-500")}),e[3]=i):i=e[3],i}}}function Mp(t){const e=z.c(4),{kind:s}=t;let i;e[0]!==s?(i=af(s),e[0]=s,e[1]=i):i=e[1];let r;return e[2]!==i?(r=o.jsx("h3",{className:"text-lg font-medium",children:i}),e[2]=i,e[3]=r):r=e[3],r}function Ap(t){const e=z.c(5);switch(t.kind){case"never-started":{let s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"Start the sandbox to launch your dev environment."}),e[0]=s):s=e[0],s}case"errored":{let s;return e[1]!==t.errorLine?(s=o.jsx("p",{role:"alert",className:"max-w-sm break-words text-sm text-destructive/80",children:t.errorLine}),e[1]=t.errorLine,e[2]=s):s=e[2],s}case"suspended":{let s;return e[3]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"Suspended after 30 min idle to conserve resources. Resume to continue where you left off."}),e[3]=s):s=e[3],s}case"crashed":{let s;return e[4]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"The dev server stopped responding. Open the terminal to inspect the logs and restart it."}),e[4]=s):s=e[4],s}}}function Ip(t){const e=z.c(21),{progress:s}=t;let i;e[0]!==s?(i=Xs(s,"provision"),e[0]=s,e[1]=i):i=e[1];let r;e[2]!==i?(r=o.jsx(ri,{label:"provision",status:i}),e[2]=i,e[3]=r):r=e[3];let n;e[4]!==s?(n=Xs(s,"cloning"),e[4]=s,e[5]=n):n=e[5];let a;e[6]!==n?(a=o.jsx(ri,{label:"cloning",status:n}),e[6]=n,e[7]=a):a=e[7];let l;e[8]!==s?(l=Xs(s,"install"),e[8]=s,e[9]=l):l=e[9];let h;e[10]!==l?(h=o.jsx(ri,{label:"install",status:l}),e[10]=l,e[11]=h):h=e[11];let c;e[12]!==s?(c=Xs(s,"dev"),e[12]=s,e[13]=c):c=e[13];let d;e[14]!==c?(d=o.jsx(ri,{label:"dev",status:c}),e[14]=c,e[15]=d):d=e[15];let u;return e[16]!==r||e[17]!==a||e[18]!==h||e[19]!==d?(u=o.jsx("div",{className:"flex w-full flex-col gap-1 rounded-lg border border-border bg-muted/30 px-4 py-3 text-left",children:o.jsxs("div",{className:"flex items-center justify-between gap-2 text-xs font-medium",children:[r,a,h,d]})}),e[16]=r,e[17]=a,e[18]=h,e[19]=d,e[20]=u):u=e[20],u}function ri(t){const e=z.c(12),{label:s,status:i}=t;let r;e[0]!==i?(r=of(i),e[0]=i,e[1]=r):r=e[1];const n=r,a=i==="done"?"text-emerald-600":i==="failed"?"text-destructive":i==="doing"?"text-amber-500":"text-muted-foreground/60";let l;e[2]!==a?(l=Z("flex items-center gap-1.5",a),e[2]=a,e[3]=l):l=e[3];let h;e[4]!==n?(h=o.jsx("span",{"aria-hidden":!0,children:n}),e[4]=n,e[5]=h):h=e[5];let c;e[6]!==s?(c=o.jsx("span",{children:s}),e[6]=s,e[7]=c):c=e[7];let d;return e[8]!==l||e[9]!==h||e[10]!==c?(d=o.jsxs("span",{className:l,children:[h,c]}),e[8]=l,e[9]=h,e[10]=c,e[11]=d):d=e[11],d}function Pp(t){const e=z.c(2),{source:s}=t;let i;return e[0]!==s?(i=o.jsx("div",{className:"flex w-[min(78%,560px)] flex-col items-stretch gap-1.5",children:o.jsx("div",{className:"h-32 overflow-hidden rounded-md [&_.xterm-viewport::-webkit-scrollbar]:hidden [&_.xterm-viewport]:!overflow-hidden",children:o.jsx(Rl,{source:s,className:"h-full"})})}),e[0]=s,e[1]=i):i=e[1],i}function Bp(t){const e=z.c(12);switch(t.kind){case"never-started":{let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Ft,{className:"size-4"}),e[0]=s):s=e[0];let i;return e[1]!==t.onStart?(i=o.jsxs(se,{onClick:t.onStart,className:"mt-2",children:[s," Start sandbox"]}),e[1]=t.onStart,e[2]=i):i=e[2],i}case"errored":{let s;e[3]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Ps,{className:"size-4"}),e[3]=s):s=e[3];let i;return e[4]!==t.onRetry?(i=o.jsxs(se,{size:"sm",onClick:t.onRetry,className:"mt-2",children:[s," Retry"]}),e[4]=t.onRetry,e[5]=i):i=e[5],i}case"suspended":{let s;e[6]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Ft,{className:"size-4"}),e[6]=s):s=e[6];let i;return e[7]!==t.onResume?(i=o.jsxs(se,{onClick:t.onResume,className:"mt-2",children:[s," Resume"]}),e[7]=t.onResume,e[8]=i):i=e[8],i}case"crashed":{let s;e[9]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(ta,{className:"size-4"}),e[9]=s):s=e[9];let i;return e[10]!==t.onOpenTerminal?(i=o.jsxs(se,{onClick:t.onOpenTerminal,className:"mt-2",children:[s," Open terminal"]}),e[10]=t.onOpenTerminal,e[11]=i):i=e[11],i}}}function Lp(t){if(!t.hasEntry||!t.isRunning||t.startedRuntime===void 0)return!1;const{liveRuntime:e,startedRuntime:s}=t;return(e.selected??null)!==(s.packageManager??null)||(e.port??null)!==(s.port??null)||(e.path??null)!==(s.path??null)}const zt="setup";function Op(t){const e=z.c(35);let s;if(e[0]!==t.scriptTabs||e[1]!==t.scripts){let m;e[3]!==t.scriptTabs?(m=_=>!t.scriptTabs.includes(_),e[3]=t.scriptTabs,e[4]=m):m=e[4],s=t.scripts.filter(m),e[0]=t.scriptTabs,e[1]=t.scripts,e[2]=s}else s=e[2];const i=s;let r;e[5]!==t?(r=()=>{t.active===zt?t.onToggle():t.onSelectTab(zt)},e[5]=t,e[6]=r):r=e[6];const n=r,a=t.active===zt;let l;e[7]!==n||e[8]!==t.open||e[9]!==a?(l=o.jsx(zp,{active:a,open:t.open,onClick:n}),e[7]=n,e[8]=t.open,e[9]=a,e[10]=l):l=e[10];let h;e[11]!==t?(h=t.scriptTabs.map(m=>o.jsx(Fp,{active:t.active===m,onClick:()=>t.onSelectTab(m),onClose:()=>t.onCloseScript(m),children:m},m)),e[11]=t,e[12]=h):h=e[12];let c;e[13]!==i||e[14]!==t.onAddScript?(c=o.jsx(Hp,{scripts:i,onRun:t.onAddScript}),e[13]=i,e[14]=t.onAddScript,e[15]=c):c=e[15];let d;e[16]!==l||e[17]!==h||e[18]!==c?(d=o.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-1 overflow-x-auto",children:[l,h,c]}),e[16]=l,e[17]=h,e[18]=c,e[19]=d):d=e[19];let u;e[20]!==t.onRestart||e[21]!==t.onResume||e[22]!==t.onRetry||e[23]!==t.onRunActiveScript||e[24]!==t.onStart||e[25]!==t.onStop||e[26]!==t.onStopActiveScript||e[27]!==t.scriptIsKilling||e[28]!==t.scriptIsRunning||e[29]!==t.showScriptControls||e[30]!==t.status?(u=t.showScriptControls?o.jsx(Wp,{isRunning:t.scriptIsRunning,isKilling:t.scriptIsKilling,onRun:t.onRunActiveScript,onStop:t.onStopActiveScript}):o.jsx($p,{status:t.status,onStart:t.onStart,onStop:t.onStop,onRestart:t.onRestart,onResume:t.onResume,onRetry:t.onRetry}),e[20]=t.onRestart,e[21]=t.onResume,e[22]=t.onRetry,e[23]=t.onRunActiveScript,e[24]=t.onStart,e[25]=t.onStop,e[26]=t.onStopActiveScript,e[27]=t.scriptIsKilling,e[28]=t.scriptIsRunning,e[29]=t.showScriptControls,e[30]=t.status,e[31]=u):u=e[31];let f;return e[32]!==d||e[33]!==u?(f=o.jsxs("div",{className:"flex h-10 shrink-0 items-center gap-1 border-t border-b border-border bg-muted/60 px-3",children:[d,u]}),e[32]=d,e[33]=u,e[34]=f):f=e[34],f}function zp(t){const e=z.c(8),{active:s,open:i,onClick:r}=t,n=s&&i,a=s&&i,l=s?"border-border bg-background font-medium text-foreground shadow-sm":"border-transparent text-muted-foreground hover:bg-background/50 hover:text-foreground";let h;e[0]!==l?(h=Z("flex h-7 items-center gap-1.5 rounded-md border px-2.5 text-xs",l),e[0]=l,e[1]=h):h=e[1];let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx(ta,{className:"size-3.5"}),e[2]=c):c=e[2];let d;return e[3]!==r||e[4]!==n||e[5]!==a||e[6]!==h?(d=o.jsxs("button",{type:"button","aria-pressed":n,"aria-expanded":a,onClick:r,className:h,children:[c,"sandbox"]}),e[3]=r,e[4]=n,e[5]=a,e[6]=h,e[7]=d):d=e[7],d}function $p(t){const e=z.c(24),{status:s,onStart:i,onStop:r,onRestart:n,onResume:a,onRetry:l}=t;if(s==="idle"&&i){let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Ft,{className:"size-3.5"}),e[0]=h):h=e[0];let c;return e[1]!==i?(c=o.jsxs(se,{variant:"outline",size:"sm",onClick:i,children:[h," Start"]}),e[1]=i,e[2]=c):c=e[2],c}if(s==="suspended"&&a){let h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Ft,{className:"size-3.5"}),e[3]=h):h=e[3];let c;return e[4]!==a?(c=o.jsxs(se,{variant:"outline",size:"sm",onClick:a,children:[h," Resume"]}),e[4]=a,e[5]=c):c=e[5],c}if(s==="errored"&&l){let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Ps,{className:"size-3.5"}),e[6]=h):h=e[6];let c;return e[7]!==l?(c=o.jsxs(se,{variant:"outline",size:"sm",onClick:l,children:[h," Retry"]}),e[7]=l,e[8]=c):c=e[8],c}if(s==="starting"||s==="running"){const h=s==="running"&&!!n,c=h?"rounded-r-none border-r-0":void 0;let d;e[9]!==c?(d=Z(c),e[9]=c,e[10]=d):d=e[10];let u;e[11]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(sa,{className:"size-3.5"}),e[11]=u):u=e[11];let f;e[12]!==r||e[13]!==d?(f=o.jsx(Te,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",onClick:r,className:d,children:[u," Stop"]})}),e[12]=r,e[13]=d,e[14]=f):f=e[14];let m;e[15]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(Re,{children:"Stop sandbox"}),e[15]=m):m=e[15];let _;e[16]!==f?(_=o.jsxs(De,{children:[f,m]}),e[16]=f,e[17]=_):_=e[17];let p;e[18]!==n||e[19]!==h?(p=h&&o.jsxs(ki,{children:[o.jsx(Ni,{asChild:!0,children:o.jsx(se,{variant:"outline",size:"sm",className:"rounded-l-none px-1",children:o.jsx(ja,{className:"size-3"})})}),o.jsx(ji,{align:"end",children:o.jsxs(Lt,{onClick:n,children:[o.jsx(Ps,{className:"size-3.5"})," Restart"]})})]}),e[18]=n,e[19]=h,e[20]=p):p=e[20];let g;return e[21]!==_||e[22]!==p?(g=o.jsxs("div",{className:"flex items-center",children:[_,p]}),e[21]=_,e[22]=p,e[23]=g):g=e[23],g}return null}function Fp(t){const e=z.c(16),{active:s,onClick:i,onClose:r,children:n}=t,a=s?"border-border bg-background shadow-sm":"border-transparent hover:bg-background/50";let l;e[0]!==a?(l=Z("flex h-7 items-center rounded-md border text-xs",a),e[0]=a,e[1]=l):l=e[1];const h=r?"pl-2.5 pr-1":"px-2.5",c=s?"font-medium text-foreground":"text-muted-foreground hover:text-foreground";let d;e[2]!==h||e[3]!==c?(d=Z("flex h-full items-center",h,c),e[2]=h,e[3]=c,e[4]=d):d=e[4];let u;e[5]!==n||e[6]!==i||e[7]!==d?(u=o.jsx("button",{type:"button",onClick:i,className:d,children:n}),e[5]=n,e[6]=i,e[7]=d,e[8]=u):u=e[8];let f;e[9]!==n||e[10]!==r?(f=r&&o.jsx("button",{type:"button","aria-label":`Close ${n}`,onClick:r,className:"pr-1.5 text-muted-foreground hover:text-foreground",children:o.jsx(yh,{className:"size-3"})}),e[9]=n,e[10]=r,e[11]=f):f=e[11];let m;return e[12]!==l||e[13]!==u||e[14]!==f?(m=o.jsxs("div",{className:l,children:[u,f]}),e[12]=l,e[13]=u,e[14]=f,e[15]=m):m=e[15],m}function Hp(t){const e=z.c(10),{scripts:s,onRun:i}=t,[r,n]=B.useState(!1);let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(ls,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"sm","aria-label":"Run script",children:o.jsx(ns,{className:"size-3.5"})})})}),o.jsx(Re,{children:"Run script"})]}),e[0]=a):a=e[0];let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=o.jsx("div",{className:"px-2 py-1 text-[10px] uppercase tracking-wide text-muted-foreground",children:"run a script"}),e[1]=l):l=e[1];let h;e[2]!==i||e[3]!==s?(h=s.length===0?o.jsx("div",{className:"px-2 py-2 text-xs text-muted-foreground",children:"No scripts found"}):s.map(u=>o.jsxs("button",{type:"button",onClick:()=>{n(!1),i(u)},className:"w-full rounded-md px-2 py-1.5 text-left text-xs hover:bg-accent",children:["▸ ",u]},u)),e[2]=i,e[3]=s,e[4]=h):h=e[4];let c;e[5]!==h?(c=o.jsxs(cs,{align:"start",className:"p-1 w-56",children:[l,h]}),e[5]=h,e[6]=c):c=e[6];let d;return e[7]!==r||e[8]!==c?(d=o.jsxs(hs,{open:r,onOpenChange:n,children:[a,c]}),e[7]=r,e[8]=c,e[9]=d):d=e[9],d}function Wp(t){const e=z.c(13),{isRunning:s,isKilling:i,onRun:r,onStop:n}=t;if(i){let d;return e[0]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsxs(se,{variant:"outline",size:"sm",disabled:!0,children:[o.jsx($e,{className:"size-3.5 animate-spin"})," Stopping…"]}),e[0]=d):d=e[0],d}if(!s){let d;e[1]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(Ft,{className:"size-3.5"}),e[1]=d):d=e[1];let u;e[2]!==r?(u=o.jsx(Te,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",onClick:r,children:[d," Run"]})}),e[2]=r,e[3]=u):u=e[3];let f;e[4]===Symbol.for("react.memo_cache_sentinel")?(f=o.jsx(Re,{children:"Start process"}),e[4]=f):f=e[4];let m;return e[5]!==u?(m=o.jsxs(De,{children:[u,f]}),e[5]=u,e[6]=m):m=e[6],m}let a;e[7]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(sa,{className:"size-3.5"}),e[7]=a):a=e[7];let l;e[8]!==n?(l=o.jsx(Te,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",onClick:n,children:[a," Stop"]})}),e[8]=n,e[9]=l):l=e[9];let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Re,{children:"Stop process"}),e[10]=h):h=e[10];let c;return e[11]!==l?(c=o.jsxs(De,{children:[l,h]}),e[11]=l,e[12]=c):c=e[12],c}const Up=["dev","start"];function Kp(t){const e=fs(),[s,i]=B.useState(zt),[r,n]=B.useState([]),[a,l]=B.useState(new Set),h=B.useRef(!1);if(!h.current&&e.scripts.length>0){const v=Up.find(y=>e.scripts.includes(y));v&&(h.current=!0,n(y=>y.includes(v)?y:[...y,v]),i(v))}if(a.size>0){let v=!1;const y=new Set(a);for(const k of a)e.activeProcesses.includes(k)||(y.delete(k),v=!0);v&&l(y)}const c=()=>t.onOpenChange(!t.open),d=v=>{i(v),t.open||t.onOpenChange(!0)},u=v=>{if(!t.virtualMcpId||!t.branch)return Promise.resolve(null);const y=`?virtualMcpId=${encodeURIComponent(t.virtualMcpId)}&branch=${encodeURIComponent(t.branch)}`;return fetch(`/api/${encodeURIComponent(t.orgSlug)}/vm-exec/exec/${encodeURIComponent(v)}${y}`,{method:"POST"})},f=v=>{if(!t.virtualMcpId||!t.branch)return Promise.resolve(null);const y=`?virtualMcpId=${encodeURIComponent(t.virtualMcpId)}&branch=${encodeURIComponent(t.branch)}`;return fetch(`/api/${encodeURIComponent(t.orgSlug)}/vm-exec/kill/${encodeURIComponent(v)}${y}`,{method:"POST"})},m=async v=>{n(y=>y.includes(v)?y:[...y,v]),i(v),t.onOpenChange(!0);try{const y=await u(v);if(y===null)return;if(!y.ok)throw new Error(`Exec failed: ${y.statusText}`)}catch{fe.error("Failed to run "+v)}},_=async v=>{await f(v),n(y=>y.filter(k=>k!==v)),s===v&&i(zt)},p=async()=>{const v=e.activeProcesses.includes(s);try{const y=await u(s);if(y===null)return;if(!y.ok)throw new Error(`Exec failed: ${y.statusText}`)}catch{fe.error((v?"Failed to restart ":"Failed to run ")+s)}},g=async()=>{if(!a.has(s)){l(v=>new Set(v).add(s));try{const v=await f(s);if(v===null){l(y=>{const k=new Set(y);return k.delete(s),k});return}if(!v.ok)throw new Error(`Kill failed: ${v.statusText}`)}catch{l(v=>{const y=new Set(v);return y.delete(s),y}),fe.error("Failed to stop "+s)}}},x=s!==zt&&r.includes(s),b=x&&e.activeProcesses.includes(s),S=x&&a.has(s);return o.jsxs("div",{className:"flex shrink-0 flex-col",style:{height:t.open?"50%":"auto"},children:[o.jsx(Op,{status:t.status,open:t.open,onToggle:c,onStart:t.status==="idle"?t.onStart:void 0,onStop:t.status==="running"||t.status==="starting"?t.onStop:void 0,onRestart:t.status==="running"?t.onRestart:void 0,onResume:t.status==="suspended"?t.onResume:void 0,onRetry:t.status==="errored"?t.onRetry:void 0,scripts:t.scripts,active:s,scriptTabs:r,onSelectTab:d,onAddScript:m,onCloseScript:_,showScriptControls:x,scriptIsRunning:b,scriptIsKilling:S,onRunActiveScript:p,onStopActiveScript:g}),t.open&&o.jsx("div",{className:"flex-1 overflow-hidden",children:o.jsx(Vp,{vmId:t.vmId,active:s,hasData:e.hasData(s),onRunActive:p})})]})}function Vp(t){const e=z.c(10),{vmId:s,active:i,hasData:r,onRunActive:n}=t;if(!s)return null;if(i===zt||r){let d;return e[0]!==i?(d=o.jsx(Rl,{source:i,className:"h-full"},i),e[0]=i,e[1]=d):d=e[1],d}let a;e[2]!==i?(a=o.jsxs("p",{children:['Script "',o.jsx("span",{className:"font-mono text-foreground",children:i}),'" not running']}),e[2]=i,e[3]=a):a=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=o.jsx(Ft,{className:"size-3.5"}),e[4]=l):l=e[4];let h;e[5]!==n?(h=o.jsxs("button",{type:"button",onClick:n,className:"flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground hover:bg-accent",children:[l," Run"]}),e[5]=n,e[6]=h):h=e[6];let c;return e[7]!==a||e[8]!==h?(c=o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 text-sm text-muted-foreground",children:[a,h]}),e[7]=a,e[8]=h,e[9]=c):c=e[9],c}const Dl=t=>`preview-drawer:${t}`;function qp(t){try{const e=localStorage.getItem(Dl(t));return e?!!JSON.parse(e).open:!1}catch{return!1}}function Gp(t,e){try{localStorage.setItem(Dl(t),JSON.stringify({open:e}))}catch{}}function Yp(t,e){return t.kind==="errored"?"errored":t.kind==="suspended"?"suspended":t.kind==="starting-now"||e?"starting":t.kind==="iframe"||t.kind==="no-html"||t.kind==="crashed"?"running":"idle"}const Xp=[{value:"preview",icon:o.jsx(ea,{size:14}),tooltip:"Interactive"},{value:"visual",icon:o.jsx(ra,{size:14}),tooltip:"Visual Editor"}];function Jp(){const t=Fg(),{data:e}=Yr.useSession(),{taskId:s,currentBranch:i,setCurrentTaskBranch:r}=xt(),[n,a]=B.useState("preview"),[l,h]=B.useState(null),c=B.useRef(null),d=e?.user?.id,u=t?.entity?.metadata,f=d&&i?u?.vmMap?.[d]?.[i]:void 0,m=f?.previewUrl??null,_=fs();sf(()=>{const oe=c.current;oe&&(oe.src=oe.src)});const p=_.lifecycle.phase,g=B.useRef({url:"",value:!1});m&&g.current.url!==m&&(g.current={url:m,value:!1}),_.lifecycle.phase==="running"&&(g.current.value=_.lifecycle.htmlSupport);const x=g.current.value,b=p==="running"?"online":p==="crashed"?"offline":"booting",S=_.suspended,v=_.status.state==="paused",y=t?.entity?.id??null,{org:k}=ge(),N=He({connectionId:Vt,orgId:t?.entity?.organization_id??"",orgSlug:k.slug}),j=Da(N),T=j.error?.message??null,I=cd(y??void 0,i??void 0),D=B.useRef(null),M=B.useRef(null),w=_.phase,R=nf({claimPhase:w,lifecycle:_.lifecycle}),E=!!y&&!!i&&ni.isStopped(y,i),C=rf({previewUrl:m,status:b,htmlSupport:x,suspended:S,appPaused:v,vmStartPending:I,lastStartError:T,claimPhase:w,notFound:_.notFound,userStopped:E}),P={selected:u?.runtime?.selected??null,port:u?.runtime?.port??null,path:u?.runtime?.path??null},A=f?.startedWith,$=A?{packageManager:A.packageManager??null,port:A.port??null,path:A.path??null}:void 0,K=C.kind==="iframe"||C.kind==="no-html",q=Lp({liveRuntime:P,startedRuntime:$,hasEntry:!!f,isRunning:K}),F=oe=>{if(!y)return;const ps={virtualMcpId:y};i&&(ps.branch=i),j.mutate(ps,{onSuccess:wt=>{wt?.branch&&!i&&r(wt.branch)},onError:wt=>{console.error(`[preview] ${oe} VM_START failed`,wt)}})},Y=B.useRef(F);Y.current=F,s&&f&&D.current!==s&&(D.current=s);const J=!!s&&!!y&&!!d&&!!i&&!f&&!T&&!E&&!j.isPending&&D.current!==s;B.useEffect(()=>{!J||!s||(D.current=s,Y.current("auto-start"))},[J,s,E]);const G=_.notFound?f?.vmId??null:null;B.useEffect(()=>{!G||!y||T||j.isPending||M.current!==G&&(i&&ni.isStopped(y,i)||(M.current=G,Y.current("self-heal")))},[G,y,T,j.isPending,i]);const H=()=>{D.current=null,M.current=null,j.reset(),Y.current("auto-start")},Q=as(),ie=y??"__no-vmcp__",[L,ee]=B.useState(null),te=B.useRef(null);te.current!==ie&&(te.current=ie,ee(qp(ie)));const W=C.kind==="never-started"?!1:L??!1,U=oe=>{ee(oe),Gp(ie,oe)},re=()=>U(!0),de=async()=>{if(!y)return;const oe=i;if(oe){ni.mark(y,oe);try{await N.callTool({name:"VM_DELETE",arguments:{virtualMcpId:y,branch:oe}})}catch{}Uo(Q)}},ce=async()=>{await de(),Y.current("auto-start")};B.useEffect(()=>{if(!m)return;let oe;try{oe=new URL(m,window.location.href).origin}catch{return}const ps=wt=>{if(wt.origin!==oe||wt.data?.type!=="visual-editor::element-clicked")return;const vn=Hu.safeParse(wt.data.payload);vn.success&&h(vn.data)};return window.addEventListener("message",ps),()=>window.removeEventListener("message",ps)},[m]);const he=()=>{const oe=c.current?.contentWindow;oe&&oe.postMessage({type:"visual-editor::activate",script:Wu},"*")},_e=()=>{const oe=c.current?.contentWindow;oe&&oe.postMessage({type:"visual-editor::deactivate"},"*")},rt=oe=>{a(oe),h(null),oe==="visual"?he():_e()},Xe=()=>{if(!c.current)return;const oe=c.current;oe.src=oe.src},st=()=>{if(!c.current||!m)return;const oe=m.includes("?")?"&":"?";c.current.src=`${m}${oe}_r=${Date.now()}`},yt=()=>{const oe=c.current?.contentWindow?.location?.href??m;oe&&navigator.clipboard.writeText(oe)},Oe=(()=>{if(!m)return"No server running";try{const oe=new URL(m);return`${oe.host}${oe.pathname==="/"?"":oe.pathname}`}catch{return m}})();return o.jsxs("div",{className:"flex flex-col w-full h-full",children:[q&&o.jsxs("div",{className:"flex h-9 shrink-0 items-center justify-between gap-3 border-b border-amber-500/40 bg-amber-500/10 px-4 text-xs",children:[o.jsx("span",{className:"text-amber-700",children:"ⓘ Settings changed — restart to apply"}),o.jsxs(se,{size:"sm",onClick:ce,children:[o.jsx(Ps,{className:"size-3.5"})," Restart now"]})]}),C.kind==="iframe"&&o.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-4 border-b border-border/60 px-3 md:px-4",children:[x&&o.jsx(Sh,{value:n,onValueChange:rt,options:Xp,size:"sm",className:"shrink-0 bg-foreground/[0.045]"}),o.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-0.5",children:[o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:()=>c.current?.contentWindow?.history.back(),children:o.jsx(Ea,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Back"})]}),o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:()=>c.current?.contentWindow?.history.forward(),children:o.jsx(nc,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Forward"})]}),o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:Xe,children:o.jsx(Ps,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Refresh"})]}),o.jsx("div",{className:"flex h-8 min-w-0 flex-1 items-center rounded-md bg-background px-2 transition-colors duration-200 hover:bg-accent",children:o.jsx("span",{className:"min-w-0 flex-1 truncate text-[12px] text-foreground/88",children:Oe})})]}),o.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:()=>window.open(C.previewUrl,"_blank","noopener"),children:o.jsx(us,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Open in new tab"})]}),o.jsxs(ki,{children:[o.jsx(Ni,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",children:o.jsx(ia,{size:14})})}),o.jsxs(ji,{align:"end",children:[o.jsx(Lt,{onClick:st,children:"Hard Reload"}),o.jsx(Lt,{onClick:yt,children:"Copy Current URL"})]})]})]})]}),o.jsxs("div",{className:"flex-1 relative overflow-hidden",children:[C.kind==="never-started"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"never-started",onStart:()=>{U(!1),F("auto-start")}})}),C.kind==="starting-now"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"starting-now",progress:R,claimPhase:w})}),C.kind==="errored"&&o.jsx("div",{className:"absolute inset-0 z-40",children:o.jsx(Cs,{kind:"errored",progress:R,logSource:"setup",errorLine:C.error.split(`
180
- `)[0]??"Failed to start",onRetry:H,drawerOpen:W})}),C.kind==="suspended"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"suspended",onResume:H})}),C.kind==="crashed"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"crashed",onOpenTerminal:re})}),C.kind==="no-html"&&o.jsxs("div",{className:"absolute inset-0 z-30 flex flex-col items-center justify-center gap-4 bg-background",children:[o.jsx(En,{size:48,className:"text-muted-foreground/40"}),o.jsx("h3",{className:"text-lg font-medium",children:"No web page at this URL"}),o.jsx("p",{className:"text-sm text-muted-foreground text-center max-w-sm",children:"The server is running, but doesn't serve a web page at /. This preview only renders web pages."}),o.jsxs(se,{onClick:re,children:[o.jsx(En,{size:14}),"View Logs"]})]}),n==="visual"&&!l&&o.jsxs("div",{className:"absolute top-2 left-1/2 -translate-x-1/2 z-20 flex items-center gap-1.5 rounded-full border border-violet-400/40 bg-violet-500/90 px-3 py-1 text-xs font-medium text-white shadow-md backdrop-blur-sm pointer-events-none select-none",children:[o.jsx(ra,{size:12}),"Click any element to ask the AI"]}),n==="visual"&&l&&o.jsx(Vu,{element:l,onDismiss:()=>h(null)}),C.kind==="iframe"&&o.jsx("iframe",{ref:c,src:C.previewUrl,className:"w-full h-full border-0",title:"Dev Server Preview",onLoad:()=>{be("vm_preview_loaded",{view_mode:n,vm_id:f?.vmId??null}),n==="visual"&&he()}},C.previewUrl)]}),o.jsx(Kp,{vmId:f?.vmId??null,orgSlug:k.slug,virtualMcpId:y,branch:i,status:Yp(C,I),scripts:_.scripts,open:W,onOpenChange:U,onStart:()=>F("auto-start"),onStop:de,onRestart:ce,onResume:H,onRetry:H},f?.vmId??"no-vm")]})}function Zp(t){const e=z.c(2),{virtualMcpId:s}=t,i=vt(s);if(!(i?$t(i):null)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[o.jsx(Jr,{size:24,className:"text-muted-foreground/60"}),o.jsx("div",{children:"No repository connected."}),o.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Connections tab to enable Preview."})]}),e[0]=a):a=e[0],a}let n;return e[1]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx(Jp,{}),e[1]=n):n=e[1],n}function As(t){const e=t.trim().split(/\s+/);return e.length!==5?!1:e.every(s=>/^[\d*/,-]+$/.test(s))}function Qp(t){if(!t)return"Unknown schedule";const e=t.trim();if(e==="* * * * *")return"Every minute";if(e==="0 * * * *")return"Every hour";if(e==="0 0 * * *")return"Every day";if(e==="0 0 * * 1")return"Every week";const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return`Every ${s[1]} minutes`;const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return`Every ${i[1]} hours`;const r=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(r){const l=parseInt(r[1]??"1");return l%7===0?`Every ${l/7} weeks`:`Every ${l} days`}const n=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+\*$/);if(n){const l=(n[2]??"0").padStart(2,"0"),h=(n[1]??"0").padStart(2,"0");return`Every day at ${l}:${h} UTC`}const a=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+(\d)$/);if(a){const h=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][parseInt(a[3]??"0")]??"day",c=(a[2]??"0").padStart(2,"0"),d=(a[1]??"0").padStart(2,"0");return`Every ${h} at ${c}:${d} UTC`}return t}function eg(t,e){const s=Math.max(1,t);switch(e){case"minutes":return s===1?"* * * * *":`*/${s} * * * *`;case"hours":return s===1?"0 * * * *":`0 */${s} * * *`;case"days":return s===1?"0 0 * * *":`0 0 */${s} * *`;case"weeks":return s===1?"0 0 * * 1":`0 0 */${s*7} * *`}}function tg(t){const e=t.trim();if(e==="* * * * *")return{count:1,unit:"minutes"};if(e==="0 * * * *")return{count:1,unit:"hours"};if(e==="0 0 * * *")return{count:1,unit:"days"};if(e==="0 0 * * 1")return{count:1,unit:"weeks"};const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return{count:parseInt(s[1]),unit:"minutes"};const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return{count:parseInt(i[1]),unit:"hours"};const r=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(r){const n=parseInt(r[1]);return n%7===0?{count:n/7,unit:"weeks"}:{count:n,unit:"days"}}return null}function sg(t,e){return e===1?{minutes:"minute",hours:"hour",days:"day",weeks:"week"}[t]??t:t}const ig=[{label:"Minute",cron:"* * * * *"},{label:"Hour",cron:"0 * * * *"},{label:"Day",cron:"0 0 * * *"},{label:"Week",cron:"0 0 * * 1"}];function rg(t){const e=z.c(33),{automationId:s,open:i,onOpenChange:r,onCustomSelect:n,onEventSelect:a}=t,{triggerAdd:l}=Hs(),[h,c]=B.useState(!1),d=i??h;let u;e[0]!==r?(u=D=>{r?r(D):c(D)},e[0]=r,e[1]=u):u=e[1];const f=u;let m;e[2]!==l||e[3]!==s||e[4]!==f?(m=async D=>{try{await l.mutateAsync({automation_id:s,type:"cron",cron_expression:D}),fe.success("Starter added"),f(!1)}catch(M){const w=M,R=w instanceof Error?w.message:"Failed to add starter";fe.error(R)}},e[2]=l,e[3]=s,e[4]=f,e[5]=m):m=e[5];const _=m;let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=o.jsx(Ni,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",children:[o.jsx(ns,{size:14}),"Add Starter"]})}),e[6]=p):p=e[6];let g;e[7]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsxs(vh,{className:"gap-2.5",children:[o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),"Every..."]}),e[7]=g):g=e[7];let x;e[8]!==l||e[9]!==_?(x=ig.map(D=>o.jsxs(Lt,{className:"gap-2.5",onSelect:()=>_(D.cron),disabled:l.isPending,children:[o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),"Every ",D.label]},D.cron)),e[8]=l,e[9]=_,e[10]=x):x=e[10];let b;e[11]!==x?(b=o.jsxs(xh,{children:[g,o.jsx(bh,{className:"w-[160px]",children:x})]}),e[11]=x,e[12]=b):b=e[12];let S;e[13]!==f||e[14]!==n?(S=()=>{f(!1),n?.()},e[13]=f,e[14]=n,e[15]=S):S=e[15];let v;e[16]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),e[16]=v):v=e[16];let y;e[17]!==S?(y=o.jsxs(Lt,{className:"gap-2.5",onSelect:S,children:[v,"Custom (cron)"]}),e[17]=S,e[18]=y):y=e[18];let k;e[19]!==f||e[20]!==a?(k=()=>{f(!1),a?.()},e[19]=f,e[20]=a,e[21]=k):k=e[21];let N;e[22]===Symbol.for("react.memo_cache_sentinel")?(N=o.jsx(Bs,{size:14,className:"text-muted-foreground shrink-0"}),e[22]=N):N=e[22];let j;e[23]!==k?(j=o.jsxs(Lt,{className:"gap-2.5",onSelect:k,children:[N,"Event"]}),e[23]=k,e[24]=j):j=e[24];let T;e[25]!==j||e[26]!==b||e[27]!==y?(T=o.jsxs(ji,{align:"end",className:"w-[200px]",children:[b,y,j]}),e[25]=j,e[26]=b,e[27]=y,e[28]=T):T=e[28];let I;return e[29]!==f||e[30]!==d||e[31]!==T?(I=o.jsxs(ki,{open:d,onOpenChange:f,children:[p,T]}),e[29]=f,e[30]=d,e[31]=T,e[32]=I):I=e[32],I}function ng(t){const e=z.c(60),{trigger:s,automationId:i,connectionName:r}=t,{triggerAdd:n,triggerRemove:a}=Hs(),[l,h]=B.useState(!1);let c;e[0]!==s.cron_expression?(c=s.cron_expression?tg(s.cron_expression):null,e[0]=s.cron_expression,e[1]=c):c=e[1];const d=c,[u,f]=B.useState(d?.count??1),[m,_]=B.useState(!1),[p,g]=B.useState(s.cron_expression??""),x=a.isPending||n.isPending,b=s.type==="cron";let S;e[2]!==i||e[3]!==a||e[4]!==s.id?(S=async()=>{try{await a.mutateAsync({trigger_id:s.id,automation_id:i}),fe.success("Starter removed")}catch{fe.error("Failed to remove starter")}h(!1)},e[2]=i,e[3]=a,e[4]=s.id,e[5]=S):S=e[5];const v=S;let y;e[6]!==n||e[7]!==i||e[8]!==p||e[9]!==a||e[10]!==s.cron_expression||e[11]!==s.id?(y=async()=>{const q=p.trim();if(!q||!As(q)||q===s.cron_expression){_(!1),g(s.cron_expression??"");return}try{await n.mutateAsync({automation_id:i,type:"cron",cron_expression:q}),await a.mutateAsync({trigger_id:s.id,automation_id:i}),_(!1)}catch{fe.error("Failed to update starter"),g(s.cron_expression??""),_(!1)}},e[6]=n,e[7]=i,e[8]=p,e[9]=a,e[10]=s.cron_expression,e[11]=s.id,e[12]=y):y=e[12];const k=y;let N;e[13]!==n||e[14]!==i||e[15]!==d||e[16]!==a||e[17]!==s.cron_expression||e[18]!==s.id?(N=async q=>{if(!d)return;const F=Math.max(1,q),Y=eg(F,d.unit);if(Y!==s.cron_expression)try{await n.mutateAsync({automation_id:i,type:"cron",cron_expression:Y}),await a.mutateAsync({trigger_id:s.id,automation_id:i})}catch{fe.error("Failed to update starter"),f(d.count)}},e[13]=n,e[14]=i,e[15]=d,e[16]=a,e[17]=s.cron_expression,e[18]=s.id,e[19]=N):N=e[19];const j=N;let T;e[20]!==b?(T=b?o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}):o.jsx(Bs,{size:14,className:"text-muted-foreground shrink-0"}),e[20]=b,e[21]=T):T=e[21];let I;e[22]!==r||e[23]!==u||e[24]!==p||e[25]!==j||e[26]!==k||e[27]!==d||e[28]!==b||e[29]!==m||e[30]!==x||e[31]!==s.cron_expression||e[32]!==s.event_type||e[33]!==s.params?(I=d&&b?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-sm text-muted-foreground",children:"Every"}),o.jsx("input",{type:"number",min:1,value:u,onChange:q=>f(parseInt(q.target.value)||1),onBlur:()=>j(u),onKeyDown:q=>{q.key==="Enter"&&q.target.blur(),q.key==="Escape"&&f(d.count)},disabled:x,className:"w-12 text-center text-sm h-7 border border-border rounded-md bg-background px-1 focus:outline-none focus:ring-1 focus:ring-ring"}),o.jsx("span",{className:"text-sm",children:sg(d.unit,u)})]}):b&&m?o.jsxs(o.Fragment,{children:[o.jsx("input",{type:"text",value:p,onChange:q=>g(q.target.value),onBlur:k,onKeyDown:q=>{q.key==="Enter"&&q.target.blur(),q.key==="Escape"&&(_(!1),g(s.cron_expression??""))},className:"flex-1 text-sm font-mono bg-transparent outline-none",autoFocus:!0}),p&&!As(p)&&o.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"})]}):o.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[o.jsx("span",{className:"text-sm font-mono text-xs text-muted-foreground truncate",children:b?Qp(s.cron_expression??""):`${s.event_type}${r?` · ${r}`:""}`}),!b&&s.params&&Object.keys(s.params).length>0&&o.jsx("span",{className:"text-xs text-muted-foreground/60 truncate",children:Object.entries(s.params).map(og).join(", ")})]}),e[22]=r,e[23]=u,e[24]=p,e[25]=j,e[26]=k,e[27]=d,e[28]=b,e[29]=m,e[30]=x,e[31]=s.cron_expression,e[32]=s.event_type,e[33]=s.params,e[34]=I):I=e[34];let D;e[35]!==x?(D=x&&o.jsx($e,{size:13,className:"animate-spin text-muted-foreground"}),e[35]=x,e[36]=D):D=e[36];let M;e[37]!==d||e[38]!==b||e[39]!==m||e[40]!==s.cron_expression?(M=b&&!d&&!m&&o.jsx(se,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>{g(s.cron_expression??""),_(!0)},children:o.jsx(oh,{size:13,className:"text-muted-foreground"})}),e[37]=d,e[38]=b,e[39]=m,e[40]=s.cron_expression,e[41]=M):M=e[41];let w;e[42]===Symbol.for("react.memo_cache_sentinel")?(w=o.jsx(se,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>h(!0),children:o.jsx(rs,{size:13,className:"text-muted-foreground"})}),e[42]=w):w=e[42];let R;e[43]!==D||e[44]!==M?(R=o.jsxs("div",{className:"ml-auto flex items-center gap-1",children:[D,M,w]}),e[43]=D,e[44]=M,e[45]=R):R=e[45];let E;e[46]!==R||e[47]!==T||e[48]!==I?(E=o.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[T,I,R]}),e[46]=R,e[47]=T,e[48]=I,e[49]=E):E=e[49];let C;e[50]===Symbol.for("react.memo_cache_sentinel")?(C=o.jsxs(_a,{children:[o.jsx(pa,{children:"Remove Starter"}),o.jsx(ga,{children:"Are you sure you want to remove this starter?"})]}),e[50]=C):C=e[50];let P;e[51]===Symbol.for("react.memo_cache_sentinel")?(P=o.jsx(xa,{children:"Cancel"}),e[51]=P):P=e[51];let A;e[52]!==v?(A=o.jsxs(ma,{children:[C,o.jsxs(va,{children:[P,o.jsx(ba,{onClick:v,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),e[52]=v,e[53]=A):A=e[53];let $;e[54]!==l||e[55]!==A?($=o.jsx(fa,{open:l,onOpenChange:h,children:A}),e[54]=l,e[55]=A,e[56]=$):$=e[56];let K;return e[57]!==E||e[58]!==$?(K=o.jsxs(o.Fragment,{children:[E,$]}),e[57]=E,e[58]=$,e[59]=K):K=e[59],K}function og(t){const[e,s]=t;return`${e}: ${s}`}function ag(t,e){switch(e.type){case"accumulate":{const s=t??{start:e.now,fields:new Set,saveCount:0},i=new Set(s.fields);for(const r of e.fields)i.add(r);return{...s,fields:i,saveCount:s.saveCount+1}}case"reset":return null}}function lg(t){const e=z.c(55),{automationId:s,onDone:i}=t;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r={binding:"TRIGGER"},e[0]=r):r=e[0];const n=wi(r),[a,l]=B.useState(),[h,c]=B.useState();let d;e[1]===Symbol.for("react.memo_cache_sentinel")?(d={},e[1]=d):d=e[1];const[u,f]=B.useState(d),{triggerAdd:m}=Hs(),{data:_,isLoading:p}=wh(a);let g,x,b,S,v,y;if(e[2]!==m||e[3]!==s||e[4]!==a||e[5]!==h||e[6]!==p||e[7]!==i||e[8]!==u||e[9]!==n||e[10]!==_){const j=_?.find(A=>A.type===h);let T;e[17]!==m||e[18]!==s||e[19]!==a||e[20]!==h||e[21]!==i||e[22]!==u?(T=async()=>{if(!(!a||!h))try{await m.mutateAsync({automation_id:s,type:"event",event_type:h,connection_id:a,params:u}),be("automation_trigger_added",{automation_id:s,trigger_type:"event",connection_id:a,event_type:h}),fe.success("Event trigger added"),i()}catch{fe.error("Failed to add event trigger")}},e[17]=m,e[18]=s,e[19]=a,e[20]=h,e[21]=i,e[22]=u,e[23]=T):T=e[23],g=T,x="flex flex-col gap-3 px-3 py-3 rounded-lg border border-border bg-background";let I,D;e[24]===Symbol.for("react.memo_cache_sentinel")?(D=o.jsx(Bs,{size:14,className:"text-muted-foreground shrink-0"}),I=o.jsx("span",{className:"text-sm font-medium",children:"Event trigger"}),e[24]=I,e[25]=D):(I=e[24],D=e[25]);let M;e[26]===Symbol.for("react.memo_cache_sentinel")?(M=o.jsx(rs,{size:13}),e[26]=M):M=e[26],e[27]!==i?(b=o.jsxs("div",{className:"flex items-center gap-2",children:[D,I,o.jsx("button",{type:"button",className:"ml-auto shrink-0 p-0.5 rounded text-muted-foreground hover:text-foreground",onClick:i,children:M})]}),e[27]=i,e[28]=b):b=e[28];const w=a??"";let R;e[29]===Symbol.for("react.memo_cache_sentinel")?(R=A=>{l(A),c(void 0),f({})},e[29]=R):R=e[29];let E;e[30]===Symbol.for("react.memo_cache_sentinel")?(E=o.jsx(ts,{className:"w-full",children:o.jsx(ss,{placeholder:"Select connection..."})}),e[30]=E):E=e[30];let C;e[31]!==n?(C=n.length===0?o.jsx("div",{className:"px-2 py-3 text-center text-xs text-muted-foreground",children:"No connections with trigger support"}):n.map(dg),e[31]=n,e[32]=C):C=e[32];let P;e[33]!==C?(P=o.jsx(is,{children:C}),e[33]=C,e[34]=P):P=e[34],e[35]!==w||e[36]!==P?(S=o.jsxs(es,{value:w,onValueChange:R,children:[E,P]}),e[35]=w,e[36]=P,e[37]=S):S=e[37],e[38]!==a||e[39]!==h||e[40]!==p||e[41]!==_?(v=a&&o.jsxs(es,{value:h??"",onValueChange:A=>{c(A),f({})},children:[o.jsx(ts,{className:"w-full",children:p?o.jsxs("span",{className:"flex items-center gap-2 text-muted-foreground",children:[o.jsx($e,{size:13,className:"animate-spin"}),"Loading events..."]}):o.jsx(ss,{placeholder:"Select event type...",children:h??"Select event type..."})}),o.jsx(is,{children:_?.map(hg)})]}),e[38]=a,e[39]=h,e[40]=p,e[41]=_,e[42]=v):v=e[42],y=j?.paramsSchema&&Object.keys(j.paramsSchema).length>0&&o.jsx("div",{className:"flex flex-col gap-2",children:Object.entries(j.paramsSchema).map(A=>{const[$,K]=A;return o.jsxs("div",{className:"flex flex-col gap-1",children:[o.jsxs("label",{className:"text-xs text-muted-foreground",children:[$,K.description&&o.jsxs("span",{className:"text-muted-foreground/60",children:[" ","— ",K.description]})]}),K.enum?o.jsxs(es,{value:u[$]??"",onValueChange:q=>f(F=>({...F,[$]:q})),children:[o.jsx(ts,{className:"w-full",children:o.jsx(ss,{placeholder:`Select ${$}...`})}),o.jsx(is,{children:K.enum.map(cg)})]}):o.jsx("input",{type:"text",value:u[$]??"",onChange:q=>f(F=>({...F,[$]:q.target.value})),placeholder:K.description??$,className:"text-sm border border-border rounded-md bg-background px-2 py-1.5 focus:outline-none focus:ring-1 focus:ring-ring"})]},$)})}),e[2]=m,e[3]=s,e[4]=a,e[5]=h,e[6]=p,e[7]=i,e[8]=u,e[9]=n,e[10]=_,e[11]=g,e[12]=x,e[13]=b,e[14]=S,e[15]=v,e[16]=y}else g=e[11],x=e[12],b=e[13],S=e[14],v=e[15],y=e[16];let k;e[43]!==m||e[44]!==a||e[45]!==h||e[46]!==g?(k=a&&h&&o.jsx(se,{size:"sm",onClick:g,disabled:m.isPending,children:m.isPending?o.jsx($e,{size:13,className:"animate-spin"}):"Add trigger"}),e[43]=m,e[44]=a,e[45]=h,e[46]=g,e[47]=k):k=e[47];let N;return e[48]!==x||e[49]!==b||e[50]!==S||e[51]!==v||e[52]!==y||e[53]!==k?(N=o.jsxs("div",{className:x,children:[b,S,v,y,k]}),e[48]=x,e[49]=b,e[50]=S,e[51]=v,e[52]=y,e[53]=k,e[54]=N):N=e[54],N}function cg(t){return o.jsx(Dt,{value:t,children:t},t)}function hg(t){return o.jsx(Dt,{value:t.type,children:o.jsxs("div",{className:"flex flex-col",children:[o.jsx("span",{children:t.type}),o.jsx("span",{className:"text-xs text-muted-foreground",children:t.description})]})},t.type)}function dg(t){return o.jsx(Dt,{value:t.id,children:t.title},t.id)}function ug({automationId:t,automation:e,onBack:s,onDelete:i}){const r=e.virtual_mcp_id,{org:n}=ge(),{update:a,triggerAdd:l}=Hs(),h=wi(),c=new Map(h.map(W=>[W.id,W.title])),{createTaskWithMessage:d}=xt(),{setSimpleModeTier:u}=Xr(),{setChatOpen:f}=sn(),{sendMessage:m}=Fs(),_=ca(),[p,g]=Fl(),x=e.messages?.[0]?.metadata?.tiptapDoc??void 0,[b,S]=B.useState(x),[v,y]=B.useState(!1),[k,N]=B.useState(!1),[j,T]=B.useState(""),[I,D]=B.useState(!1),[M,w]=B.useState(!1),[R,E]=B.useState(!1),[C,P]=B.useState(!1),A=async()=>{if(M)return;const U=bn(b).filter(re=>re.type==="text").map(re=>re.text).join(`
181
- `);if(U.trim()){w(!0);try{L(),be("automation_improve_clicked",{automation_id:t,agent_id:r,instructions_length:U.length}),await _(["studio-automation-manager"]),f(!0),await m({tiptapDoc:Aa({managerAgentId:Xo.AUTOMATION_MANAGER(n.id),managerName:"Automation Manager",kind:"automation",id:t,instructions:U})})}finally{w(!1)}}},$=e.models?.tier??"smart",K=Vo({defaultValues:{name:e.name,active:e.active,tier:$}}),q=K.watch("active"),[F,Y]=B.useReducer(ag,null),J=()=>{F!==null&&(be("automation_updated",{automation_id:t,agent_id:r,fields:Array.from(F.fields),save_count:F.saveCount,edit_duration_ms:Date.now()-F.start}),Y({type:"reset"}))},G=async()=>{const W=K.control._formState.dirtyFields,U=Object.keys(W);if(U.length===0&&!C)return!0;const re=K.getValues(),de=K.control._defaultValues;K.reset(re,{keepValues:!0});const ce=C;P(!1);const he={id:t,name:re.name,active:re.active,models:{tier:re.tier},messages:Ql(b),temperature:0};try{await a.mutateAsync(he)}catch{return K.reset(de,{keepValues:!0}),ce&&P(!0),!1}const _e=[...U];return ce&&_e.push("messages"),Y({type:"accumulate",now:Date.now(),fields:_e}),ie(),!0},{schedule:H,flush:Q}=mi({save:G}),{schedule:ie,flush:L}=mi({delayMs:3e4,save:async()=>J()});B.useEffect(()=>{const W=K.watch(()=>H());return()=>W.unsubscribe()},[]);const ee=W=>{if(S(W),!R){E(!0);return}P(!0),H()},te=async()=>{be("automation_test_clicked",{automation_id:t,agent_id:r});const W=await Q();if(L(),!W)return;if(!b){fe.error("No instructions configured for this automation");return}u(K.getValues("tier")),f(!0),g({...p,toolApprovalLevel:"auto"});const U=bn(b);d({message:{tiptapDoc:b,parts:U},virtualMcpId:r||void 0})};return o.jsxs(o.Fragment,{children:[s&&o.jsx("div",{className:"flex items-center pb-4 shrink-0",children:o.jsxs(se,{variant:"ghost",size:"sm",onClick:s,children:[o.jsx(Ea,{size:14}),"Back to list"]})}),o.jsxs("div",{className:"flex flex-col gap-8",children:[o.jsxs("div",{className:"flex flex-col gap-1.5",children:[o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsx(ht,{control:K.control,name:"name",render:({field:W})=>o.jsx(qt,{...W,placeholder:"Automation name",className:"border border-transparent shadow-none px-0 text-lg font-medium h-auto focus-visible:ring-0 focus-visible:border-border bg-transparent flex-1",style:{boxShadow:"none"}})}),i&&o.jsx(se,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive shrink-0",onClick:i,children:o.jsx(hr,{size:14})})]}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(ht,{control:K.control,name:"active",render:({field:W})=>o.jsx(cr,{checked:W.value,onCheckedChange:U=>{W.onChange(U),Q()},className:"cursor-pointer"})}),o.jsx("span",{className:"text-sm text-muted-foreground",children:q?"Active":"Inactive"}),o.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),o.jsx(ha,{id:e.created_by,size:"2xs",className:"text-sm text-muted-foreground"})]})]}),o.jsxs("div",{className:"flex flex-col gap-2.5",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Starter"}),o.jsx(rg,{automationId:t,open:v,onOpenChange:y,onCustomSelect:()=>{N(!0),D(!1),T("")},onEventSelect:()=>{D(!0),N(!1)}})]}),e.triggers.length===0&&!k?o.jsx("div",{className:"rounded-lg border border-dashed border-border px-4 py-6 text-center",children:o.jsxs("p",{className:"text-sm text-muted-foreground",children:["When should this automation run?"," ",o.jsx("button",{type:"button",className:"text-foreground underline underline-offset-2 cursor-pointer hover:text-foreground/80 transition-colors",onClick:()=>y(!0),children:"Add a starter"})," ","to get going."]})}):o.jsx("div",{className:"flex flex-col gap-2",children:e.triggers.map(W=>o.jsx(ng,{trigger:W,automationId:t,connectionName:W.connection_id?c.get(W.connection_id):void 0},W.id))}),k&&o.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),o.jsx("input",{type:"text",value:j,onChange:W=>T(W.target.value),onBlur:async()=>{const W=j.trim();if(!(!W||!As(W)))try{await l.mutateAsync({automation_id:t,type:"cron",cron_expression:W}),be("automation_trigger_added",{automation_id:t,trigger_type:"cron"}),fe.success("Starter added"),N(!1),T("")}catch{fe.error("Failed to add starter")}},onKeyDown:async W=>{const U=j.trim();W.key==="Enter"&&U&&As(U)&&W.target.blur(),W.key==="Escape"&&(N(!1),T(""))},placeholder:"0 9 * * 1-5",className:"flex-1 text-sm font-mono bg-transparent outline-none placeholder:text-muted-foreground/40",autoFocus:!0}),j&&!As(j)&&o.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"}),l.isPending&&o.jsx($e,{size:13,className:"animate-spin text-muted-foreground shrink-0"}),o.jsx("button",{type:"button",className:"shrink-0 p-0.5 rounded text-muted-foreground opacity-0 group-hover:opacity-100 hover:text-foreground transition-opacity",onClick:()=>{N(!1),T("")},children:o.jsx(rs,{size:13})})]}),I&&o.jsx(B.Suspense,{fallback:o.jsxs("div",{className:"flex items-center gap-2 px-3 py-3 rounded-lg border border-border bg-background",children:[o.jsx($e,{size:13,className:"animate-spin text-muted-foreground"}),o.jsx("span",{className:"text-sm text-muted-foreground",children:"Loading connections..."})]}),children:o.jsx(lg,{automationId:t,onDone:()=>D(!1)})})]}),o.jsxs("div",{className:"flex flex-col gap-2.5",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Instructions"}),o.jsxs(se,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:M||!b,onClick:A,children:[o.jsx(Ca,{size:13}),"Improve"]})]}),o.jsx(Gl,{tiptapDoc:b,setTiptapDoc:ee,placeholder:"What should this automation do?",children:o.jsxs("div",{className:"rounded-xl border border-border min-h-[120px] flex flex-col",children:[o.jsx(Yl,{virtualMcpId:r||null,className:"max-h-[45vh]"}),o.jsxs("div",{className:"flex items-center justify-end gap-1.5 p-2.5",children:[o.jsx(Xl,{tier:K.watch("tier"),onSelect:W=>K.setValue("tier",W,{shouldDirty:!0})}),o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsxs(se,{type:"button",variant:"default",className:"h-8 gap-1.5 rounded-md px-3 text-sm font-medium",onClick:te,disabled:!r,children:[o.jsx(oc,{size:16}),"Test"]})}),o.jsx(Re,{children:"Test Automation"})]})]})]})})]})]})]})}function fg(t){const e=z.c(5),{tabId:s}=t;let i;e[0]!==s?(i=Zo(s),e[0]=s,e[1]=i):i=e[1];const r=i;if(!r)return null;let n;e[2]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=n):n=e[2];let a;return e[3]!==r.id?(a=o.jsx(it,{children:o.jsx(it.Content,{children:o.jsx(it.Body,{children:o.jsx(B.Suspense,{fallback:n,children:o.jsx(mg,{id:r.id})})})})}),e[3]=r.id,e[4]=a):a=e[4],a}function mg(t){const e=z.c(8),{id:s}=t,i=Ut(),{data:r,isLoading:n}=Ch(s);let a;e[0]!==i?(a=()=>i({to:".",search:_g,replace:!0}),e[0]=i,e[1]=a):a=e[1];const l=a;if(n){let c;return e[2]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=c):c=e[2],c}if(!r){let c;return e[3]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Automation not found"}),e[3]=c):c=e[3],c}let h;return e[4]!==r||e[5]!==s||e[6]!==l?(h=o.jsx(ug,{automationId:s,automation:r,onBack:l}),e[4]=r,e[5]=s,e[6]=l,e[7]=h):h=e[7],h}function _g(t){return{...t,main:"automations"}}function pg(t){const e=z.c(20),{virtualMcpId:s}=t,i=Ut(),{data:r}=kh(s),n=r===void 0?[]:r,{create:a}=Hs(),[l,h]=B.useState(""),c=l.toLowerCase(),d=n.filter(I=>I.name.toLowerCase().includes(c));let u;e[0]!==i?(u=I=>i({to:".",search:D=>({...D,main:"automation:"+I}),replace:!0}),e[0]=i,e[1]=u):u=e[1];const f=u,m=async()=>{if(a.isPending)return;be("automation_new_clicked",{virtual_mcp_id:s,existing_count:n.length});const I=await a.mutateAsync(jh(s));f(I.id)},_=it,p=it,g=it;let x;e[2]===Symbol.for("react.memo_cache_sentinel")?(x=o.jsx(it.Title,{children:"Automations"}),e[2]=x):x=e[2];const b=n.length>0&&o.jsx(Eh,{value:l,onChange:h,placeholder:"Search automations...",className:"w-full md:w-[375px]"});let S;e[3]===Symbol.for("react.memo_cache_sentinel")?(S=o.jsx(ns,{size:14}),e[3]=S):S=e[3];let v;e[4]!==a.isPending||e[5]!==m?(v=o.jsxs(se,{size:"sm",onClick:m,disabled:a.isPending,children:[S,"New automation"]}),e[4]=a.isPending,e[5]=m,e[6]=v):v=e[6];let y;e[7]!==b||e[8]!==v?(y=o.jsxs("div",{className:"flex flex-col gap-6",children:[x,o.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[b,v]})]}),e[7]=b,e[8]=v,e[9]=y):y=e[9];const k=n.length===0?o.jsx("div",{className:"flex items-center justify-center py-20",children:o.jsx(fi,{image:o.jsx(Bs,{size:48,className:"text-muted-foreground"}),title:"No automations yet",description:"Create your first automation to run this agent on a schedule or in response to events.",actions:o.jsxs(se,{size:"sm",onClick:m,disabled:a.isPending,children:[o.jsx(ns,{size:14}),"New automation"]})})}):d.length===0?o.jsx("div",{className:"flex items-center justify-center py-20",children:o.jsx(fi,{image:o.jsx(Bs,{size:48,className:"text-muted-foreground"}),title:"No automations found",description:`No automations match "${l}"`})}):o.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:d.map(I=>o.jsx(Nh,{automation:I,onClick:()=>f(I.id)},I.id))});let N;e[10]!==k||e[11]!==g.Body||e[12]!==y?(N=o.jsxs(g.Body,{children:[y,k]}),e[10]=k,e[11]=g.Body,e[12]=y,e[13]=N):N=e[13];let j;e[14]!==N||e[15]!==p.Content?(j=o.jsx(p.Content,{children:N}),e[14]=N,e[15]=p.Content,e[16]=j):j=e[16];let T;return e[17]!==_||e[18]!==j?(T=o.jsx(_,{children:j}),e[17]=_,e[18]=j,e[19]=T):T=e[19],T}function gg(t){const e=z.c(3),{virtualMcpId:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=o.jsx(B.Suspense,{fallback:i,children:o.jsx(pg,{virtualMcpId:s})}),e[1]=s,e[2]=r):r=e[2],r}const Bo=B.lazy(()=>Hl(()=>import("./project-app-view-__Y1p7Pu.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,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57])).then(t=>({default:t.AppViewContent})));function Ml(t){const e=z.c(41),{taskId:s,virtualMcpId:i}=t;let r;e[0]!==s||e[1]!==i?(r={virtualMcpId:i,taskId:s},e[0]=s,e[1]=i,e[2]=r):r=e[2];const{activeTab:n,layoutTabs:a,expandedTools:l,automationTabParsed:h}=Ma(r);if(uc(n)){let _;return e[3]!==i?(_=o.jsx(zn,{virtualMcpId:i}),e[3]=i,e[4]=_):_=e[4],_}if(n==="git"){let _;return e[5]!==i?(_=o.jsx(zu,{virtualMcpId:i}),e[5]=i,e[6]=_):_=e[6],_}if(n==="automations"){let _;return e[7]!==i?(_=o.jsx(gg,{virtualMcpId:i}),e[7]=i,e[8]=_):_=e[8],_}if(n==="preview"){let _;return e[9]!==i?(_=o.jsx(Zp,{virtualMcpId:i}),e[9]=i,e[10]=_):_=e[10],_}if(h){let _;return e[11]!==n?(_=o.jsx(fg,{tabId:n}),e[11]=n,e[12]=_):_=e[12],_}let c;e[13]!==n?(c=fc(n),e[13]=n,e[14]=c):c=e[14];const d=c;if(d){let _;if(e[15]!==l||e[16]!==d.connectionId||e[17]!==d.toolName){let S;e[19]!==d.connectionId||e[20]!==d.toolName?(S=v=>v.appId===d.connectionId&&v.toolName===d.toolName,e[19]=d.connectionId,e[20]=d.toolName,e[21]=S):S=e[21],_=l.find(S),e[15]=l,e[16]=d.connectionId,e[17]=d.toolName,e[18]=_}else _=e[18];const p=_;let g;e[22]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"h-full w-full flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[22]=g):g=e[22];const x=p?.args;let b;return e[23]!==n||e[24]!==d.connectionId||e[25]!==d.toolName||e[26]!==x?(b=o.jsx(B.Suspense,{fallback:g,children:o.jsx(Bo,{connectionId:d.connectionId,toolName:d.toolName,args:x},n)}),e[23]=n,e[24]=d.connectionId,e[25]=d.toolName,e[26]=x,e[27]=b):b=e[27],b}let u;if(e[28]!==n||e[29]!==a){let _;e[31]!==n?(_=p=>p.id===n,e[31]=n,e[32]=_):_=e[32],u=a.find(_),e[28]=n,e[29]=a,e[30]=u}else u=e[30];const f=u;if(f){let _;e[33]===Symbol.for("react.memo_cache_sentinel")?(_=o.jsx("div",{className:"h-full w-full flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[33]=_):_=e[33];let p;return e[34]!==n||e[35]!==f.id||e[36]!==f.view.appId||e[37]!==f.view.args?(p=o.jsx(B.Suspense,{fallback:_,children:o.jsx(Bo,{connectionId:f.view.appId,toolName:f.id,args:f.view.args},n)}),e[34]=n,e[35]=f.id,e[36]=f.view.appId,e[37]=f.view.args,e[38]=p):p=e[38],p}let m;return e[39]!==i?(m=o.jsx(zn,{virtualMcpId:i}),e[39]=i,e[40]=m):m=e[40],m}function vg(t){const e=z.c(7),{children:s,defaultSize:i}=t,[,r]=B.useTransition();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=Go.decoChatPanelWidth(),e[0]=n):n=e[0];const[a,l]=qo(n,45),h=i>0&&i<100?a:i;let c;e[1]!==l?(c=f=>r(()=>{f>0&&f<100&&l(f)}),e[1]=l,e[2]=c):c=e[2];const d=c;let u;return e[3]!==s||e[4]!==h||e[5]!==d?(u=o.jsx(la,{defaultSize:h,minSize:20,collapsible:!0,collapsedSize:0,className:"min-w-0 overflow-hidden bg-sidebar",onResize:d,order:1,children:s}),e[3]=s,e[4]=h,e[5]=d,e[6]=u):u=e[6],u}function xg(t){const e=z.c(30),{virtualMcpId:s,taskId:i,chatOpen:r,mainOpen:n,chatContent:a}=t;let l;e[0]!==r||e[1]!==n?(l=Tn(r,n),e[0]=r,e[1]=n,e[2]=l):l=e[2];const h=l;let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=Go.decoChatPanelWidth(),e[3]=c):c=e[3];const[d]=qo(c,45),u=B.useRef(null);let f,m;e[4]!==r||e[5]!==n||e[6]!==d?(f=()=>{const I=u.current;if(!I)return;const D=Tn(r,n),M=D.chat>0&&D.chat<100?d:D.chat,w=D.chat>0&&D.chat<100?100-d:D.main;I.setLayout([M,w])},m=[r,n,d],e[4]=r,e[5]=n,e[6]=d,e[7]=f,e[8]=m):(f=e[7],m=e[8]),B.useEffect(f,m);const _=`${s}-${i}`;let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p={overflow:"visible"},e[9]=p):p=e[9];let g;e[10]!==a?(g=a??o.jsx(Ta,{}),e[10]=a,e[11]=g):g=e[11];let x;e[12]!==g?(x=o.jsx("div",{className:"h-full p-0.5 pt-0.25",children:o.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:g})}),e[12]=g,e[13]=x):x=e[13];let b;e[14]!==h.chat||e[15]!==x?(b=o.jsx(vg,{defaultSize:h.chat,children:x}),e[14]=h.chat,e[15]=x,e[16]=b):b=e[16];let S;e[17]===Symbol.for("react.memo_cache_sentinel")?(S=o.jsx(Gc,{className:"bg-sidebar"}),e[17]=S):S=e[17];const v=h.main;let y;e[18]===Symbol.for("react.memo_cache_sentinel")?(y={overflow:"visible"},e[18]=y):y=e[18];let k;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=Z("flex flex-col h-full min-h-0 bg-background overflow-hidden","card-shadow","transition-[border-radius] duration-200 ease-[var(--ease-out-quart)]","rounded-[0.75rem]"),e[19]=k):k=e[19];let N;e[20]!==i||e[21]!==s?(N=o.jsx("div",{className:"h-full p-0.5 pt-0.25",children:o.jsx("div",{className:k,children:o.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:o.jsx(Tt,{children:o.jsx(Ml,{taskId:i,virtualMcpId:s})})})})}),e[20]=i,e[21]=s,e[22]=N):N=e[22];let j;e[23]!==h.main||e[24]!==N?(j=o.jsx(la,{className:"min-w-0 flex flex-col",order:2,defaultSize:v,style:y,collapsible:!0,collapsedSize:0,minSize:20,children:N}),e[23]=h.main,e[24]=N,e[25]=j):j=e[25];let T;return e[26]!==j||e[27]!==_||e[28]!==b?(T=o.jsxs(Yc,{ref:u,direction:"horizontal",className:"flex-1 min-h-0 pb-1 pr-1 pl-0 pt-0",style:p,children:[b,S,j]},_),e[26]=j,e[27]=_,e[28]=b,e[29]=T):T=e[29],T}const ir="flex size-7 shrink-0 items-center justify-center rounded-md transition-colors",Lo="bg-sidebar-accent text-sidebar-foreground",rr="text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";function bg(t){const e=z.c(47),{chatOpen:s,toggleChat:i,onNewTask:r}=t,{tasksOpen:n,toggleTasks:a}=Mc(),l=!!r;let h;e[0]!==n||e[1]!==a?(h=()=>{be("agent_toolbar_toggled",{button:"tasks",next_state:n?"closed":"open"}),a()},e[0]=n,e[1]=a,e[2]=h):h=e[2];const c=n?Lo:rr;let d;e[3]!==c?(d=Z(ir,c),e[3]=c,e[4]=d):d=e[4];let u;e[5]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(Tc,{size:16}),e[5]=u):u=e[5];let f;e[6]!==h||e[7]!==d||e[8]!==n?(f=o.jsx(Te,{asChild:!0,children:o.jsx("button",{type:"button",onClick:h,"aria-pressed":n,className:d,children:u})}),e[6]=h,e[7]=d,e[8]=n,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(Re,{side:"bottom",children:"Tasks"}),e[10]=m):m=e[10];let _;e[11]!==f?(_=o.jsxs(De,{delayDuration:300,children:[f,m]}),e[11]=f,e[12]=_):_=e[12];let p;e[13]!==s||e[14]!==i?(p=()=>{be("agent_toolbar_toggled",{button:"chat",next_state:s?"closed":"open"}),i()},e[13]=s,e[14]=i,e[15]=p):p=e[15];const g=s?Lo:rr;let x;e[16]!==g?(x=Z(ir,g),e[16]=g,e[17]=x):x=e[17];let b;e[18]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx(na,{size:16}),e[18]=b):b=e[18];let S;e[19]!==s||e[20]!==x||e[21]!==p?(S=o.jsx(Te,{asChild:!0,children:o.jsx("button",{type:"button",onClick:p,"aria-pressed":s,className:x,children:b})}),e[19]=s,e[20]=x,e[21]=p,e[22]=S):S=e[22];let v;e[23]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx(Re,{side:"bottom",children:"Chat"}),e[23]=v):v=e[23];let y;e[24]!==S?(y=o.jsxs(De,{delayDuration:300,children:[S,v]}),e[24]=S,e[25]=y):y=e[25];const k=l?"grid-cols-[1fr]":"grid-cols-[0fr]";let N;e[26]!==k?(N=Z("grid transition-[grid-template-columns] duration-200 ease-[var(--ease-out-quart)]",k),e[26]=k,e[27]=N):N=e[27];const j=!l,T=l?0:-1,I=!l,D=l?"translate-x-0 opacity-100":"-translate-x-2 opacity-0";let M;e[28]!==D?(M=Z(ir,rr,"transition-[transform,opacity] duration-200 ease-[var(--ease-out-quart)] will-change-transform",D),e[28]=D,e[29]=M):M=e[29];let w;e[30]===Symbol.for("react.memo_cache_sentinel")?(w=o.jsx(tn,{size:16}),e[30]=w):w=e[30];let R;e[31]!==r||e[32]!==j||e[33]!==T||e[34]!==I||e[35]!==M?(R=o.jsx(Te,{asChild:!0,children:o.jsx("button",{type:"button",onClick:r,disabled:j,tabIndex:T,"aria-hidden":I,className:M,children:w})}),e[31]=r,e[32]=j,e[33]=T,e[34]=I,e[35]=M,e[36]=R):R=e[36];let E;e[37]===Symbol.for("react.memo_cache_sentinel")?(E=o.jsx(Re,{side:"bottom",children:"New task"}),e[37]=E):E=e[37];let C;e[38]!==R?(C=o.jsx("div",{className:"overflow-hidden",children:o.jsxs(De,{delayDuration:300,children:[R,E]})}),e[38]=R,e[39]=C):C=e[39];let P;e[40]!==N||e[41]!==C?(P=o.jsx("div",{className:N,children:C}),e[40]=N,e[41]=C,e[42]=P):P=e[42];let A;return e[43]!==y||e[44]!==P||e[45]!==_?(A=o.jsxs(o.Fragment,{children:[_,y,P]}),e[43]=y,e[44]=P,e[45]=_,e[46]=A):A=e[46],A}function Sg(t,e,s){if(t.length<=s)return{visible:t,overflow:[]};const i=t.slice(0,s),r=t.slice(s);if(e==null)return{visible:i,overflow:r};if(i.some(u=>u.id===e))return{visible:i,overflow:r};const a=r.findIndex(u=>u.id===e);if(a===-1)return{visible:i,overflow:r};const l=i[i.length-1],h=r[a],c=[...i.slice(0,-1),h],d=[l,...r.slice(0,a),...r.slice(a+1)];return{visible:c,overflow:d}}function yg(t){const e=z.c(13),{title:s,icon:i,active:r,onClick:n}=t,a=r?"bg-sidebar-accent text-sidebar-foreground":"text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";let l;e[0]!==a?(l=Z("shrink-0 flex items-center gap-1.5 h-8 rounded-md px-2","[transition:background-color_180ms_ease,color_180ms_ease]",a),e[0]=a,e[1]=l):l=e[1];let h;e[2]!==i?(h=o.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:o.jsx(wg,{icon:i})}),e[2]=i,e[3]=h):h=e[3];let c;e[4]!==s?(c=o.jsx("span",{className:"whitespace-nowrap text-sm font-medium leading-none",children:s}),e[4]=s,e[5]=c):c=e[5];let d;return e[6]!==r||e[7]!==n||e[8]!==l||e[9]!==h||e[10]!==c||e[11]!==s?(d=o.jsxs("button",{type:"button",onClick:n,"aria-pressed":r,"aria-label":s,className:l,children:[h,c]}),e[6]=r,e[7]=n,e[8]=l,e[9]=h,e[10]=c,e[11]=s,e[12]=d):d=e[12],d}function wg(t){const e=z.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:r}=s;let n;return e[0]!==r?(n=o.jsx(r,{className:"size-4"}),e[0]=r,e[1]=n):n=e[1],n}if(s.kind==="url"){let r;return e[2]!==s.src?(r=o.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=r):r=e[3],r}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(oa,{className:"size-4"}),e[4]=i):i=e[4],i}function Cg(t){const e=z.c(13),{overflow:s,onSelect:i}=t,[r,n]=B.useState(!1);let a;e[0]!==i?(a=f=>{n(!1),i(f)},e[0]=i,e[1]=a):a=e[1];const l=a;let h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(ls,{asChild:!0,children:o.jsx("button",{type:"button",title:"More tabs","aria-label":"More tabs",className:"shrink-0 flex size-8 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-foreground transition-colors",children:o.jsx(ia,{className:"size-4"})})}),e[2]=h):h=e[2];let c;if(e[3]!==l||e[4]!==s){let f;e[6]!==l?(f=m=>o.jsx("li",{children:o.jsxs("button",{type:"button",onClick:()=>l(m.id),className:"w-full flex items-center gap-2 px-3 py-2 rounded-md hover:bg-accent text-sm text-foreground",children:[o.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:o.jsx(kg,{icon:m.icon})}),o.jsx("span",{className:"truncate",children:m.title})]})},m.id),e[6]=l,e[7]=f):f=e[7],c=s.map(f),e[3]=l,e[4]=s,e[5]=c}else c=e[5];let d;e[8]!==c?(d=o.jsx(cs,{align:"end",className:"w-56 p-1",children:o.jsx("ul",{className:"flex flex-col",children:c})}),e[8]=c,e[9]=d):d=e[9];let u;return e[10]!==r||e[11]!==d?(u=o.jsxs(hs,{open:r,onOpenChange:n,children:[h,d]}),e[10]=r,e[11]=d,e[12]=u):u=e[12],u}function kg(t){const e=z.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:r}=s;let n;return e[0]!==r?(n=o.jsx(r,{className:"size-4"}),e[0]=r,e[1]=n):n=e[1],n}if(s.kind==="url"){let r;return e[2]!==s.src?(r=o.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=r):r=e[3],r}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(oa,{className:"size-4"}),e[4]=i):i=e[4],i}const Ng=6;function Al(t){const e=z.c(20),{virtualMcpId:s,taskId:i}=t,r=Ut();let n;e[0]!==i||e[1]!==s?(n={virtualMcpId:s,taskId:i},e[0]=i,e[1]=s,e[2]=n):n=e[2];const{tabs:a,activeTab:l,mainOpen:h,setActiveTab:c}=Ma(n);let d,u,f,m;if(e[3]!==l||e[4]!==h||e[5]!==r||e[6]!==c||e[7]!==a||e[8]!==s){const g=mc({activeTab:l,mainOpen:h}),x=k=>k.id==="automations"?g:h&&k.id===l,S=a.find(k=>x(k))?.id??null,{visible:v,overflow:y}=Sg(a,S,Ng);u=y,d=k=>{const N=a.find(T=>T.id===k),j=S===k&&h;if(be("main_panel_tab_clicked",{virtual_mcp_id:s,tab_id:k,tab_kind:N?.kind??null,was_active:j}),k==="automations"){const T=_c({activeTab:l,mainOpen:h});r({to:".",search:I=>({...I,main:T}),replace:!0});return}c(k)},f="flex items-center min-w-0 gap-0.5",m=v.map(k=>o.jsx(yg,{title:k.title,icon:k.icon,active:x(k),onClick:()=>d(k.id)},k.id)),e[3]=l,e[4]=h,e[5]=r,e[6]=c,e[7]=a,e[8]=s,e[9]=d,e[10]=u,e[11]=f,e[12]=m}else d=e[9],u=e[10],f=e[11],m=e[12];let _;e[13]!==d||e[14]!==u?(_=u.length>0&&o.jsx(Cg,{overflow:u,onSelect:d}),e[13]=d,e[14]=u,e[15]=_):_=e[15];let p;return e[16]!==f||e[17]!==m||e[18]!==_?(p=o.jsxs("div",{className:f,children:[m,_]}),e[16]=f,e[17]=m,e[18]=_,e[19]=p):p=e[19],p}function jg(t){const e=z.c(12);let s,i,r,n;e[0]!==t?({className:s,orientation:r,decorative:n,...i}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=r,e[4]=n):(s=e[1],i=e[2],r=e[3],n=e[4]);const a=r===void 0?"horizontal":r,l=n===void 0?!0:n;let h;e[5]!==s?(h=Z("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",s),e[5]=s,e[6]=h):h=e[6];let c;return e[7]!==l||e[8]!==a||e[9]!==i||e[10]!==h?(c=o.jsx(Wl,{"data-slot":"separator-root",decorative:l,orientation:a,className:h,...i}),e[7]=l,e[8]=a,e[9]=i,e[10]=h,e[11]=c):c=e[11],c}function Eg(t){const e=z.c(20),{prNumber:s,disabled:i,send:r}=t;let n;e[0]!==s||e[1]!==r?(n=()=>r(Eu({prNumber:s})),e[0]=s,e[1]=r,e[2]=n):n=e[2];const a=n;let l;e[3]!==s||e[4]!==r?(l=()=>r(ju({prNumber:s})),e[3]=s,e[4]=r,e[5]=l):l=e[5];const h=l;let c;e[6]!==i||e[7]!==a?(c=o.jsx(se,{size:"sm",variant:"success",className:"rounded-r-none border-r border-success-foreground/20",disabled:i,onClick:a,children:"Publish"}),e[6]=i,e[7]=a,e[8]=c):c=e[8];let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(ja,{className:"h-3.5 w-3.5"}),e[9]=d):d=e[9];let u;e[10]!==i?(u=o.jsx(Ni,{asChild:!0,children:o.jsx(se,{size:"sm",variant:"success",className:"rounded-l-none px-2",disabled:i,"aria-label":"More actions",children:d})}),e[10]=i,e[11]=u):u=e[11];let f;e[12]!==h?(f=o.jsx(ji,{align:"end",children:o.jsx(Lt,{onClick:h,children:"Review"})}),e[12]=h,e[13]=f):f=e[13];let m;e[14]!==u||e[15]!==f?(m=o.jsxs(ki,{children:[u,f]}),e[14]=u,e[15]=f,e[16]=m):m=e[16];let _;return e[17]!==c||e[18]!==m?(_=o.jsxs("div",{className:"inline-flex items-stretch rounded-md",children:[c,m]}),e[17]=c,e[18]=m,e[19]=_):_=e[19],_}function Tg(t){if(!(t==="claiming"||t==="ready"||t==="failed"))return za[t].short}const Rg=new Set(["failure","timed_out","cancelled","action_required"]);function Dg(t){return t.status==="completed"&&Rg.has(t.conclusion)}function Mg(t){return t.status==="queued"||t.status==="in_progress"}function Ag(t){const{lifecycle:e,branch:s,pr:i,checks:r,reviews:n,loading:a}=t;if(a)return{label:"Loading…",disabled:!0,loading:!0,variant:"outline",tooltip:"Loading branch and pull request status"};switch(e.phase){case"idle":return{label:t.claimPhase&&Tg(t.claimPhase.kind)||"Starting sandbox…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for the sandbox daemon to come online"};case"cloning":return{label:"Cloning repo…",disabled:!0,loading:!0,variant:"outline",tooltip:"Cloning the project repository"};case"clone-failed":return{label:"Clone failed",disabled:!0,variant:"outline",tooltip:e.error||"git clone failed — see setup logs"};case"checking-out":return{label:`Switching to ${e.to}…`,disabled:!0,loading:!0,variant:"outline",tooltip:`Checking out ${e.to}`}}if(s.kind!=="ready")return{label:"Loading branch…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for branch metadata from the sandbox daemon"};const l=s;if(l.workingTreeDirty||l.unpushed>0)return{label:"Save changes",action:"commit-and-push",variant:"default",tooltip:"Commit and push local changes"};if(i?.merged)return!!l.headSha&&!!i.headSha&&l.headSha!==i.headSha?{label:"Continue",action:"create-pr",variant:"special",tooltip:"Open a new PR with the latest commits"}:{label:"Published",disabled:!0,variant:"outline",tooltip:`PR #${i.number} merged into ${i.base}`};if(l.aheadOfBase>0){if(i&&i.state==="closed"&&!i.merged)return{label:"Reopen",action:"reopen",variant:"default",tooltip:`Reopen PR #${i.number}`};if(!i)return{label:"Submit for review",action:"create-pr",variant:"default",tooltip:`Open a PR for ${l.branch} → ${l.base}`};if((n?.mergeableState??"unknown")==="dirty")return{label:`Sync with ${i.base}`,action:"rebase",variant:"default",tooltip:`Resolve conflicts with ${i.base} before merging`};const d=r.filter(Dg).map(m=>m.name);if(d.length>0)return{label:"Fix tests",action:"fix-checks",variant:"default",tooltip:`Failing: ${d.join(", ")}`,meta:{failingChecks:d}};const u=r.filter(Mg);if(u.length>0)return{label:"Running tests…",disabled:!0,loading:!0,variant:"outline",tooltip:`Waiting on ${u.length} check${u.length===1?"":"s"} to finish`};if(n?.draft)return{label:"Mark ready",action:"mark-ready",variant:"default",tooltip:"Mark draft PR ready for review"};const f=n?.unresolvedConversations??0;return f>0?{label:"Address feedback",action:"resolve-comments",variant:"default",tooltip:`${f} unresolved conversation${f===1?"":"s"}`}:n?.missingRequiredApprovals?{label:"Awaiting review",disabled:!0,variant:"outline",tooltip:"Waiting for required approvals"}:{label:"Publish",action:"merge-split",variant:"success",tooltip:`Squash-merge PR #${i.number} into ${i.base}`}}return{label:"Up to date",disabled:!0,variant:"outline",tooltip:`Branch is in sync with ${l.base}`}}const Ig=6e4,Pg=3e4;function Bg(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ig,refetchIntervalInBackground:!1,staleTime:Pg,select:Lg},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function Lg(t){const e=Ws(t);if(!e)return null;const s=e.mergeable_state??"unknown",i=!!(e.draft??!1),r=Number(e.review_comments??0),n=s==="blocked"&&r>0?r:0;return{draft:i,mergeableState:s,unresolvedConversations:n,missingRequiredApprovals:s==="blocked"&&n===0}}function Og(t){const e=z.c(44),{virtualMcpId:s}=t,{org:i}=ge(),r=vt(s),{currentBranch:n}=xt(),a=Fs(),l=r?.metadata?.githubRepo??null,{lifecycle:h,branch:c,phase:d}=fs(),u=l?.connectionId??"",f=l?.owner??"",m=l?.name??"",_=n??null;let p;e[0]!==i.id||e[1]!==i.slug||e[2]!==u||e[3]!==f||e[4]!==m||e[5]!==_?(p={orgId:i.id,orgSlug:i.slug,connectionId:u,owner:f,repo:m,branch:_},e[0]=i.id,e[1]=i.slug,e[2]=u,e[3]=f,e[4]=m,e[5]=_,e[6]=p):p=e[6];const g=Pa(p),x=g.data??null,b=l?.connectionId??"",S=l?.owner??"",v=l?.name??"",y=x&&x.state==="open"?x.number:null;let k;e[7]!==i.id||e[8]!==i.slug||e[9]!==b||e[10]!==S||e[11]!==v||e[12]!==y?(k={orgId:i.id,orgSlug:i.slug,connectionId:b,owner:S,repo:v,prNumber:y},e[7]=i.id,e[8]=i.slug,e[9]=b,e[10]=S,e[11]=v,e[12]=y,e[13]=k):k=e[13];const N=La(k),j=l?.connectionId??"",T=l?.owner??"",I=l?.name??"",D=x&&x.state==="open"?x.number:null;let M;e[14]!==i.id||e[15]!==i.slug||e[16]!==j||e[17]!==T||e[18]!==I||e[19]!==D?(M={orgId:i.id,orgSlug:i.slug,connectionId:j,owner:T,repo:I,prNumber:D},e[14]=i.id,e[15]=i.slug,e[16]=j,e[17]=T,e[18]=I,e[19]=D,e[20]=M):M=e[20];const w=Bg(M);if(!l?.connectionId||!n)return null;let R;e[21]!==c||e[22]!==N.data||e[23]!==d||e[24]!==h||e[25]!==x||e[26]!==g.isPending||e[27]!==w.data?(R=Ag({lifecycle:h,branch:c,claimPhase:d,pr:x,checks:N.data??[],reviews:w.data??null,loading:g.isPending}),e[21]=c,e[22]=N.data,e[23]=d,e[24]=h,e[25]=x,e[26]=g.isPending,e[27]=w.data,e[28]=R):R=e[28];const E=R;let C;e[29]!==a?(C=J=>a.sendMessage({parts:[{type:"text",text:J}]}),e[29]=a,e[30]=C):C=e[30];const P=C,A=a.isStreaming;let $;e[31]!==n||e[32]!==E||e[33]!==A||e[34]!==x||e[35]!==P?($=J=>{if(!A)switch(J){case"commit-and-push":{P(xu({branch:n}));return}case"create-pr":{P(bu({branch:n}));return}case"reopen":{x&&P(Su({prNumber:x.number}));return}case"rebase":{P(yu({branch:n}));return}case"fix-checks":{x&&P(Cu({prNumber:x.number,failingChecks:E.meta?.failingChecks??[]}));return}case"mark-ready":{x&&P(ku({prNumber:x.number}));return}case"resolve-comments":{x&&P(Nu({prNumber:x.number}));return}case"merge-split":return}},e[31]=n,e[32]=E,e[33]=A,e[34]=x,e[35]=P,e[36]=$):$=e[36];const K=$;let q;e[37]===Symbol.for("react.memo_cache_sentinel")?(q=o.jsx(jg,{orientation:"vertical",className:"mx-2 data-[orientation=vertical]:h-5"}),e[37]=q):q=e[37];const F=x?.number;let Y;return e[38]!==E||e[39]!==A||e[40]!==K||e[41]!==P||e[42]!==F?(Y=o.jsxs(o.Fragment,{children:[q,o.jsx(zg,{button:E,isStreaming:A,onActivate:K,prNumber:F,send:P})]}),e[38]=E,e[39]=A,e[40]=K,e[41]=P,e[42]=F,e[43]=Y):Y=e[43],Y}function zg(t){const e=z.c(21),{button:s,isStreaming:i}=t,r=!!s.disabled||i,n=i?"Chat is running":s.tooltip??null;if(s.action==="merge-split"&&t.prNumber!=null){let d;e[0]!==r||e[1]!==t.prNumber||e[2]!==t.send?(d=o.jsx(Eg,{prNumber:t.prNumber,disabled:r,send:t.send}),e[0]=r,e[1]=t.prNumber,e[2]=t.send,e[3]=d):d=e[3];let u;return e[4]!==d||e[5]!==n?(u=o.jsx(Oo,{label:n,children:d}),e[4]=d,e[5]=n,e[6]=u):u=e[6],u}let a;e[7]!==s.action||e[8]!==t?(a=()=>t.onActivate(s.action),e[7]=s.action,e[8]=t,e[9]=a):a=e[9];let l;e[10]!==s.loading?(l=s.loading?o.jsx(gh,{size:"xs",variant:"default"}):null,e[10]=s.loading,e[11]=l):l=e[11];let h;e[12]!==s.label||e[13]!==s.variant||e[14]!==r||e[15]!==a||e[16]!==l?(h=o.jsxs(se,{size:"sm",variant:s.variant,disabled:r,onClick:a,children:[l,s.label]}),e[12]=s.label,e[13]=s.variant,e[14]=r,e[15]=a,e[16]=l,e[17]=h):h=e[17];let c;return e[18]!==h||e[19]!==n?(c=o.jsx(Oo,{label:n,children:h}),e[18]=h,e[19]=n,e[20]=c):c=e[20],c}function Oo(t){const e=z.c(9),{label:s,children:i}=t;if(!s){let l;return e[0]!==i?(l=o.jsx(o.Fragment,{children:i}),e[0]=i,e[1]=l):l=e[1],l}let r;e[2]!==i?(r=o.jsx(Te,{asChild:!0,children:o.jsx("span",{children:i})}),e[2]=i,e[3]=r):r=e[3];let n;e[4]!==s?(n=o.jsx(Re,{children:s}),e[4]=s,e[5]=n):n=e[5];let a;return e[6]!==r||e[7]!==n?(a=o.jsx(Hc,{children:o.jsxs(De,{children:[r,n]})}),e[6]=r,e[7]=n,e[8]=a):a=e[8],a}function $g(t){const e=z.c(2),{virtualMcp:s}=t;if(!!!(s.metadata?.githubRepo??null)?.connectionId)return null;let n;return e[0]!==s.id?(n=o.jsx(ar.Right,{children:o.jsx(Og,{virtualMcpId:s.id})}),e[0]=s.id,e[1]=n):n=e[1],n}const Zt=B.createContext(null);function Fg(){return B.use(Zt)}function zo(t){const e=z.c(7),{children:s}=t,{taskId:i}=xt();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong loading the chat. Try refreshing."}),e[0]=r):r=e[0];let n;e[1]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx(Ce.Skeleton,{}),e[1]=n):n=e[1];let a;e[2]!==s?(a=s??o.jsx(Ta,{}),e[2]=s,e[3]=a):a=e[3];let l;return e[4]!==a||e[5]!==i?(l=o.jsx(Tt,{fallback:r,children:o.jsx(B.Suspense,{fallback:n,children:o.jsx(Ce.ActiveTaskProvider,{taskId:i,children:a})})}),e[4]=a,e[5]=i,e[6]=l):l=e[6],l}function $o(t){const e=z.c(3),{onNewTaskRef:s,createNewTask:i}=t;let r;return e[0]!==i||e[1]!==s?(r=()=>(s.current=i,()=>{s.current=null}),e[0]=i,e[1]=s,e[2]=r):r=e[2],B.useLayoutEffect(r),null}function Hg(t){const e=z.c(23),{onOpenSidebar:s,virtualMcpId:i,taskId:r,mainOpen:n,onToggleMain:a,onNewTask:l}=t;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(tc,{size:20}),e[0]=h):h=e[0];let c;e[1]!==s?(c=o.jsx("button",{type:"button",onClick:s,className:"flex size-8 shrink-0 items-center justify-center rounded-md text-foreground/60 hover:bg-accent hover:text-foreground transition-colors","aria-label":"Open menu",children:h}),e[1]=s,e[2]=c):c=e[2];let d;e[3]!==r||e[4]!==i?(d=o.jsx("div",{className:"flex-1 min-w-0 overflow-x-auto [scrollbar-width:none]",children:o.jsx(Al,{virtualMcpId:i,taskId:r})}),e[3]=r,e[4]=i,e[5]=d):d=e[5];const u=!n,f=n?"text-foreground/60 hover:bg-accent hover:text-foreground":"bg-accent text-foreground";let m;e[6]!==f?(m=Z("flex size-7 shrink-0 items-center justify-center rounded-md transition-colors",f),e[6]=f,e[7]=m):m=e[7];let _;e[8]===Symbol.for("react.memo_cache_sentinel")?(_=o.jsx(na,{size:16}),e[8]=_):_=e[8];let p;e[9]!==a||e[10]!==u||e[11]!==m?(p=o.jsx("button",{type:"button",onClick:a,"aria-pressed":u,className:m,title:"Chat",children:_}),e[9]=a,e[10]=u,e[11]=m,e[12]=p):p=e[12];let g;e[13]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx(tn,{size:16}),e[13]=g):g=e[13];let x;e[14]!==l?(x=o.jsx("button",{type:"button",onClick:l,className:"flex size-7 shrink-0 items-center justify-center rounded-md text-foreground/60 hover:bg-accent hover:text-foreground transition-colors",title:"New task",children:g}),e[14]=l,e[15]=x):x=e[15];let b;e[16]!==x||e[17]!==p?(b=o.jsxs("div",{className:"flex items-center gap-0.5 shrink-0",children:[p,x]}),e[16]=x,e[17]=p,e[18]=b):b=e[18];let S;return e[19]!==b||e[20]!==c||e[21]!==d?(S=o.jsxs("div",{className:"shrink-0 flex items-center gap-1 px-2 h-12 bg-background border-b border-border",children:[c,d,b]}),e[19]=b,e[20]=c,e[21]=d,e[22]=S):S=e[22],S}function Fo(t){const e=z.c(16),{virtualMcpId:s,hasActiveGithubRepo:i,vmMap:r,children:n}=t,{org:a}=ge(),{currentBranch:l}=xt(),{data:h}=Yr.useSession(),c=h?.user?.id;let d;e[0]!==a.id||e[1]!==a.slug?(d={connectionId:Vt,orgId:a.id,orgSlug:a.slug},e[0]=a.id,e[1]=a.slug,e[2]=d):d=e[2];const u=He(d),{mutate:f}=Da(u);let m;e[3]===Symbol.for("react.memo_cache_sentinel")?(m=new Set,e[3]=m):m=e[3];const _=B.useRef(m);let p,g;e[4]!==l||e[5]!==i||e[6]!==f||e[7]!==c||e[8]!==s||e[9]!==r?(p=()=>{if(i&&c&&l){if(r?.[c]?.[l]){_.current.add(l);return}_.current.has(l)||(_.current.add(l),f({virtualMcpId:s,branch:l},{onError:Wg}))}},g=[i,c,l,r,s,f],e[4]=l,e[5]=i,e[6]=f,e[7]=c,e[8]=s,e[9]=r,e[10]=p,e[11]=g):(p=e[10],g=e[11]),B.useEffect(p,g);const x=l??null;let b;return e[12]!==n||e[13]!==x||e[14]!==s?(b=o.jsx(ef,{virtualMcpId:s,branch:x,children:n}),e[12]=n,e[13]=x,e[14]=s,e[15]=b):b=e[15],b}function Wg(t){console.error("[auto-start-vm] failed:",t)}function Ug(){const t=z.c(107),e=aa(),s=Ut(),{org:i}=ge(),r=Ac()?.tasksOpen??!1;Wc(i.slug);let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},t[0]=n):n=t[0];const a=Ul(n),l=a.org??"";let h;t[1]===Symbol.for("react.memo_cache_sentinel")?(h={strict:!1},t[1]=h):h=t[1];const c=Ko(h);let d;t[2]!==i.id||t[3]!==c.virtualmcpid?(d=c.virtualmcpid??Yo(i.id).id,t[2]=i.id,t[3]=c.virtualmcpid,t[4]=d):d=t[4];const u=d,f=Dh(a.taskId??"",u),m=vt(u),_=m?.metadata?.ui?.layout??null;let p;t[5]!==_?(p=_?{defaultMainView:_.defaultMainView??null,chatDefaultOpen:_.chatDefaultOpen??null}:null,t[5]=_,t[6]=p):p=t[6];const g=p;let x;t[7]!==m?(x=m&&$t(m),t[7]=m,t[8]=x):x=t[8];const b=!!x;let S;t[9]!==l||t[10]!==u?(S={virtualMcpId:u,orgSlug:l,isAgentRoute:!0},t[9]=l,t[10]=u,t[11]=S):S=t[11];const v=Ic(g,S),{setOpenMobile:y,openMobile:k}=Oc(),N=y,j=B.useRef(null);let T,I;t[12]===Symbol.for("react.memo_cache_sentinel")?(T=()=>{const G=H=>{Lc(H)&&H.shiftKey&&H.code==="KeyS"&&!H.repeat&&(H.preventDefault(),j.current?.())};return document.addEventListener("keydown",G),()=>document.removeEventListener("keydown",G)},I=[],t[12]=T,t[13]=I):(T=t[12],I=t[13]),B.useEffect(T,I);const D=u;let M;t[14]!==m||t[15]!==u?(M={virtualMcpId:u,entity:m},t[14]=m,t[15]=u,t[16]=M):M=t[16];const w=M;if(f.status==="creating"||f.status==="loading"){let G;t[17]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:o.jsxs("div",{className:"flex h-full items-center justify-center bg-background card-shadow rounded-[0.75rem] text-sm text-muted-foreground",children:[o.jsx($e,{className:"size-4 animate-spin mr-2"}),"Creating task…"]})}),t[17]=G):G=t[17];let H;return t[18]!==w?(H=o.jsx(Zt,{value:w,children:G}),t[18]=w,t[19]=H):H=t[19],H}if(f.status==="error"){let G;t[20]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx("div",{className:"font-medium",children:"Task unavailable"}),t[20]=G):G=t[20];let H;t[21]!==f.error.message?(H=o.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:o.jsxs("div",{className:"flex flex-col h-full items-center justify-center gap-2 bg-background card-shadow rounded-[0.75rem] p-8 text-sm",children:[G,o.jsx("div",{className:"text-muted-foreground",children:f.error.message})]})}),t[21]=f.error.message,t[22]=H):H=t[22];let Q;return t[23]!==w||t[24]!==H?(Q=o.jsx(Zt,{value:w,children:H}),t[23]=w,t[24]=H,t[25]=Q):Q=t[25],Q}if(!m){let G;t[26]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx(Jr,{size:48,className:"text-muted-foreground"}),t[26]=G):G=t[26];const H=`The agent "${u}" does not exist in this organization.`;let Q;t[27]!==s||t[28]!==l?(Q=o.jsx(se,{variant:"outline",onClick:()=>s({to:"/$org",params:{org:l}}),children:"Go to organization home"}),t[27]=s,t[28]=l,t[29]=Q):Q=t[29];let ie;t[30]!==H||t[31]!==Q?(ie=o.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:o.jsx("div",{className:"flex flex-col h-full bg-background overflow-hidden card-shadow rounded-[0.75rem]",children:o.jsx(fi,{image:G,title:"Agent not found",description:H,actions:Q})})}),t[30]=H,t[31]=Q,t[32]=ie):ie=t[32];let L;return t[33]!==w||t[34]!==ie?(L=o.jsx(Zt,{value:w,children:ie}),t[33]=w,t[34]=ie,t[35]=L):L=t[35],L}if(e){let G;t[36]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx(zc,{className:"sr-only",children:"Navigation"}),t[36]=G):G=t[36];let H;t[37]!==N?(H=o.jsx("div",{className:"w-14 shrink-0 bg-sidebar flex flex-col items-center border-r border-border overflow-y-auto group/sidebar","data-state":"collapsed",children:o.jsx(Pc,{onClose:()=>N(!1)})}),t[37]=N,t[38]=H):H=t[38];let Q;t[39]===Symbol.for("react.memo_cache_sentinel")?(Q=o.jsx("div",{className:"flex-1 min-w-0 overflow-hidden",children:o.jsx(Bc,{})}),t[39]=Q):Q=t[39];let ie;t[40]!==H?(ie=o.jsxs($c,{side:"left",hideCloseButton:!0,className:"w-[calc(100vw-3rem)] sm:max-w-md! p-0",children:[G,o.jsxs("div",{className:"flex h-full",children:[H,Q]})]}),t[40]=H,t[41]=ie):ie=t[41];let L;t[42]!==k||t[43]!==N||t[44]!==ie?(L=o.jsx(Fc,{open:k,onOpenChange:N,children:ie}),t[42]=k,t[43]=N,t[44]=ie,t[45]=L):L=t[45];const ee=L,te=m?.metadata?.vmMap;let W;t[46]!==v.createNewTask?(W=o.jsx($o,{onNewTaskRef:j,createNewTask:v.createNewTask}),t[46]=v.createNewTask,t[47]=W):W=t[47];let U;t[48]!==N?(U=()=>N(!0),t[48]=N,t[49]=U):U=t[49];let re;t[50]!==D||t[51]!==v.createNewTask||t[52]!==v.mainOpen||t[53]!==v.taskId||t[54]!==v.toggleMain||t[55]!==U?(re=o.jsx(Hg,{onOpenSidebar:U,virtualMcpId:D,taskId:v.taskId,mainOpen:v.mainOpen,onToggleMain:v.toggleMain,onNewTask:v.createNewTask}),t[50]=D,t[51]=v.createNewTask,t[52]=v.mainOpen,t[53]=v.taskId,t[54]=v.toggleMain,t[55]=U,t[56]=re):re=t[56];let de;t[57]!==D||t[58]!==v.mainOpen||t[59]!==v.taskId?(de=o.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:v.mainOpen?o.jsx(Tt,{fallback:o.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong. Try refreshing."}),children:o.jsx(B.Suspense,{fallback:o.jsx("div",{className:"h-full flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),children:o.jsx(Ml,{taskId:v.taskId,virtualMcpId:D})})}):o.jsx(zo,{})}),t[57]=D,t[58]=v.mainOpen,t[59]=v.taskId,t[60]=de):de=t[60];let ce;t[61]!==b||t[62]!==ee||t[63]!==te||t[64]!==W||t[65]!==re||t[66]!==de||t[67]!==u?(ce=o.jsxs(Fo,{virtualMcpId:u,hasActiveGithubRepo:b,vmMap:te,children:[W,re,de,ee]}),t[61]=b,t[62]=ee,t[63]=te,t[64]=W,t[65]=re,t[66]=de,t[67]=u,t[68]=ce):ce=t[68];let he;t[69]!==D||t[70]!==ce?(he=o.jsx("div",{className:"flex flex-col flex-1 bg-background min-h-0",children:o.jsx(Ce.Provider,{virtualMcpId:D,children:ce},D)}),t[69]=D,t[70]=ce,t[71]=he):he=t[71];let _e;return t[72]!==w||t[73]!==he?(_e=o.jsx(Zt,{value:w,children:he}),t[72]=w,t[73]=he,t[74]=_e):_e=t[74],_e}const R=r?void 0:v.createNewTask;let E;t[75]!==v.chatOpen||t[76]!==v.toggleChat||t[77]!==R?(E=o.jsx(ar.Toggles,{children:o.jsx(bg,{chatOpen:v.chatOpen,toggleChat:v.toggleChat,onNewTask:R})}),t[75]=v.chatOpen,t[76]=v.toggleChat,t[77]=R,t[78]=E):E=t[78];let C;t[79]!==v.taskId||t[80]!==u?(C=o.jsx(ar.Tabs,{children:o.jsx(Al,{virtualMcpId:u,taskId:v.taskId})}),t[79]=v.taskId,t[80]=u,t[81]=C):C=t[81];const P=m?.metadata?.vmMap;let A;t[82]!==m?(A=o.jsx($g,{virtualMcp:m}),t[82]=m,t[83]=A):A=t[83];let $;t[84]!==v.createNewTask?($=o.jsx($o,{onNewTaskRef:j,createNewTask:v.createNewTask}),t[84]=v.createNewTask,t[85]=$):$=t[85];let K;t[86]===Symbol.for("react.memo_cache_sentinel")?(K=o.jsx(zo,{}),t[86]=K):K=t[86];let q;t[87]!==v.chatOpen||t[88]!==v.mainOpen||t[89]!==v.taskId||t[90]!==u?(q=o.jsx(xg,{virtualMcpId:u,taskId:v.taskId,chatOpen:v.chatOpen,mainOpen:v.mainOpen,chatContent:K}),t[87]=v.chatOpen,t[88]=v.mainOpen,t[89]=v.taskId,t[90]=u,t[91]=q):q=t[91];let F;t[92]!==b||t[93]!==P||t[94]!==A||t[95]!==$||t[96]!==q||t[97]!==u?(F=o.jsxs(Fo,{virtualMcpId:u,hasActiveGithubRepo:b,vmMap:P,children:[A,$,q]}),t[92]=b,t[93]=P,t[94]=A,t[95]=$,t[96]=q,t[97]=u,t[98]=F):F=t[98];let Y;t[99]!==D||t[100]!==C||t[101]!==F?(Y=o.jsxs(Ce.Provider,{virtualMcpId:D,children:[C,F]},D),t[99]=D,t[100]=C,t[101]=F,t[102]=Y):Y=t[102];let J;return t[103]!==w||t[104]!==E||t[105]!==Y?(J=o.jsx("div",{className:"flex-1 min-w-0 flex flex-col",children:o.jsxs(Zt,{value:w,children:[E,Y]})}),t[103]=w,t[104]=E,t[105]=Y,t[106]=J):J=t[106],J}function tx(){const t=z.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx(B.Suspense,{fallback:o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),children:o.jsx(Ug,{})}),t[0]=e):e=t[0],e}export{tx as default,Fg as useInsetContext};
179
+ `,e)}paste(t){this._core.paste(t)}refresh(t,e){this._verifyIntegers(t,e),this._core.refresh(t,e)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(t){this._addonManager.loadAddon(this,t)}static get strings(){return{get promptLabel(){return ur.get()},set promptLabel(t){ur.set(t)},get tooMuchOutput(){return fr.get()},set tooMuchOutput(t){fr.set(t)}}}_verifyIntegers(...t){for(at of t)if(at===1/0||isNaN(at)||at%1!==0)throw new Error("This API only accepts integers")}_verifyPositiveIntegers(...t){for(at of t)if(at&&(at===1/0||isNaN(at)||at%1!==0||at<0))throw new Error("This API only accepts positive integers")}};var Ep=2,Tp=1,Rp=class{activate(t){this._terminal=t}dispose(){}fit(){let t=this.proposeDimensions();if(!t||!this._terminal||isNaN(t.cols)||isNaN(t.rows))return;let e=this._terminal._core;(this._terminal.rows!==t.rows||this._terminal.cols!==t.cols)&&(e._renderService.clear(),this._terminal.resize(t.cols,t.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let t=this._terminal._core._renderService.dimensions;if(t.css.cell.width===0||t.css.cell.height===0)return;let e=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,s=window.getComputedStyle(this._terminal.element.parentElement),i=parseInt(s.getPropertyValue("height")),r=Math.max(0,parseInt(s.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),a={top:parseInt(n.getPropertyValue("padding-top")),bottom:parseInt(n.getPropertyValue("padding-bottom")),right:parseInt(n.getPropertyValue("padding-right")),left:parseInt(n.getPropertyValue("padding-left"))},l=a.top+a.bottom,h=a.right+a.left,c=i-l,d=r-h-e;return{cols:Math.max(Ep,Math.floor(d/t.css.cell.width)),rows:Math.max(Tp,Math.floor(c/t.css.cell.height))}}};function Rl({source:t,onReady:e,onSelectionChange:s,className:i}){const r=B.useRef(null),n=B.useRef(null),a=B.useRef(s);a.current=s;const l=fs(),h=B.useRef(t);return h.current=t,tf((c,d)=>{c===h.current&&n.current?.write(d)}),B.useEffect(()=>{const c=r.current;if(!c)return;const d=getComputedStyle(document.documentElement),u=x=>d.getPropertyValue(x).trim()||void 0,f=new jp({allowTransparency:!1,fontFamily:u("--font-mono")||"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",fontSize:12.5,lineHeight:1.5,scrollback:5e3,cursorBlink:!1,disableStdin:!0,theme:{background:u("--sidebar")||u("--card")||u("--background")||"#1e1e1e",cursor:"transparent",foreground:u("--foreground")||"#d4d4d4",selectionBackground:u("--accent"),selectionForeground:u("--accent-foreground"),black:u("--muted"),red:u("--destructive"),green:u("--success"),yellow:u("--warning"),blue:u("--chart-1"),magenta:u("--chart-3"),cyan:u("--chart-5"),white:u("--foreground"),brightBlack:u("--muted-foreground"),brightRed:u("--destructive"),brightGreen:u("--success"),brightYellow:u("--warning"),brightBlue:u("--chart-1"),brightMagenta:u("--chart-3"),brightCyan:u("--chart-5"),brightWhite:u("--foreground")}}),m=new Rp;f.loadAddon(m),f.open(c),m.fit();const _=l.getBuffer(t);_&&f.write(_),n.current=f,e?.(f);const p=f.onSelectionChange(()=>{const x=!!f.getSelection();a.current?.(x,()=>f.getSelection())}),g=new ResizeObserver(()=>{m.fit()});return g.observe(c),()=>{p.dispose(),g.disconnect(),n.current=null,f.dispose()}},[]),o.jsx("div",{className:Z("h-full bg-sidebar p-3",i),children:o.jsx("div",{ref:r,className:"h-full"})})}function Cs(t){const e=z.c(24);if(t.kind==="starting-now"){let c;return e[0]!==t.claimPhase||e[1]!==t.progress?(c=o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-6",children:o.jsx(ff,{progress:t.progress,claimPhase:t.claimPhase})}),e[0]=t.claimPhase,e[1]=t.progress,e[2]=c):c=e[2],c}let s,i;e[3]!==t.kind?(s=o.jsx(Dp,{kind:t.kind}),i=o.jsx(Mp,{kind:t.kind}),e[3]=t.kind,e[4]=s,e[5]=i):(s=e[4],i=e[5]);let r;e[6]!==t?(r=o.jsx(Ap,{...t}),e[6]=t,e[7]=r):r=e[7];let n;e[8]!==t.kind||e[9]!==t.progress?(n=t.kind==="errored"&&o.jsx(Ip,{progress:t.progress}),e[8]=t.kind,e[9]=t.progress,e[10]=n):n=e[10];let a;e[11]!==t.drawerOpen||e[12]!==t.kind||e[13]!==t.logSource?(a=t.kind==="errored"&&!t.drawerOpen&&o.jsx(Pp,{source:t.logSource}),e[11]=t.drawerOpen,e[12]=t.kind,e[13]=t.logSource,e[14]=a):a=e[14];let l;e[15]!==t?(l=o.jsx(Bp,{...t}),e[15]=t,e[16]=l):l=e[16];let h;return e[17]!==s||e[18]!==i||e[19]!==r||e[20]!==n||e[21]!==a||e[22]!==l?(h=o.jsx("div",{className:"flex h-full w-full items-center justify-center bg-background p-6",children:o.jsxs("div",{className:"flex w-full max-w-md flex-col items-center gap-4 text-center",children:[s,i,r,n,a,l]})}),e[17]=s,e[18]=i,e[19]=r,e[20]=n,e[21]=a,e[22]=l,e[23]=h):h=e[23],h}function Dp(t){const e=z.c(4),{kind:s}=t;switch(s){case"never-started":{let i;return e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(ea,{className:Z("size-12","text-muted-foreground/60")}),e[0]=i):i=e[0],i}case"errored":{let i;return e[1]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(nr,{className:Z("size-12","text-destructive")}),e[1]=i):i=e[1],i}case"suspended":{let i;return e[2]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(Dc,{className:Z("size-12","text-blue-500")}),e[2]=i):i=e[2],i}case"crashed":{let i;return e[3]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(nr,{className:Z("size-12","text-amber-500")}),e[3]=i):i=e[3],i}}}function Mp(t){const e=z.c(4),{kind:s}=t;let i;e[0]!==s?(i=af(s),e[0]=s,e[1]=i):i=e[1];let r;return e[2]!==i?(r=o.jsx("h3",{className:"text-lg font-medium",children:i}),e[2]=i,e[3]=r):r=e[3],r}function Ap(t){const e=z.c(5);switch(t.kind){case"never-started":{let s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"Start the sandbox to launch your dev environment."}),e[0]=s):s=e[0],s}case"errored":{let s;return e[1]!==t.errorLine?(s=o.jsx("p",{role:"alert",className:"max-w-sm break-words text-sm text-destructive/80",children:t.errorLine}),e[1]=t.errorLine,e[2]=s):s=e[2],s}case"suspended":{let s;return e[3]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"Suspended after 30 min idle to conserve resources. Resume to continue where you left off."}),e[3]=s):s=e[3],s}case"crashed":{let s;return e[4]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:"The dev server stopped responding. Open the terminal to inspect the logs and restart it."}),e[4]=s):s=e[4],s}}}function Ip(t){const e=z.c(21),{progress:s}=t;let i;e[0]!==s?(i=Xs(s,"provision"),e[0]=s,e[1]=i):i=e[1];let r;e[2]!==i?(r=o.jsx(ri,{label:"provision",status:i}),e[2]=i,e[3]=r):r=e[3];let n;e[4]!==s?(n=Xs(s,"cloning"),e[4]=s,e[5]=n):n=e[5];let a;e[6]!==n?(a=o.jsx(ri,{label:"cloning",status:n}),e[6]=n,e[7]=a):a=e[7];let l;e[8]!==s?(l=Xs(s,"install"),e[8]=s,e[9]=l):l=e[9];let h;e[10]!==l?(h=o.jsx(ri,{label:"install",status:l}),e[10]=l,e[11]=h):h=e[11];let c;e[12]!==s?(c=Xs(s,"dev"),e[12]=s,e[13]=c):c=e[13];let d;e[14]!==c?(d=o.jsx(ri,{label:"dev",status:c}),e[14]=c,e[15]=d):d=e[15];let u;return e[16]!==r||e[17]!==a||e[18]!==h||e[19]!==d?(u=o.jsx("div",{className:"flex w-full flex-col gap-1 rounded-lg border border-border bg-muted/30 px-4 py-3 text-left",children:o.jsxs("div",{className:"flex items-center justify-between gap-2 text-xs font-medium",children:[r,a,h,d]})}),e[16]=r,e[17]=a,e[18]=h,e[19]=d,e[20]=u):u=e[20],u}function ri(t){const e=z.c(12),{label:s,status:i}=t;let r;e[0]!==i?(r=of(i),e[0]=i,e[1]=r):r=e[1];const n=r,a=i==="done"?"text-emerald-600":i==="failed"?"text-destructive":i==="doing"?"text-amber-500":"text-muted-foreground/60";let l;e[2]!==a?(l=Z("flex items-center gap-1.5",a),e[2]=a,e[3]=l):l=e[3];let h;e[4]!==n?(h=o.jsx("span",{"aria-hidden":!0,children:n}),e[4]=n,e[5]=h):h=e[5];let c;e[6]!==s?(c=o.jsx("span",{children:s}),e[6]=s,e[7]=c):c=e[7];let d;return e[8]!==l||e[9]!==h||e[10]!==c?(d=o.jsxs("span",{className:l,children:[h,c]}),e[8]=l,e[9]=h,e[10]=c,e[11]=d):d=e[11],d}function Pp(t){const e=z.c(2),{source:s}=t;let i;return e[0]!==s?(i=o.jsx("div",{className:"flex w-[min(78%,560px)] flex-col items-stretch gap-1.5",children:o.jsx("div",{className:"h-32 overflow-hidden rounded-md [&_.xterm-viewport::-webkit-scrollbar]:hidden [&_.xterm-viewport]:!overflow-hidden",children:o.jsx(Rl,{source:s,className:"h-full"})})}),e[0]=s,e[1]=i):i=e[1],i}function Bp(t){const e=z.c(12);switch(t.kind){case"never-started":{let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Ft,{className:"size-4"}),e[0]=s):s=e[0];let i;return e[1]!==t.onStart?(i=o.jsxs(se,{onClick:t.onStart,className:"mt-2",children:[s," Start sandbox"]}),e[1]=t.onStart,e[2]=i):i=e[2],i}case"errored":{let s;e[3]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Ps,{className:"size-4"}),e[3]=s):s=e[3];let i;return e[4]!==t.onRetry?(i=o.jsxs(se,{size:"sm",onClick:t.onRetry,className:"mt-2",children:[s," Retry"]}),e[4]=t.onRetry,e[5]=i):i=e[5],i}case"suspended":{let s;e[6]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(Ft,{className:"size-4"}),e[6]=s):s=e[6];let i;return e[7]!==t.onResume?(i=o.jsxs(se,{onClick:t.onResume,className:"mt-2",children:[s," Resume"]}),e[7]=t.onResume,e[8]=i):i=e[8],i}case"crashed":{let s;e[9]===Symbol.for("react.memo_cache_sentinel")?(s=o.jsx(ta,{className:"size-4"}),e[9]=s):s=e[9];let i;return e[10]!==t.onOpenTerminal?(i=o.jsxs(se,{onClick:t.onOpenTerminal,className:"mt-2",children:[s," Open terminal"]}),e[10]=t.onOpenTerminal,e[11]=i):i=e[11],i}}}function Lp(t){if(!t.hasEntry||!t.isRunning||t.startedRuntime===void 0)return!1;const{liveRuntime:e,startedRuntime:s}=t;return(e.selected??null)!==(s.packageManager??null)||(e.port??null)!==(s.port??null)||(e.path??null)!==(s.path??null)}const zt="setup";function Op(t){const e=z.c(35);let s;if(e[0]!==t.scriptTabs||e[1]!==t.scripts){let m;e[3]!==t.scriptTabs?(m=_=>!t.scriptTabs.includes(_),e[3]=t.scriptTabs,e[4]=m):m=e[4],s=t.scripts.filter(m),e[0]=t.scriptTabs,e[1]=t.scripts,e[2]=s}else s=e[2];const i=s;let r;e[5]!==t?(r=()=>{t.active===zt?t.onToggle():t.onSelectTab(zt)},e[5]=t,e[6]=r):r=e[6];const n=r,a=t.active===zt;let l;e[7]!==n||e[8]!==t.open||e[9]!==a?(l=o.jsx(zp,{active:a,open:t.open,onClick:n}),e[7]=n,e[8]=t.open,e[9]=a,e[10]=l):l=e[10];let h;e[11]!==t?(h=t.scriptTabs.map(m=>o.jsx(Fp,{active:t.active===m,onClick:()=>t.onSelectTab(m),onClose:()=>t.onCloseScript(m),children:m},m)),e[11]=t,e[12]=h):h=e[12];let c;e[13]!==i||e[14]!==t.onAddScript?(c=o.jsx(Hp,{scripts:i,onRun:t.onAddScript}),e[13]=i,e[14]=t.onAddScript,e[15]=c):c=e[15];let d;e[16]!==l||e[17]!==h||e[18]!==c?(d=o.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-1 overflow-x-auto",children:[l,h,c]}),e[16]=l,e[17]=h,e[18]=c,e[19]=d):d=e[19];let u;e[20]!==t.onRestart||e[21]!==t.onResume||e[22]!==t.onRetry||e[23]!==t.onRunActiveScript||e[24]!==t.onStart||e[25]!==t.onStop||e[26]!==t.onStopActiveScript||e[27]!==t.scriptIsKilling||e[28]!==t.scriptIsRunning||e[29]!==t.showScriptControls||e[30]!==t.status?(u=t.showScriptControls?o.jsx(Wp,{isRunning:t.scriptIsRunning,isKilling:t.scriptIsKilling,onRun:t.onRunActiveScript,onStop:t.onStopActiveScript}):o.jsx($p,{status:t.status,onStart:t.onStart,onStop:t.onStop,onRestart:t.onRestart,onResume:t.onResume,onRetry:t.onRetry}),e[20]=t.onRestart,e[21]=t.onResume,e[22]=t.onRetry,e[23]=t.onRunActiveScript,e[24]=t.onStart,e[25]=t.onStop,e[26]=t.onStopActiveScript,e[27]=t.scriptIsKilling,e[28]=t.scriptIsRunning,e[29]=t.showScriptControls,e[30]=t.status,e[31]=u):u=e[31];let f;return e[32]!==d||e[33]!==u?(f=o.jsxs("div",{className:"flex h-10 shrink-0 items-center gap-1 border-t border-b border-border bg-muted/60 px-3",children:[d,u]}),e[32]=d,e[33]=u,e[34]=f):f=e[34],f}function zp(t){const e=z.c(8),{active:s,open:i,onClick:r}=t,n=s&&i,a=s&&i,l=s?"border-border bg-background font-medium text-foreground shadow-sm":"border-transparent text-muted-foreground hover:bg-background/50 hover:text-foreground";let h;e[0]!==l?(h=Z("flex h-7 items-center gap-1.5 rounded-md border px-2.5 text-xs",l),e[0]=l,e[1]=h):h=e[1];let c;e[2]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx(ta,{className:"size-3.5"}),e[2]=c):c=e[2];let d;return e[3]!==r||e[4]!==n||e[5]!==a||e[6]!==h?(d=o.jsxs("button",{type:"button","aria-pressed":n,"aria-expanded":a,onClick:r,className:h,children:[c,"sandbox"]}),e[3]=r,e[4]=n,e[5]=a,e[6]=h,e[7]=d):d=e[7],d}function $p(t){const e=z.c(24),{status:s,onStart:i,onStop:r,onRestart:n,onResume:a,onRetry:l}=t;if(s==="idle"&&i){let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Ft,{className:"size-3.5"}),e[0]=h):h=e[0];let c;return e[1]!==i?(c=o.jsxs(se,{variant:"outline",size:"sm",onClick:i,children:[h," Start"]}),e[1]=i,e[2]=c):c=e[2],c}if(s==="suspended"&&a){let h;e[3]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Ft,{className:"size-3.5"}),e[3]=h):h=e[3];let c;return e[4]!==a?(c=o.jsxs(se,{variant:"outline",size:"sm",onClick:a,children:[h," Resume"]}),e[4]=a,e[5]=c):c=e[5],c}if(s==="errored"&&l){let h;e[6]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Ps,{className:"size-3.5"}),e[6]=h):h=e[6];let c;return e[7]!==l?(c=o.jsxs(se,{variant:"outline",size:"sm",onClick:l,children:[h," Retry"]}),e[7]=l,e[8]=c):c=e[8],c}if(s==="starting"||s==="running"){const h=s==="running"&&!!n,c=h?"rounded-r-none border-r-0":void 0;let d;e[9]!==c?(d=Z(c),e[9]=c,e[10]=d):d=e[10];let u;e[11]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(sa,{className:"size-3.5"}),e[11]=u):u=e[11];let f;e[12]!==r||e[13]!==d?(f=o.jsx(Te,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",onClick:r,className:d,children:[u," Stop"]})}),e[12]=r,e[13]=d,e[14]=f):f=e[14];let m;e[15]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(Re,{children:"Stop sandbox"}),e[15]=m):m=e[15];let _;e[16]!==f?(_=o.jsxs(De,{children:[f,m]}),e[16]=f,e[17]=_):_=e[17];let p;e[18]!==n||e[19]!==h?(p=h&&o.jsxs(ki,{children:[o.jsx(Ni,{asChild:!0,children:o.jsx(se,{variant:"outline",size:"sm",className:"rounded-l-none px-1",children:o.jsx(ja,{className:"size-3"})})}),o.jsx(ji,{align:"end",children:o.jsxs(Lt,{onClick:n,children:[o.jsx(Ps,{className:"size-3.5"})," Restart"]})})]}),e[18]=n,e[19]=h,e[20]=p):p=e[20];let g;return e[21]!==_||e[22]!==p?(g=o.jsxs("div",{className:"flex items-center",children:[_,p]}),e[21]=_,e[22]=p,e[23]=g):g=e[23],g}return null}function Fp(t){const e=z.c(16),{active:s,onClick:i,onClose:r,children:n}=t,a=s?"border-border bg-background shadow-sm":"border-transparent hover:bg-background/50";let l;e[0]!==a?(l=Z("flex h-7 items-center rounded-md border text-xs",a),e[0]=a,e[1]=l):l=e[1];const h=r?"pl-2.5 pr-1":"px-2.5",c=s?"font-medium text-foreground":"text-muted-foreground hover:text-foreground";let d;e[2]!==h||e[3]!==c?(d=Z("flex h-full items-center",h,c),e[2]=h,e[3]=c,e[4]=d):d=e[4];let u;e[5]!==n||e[6]!==i||e[7]!==d?(u=o.jsx("button",{type:"button",onClick:i,className:d,children:n}),e[5]=n,e[6]=i,e[7]=d,e[8]=u):u=e[8];let f;e[9]!==n||e[10]!==r?(f=r&&o.jsx("button",{type:"button","aria-label":`Close ${n}`,onClick:r,className:"pr-1.5 text-muted-foreground hover:text-foreground",children:o.jsx(yh,{className:"size-3"})}),e[9]=n,e[10]=r,e[11]=f):f=e[11];let m;return e[12]!==l||e[13]!==u||e[14]!==f?(m=o.jsxs("div",{className:l,children:[u,f]}),e[12]=l,e[13]=u,e[14]=f,e[15]=m):m=e[15],m}function Hp(t){const e=z.c(10),{scripts:s,onRun:i}=t,[r,n]=B.useState(!1);let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(ls,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"sm","aria-label":"Run script",children:o.jsx(ns,{className:"size-3.5"})})})}),o.jsx(Re,{children:"Run script"})]}),e[0]=a):a=e[0];let l;e[1]===Symbol.for("react.memo_cache_sentinel")?(l=o.jsx("div",{className:"px-2 py-1 text-[10px] uppercase tracking-wide text-muted-foreground",children:"run a script"}),e[1]=l):l=e[1];let h;e[2]!==i||e[3]!==s?(h=s.length===0?o.jsx("div",{className:"px-2 py-2 text-xs text-muted-foreground",children:"No scripts found"}):s.map(u=>o.jsxs("button",{type:"button",onClick:()=>{n(!1),i(u)},className:"w-full rounded-md px-2 py-1.5 text-left text-xs hover:bg-accent",children:["▸ ",u]},u)),e[2]=i,e[3]=s,e[4]=h):h=e[4];let c;e[5]!==h?(c=o.jsxs(cs,{align:"start",className:"p-1 w-56",children:[l,h]}),e[5]=h,e[6]=c):c=e[6];let d;return e[7]!==r||e[8]!==c?(d=o.jsxs(hs,{open:r,onOpenChange:n,children:[a,c]}),e[7]=r,e[8]=c,e[9]=d):d=e[9],d}function Wp(t){const e=z.c(13),{isRunning:s,isKilling:i,onRun:r,onStop:n}=t;if(i){let d;return e[0]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsxs(se,{variant:"outline",size:"sm",disabled:!0,children:[o.jsx($e,{className:"size-3.5 animate-spin"})," Stopping…"]}),e[0]=d):d=e[0],d}if(!s){let d;e[1]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(Ft,{className:"size-3.5"}),e[1]=d):d=e[1];let u;e[2]!==r?(u=o.jsx(Te,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",onClick:r,children:[d," Run"]})}),e[2]=r,e[3]=u):u=e[3];let f;e[4]===Symbol.for("react.memo_cache_sentinel")?(f=o.jsx(Re,{children:"Start process"}),e[4]=f):f=e[4];let m;return e[5]!==u?(m=o.jsxs(De,{children:[u,f]}),e[5]=u,e[6]=m):m=e[6],m}let a;e[7]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsx(sa,{className:"size-3.5"}),e[7]=a):a=e[7];let l;e[8]!==n?(l=o.jsx(Te,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",onClick:n,children:[a," Stop"]})}),e[8]=n,e[9]=l):l=e[9];let h;e[10]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(Re,{children:"Stop process"}),e[10]=h):h=e[10];let c;return e[11]!==l?(c=o.jsxs(De,{children:[l,h]}),e[11]=l,e[12]=c):c=e[12],c}const Up=["dev","start"];function Kp(t){const e=fs(),[s,i]=B.useState(zt),[r,n]=B.useState([]),[a,l]=B.useState(new Set),h=B.useRef(!1);if(!h.current&&e.scripts.length>0){const v=Up.find(y=>e.scripts.includes(y));v&&(h.current=!0,n(y=>y.includes(v)?y:[...y,v]),i(v))}if(a.size>0){let v=!1;const y=new Set(a);for(const k of a)e.activeProcesses.includes(k)||(y.delete(k),v=!0);v&&l(y)}const c=()=>t.onOpenChange(!t.open),d=v=>{i(v),t.open||t.onOpenChange(!0)},u=v=>{if(!t.virtualMcpId||!t.branch)return Promise.resolve(null);const y=`?virtualMcpId=${encodeURIComponent(t.virtualMcpId)}&branch=${encodeURIComponent(t.branch)}`;return fetch(`/api/${encodeURIComponent(t.orgSlug)}/vm-exec/exec/${encodeURIComponent(v)}${y}`,{method:"POST"})},f=v=>{if(!t.virtualMcpId||!t.branch)return Promise.resolve(null);const y=`?virtualMcpId=${encodeURIComponent(t.virtualMcpId)}&branch=${encodeURIComponent(t.branch)}`;return fetch(`/api/${encodeURIComponent(t.orgSlug)}/vm-exec/kill/${encodeURIComponent(v)}${y}`,{method:"POST"})},m=async v=>{n(y=>y.includes(v)?y:[...y,v]),i(v),t.onOpenChange(!0);try{const y=await u(v);if(y===null)return;if(!y.ok)throw new Error(`Exec failed: ${y.statusText}`)}catch{fe.error("Failed to run "+v)}},_=async v=>{await f(v),n(y=>y.filter(k=>k!==v)),s===v&&i(zt)},p=async()=>{const v=e.activeProcesses.includes(s);try{const y=await u(s);if(y===null)return;if(!y.ok)throw new Error(`Exec failed: ${y.statusText}`)}catch{fe.error((v?"Failed to restart ":"Failed to run ")+s)}},g=async()=>{if(!a.has(s)){l(v=>new Set(v).add(s));try{const v=await f(s);if(v===null){l(y=>{const k=new Set(y);return k.delete(s),k});return}if(!v.ok)throw new Error(`Kill failed: ${v.statusText}`)}catch{l(v=>{const y=new Set(v);return y.delete(s),y}),fe.error("Failed to stop "+s)}}},x=s!==zt&&r.includes(s),b=x&&e.activeProcesses.includes(s),S=x&&a.has(s);return o.jsxs("div",{className:"flex shrink-0 flex-col",style:{height:t.open?"50%":"auto"},children:[o.jsx(Op,{status:t.status,open:t.open,onToggle:c,onStart:t.status==="idle"?t.onStart:void 0,onStop:t.status==="running"||t.status==="starting"?t.onStop:void 0,onRestart:t.status==="running"?t.onRestart:void 0,onResume:t.status==="suspended"?t.onResume:void 0,onRetry:t.status==="errored"?t.onRetry:void 0,scripts:t.scripts,active:s,scriptTabs:r,onSelectTab:d,onAddScript:m,onCloseScript:_,showScriptControls:x,scriptIsRunning:b,scriptIsKilling:S,onRunActiveScript:p,onStopActiveScript:g}),t.open&&o.jsx("div",{className:"flex-1 overflow-hidden",children:o.jsx(Vp,{vmId:t.vmId,active:s,hasData:e.hasData(s),onRunActive:p})})]})}function Vp(t){const e=z.c(10),{vmId:s,active:i,hasData:r,onRunActive:n}=t;if(!s)return null;if(i===zt||r){let d;return e[0]!==i?(d=o.jsx(Rl,{source:i,className:"h-full"},i),e[0]=i,e[1]=d):d=e[1],d}let a;e[2]!==i?(a=o.jsxs("p",{children:['Script "',o.jsx("span",{className:"font-mono text-foreground",children:i}),'" not running']}),e[2]=i,e[3]=a):a=e[3];let l;e[4]===Symbol.for("react.memo_cache_sentinel")?(l=o.jsx(Ft,{className:"size-3.5"}),e[4]=l):l=e[4];let h;e[5]!==n?(h=o.jsxs("button",{type:"button",onClick:n,className:"flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs text-foreground hover:bg-accent",children:[l," Run"]}),e[5]=n,e[6]=h):h=e[6];let c;return e[7]!==a||e[8]!==h?(c=o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3 text-sm text-muted-foreground",children:[a,h]}),e[7]=a,e[8]=h,e[9]=c):c=e[9],c}const Dl=t=>`preview-drawer:${t}`;function qp(t){try{const e=localStorage.getItem(Dl(t));return e?!!JSON.parse(e).open:!1}catch{return!1}}function Gp(t,e){try{localStorage.setItem(Dl(t),JSON.stringify({open:e}))}catch{}}function Yp(t,e){return t.kind==="errored"?"errored":t.kind==="suspended"?"suspended":t.kind==="starting-now"||e?"starting":t.kind==="iframe"||t.kind==="no-html"||t.kind==="crashed"?"running":"idle"}const Xp=[{value:"preview",icon:o.jsx(ea,{size:14}),tooltip:"Interactive"},{value:"visual",icon:o.jsx(ra,{size:14}),tooltip:"Visual Editor"}];function Jp(){const t=Fg(),{data:e}=Yr.useSession(),{taskId:s,currentBranch:i,setCurrentTaskBranch:r}=xt(),[n,a]=B.useState("preview"),[l,h]=B.useState(null),c=B.useRef(null),d=e?.user?.id,u=t?.entity?.metadata,f=d&&i?u?.vmMap?.[d]?.[i]:void 0,m=f?.previewUrl??null,_=fs();sf(()=>{const oe=c.current;oe&&(oe.src=oe.src)});const p=_.lifecycle.phase,g=B.useRef({url:"",value:!1});m&&g.current.url!==m&&(g.current={url:m,value:!1}),_.lifecycle.phase==="running"&&(g.current.value=_.lifecycle.htmlSupport);const x=g.current.value,b=p==="running"?"online":p==="crashed"?"offline":"booting",S=_.suspended,v=_.status.state==="paused",y=t?.entity?.id??null,{org:k}=ge(),N=He({connectionId:Vt,orgId:t?.entity?.organization_id??"",orgSlug:k.slug}),j=Da(N),T=j.error?.message??null,I=cd(y??void 0,i??void 0),D=B.useRef(null),M=B.useRef(null),w=_.phase,R=nf({claimPhase:w,lifecycle:_.lifecycle}),E=!!y&&!!i&&ni.isStopped(y,i),C=rf({previewUrl:m,status:b,htmlSupport:x,suspended:S,appPaused:v,vmStartPending:I,lastStartError:T,claimPhase:w,notFound:_.notFound,userStopped:E}),P={selected:u?.runtime?.selected??null,port:u?.runtime?.port??null,path:u?.runtime?.path??null},A=f?.startedWith,$=A?{packageManager:A.packageManager??null,port:A.port??null,path:A.path??null}:void 0,K=C.kind==="iframe"||C.kind==="no-html",q=Lp({liveRuntime:P,startedRuntime:$,hasEntry:!!f,isRunning:K}),F=oe=>{if(!y)return;const ps={virtualMcpId:y};i&&(ps.branch=i),j.mutate(ps,{onSuccess:wt=>{wt?.branch&&!i&&r(wt.branch)},onError:wt=>{console.error(`[preview] ${oe} VM_START failed`,wt)}})},Y=B.useRef(F);Y.current=F,s&&f&&D.current!==s&&(D.current=s);const J=!!s&&!!y&&!!d&&!!i&&!f&&!T&&!E&&!j.isPending&&D.current!==s;B.useEffect(()=>{!J||!s||(D.current=s,Y.current("auto-start"))},[J,s,E]);const G=_.notFound?f?.vmId??null:null;B.useEffect(()=>{!G||!y||T||j.isPending||M.current!==G&&(i&&ni.isStopped(y,i)||(M.current=G,Y.current("self-heal")))},[G,y,T,j.isPending,i]);const H=()=>{D.current=null,M.current=null,j.reset(),Y.current("auto-start")},Q=as(),ie=y??"__no-vmcp__",[L,ee]=B.useState(null),te=B.useRef(null);te.current!==ie&&(te.current=ie,ee(qp(ie)));const W=C.kind==="never-started"?!1:L??!1,U=oe=>{ee(oe),Gp(ie,oe)},re=()=>U(!0),de=async()=>{if(!y)return;const oe=i;if(oe){ni.mark(y,oe);try{await N.callTool({name:"VM_DELETE",arguments:{virtualMcpId:y,branch:oe}})}catch{}Uo(Q)}},ce=async()=>{await de(),Y.current("auto-start")};B.useEffect(()=>{if(!m)return;let oe;try{oe=new URL(m,window.location.href).origin}catch{return}const ps=wt=>{if(wt.origin!==oe||wt.data?.type!=="visual-editor::element-clicked")return;const vn=Hu.safeParse(wt.data.payload);vn.success&&h(vn.data)};return window.addEventListener("message",ps),()=>window.removeEventListener("message",ps)},[m]);const he=()=>{const oe=c.current?.contentWindow;oe&&oe.postMessage({type:"visual-editor::activate",script:Wu},"*")},_e=()=>{const oe=c.current?.contentWindow;oe&&oe.postMessage({type:"visual-editor::deactivate"},"*")},rt=oe=>{a(oe),h(null),oe==="visual"?he():_e()},Xe=()=>{if(!c.current)return;const oe=c.current;oe.src=oe.src},st=()=>{if(!c.current||!m)return;const oe=m.includes("?")?"&":"?";c.current.src=`${m}${oe}_r=${Date.now()}`},yt=()=>{const oe=c.current?.contentWindow?.location?.href??m;oe&&navigator.clipboard.writeText(oe)},Oe=(()=>{if(!m)return"No server running";try{const oe=new URL(m);return`${oe.host}${oe.pathname==="/"?"":oe.pathname}`}catch{return m}})();return o.jsxs("div",{className:"flex flex-col w-full h-full",children:[q&&o.jsxs("div",{className:"flex h-9 shrink-0 items-center justify-between gap-3 border-b border-amber-500/40 bg-amber-500/10 px-4 text-xs",children:[o.jsx("span",{className:"text-amber-700",children:"ⓘ Settings changed — restart to apply"}),o.jsxs(se,{size:"sm",onClick:ce,children:[o.jsx(Ps,{className:"size-3.5"})," Restart now"]})]}),C.kind==="iframe"&&o.jsxs("div",{className:"flex h-12 shrink-0 items-center gap-4 border-b border-border/60 px-3 md:px-4",children:[x&&o.jsx(Sh,{value:n,onValueChange:rt,options:Xp,size:"sm",className:"shrink-0 bg-foreground/[0.045]"}),o.jsxs("div",{className:"flex min-w-0 flex-1 items-center gap-0.5",children:[o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:()=>c.current?.contentWindow?.history.back(),children:o.jsx(Ea,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Back"})]}),o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:()=>c.current?.contentWindow?.history.forward(),children:o.jsx(lc,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Forward"})]}),o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:Xe,children:o.jsx(Ps,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Refresh"})]}),o.jsx("div",{className:"flex h-8 min-w-0 flex-1 items-center rounded-md bg-background px-2 transition-colors duration-200 hover:bg-accent",children:o.jsx("span",{className:"min-w-0 flex-1 truncate text-[12px] text-foreground/88",children:Oe})})]}),o.jsxs("div",{className:"flex shrink-0 items-center gap-0.5",children:[o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",onClick:()=>window.open(C.previewUrl,"_blank","noopener"),children:o.jsx(us,{size:14})})}),o.jsx(Re,{side:"bottom",children:"Open in new tab"})]}),o.jsxs(ki,{children:[o.jsx(Ni,{asChild:!0,children:o.jsx(se,{variant:"ghost",size:"icon",children:o.jsx(ia,{size:14})})}),o.jsxs(ji,{align:"end",children:[o.jsx(Lt,{onClick:st,children:"Hard Reload"}),o.jsx(Lt,{onClick:yt,children:"Copy Current URL"})]})]})]})]}),o.jsxs("div",{className:"flex-1 relative overflow-hidden",children:[C.kind==="never-started"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"never-started",onStart:()=>{U(!1),F("auto-start")}})}),C.kind==="starting-now"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"starting-now",progress:R,claimPhase:w})}),C.kind==="errored"&&o.jsx("div",{className:"absolute inset-0 z-40",children:o.jsx(Cs,{kind:"errored",progress:R,logSource:"setup",errorLine:C.error.split(`
180
+ `)[0]??"Failed to start",onRetry:H,drawerOpen:W})}),C.kind==="suspended"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"suspended",onResume:H})}),C.kind==="crashed"&&o.jsx("div",{className:"absolute inset-0 z-30",children:o.jsx(Cs,{kind:"crashed",onOpenTerminal:re})}),C.kind==="no-html"&&o.jsxs("div",{className:"absolute inset-0 z-30 flex flex-col items-center justify-center gap-4 bg-background",children:[o.jsx(Tn,{size:48,className:"text-muted-foreground/40"}),o.jsx("h3",{className:"text-lg font-medium",children:"No web page at this URL"}),o.jsx("p",{className:"text-sm text-muted-foreground text-center max-w-sm",children:"The server is running, but doesn't serve a web page at /. This preview only renders web pages."}),o.jsxs(se,{onClick:re,children:[o.jsx(Tn,{size:14}),"View Logs"]})]}),n==="visual"&&!l&&o.jsxs("div",{className:"absolute top-2 left-1/2 -translate-x-1/2 z-20 flex items-center gap-1.5 rounded-full border border-violet-400/40 bg-violet-500/90 px-3 py-1 text-xs font-medium text-white shadow-md backdrop-blur-sm pointer-events-none select-none",children:[o.jsx(ra,{size:12}),"Click any element to ask the AI"]}),n==="visual"&&l&&o.jsx(Vu,{element:l,onDismiss:()=>h(null)}),C.kind==="iframe"&&o.jsx("iframe",{ref:c,src:C.previewUrl,className:"w-full h-full border-0",title:"Dev Server Preview",onLoad:()=>{be("vm_preview_loaded",{view_mode:n,vm_id:f?.vmId??null}),n==="visual"&&he()}},C.previewUrl)]}),o.jsx(Kp,{vmId:f?.vmId??null,orgSlug:k.slug,virtualMcpId:y,branch:i,status:Yp(C,I),scripts:_.scripts,open:W,onOpenChange:U,onStart:()=>F("auto-start"),onStop:de,onRestart:ce,onResume:H,onRetry:H},f?.vmId??"no-vm")]})}function Zp(t){const e=z.c(2),{virtualMcpId:s}=t,i=vt(s);if(!(i?$t(i):null)){let a;return e[0]===Symbol.for("react.memo_cache_sentinel")?(a=o.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-2 text-center text-sm text-muted-foreground p-6",children:[o.jsx(Jr,{size:24,className:"text-muted-foreground/60"}),o.jsx("div",{children:"No repository connected."}),o.jsx("div",{className:"text-xs text-muted-foreground/80",children:"Connect a GitHub repository from the Connections tab to enable Preview."})]}),e[0]=a):a=e[0],a}let n;return e[1]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx(Jp,{}),e[1]=n):n=e[1],n}function As(t){const e=t.trim().split(/\s+/);return e.length!==5?!1:e.every(s=>/^[\d*/,-]+$/.test(s))}function Qp(t){if(!t)return"Unknown schedule";const e=t.trim();if(e==="* * * * *")return"Every minute";if(e==="0 * * * *")return"Every hour";if(e==="0 0 * * *")return"Every day";if(e==="0 0 * * 1")return"Every week";const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return`Every ${s[1]} minutes`;const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return`Every ${i[1]} hours`;const r=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(r){const l=parseInt(r[1]??"1");return l%7===0?`Every ${l/7} weeks`:`Every ${l} days`}const n=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+\*$/);if(n){const l=(n[2]??"0").padStart(2,"0"),h=(n[1]??"0").padStart(2,"0");return`Every day at ${l}:${h} UTC`}const a=e.match(/^(\d+)\s+(\d+)\s+\*\s+\*\s+(\d)$/);if(a){const h=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][parseInt(a[3]??"0")]??"day",c=(a[2]??"0").padStart(2,"0"),d=(a[1]??"0").padStart(2,"0");return`Every ${h} at ${c}:${d} UTC`}return t}function eg(t,e){const s=Math.max(1,t);switch(e){case"minutes":return s===1?"* * * * *":`*/${s} * * * *`;case"hours":return s===1?"0 * * * *":`0 */${s} * * *`;case"days":return s===1?"0 0 * * *":`0 0 */${s} * *`;case"weeks":return s===1?"0 0 * * 1":`0 0 */${s*7} * *`}}function tg(t){const e=t.trim();if(e==="* * * * *")return{count:1,unit:"minutes"};if(e==="0 * * * *")return{count:1,unit:"hours"};if(e==="0 0 * * *")return{count:1,unit:"days"};if(e==="0 0 * * 1")return{count:1,unit:"weeks"};const s=e.match(/^\*\/(\d+)\s+\*\s+\*\s+\*\s+\*$/);if(s)return{count:parseInt(s[1]),unit:"minutes"};const i=e.match(/^0\s+\*\/(\d+)\s+\*\s+\*\s+\*$/);if(i)return{count:parseInt(i[1]),unit:"hours"};const r=e.match(/^0\s+0\s+\*\/(\d+)\s+\*\s+\*$/);if(r){const n=parseInt(r[1]);return n%7===0?{count:n/7,unit:"weeks"}:{count:n,unit:"days"}}return null}function sg(t,e){return e===1?{minutes:"minute",hours:"hour",days:"day",weeks:"week"}[t]??t:t}const ig=[{label:"Minute",cron:"* * * * *"},{label:"Hour",cron:"0 * * * *"},{label:"Day",cron:"0 0 * * *"},{label:"Week",cron:"0 0 * * 1"}];function rg(t){const e=z.c(33),{automationId:s,open:i,onOpenChange:r,onCustomSelect:n,onEventSelect:a}=t,{triggerAdd:l}=Hs(),[h,c]=B.useState(!1),d=i??h;let u;e[0]!==r?(u=D=>{r?r(D):c(D)},e[0]=r,e[1]=u):u=e[1];const f=u;let m;e[2]!==l||e[3]!==s||e[4]!==f?(m=async D=>{try{await l.mutateAsync({automation_id:s,type:"cron",cron_expression:D}),fe.success("Starter added"),f(!1)}catch(M){const w=M,R=w instanceof Error?w.message:"Failed to add starter";fe.error(R)}},e[2]=l,e[3]=s,e[4]=f,e[5]=m):m=e[5];const _=m;let p;e[6]===Symbol.for("react.memo_cache_sentinel")?(p=o.jsx(Ni,{asChild:!0,children:o.jsxs(se,{variant:"outline",size:"sm",children:[o.jsx(ns,{size:14}),"Add Starter"]})}),e[6]=p):p=e[6];let g;e[7]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsxs(vh,{className:"gap-2.5",children:[o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),"Every..."]}),e[7]=g):g=e[7];let x;e[8]!==l||e[9]!==_?(x=ig.map(D=>o.jsxs(Lt,{className:"gap-2.5",onSelect:()=>_(D.cron),disabled:l.isPending,children:[o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),"Every ",D.label]},D.cron)),e[8]=l,e[9]=_,e[10]=x):x=e[10];let b;e[11]!==x?(b=o.jsxs(xh,{children:[g,o.jsx(bh,{className:"w-[160px]",children:x})]}),e[11]=x,e[12]=b):b=e[12];let S;e[13]!==f||e[14]!==n?(S=()=>{f(!1),n?.()},e[13]=f,e[14]=n,e[15]=S):S=e[15];let v;e[16]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),e[16]=v):v=e[16];let y;e[17]!==S?(y=o.jsxs(Lt,{className:"gap-2.5",onSelect:S,children:[v,"Custom (cron)"]}),e[17]=S,e[18]=y):y=e[18];let k;e[19]!==f||e[20]!==a?(k=()=>{f(!1),a?.()},e[19]=f,e[20]=a,e[21]=k):k=e[21];let N;e[22]===Symbol.for("react.memo_cache_sentinel")?(N=o.jsx(Bs,{size:14,className:"text-muted-foreground shrink-0"}),e[22]=N):N=e[22];let j;e[23]!==k?(j=o.jsxs(Lt,{className:"gap-2.5",onSelect:k,children:[N,"Event"]}),e[23]=k,e[24]=j):j=e[24];let T;e[25]!==j||e[26]!==b||e[27]!==y?(T=o.jsxs(ji,{align:"end",className:"w-[200px]",children:[b,y,j]}),e[25]=j,e[26]=b,e[27]=y,e[28]=T):T=e[28];let I;return e[29]!==f||e[30]!==d||e[31]!==T?(I=o.jsxs(ki,{open:d,onOpenChange:f,children:[p,T]}),e[29]=f,e[30]=d,e[31]=T,e[32]=I):I=e[32],I}function ng(t){const e=z.c(60),{trigger:s,automationId:i,connectionName:r}=t,{triggerAdd:n,triggerRemove:a}=Hs(),[l,h]=B.useState(!1);let c;e[0]!==s.cron_expression?(c=s.cron_expression?tg(s.cron_expression):null,e[0]=s.cron_expression,e[1]=c):c=e[1];const d=c,[u,f]=B.useState(d?.count??1),[m,_]=B.useState(!1),[p,g]=B.useState(s.cron_expression??""),x=a.isPending||n.isPending,b=s.type==="cron";let S;e[2]!==i||e[3]!==a||e[4]!==s.id?(S=async()=>{try{await a.mutateAsync({trigger_id:s.id,automation_id:i}),fe.success("Starter removed")}catch{fe.error("Failed to remove starter")}h(!1)},e[2]=i,e[3]=a,e[4]=s.id,e[5]=S):S=e[5];const v=S;let y;e[6]!==n||e[7]!==i||e[8]!==p||e[9]!==a||e[10]!==s.cron_expression||e[11]!==s.id?(y=async()=>{const q=p.trim();if(!q||!As(q)||q===s.cron_expression){_(!1),g(s.cron_expression??"");return}try{await n.mutateAsync({automation_id:i,type:"cron",cron_expression:q}),await a.mutateAsync({trigger_id:s.id,automation_id:i}),_(!1)}catch{fe.error("Failed to update starter"),g(s.cron_expression??""),_(!1)}},e[6]=n,e[7]=i,e[8]=p,e[9]=a,e[10]=s.cron_expression,e[11]=s.id,e[12]=y):y=e[12];const k=y;let N;e[13]!==n||e[14]!==i||e[15]!==d||e[16]!==a||e[17]!==s.cron_expression||e[18]!==s.id?(N=async q=>{if(!d)return;const F=Math.max(1,q),Y=eg(F,d.unit);if(Y!==s.cron_expression)try{await n.mutateAsync({automation_id:i,type:"cron",cron_expression:Y}),await a.mutateAsync({trigger_id:s.id,automation_id:i})}catch{fe.error("Failed to update starter"),f(d.count)}},e[13]=n,e[14]=i,e[15]=d,e[16]=a,e[17]=s.cron_expression,e[18]=s.id,e[19]=N):N=e[19];const j=N;let T;e[20]!==b?(T=b?o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}):o.jsx(Bs,{size:14,className:"text-muted-foreground shrink-0"}),e[20]=b,e[21]=T):T=e[21];let I;e[22]!==r||e[23]!==u||e[24]!==p||e[25]!==j||e[26]!==k||e[27]!==d||e[28]!==b||e[29]!==m||e[30]!==x||e[31]!==s.cron_expression||e[32]!==s.event_type||e[33]!==s.params?(I=d&&b?o.jsxs(o.Fragment,{children:[o.jsx("span",{className:"text-sm text-muted-foreground",children:"Every"}),o.jsx("input",{type:"number",min:1,value:u,onChange:q=>f(parseInt(q.target.value)||1),onBlur:()=>j(u),onKeyDown:q=>{q.key==="Enter"&&q.target.blur(),q.key==="Escape"&&f(d.count)},disabled:x,className:"w-12 text-center text-sm h-7 border border-border rounded-md bg-background px-1 focus:outline-none focus:ring-1 focus:ring-ring"}),o.jsx("span",{className:"text-sm",children:sg(d.unit,u)})]}):b&&m?o.jsxs(o.Fragment,{children:[o.jsx("input",{type:"text",value:p,onChange:q=>g(q.target.value),onBlur:k,onKeyDown:q=>{q.key==="Enter"&&q.target.blur(),q.key==="Escape"&&(_(!1),g(s.cron_expression??""))},className:"flex-1 text-sm font-mono bg-transparent outline-none",autoFocus:!0}),p&&!As(p)&&o.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"})]}):o.jsxs("div",{className:"flex flex-col gap-0.5 flex-1 min-w-0",children:[o.jsx("span",{className:"text-sm font-mono text-xs text-muted-foreground truncate",children:b?Qp(s.cron_expression??""):`${s.event_type}${r?` · ${r}`:""}`}),!b&&s.params&&Object.keys(s.params).length>0&&o.jsx("span",{className:"text-xs text-muted-foreground/60 truncate",children:Object.entries(s.params).map(og).join(", ")})]}),e[22]=r,e[23]=u,e[24]=p,e[25]=j,e[26]=k,e[27]=d,e[28]=b,e[29]=m,e[30]=x,e[31]=s.cron_expression,e[32]=s.event_type,e[33]=s.params,e[34]=I):I=e[34];let D;e[35]!==x?(D=x&&o.jsx($e,{size:13,className:"animate-spin text-muted-foreground"}),e[35]=x,e[36]=D):D=e[36];let M;e[37]!==d||e[38]!==b||e[39]!==m||e[40]!==s.cron_expression?(M=b&&!d&&!m&&o.jsx(se,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>{g(s.cron_expression??""),_(!0)},children:o.jsx(oh,{size:13,className:"text-muted-foreground"})}),e[37]=d,e[38]=b,e[39]=m,e[40]=s.cron_expression,e[41]=M):M=e[41];let w;e[42]===Symbol.for("react.memo_cache_sentinel")?(w=o.jsx(se,{variant:"ghost",size:"sm",className:"h-7 w-7 p-0 opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>h(!0),children:o.jsx(rs,{size:13,className:"text-muted-foreground"})}),e[42]=w):w=e[42];let R;e[43]!==D||e[44]!==M?(R=o.jsxs("div",{className:"ml-auto flex items-center gap-1",children:[D,M,w]}),e[43]=D,e[44]=M,e[45]=R):R=e[45];let E;e[46]!==R||e[47]!==T||e[48]!==I?(E=o.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[T,I,R]}),e[46]=R,e[47]=T,e[48]=I,e[49]=E):E=e[49];let C;e[50]===Symbol.for("react.memo_cache_sentinel")?(C=o.jsxs(_a,{children:[o.jsx(pa,{children:"Remove Starter"}),o.jsx(ga,{children:"Are you sure you want to remove this starter?"})]}),e[50]=C):C=e[50];let P;e[51]===Symbol.for("react.memo_cache_sentinel")?(P=o.jsx(xa,{children:"Cancel"}),e[51]=P):P=e[51];let A;e[52]!==v?(A=o.jsxs(ma,{children:[C,o.jsxs(va,{children:[P,o.jsx(ba,{onClick:v,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),e[52]=v,e[53]=A):A=e[53];let $;e[54]!==l||e[55]!==A?($=o.jsx(fa,{open:l,onOpenChange:h,children:A}),e[54]=l,e[55]=A,e[56]=$):$=e[56];let K;return e[57]!==E||e[58]!==$?(K=o.jsxs(o.Fragment,{children:[E,$]}),e[57]=E,e[58]=$,e[59]=K):K=e[59],K}function og(t){const[e,s]=t;return`${e}: ${s}`}function ag(t,e){switch(e.type){case"accumulate":{const s=t??{start:e.now,fields:new Set,saveCount:0},i=new Set(s.fields);for(const r of e.fields)i.add(r);return{...s,fields:i,saveCount:s.saveCount+1}}case"reset":return null}}function lg(t){const e=z.c(55),{automationId:s,onDone:i}=t;let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r={binding:"TRIGGER"},e[0]=r):r=e[0];const n=wi(r),[a,l]=B.useState(),[h,c]=B.useState();let d;e[1]===Symbol.for("react.memo_cache_sentinel")?(d={},e[1]=d):d=e[1];const[u,f]=B.useState(d),{triggerAdd:m}=Hs(),{data:_,isLoading:p}=wh(a);let g,x,b,S,v,y;if(e[2]!==m||e[3]!==s||e[4]!==a||e[5]!==h||e[6]!==p||e[7]!==i||e[8]!==u||e[9]!==n||e[10]!==_){const j=_?.find(A=>A.type===h);let T;e[17]!==m||e[18]!==s||e[19]!==a||e[20]!==h||e[21]!==i||e[22]!==u?(T=async()=>{if(!(!a||!h))try{await m.mutateAsync({automation_id:s,type:"event",event_type:h,connection_id:a,params:u}),be("automation_trigger_added",{automation_id:s,trigger_type:"event",connection_id:a,event_type:h}),fe.success("Event trigger added"),i()}catch{fe.error("Failed to add event trigger")}},e[17]=m,e[18]=s,e[19]=a,e[20]=h,e[21]=i,e[22]=u,e[23]=T):T=e[23],g=T,x="flex flex-col gap-3 px-3 py-3 rounded-lg border border-border bg-background";let I,D;e[24]===Symbol.for("react.memo_cache_sentinel")?(D=o.jsx(Bs,{size:14,className:"text-muted-foreground shrink-0"}),I=o.jsx("span",{className:"text-sm font-medium",children:"Event trigger"}),e[24]=I,e[25]=D):(I=e[24],D=e[25]);let M;e[26]===Symbol.for("react.memo_cache_sentinel")?(M=o.jsx(rs,{size:13}),e[26]=M):M=e[26],e[27]!==i?(b=o.jsxs("div",{className:"flex items-center gap-2",children:[D,I,o.jsx("button",{type:"button",className:"ml-auto shrink-0 p-0.5 rounded text-muted-foreground hover:text-foreground",onClick:i,children:M})]}),e[27]=i,e[28]=b):b=e[28];const w=a??"";let R;e[29]===Symbol.for("react.memo_cache_sentinel")?(R=A=>{l(A),c(void 0),f({})},e[29]=R):R=e[29];let E;e[30]===Symbol.for("react.memo_cache_sentinel")?(E=o.jsx(ts,{className:"w-full",children:o.jsx(ss,{placeholder:"Select connection..."})}),e[30]=E):E=e[30];let C;e[31]!==n?(C=n.length===0?o.jsx("div",{className:"px-2 py-3 text-center text-xs text-muted-foreground",children:"No connections with trigger support"}):n.map(dg),e[31]=n,e[32]=C):C=e[32];let P;e[33]!==C?(P=o.jsx(is,{children:C}),e[33]=C,e[34]=P):P=e[34],e[35]!==w||e[36]!==P?(S=o.jsxs(es,{value:w,onValueChange:R,children:[E,P]}),e[35]=w,e[36]=P,e[37]=S):S=e[37],e[38]!==a||e[39]!==h||e[40]!==p||e[41]!==_?(v=a&&o.jsxs(es,{value:h??"",onValueChange:A=>{c(A),f({})},children:[o.jsx(ts,{className:"w-full",children:p?o.jsxs("span",{className:"flex items-center gap-2 text-muted-foreground",children:[o.jsx($e,{size:13,className:"animate-spin"}),"Loading events..."]}):o.jsx(ss,{placeholder:"Select event type...",children:h??"Select event type..."})}),o.jsx(is,{children:_?.map(hg)})]}),e[38]=a,e[39]=h,e[40]=p,e[41]=_,e[42]=v):v=e[42],y=j?.paramsSchema&&Object.keys(j.paramsSchema).length>0&&o.jsx("div",{className:"flex flex-col gap-2",children:Object.entries(j.paramsSchema).map(A=>{const[$,K]=A;return o.jsxs("div",{className:"flex flex-col gap-1",children:[o.jsxs("label",{className:"text-xs text-muted-foreground",children:[$,K.description&&o.jsxs("span",{className:"text-muted-foreground/60",children:[" ","— ",K.description]})]}),K.enum?o.jsxs(es,{value:u[$]??"",onValueChange:q=>f(F=>({...F,[$]:q})),children:[o.jsx(ts,{className:"w-full",children:o.jsx(ss,{placeholder:`Select ${$}...`})}),o.jsx(is,{children:K.enum.map(cg)})]}):o.jsx("input",{type:"text",value:u[$]??"",onChange:q=>f(F=>({...F,[$]:q.target.value})),placeholder:K.description??$,className:"text-sm border border-border rounded-md bg-background px-2 py-1.5 focus:outline-none focus:ring-1 focus:ring-ring"})]},$)})}),e[2]=m,e[3]=s,e[4]=a,e[5]=h,e[6]=p,e[7]=i,e[8]=u,e[9]=n,e[10]=_,e[11]=g,e[12]=x,e[13]=b,e[14]=S,e[15]=v,e[16]=y}else g=e[11],x=e[12],b=e[13],S=e[14],v=e[15],y=e[16];let k;e[43]!==m||e[44]!==a||e[45]!==h||e[46]!==g?(k=a&&h&&o.jsx(se,{size:"sm",onClick:g,disabled:m.isPending,children:m.isPending?o.jsx($e,{size:13,className:"animate-spin"}):"Add trigger"}),e[43]=m,e[44]=a,e[45]=h,e[46]=g,e[47]=k):k=e[47];let N;return e[48]!==x||e[49]!==b||e[50]!==S||e[51]!==v||e[52]!==y||e[53]!==k?(N=o.jsxs("div",{className:x,children:[b,S,v,y,k]}),e[48]=x,e[49]=b,e[50]=S,e[51]=v,e[52]=y,e[53]=k,e[54]=N):N=e[54],N}function cg(t){return o.jsx(Dt,{value:t,children:t},t)}function hg(t){return o.jsx(Dt,{value:t.type,children:o.jsxs("div",{className:"flex flex-col",children:[o.jsx("span",{children:t.type}),o.jsx("span",{className:"text-xs text-muted-foreground",children:t.description})]})},t.type)}function dg(t){return o.jsx(Dt,{value:t.id,children:t.title},t.id)}function ug({automationId:t,automation:e,onBack:s,onDelete:i}){const r=e.virtual_mcp_id,{org:n}=ge(),{update:a,triggerAdd:l}=Hs(),h=wi(),c=new Map(h.map(W=>[W.id,W.title])),{createTaskWithMessage:d}=xt(),{setSimpleModeTier:u}=Xr(),{setChatOpen:f}=sn(),{sendMessage:m}=Fs(),_=ca(),[p,g]=Fl(),x=e.messages?.[0]?.metadata?.tiptapDoc??void 0,[b,S]=B.useState(x),[v,y]=B.useState(!1),[k,N]=B.useState(!1),[j,T]=B.useState(""),[I,D]=B.useState(!1),[M,w]=B.useState(!1),[R,E]=B.useState(!1),[C,P]=B.useState(!1),A=async()=>{if(M)return;const U=Sn(b).filter(re=>re.type==="text").map(re=>re.text).join(`
181
+ `);if(U.trim()){w(!0);try{L(),be("automation_improve_clicked",{automation_id:t,agent_id:r,instructions_length:U.length}),await _(["studio-automation-manager"]),f(!0),await m({tiptapDoc:Aa({managerAgentId:Xo.AUTOMATION_MANAGER(n.id),managerName:"Automation Manager",kind:"automation",id:t,instructions:U})})}finally{w(!1)}}},$=e.models?.tier??"smart",K=Vo({defaultValues:{name:e.name,active:e.active,tier:$}}),q=K.watch("active"),[F,Y]=B.useReducer(ag,null),J=()=>{F!==null&&(be("automation_updated",{automation_id:t,agent_id:r,fields:Array.from(F.fields),save_count:F.saveCount,edit_duration_ms:Date.now()-F.start}),Y({type:"reset"}))},G=async()=>{const W=K.control._formState.dirtyFields,U=Object.keys(W);if(U.length===0&&!C)return!0;const re=K.getValues(),de=K.control._defaultValues;K.reset(re,{keepValues:!0});const ce=C;P(!1);const he={id:t,name:re.name,active:re.active,models:{tier:re.tier},messages:sc(b),temperature:0};try{await a.mutateAsync(he)}catch{return K.reset(de,{keepValues:!0}),ce&&P(!0),!1}const _e=[...U];return ce&&_e.push("messages"),Y({type:"accumulate",now:Date.now(),fields:_e}),ie(),!0},{schedule:H,flush:Q}=mi({save:G}),{schedule:ie,flush:L}=mi({delayMs:3e4,save:async()=>J()});B.useEffect(()=>{const W=K.watch(()=>H());return()=>W.unsubscribe()},[]);const ee=W=>{if(S(W),!R){E(!0);return}P(!0),H()},te=async()=>{be("automation_test_clicked",{automation_id:t,agent_id:r});const W=await Q();if(L(),!W)return;if(!b){fe.error("No instructions configured for this automation");return}u(K.getValues("tier")),f(!0),g({...p,toolApprovalLevel:"auto"});const U=Sn(b);d({message:{tiptapDoc:b,parts:U},virtualMcpId:r||void 0})};return o.jsxs(o.Fragment,{children:[s&&o.jsx("div",{className:"flex items-center pb-4 shrink-0",children:o.jsxs(se,{variant:"ghost",size:"sm",onClick:s,children:[o.jsx(Ea,{size:14}),"Back to list"]})}),o.jsxs("div",{className:"flex flex-col gap-8",children:[o.jsxs("div",{className:"flex flex-col gap-1.5",children:[o.jsxs("div",{className:"flex items-center justify-between gap-4",children:[o.jsx(ht,{control:K.control,name:"name",render:({field:W})=>o.jsx(qt,{...W,placeholder:"Automation name",className:"border border-transparent shadow-none px-0 text-lg font-medium h-auto focus-visible:ring-0 focus-visible:border-border bg-transparent flex-1",style:{boxShadow:"none"}})}),i&&o.jsx(se,{variant:"ghost",size:"icon",className:"text-muted-foreground hover:text-destructive shrink-0",onClick:i,children:o.jsx(hr,{size:14})})]}),o.jsxs("div",{className:"flex items-center gap-2",children:[o.jsx(ht,{control:K.control,name:"active",render:({field:W})=>o.jsx(cr,{checked:W.value,onCheckedChange:U=>{W.onChange(U),Q()},className:"cursor-pointer"})}),o.jsx("span",{className:"text-sm text-muted-foreground",children:q?"Active":"Inactive"}),o.jsx("span",{className:"text-muted-foreground/50 text-sm",children:"·"}),o.jsx(ha,{id:e.created_by,size:"2xs",className:"text-sm text-muted-foreground"})]})]}),o.jsxs("div",{className:"flex flex-col gap-2.5",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Starter"}),o.jsx(rg,{automationId:t,open:v,onOpenChange:y,onCustomSelect:()=>{N(!0),D(!1),T("")},onEventSelect:()=>{D(!0),N(!1)}})]}),e.triggers.length===0&&!k?o.jsx("div",{className:"rounded-lg border border-dashed border-border px-4 py-6 text-center",children:o.jsxs("p",{className:"text-sm text-muted-foreground",children:["When should this automation run?"," ",o.jsx("button",{type:"button",className:"text-foreground underline underline-offset-2 cursor-pointer hover:text-foreground/80 transition-colors",onClick:()=>y(!0),children:"Add a starter"})," ","to get going."]})}):o.jsx("div",{className:"flex flex-col gap-2",children:e.triggers.map(W=>o.jsx(ng,{trigger:W,automationId:t,connectionName:W.connection_id?c.get(W.connection_id):void 0},W.id))}),k&&o.jsxs("div",{className:"flex items-center gap-2.5 px-3 py-2.5 rounded-lg border border-border bg-background group",children:[o.jsx(Ds,{size:14,className:"text-muted-foreground shrink-0"}),o.jsx("input",{type:"text",value:j,onChange:W=>T(W.target.value),onBlur:async()=>{const W=j.trim();if(!(!W||!As(W)))try{await l.mutateAsync({automation_id:t,type:"cron",cron_expression:W}),be("automation_trigger_added",{automation_id:t,trigger_type:"cron"}),fe.success("Starter added"),N(!1),T("")}catch{fe.error("Failed to add starter")}},onKeyDown:async W=>{const U=j.trim();W.key==="Enter"&&U&&As(U)&&W.target.blur(),W.key==="Escape"&&(N(!1),T(""))},placeholder:"0 9 * * 1-5",className:"flex-1 text-sm font-mono bg-transparent outline-none placeholder:text-muted-foreground/40",autoFocus:!0}),j&&!As(j)&&o.jsx("span",{className:"text-xs text-muted-foreground/60 shrink-0",children:"invalid"}),l.isPending&&o.jsx($e,{size:13,className:"animate-spin text-muted-foreground shrink-0"}),o.jsx("button",{type:"button",className:"shrink-0 p-0.5 rounded text-muted-foreground opacity-0 group-hover:opacity-100 hover:text-foreground transition-opacity",onClick:()=>{N(!1),T("")},children:o.jsx(rs,{size:13})})]}),I&&o.jsx(B.Suspense,{fallback:o.jsxs("div",{className:"flex items-center gap-2 px-3 py-3 rounded-lg border border-border bg-background",children:[o.jsx($e,{size:13,className:"animate-spin text-muted-foreground"}),o.jsx("span",{className:"text-sm text-muted-foreground",children:"Loading connections..."})]}),children:o.jsx(lg,{automationId:t,onDone:()=>D(!1)})})]}),o.jsxs("div",{className:"flex flex-col gap-2.5",children:[o.jsxs("div",{className:"flex items-center justify-between",children:[o.jsx("span",{className:"text-xs font-semibold text-muted-foreground/60",children:"Instructions"}),o.jsxs(se,{variant:"outline",size:"sm",className:"h-7 gap-1.5 px-2 text-xs",disabled:M||!b,onClick:A,children:[o.jsx(Ca,{size:13}),"Improve"]})]}),o.jsx(Gl,{tiptapDoc:b,setTiptapDoc:ee,placeholder:"What should this automation do?",children:o.jsxs("div",{className:"rounded-xl border border-border min-h-[120px] flex flex-col",children:[o.jsx(Yl,{virtualMcpId:r||null,className:"max-h-[45vh]"}),o.jsxs("div",{className:"flex items-center justify-end gap-1.5 p-2.5",children:[o.jsx(Xl,{tier:K.watch("tier"),onSelect:W=>K.setValue("tier",W,{shouldDirty:!0})}),o.jsxs(De,{children:[o.jsx(Te,{asChild:!0,children:o.jsxs(se,{type:"button",variant:"default",className:"h-8 gap-1.5 rounded-md px-3 text-sm font-medium",onClick:te,disabled:!r,children:[o.jsx(cc,{size:16}),"Test"]})}),o.jsx(Re,{children:"Test Automation"})]})]})]})})]})]})]})}function fg(t){const e=z.c(5),{tabId:s}=t;let i;e[0]!==s?(i=Zo(s),e[0]=s,e[1]=i):i=e[1];const r=i;if(!r)return null;let n;e[2]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=n):n=e[2];let a;return e[3]!==r.id?(a=o.jsx(it,{children:o.jsx(it.Content,{children:o.jsx(it.Body,{children:o.jsx(B.Suspense,{fallback:n,children:o.jsx(mg,{id:r.id})})})})}),e[3]=r.id,e[4]=a):a=e[4],a}function mg(t){const e=z.c(8),{id:s}=t,i=Ut(),{data:r,isLoading:n}=Ch(s);let a;e[0]!==i?(a=()=>i({to:".",search:_g,replace:!0}),e[0]=i,e[1]=a):a=e[1];const l=a;if(n){let c;return e[2]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[2]=c):c=e[2],c}if(!r){let c;return e[3]===Symbol.for("react.memo_cache_sentinel")?(c=o.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Automation not found"}),e[3]=c):c=e[3],c}let h;return e[4]!==r||e[5]!==s||e[6]!==l?(h=o.jsx(ug,{automationId:s,automation:r,onBack:l}),e[4]=r,e[5]=s,e[6]=l,e[7]=h):h=e[7],h}function _g(t){return{...t,main:"automations"}}function pg(t){const e=z.c(20),{virtualMcpId:s}=t,i=Ut(),{data:r}=kh(s),n=r===void 0?[]:r,{create:a}=Hs(),[l,h]=B.useState(""),c=l.toLowerCase(),d=n.filter(I=>I.name.toLowerCase().includes(c));let u;e[0]!==i?(u=I=>i({to:".",search:D=>({...D,main:"automation:"+I}),replace:!0}),e[0]=i,e[1]=u):u=e[1];const f=u,m=async()=>{if(a.isPending)return;be("automation_new_clicked",{virtual_mcp_id:s,existing_count:n.length});const I=await a.mutateAsync(jh(s));f(I.id)},_=it,p=it,g=it;let x;e[2]===Symbol.for("react.memo_cache_sentinel")?(x=o.jsx(it.Title,{children:"Automations"}),e[2]=x):x=e[2];const b=n.length>0&&o.jsx(Eh,{value:l,onChange:h,placeholder:"Search automations...",className:"w-full md:w-[375px]"});let S;e[3]===Symbol.for("react.memo_cache_sentinel")?(S=o.jsx(ns,{size:14}),e[3]=S):S=e[3];let v;e[4]!==a.isPending||e[5]!==m?(v=o.jsxs(se,{size:"sm",onClick:m,disabled:a.isPending,children:[S,"New automation"]}),e[4]=a.isPending,e[5]=m,e[6]=v):v=e[6];let y;e[7]!==b||e[8]!==v?(y=o.jsxs("div",{className:"flex flex-col gap-6",children:[x,o.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[b,v]})]}),e[7]=b,e[8]=v,e[9]=y):y=e[9];const k=n.length===0?o.jsx("div",{className:"flex items-center justify-center py-20",children:o.jsx(fi,{image:o.jsx(Bs,{size:48,className:"text-muted-foreground"}),title:"No automations yet",description:"Create your first automation to run this agent on a schedule or in response to events.",actions:o.jsxs(se,{size:"sm",onClick:m,disabled:a.isPending,children:[o.jsx(ns,{size:14}),"New automation"]})})}):d.length===0?o.jsx("div",{className:"flex items-center justify-center py-20",children:o.jsx(fi,{image:o.jsx(Bs,{size:48,className:"text-muted-foreground"}),title:"No automations found",description:`No automations match "${l}"`})}):o.jsx("div",{className:"mt-6 rounded-xl border border-border overflow-hidden",children:d.map(I=>o.jsx(Nh,{automation:I,onClick:()=>f(I.id)},I.id))});let N;e[10]!==k||e[11]!==g.Body||e[12]!==y?(N=o.jsxs(g.Body,{children:[y,k]}),e[10]=k,e[11]=g.Body,e[12]=y,e[13]=N):N=e[13];let j;e[14]!==N||e[15]!==p.Content?(j=o.jsx(p.Content,{children:N}),e[14]=N,e[15]=p.Content,e[16]=j):j=e[16];let T;return e[17]!==_||e[18]!==j?(T=o.jsx(_,{children:j}),e[17]=_,e[18]=j,e[19]=T):T=e[19],T}function gg(t){const e=z.c(3),{virtualMcpId:s}=t;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[0]=i):i=e[0];let r;return e[1]!==s?(r=o.jsx(B.Suspense,{fallback:i,children:o.jsx(pg,{virtualMcpId:s})}),e[1]=s,e[2]=r):r=e[2],r}const Bo=B.lazy(()=>Hl(()=>import("./project-app-view-C5TQg2cG.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,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57])).then(t=>({default:t.AppViewContent})));function Ml(t){const e=z.c(41),{taskId:s,virtualMcpId:i}=t;let r;e[0]!==s||e[1]!==i?(r={virtualMcpId:i,taskId:s},e[0]=s,e[1]=i,e[2]=r):r=e[2];const{activeTab:n,layoutTabs:a,expandedTools:l,automationTabParsed:h}=Ma(r);if(_c(n)){let _;return e[3]!==i?(_=o.jsx(zn,{virtualMcpId:i}),e[3]=i,e[4]=_):_=e[4],_}if(n==="git"){let _;return e[5]!==i?(_=o.jsx(zu,{virtualMcpId:i}),e[5]=i,e[6]=_):_=e[6],_}if(n==="automations"){let _;return e[7]!==i?(_=o.jsx(gg,{virtualMcpId:i}),e[7]=i,e[8]=_):_=e[8],_}if(n==="preview"){let _;return e[9]!==i?(_=o.jsx(Zp,{virtualMcpId:i}),e[9]=i,e[10]=_):_=e[10],_}if(h){let _;return e[11]!==n?(_=o.jsx(fg,{tabId:n}),e[11]=n,e[12]=_):_=e[12],_}let c;e[13]!==n?(c=pc(n),e[13]=n,e[14]=c):c=e[14];const d=c;if(d){let _;if(e[15]!==l||e[16]!==d.connectionId||e[17]!==d.toolName){let S;e[19]!==d.connectionId||e[20]!==d.toolName?(S=v=>v.appId===d.connectionId&&v.toolName===d.toolName,e[19]=d.connectionId,e[20]=d.toolName,e[21]=S):S=e[21],_=l.find(S),e[15]=l,e[16]=d.connectionId,e[17]=d.toolName,e[18]=_}else _=e[18];const p=_;let g;e[22]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx("div",{className:"h-full w-full flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[22]=g):g=e[22];const x=p?.args;let b;return e[23]!==n||e[24]!==d.connectionId||e[25]!==d.toolName||e[26]!==x?(b=o.jsx(B.Suspense,{fallback:g,children:o.jsx(Bo,{connectionId:d.connectionId,toolName:d.toolName,args:x},n)}),e[23]=n,e[24]=d.connectionId,e[25]=d.toolName,e[26]=x,e[27]=b):b=e[27],b}let u;if(e[28]!==n||e[29]!==a){let _;e[31]!==n?(_=p=>p.id===n,e[31]=n,e[32]=_):_=e[32],u=a.find(_),e[28]=n,e[29]=a,e[30]=u}else u=e[30];const f=u;if(f){let _;e[33]===Symbol.for("react.memo_cache_sentinel")?(_=o.jsx("div",{className:"h-full w-full flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),e[33]=_):_=e[33];let p;return e[34]!==n||e[35]!==f.id||e[36]!==f.view.appId||e[37]!==f.view.args?(p=o.jsx(B.Suspense,{fallback:_,children:o.jsx(Bo,{connectionId:f.view.appId,toolName:f.id,args:f.view.args},n)}),e[34]=n,e[35]=f.id,e[36]=f.view.appId,e[37]=f.view.args,e[38]=p):p=e[38],p}let m;return e[39]!==i?(m=o.jsx(zn,{virtualMcpId:i}),e[39]=i,e[40]=m):m=e[40],m}function vg(t){const e=z.c(7),{children:s,defaultSize:i}=t,[,r]=B.useTransition();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=Go.decoChatPanelWidth(),e[0]=n):n=e[0];const[a,l]=qo(n,45),h=i>0&&i<100?a:i;let c;e[1]!==l?(c=f=>r(()=>{f>0&&f<100&&l(f)}),e[1]=l,e[2]=c):c=e[2];const d=c;let u;return e[3]!==s||e[4]!==h||e[5]!==d?(u=o.jsx(la,{defaultSize:h,minSize:20,collapsible:!0,collapsedSize:0,className:"min-w-0 overflow-hidden bg-sidebar",onResize:d,order:1,children:s}),e[3]=s,e[4]=h,e[5]=d,e[6]=u):u=e[6],u}function xg(t){const e=z.c(30),{virtualMcpId:s,taskId:i,chatOpen:r,mainOpen:n,chatContent:a}=t;let l;e[0]!==r||e[1]!==n?(l=bn(r,n),e[0]=r,e[1]=n,e[2]=l):l=e[2];const h=l;let c;e[3]===Symbol.for("react.memo_cache_sentinel")?(c=Go.decoChatPanelWidth(),e[3]=c):c=e[3];const[d]=qo(c,45),u=B.useRef(null);let f,m;e[4]!==r||e[5]!==n||e[6]!==d?(f=()=>{const I=u.current;if(!I)return;const D=bn(r,n),M=D.chat>0&&D.chat<100?d:D.chat,w=D.chat>0&&D.chat<100?100-d:D.main;I.setLayout([M,w])},m=[r,n,d],e[4]=r,e[5]=n,e[6]=d,e[7]=f,e[8]=m):(f=e[7],m=e[8]),B.useEffect(f,m);const _=`${s}-${i}`;let p;e[9]===Symbol.for("react.memo_cache_sentinel")?(p={overflow:"visible"},e[9]=p):p=e[9];let g;e[10]!==a?(g=a??o.jsx(Ta,{}),e[10]=a,e[11]=g):g=e[11];let x;e[12]!==g?(x=o.jsx("div",{className:"h-full p-0.5 pt-0.25",children:o.jsx("div",{className:"h-full bg-background rounded-[0.75rem] overflow-hidden card-shadow",children:g})}),e[12]=g,e[13]=x):x=e[13];let b;e[14]!==h.chat||e[15]!==x?(b=o.jsx(vg,{defaultSize:h.chat,children:x}),e[14]=h.chat,e[15]=x,e[16]=b):b=e[16];let S;e[17]===Symbol.for("react.memo_cache_sentinel")?(S=o.jsx(Gc,{className:"bg-sidebar"}),e[17]=S):S=e[17];const v=h.main;let y;e[18]===Symbol.for("react.memo_cache_sentinel")?(y={overflow:"visible"},e[18]=y):y=e[18];let k;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=Z("flex flex-col h-full min-h-0 bg-background overflow-hidden","card-shadow","transition-[border-radius] duration-200 ease-[var(--ease-out-quart)]","rounded-[0.75rem]"),e[19]=k):k=e[19];let N;e[20]!==i||e[21]!==s?(N=o.jsx("div",{className:"h-full p-0.5 pt-0.25",children:o.jsx("div",{className:k,children:o.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:o.jsx(Tt,{children:o.jsx(Ml,{taskId:i,virtualMcpId:s})})})})}),e[20]=i,e[21]=s,e[22]=N):N=e[22];let j;e[23]!==h.main||e[24]!==N?(j=o.jsx(la,{className:"min-w-0 flex flex-col",order:2,defaultSize:v,style:y,collapsible:!0,collapsedSize:0,minSize:20,children:N}),e[23]=h.main,e[24]=N,e[25]=j):j=e[25];let T;return e[26]!==j||e[27]!==_||e[28]!==b?(T=o.jsxs(Yc,{ref:u,direction:"horizontal",className:"flex-1 min-h-0 pb-1 pr-1 pl-0 pt-0",style:p,children:[b,S,j]},_),e[26]=j,e[27]=_,e[28]=b,e[29]=T):T=e[29],T}const ir="flex size-7 shrink-0 items-center justify-center rounded-md transition-colors",Lo="bg-sidebar-accent text-sidebar-foreground",rr="text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";function bg(t){const e=z.c(47),{chatOpen:s,toggleChat:i,onNewTask:r}=t,{tasksOpen:n,toggleTasks:a}=Jl(),l=!!r;let h;e[0]!==n||e[1]!==a?(h=()=>{be("agent_toolbar_toggled",{button:"tasks",next_state:n?"closed":"open"}),a()},e[0]=n,e[1]=a,e[2]=h):h=e[2];const c=n?Lo:rr;let d;e[3]!==c?(d=Z(ir,c),e[3]=c,e[4]=d):d=e[4];let u;e[5]===Symbol.for("react.memo_cache_sentinel")?(u=o.jsx(Mc,{size:16}),e[5]=u):u=e[5];let f;e[6]!==h||e[7]!==d||e[8]!==n?(f=o.jsx(Te,{asChild:!0,children:o.jsx("button",{type:"button",onClick:h,"aria-pressed":n,className:d,children:u})}),e[6]=h,e[7]=d,e[8]=n,e[9]=f):f=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=o.jsx(Re,{side:"bottom",children:"Tasks"}),e[10]=m):m=e[10];let _;e[11]!==f?(_=o.jsxs(De,{delayDuration:300,children:[f,m]}),e[11]=f,e[12]=_):_=e[12];let p;e[13]!==s||e[14]!==i?(p=()=>{be("agent_toolbar_toggled",{button:"chat",next_state:s?"closed":"open"}),i()},e[13]=s,e[14]=i,e[15]=p):p=e[15];const g=s?Lo:rr;let x;e[16]!==g?(x=Z(ir,g),e[16]=g,e[17]=x):x=e[17];let b;e[18]===Symbol.for("react.memo_cache_sentinel")?(b=o.jsx(na,{size:16}),e[18]=b):b=e[18];let S;e[19]!==s||e[20]!==x||e[21]!==p?(S=o.jsx(Te,{asChild:!0,children:o.jsx("button",{type:"button",onClick:p,"aria-pressed":s,className:x,children:b})}),e[19]=s,e[20]=x,e[21]=p,e[22]=S):S=e[22];let v;e[23]===Symbol.for("react.memo_cache_sentinel")?(v=o.jsx(Re,{side:"bottom",children:"Chat"}),e[23]=v):v=e[23];let y;e[24]!==S?(y=o.jsxs(De,{delayDuration:300,children:[S,v]}),e[24]=S,e[25]=y):y=e[25];const k=l?"grid-cols-[1fr]":"grid-cols-[0fr]";let N;e[26]!==k?(N=Z("grid transition-[grid-template-columns] duration-200 ease-[var(--ease-out-quart)]",k),e[26]=k,e[27]=N):N=e[27];const j=!l,T=l?0:-1,I=!l,D=l?"translate-x-0 opacity-100":"-translate-x-2 opacity-0";let M;e[28]!==D?(M=Z(ir,rr,"transition-[transform,opacity] duration-200 ease-[var(--ease-out-quart)] will-change-transform",D),e[28]=D,e[29]=M):M=e[29];let w;e[30]===Symbol.for("react.memo_cache_sentinel")?(w=o.jsx(tn,{size:16}),e[30]=w):w=e[30];let R;e[31]!==r||e[32]!==j||e[33]!==T||e[34]!==I||e[35]!==M?(R=o.jsx(Te,{asChild:!0,children:o.jsx("button",{type:"button",onClick:r,disabled:j,tabIndex:T,"aria-hidden":I,className:M,children:w})}),e[31]=r,e[32]=j,e[33]=T,e[34]=I,e[35]=M,e[36]=R):R=e[36];let E;e[37]===Symbol.for("react.memo_cache_sentinel")?(E=o.jsx(Re,{side:"bottom",children:"New task"}),e[37]=E):E=e[37];let C;e[38]!==R?(C=o.jsx("div",{className:"overflow-hidden",children:o.jsxs(De,{delayDuration:300,children:[R,E]})}),e[38]=R,e[39]=C):C=e[39];let P;e[40]!==N||e[41]!==C?(P=o.jsx("div",{className:N,children:C}),e[40]=N,e[41]=C,e[42]=P):P=e[42];let A;return e[43]!==y||e[44]!==P||e[45]!==_?(A=o.jsxs(o.Fragment,{children:[_,y,P]}),e[43]=y,e[44]=P,e[45]=_,e[46]=A):A=e[46],A}function Sg(t,e,s){if(t.length<=s)return{visible:t,overflow:[]};const i=t.slice(0,s),r=t.slice(s);if(e==null)return{visible:i,overflow:r};if(i.some(u=>u.id===e))return{visible:i,overflow:r};const a=r.findIndex(u=>u.id===e);if(a===-1)return{visible:i,overflow:r};const l=i[i.length-1],h=r[a],c=[...i.slice(0,-1),h],d=[l,...r.slice(0,a),...r.slice(a+1)];return{visible:c,overflow:d}}function yg(t){const e=z.c(13),{title:s,icon:i,active:r,onClick:n}=t,a=r?"bg-sidebar-accent text-sidebar-foreground":"text-sidebar-foreground/60 hover:bg-sidebar-accent hover:text-sidebar-foreground";let l;e[0]!==a?(l=Z("shrink-0 flex items-center gap-1.5 h-8 rounded-md px-2","[transition:background-color_180ms_ease,color_180ms_ease]",a),e[0]=a,e[1]=l):l=e[1];let h;e[2]!==i?(h=o.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:o.jsx(wg,{icon:i})}),e[2]=i,e[3]=h):h=e[3];let c;e[4]!==s?(c=o.jsx("span",{className:"whitespace-nowrap text-sm font-medium leading-none",children:s}),e[4]=s,e[5]=c):c=e[5];let d;return e[6]!==r||e[7]!==n||e[8]!==l||e[9]!==h||e[10]!==c||e[11]!==s?(d=o.jsxs("button",{type:"button",onClick:n,"aria-pressed":r,"aria-label":s,className:l,children:[h,c]}),e[6]=r,e[7]=n,e[8]=l,e[9]=h,e[10]=c,e[11]=s,e[12]=d):d=e[12],d}function wg(t){const e=z.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:r}=s;let n;return e[0]!==r?(n=o.jsx(r,{className:"size-4"}),e[0]=r,e[1]=n):n=e[1],n}if(s.kind==="url"){let r;return e[2]!==s.src?(r=o.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=r):r=e[3],r}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(oa,{className:"size-4"}),e[4]=i):i=e[4],i}function Cg(t){const e=z.c(13),{overflow:s,onSelect:i}=t,[r,n]=B.useState(!1);let a;e[0]!==i?(a=f=>{n(!1),i(f)},e[0]=i,e[1]=a):a=e[1];const l=a;let h;e[2]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(ls,{asChild:!0,children:o.jsx("button",{type:"button",title:"More tabs","aria-label":"More tabs",className:"shrink-0 flex size-8 items-center justify-center rounded-md text-muted-foreground hover:bg-accent hover:text-foreground transition-colors",children:o.jsx(ia,{className:"size-4"})})}),e[2]=h):h=e[2];let c;if(e[3]!==l||e[4]!==s){let f;e[6]!==l?(f=m=>o.jsx("li",{children:o.jsxs("button",{type:"button",onClick:()=>l(m.id),className:"w-full flex items-center gap-2 px-3 py-2 rounded-md hover:bg-accent text-sm text-foreground",children:[o.jsx("span",{className:"flex size-5 items-center justify-center shrink-0",children:o.jsx(kg,{icon:m.icon})}),o.jsx("span",{className:"truncate",children:m.title})]})},m.id),e[6]=l,e[7]=f):f=e[7],c=s.map(f),e[3]=l,e[4]=s,e[5]=c}else c=e[5];let d;e[8]!==c?(d=o.jsx(cs,{align:"end",className:"w-56 p-1",children:o.jsx("ul",{className:"flex flex-col",children:c})}),e[8]=c,e[9]=d):d=e[9];let u;return e[10]!==r||e[11]!==d?(u=o.jsxs(hs,{open:r,onOpenChange:n,children:[h,d]}),e[10]=r,e[11]=d,e[12]=u):u=e[12],u}function kg(t){const e=z.c(5),{icon:s}=t;if(s.kind==="component"){const{Component:r}=s;let n;return e[0]!==r?(n=o.jsx(r,{className:"size-4"}),e[0]=r,e[1]=n):n=e[1],n}if(s.kind==="url"){let r;return e[2]!==s.src?(r=o.jsx("img",{src:s.src,alt:"",className:"size-4 rounded-sm object-cover"}),e[2]=s.src,e[3]=r):r=e[3],r}let i;return e[4]===Symbol.for("react.memo_cache_sentinel")?(i=o.jsx(oa,{className:"size-4"}),e[4]=i):i=e[4],i}const Ng=6;function Al(t){const e=z.c(20),{virtualMcpId:s,taskId:i}=t,r=Ut();let n;e[0]!==i||e[1]!==s?(n={virtualMcpId:s,taskId:i},e[0]=i,e[1]=s,e[2]=n):n=e[2];const{tabs:a,activeTab:l,mainOpen:h,setActiveTab:c}=Ma(n);let d,u,f,m;if(e[3]!==l||e[4]!==h||e[5]!==r||e[6]!==c||e[7]!==a||e[8]!==s){const g=gc({activeTab:l,mainOpen:h}),x=k=>k.id==="automations"?g:h&&k.id===l,S=a.find(k=>x(k))?.id??null,{visible:v,overflow:y}=Sg(a,S,Ng);u=y,d=k=>{const N=a.find(T=>T.id===k),j=S===k&&h;if(be("main_panel_tab_clicked",{virtual_mcp_id:s,tab_id:k,tab_kind:N?.kind??null,was_active:j}),k==="automations"){const T=vc({activeTab:l,mainOpen:h});r({to:".",search:I=>({...I,main:T}),replace:!0});return}c(k)},f="flex items-center min-w-0 gap-0.5",m=v.map(k=>o.jsx(yg,{title:k.title,icon:k.icon,active:x(k),onClick:()=>d(k.id)},k.id)),e[3]=l,e[4]=h,e[5]=r,e[6]=c,e[7]=a,e[8]=s,e[9]=d,e[10]=u,e[11]=f,e[12]=m}else d=e[9],u=e[10],f=e[11],m=e[12];let _;e[13]!==d||e[14]!==u?(_=u.length>0&&o.jsx(Cg,{overflow:u,onSelect:d}),e[13]=d,e[14]=u,e[15]=_):_=e[15];let p;return e[16]!==f||e[17]!==m||e[18]!==_?(p=o.jsxs("div",{className:f,children:[m,_]}),e[16]=f,e[17]=m,e[18]=_,e[19]=p):p=e[19],p}function jg(t){const e=z.c(12);let s,i,r,n;e[0]!==t?({className:s,orientation:r,decorative:n,...i}=t,e[0]=t,e[1]=s,e[2]=i,e[3]=r,e[4]=n):(s=e[1],i=e[2],r=e[3],n=e[4]);const a=r===void 0?"horizontal":r,l=n===void 0?!0:n;let h;e[5]!==s?(h=Z("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",s),e[5]=s,e[6]=h):h=e[6];let c;return e[7]!==l||e[8]!==a||e[9]!==i||e[10]!==h?(c=o.jsx(Wl,{"data-slot":"separator-root",decorative:l,orientation:a,className:h,...i}),e[7]=l,e[8]=a,e[9]=i,e[10]=h,e[11]=c):c=e[11],c}function Eg(t){const e=z.c(20),{prNumber:s,disabled:i,send:r}=t;let n;e[0]!==s||e[1]!==r?(n=()=>r(Eu({prNumber:s})),e[0]=s,e[1]=r,e[2]=n):n=e[2];const a=n;let l;e[3]!==s||e[4]!==r?(l=()=>r(ju({prNumber:s})),e[3]=s,e[4]=r,e[5]=l):l=e[5];const h=l;let c;e[6]!==i||e[7]!==a?(c=o.jsx(se,{size:"sm",variant:"success",className:"rounded-r-none border-r border-success-foreground/20",disabled:i,onClick:a,children:"Publish"}),e[6]=i,e[7]=a,e[8]=c):c=e[8];let d;e[9]===Symbol.for("react.memo_cache_sentinel")?(d=o.jsx(ja,{className:"h-3.5 w-3.5"}),e[9]=d):d=e[9];let u;e[10]!==i?(u=o.jsx(Ni,{asChild:!0,children:o.jsx(se,{size:"sm",variant:"success",className:"rounded-l-none px-2",disabled:i,"aria-label":"More actions",children:d})}),e[10]=i,e[11]=u):u=e[11];let f;e[12]!==h?(f=o.jsx(ji,{align:"end",children:o.jsx(Lt,{onClick:h,children:"Review"})}),e[12]=h,e[13]=f):f=e[13];let m;e[14]!==u||e[15]!==f?(m=o.jsxs(ki,{children:[u,f]}),e[14]=u,e[15]=f,e[16]=m):m=e[16];let _;return e[17]!==c||e[18]!==m?(_=o.jsxs("div",{className:"inline-flex items-stretch rounded-md",children:[c,m]}),e[17]=c,e[18]=m,e[19]=_):_=e[19],_}function Tg(t){if(!(t==="claiming"||t==="ready"||t==="failed"))return za[t].short}const Rg=new Set(["failure","timed_out","cancelled","action_required"]);function Dg(t){return t.status==="completed"&&Rg.has(t.conclusion)}function Mg(t){return t.status==="queued"||t.status==="in_progress"}function Ag(t){const{lifecycle:e,branch:s,pr:i,checks:r,reviews:n,loading:a}=t;if(a)return{label:"Loading…",disabled:!0,loading:!0,variant:"outline",tooltip:"Loading branch and pull request status"};switch(e.phase){case"idle":return{label:t.claimPhase&&Tg(t.claimPhase.kind)||"Starting sandbox…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for the sandbox daemon to come online"};case"cloning":return{label:"Cloning repo…",disabled:!0,loading:!0,variant:"outline",tooltip:"Cloning the project repository"};case"clone-failed":return{label:"Clone failed",disabled:!0,variant:"outline",tooltip:e.error||"git clone failed — see setup logs"};case"checking-out":return{label:`Switching to ${e.to}…`,disabled:!0,loading:!0,variant:"outline",tooltip:`Checking out ${e.to}`}}if(s.kind!=="ready")return{label:"Loading branch…",disabled:!0,loading:!0,variant:"outline",tooltip:"Waiting for branch metadata from the sandbox daemon"};const l=s;if(l.workingTreeDirty||l.unpushed>0)return{label:"Save changes",action:"commit-and-push",variant:"default",tooltip:"Commit and push local changes"};if(i?.merged)return!!l.headSha&&!!i.headSha&&l.headSha!==i.headSha?{label:"Continue",action:"create-pr",variant:"special",tooltip:"Open a new PR with the latest commits"}:{label:"Published",disabled:!0,variant:"outline",tooltip:`PR #${i.number} merged into ${i.base}`};if(l.aheadOfBase>0){if(i&&i.state==="closed"&&!i.merged)return{label:"Reopen",action:"reopen",variant:"default",tooltip:`Reopen PR #${i.number}`};if(!i)return{label:"Submit for review",action:"create-pr",variant:"default",tooltip:`Open a PR for ${l.branch} → ${l.base}`};if((n?.mergeableState??"unknown")==="dirty")return{label:`Sync with ${i.base}`,action:"rebase",variant:"default",tooltip:`Resolve conflicts with ${i.base} before merging`};const d=r.filter(Dg).map(m=>m.name);if(d.length>0)return{label:"Fix tests",action:"fix-checks",variant:"default",tooltip:`Failing: ${d.join(", ")}`,meta:{failingChecks:d}};const u=r.filter(Mg);if(u.length>0)return{label:"Running tests…",disabled:!0,loading:!0,variant:"outline",tooltip:`Waiting on ${u.length} check${u.length===1?"":"s"} to finish`};if(n?.draft)return{label:"Mark ready",action:"mark-ready",variant:"default",tooltip:"Mark draft PR ready for review"};const f=n?.unresolvedConversations??0;return f>0?{label:"Address feedback",action:"resolve-comments",variant:"default",tooltip:`${f} unresolved conversation${f===1?"":"s"}`}:n?.missingRequiredApprovals?{label:"Awaiting review",disabled:!0,variant:"outline",tooltip:"Waiting for required approvals"}:{label:"Publish",action:"merge-split",variant:"success",tooltip:`Squash-merge PR #${i.number} into ${i.base}`}}return{label:"Up to date",disabled:!0,variant:"outline",tooltip:`Branch is in sync with ${l.base}`}}const Ig=6e4,Pg=3e4;function Bg(t){const e=z.c(12);let s;e[0]!==t.connectionId||e[1]!==t.orgId||e[2]!==t.orgSlug?(s={connectionId:t.connectionId,orgId:t.orgId,orgSlug:t.orgSlug},e[0]=t.connectionId,e[1]=t.orgId,e[2]=t.orgSlug,e[3]=s):s=e[3];const i=He(s),r=t.prNumber??0;let n;e[4]!==t.owner||e[5]!==t.repo||e[6]!==r?(n={method:"get",owner:t.owner,repo:t.repo,pullNumber:r},e[4]=t.owner,e[5]=t.repo,e[6]=r,e[7]=n):n=e[7];const a=!!t.prNumber;let l;return e[8]!==i||e[9]!==n||e[10]!==a?(l={client:i,toolName:"pull_request_read",toolArguments:n,enabled:a,refetchInterval:Ig,refetchIntervalInBackground:!1,staleTime:Pg,select:Lg},e[8]=i,e[9]=n,e[10]=a,e[11]=l):l=e[11],ds(l)}function Lg(t){const e=Ws(t);if(!e)return null;const s=e.mergeable_state??"unknown",i=!!(e.draft??!1),r=Number(e.review_comments??0),n=s==="blocked"&&r>0?r:0;return{draft:i,mergeableState:s,unresolvedConversations:n,missingRequiredApprovals:s==="blocked"&&n===0}}function Og(t){const e=z.c(44),{virtualMcpId:s}=t,{org:i}=ge(),r=vt(s),{currentBranch:n}=xt(),a=Fs(),l=r?.metadata?.githubRepo??null,{lifecycle:h,branch:c,phase:d}=fs(),u=l?.connectionId??"",f=l?.owner??"",m=l?.name??"",_=n??null;let p;e[0]!==i.id||e[1]!==i.slug||e[2]!==u||e[3]!==f||e[4]!==m||e[5]!==_?(p={orgId:i.id,orgSlug:i.slug,connectionId:u,owner:f,repo:m,branch:_},e[0]=i.id,e[1]=i.slug,e[2]=u,e[3]=f,e[4]=m,e[5]=_,e[6]=p):p=e[6];const g=Pa(p),x=g.data??null,b=l?.connectionId??"",S=l?.owner??"",v=l?.name??"",y=x&&x.state==="open"?x.number:null;let k;e[7]!==i.id||e[8]!==i.slug||e[9]!==b||e[10]!==S||e[11]!==v||e[12]!==y?(k={orgId:i.id,orgSlug:i.slug,connectionId:b,owner:S,repo:v,prNumber:y},e[7]=i.id,e[8]=i.slug,e[9]=b,e[10]=S,e[11]=v,e[12]=y,e[13]=k):k=e[13];const N=La(k),j=l?.connectionId??"",T=l?.owner??"",I=l?.name??"",D=x&&x.state==="open"?x.number:null;let M;e[14]!==i.id||e[15]!==i.slug||e[16]!==j||e[17]!==T||e[18]!==I||e[19]!==D?(M={orgId:i.id,orgSlug:i.slug,connectionId:j,owner:T,repo:I,prNumber:D},e[14]=i.id,e[15]=i.slug,e[16]=j,e[17]=T,e[18]=I,e[19]=D,e[20]=M):M=e[20];const w=Bg(M);if(!l?.connectionId||!n)return null;let R;e[21]!==c||e[22]!==N.data||e[23]!==d||e[24]!==h||e[25]!==x||e[26]!==g.isPending||e[27]!==w.data?(R=Ag({lifecycle:h,branch:c,claimPhase:d,pr:x,checks:N.data??[],reviews:w.data??null,loading:g.isPending}),e[21]=c,e[22]=N.data,e[23]=d,e[24]=h,e[25]=x,e[26]=g.isPending,e[27]=w.data,e[28]=R):R=e[28];const E=R;let C;e[29]!==a?(C=J=>a.sendMessage({parts:[{type:"text",text:J}]}),e[29]=a,e[30]=C):C=e[30];const P=C,A=a.isStreaming;let $;e[31]!==n||e[32]!==E||e[33]!==A||e[34]!==x||e[35]!==P?($=J=>{if(!A)switch(J){case"commit-and-push":{P(xu({branch:n}));return}case"create-pr":{P(bu({branch:n}));return}case"reopen":{x&&P(Su({prNumber:x.number}));return}case"rebase":{P(yu({branch:n}));return}case"fix-checks":{x&&P(Cu({prNumber:x.number,failingChecks:E.meta?.failingChecks??[]}));return}case"mark-ready":{x&&P(ku({prNumber:x.number}));return}case"resolve-comments":{x&&P(Nu({prNumber:x.number}));return}case"merge-split":return}},e[31]=n,e[32]=E,e[33]=A,e[34]=x,e[35]=P,e[36]=$):$=e[36];const K=$;let q;e[37]===Symbol.for("react.memo_cache_sentinel")?(q=o.jsx(jg,{orientation:"vertical",className:"mx-2 data-[orientation=vertical]:h-5"}),e[37]=q):q=e[37];const F=x?.number;let Y;return e[38]!==E||e[39]!==A||e[40]!==K||e[41]!==P||e[42]!==F?(Y=o.jsxs(o.Fragment,{children:[q,o.jsx(zg,{button:E,isStreaming:A,onActivate:K,prNumber:F,send:P})]}),e[38]=E,e[39]=A,e[40]=K,e[41]=P,e[42]=F,e[43]=Y):Y=e[43],Y}function zg(t){const e=z.c(21),{button:s,isStreaming:i}=t,r=!!s.disabled||i,n=i?"Chat is running":s.tooltip??null;if(s.action==="merge-split"&&t.prNumber!=null){let d;e[0]!==r||e[1]!==t.prNumber||e[2]!==t.send?(d=o.jsx(Eg,{prNumber:t.prNumber,disabled:r,send:t.send}),e[0]=r,e[1]=t.prNumber,e[2]=t.send,e[3]=d):d=e[3];let u;return e[4]!==d||e[5]!==n?(u=o.jsx(Oo,{label:n,children:d}),e[4]=d,e[5]=n,e[6]=u):u=e[6],u}let a;e[7]!==s.action||e[8]!==t?(a=()=>t.onActivate(s.action),e[7]=s.action,e[8]=t,e[9]=a):a=e[9];let l;e[10]!==s.loading?(l=s.loading?o.jsx(gh,{size:"xs",variant:"default"}):null,e[10]=s.loading,e[11]=l):l=e[11];let h;e[12]!==s.label||e[13]!==s.variant||e[14]!==r||e[15]!==a||e[16]!==l?(h=o.jsxs(se,{size:"sm",variant:s.variant,disabled:r,onClick:a,children:[l,s.label]}),e[12]=s.label,e[13]=s.variant,e[14]=r,e[15]=a,e[16]=l,e[17]=h):h=e[17];let c;return e[18]!==h||e[19]!==n?(c=o.jsx(Oo,{label:n,children:h}),e[18]=h,e[19]=n,e[20]=c):c=e[20],c}function Oo(t){const e=z.c(9),{label:s,children:i}=t;if(!s){let l;return e[0]!==i?(l=o.jsx(o.Fragment,{children:i}),e[0]=i,e[1]=l):l=e[1],l}let r;e[2]!==i?(r=o.jsx(Te,{asChild:!0,children:o.jsx("span",{children:i})}),e[2]=i,e[3]=r):r=e[3];let n;e[4]!==s?(n=o.jsx(Re,{children:s}),e[4]=s,e[5]=n):n=e[5];let a;return e[6]!==r||e[7]!==n?(a=o.jsx(Hc,{children:o.jsxs(De,{children:[r,n]})}),e[6]=r,e[7]=n,e[8]=a):a=e[8],a}function $g(t){const e=z.c(2),{virtualMcp:s}=t;if(!!!(s.metadata?.githubRepo??null)?.connectionId)return null;let n;return e[0]!==s.id?(n=o.jsx(or.Right,{children:o.jsx(Og,{virtualMcpId:s.id})}),e[0]=s.id,e[1]=n):n=e[1],n}const Zt=B.createContext(null);function Fg(){return B.use(Zt)}function zo(t){const e=z.c(7),{children:s}=t,{taskId:i}=xt();let r;e[0]===Symbol.for("react.memo_cache_sentinel")?(r=o.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong loading the chat. Try refreshing."}),e[0]=r):r=e[0];let n;e[1]===Symbol.for("react.memo_cache_sentinel")?(n=o.jsx(Ce.Skeleton,{}),e[1]=n):n=e[1];let a;e[2]!==s?(a=s??o.jsx(Ta,{}),e[2]=s,e[3]=a):a=e[3];let l;return e[4]!==a||e[5]!==i?(l=o.jsx(Tt,{fallback:r,children:o.jsx(B.Suspense,{fallback:n,children:o.jsx(Ce.ActiveTaskProvider,{taskId:i,children:a})})}),e[4]=a,e[5]=i,e[6]=l):l=e[6],l}function $o(t){const e=z.c(3),{onNewTaskRef:s,createNewTask:i}=t;let r;return e[0]!==i||e[1]!==s?(r=()=>(s.current=i,()=>{s.current=null}),e[0]=i,e[1]=s,e[2]=r):r=e[2],B.useLayoutEffect(r),null}function Hg(t){const e=z.c(23),{onOpenSidebar:s,virtualMcpId:i,taskId:r,mainOpen:n,onToggleMain:a,onNewTask:l}=t;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=o.jsx(rc,{size:20}),e[0]=h):h=e[0];let c;e[1]!==s?(c=o.jsx("button",{type:"button",onClick:s,className:"flex size-8 shrink-0 items-center justify-center rounded-md text-foreground/60 hover:bg-accent hover:text-foreground transition-colors","aria-label":"Open menu",children:h}),e[1]=s,e[2]=c):c=e[2];let d;e[3]!==r||e[4]!==i?(d=o.jsx("div",{className:"flex-1 min-w-0 overflow-x-auto [scrollbar-width:none]",children:o.jsx(Al,{virtualMcpId:i,taskId:r})}),e[3]=r,e[4]=i,e[5]=d):d=e[5];const u=!n,f=n?"text-foreground/60 hover:bg-accent hover:text-foreground":"bg-accent text-foreground";let m;e[6]!==f?(m=Z("flex size-7 shrink-0 items-center justify-center rounded-md transition-colors",f),e[6]=f,e[7]=m):m=e[7];let _;e[8]===Symbol.for("react.memo_cache_sentinel")?(_=o.jsx(na,{size:16}),e[8]=_):_=e[8];let p;e[9]!==a||e[10]!==u||e[11]!==m?(p=o.jsx("button",{type:"button",onClick:a,"aria-pressed":u,className:m,title:"Chat",children:_}),e[9]=a,e[10]=u,e[11]=m,e[12]=p):p=e[12];let g;e[13]===Symbol.for("react.memo_cache_sentinel")?(g=o.jsx(tn,{size:16}),e[13]=g):g=e[13];let x;e[14]!==l?(x=o.jsx("button",{type:"button",onClick:l,className:"flex size-7 shrink-0 items-center justify-center rounded-md text-foreground/60 hover:bg-accent hover:text-foreground transition-colors",title:"New task",children:g}),e[14]=l,e[15]=x):x=e[15];let b;e[16]!==x||e[17]!==p?(b=o.jsxs("div",{className:"flex items-center gap-0.5 shrink-0",children:[p,x]}),e[16]=x,e[17]=p,e[18]=b):b=e[18];let S;return e[19]!==b||e[20]!==c||e[21]!==d?(S=o.jsxs("div",{className:"shrink-0 flex items-center gap-1 px-2 h-12 bg-background border-b border-border",children:[c,d,b]}),e[19]=b,e[20]=c,e[21]=d,e[22]=S):S=e[22],S}function Fo(t){const e=z.c(16),{virtualMcpId:s,hasActiveGithubRepo:i,vmMap:r,children:n}=t,{org:a}=ge(),{currentBranch:l}=xt(),{data:h}=Yr.useSession(),c=h?.user?.id;let d;e[0]!==a.id||e[1]!==a.slug?(d={connectionId:Vt,orgId:a.id,orgSlug:a.slug},e[0]=a.id,e[1]=a.slug,e[2]=d):d=e[2];const u=He(d),{mutate:f}=Da(u);let m;e[3]===Symbol.for("react.memo_cache_sentinel")?(m=new Set,e[3]=m):m=e[3];const _=B.useRef(m);let p,g;e[4]!==l||e[5]!==i||e[6]!==f||e[7]!==c||e[8]!==s||e[9]!==r?(p=()=>{if(i&&c&&l){if(r?.[c]?.[l]){_.current.add(l);return}_.current.has(l)||(_.current.add(l),f({virtualMcpId:s,branch:l},{onError:Wg}))}},g=[i,c,l,r,s,f],e[4]=l,e[5]=i,e[6]=f,e[7]=c,e[8]=s,e[9]=r,e[10]=p,e[11]=g):(p=e[10],g=e[11]),B.useEffect(p,g);const x=l??null;let b;return e[12]!==n||e[13]!==x||e[14]!==s?(b=o.jsx(ef,{virtualMcpId:s,branch:x,children:n}),e[12]=n,e[13]=x,e[14]=s,e[15]=b):b=e[15],b}function Wg(t){console.error("[auto-start-vm] failed:",t)}function Ug(){const t=z.c(107),e=aa(),s=Ut(),{org:i}=ge(),r=Zl()?.tasksOpen??!1;Wc(i.slug);let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},t[0]=n):n=t[0];const a=Ul(n),l=a.org??"";let h;t[1]===Symbol.for("react.memo_cache_sentinel")?(h={strict:!1},t[1]=h):h=t[1];const c=Ko(h);let d;t[2]!==i.id||t[3]!==c.virtualmcpid?(d=c.virtualmcpid??Yo(i.id).id,t[2]=i.id,t[3]=c.virtualmcpid,t[4]=d):d=t[4];const u=d,f=Dh(a.taskId??"",u),m=vt(u),_=m?.metadata?.ui?.layout??null;let p;t[5]!==_?(p=_?{defaultMainView:_.defaultMainView??null,chatDefaultOpen:_.chatDefaultOpen??null}:null,t[5]=_,t[6]=p):p=t[6];const g=p;let x;t[7]!==m?(x=m&&$t(m),t[7]=m,t[8]=x):x=t[8];const b=!!x;let S;t[9]!==l||t[10]!==u?(S={virtualMcpId:u,orgSlug:l,isAgentRoute:!0},t[9]=l,t[10]=u,t[11]=S):S=t[11];const v=Ql(g,S),{setOpenMobile:y,openMobile:k}=Oc(),N=y,j=B.useRef(null);let T,I;t[12]===Symbol.for("react.memo_cache_sentinel")?(T=()=>{const G=H=>{Lc(H)&&H.shiftKey&&H.code==="KeyS"&&!H.repeat&&(H.preventDefault(),j.current?.())};return document.addEventListener("keydown",G),()=>document.removeEventListener("keydown",G)},I=[],t[12]=T,t[13]=I):(T=t[12],I=t[13]),B.useEffect(T,I);const D=u;let M;t[14]!==m||t[15]!==u?(M={virtualMcpId:u,entity:m},t[14]=m,t[15]=u,t[16]=M):M=t[16];const w=M;if(f.status==="creating"||f.status==="loading"){let G;t[17]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:o.jsxs("div",{className:"flex h-full items-center justify-center bg-background card-shadow rounded-[0.75rem] text-sm text-muted-foreground",children:[o.jsx($e,{className:"size-4 animate-spin mr-2"}),"Creating task…"]})}),t[17]=G):G=t[17];let H;return t[18]!==w?(H=o.jsx(Zt,{value:w,children:G}),t[18]=w,t[19]=H):H=t[19],H}if(f.status==="error"){let G;t[20]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx("div",{className:"font-medium",children:"Task unavailable"}),t[20]=G):G=t[20];let H;t[21]!==f.error.message?(H=o.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:o.jsxs("div",{className:"flex flex-col h-full items-center justify-center gap-2 bg-background card-shadow rounded-[0.75rem] p-8 text-sm",children:[G,o.jsx("div",{className:"text-muted-foreground",children:f.error.message})]})}),t[21]=f.error.message,t[22]=H):H=t[22];let Q;return t[23]!==w||t[24]!==H?(Q=o.jsx(Zt,{value:w,children:H}),t[23]=w,t[24]=H,t[25]=Q):Q=t[25],Q}if(!m){let G;t[26]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx(Jr,{size:48,className:"text-muted-foreground"}),t[26]=G):G=t[26];const H=`The agent "${u}" does not exist in this organization.`;let Q;t[27]!==s||t[28]!==l?(Q=o.jsx(se,{variant:"outline",onClick:()=>s({to:"/$org",params:{org:l}}),children:"Go to organization home"}),t[27]=s,t[28]=l,t[29]=Q):Q=t[29];let ie;t[30]!==H||t[31]!==Q?(ie=o.jsx("div",{className:"flex-1 min-h-0 pr-1.5 pb-1.5 overflow-hidden",children:o.jsx("div",{className:"flex flex-col h-full bg-background overflow-hidden card-shadow rounded-[0.75rem]",children:o.jsx(fi,{image:G,title:"Agent not found",description:H,actions:Q})})}),t[30]=H,t[31]=Q,t[32]=ie):ie=t[32];let L;return t[33]!==w||t[34]!==ie?(L=o.jsx(Zt,{value:w,children:ie}),t[33]=w,t[34]=ie,t[35]=L):L=t[35],L}if(e){let G;t[36]===Symbol.for("react.memo_cache_sentinel")?(G=o.jsx(zc,{className:"sr-only",children:"Navigation"}),t[36]=G):G=t[36];let H;t[37]!==N?(H=o.jsx("div",{className:"w-14 shrink-0 bg-sidebar flex flex-col items-center border-r border-border overflow-y-auto group/sidebar","data-state":"collapsed",children:o.jsx(Pc,{onClose:()=>N(!1)})}),t[37]=N,t[38]=H):H=t[38];let Q;t[39]===Symbol.for("react.memo_cache_sentinel")?(Q=o.jsx("div",{className:"flex-1 min-w-0 overflow-hidden",children:o.jsx(Bc,{})}),t[39]=Q):Q=t[39];let ie;t[40]!==H?(ie=o.jsxs($c,{side:"left",hideCloseButton:!0,className:"w-[calc(100vw-3rem)] sm:max-w-md! p-0",children:[G,o.jsxs("div",{className:"flex h-full",children:[H,Q]})]}),t[40]=H,t[41]=ie):ie=t[41];let L;t[42]!==k||t[43]!==N||t[44]!==ie?(L=o.jsx(Fc,{open:k,onOpenChange:N,children:ie}),t[42]=k,t[43]=N,t[44]=ie,t[45]=L):L=t[45];const ee=L,te=m?.metadata?.vmMap;let W;t[46]!==v.createNewTask?(W=o.jsx($o,{onNewTaskRef:j,createNewTask:v.createNewTask}),t[46]=v.createNewTask,t[47]=W):W=t[47];let U;t[48]!==N?(U=()=>N(!0),t[48]=N,t[49]=U):U=t[49];let re;t[50]!==D||t[51]!==v.createNewTask||t[52]!==v.mainOpen||t[53]!==v.taskId||t[54]!==v.toggleMain||t[55]!==U?(re=o.jsx(Hg,{onOpenSidebar:U,virtualMcpId:D,taskId:v.taskId,mainOpen:v.mainOpen,onToggleMain:v.toggleMain,onNewTask:v.createNewTask}),t[50]=D,t[51]=v.createNewTask,t[52]=v.mainOpen,t[53]=v.taskId,t[54]=v.toggleMain,t[55]=U,t[56]=re):re=t[56];let de;t[57]!==D||t[58]!==v.mainOpen||t[59]!==v.taskId?(de=o.jsx("div",{className:"flex-1 min-h-0 overflow-hidden",children:v.mainOpen?o.jsx(Tt,{fallback:o.jsx("div",{className:"flex-1 flex items-center justify-center text-sm text-muted-foreground",children:"Something went wrong. Try refreshing."}),children:o.jsx(B.Suspense,{fallback:o.jsx("div",{className:"h-full flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),children:o.jsx(Ml,{taskId:v.taskId,virtualMcpId:D})})}):o.jsx(zo,{})}),t[57]=D,t[58]=v.mainOpen,t[59]=v.taskId,t[60]=de):de=t[60];let ce;t[61]!==b||t[62]!==ee||t[63]!==te||t[64]!==W||t[65]!==re||t[66]!==de||t[67]!==u?(ce=o.jsxs(Fo,{virtualMcpId:u,hasActiveGithubRepo:b,vmMap:te,children:[W,re,de,ee]}),t[61]=b,t[62]=ee,t[63]=te,t[64]=W,t[65]=re,t[66]=de,t[67]=u,t[68]=ce):ce=t[68];let he;t[69]!==D||t[70]!==ce?(he=o.jsx("div",{className:"flex flex-col flex-1 bg-background min-h-0",children:o.jsx(Ce.Provider,{virtualMcpId:D,children:ce},D)}),t[69]=D,t[70]=ce,t[71]=he):he=t[71];let _e;return t[72]!==w||t[73]!==he?(_e=o.jsx(Zt,{value:w,children:he}),t[72]=w,t[73]=he,t[74]=_e):_e=t[74],_e}const R=r?void 0:v.createNewTask;let E;t[75]!==v.chatOpen||t[76]!==v.toggleChat||t[77]!==R?(E=o.jsx(or.Toggles,{children:o.jsx(bg,{chatOpen:v.chatOpen,toggleChat:v.toggleChat,onNewTask:R})}),t[75]=v.chatOpen,t[76]=v.toggleChat,t[77]=R,t[78]=E):E=t[78];let C;t[79]!==v.taskId||t[80]!==u?(C=o.jsx(or.Tabs,{children:o.jsx(Al,{virtualMcpId:u,taskId:v.taskId})}),t[79]=v.taskId,t[80]=u,t[81]=C):C=t[81];const P=m?.metadata?.vmMap;let A;t[82]!==m?(A=o.jsx($g,{virtualMcp:m}),t[82]=m,t[83]=A):A=t[83];let $;t[84]!==v.createNewTask?($=o.jsx($o,{onNewTaskRef:j,createNewTask:v.createNewTask}),t[84]=v.createNewTask,t[85]=$):$=t[85];let K;t[86]===Symbol.for("react.memo_cache_sentinel")?(K=o.jsx(zo,{}),t[86]=K):K=t[86];let q;t[87]!==v.chatOpen||t[88]!==v.mainOpen||t[89]!==v.taskId||t[90]!==u?(q=o.jsx(xg,{virtualMcpId:u,taskId:v.taskId,chatOpen:v.chatOpen,mainOpen:v.mainOpen,chatContent:K}),t[87]=v.chatOpen,t[88]=v.mainOpen,t[89]=v.taskId,t[90]=u,t[91]=q):q=t[91];let F;t[92]!==b||t[93]!==P||t[94]!==A||t[95]!==$||t[96]!==q||t[97]!==u?(F=o.jsxs(Fo,{virtualMcpId:u,hasActiveGithubRepo:b,vmMap:P,children:[A,$,q]}),t[92]=b,t[93]=P,t[94]=A,t[95]=$,t[96]=q,t[97]=u,t[98]=F):F=t[98];let Y;t[99]!==D||t[100]!==C||t[101]!==F?(Y=o.jsxs(Ce.Provider,{virtualMcpId:D,children:[C,F]},D),t[99]=D,t[100]=C,t[101]=F,t[102]=Y):Y=t[102];let J;return t[103]!==w||t[104]!==E||t[105]!==Y?(J=o.jsx("div",{className:"flex-1 min-w-0 flex flex-col",children:o.jsxs(Zt,{value:w,children:[E,Y]})}),t[103]=w,t[104]=E,t[105]=Y,t[106]=J):J=t[106],J}function tx(){const t=z.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=o.jsx(B.Suspense,{fallback:o.jsx("div",{className:"flex-1 flex items-center justify-center",children:o.jsx($e,{size:20,className:"animate-spin text-muted-foreground"})}),children:o.jsx(Ug,{})}),t[0]=e):e=t[0],e}export{tx as default,Fg as useInsetContext};