decocms 4.21.0 → 4.22.1

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 (277) hide show
  1. package/dist/client/assets/{AlertCircle-DrgnpYmf.js → AlertCircle-hfr9WJXe.js} +1 -1
  2. package/dist/client/assets/{ArrowUpRight-CEF-CsVj.js → ArrowUpRight-DBXurizV.js} +1 -1
  3. package/dist/client/assets/Check-DhEV1E4F.js +1 -0
  4. package/dist/client/assets/{CheckCircle-xbzaC4iQ.js → CheckCircle-CbuPUNoj.js} +1 -1
  5. package/dist/client/assets/{ChevronDown-DDeoixaJ.js → ChevronDown-BJvvkmIr.js} +1 -1
  6. package/dist/client/assets/{ChevronRight-Cc93D1fP.js → ChevronRight-BP1EbKKr.js} +1 -1
  7. package/dist/client/assets/ChevronUp-CVqQKtsY.js +1 -0
  8. package/dist/client/assets/Circle-BnMDtDeu.js +1 -0
  9. package/dist/client/assets/Copy01-Cm6DymEJ.js +1 -0
  10. package/dist/client/assets/DotsVertical-BU3qKzJo.js +1 -0
  11. package/dist/client/assets/Eye-CtocRVwR.js +1 -0
  12. package/dist/client/assets/{FilterLines-C174NPGB.js → FilterLines-XaejSF3d.js} +1 -1
  13. package/dist/client/assets/{Globe01-y8c9C4nH.js → Globe01-CxIEuzOP.js} +1 -1
  14. package/dist/client/assets/{Globe04-v8yJBvO0.js → Globe04-DZ-Pm9xo.js} +1 -1
  15. package/dist/client/assets/{HardDrive-vkw_bVtH.js → HardDrive-C2sIA93N.js} +1 -1
  16. package/dist/client/assets/{Key01-8wUzNiiB.js → Key01-D8bQG_zp.js} +1 -1
  17. package/dist/client/assets/{LayoutLeft-DFSfhhoN.js → LayoutLeft-C8PdEJOQ.js} +1 -1
  18. package/dist/client/assets/{LinkExternal01-CPcvHi4V.js → LinkExternal01-D58rAWvm.js} +1 -1
  19. package/dist/client/assets/List-vf0HKUEp.js +1 -0
  20. package/dist/client/assets/Loading02-DejqZGnO.js +1 -0
  21. package/dist/client/assets/{Monitor01-DQ9B5dBT.js → Monitor01-CodDwsVO.js} +1 -1
  22. package/dist/client/assets/{Palette-BP0gnn-x.js → Palette-CgTelSEQ.js} +1 -1
  23. package/dist/client/assets/{Play-6woe_bCf.js → Play-Dh4_54hC.js} +1 -1
  24. package/dist/client/assets/{Plus-sSvDtP2D.js → Plus-DX9uB6jT.js} +1 -1
  25. package/dist/client/assets/{SearchLg-BHGwQ11F.js → SearchLg-D0ZqoPSb.js} +1 -1
  26. package/dist/client/assets/{SearchMd-DcwBMfFO.js → SearchMd-DWSBWjan.js} +1 -1
  27. package/dist/client/assets/{Settings02-B0ZT4yzH.js → Settings02-CZ9vMUyw.js} +1 -1
  28. package/dist/client/assets/{Shield01-16ivhP9D.js → Shield01-DvUXE0jO.js} +1 -1
  29. package/dist/client/assets/{Star01-BwzFDtQr.js → Star01-7qhyucrX.js} +1 -1
  30. package/dist/client/assets/{Stars01-D_GgsBTV.js → Stars01-DN1mvd59.js} +1 -1
  31. package/dist/client/assets/{Stars02-CgeR-sX4.js → Stars02-CFivD_f8.js} +1 -1
  32. package/dist/client/assets/{Sun-vVeG2mZ0.js → Sun-CHp4Y1Dq.js} +1 -1
  33. package/dist/client/assets/SwitchHorizontal01-sG-IqCt6.js +1 -0
  34. package/dist/client/assets/{Tool01-BUi-a5a2.js → Tool01-DGnLcysQ.js} +1 -1
  35. package/dist/client/assets/{Trash01-YsCUBRvj.js → Trash01-CAEn55T5.js} +1 -1
  36. package/dist/client/assets/{Upload01-CTPdQzyc.js → Upload01-DKn5tYXN.js} +1 -1
  37. package/dist/client/assets/{User01-C4JQrjGt.js → User01-IYcmkjnc.js} +1 -1
  38. package/dist/client/assets/{Users01-TIl6xBro.js → Users01-0WxprMle.js} +1 -1
  39. package/dist/client/assets/{Users03-Cw_16vbZ.js → Users03-DHP7OUDR.js} +1 -1
  40. package/dist/client/assets/{X-CAjmVwOR.js → X-BWG-JTku.js} +1 -1
  41. package/dist/client/assets/{XCircle-D3nhMqns.js → XCircle-C94QFqN0.js} +1 -1
  42. package/dist/client/assets/{XClose-B93vthJT.js → XClose-CQikaAXa.js} +1 -1
  43. package/dist/client/assets/{Zap-8CUqVoBU.js → Zap-DeHaXJHA.js} +1 -1
  44. package/dist/client/assets/{ZapSquare-BDUSHcAn.js → ZapSquare-DBjTUciD.js} +1 -1
  45. package/dist/client/assets/{ZoomOut-BN-KB_0J.js → ZoomOut-DltoXGbL.js} +1 -1
  46. package/dist/client/assets/{access-gate-B6S-WMth.js → access-gate-CaRDuo1w.js} +1 -1
  47. package/dist/client/assets/{add-section-modal-CQq5kJUo.js → add-section-modal-Dkbb81MA.js} +1 -1
  48. package/dist/client/assets/agent-capabilities-BBWlBKsQ.js +1 -0
  49. package/dist/client/assets/agent-icon-CuxkxUe-.js +1 -0
  50. package/dist/client/assets/agents-list-BiXTIWXs.js +1 -0
  51. package/dist/client/assets/ai-providers-BQfoPc8M.js +1 -0
  52. package/dist/client/assets/{alert-BBmFOgXs.js → alert-BU-LVOFa.js} +1 -1
  53. package/dist/client/assets/{alert-dialog-ClCDLHyi.js → alert-dialog-BLM89Cw2.js} +1 -1
  54. package/dist/client/assets/app-editor-BxQrAgCs.js +1 -0
  55. package/dist/client/assets/{auth-CxjVr2Fw.js → auth-By4coGKl.js} +1 -1
  56. package/dist/client/assets/{auth-catchall-DCUDZpnm.js → auth-catchall-CZA5Hfvu.js} +1 -1
  57. package/dist/client/assets/{auth-entry-CDU8nxvN.js → auth-entry-HXEUnKNQ.js} +1 -1
  58. package/dist/client/assets/{auth-split-layout-VRGxSLqT.js → auth-split-layout-X0hXvUdh.js} +1 -1
  59. package/dist/client/assets/{authenticate-and-persist-oauth-CZ-MLzKy.js → authenticate-and-persist-oauth-1U_DESs3.js} +1 -1
  60. package/dist/client/assets/{automation-list-row-B57SiMbH.js → automation-list-row-BMTjAch1.js} +1 -1
  61. package/dist/client/assets/automation-runs-C8J9he9y.js +1 -0
  62. package/dist/client/assets/automations-CJ9i_c9k.js +1 -0
  63. package/dist/client/assets/{avatar-BAkTMYHj.js → avatar-BeEkEhV9.js} +1 -1
  64. package/dist/client/assets/{badge-CxIGH9s7.js → badge-EC_FS1hJ.js} +1 -1
  65. package/dist/client/assets/{block-document-sOmo01vI.js → block-document-zDNpXx1K.js} +1 -1
  66. package/dist/client/assets/{brand-context-rYfc__eE.js → brand-context-BkgDlw8b.js} +1 -1
  67. package/dist/client/assets/{breadcrumb-WlMbFTff.js → breadcrumb-UZDdQrwI.js} +1 -1
  68. package/dist/client/assets/buckets-8plr1d-P.js +1 -0
  69. package/dist/client/assets/bulk-category-panel-76hRbL0c.js +1 -0
  70. package/dist/client/assets/{capability-load-error-Bj6xKhKF.js → capability-load-error-6mU8gg9S.js} +1 -1
  71. package/dist/client/assets/{card-9jdGQNnr.js → card-Cd_UT82w.js} +1 -1
  72. package/dist/client/assets/category-editor-CAmRTXwv.js +1 -0
  73. package/dist/client/assets/{chat-context-OmrHZlWm.js → chat-context-BEYxfvRE.js} +5 -5
  74. package/dist/client/assets/checkbox-B7ovMLyf.js +1 -0
  75. package/dist/client/assets/{cli-auth-success-CkMPwuV_.js → cli-auth-success-LMcjXaku.js} +1 -1
  76. package/dist/client/assets/collection-detail-D-KxR4bK.js +1 -0
  77. package/dist/client/assets/collection-display-button-DmoD5b6J.js +1 -0
  78. package/dist/client/assets/{collection-search-BHP0uS8b.js → collection-search-_ltIvUcU.js} +1 -1
  79. package/dist/client/assets/{collection-table-wrapper-DeKnxXxy.js → collection-table-wrapper-Cz2kpo8j.js} +1 -1
  80. package/dist/client/assets/{collection-tabs-CvLerKx4.js → collection-tabs-ByJ2lCEV.js} +1 -1
  81. package/dist/client/assets/{command-D9kK6qBS.js → command-D8TSS276.js} +1 -1
  82. package/dist/client/assets/commerce-onboarding-BlroNemj.js +1 -0
  83. package/dist/client/assets/connect-desktop-dialog-D4NpUtWr.js +1 -0
  84. package/dist/client/assets/connection-card-COLJGGyb.js +1 -0
  85. package/dist/client/assets/connection-detail-IEtqvqDx.js +1 -0
  86. package/dist/client/assets/{connection-form-helpers-oKSRt7Z9.js → connection-form-helpers-Bx2EyqE0.js} +1 -1
  87. package/dist/client/assets/connections-CtMf6Y72.js +1 -0
  88. package/dist/client/assets/constants-C8_Swa4x.js +1 -0
  89. package/dist/client/assets/{decopilot-xPgbGeJc.js → decopilot-CphvkEuu.js} +1 -1
  90. package/dist/client/assets/{decopilot-sse-pool-BdE-V58A.js → decopilot-sse-pool-tveLasMO.js} +1 -1
  91. package/dist/client/assets/{dialog-D_ieAQTy.js → dialog-1PlbGnxl.js} +1 -1
  92. package/dist/client/assets/{domain-settings-ByTW2skH.js → domain-settings-C5LwCZzv.js} +1 -1
  93. package/dist/client/assets/{drawer-BP70Rujn.js → drawer-D7F9J8H1.js} +1 -1
  94. package/dist/client/assets/dropdown-menu-DgucD0Wn.js +1 -0
  95. package/dist/client/assets/{empty-state-BS7npFnj.js → empty-state-CKmzL0iR.js} +1 -1
  96. package/dist/client/assets/extract-connection-data-DXmsDXzN.js +1 -0
  97. package/dist/client/assets/file-explorer-Dw7VTTo2.js +2 -0
  98. package/dist/client/assets/{file-type-icon-DALXnNwz.js → file-type-icon-CjQ-i8Tj.js} +1 -1
  99. package/dist/client/assets/{files-hG4e0Y52.js → files-4PjS2DE6.js} +1 -1
  100. package/dist/client/assets/{form-DaxgojJl.js → form-DY5CJF6A.js} +1 -1
  101. package/dist/client/assets/format-time-Cy7tTmZp.js +1 -0
  102. package/dist/client/assets/general-B1x-jxiu.js +1 -0
  103. package/dist/client/assets/github-repo-picker-C928_gR2.js +1 -0
  104. package/dist/client/assets/{hooks-ChlRS_Cr.js → hooks-C98PDXkO.js} +4 -4
  105. package/dist/client/assets/{index-DpMErrhr.js → index-3pMCJF1F.js} +1 -1
  106. package/dist/client/assets/{index-DgNLMhiy.js → index-BIvxcsMT.js} +25 -25
  107. package/dist/client/assets/{index-CvxPzQfb.js → index-BeJ1yeue.js} +1 -1
  108. package/dist/client/assets/{index-DSNOu07Q.js → index-BhywTD9L.js} +12 -12
  109. package/dist/client/assets/{index-xZ8IGJ2g.js → index-BnU8c8Ro.js} +2 -2
  110. package/dist/client/assets/{index-6Q-DcRF4.js → index-CCO5X6vK.js} +1 -1
  111. package/dist/client/assets/{index-CYTkc5bj.js → index-CXhPz6Na.js} +1 -1
  112. package/dist/client/assets/index-ChDm4HPz.js +1 -0
  113. package/dist/client/assets/{index-CrIRvXb3.js → index-Co62zZxD.js} +4 -4
  114. package/dist/client/assets/index-CveMeMql.css +1 -0
  115. package/dist/client/assets/{index-7osCyUPH.js → index-D2iM60An.js} +1 -1
  116. package/dist/client/assets/index-D7F2qNe_.js +1 -0
  117. package/dist/client/assets/index-DBJUANyT.js +1 -0
  118. package/dist/client/assets/{index-Bo5LvjuQ.js → index-DPO0Ar5L.js} +6 -6
  119. package/dist/client/assets/{index-yloThw-p.js → index-Du424YAy.js} +1 -1
  120. package/dist/client/assets/{index-redirect-TiE2LCg3.js → index-redirect-B-jN-fhS.js} +1 -1
  121. package/dist/client/assets/{input-CjQtu1h5.js → input-C-5bkxwu.js} +1 -1
  122. package/dist/client/assets/{integration-icon-DvmR_kCi.js → integration-icon-DWcR_mMd.js} +1 -1
  123. package/dist/client/assets/{invite-member-dialog-BHrSHQE6.js → invite-member-dialog-c6uPezaw.js} +2 -2
  124. package/dist/client/assets/{label-CyPUYQaT.js → label-CuPUA6lI.js} +1 -1
  125. package/dist/client/assets/{library-tab-CrasAutb.js → library-tab-B9PQjg9x.js} +3 -3
  126. package/dist/client/assets/{login-C4Xj3ZGq.js → login-MwH_nULc.js} +1 -1
  127. package/dist/client/assets/{mcp-oauth-Cjq6PMkC.js → mcp-oauth-BFb5Mr2N.js} +1 -1
  128. package/dist/client/assets/members-DMKRSesY.js +1 -0
  129. package/dist/client/assets/{monaco-editor-kdhsccRw.js → monaco-editor-B_E6MYgL.js} +1 -1
  130. package/dist/client/assets/{monitoring-stats-row-DeKE4QGN.js → monitoring-stats-row-CDUo4bJg.js} +1 -1
  131. package/dist/client/assets/{oauth-callback-CTt195fk.js → oauth-callback-CpqRc4mk.js} +1 -1
  132. package/dist/client/assets/{oauth-callback-ai-provider-CXZF8sn_.js → oauth-callback-ai-provider-BEZ67TTl.js} +1 -1
  133. package/dist/client/assets/{onboarding-BgKa_2mX.js → onboarding-DY1XdIjP.js} +1 -1
  134. package/dist/client/assets/{org-install-CFWrpbg8.js → org-install-_qYii8TY.js} +1 -1
  135. package/dist/client/assets/{org-layout-B7y5gvzJ.js → org-layout-CH6-dACM.js} +1 -1
  136. package/dist/client/assets/{organization-choice-LKw28vSy.js → organization-choice-q9IVQdh1.js} +1 -1
  137. package/dist/client/assets/{page-seo-form-DmWg08s4.js → page-seo-form-Dl3vlbYl.js} +1 -1
  138. package/dist/client/assets/page-seo-sheet-pnb4BjH1.js +1 -0
  139. package/dist/client/assets/{popover-Dk6C_xyw.js → popover-BnhIWYgB.js} +1 -1
  140. package/dist/client/assets/post-editor-BzHE5onr.js +1 -0
  141. package/dist/client/assets/{primitives-D3eMc46F.js → primitives-B_yiwpb8.js} +1 -1
  142. package/dist/client/assets/profile-q_xefMdi.js +1 -0
  143. package/dist/client/assets/project-app-view-BoTA9-Gv.js +1 -0
  144. package/dist/client/assets/record-editor-C6Mdc0zg.js +1 -0
  145. package/dist/client/assets/registry-BRcT-CVu.js +2 -0
  146. package/dist/client/assets/{registry-layout-BljHeZAP.js → registry-layout-CY97jFJ5.js} +4 -4
  147. package/dist/client/assets/{require-capability-ByiCIEvf.js → require-capability-B4CjdwjM.js} +1 -1
  148. package/dist/client/assets/{required-auth-layout-B1_k8uZH.js → required-auth-layout-B14liizk.js} +1 -1
  149. package/dist/client/assets/{reset-password-14ERSLOr.js → reset-password-xrDJRi-g.js} +1 -1
  150. package/dist/client/assets/roles-Bjp9hGjL.js +1 -0
  151. package/dist/client/assets/{scroll-area-DVEw9jTn.js → scroll-area-CiGoarGm.js} +11 -11
  152. package/dist/client/assets/{search-input-Cw7dukB_.js → search-input-CmJ7IuJz.js} +1 -1
  153. package/dist/client/assets/secrets-CuAdzo5u.js +1 -0
  154. package/dist/client/assets/{sections-editor-Bnz1L7UN.js → sections-editor-CDssHvQJ.js} +2 -2
  155. package/dist/client/assets/select-XC9B8kYb.js +1 -0
  156. package/dist/client/assets/{select-model-1JGm9WVZ.js → select-model-Bb4qdZ4V.js} +1 -1
  157. package/dist/client/assets/seo-editor-CBv7uxMZ.js +1 -0
  158. package/dist/client/assets/{settings-layout-f8IHCdTn.js → settings-layout-D8XYD_1r.js} +1 -1
  159. package/dist/client/assets/{settings-section-CTfa0pnb.js → settings-section-CZoUIOGy.js} +1 -1
  160. package/dist/client/assets/{sheet-B3x8ZiS-.js → sheet-DMsXF2a5.js} +1 -1
  161. package/dist/client/assets/{shell-controls-C4LCUc-y.js → shell-controls-K02mDLgA.js} +1 -1
  162. package/dist/client/assets/shell-layout-CX1dOlGj.js +1 -0
  163. package/dist/client/assets/{sidebar-C8N0hRhw.js → sidebar-BxApc71_.js} +1 -1
  164. package/dist/client/assets/{skeleton-C5L5O22N.js → skeleton-CS6PjKeZ.js} +1 -1
  165. package/dist/client/assets/sso-DEuC0ilk.js +1 -0
  166. package/dist/client/assets/store-CW4k1iID.js +1 -0
  167. package/dist/client/assets/store-registry-C0XIPk1o.js +2 -0
  168. package/dist/client/assets/{studio-tools-kXfq3pN5.js → studio-tools-DGpKprde.js} +1 -1
  169. package/dist/client/assets/{switch-BL5aJnqG.js → switch-BofmoE_g.js} +1 -1
  170. package/dist/client/assets/{table-77ubNeic.js → table-Cbxpe5u6.js} +1 -1
  171. package/dist/client/assets/{tabs-Dh_kZG_m.js → tabs-mPJyea1e.js} +1 -1
  172. package/dist/client/assets/task-row-BrC9ZQiv.js +1 -0
  173. package/dist/client/assets/task-status-MSiVemqS.js +1 -0
  174. package/dist/client/assets/{textarea-D5nE7rMP.js → textarea-BJ7uXt99.js} +1 -1
  175. package/dist/client/assets/{toggle-group-oUYd1Jxm.js → toggle-group-CRVZDsng.js} +1 -1
  176. package/dist/client/assets/{toolbar-BSesNl59.js → toolbar-BIJJ6VS7.js} +1 -1
  177. package/dist/client/assets/{toolbar-icon-button-Da4GFxZS.js → toolbar-icon-button-sU8FyquD.js} +1 -1
  178. package/dist/client/assets/{tools-list-JC_5uk0t.js → tools-list-D-u8vbQL.js} +1 -1
  179. package/dist/client/assets/{tooltip-B3h8W9fM.js → tooltip-BGL3A5jy.js} +1 -1
  180. package/dist/client/assets/{types-H_rr3OSP.js → types-DUULP3Cg.js} +1 -1
  181. package/dist/client/assets/{use-ai-providers-lTSdzFgc.js → use-ai-providers-CGMLoVgI.js} +1 -1
  182. package/dist/client/assets/use-automations-eYq1QdPO.js +1 -0
  183. package/dist/client/assets/{use-capability-Cgr7yHYD.js → use-capability--pStQfW2.js} +1 -1
  184. package/dist/client/assets/use-clock-tick-CF30qkon.js +1 -0
  185. package/dist/client/assets/{use-collections-Bb5vIdWQ.js → use-collections-DaNfbX0Q.js} +1 -1
  186. package/dist/client/assets/use-connection-rw8Y5wYH.js +1 -0
  187. package/dist/client/assets/{use-copy-ClKjk1Nz.js → use-copy-CLk0PZni.js} +1 -1
  188. package/dist/client/assets/{use-create-virtual-mcp-BcrC97GS.js → use-create-virtual-mcp-B_ygxy0B.js} +1 -1
  189. package/dist/client/assets/{use-debounced-autosave-CEbGGyRe.js → use-debounced-autosave-Chq2pCXJ.js} +1 -1
  190. package/dist/client/assets/{use-debounced-value-BCxrmAGw.js → use-debounced-value-DarNUEml.js} +1 -1
  191. package/dist/client/assets/{use-decopilot-events-CkQ3Rugh.js → use-decopilot-events-C4jxMeza.js} +1 -1
  192. package/dist/client/assets/{use-delete-connection-COjWhEca.js → use-delete-connection-GWWQ0NwP.js} +1 -1
  193. package/dist/client/assets/{use-file-configs-CxoqQtr4.js → use-file-configs--8K7Ji7z.js} +1 -1
  194. package/dist/client/assets/{use-infinite-scroll-DqqX0EF_.js → use-infinite-scroll-C2oRLreW.js} +1 -1
  195. package/dist/client/assets/{use-join-requests-BFV1IEGJ.js → use-join-requests-n3oXhO9U.js} +1 -1
  196. package/dist/client/assets/use-mcp-client-DbN0o_29.js +10 -0
  197. package/dist/client/assets/{use-mcp-prompts-F7AgPwEV.js → use-mcp-prompts-k9BBdGe-.js} +1 -1
  198. package/dist/client/assets/{use-mcp-tools-UjXU5ids.js → use-mcp-tools-BaQM5Bz7.js} +1 -1
  199. package/dist/client/assets/{use-members-B-1xXj0d.js → use-members-CJvmy-r3.js} +1 -1
  200. package/dist/client/assets/{use-mobile-CTYLPqKT.js → use-mobile-CdswWdV_.js} +1 -1
  201. package/dist/client/assets/{use-navigate-to-agent-ZLpx01PW.js → use-navigate-to-agent-yzOIB4ca.js} +1 -1
  202. package/dist/client/assets/{use-org-auth-client-NLz6RBvg.js → use-org-auth-client-DQwimkN2.js} +1 -1
  203. package/dist/client/assets/{use-org-sso-nbZu8iS1.js → use-org-sso-DRbO1SYZ.js} +1 -1
  204. package/dist/client/assets/{use-organization-roles-BEuKNbP8.js → use-organization-roles-CoVa3Svg.js} +1 -1
  205. package/dist/client/assets/use-organization-settings-B87409No.js +1 -0
  206. package/dist/client/assets/use-registry-connections-DPvd05bN.js +1 -0
  207. package/dist/client/assets/{use-secrets-CIN5lIiD.js → use-secrets-BfSDmFK4.js} +1 -1
  208. package/dist/client/assets/{use-status-sounds-Bl8mPZM3.js → use-status-sounds-DzIbcTbB.js} +1 -1
  209. package/dist/client/assets/{use-view-mode-DE98MrNw.js → use-view-mode-viB7TTSY.js} +1 -1
  210. package/dist/client/assets/use-virtual-mcp-st0OLLtk.js +1 -0
  211. package/dist/client/assets/useInfiniteQuery-Cd0Nyb0J.js +1 -0
  212. package/dist/client/assets/useSuspenseInfiniteQuery-DO0pAzSF.js +1 -0
  213. package/dist/client/assets/{useSuspenseQueries-g9RVw8Va.js → useSuspenseQueries-_jBEPc9k.js} +1 -1
  214. package/dist/client/assets/variant-calendar-BaDsfBeS.js +1 -0
  215. package/dist/client/assets/{view-mode-toggle-B3xxjWBP.js → view-mode-toggle-BekCb9Y2.js} +1 -1
  216. package/dist/client/index.html +2 -2
  217. package/dist/server/cli.js +513 -523
  218. package/dist/server/migrate.js +83 -83
  219. package/dist/server/server.js +314 -314
  220. package/package.json +1 -1
  221. package/dist/client/assets/ChevronUp-C2DYINXH.js +0 -1
  222. package/dist/client/assets/DotsVertical-CB1RTV9h.js +0 -1
  223. package/dist/client/assets/Eye-DHiUyPMS.js +0 -1
  224. package/dist/client/assets/SwitchHorizontal01-DTag6ZGf.js +0 -1
  225. package/dist/client/assets/agent-capabilities-BLdjNi42.js +0 -1
  226. package/dist/client/assets/agent-icon-HIFEO6vs.js +0 -1
  227. package/dist/client/assets/agents-list-YngYFo7C.js +0 -1
  228. package/dist/client/assets/ai-providers-BbExXFlh.js +0 -1
  229. package/dist/client/assets/app-editor-dXgIlUYv.js +0 -1
  230. package/dist/client/assets/automation-runs-LATF_NNh.js +0 -1
  231. package/dist/client/assets/automations-BBkP1No_.js +0 -1
  232. package/dist/client/assets/buckets-oHa98Efr.js +0 -1
  233. package/dist/client/assets/bulk-category-panel-C9FEvCBV.js +0 -1
  234. package/dist/client/assets/category-editor-Y8aXIh-A.js +0 -1
  235. package/dist/client/assets/checkbox-DnPlj3-W.js +0 -1
  236. package/dist/client/assets/collection-detail-C28Se3ZZ.js +0 -1
  237. package/dist/client/assets/collection-display-button-DOUzSfH_.js +0 -1
  238. package/dist/client/assets/commerce-onboarding-Dwo4yg2j.js +0 -1
  239. package/dist/client/assets/connect-desktop-dialog-3SiI_mFd.js +0 -1
  240. package/dist/client/assets/connection-card-MLfvU4EZ.js +0 -1
  241. package/dist/client/assets/connection-detail-AC0jwDBB.js +0 -1
  242. package/dist/client/assets/connections-DNvp-Wd0.js +0 -1
  243. package/dist/client/assets/dropdown-menu-Ctb60TB7.js +0 -1
  244. package/dist/client/assets/extract-connection-data-RxV5HgFK.js +0 -1
  245. package/dist/client/assets/file-explorer-CqV9i4IM.js +0 -2
  246. package/dist/client/assets/general-mdgztBV6.js +0 -1
  247. package/dist/client/assets/github-repo-picker-CZI-ClVg.js +0 -1
  248. package/dist/client/assets/index-B1I1Oi0g.css +0 -1
  249. package/dist/client/assets/index-BMeJsDzW.js +0 -1
  250. package/dist/client/assets/index-DoOMda_E.js +0 -1
  251. package/dist/client/assets/members-C-oUAFwh.js +0 -1
  252. package/dist/client/assets/page-seo-sheet-Cg02Z-pf.js +0 -1
  253. package/dist/client/assets/post-editor-DoYb2wDl.js +0 -1
  254. package/dist/client/assets/profile-D3nqggYc.js +0 -1
  255. package/dist/client/assets/project-app-view-B9CUuk6-.js +0 -1
  256. package/dist/client/assets/record-editor-CjPHKje-.js +0 -1
  257. package/dist/client/assets/registry-8Yn6aIkw.js +0 -2
  258. package/dist/client/assets/roles-Dk6u6yco.js +0 -1
  259. package/dist/client/assets/secrets-CswlU-Ba.js +0 -1
  260. package/dist/client/assets/select-bneCBMXH.js +0 -1
  261. package/dist/client/assets/seo-editor-D0gZRnH2.js +0 -1
  262. package/dist/client/assets/shell-layout-CSNtx2tN.js +0 -1
  263. package/dist/client/assets/sso-CmKVccvq.js +0 -1
  264. package/dist/client/assets/store-DnZXwM23.js +0 -1
  265. package/dist/client/assets/store-registry-DzUKthzk.js +0 -2
  266. package/dist/client/assets/task-row-LdEr6awi.js +0 -1
  267. package/dist/client/assets/task-status-DNIO7fCq.js +0 -1
  268. package/dist/client/assets/use-automations-1J-hXDhd.js +0 -1
  269. package/dist/client/assets/use-clock-tick-D7gbCPid.js +0 -1
  270. package/dist/client/assets/use-connection-C0zEwTpO.js +0 -1
  271. package/dist/client/assets/use-mcp-client-C62ZsAPE.js +0 -10
  272. package/dist/client/assets/use-organization-settings-Dys1xzl0.js +0 -1
  273. package/dist/client/assets/use-registry-connections-By0sWOC0.js +0 -1
  274. package/dist/client/assets/use-virtual-mcp-D_g2q7bN.js +0 -1
  275. package/dist/client/assets/useInfiniteQuery-YzbBhr0w.js +0 -1
  276. package/dist/client/assets/useSuspenseInfiniteQuery-Cgpvcam3.js +0 -1
  277. package/dist/client/assets/variant-calendar-CHjE3Ibi.js +0 -1
@@ -1 +0,0 @@
1
- import{c,j as i,dH as f,dI as m,l as u,dJ as g,dK as x,dL as v,dM as b,dN as h,dO as w,dP as j,dQ as N,dR as z,dS as _,dT as y,dU as p}from"./index-DgNLMhiy.js";import{i as $}from"./ChevronUp-C2DYINXH.js";import{i as D}from"./ChevronRight-Cc93D1fP.js";import{a as M}from"./DotsVertical-CB1RTV9h.js";function C(a){const e=c.c(4);let t;e[0]!==a?({...t}=a,e[0]=a,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(f,{"data-slot":"dropdown-menu",...t}),e[2]=t,e[3]=s):s=e[3],s}function T(a){const e=c.c(4);let t;e[0]!==a?({...t}=a,e[0]=a,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(m,{"data-slot":"dropdown-menu-trigger",...t}),e[2]=t,e[3]=s):s=e[3],s}function L(a){const e=c.c(10);let t,s,o;e[0]!==a?({className:t,sideOffset:o,...s}=a,e[0]=a,e[1]=t,e[2]=s,e[3]=o):(t=e[1],s=e[2],o=e[3]);const n=o===void 0?4:o;let r;e[4]!==t?(r=u("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg border p-1 shadow-md",t),e[4]=t,e[5]=r):r=e[5];let d;return e[6]!==s||e[7]!==n||e[8]!==r?(d=i.jsx(x,{children:i.jsx(v,{"data-slot":"dropdown-menu-content",sideOffset:n,className:r,...s})}),e[6]=s,e[7]=n,e[8]=r,e[9]=d):d=e[9],d}function O(a){const e=c.c(12);let t,s,o,n;e[0]!==a?({className:t,inset:s,variant:n,...o}=a,e[0]=a,e[1]=t,e[2]=s,e[3]=o,e[4]=n):(t=e[1],s=e[2],o=e[3],n=e[4]);const r=n===void 0?"default":n;let d;e[5]!==t?(d=u("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-pointer items-center gap-2 rounded-lg px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",t),e[5]=t,e[6]=d):d=e[6];let l;return e[7]!==s||e[8]!==o||e[9]!==d||e[10]!==r?(l=i.jsx(g,{"data-slot":"dropdown-menu-item","data-inset":s,"data-variant":r,className:d,...o}),e[7]=s,e[8]=o,e[9]=d,e[10]=r,e[11]=l):l=e[11],l}function E(a){const e=c.c(13);let t,s,o,n;e[0]!==a?({className:o,children:s,checked:t,...n}=a,e[0]=a,e[1]=t,e[2]=s,e[3]=o,e[4]=n):(t=e[1],s=e[2],o=e[3],n=e[4]);let r;e[5]!==o?(r=u("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-lg py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",o),e[5]=o,e[6]=r):r=e[6];let d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=i.jsx("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:i.jsx(p,{children:i.jsx($,{className:"size-4"})})}),e[7]=d):d=e[7];let l;return e[8]!==t||e[9]!==s||e[10]!==n||e[11]!==r?(l=i.jsxs(h,{"data-slot":"dropdown-menu-checkbox-item",className:r,checked:t,...n,children:[d,s]}),e[8]=t,e[9]=s,e[10]=n,e[11]=r,e[12]=l):l=e[12],l}function G(a){const e=c.c(4);let t;e[0]!==a?({...t}=a,e[0]=a,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(_,{"data-slot":"dropdown-menu-radio-group",...t}),e[2]=t,e[3]=s):s=e[3],s}function P(a){const e=c.c(11);let t,s,o;e[0]!==a?({className:s,children:t,...o}=a,e[0]=a,e[1]=t,e[2]=s,e[3]=o):(t=e[1],s=e[2],o=e[3]);let n;e[4]!==s?(n=u("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-lg py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),e[4]=s,e[5]=n):n=e[5];let r;e[6]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsx("span",{className:"pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",children:i.jsx(p,{children:i.jsx(M,{className:"size-2 fill-current"})})}),e[6]=r):r=e[6];let d;return e[7]!==t||e[8]!==o||e[9]!==n?(d=i.jsxs(y,{"data-slot":"dropdown-menu-radio-item",className:n,...o,children:[r,t]}),e[7]=t,e[8]=o,e[9]=n,e[10]=d):d=e[10],d}function H(a){const e=c.c(10);let t,s,o;e[0]!==a?({className:t,inset:s,...o}=a,e[0]=a,e[1]=t,e[2]=s,e[3]=o):(t=e[1],s=e[2],o=e[3]);let n;e[4]!==t?(n=u("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",t),e[4]=t,e[5]=n):n=e[5];let r;return e[6]!==s||e[7]!==o||e[8]!==n?(r=i.jsx(b,{"data-slot":"dropdown-menu-label","data-inset":s,className:n,...o}),e[6]=s,e[7]=o,e[8]=n,e[9]=r):r=e[9],r}function J(a){const e=c.c(8);let t,s;e[0]!==a?({className:t,...s}=a,e[0]=a,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let o;e[3]!==t?(o=u("bg-border -mx-1 my-1 h-px",t),e[3]=t,e[4]=o):o=e[4];let n;return e[5]!==s||e[6]!==o?(n=i.jsx(w,{"data-slot":"dropdown-menu-separator",className:o,...s}),e[5]=s,e[6]=o,e[7]=n):n=e[7],n}function K(a){const e=c.c(4);let t;e[0]!==a?({...t}=a,e[0]=a,e[1]=t):t=e[1];let s;return e[2]!==t?(s=i.jsx(j,{"data-slot":"dropdown-menu-sub",...t}),e[2]=t,e[3]=s):s=e[3],s}function Q(a){const e=c.c(13);let t,s,o,n;e[0]!==a?({className:s,inset:o,children:t,...n}=a,e[0]=a,e[1]=t,e[2]=s,e[3]=o,e[4]=n):(t=e[1],s=e[2],o=e[3],n=e[4]);let r;e[5]!==s?(r=u("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-lg px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8",s),e[5]=s,e[6]=r):r=e[6];let d;e[7]===Symbol.for("react.memo_cache_sentinel")?(d=i.jsx(D,{className:"ml-auto size-4"}),e[7]=d):d=e[7];let l;return e[8]!==t||e[9]!==o||e[10]!==n||e[11]!==r?(l=i.jsxs(N,{"data-slot":"dropdown-menu-sub-trigger","data-inset":o,className:r,...n,children:[t,d]}),e[8]=t,e[9]=o,e[10]=n,e[11]=r,e[12]=l):l=e[12],l}function U(a){const e=c.c(8);let t,s;e[0]!==a?({className:t,...s}=a,e[0]=a,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let o;e[3]!==t?(o=u("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",t),e[3]=t,e[4]=o):o=e[4];let n;return e[5]!==s||e[6]!==o?(n=i.jsx(z,{"data-slot":"dropdown-menu-sub-content",className:o,...s}),e[5]=s,e[6]=o,e[7]=n):n=e[7],n}export{L as D,C as a,T as b,O as c,J as d,K as e,Q as f,U as g,H as h,P as i,G as j,E as k};
@@ -1 +0,0 @@
1
- import"./index-DgNLMhiy.js";import{W as T,e as O}from"./use-mcp-client-C62ZsAPE.js";function x(e){if(!e)return null;const t=typeof e=="string"?e:e.url;if(!t)return null;const n=t.match(/github\.com[/:]([^/]+)\/([^/]+?)(?:\.git)?\/?$/);return n?{owner:n[1]||"",repo:n[2]||""}:null}function U(e){const t=x(e);if(!t)return null;const n=`https://github.com/${t.owner}.png`;return`https://images.weserv.nl/?url=${encodeURIComponent(n)}&output=webp`}function H(e,t){return e===T.REGISTRY(t)||e===T.COMMUNITY_REGISTRY(t)}function q(e,t){return H(e,t)?"COLLECTION_REGISTRY_APP_LIST":"REGISTRY_ITEM_LIST"}function B(e){if(!e)return[];const t=[];for(const n of e){let a=[];if(Array.isArray(n))a=n;else if(typeof n=="object"&&n!==null){const r=Object.keys(n).find(o=>Array.isArray(n[o]));r&&(a=n[r])}t.push(...a)}return t}const L={"streamable-http":"HTTP",http:"HTTP",sse:"SSE",stdio:"STDIO",websocket:"Websocket"};function Y(e){return e?L[e]??e.toUpperCase():null}function J(e){if(!e)return[];if(Array.isArray(e))return e;if(typeof e=="object"&&e!==null){const t=Object.keys(e).find(n=>Array.isArray(e[n]));if(t)return e[t]}return[]}async function Q(e,t,n,a,r){const o=await O({connectionId:e,orgId:t,orgSlug:n});try{const s=await o.callTool({name:a,arguments:r});return s.structuredContent??s}finally{await o.close().catch(console.error)}}const D="mcp.mesh";let G="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",$=(e=21)=>{let t="",n=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+=G[n[e]&63];return t};function j(e){return`${e}_${$()}`}function K(e){return e._meta?.["mcp.mesh"]?.appName||e.server?.name||null}function V(e){if(!e?.url)return"Unknown";try{return new URL(e.url).hostname}catch{return e.url}}function W(e){const t=e?.identifier||e?.name;return t?t.replace(/^@[^/]+\//,"").replace(/[-_]/g," ").replace(/\b\w/g,a=>a.toUpperCase()):"Unknown"}function X(e,t,n,a){const r=e.server,o=e._meta?.[D],s=new Date().toISOString(),I=o?.friendlyName||o?.friendly_name||e.title||r?.title||r?.name||"Unnamed MCP Server",R=r?.description||null,k=r?.icons?.[0]?.src||U(r?.repository)||null,i=o?.oauth_config,w=i&&typeof i.authorizationEndpoint=="string"&&typeof i.tokenEndpoint=="string"&&typeof i.clientId=="string"&&Array.isArray(i.scopes)&&(i.grantType==="authorization_code"||i.grantType==="client_credentials")?i:null,A=o?.configuration_state,C=o?.configuration_scopes,P=r?.repository?{url:r.repository.url,source:r.repository.source,subfolder:r.repository.subfolder}:null,p=r?.packages??[],d=r?.remotes??[],v=a?.packageIndex??0,S=a?.remoteIndex??0,y=p.length>0&&a?.packageIndex!==void 0,c=y?p[v]:null,l=y?null:d[S];let u,f,h=null;if(c){const _=c.identifier||c.name;u="STDIO",f="";const m={};if(c.environmentVariables)for(const b of c.environmentVariables)b.name&&(m[b.name]="");h={command:"npx",args:_?["-y",_]:[],...Object.keys(m).length>0&&{envVars:m}}}else l?(u=Y(l.type)||"HTTP",f=l.url||""):(u="HTTP",f="");const N=d.length>1,M=p.length>1;let g="";c&&M?g=` (${W(c)})`:l&&N&&(g=` (${V(l)})`);const E=I+g;return{id:j("conn"),title:E,description:R,icon:k,app_name:K(e),app_id:o?.id||e.id||null,connection_type:u,connection_url:f,connection_token:null,connection_headers:h,oauth_config:w,configuration_state:A??null,configuration_scopes:C??null,metadata:{source:"store",registry_item_id:e.id,verified:o?.verified??!1,scopeName:o?.scopeName??null,toolsCount:o?.tools?.length??0,publishedAt:o?.publishedAt??null,repository:P},created_at:s,updated_at:s,created_by:n,organization_id:t,tools:null,bindings:null,status:"inactive"}}export{j as a,K as b,Q as c,J as d,X as e,B as f,U as g,q as i};
@@ -1,2 +0,0 @@
1
- import{c as Z,r as u,j as r,i as ie,B as he,dZ as Mt,a4 as Dt,aa as se,d_ as Rt,d$ as Pt,e0 as Et,e1 as kt,bL as Tt,e2 as Ot,e3 as qe,a6 as At,e4 as Lt,e5 as Ft,e6 as It,e7 as $t,e8 as _t,e9 as zt,ea as Wt,eb as Gt,ec as Kt,l as ae,m as Bt,t as W,K as $e}from"./index-DgNLMhiy.js";import{F as Vt,l as Ut}from"./index-CYTkc5bj.js";import{i as qt,aA as Qt,aB as Ht,aC as ue,aD as Xt,Y as _e}from"./agent-icon-HIFEO6vs.js";import{a as Jt}from"./Tool01-BUi-a5a2.js";import{s as Yt}from"./XClose-B93vthJT.js";import{S as Zt}from"./scroll-area-DVEw9jTn.js";import{T as ze,a as We,b as Ge}from"./tooltip-B3h8W9fM.js";import{f as en,a as tn,b as nn,c as rn,d as on,e as sn,A as an,g as ln}from"./alert-dialog-ClCDLHyi.js";import{u as cn}from"./chat-context-OmrHZlWm.js";import{b as dn}from"./shell-layout-CSNtx2tN.js";import{s as fe,a as Ke,f as un}from"./index-DSNOu07Q.js";import{a as fn,b as mn,c as pn,D as xn,d as hn,e as gn}from"./dialog-D_ieAQTy.js";import{I as Be}from"./input-CjQtu1h5.js";import{t as vn}from"./ChevronDown-DDeoixaJ.js";import{i as yn}from"./ChevronRight-Cc93D1fP.js";import{a as Cn}from"./ZoomOut-BN-KB_0J.js";import{E as wn,v as Ve,w as Ce,x as bn,y as jn,z as Nn,A as V,C as me,g as we,D as be,G as Sn,I as Mn,J as je,K as pe,M as Ne,N as Dn,O as Rn}from"./index-Bo5LvjuQ.js";import"./AlertCircle-DrgnpYmf.js";import"./SwitchHorizontal01-DTag6ZGf.js";import"./Settings02-B0ZT4yzH.js";import"./XCircle-D3nhMqns.js";import"./ArrowUpRight-CEF-CsVj.js";import"./ZapSquare-BDUSHcAn.js";import"./Users03-Cw_16vbZ.js";import"./CheckCircle-xbzaC4iQ.js";import"./ChevronUp-C2DYINXH.js";import"./DotsVertical-CB1RTV9h.js";import"./Stars02-CgeR-sX4.js";import"./Eye-DHiUyPMS.js";import"./Globe01-y8c9C4nH.js";import"./FilterLines-C174NPGB.js";import"./Star01-BwzFDtQr.js";import"./Globe04-v8yJBvO0.js";import"./HardDrive-vkw_bVtH.js";import"./Key01-8wUzNiiB.js";import"./LayoutLeft-DFSfhhoN.js";import"./LinkExternal01-CPcvHi4V.js";import"./Monitor01-DQ9B5dBT.js";import"./Sun-vVeG2mZ0.js";import"./Palette-BP0gnn-x.js";import"./Play-6woe_bCf.js";import"./Plus-sSvDtP2D.js";import"./SearchLg-BHGwQ11F.js";import"./SearchMd-DcwBMfFO.js";import"./Shield01-16ivhP9D.js";import"./Stars01-D_GgsBTV.js";import"./Trash01-YsCUBRvj.js";import"./Upload01-CTPdQzyc.js";import"./User01-C4JQrjGt.js";import"./Users01-TIl6xBro.js";import"./X-CAjmVwOR.js";import"./Zap-8CUqVoBU.js";import"./use-clock-tick-D7gbCPid.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-ClKjk1Nz.js";import"./file-type-icon-DALXnNwz.js";import"./use-mobile-CTYLPqKT.js";import"./tab-id-CLpu897Q.js";import"./content-blocks-o63cs2vh.js";import"./types-H_rr3OSP.js";import"./use-mcp-client-C62ZsAPE.js";import"./auth-CxjVr2Fw.js";import"./hooks-ChlRS_Cr.js";import"./decopilot-sse-pool-BdE-V58A.js";import"./backoff-CrEUbyZT.js";import"./delay-CnY5UFtP.js";import"./studio-tools-kXfq3pN5.js";import"./sheet-B3x8ZiS-.js";import"./integration-icon-DvmR_kCi.js";import"./use-virtual-mcp-D_g2q7bN.js";import"./use-collections-Bb5vIdWQ.js";import"./use-navigate-to-agent-ZLpx01PW.js";import"./use-connection-C0zEwTpO.js";import"./use-mcp-prompts-F7AgPwEV.js";import"./form-DaxgojJl.js";import"./label-CyPUYQaT.js";import"./select-bneCBMXH.js";import"./use-ai-providers-lTSdzFgc.js";import"./use-decopilot-events-CkQ3Rugh.js";import"./use-organization-settings-Dys1xzl0.js";import"./avatar-BAkTMYHj.js";import"./required-auth-layout-B1_k8uZH.js";import"./use-org-sso-nbZu8iS1.js";import"./library-tab-CrasAutb.js";import"./drawer-BP70Rujn.js";import"./collection-search-BHP0uS8b.js";import"./tabs-Dh_kZG_m.js";import"./toggle-group-oUYd1Jxm.js";import"./agent-capabilities-BLdjNi42.js";import"./connection-slug-eyAPH6o3.js";import"./connection-card-MLfvU4EZ.js";import"./use-registry-connections-By0sWOC0.js";import"./useInfiniteQuery-YzbBhr0w.js";import"./use-infinite-scroll-DqqX0EF_.js";import"./extract-connection-data-RxV5HgFK.js";import"./card-9jdGQNnr.js";import"./collection-tabs-CvLerKx4.js";import"./badge-CxIGH9s7.js";import"./textarea-D5nE7rMP.js";import"./connection-form-helpers-oKSRt7Z9.js";import"./authenticate-and-persist-oauth-CZ-MLzKy.js";import"./mcp-oauth-Cjq6PMkC.js";import"./useSuspenseInfiniteQuery-Cgpvcam3.js";import"./connect-desktop-dialog-3SiI_mFd.js";import"./decopilot-xPgbGeJc.js";import"./checkbox-DnPlj3-W.js";import"./skeleton-C5L5O22N.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-CTfa0pnb.js";import"./popover-Dk6C_xyw.js";import"./command-D9kK6qBS.js";import"./index-yloThw-p.js";import"./dropdown-menu-Ctb60TB7.js";import"./question-004-sINsf4GQ.js";import"./task-row-LdEr6awi.js";import"./task-status-DNIO7fCq.js";import"./use-status-sounds-Bl8mPZM3.js";import"./empty-state-BS7npFnj.js";import"./toolbar-BSesNl59.js";import"./use-mcp-tools-UjXU5ids.js";import"./use-capability-Cgr7yHYD.js";import"./tools-list-JC_5uk0t.js";import"./switch-BL5aJnqG.js";import"./use-debounced-autosave-CEbGGyRe.js";import"./index-CvxPzQfb.js";import"./sidebar-C8N0hRhw.js";import"./search-input-Cw7dukB_.js";import"./github-repo-picker-CZI-ClVg.js";import"./use-debounced-value-BCxrmAGw.js";import"./github-installations-DzN1UQ4x.js";import"./use-secrets-CIN5lIiD.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./toolbar-icon-button-Da4GFxZS.js";import"./automation-runs-LATF_NNh.js";import"./table-77ubNeic.js";import"./use-members-B-1xXj0d.js";import"./use-org-auth-client-NLz6RBvg.js";import"./use-automations-1J-hXDhd.js";import"./use-file-configs-CxoqQtr4.js";import"./monaco-editor-kdhsccRw.js";import"./select-model-1JGm9WVZ.js";import"./automation-list-row-B57SiMbH.js";const Pn={"new-file":{title:"New File",description:"Enter a name for the new file.",submit:"Create",placeholder:"filename.ts"},"new-folder":{title:"New Folder",description:"Enter a name for the new folder.",submit:"Create",placeholder:"folder-name"},rename:{title:"Rename",description:"Enter a new name for this item.",submit:"Rename",placeholder:"new-name"}};function En(i){const e=Z.c(51),{open:s,mode:a,initialName:c,parentLabel:m,isPending:x,onSubmit:p,onOpenChange:g}=i,M=c===void 0?"":c,d=x===void 0?!1:x,[h,y]=u.useState(M),[B,U]=u.useState(s),C=Pn[a];s!==B&&(U(s),s&&y(M));let I;e[0]!==d||e[1]!==g?(I=_=>{!_&&!d&&g(!1)},e[0]=d,e[1]=g,e[2]=I):I=e[2];const H=I;let q;e[3]!==d||e[4]!==h||e[5]!==p?(q=async _=>{_.preventDefault();const K=h.trim();!K||d||await p(K)},e[3]=d,e[4]=h,e[5]=p,e[6]=q):q=e[6];const Q=q;let $;e[7]!==C.title?($=r.jsx(fn,{children:C.title}),e[7]=C.title,e[8]=$):$=e[8];let T;e[9]!==C.description?(T=r.jsx(mn,{children:C.description}),e[9]=C.description,e[10]=T):T=e[10];let G;e[11]!==$||e[12]!==T?(G=r.jsxs(pn,{children:[$,T]}),e[11]=$,e[12]=T,e[13]=G):G=e[13];let O;e[14]!==m?(O=m&&r.jsxs("div",{className:"space-y-1.5",children:[r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Location"}),r.jsx(Be,{value:m,readOnly:!0,disabled:!0,className:"font-mono text-xs"})]}),e[14]=m,e[15]=O):O=e[15];let A;e[16]===Symbol.for("react.memo_cache_sentinel")?(A=r.jsx("label",{htmlFor:"file-explorer-name",className:"text-xs font-medium text-muted-foreground",children:"Name"}),e[16]=A):A=e[16];let R;e[17]===Symbol.for("react.memo_cache_sentinel")?(R=_=>y(_.target.value),e[17]=R):R=e[17];let P;e[18]!==C.placeholder||e[19]!==d||e[20]!==h?(P=r.jsxs("div",{className:"space-y-1.5",children:[A,r.jsx(Be,{id:"file-explorer-name",value:h,onChange:R,placeholder:C.placeholder,autoFocus:!0,disabled:d})]}),e[18]=C.placeholder,e[19]=d,e[20]=h,e[21]=P):P=e[21];let j;e[22]!==P||e[23]!==O?(j=r.jsxs("div",{className:"space-y-4 py-4",children:[O,P]}),e[22]=P,e[23]=O,e[24]=j):j=e[24];let N;e[25]!==g?(N=()=>g(!1),e[25]=g,e[26]=N):N=e[26];let E;e[27]!==d||e[28]!==N?(E=r.jsx(he,{type:"button",variant:"outline",onClick:N,disabled:d,children:"Cancel"}),e[27]=d,e[28]=N,e[29]=E):E=e[29];let k;e[30]!==d||e[31]!==h?(k=!h.trim()||d,e[30]=d,e[31]=h,e[32]=k):k=e[32];let w;e[33]!==C.submit||e[34]!==d?(w=d?r.jsxs(r.Fragment,{children:[r.jsx(ie,{size:14,className:"animate-spin"}),"Saving…"]}):C.submit,e[33]=C.submit,e[34]=d,e[35]=w):w=e[35];let L;e[36]!==k||e[37]!==w?(L=r.jsx(he,{type:"submit",disabled:k,children:w}),e[36]=k,e[37]=w,e[38]=L):L=e[38];let b;e[39]!==E||e[40]!==L?(b=r.jsxs(xn,{children:[E,L]}),e[39]=E,e[40]=L,e[41]=b):b=e[41];let S;e[42]!==Q||e[43]!==j||e[44]!==b||e[45]!==G?(S=r.jsx(hn,{className:"sm:max-w-md",children:r.jsxs("form",{onSubmit:Q,children:[G,j,b]})}),e[42]=Q,e[43]=j,e[44]=b,e[45]=G,e[46]=S):S=e[46];let z;return e[47]!==H||e[48]!==s||e[49]!==S?(z=r.jsx(gn,{open:s,onOpenChange:H,children:S}),e[47]=H,e[48]=s,e[49]=S,e[50]=z):z=e[50],z}var Me="ContextMenu",[kn]=At(Me,[qe]),F=qe(),[Tn,Qe]=kn(Me),He=i=>{const{__scopeContextMenu:e,children:s,onOpenChange:a,dir:c,modal:m=!0}=i,[x,p]=u.useState(!1),g=F(e),M=Tt(a),d=u.useCallback(h=>{p(h),M(h)},[M]);return r.jsx(Tn,{scope:e,open:x,onOpenChange:d,modal:m,children:r.jsx(Ot,{...g,dir:c,open:x,onOpenChange:d,modal:m,children:s})})};He.displayName=Me;var Xe="ContextMenuTrigger",Je=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,disabled:a=!1,...c}=i,m=Qe(Xe,s),x=F(s),p=u.useRef({x:0,y:0}),g=u.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...p.current})}),M=u.useRef(0),d=u.useCallback(()=>window.clearTimeout(M.current),[]),h=y=>{p.current={x:y.clientX,y:y.clientY},m.onOpenChange(!0)};return u.useEffect(()=>d,[d]),u.useEffect(()=>{a&&d()},[a,d]),r.jsxs(r.Fragment,{children:[r.jsx(Mt,{...x,virtualRef:g}),r.jsx(Dt.span,{"data-state":m.open?"open":"closed","data-disabled":a?"":void 0,...c,ref:e,style:{WebkitTouchCallout:"none",...i.style},onContextMenu:a?i.onContextMenu:se(i.onContextMenu,y=>{d(),h(y),y.preventDefault()}),onPointerDown:a?i.onPointerDown:se(i.onPointerDown,xe(y=>{d(),M.current=window.setTimeout(()=>h(y),700)})),onPointerMove:a?i.onPointerMove:se(i.onPointerMove,xe(d)),onPointerCancel:a?i.onPointerCancel:se(i.onPointerCancel,xe(d)),onPointerUp:a?i.onPointerUp:se(i.onPointerUp,xe(d))})]})});Je.displayName=Xe;var On="ContextMenuPortal",Ye=i=>{const{__scopeContextMenu:e,...s}=i,a=F(e);return r.jsx(Et,{...a,...s})};Ye.displayName=On;var Ze="ContextMenuContent",et=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=Qe(Ze,s),m=F(s),x=u.useRef(!1);return r.jsx(kt,{...m,...a,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:p=>{i.onCloseAutoFocus?.(p),!p.defaultPrevented&&x.current&&p.preventDefault(),x.current=!1},onInteractOutside:p=>{i.onInteractOutside?.(p),!p.defaultPrevented&&!c.modal&&(x.current=!0)},style:{...i.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});et.displayName=Ze;var An="ContextMenuGroup",Ln=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Lt,{...c,...a,ref:e})});Ln.displayName=An;var Fn="ContextMenuLabel",In=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Ft,{...c,...a,ref:e})});In.displayName=Fn;var $n="ContextMenuItem",tt=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Rt,{...c,...a,ref:e})});tt.displayName=$n;var _n="ContextMenuCheckboxItem",zn=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(It,{...c,...a,ref:e})});zn.displayName=_n;var Wn="ContextMenuRadioGroup",Gn=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx($t,{...c,...a,ref:e})});Gn.displayName=Wn;var Kn="ContextMenuRadioItem",Bn=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(_t,{...c,...a,ref:e})});Bn.displayName=Kn;var Vn="ContextMenuItemIndicator",Un=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(zt,{...c,...a,ref:e})});Un.displayName=Vn;var qn="ContextMenuSeparator",nt=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Pt,{...c,...a,ref:e})});nt.displayName=qn;var Qn="ContextMenuArrow",Hn=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Wt,{...c,...a,ref:e})});Hn.displayName=Qn;var Xn="ContextMenuSubTrigger",Jn=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Gt,{...c,...a,ref:e})});Jn.displayName=Xn;var Yn="ContextMenuSubContent",Zn=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,c=F(s);return r.jsx(Kt,{...c,...a,ref:e,style:{...i.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Zn.displayName=Yn;function xe(i){return e=>e.pointerType!=="mouse"?i(e):void 0}var er=He,tr=Je,nr=Ye,rr=et,or=tt,sr=nt;function ir(i){const e=Z.c(4);let s;e[0]!==i?({...s}=i,e[0]=i,e[1]=s):s=e[1];let a;return e[2]!==s?(a=r.jsx(er,{"data-slot":"context-menu",...s}),e[2]=s,e[3]=a):a=e[3],a}function ar(i){const e=Z.c(4);let s;e[0]!==i?({...s}=i,e[0]=i,e[1]=s):s=e[1];let a;return e[2]!==s?(a=r.jsx(tr,{"data-slot":"context-menu-trigger",...s}),e[2]=s,e[3]=a):a=e[3],a}function lr(i){const e=Z.c(8);let s,a;e[0]!==i?({className:s,...a}=i,e[0]=i,e[1]=s,e[2]=a):(s=e[1],a=e[2]);let c;e[3]!==s?(c=ae("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",s),e[3]=s,e[4]=c):c=e[4];let m;return e[5]!==a||e[6]!==c?(m=r.jsx(nr,{children:r.jsx(rr,{"data-slot":"context-menu-content",className:c,...a})}),e[5]=a,e[6]=c,e[7]=m):m=e[7],m}function te(i){const e=Z.c(12);let s,a,c,m;e[0]!==i?({className:s,inset:a,variant:m,...c}=i,e[0]=i,e[1]=s,e[2]=a,e[3]=c,e[4]=m):(s=e[1],a=e[2],c=e[3],m=e[4]);const x=m===void 0?"default":m;let p;e[5]!==s?(p=ae("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),e[5]=s,e[6]=p):p=e[6];let g;return e[7]!==a||e[8]!==c||e[9]!==p||e[10]!==x?(g=r.jsx(or,{"data-slot":"context-menu-item","data-inset":a,"data-variant":x,className:p,...c}),e[7]=a,e[8]=c,e[9]=p,e[10]=x,e[11]=g):g=e[11],g}function Ue(i){const e=Z.c(8);let s,a;e[0]!==i?({className:s,...a}=i,e[0]=i,e[1]=s,e[2]=a):(s=e[1],a=e[2]);let c;e[3]!==s?(c=ae("bg-border -mx-1 my-1 h-px",s),e[3]=s,e[4]=c):c=e[4];let m;return e[5]!==a||e[6]!==c?(m=r.jsx(sr,{"data-slot":"context-menu-separator",className:c,...a}),e[5]=a,e[6]=c,e[7]=m):m=e[7],m}const cr="#d9a441";function dr(i){const e=Z.c(45),{node:s,depth:a,isExpanded:c,isSelected:m,isLoading:x,fileVisual:p,onOpen:g,onSelect:M,onNewFile:d,onNewFolder:h,onCopyPath:y,onCopyRelativePath:B,onRename:U,onDelete:C}=i,I=x===void 0?!1:x,H=s.kind==="directory",{Icon:q,color:Q}=p,$=m&&"bg-accent";let T;e[0]!==$?(T=ae("flex w-full items-center gap-1.5 px-2 py-1.5 text-left text-[13px] hover:bg-accent transition-colors",$),e[0]=$,e[1]=T):T=e[1];const G=`${a*14+8}px`;let O;e[2]!==G?(O={paddingLeft:G},e[2]=G,e[3]=O):O=e[3];let A;e[4]!==g||e[5]!==M?(A=()=>{M(),g()},e[4]=g,e[5]=M,e[6]=A):A=e[6];let R;e[7]!==q||e[8]!==Q||e[9]!==H||e[10]!==c||e[11]!==I?(R=H?r.jsxs(r.Fragment,{children:[I?r.jsx(ie,{size:14,className:"shrink-0 animate-spin text-muted-foreground"}):c?r.jsx(vn,{size:14,className:"shrink-0 text-muted-foreground"}):r.jsx(yn,{size:14,className:"shrink-0 text-muted-foreground"}),r.jsx(Cn,{size:16,className:"shrink-0",style:{color:cr}})]}):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"w-3.5 shrink-0"}),r.jsx(q,{size:16,className:"shrink-0",style:{color:Q}})]}),e[7]=q,e[8]=Q,e[9]=H,e[10]=c,e[11]=I,e[12]=R):R=e[12];let P;e[13]!==s.name?(P=r.jsx("span",{className:"truncate",children:s.name}),e[13]=s.name,e[14]=P):P=e[14];let j;e[15]!==T||e[16]!==O||e[17]!==A||e[18]!==R||e[19]!==P?(j=r.jsx(ar,{asChild:!0,children:r.jsxs("button",{type:"button",className:T,style:O,onClick:A,children:[R,P]})}),e[15]=T,e[16]=O,e[17]=A,e[18]=R,e[19]=P,e[20]=j):j=e[20];let N;e[21]!==d?(N=r.jsx(te,{onSelect:d,children:"New File"}),e[21]=d,e[22]=N):N=e[22];let E;e[23]!==h?(E=r.jsx(te,{onSelect:h,children:"New Folder"}),e[23]=h,e[24]=E):E=e[24];let k;e[25]===Symbol.for("react.memo_cache_sentinel")?(k=r.jsx(Ue,{}),e[25]=k):k=e[25];let w;e[26]!==y?(w=r.jsx(te,{onSelect:y,children:"Copy Path"}),e[26]=y,e[27]=w):w=e[27];let L;e[28]!==B?(L=r.jsx(te,{onSelect:B,children:"Copy Relative Path"}),e[28]=B,e[29]=L):L=e[29];let b;e[30]===Symbol.for("react.memo_cache_sentinel")?(b=r.jsx(Ue,{}),e[30]=b):b=e[30];let S;e[31]!==U?(S=r.jsx(te,{onSelect:U,children:"Rename"}),e[31]=U,e[32]=S):S=e[32];let z;e[33]!==C?(z=r.jsx(te,{variant:"destructive",onSelect:C,children:"Delete"}),e[33]=C,e[34]=z):z=e[34];let _;e[35]!==N||e[36]!==E||e[37]!==w||e[38]!==L||e[39]!==S||e[40]!==z?(_=r.jsxs(lr,{className:"w-52",children:[N,E,k,w,L,b,S,z]}),e[35]=N,e[36]=E,e[37]=w,e[38]=L,e[39]=S,e[40]=z,e[41]=_):_=e[41];let K;return e[42]!==_||e[43]!==j?(K=r.jsxs(ir,{children:[j,_]}),e[42]=_,e[43]=j,e[44]=K):K=e[44],K}Ut.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});function Se(i,e,s,a){return`/api/${i}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(s)}/${a}`}function ur(i){const e=V(i);return!e||e.includes("..")||e.includes("\\")?!1:e.startsWith(".deco/blocks/")||!e.startsWith("/")&&!e.includes("://")}const fr="#94a3b8";function mr(i){const e=i.toLowerCase();return e.endsWith(".tsx")||e.endsWith(".ts")?{Icon:ue,color:"#3b82f6"}:e.endsWith(".jsx")||e.endsWith(".js")||e.endsWith(".mjs")||e.endsWith(".cjs")?{Icon:ue,color:"#d9a441"}:e.endsWith(".json")?{Icon:Xt,color:"#cb9b3f"}:e.endsWith(".css")||e.endsWith(".scss")?{Icon:ue,color:"#06b6d4"}:e.endsWith(".html")||e.endsWith(".xml")?{Icon:ue,color:"#f97316"}:/\.(png|jpe?g|gif|webp|avif|ico|svg)$/.test(e)?{Icon:Jt,color:"#a855f7"}:e.endsWith(".md")||e.endsWith(".mdx")?{Icon:_e,color:"#64748b"}:{Icon:_e,color:fr}}function Hs({orgSlug:i,virtualMcpId:e,branch:s,openPath:a}){const[c,m]=u.useState({files:[],directories:[],truncated:!1}),{files:x,directories:p}=c,[g,M]=u.useState(new Set),[d,h]=u.useState(null),[y,B]=u.useState(null),[U,C]=u.useState([]),[I,H]=u.useState(""),[q,Q]=u.useState(!1),[$,T]=u.useState(!1),[,G]=u.useState(new Set),[O,A]=u.useState(new Set),R=u.useRef(0),P=u.useRef(null),j=u.useRef(new Set),N=u.useRef(new Map);function E(t){G(n=>{const o=typeof t=="function"?t(n):t;return j.current=o,o})}const[k,w]=u.useState(new Map),L=u.useRef(null),[b,S]=u.useState(null),{sendMessage:z}=cn(),{setChatOpen:_}=dn(),K=Bt(),[D,X]=u.useState(null),[J,ge]=u.useState(null),[ne,le]=u.useState(!1);async function re(t,n){const o=await fetch(Se(i,e,s,t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(n)});if(!o.ok){const l=await o.json().catch(()=>({}));throw new Error(l.error??`Request failed (${o.status})`)}return o.json()}async function ce(){K.invalidateQueries({queryKey:Ke(i,e,s)})}function De(t,n){navigator.clipboard.writeText(n).then(()=>W.success(`${t} copied`),()=>W.error(`Failed to copy ${t.toLowerCase()}`))}function rt(t){const n=Dn(t);if(!n)return;const o=`${i}/${e}/${s}`;K.setQueryData($e.decofile(o),l=>{if(!l)return l;const{[n]:f,...v}=l;return v}),K.invalidateQueries({queryKey:$e.liveMeta(o)})}function ot(t){const n=t.kind==="file"?[t.path]:x.filter(o=>o.startsWith(".deco/blocks/")).map(o=>me(o)).filter(o=>o===t.path||o.startsWith(`${t.path}/`));for(const o of n)rt(o)}function st(t){const n=me(t);return U.filter(o=>{if(o!==n&&!o.startsWith(`${n}/`))return!1;const l=k.get(o);return!!(l?.loaded&&l.editorValue!==l.savedContent)})}function Re(t){C(n=>n.map(o=>t(o)).filter(o=>o!==null)),h(n=>n&&t(n)),w(n=>{const o=new Map;for(const[l,f]of n){const v=t(l);v&&o.set(v,f)}return o}),B(n=>{if(!n)return n;const o=t(n.path);return o?o===n.path?n:{...n,path:o,name:o.split("/").pop()??o}:null})}function it(t){const n=me(t);B(o=>o&&(o.path===n||o.path.startsWith(`${n}/`)?null:o)),Re(o=>o===n||o.startsWith(`${n}/`)?null:o)}async function at(t){if(!D)return;const n=pe(D.parentDir,t);if(Ne(n,x,p))throw new Error(`"${t}" already exists`);await re("write",{path:V(n),content:""}),await oe(),await ce(),X(null),ve(n)}async function lt(t){if(!D)return;const n=pe(D.parentDir,t);if(Ne(n,x,p))throw new Error(`"${t}" already exists`);const o=V(n);await re("mkdir",{path:o}),m(l=>({...l,directories:l.directories.includes(o)?l.directories:[...l.directories,o]})),await oe(),await ce(),X(null),M(l=>{const f=new Set(l);for(const v of Ce(n))f.add(v);return f.add(n),f}),B({name:t,path:n,kind:"directory",children:[]})}async function ct(t){if(!D)return;const n=D.node.path,o=je(n),l=pe(o,t);if(l===n){X(null);return}if(Ne(l,x,p))throw new Error(`"${t}" already exists`);await re("rename",{from:V(n),to:V(l)}),Re(f=>f===n?l:f.startsWith(`${n}/`)?pe(l,f.slice(n.length+1)):f),await oe(),await ce(),X(null)}async function dt(t){le(!0);try{await re("unlink",{path:V(t.path),recursive:t.kind==="directory"}),ot(t),it(t.path),await oe(),await ce(),ge(null),W.success(`Deleted "${t.name}"`)}catch(n){W.error(n instanceof Error?n.message:"Delete failed")}finally{le(!1)}}async function ut(t){const n=Mn(t);if(n){W.error(n);return}le(!0);try{D?.mode==="new-file"?(await at(t),W.success(`Created "${t}"`)):D?.mode==="new-folder"?(await lt(t),W.success(`Created folder "${t}"`)):D?.mode==="rename"&&(await ct(t),W.success(`Renamed to "${t}"`))}catch(o){W.error(o instanceof Error?o.message:"Operation failed")}finally{le(!1)}}const Pe=u.useRef(!1);Pe.current||(Pe.current=!0,P.current=oe());const[ft,mt]=u.useState(null);if(a&&a!==ft){mt(a);const t=a;queueMicrotask(()=>{ur(t)&&ve(t).catch(n=>{W.error(n instanceof Error?n.message:"Failed to open file")})})}async function Ee(t){const n=await re("glob",t);return{files:n.files??[],directories:n.directories??[],truncated:n.truncated}}function ke(t,n,o){if(o!==R.current)return!1;let l=!1;return m(f=>{const v=n?Rn(f.files,f.directories,t,f.truncated):{files:t.files,directories:t.directories??[],truncated:!!t.truncated};return l=!!v.truncated,{files:v.files,directories:v.directories,truncated:l}}),l&&W.warning("File list truncated — some files may be hidden"),l}async function pt(t){const n=N.current.get(t);if(n)return n;const o=R.current,l=(async()=>{const f=await Ee({pattern:"**/*",path:V(t),limit:Ve}),v=ke(f,!0,o);return!v&&o===R.current&&E(Y=>{const de=new Set(Y);return de.add(t),de}),v})();N.current.set(t,l);try{return await l}finally{N.current.delete(t)}}async function Te(t){if(!be(t,j.current))return!1;A(n=>new Set(n).add(t));try{return await pt(t)}finally{A(n=>{const o=new Set(n);return o.delete(t),o})}}async function xt(t){const n=new Set(j.current);for(const o of Ce(t)){if(!be(o,n))continue;if(await Te(o))throw new Error("Folder listing truncated — expand again to load more");n.add(o)}}async function oe(){const t=++R.current;N.current.clear(),Q(!0),E(new Set),M(new Set),A(new Set);try{const n=await Ee({pattern:"**/*",limit:Ve,maxDepth:wn});ke(n,!1,t),T(!0)}catch{$&&W.error("Failed to refresh file tree")}finally{Q(!1)}}async function Oe(t){if(!k.get(t)?.loaded){w(o=>{const l=new Map(o);return l.set(t,{savedContent:"",editorValue:"",loaded:!1}),l});try{const o=await fetch(Se(i,e,s,"read"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:V(t),full:!0})});if(!o.ok)return;const l=await o.json(),f=Sn(l.content??"");w(v=>{const Y=new Map(v);return Y.set(t,{savedContent:f,editorValue:f,loaded:!0}),Y})}catch{}}}async function ht(t,n){try{const o=await fetch(Se(i,e,s,"write"),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({path:V(t),content:n})});if(!o.ok){fe("file save failed",{path:t,status:o.status});return}fe("file saved via sandbox /write",{path:t}),K.invalidateQueries({queryKey:Ke(i,e,s)});try{const l=await un(i,e,s);fe("git status after save",l)}catch(l){fe("git status after save failed",{path:t,error:l instanceof Error?l.message:String(l)})}w(l=>{const f=new Map(l),v=f.get(t);return v&&f.set(t,{...v,savedContent:n}),f})}catch{}}function gt(t){h(t),B({name:t.split("/").pop()??t,path:t,kind:"file",children:[]}),S(null),U.includes(t)||C(n=>[...n,t]),Oe(t)}function vt(t){C(n=>{const o=n.filter(l=>l!==t);return d===t&&h(o[o.length-1]??null),o}),w(n=>{const o=new Map(n);return o.delete(t),o})}function Ae(t){M(n=>{const o=new Set(n);return o.has(t)?o.delete(t):o.add(t),o})}async function yt(t){if(be(t,j.current))try{if(await Te(t))return}catch(n){W.error(n instanceof Error?n.message:"Failed to load folder");return}Ae(t)}async function Ct(t,n){if(n){Ae(t);return}await yt(t)}async function ve(t){await P.current,await xt(t);const n=Ce(t);M(o=>{const l=new Set(o);for(const f of n)l.add(f);return l}),gt(t)}function wt(){return y?.kind==="directory"?y.path:y?.kind==="file"?je(y.path):d?je(d):"/"}function Le(t){const n=wt();X({mode:t,parentDir:n,node:{name:"",path:n,kind:"directory",children:[]}})}const bt=bn(x,p),Fe=jn(bt,g),Ie=I?Fe.filter(t=>t.node.name.toLowerCase().includes(I.toLowerCase())):Fe,ee=d?k.get(d):null,jt=ee?.loaded&&ee.editorValue!==ee.savedContent,ye=J?st(J.path):[],Nt=(t,n)=>{L.current=t,t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyS,async()=>{if(!d)return;const o=t.getValue();await ht(d,o)}),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyK,()=>{const o=t.getSelection(),l=t.getModel();if(!o||!l||!d)return;const f=l.getValueInRange(o);S({filePath:d,lineStart:o.startLineNumber,lineEnd:o.endLineNumber,selectedCode:f})})};function St(t){if(!b)return;const n=[`The user selected code in the file explorer and asked: **"${t.trim()}"**`,"",`**File:** \`${b.filePath}\``,`**Lines:** ${b.lineStart}–${b.lineEnd}`];if(b.selectedCode){const o=we(b.filePath),l=b.selectedCode.replace(/```/g,"`` `");n.push("","**Selected code:**","```"+o,l,"```")}n.push("","Please read the source file, locate the code, and apply the requested change."),_(!0),z({parts:[{type:"text",text:n.join(`
2
- `)}]}),S(null)}return q&&!$?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(ie,{size:20,className:"animate-spin text-muted-foreground"})}):r.jsxs("div",{className:"flex h-full w-full overflow-hidden",children:[r.jsxs("div",{className:"w-64 shrink-0 border-r flex flex-col overflow-hidden",children:[r.jsxs("div",{className:"flex items-center gap-1 p-2 border-b",children:[r.jsxs("div",{className:"relative min-w-0 flex-1",children:[r.jsx(qt,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground"}),r.jsx("input",{type:"text",value:I,onChange:t=>H(t.target.value),placeholder:"Search files...","aria-label":"Search files",className:"w-full rounded-md border border-input bg-transparent pl-7 pr-2 py-1.5 text-xs outline-none placeholder:text-muted-foreground focus:ring-1 focus:ring-ring"})]}),r.jsxs(ze,{children:[r.jsx(We,{asChild:!0,children:r.jsx(he,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":"New file",onClick:()=>Le("new-file"),children:r.jsx(Qt,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"New file"})]}),r.jsxs(ze,{children:[r.jsx(We,{asChild:!0,children:r.jsx(he,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":"New folder",onClick:()=>Le("new-folder"),children:r.jsx(Ht,{size:14})})}),r.jsx(Ge,{side:"bottom",children:"New folder"})]})]}),r.jsx(Zt,{className:"flex-1",children:r.jsxs("div",{className:"py-1",children:[Ie.map(t=>{const{node:n,depth:o}=t,l=n.kind==="directory",f=g.has(n.path),v=y?.path===n.path,Y=Nn(n.path,n.kind),de=l&&O.has(n.path);return r.jsx(dr,{node:n,depth:o,isExpanded:f,isSelected:v,isLoading:de,fileVisual:mr(n.name),onSelect:()=>B(n),onOpen:()=>{l?Ct(n.path,f):ve(n.path)},onNewFile:()=>X({mode:"new-file",node:n,parentDir:Y}),onNewFolder:()=>X({mode:"new-folder",node:n,parentDir:Y}),onCopyPath:()=>De("Path",me(n.path)),onCopyRelativePath:()=>De("Relative path",V(n.path)),onRename:()=>X({mode:"rename",node:n,parentDir:Y}),onDelete:()=>ge(n)},n.path)}),$&&Ie.length===0&&r.jsx("div",{className:"px-3 py-4 text-center text-xs text-muted-foreground",children:I?`No files match "${I}"`:"No files found"})]})})]}),r.jsxs("div",{className:"relative flex-1 flex flex-col overflow-hidden",children:[U.length>0&&r.jsx("div",{className:"flex items-center border-b overflow-x-auto shrink-0",children:U.map(t=>{const n=k.get(t),o=n?.loaded&&n.editorValue!==n.savedContent,l=d===t,f=t.split("/").pop()??t;return r.jsxs("div",{className:ae("flex items-center gap-1 px-3 py-1.5 text-xs border-r cursor-pointer transition-colors",l?"bg-background text-foreground":"bg-muted/50 text-muted-foreground hover:bg-accent"),onClick:()=>{h(t),Oe(t)},onKeyDown:()=>{},role:"tab",tabIndex:0,"aria-selected":l,children:[r.jsx("span",{className:"truncate max-w-32",children:f}),o&&r.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-foreground/60 shrink-0"}),r.jsx("button",{type:"button",className:"ml-1 rounded p-0.5 hover:bg-accent-foreground/10",onClick:v=>{v.stopPropagation(),vt(t)},children:r.jsx(Yt,{size:12})})]},t)})}),b&&r.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 z-20 mt-2",style:{width:"360px"},children:r.jsxs("form",{className:"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:t=>{t.preventDefault();const o=t.currentTarget.elements.namedItem("askAiInput");o.value.trim()&&St(o.value)},children:[r.jsx("input",{name:"askAiInput",autoFocus:!0,type:"text",placeholder:"Ask the AI...",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground",onKeyDown:t=>{t.stopPropagation(),t.key==="Escape"&&S(null)}}),r.jsx("button",{type:"submit",className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-foreground text-background transition-opacity",title:"Send",children:r.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[r.jsx("title",{children:"Send"}),r.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})})]})}),r.jsx("div",{className:"flex-1 overflow-hidden",children:d&&ee?.loaded?r.jsx(Vt,{language:we(d),theme:document.documentElement.classList.contains("dark")?"vs-dark":"light",value:ee.editorValue,path:d,onChange:t=>{const n=d;n&&w(o=>{const l=new Map(o),f=l.get(n);return f&&l.set(n,{...f,editorValue:t??""}),l})},onMount:Nt,loading:r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(ie,{size:20,className:"animate-spin text-muted-foreground"})}),options:{fontSize:13,scrollBeyondLastLine:!1,automaticLayout:!0,lineNumbersMinChars:2,wordWrap:"on",minimap:{enabled:!1},padding:{top:12,bottom:12},scrollbar:{vertical:"auto",horizontal:"auto",verticalScrollbarSize:8,horizontalScrollbarSize:8}}},d):d&&!ee?.loaded?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(ie,{size:20,className:"animate-spin text-muted-foreground"})}):r.jsx("div",{className:"flex items-center justify-center h-full w-full text-sm text-muted-foreground",children:"Select a file to edit"})}),d&&r.jsxs("div",{className:"flex items-center justify-between px-3 py-1 border-t text-[11px] text-muted-foreground shrink-0",children:[r.jsx("span",{className:"truncate",children:d}),r.jsxs("span",{children:[jt?"Modified":"Saved"," ·"," ",we(d)]})]})]}),r.jsx(En,{open:D!==null,mode:D?.mode??"new-file",initialName:D?.mode==="rename"?D.node.name:"",parentLabel:D&&D.mode!=="rename"?D.parentDir==="/"?"/":V(D.parentDir):void 0,isPending:ne,onSubmit:ut,onOpenChange:t=>{!t&&!ne&&X(null)}}),r.jsx(en,{open:J!==null,onOpenChange:t=>{!t&&!ne&&ge(null)},children:r.jsxs(tn,{children:[r.jsxs(nn,{children:[r.jsxs(rn,{children:["Delete ",J?.kind==="directory"?"folder":"file","?"]}),r.jsxs(on,{children:["This will permanently delete"," ",r.jsx("span",{className:"font-mono",children:J?.name}),J?.kind==="directory"?" and everything inside it.":".",ye.length>0&&r.jsxs(r.Fragment,{children:[" ",ye.length===1?"One open file has unsaved changes that will be lost.":`${ye.length} open files have unsaved changes that will be lost.`]})]})]}),r.jsxs(sn,{children:[r.jsx(an,{disabled:ne,children:"Cancel"}),r.jsx(ln,{disabled:ne||!J,onClick:t=>{t.preventDefault(),J&&dt(J)},children:"Delete"})]})]})})]})}export{Hs as FileExplorer};
@@ -1 +0,0 @@
1
- import{b as M,G as $,m as U,p as Q,n as Y,d as q,v as P,t as w,K as L,j as n,a1 as I,o as Z,s as k,c as E,r as T,B as H,L as B,y as J}from"./index-DgNLMhiy.js";import{P as N}from"./index-CvxPzQfb.js";import{u as W}from"./use-org-auth-client-NLz6RBvg.js";import{u as X}from"./use-debounced-autosave-CEbGGyRe.js";import{A as ee}from"./avatar-BAkTMYHj.js";import{I as V}from"./input-CjQtu1h5.js";import{S as G,a as K,b as A,c as te}from"./settings-section-CTfa0pnb.js";import{D as ne}from"./domain-settings-ByTW2skH.js";import{u as ae}from"./studio-tools-kXfq3pN5.js";import{c as se,b as oe,d as ie,A as re,e as le,g as ce,a as ue,f as de}from"./alert-dialog-ClCDLHyi.js";import{R as me}from"./require-capability-ByiCIEvf.js";import"./sidebar-C8N0hRhw.js";import"./LayoutLeft-DFSfhhoN.js";import"./use-mobile-CTYLPqKT.js";import"./sheet-B3x8ZiS-.js";import"./X-CAjmVwOR.js";import"./tooltip-B3h8W9fM.js";import"./User01-C4JQrjGt.js";import"./card-9jdGQNnr.js";import"./ArrowUpRight-CEF-CsVj.js";import"./badge-CxIGH9s7.js";import"./select-bneCBMXH.js";import"./ChevronUp-C2DYINXH.js";import"./ChevronDown-DDeoixaJ.js";import"./use-capability-Cgr7yHYD.js";import"./access-gate-B6S-WMth.js";import"./capability-load-error-Bj6xKhKF.js";const ge=Z({name:k().min(1,"Name is required").max(255,"Name is too long"),slug:k().min(1,"Slug is required").max(50,"Slug is too long").regex(/^[a-z0-9-]+$/,"Slug must contain only lowercase letters, numbers, and hyphens"),logo:k().optional()});function fe(e){const t=E.c(13),{value:v,onChange:h,name:o,disabled:d}=e,m=T.useRef(null);let l;t[0]===Symbol.for("react.memo_cache_sentinel")?(l=()=>m.current?.click(),t[0]=l):l=t[0];const r=l;let c;t[1]!==h?(c=x=>{const j=x.target.files?.[0];if(!j)return;if(j.size>2097152){w.error("Image must be smaller than 2MB");return}const u=new FileReader;u.onerror=pe,u.onloadend=()=>{u.result&&h(u.result),m.current&&(m.current.value="")},u.readAsDataURL(j)},t[1]=h,t[2]=c):c=t[2];const a=c;let s;t[3]!==d||t[4]!==a?(s=n.jsx("input",{ref:m,type:"file",accept:"image/*",onChange:a,className:"hidden",disabled:d}),t[3]=d,t[4]=a,t[5]=s):s=t[5];const i=v||void 0,p=o??"?";let g;t[6]!==i||t[7]!==p?(g=n.jsx(ee,{url:i,fallback:p,shape:"square",size:"base"}),t[6]=i,t[7]=p,t[8]=g):g=t[8];let f;return t[9]!==d||t[10]!==s||t[11]!==g?(f=n.jsxs("button",{type:"button",onClick:r,disabled:d,className:"rounded-lg overflow-hidden hover:ring-2 hover:ring-border transition-all disabled:opacity-50","aria-label":"Upload organization logo",children:[s,g]}),t[9]=d,t[10]=s,t[11]=g,t[12]=f):f=t[12],f}function pe(){return w.error("Failed to read image")}function he(){const e=M(),{org:t}=$(),v=W(),h=U(),o=Q({resolver:Y(ge),values:{name:t.name??"",slug:t.slug??"",logo:t.logo??""}}),d=q({mutationFn:async a=>{const s={name:a.name,slug:a.slug};a.logo&&(s.logo=a.logo);const i=await v.organization.update({data:s});if(i?.error)throw new Error(i.error.message||"Failed to update organization");return i},onSuccess:(a,s)=>{P("organization_settings_updated",{organization_id:t.id,fields:Object.keys(s)}),h.invalidateQueries({queryKey:L.organizations()}),h.invalidateQueries({queryKey:L.activeOrganization(t.slug)}),w.success("Organization updated successfully"),a?.data?.slug&&a.data.slug!==t.slug&&e({to:"/$org/settings/general",params:{org:a.data.slug}})},onError:(a,s)=>{P("organization_settings_update_failed",{organization_id:t.id,fields:Object.keys(s),error:a instanceof Error?a.message:String(a)}),w.error(a instanceof Error?a.message:"Failed to update organization")}}),{schedule:m,flush:l}=X({save:async()=>{const a=o.control._formState.dirtyFields;if(Object.keys(a).length===0||!await o.trigger())return;const i=o.getValues(),p=o.control._defaultValues;o.reset(i,{keepValues:!0});try{await d.mutateAsync(i)}catch{o.reset(p,{keepValues:!0})}}}),r=o.formState.errors,c=typeof window<"u"?`${window.location.host}/`:"";return n.jsx(G,{children:n.jsxs(K,{children:[n.jsx(A,{title:"Logo",description:"Recommended size is 256x256px",action:n.jsx(fe,{value:o.watch("logo"),onChange:a=>{o.setValue("logo",a??"",{shouldDirty:!0}),l()},name:o.watch("name")})}),n.jsx(A,{title:"Name",action:n.jsx(I,{control:o.control,name:"name",render:({field:a})=>n.jsx(V,{id:"org-name",...a,onChange:s=>{a.onChange(s),m()},onBlur:()=>{a.onBlur(),l()},placeholder:"Organization name",className:"w-[280px]"})})}),n.jsx(A,{title:"URL",action:n.jsxs("div",{className:"flex items-center w-[280px] rounded-md border border-input bg-input/30 focus-within:ring-2 focus-within:ring-ring/50 overflow-hidden",children:[c&&n.jsx("span",{className:"pl-3 text-sm text-muted-foreground select-none",children:c}),n.jsx(I,{control:o.control,name:"slug",render:({field:a})=>n.jsx("input",{id:"org-slug",value:a.value??"",name:a.name,ref:a.ref,placeholder:"my-organization",className:"flex-1 min-w-0 bg-transparent px-2 py-1.5 text-sm text-foreground placeholder:text-muted-foreground/60 outline-none",onChange:s=>{const i=s.target.value.toLowerCase().replace(/[^a-z0-9-]/g,"");o.setValue("slug",i,{shouldDirty:!0,shouldTouch:!0,shouldValidate:!0}),m()},onBlur:()=>{a.onBlur(),l()}})})]})}),(r.name||r.slug||r.logo)&&n.jsxs("div",{className:"px-5 pb-3 flex flex-col gap-1",children:[r.name&&n.jsx("p",{className:"text-xs text-destructive",children:r.name.message}),r.slug&&n.jsx("p",{className:"text-xs text-destructive",children:r.slug.message}),r.logo&&n.jsx("p",{className:"text-xs text-destructive",children:r.logo.message})]})]})})}function xe(){const e=E.c(42),{org:t}=$(),[v,h]=T.useState(!1),[o,d]=T.useState(""),m=ae();let l;e[0]!==t.id||e[1]!==m?(l=async()=>{await m.call("ORGANIZATION_DELETE",{id:t.id})},e[0]=t.id,e[1]=m,e[2]=l):l=e[2];let r;e[3]!==t.id||e[4]!==t.slug?(r=()=>{P("organization_deleted",{organization_id:t.id}),localStorage.getItem(B.lastOrgSlug())===t.slug&&localStorage.removeItem(B.lastOrgSlug()),J(),w.success("Organization deleted"),window.location.href="/"},e[3]=t.id,e[4]=t.slug,e[5]=r):r=e[5];let c;e[6]!==l||e[7]!==r?(c={mutationFn:l,onSuccess:r,onError:je},e[6]=l,e[7]=r,e[8]=c):c=e[8];const a=q(c);let s;e[9]===Symbol.for("react.memo_cache_sentinel")?(s=()=>h(!0),e[9]=s):s=e[9];let i;e[10]!==a.isPending?(i=n.jsx(G,{title:"Danger Zone",description:"Irreversible actions that affect your entire organization.",children:n.jsx(K,{className:"border-destructive/40",children:n.jsx(A,{title:"Delete organization",description:"Permanently delete this organization and all of its data. This action cannot be undone.",action:n.jsx(H,{variant:"destructive",size:"sm",onClick:s,disabled:a.isPending,children:"Delete"})})})}),e[10]=a.isPending,e[11]=i):i=e[11];let p;e[12]===Symbol.for("react.memo_cache_sentinel")?(p=O=>{h(O),O||d("")},e[12]=p):p=e[12];let g;e[13]===Symbol.for("react.memo_cache_sentinel")?(g=n.jsx(se,{children:"Delete Organization?"}),e[13]=g):g=e[13];let f;e[14]!==t.name?(f=n.jsxs("p",{children:["This will permanently delete all data associated with"," ",n.jsx("span",{className:"font-medium text-foreground",children:t.name}),". This action cannot be undone."]}),e[14]=t.name,e[15]=f):f=e[15];let x;e[16]!==t.name?(x=n.jsxs("p",{className:"mt-3 mb-1.5",children:["Type"," ",n.jsx("span",{className:"font-medium text-foreground",children:t.name})," ","to confirm:"]}),e[16]=t.name,e[17]=x):x=e[17];let j;e[18]===Symbol.for("react.memo_cache_sentinel")?(j=O=>d(O.target.value),e[18]=j):j=e[18];let u;e[19]!==o||e[20]!==t.name?(u=n.jsx(V,{value:o,onChange:j,placeholder:t.name,autoFocus:!0}),e[19]=o,e[20]=t.name,e[21]=u):u=e[21];let y;e[22]!==u||e[23]!==f||e[24]!==x?(y=n.jsxs(oe,{children:[g,n.jsx(ie,{asChild:!0,children:n.jsxs("div",{children:[f,x,u]})})]}),e[22]=u,e[23]=f,e[24]=x,e[25]=y):y=e[25];let D;e[26]===Symbol.for("react.memo_cache_sentinel")?(D=n.jsx(re,{children:"Cancel"}),e[26]=D):D=e[26];let b;e[27]!==a?(b=()=>a.mutate(),e[27]=a,e[28]=b):b=e[28];const F=o!==t.name||a.isPending,R=a.isPending?"Deleting…":"Delete organization";let S;e[29]!==b||e[30]!==F||e[31]!==R?(S=n.jsxs(le,{children:[D,n.jsx(ce,{onClick:b,disabled:F,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90 disabled:opacity-50",children:R})]}),e[29]=b,e[30]=F,e[31]=R,e[32]=S):S=e[32];let z;e[33]!==y||e[34]!==S?(z=n.jsxs(ue,{children:[y,S]}),e[33]=y,e[34]=S,e[35]=z):z=e[35];let C;e[36]!==v||e[37]!==z?(C=n.jsx(de,{open:v,onOpenChange:p,children:z}),e[36]=v,e[37]=z,e[38]=C):C=e[38];let _;return e[39]!==C||e[40]!==i?(_=n.jsxs(n.Fragment,{children:[i,C]}),e[39]=C,e[40]=i,e[41]=_):_=e[41],_}function je(e){w.error(e instanceof Error?e.message:"Failed to delete organization")}function ve(){const e=E.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=n.jsx(N,{children:n.jsx(N.Content,{children:n.jsx(N.Body,{children:n.jsxs(te,{children:[n.jsx(N.Title,{children:"Organization"}),n.jsx(he,{}),n.jsx(ne,{}),n.jsx(xe,{})]})})})}),e[0]=t):t=e[0],t}function Qe(){const e=E.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=n.jsx(me,{capability:"org:manage",area:"general settings",children:n.jsx(ve,{})}),e[0]=t):t=e[0],t}export{Qe as default};
@@ -1 +0,0 @@
1
- import{c as L,j as t,G as V,a as se,m as Z,r as P,P as U,i as B,d as oe,t as H,dV as re,K as J,k as ie,l as Q,q as ae,a2 as le}from"./index-DgNLMhiy.js";import{c as ce,a as ue,d as de,e as me}from"./dialog-D_ieAQTy.js";import{C as Y}from"./checkbox-DnPlj3-W.js";import{C as fe}from"./collection-search-BHP0uS8b.js";import{u as pe}from"./use-debounced-value-BCxrmAGw.js";import{b as ge,u as xe}from"./use-connection-C0zEwTpO.js";import{W as he,u as M,S as ee}from"./use-mcp-client-C62ZsAPE.js";import{b as te}from"./Settings02-B0ZT4yzH.js";import{z as ye}from"./agent-icon-HIFEO6vs.js";import{a as be}from"./authenticate-and-persist-oauth-CZ-MLzKy.js";import{u as we}from"./use-mcp-tools-UjXU5ids.js";import{e as Ne}from"./extract-connection-data-RxV5HgFK.js";import{u as Ce}from"./use-navigate-to-agent-ZLpx01PW.js";import{f as Ie}from"./github-installations-DzN1UQ4x.js";const D={contents:"write",metadata:"read",pull_requests:"write",issues:"write"};function je(s){if(!s||typeof s!="object"||Array.isArray(s))return D;const e=s;return Object.values(e).some(n=>typeof n!="string")?D:e}function Se(s){if(!(typeof s!="number"||!Number.isFinite(s)||!Number.isInteger(s)||s<=0))return s}function ve(s){const e=s.metadata?.repoScope;if(!e||typeof e.installationId!="number"||!Number.isFinite(e.installationId)||!Number.isInteger(e.installationId)||e.installationId<=0||typeof e.owner!="string"||typeof e.repo!="string"||e.owner.length===0||e.repo.length===0)return null;const n=Se(e.repositoryId);return{sourceConnectionId:typeof e.sourceConnectionId=="string"?e.sourceConnectionId:void 0,installationId:e.installationId,repositoryId:n,owner:e.owner,repo:e.repo,permissions:je(e.permissions),grantProvider:e.grantProvider==="github-mcp"?"github-mcp":void 0}}function Te(s){return(s??[]).filter(e=>ve(e)===null)}function tt(s){return s.metadata?.orgShared===!0}function F(s){const e=L.c(4),{size:n,className:r}=s;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("path",{d:"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0016 8c0-4.42-3.58-8-8-8z"}),e[0]=m):m=e[0];let l;return e[1]!==r||e[2]!==n?(l=t.jsx("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",className:r,children:m}),e[1]=r,e[2]=n,e[3]=l):l=e[3],l}function Ee(s,e){const n=L.c(12),{org:r}=V();let m;n[0]!==r.id?(m=he.REGISTRY(r.id),n[0]=r.id,n[1]=m):m=n[1];const l=m;let f;n[2]!==r.id||n[3]!==r.slug||n[4]!==l?(f={connectionId:l,orgId:r.id,orgSlug:r.slug},n[2]=r.id,n[3]=r.slug,n[4]=l,n[5]=f):f=n[5];const c=M(f);let g;n[6]!==s?(g={name:s},n[6]=s,n[7]=g):g=n[7];const y=e?.enabled??!0;let o;return n[8]!==c||n[9]!==g||n[10]!==y?(o={client:c,toolName:"COLLECTION_REGISTRY_APP_GET",toolArguments:g,enabled:y,staleTime:3e5,select:ke},n[8]=c,n[9]=g,n[10]=y,n[11]=o):o=n[11],we(o)}function ke(s){return s.structuredContent?.item??null}const _e="deco/mcp-github";function Ae(s){const{org:e}=V(),{data:n}=se.useSession(),r=ge(),m=Z(),[l,f]=P.useState("idle"),[c,g]=P.useState(null),[y,o]=P.useState(null),{data:p,isLoading:u}=Ee(_e,{enabled:s.enabled}),b=P.useRef(!1);s.enabled&&p&&!u&&!b.current&&n?.user?.id&&l==="idle"&&(b.current=!0,x());async function x(){if(!(!p||!n?.user?.id||!e))try{f("installing"),g(null);const h=Ne(p,e.id,n.user.id,{remoteIndex:0});if(!h.connection_url)throw new Error("Registry item is missing a remote URL for mcp-github");const{id:N}=await r.create.mutateAsync(h);f("authenticating");const d=await be({connectionId:N,orgId:e.id,orgSlug:e.slug,persistFallback:i=>r.update.mutateAsync({id:N,data:{connection_token:i}}).then(()=>{})});if(d.ran&&!d.ok){try{await r.delete.mutateAsync(N)}catch{}throw new Error(d.error&&d.error!=="no token received"?d.error:"No token received from GitHub")}U(m,e.id),o(h),f("ready")}catch(h){g(h instanceof Error?h.message:String(h)),f("error")}}function C(){f("idle"),g(null),o(null),b.current=!1}return s.enabled&&u&&l==="idle"?{status:"installing",error:null,connection:null,retry:C}:{status:l,error:c,connection:y,retry:C}}const q=[{key:"auto-respond-to-issues",triggerType:"github.issues.opened",nameSuffix:"auto-respond to issues",label:"Auto-respond to new issues",defaultEnabled:!0,instructions:({owner:s,name:e})=>`A new GitHub issue has been opened in ${s}/${e}. Read the issue, explore relevant code, create a branch, implement the fix, and open a PR referencing the issue number.`},{key:"review-incoming-prs",triggerType:"github.pull_request.opened",nameSuffix:"review incoming PRs",label:"Review incoming pull requests",defaultEnabled:!0,instructions:({owner:s,name:e})=>`A pull request was opened in ${s}/${e}. Read the diff, summarize what changed, flag risks (security, perf, breaking changes), and leave a review comment.`},{key:"note-merged-prs",triggerType:"github.pull_request.closed",nameSuffix:"note merged/closed PRs",label:"Note merged or closed PRs",defaultEnabled:!1,instructions:({owner:s,name:e})=>`A pull request was closed in ${s}/${e}. If it was merged, update changelog/release notes as appropriate.`}];function Re(s,e){const n=new Set;if(s.paramsSchema)for(const m of Object.keys(s.paramsSchema))n.add(m);if(Array.isArray(s.params))for(const m of s.params)n.add(m.name);else if(s.params&&typeof s.params=="object")for(const m of Object.keys(s.params))n.add(m);if(n.has("repo"))return{repo:`${e.owner}/${e.name}`};const r={};return n.has("owner")&&(r.owner=e.owner),n.has("name")&&(r.name=e.name),n.has("repository")&&(r.repository=`${e.owner}/${e.name}`),r}async function Oe({githubCallTool:s,selfCallTool:e,virtualMcpId:n,repo:r,connectionId:m,selectedKeys:l}){const f=await s({name:"TRIGGER_LIST",arguments:{}}),c=f.structuredContent??f,g=new Map((c.triggers??[]).map(u=>[u.type,u])),y=q.filter(u=>l.has(u.key)),o=await Promise.allSettled(y.map(async u=>{const b=g.get(u.triggerType);if(!b)throw new Error(`Trigger ${u.triggerType} not exposed`);const x=await e({name:"AUTOMATION_CREATE",arguments:{name:`${r.name}: ${u.nameSuffix}`,virtual_mcp_id:n,messages:u.instructions(r),active:!0}}),C=(x.structuredContent??x).id;if(!C)throw new Error(`AUTOMATION_CREATE returned no id for ${u.key}`);await e({name:"AUTOMATION_TRIGGER_ADD",arguments:{automation_id:C,type:"event",connection_id:m,event_type:u.triggerType,params:Re(b,r)}})})),p=o.filter(u=>u.status==="rejected").length;return p>0&&console.error("Some GitHub automations failed to set up:",o.filter(u=>u.status==="rejected")),{total:o.length,failed:p}}const W="GitHub MCP did not return refreshable repo grant metadata";function z(s){if(typeof s!="string")return null;const e=s.trim();return e.length>0?e:null}function Ge(s){try{const e=new URL(s);return(e.protocol==="http:"||e.protocol==="https:")&&!e.username&&!e.password}catch{return!1}}function Pe(s){return typeof s=="number"&&Number.isFinite(s)&&Number.isInteger(s)&&s>0?s:void 0}async function X(s){const{orgSlug:e,sourceConnection:n,installationId:r,owner:m,repo:l,githubCallTool:f,selfCallTool:c,orgShared:g}=s,y=await f({name:"MINT_REPO_TOKEN",arguments:{installationId:r,owner:m,repo:l,permissions:D}}),o=y.structuredContent;if(y.isError||!o?.token){const v=y.content?.find($=>$.type==="text")?.text;throw new Error(v?`Failed to mint a repo-scoped GitHub token: ${v}`:"Failed to mint a repo-scoped GitHub token")}const p=z(o.refreshToken),u=z(o.tokenEndpoint),b=z(o.clientId);if(!p||!u||!b)throw new Error(W);if(!Ge(u))throw new Error(W);const x=z(o.repository?.owner),C=z(o.repository?.name),h="GitHub MCP returned refresh metadata for a different repository";if(o.repository?.owner!==void 0&&(!x||x.toLowerCase()!==m.toLowerCase()))throw new Error(h);if(o.repository?.name!==void 0&&(!C||C.toLowerCase()!==l.toLowerCase()))throw new Error(h);const I=Pe(o.repository?.id),N=o.expiresAt?Date.parse(o.expiresAt):NaN,d=Number.isFinite(N)?Math.max(0,Math.floor((N-Date.now())/1e3)):null,j=(typeof o.expiresIn=="number"&&Number.isFinite(o.expiresIn)&&Number.isInteger(o.expiresIn)&&o.expiresIn>0?o.expiresIn:null)??d,w=await c({name:"COLLECTION_CONNECTIONS_CREATE",arguments:{data:{title:`GitHub: ${m}/${l}`,description:`Repo-scoped GitHub access for ${m}/${l}`,icon:n.icon,app_name:n.app_name,app_id:n.app_id,connection_type:n.connection_type,connection_url:n.connection_url,metadata:{...g?{orgShared:!0}:{},repoScope:{installationId:r,repositoryId:I,owner:m,repo:l,permissions:D,grantProvider:"github-mcp"}}}}}),S=w.structuredContent??w,T=S.item?.id??S.id;if(!T)throw new Error("Failed to create the repo-scoped GitHub connection");if(!(await fetch(`/api/${e}/connections/${T}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:o.token,refreshToken:p,expiresIn:j,scope:o.scope??null,clientId:b,tokenEndpoint:u})})).ok)throw await c({name:"COLLECTION_CONNECTIONS_DELETE",arguments:{id:T,force:!0}}).catch(()=>{}),new Error("Failed to persist the repo-scoped token");return{childConnectionId:T}}function nt(s){const e=L.c(23),{open:n,onOpenChange:r,title:m,hideAutoRespondCheckbox:l,onImportComplete:f,mode:c}=s,g=l===void 0?!1:l,y=c===void 0?"agent":c,o=m??(y==="connection"?"Add repo":"Import from GitHub"),[p,u]=P.useState(null);let b;e[0]!==o?(b=t.jsx(ce,{className:"sr-only",children:t.jsx(ue,{children:o})}),e[0]=o,e[1]=b):b=e[1];let x;e[2]!==o||e[3]!==p?(x=t.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 gap-3 shrink-0",children:p?t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",onClick:()=>u(null),className:"flex items-center justify-center text-muted-foreground hover:text-foreground transition-colors shrink-0","aria-label":"Back to accounts",children:t.jsx(te,{size:16})}),t.jsx("img",{src:p.avatarUrl,alt:p.login,className:"size-5 rounded-full ring-1 ring-border shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:p.login})]}):t.jsxs(t.Fragment,{children:[t.jsx(F,{className:"size-4 text-foreground shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:o})]})}),e[2]=o,e[3]=p,e[4]=x):x=e[4];let C;e[5]===Symbol.for("react.memo_cache_sentinel")?(C=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(B,{size:18,className:"animate-spin text-muted-foreground"})}),e[5]=C):C=e[5];let h;e[6]!==r?(h=()=>r(!1),e[6]=r,e[7]=h):h=e[7];const I=g||y==="connection";let N;e[8]!==y||e[9]!==f||e[10]!==n||e[11]!==p||e[12]!==h||e[13]!==I?(N=t.jsx("div",{className:"flex-1 overflow-hidden flex flex-col min-w-0",children:t.jsx(P.Suspense,{fallback:C,children:t.jsx($e,{open:n,onComplete:h,selectedInstallation:p,onSelectInstallation:u,hideAutoRespondCheckbox:I,onImportComplete:f,mode:y})})}),e[8]=y,e[9]=f,e[10]=n,e[11]=p,e[12]=h,e[13]=I,e[14]=N):N=e[14];let d;e[15]!==b||e[16]!==x||e[17]!==N?(d=t.jsxs(de,{className:"sm:max-w-[560px] h-[85svh] sm:h-[520px] p-0 gap-0 overflow-hidden flex flex-col",children:[b,x,N]}),e[15]=b,e[16]=x,e[17]=N,e[18]=d):d=e[18];let i;return e[19]!==r||e[20]!==n||e[21]!==d?(i=t.jsx(me,{open:n,onOpenChange:r,children:d}),e[19]=r,e[20]=n,e[21]=d,e[22]=i):i=e[22],i}function $e({open:s,onComplete:e,selectedInstallation:n,onSelectInstallation:r,hideAutoRespondCheckbox:m,onImportComplete:l,mode:f="agent"}){const{org:c}=V(),g=Z(),y=Ce(),[o,p]=P.useState(null),[u,b]=P.useState(!0),[x,C]=P.useState(()=>new Set(q.filter(a=>a.defaultEnabled).map(a=>a.key))),h=q.filter(a=>a.defaultEnabled).map(a=>a.key),I=m?new Set(h):u?x:new Set,N=xe({slug:"mcp-github"}),d=Te(N),i=Ae({enabled:s&&d.length===0}),j=d.length===1?d[0]??null:o,w=M({connectionId:j?.id??"",orgId:c.id,orgSlug:c.slug}),S=M({connectionId:ee,orgId:c.id,orgSlug:c.slug}),T=async(a,k)=>{try{const G=await w.callTool({name:"get_file_contents",arguments:{owner:a.owner,repo:a.name,path:k}});if(G.isError)return null;const R=G.content?.find(O=>O.type==="resource")?.resource?.text;if(!R)return null;try{const O=JSON.parse(R);return typeof O=="string"?O:JSON.stringify(O)}catch{return R}}catch{return null}},_=(a,k)=>{Promise.all([T(k,"AGENTS.md"),T(k,"CLAUDE.md")]).then(async([A,G])=>{const E=A??G??null;E&&(await S.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:a,data:{metadata:{instructions:E}}}}),U(g,c.id))}).catch(A=>{console.error("GitHub instructions fetch failed:",A)})},v=async({virtualMcpId:a,repo:k,connectionId:A,selectedKeys:G})=>{const{total:E,failed:R}=await Oe({githubCallTool:O=>w.callTool(O),selfCallTool:O=>S.callTool(O),virtualMcpId:a,repo:k,connectionId:A,selectedKeys:G});R>0&&H.warning(`Set up ${E-R}/${E} GitHub automations. Add the rest from the automations view.`)},$=oe({mutationFn:async a=>{if(!j||!n)throw new Error("No GitHub connection or installation");const k=n.installationId;if(f==="connection"){const{childConnectionId:E}=await X({orgSlug:c.slug,sourceConnection:j,installationId:k,owner:a.owner,repo:a.name,githubCallTool:R=>w.callTool(R),selfCallTool:R=>S.callTool(R),orgShared:!0});return{virtualMcpId:null,repo:a,connectionId:E,item:null}}const{childConnectionId:A}=await X({orgSlug:c.slug,sourceConnection:j,installationId:k,owner:a.owner,repo:a.name,githubCallTool:E=>w.callTool(E),selfCallTool:E=>S.callTool(E)});let G=null;try{const E=await S.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:a.name,description:a.description||"Imported from GitHub",pinned:!1,icon:null,metadata:{githubRepo:{owner:a.owner,name:a.name,url:a.url,installationId:k,connectionId:A},instructions:null,ui:{pinnedViews:null,layout:{defaultMainView:{type:"preview"},chatDefaultOpen:!0}}},connections:[{connection_id:A}]}}}),R=E.structuredContent??E,O=R.item?.id;if(!R.item||!O)throw new Error("Failed to create the imported agent");return G=O,I.size>0&&await v({virtualMcpId:O,repo:a,connectionId:A,selectedKeys:I}).catch(ne=>{console.error("Failed to set up GitHub automations:",ne),H.warning("Imported repo, but failed to set up GitHub automations. You can add triggers manually from the automations view.")}),{virtualMcpId:O,repo:a,connectionId:A,item:R.item}}catch(E){throw G&&await S.callTool({name:"COLLECTION_VIRTUAL_MCP_DELETE",arguments:{id:G}}).catch(()=>{}),await S.callTool({name:"COLLECTION_CONNECTIONS_DELETE",arguments:{id:A,force:!0}}).catch(()=>{}),E}},onSuccess:({virtualMcpId:a,repo:k,connectionId:A,item:G})=>{if(f==="connection"||!a||!G){U(g,c.id),re(g,c.id),H.success(`Added ${k.name}`),e();return}if(g.setQueryData(J.collectionItem(S,c.id,"","VIRTUAL_MCP",a),{item:G}),U(g,c.id),_(a,k),l){l({virtualMcpId:a,repo:k,connectionId:A});return}H.success(`Imported ${k.name} from GitHub`),e(),localStorage.setItem("mesh:sidebar-open",JSON.stringify(!1)),y(a)},onError:a=>{H.error("Failed to import repo: "+(a instanceof Error?a.message:"Unknown error"))}});return i.status==="installing"||i.status==="authenticating"?t.jsx(K,{status:i.status,error:null,retry:i.retry}):i.status==="error"?t.jsx(K,{status:"error",error:i.error,retry:i.retry}):d.length===0&&i.status==="idle"?t.jsx(K,{status:"installing",error:null,retry:i.retry}):d.length>1&&!j?t.jsxs("div",{className:"flex flex-col py-2",children:[t.jsx("div",{className:"px-4 py-2",children:t.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:"Select a connection"})}),d.map(a=>t.jsxs("button",{type:"button",onClick:()=>p(a),className:"flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left",children:[a.icon?t.jsx("img",{src:a.icon,alt:a.title,className:"size-7 rounded-full shrink-0"}):t.jsx("div",{className:"size-7 rounded-full bg-muted flex items-center justify-center shrink-0",children:t.jsx(F,{className:"size-3.5 text-muted-foreground"})}),t.jsx("span",{className:"text-sm font-medium",children:a.title})]},a.id))]}):j?n?t.jsx(He,{connectionId:j.id,orgId:c.id,orgSlug:c.slug,installation:n,onSelectRepo:a=>$.mutate(a),isSaving:$.isPending,autoRespondEnabled:u,onAutoRespondChange:b,selectedAutomationKeys:x,onAutomationKeysChange:C,hideAutoRespondCheckbox:m}):t.jsx(Le,{connectionId:j.id,orgId:c.id,orgSlug:c.slug,onSelect:r,showBackButton:d.length>1,onBack:()=>p(null)}):null}function Le(s){const e=L.c(31),{connectionId:n,orgId:r,orgSlug:m,onSelect:l,showBackButton:f,onBack:c}=s;let g;e[0]!==r||e[1]!==m?(g={connectionId:ee,orgId:r,orgSlug:m},e[0]=r,e[1]=m,e[2]=g):g=e[2];const y=M(g);let o;e[3]!==n||e[4]!==r?(o=J.githubUserOrgs(r,n),e[3]=n,e[4]=r,e[5]=o):o=e[5];let p;e[6]!==n||e[7]!==y?(p=()=>Ie(w=>y.callTool(w),n),e[6]=n,e[7]=y,e[8]=p):p=e[8];let u;e[9]!==o||e[10]!==p?(u={queryKey:o,queryFn:p},e[9]=o,e[10]=p,e[11]=u):u=e[11];const b=ie(u);if(b.isLoading){let w;return e[12]===Symbol.for("react.memo_cache_sentinel")?(w=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(B,{size:18,className:"animate-spin text-muted-foreground"})}),e[12]=w):w=e[12],w}if(b.isError){let w;return e[13]===Symbol.for("react.memo_cache_sentinel")?(w=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx("p",{className:"text-sm text-destructive",children:"Failed to load GitHub accounts"})}),e[13]=w):w=e[13],w}const x=b.data;if(!x)return null;let C;e[14]!==c||e[15]!==f?(C=f&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:c,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(te,{size:12}),"Change connection"]})}),e[14]=c,e[15]=f,e[16]=C):C=e[16];let h;if(e[17]!==x.installations||e[18]!==l){let w;e[20]!==l?(w=S=>t.jsxs("button",{type:"button",onClick:()=>l(S),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left group",children:[t.jsx("img",{src:S.avatarUrl,alt:S.login,className:"size-7 rounded-full shrink-0 ring-1 ring-border"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"text-sm font-medium leading-none",children:S.login}),S.type==="User"&&t.jsx("span",{className:"text-xs text-muted-foreground mt-1",children:"Personal account"})]}),t.jsx("span",{className:"text-xs text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0",children:"Select →"})]},S.installationId),e[20]=l,e[21]=w):w=e[21],h=x.installations.map(w),e[17]=x.installations,e[18]=l,e[19]=h}else h=e[19];let I;e[22]!==h?(I=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden [scrollbar-gutter:stable]",children:h}),e[22]=h,e[23]=I):I=e[23];const N=x.appSlug?`https://github.com/apps/${x.appSlug}/installations/new`:"https://github.com/settings/installations";let d;e[24]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("span",{className:"underline underline-offset-2",children:"Install the GitHub App"}),e[24]=d):d=e[24];let i;e[25]!==N?(i=t.jsx("div",{className:"px-4 py-3 border-t border-border shrink-0",children:t.jsxs("a",{href:N,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:["Account not listed?"," ",d]})}),e[25]=N,e[26]=i):i=e[26];let j;return e[27]!==i||e[28]!==C||e[29]!==I?(j=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[C,I,i]}),e[27]=i,e[28]=C,e[29]=I,e[30]=j):j=e[30],j}function He(s){const e=L.c(27),{connectionId:n,orgId:r,orgSlug:m,installation:l,onSelectRepo:f,isSaving:c,autoRespondEnabled:g,onAutoRespondChange:y,selectedAutomationKeys:o,onAutomationKeysChange:p,hideAutoRespondCheckbox:u}=s,[b,x]=P.useState(""),C=pe(b,300),h=P.useDeferredValue(C),I=b!==h;let N;e[0]!==I||e[1]!==b?(N=t.jsx(fe,{placeholder:"Search repositories...",value:b,onChange:x,isSearching:I}),e[0]=I,e[1]=b,e[2]=N):N=e[2];const d=I?"opacity-40":"opacity-100";let i;e[3]!==d?(i=Q("flex-1 overflow-hidden flex flex-col transition-opacity duration-150",d),e[3]=d,e[4]=i):i=e[4];let j;e[5]===Symbol.for("react.memo_cache_sentinel")?(j=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(B,{size:18,className:"animate-spin text-muted-foreground"})}),e[5]=j):j=e[5];let w;e[6]!==n||e[7]!==h||e[8]!==l||e[9]!==c||e[10]!==f||e[11]!==r||e[12]!==m?(w=t.jsx(P.Suspense,{fallback:j,children:t.jsx(ze,{connectionId:n,orgId:r,orgSlug:m,installation:l,query:h,onSelectRepo:f,isSaving:c})}),e[6]=n,e[7]=h,e[8]=l,e[9]=c,e[10]=f,e[11]=r,e[12]=m,e[13]=w):w=e[13];let S;e[14]!==i||e[15]!==w?(S=t.jsx("div",{className:i,children:w}),e[14]=i,e[15]=w,e[16]=S):S=e[16];let T;e[17]!==g||e[18]!==u||e[19]!==y||e[20]!==p||e[21]!==o?(T=!u&&t.jsxs("div",{className:"border-t border-border shrink-0",children:[t.jsxs("label",{className:"flex items-center gap-2 px-4 py-3 cursor-pointer select-none",children:[t.jsx(Y,{checked:g,onCheckedChange:v=>y(v===!0)}),t.jsx("span",{className:"text-xs text-foreground",children:"Set up GitHub automations for this repo"})]}),g&&t.jsx("div",{className:"px-4 pb-3 pl-9 flex flex-col gap-1.5",children:q.map(v=>t.jsxs("label",{className:"flex items-center gap-2 cursor-pointer select-none",children:[t.jsx(Y,{checked:o.has(v.key),onCheckedChange:$=>{const a=new Set(o);$===!0?a.add(v.key):a.delete(v.key),p(a)}}),t.jsx("span",{className:"text-xs text-muted-foreground",children:v.label})]},v.key))})]}),e[17]=g,e[18]=u,e[19]=y,e[20]=p,e[21]=o,e[22]=T):T=e[22];let _;return e[23]!==N||e[24]!==S||e[25]!==T?(_=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[N,S,T]}),e[23]=N,e[24]=S,e[25]=T,e[26]=_):_=e[26],_}function ze(s){const e=L.c(29),{connectionId:n,orgId:r,orgSlug:m,installation:l,query:f,onSelectRepo:c,isSaving:g}=s;let y;e[0]!==n||e[1]!==r||e[2]!==m?(y={connectionId:n,orgId:r,orgSlug:m},e[0]=n,e[1]=r,e[2]=m,e[3]=y):y=e[3];const o=M(y),p=l.type==="User"?"user":"org",u=f?`${p}:${l.login} ${f} in:name`:`${p}:${l.login}`;let b;e[4]!==n||e[5]!==l.login||e[6]!==r||e[7]!==f?(b=J.githubOrgRepos(r,n,l.login,f),e[4]=n,e[5]=l.login,e[6]=r,e[7]=f,e[8]=b):b=e[8];let x;e[9]!==o||e[10]!==u?(x=async d=>{const{signal:i}=d,w=(await o.callTool({name:"search_repositories",arguments:{query:u,page:1,perPage:30}},void 0,{signal:i})).content?.[0]?.text;if(!w)throw new Error("No response from search_repositories");return(JSON.parse(w).items??[]).map(Me)},e[9]=o,e[10]=u,e[11]=x):x=e[11];let C;e[12]!==b||e[13]!==x?(C={queryKey:b,queryFn:x},e[12]=b,e[13]=x,e[14]=C):C=e[14];const{data:h}=ae(C);if(h.length===0){let d;e[15]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("p",{className:"text-sm text-muted-foreground",children:"No repositories found"}),e[15]=d):d=e[15];let i;e[16]!==f?(i=f&&t.jsx("p",{className:"text-xs text-muted-foreground/60",children:"Try a different search term"}),e[16]=f,e[17]=i):i=e[17];let j;return e[18]!==i?(j=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-1",children:[d,i]}),e[18]=i,e[19]=j):j=e[19],j}let I;if(e[20]!==g||e[21]!==c||e[22]!==h){let d;e[24]!==g||e[25]!==c?(d=i=>t.jsxs("button",{type:"button",onClick:()=>c(i),disabled:g,className:"flex items-start gap-3 px-4 py-3 hover:bg-accent transition-colors text-left disabled:opacity-50 disabled:cursor-not-allowed",children:[t.jsx(F,{className:"size-4 text-muted-foreground mt-0.5 shrink-0"}),t.jsx("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:t.jsx("span",{className:"text-sm font-medium truncate",children:i.name})}),t.jsxs("span",{className:"flex items-center gap-1 text-xs font-medium text-muted-foreground border border-border rounded px-1.5 py-0.5 shrink-0 leading-none",children:[i.private?t.jsx(le,{size:10}):t.jsx(ye,{size:10}),i.private?"Private":"Public"]})]},i.fullName),e[24]=g,e[25]=c,e[26]=d):d=e[26],I=h.map(d),e[20]=g,e[21]=c,e[22]=h,e[23]=I}else I=e[23];let N;return e[27]!==I?(N=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden flex flex-col [scrollbar-gutter:stable]",children:I}),e[27]=I,e[28]=N):N=e[28],N}function Me(s){return{name:s.name,fullName:s.full_name,owner:s.full_name.split("/")[0]??"",url:s.html_url,private:s.private,description:s.description,updatedAt:s.updated_at}}function K(s){const e=L.c(33),{status:n,error:r,retry:m}=s;if(n==="error"){let w;e[0]===Symbol.for("react.memo_cache_sentinel")?(w=t.jsx("div",{className:"size-10 rounded-full bg-destructive/10 flex items-center justify-center",children:t.jsx(F,{className:"size-5 text-destructive"})}),e[0]=w):w=e[0];let S;e[1]===Symbol.for("react.memo_cache_sentinel")?(S=t.jsx("p",{className:"text-sm font-medium",children:"Connection failed"}),e[1]=S):S=e[1];const T=r??"Something went wrong while connecting to GitHub.";let _;e[2]!==T?(_=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[S,t.jsx("p",{className:"text-xs text-muted-foreground max-w-[260px] leading-relaxed",children:T})]}),e[2]=T,e[3]=_):_=e[3];let v;e[4]!==m?(v=t.jsx("button",{type:"button",onClick:m,className:"text-xs font-medium text-foreground border border-border rounded-md px-3 py-1.5 hover:bg-accent transition-colors",children:"Try again"}),e[4]=m,e[5]=v):v=e[5];let $;return e[6]!==_||e[7]!==v?($=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[w,_,v]}),e[6]=_,e[7]=v,e[8]=$):$=e[8],$}const l=n==="authenticating";let f;e[9]===Symbol.for("react.memo_cache_sentinel")?(f=t.jsx("div",{className:"size-10 rounded-full bg-muted flex items-center justify-center",children:t.jsx(F,{className:"size-5 text-foreground"})}),e[9]=f):f=e[9];let c;e[10]===Symbol.for("react.memo_cache_sentinel")?(c=t.jsxs("div",{className:"relative size-10",children:[f,t.jsx("div",{className:"absolute -bottom-0.5 -right-0.5 size-4 rounded-full bg-background flex items-center justify-center",children:t.jsx(B,{size:12,className:"animate-spin text-muted-foreground"})})]}),e[10]=c):c=e[10];const g=l?"Authenticating with GitHub":"Setting up GitHub";let y;e[11]!==g?(y=t.jsx("p",{className:"text-sm font-medium",children:g}),e[11]=g,e[12]=y):y=e[12];const o=l?"Complete the OAuth flow in your browser":"Installing the GitHub connection...";let p;e[13]!==o?(p=t.jsx("p",{className:"text-xs text-muted-foreground",children:o}),e[13]=o,e[14]=p):p=e[14];let u;e[15]!==y||e[16]!==p?(u=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[y,p]}),e[15]=y,e[16]=p,e[17]=u):u=e[17];const b=l?"bg-muted-foreground/30":"bg-foreground animate-pulse";let x;e[18]!==b?(x=Q("size-1.5 rounded-full",b),e[18]=b,e[19]=x):x=e[19];let C;e[20]!==x?(C=t.jsx("span",{className:x}),e[20]=x,e[21]=C):C=e[21];const h=l?"bg-foreground animate-pulse":"bg-muted-foreground/30";let I;e[22]!==h?(I=Q("size-1.5 rounded-full",h),e[22]=h,e[23]=I):I=e[23];let N;e[24]!==I?(N=t.jsx("span",{className:I}),e[24]=I,e[25]=N):N=e[25];let d;e[26]===Symbol.for("react.memo_cache_sentinel")?(d=t.jsx("span",{className:"size-1.5 rounded-full bg-muted-foreground/30"}),e[26]=d):d=e[26];let i;e[27]!==C||e[28]!==N?(i=t.jsxs("div",{className:"flex items-center gap-1.5",children:[C,N,d]}),e[27]=C,e[28]=N,e[29]=i):i=e[29];let j;return e[30]!==i||e[31]!==u?(j=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[c,u,i]}),e[30]=i,e[31]=u,e[32]=j):j=e[32],j}export{nt as G,F as a,Te as b,ve as g,tt as i,X as p,Ae as u};