decocms 4.160.0 → 4.160.2

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 (223) hide show
  1. package/dist/client/assets/{AlertCircle-DE0mjiPH.js → AlertCircle-8y4OERSA.js} +1 -1
  2. package/dist/client/assets/{AreaChart-eCQ-t4s1.js → AreaChart-ZYewK7hC.js} +1 -1
  3. package/dist/client/assets/{ArrowUp-C_9DgAm2.js → ArrowUp-Cyc2lNPE.js} +1 -1
  4. package/dist/client/assets/{ArrowUpRight-oB3jqICm.js → ArrowUpRight-DB2QWxkL.js} +1 -1
  5. package/dist/client/assets/{Check-0n5WRv25.js → Check-PYC78ebP.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-bg6wDqUV.js → CheckCircle-Cjv9HFQJ.js} +1 -1
  7. package/dist/client/assets/{ChevronDown-CGoHrjX5.js → ChevronDown-B5_0x02X.js} +1 -1
  8. package/dist/client/assets/{ChevronRight-6Rye04P5.js → ChevronRight-Dlc2ivdM.js} +1 -1
  9. package/dist/client/assets/{ChevronUp-jIoouGz9.js → ChevronUp-BUoY9Z_q.js} +1 -1
  10. package/dist/client/assets/{Copy01-qEs1pBUe.js → Copy01-DAExiPfa.js} +1 -1
  11. package/dist/client/assets/{CpuChip01-CmnNTJ2S.js → CpuChip01-BS9rkd3J.js} +1 -1
  12. package/dist/client/assets/{DotsVertical-DEPqJnUT.js → DotsVertical-DEWBiy2X.js} +1 -1
  13. package/dist/client/assets/{Eye-BcQ_NcXu.js → Eye-B0_iy9b0.js} +1 -1
  14. package/dist/client/assets/{FilterLines-CZlxQkSy.js → FilterLines-1uKS3X8V.js} +1 -1
  15. package/dist/client/assets/{HardDrive-CmGgTtHs.js → HardDrive-e3XtBhIu.js} +1 -1
  16. package/dist/client/assets/{Key01-CAeu9IRG.js → Key01-BgCD4pBW.js} +1 -1
  17. package/dist/client/assets/{LayoutLeft-CLrYEhVB.js → LayoutLeft-Cz5Frdvf.js} +1 -1
  18. package/dist/client/assets/{LinkExternal01-CadAJyYe.js → LinkExternal01-CFJ_4gPN.js} +1 -1
  19. package/dist/client/assets/{LogOut01-tcWra5nB.js → LogOut01-B7koOpzk.js} +1 -1
  20. package/dist/client/assets/{Monitor01-C5gSFm53.js → Monitor01-DZM2Wn0z.js} +1 -1
  21. package/dist/client/assets/{Palette-9WcvEjNV.js → Palette-CRSKI0zp.js} +1 -1
  22. package/dist/client/assets/{Play-Cdjrcp_8.js → Play-B6YI7S_E.js} +1 -1
  23. package/dist/client/assets/{Plus-D3nKWb6A.js → Plus-CRjF5ZrO.js} +1 -1
  24. package/dist/client/assets/{SearchLg-SWGVodt2.js → SearchLg-BTlkL2rW.js} +1 -1
  25. package/dist/client/assets/{SearchMd-pXmBLv22.js → SearchMd-YQxdwYOM.js} +1 -1
  26. package/dist/client/assets/{Settings02-Kjl6lXer.js → Settings02-DOMuFrys.js} +1 -1
  27. package/dist/client/assets/{Shield01-dAGbGMt2.js → Shield01-CkaRCMUY.js} +1 -1
  28. package/dist/client/assets/{Star01-BFHufkD9.js → Star01-CZcD9lft.js} +1 -1
  29. package/dist/client/assets/{Stars01-BwY1PqO8.js → Stars01-Cn5SeePJ.js} +1 -1
  30. package/dist/client/assets/{Stars02-CWrAVcB7.js → Stars02-BRu6qn_z.js} +1 -1
  31. package/dist/client/assets/{Sun-CXzkyXLf.js → Sun-Cvwo9PpC.js} +1 -1
  32. package/dist/client/assets/{SwitchHorizontal01-CUj3pS6I.js → SwitchHorizontal01-CgBuvU82.js} +1 -1
  33. package/dist/client/assets/{Tool01-B_rP1jKd.js → Tool01-Uep3SEjO.js} +1 -1
  34. package/dist/client/assets/{Tool02-Du9fr3Nt.js → Tool02-C8biIp3u.js} +1 -1
  35. package/dist/client/assets/{Trash01-CMNjH_DW.js → Trash01-B8WSaJL2.js} +1 -1
  36. package/dist/client/assets/{TrendUp01-B3aBaGrd.js → TrendUp01-Bdn4X-Un.js} +1 -1
  37. package/dist/client/assets/{Upload01-gLSk7mBr.js → Upload01-DANSzhiN.js} +1 -1
  38. package/dist/client/assets/{User01-CIrKbulM.js → User01-DPZhlbFh.js} +1 -1
  39. package/dist/client/assets/{Users01-Dj3IxaU2.js → Users01-DD6c7H7k.js} +1 -1
  40. package/dist/client/assets/{Users03-B67MacfK.js → Users03-CMlMC75Y.js} +1 -1
  41. package/dist/client/assets/{X-Cs3qvsde.js → X-BlBGU8hs.js} +1 -1
  42. package/dist/client/assets/{XCircle-8X6NoxQY.js → XCircle-SAoR-qVk.js} +1 -1
  43. package/dist/client/assets/{XClose-DtR7jMXw.js → XClose-RD250CPb.js} +1 -1
  44. package/dist/client/assets/{Zap-Bp3ZDJnx.js → Zap-C5MeTrEA.js} +1 -1
  45. package/dist/client/assets/{ZapSquare-BOBVT-1J.js → ZapSquare-rytRMLFZ.js} +1 -1
  46. package/dist/client/assets/{access-gate-D9Dnosst.js → access-gate-CdTjn1ju.js} +1 -1
  47. package/dist/client/assets/{add-section-modal-BEIg9H6k.js → add-section-modal-C9g6xXaN.js} +1 -1
  48. package/dist/client/assets/{agent-icon-CFTYRZ70.js → agent-icon-FFo9TiY2.js} +1 -1
  49. package/dist/client/assets/{agents-list-DVzvCSuK.js → agents-list-DK5KfLc2.js} +1 -1
  50. package/dist/client/assets/ai-providers-R5nxbODp.js +1 -0
  51. package/dist/client/assets/{alert-BbTV4HIu.js → alert-BiUR3pkU.js} +1 -1
  52. package/dist/client/assets/{alert-dialog-Ba_RpcbN.js → alert-dialog-DP78W4Vt.js} +1 -1
  53. package/dist/client/assets/{app-editor-CHYVlnN8.js → app-editor-DZU_sdW3.js} +1 -1
  54. package/dist/client/assets/{auth-DXfb7O-1.js → auth-BIX18dPi.js} +1 -1
  55. package/dist/client/assets/{auth-catchall-D7hpYgMj.js → auth-catchall-464czij1.js} +1 -1
  56. package/dist/client/assets/{auth-entry-C7axxh_p.js → auth-entry-BhxZn2Sh.js} +1 -1
  57. package/dist/client/assets/{auth-split-layout-Doggkpnq.js → auth-split-layout-lQLp-zmB.js} +1 -1
  58. package/dist/client/assets/{authenticate-and-persist-oauth-Cuc1WyK7.js → authenticate-and-persist-oauth-CBxXT0hB.js} +1 -1
  59. package/dist/client/assets/{automation-list-row-qq59G5f4.js → automation-list-row-BVMbAK1a.js} +1 -1
  60. package/dist/client/assets/{automation-runs-CJLmWoxl.js → automation-runs-z44C-WD7.js} +1 -1
  61. package/dist/client/assets/{automations-CBQ3kqNn.js → automations-Bx4X4oIF.js} +1 -1
  62. package/dist/client/assets/{avatar-DAFzzHLj.js → avatar-MJs_lh8Y.js} +1 -1
  63. package/dist/client/assets/{badge-C3gtcQlV.js → badge-CS_b3fdR.js} +1 -1
  64. package/dist/client/assets/{block-document-D3wpd3ld.js → block-document-DIgz-okU.js} +1 -1
  65. package/dist/client/assets/{brand-context-C2fYEE4d.js → brand-context-Bs7qKxdA.js} +1 -1
  66. package/dist/client/assets/{buckets-CzdQccS-.js → buckets-CnJyp9Oe.js} +1 -1
  67. package/dist/client/assets/{bulk-category-panel-D7SpasoQ.js → bulk-category-panel-CH5wZXgz.js} +1 -1
  68. package/dist/client/assets/{calendar-8VGV3Aks.js → calendar-BHZiXvB9.js} +1 -1
  69. package/dist/client/assets/{capability-load-error-BFpTi9Lb.js → capability-load-error-eCvGj8Lu.js} +1 -1
  70. package/dist/client/assets/{card-BwBZjRrY.js → card-DnN7MQgz.js} +1 -1
  71. package/dist/client/assets/{category-editor-CeQs1PAl.js → category-editor-C_pRngsC.js} +1 -1
  72. package/dist/client/assets/chat-context-Da-7ez-W.js +36 -0
  73. package/dist/client/assets/{checkbox-kd_d5C6h.js → checkbox-Chxx3rlT.js} +1 -1
  74. package/dist/client/assets/{cli-auth-success-BEZREPaU.js → cli-auth-success-4D5cqXkI.js} +1 -1
  75. package/dist/client/assets/{collection-detail-_O0HerMc.js → collection-detail-BcEjDqW_.js} +1 -1
  76. package/dist/client/assets/{collection-display-button-B4e_0qDi.js → collection-display-button-DJvmILKJ.js} +1 -1
  77. package/dist/client/assets/{collection-search-C12nojTO.js → collection-search-BUT_bQmo.js} +1 -1
  78. package/dist/client/assets/{collection-table-wrapper-CsH48uAl.js → collection-table-wrapper-DkuqucHS.js} +1 -1
  79. package/dist/client/assets/{collection-tabs-Sk2pSREI.js → collection-tabs-BGQrOSQ3.js} +1 -1
  80. package/dist/client/assets/{command-CWWTtUxa.js → command-C9rogxz7.js} +1 -1
  81. package/dist/client/assets/{commerce-onboarding-DNwufAl4.js → commerce-onboarding-BHJxQSWF.js} +1 -1
  82. package/dist/client/assets/{companions-core-C4Sn49zw.js → companions-core-C4miUU6q.js} +1 -1
  83. package/dist/client/assets/{connect-C3Nhus3Y.js → connect-af82JKAl.js} +1 -1
  84. package/dist/client/assets/{connection-Dzd-hklf.js → connection-BGx36b5q.js} +1 -1
  85. package/dist/client/assets/{connection-card-CZgLIhPE.js → connection-card-HtzAz_A8.js} +1 -1
  86. package/dist/client/assets/{connection-detail-C8A6I9FM.js → connection-detail-CDN1gNGK.js} +1 -1
  87. package/dist/client/assets/{connection-form-helpers-DEhmBIsz.js → connection-form-helpers-DBfWPX0Y.js} +1 -1
  88. package/dist/client/assets/{connections-D8MxdRhs.js → connections-CWGFjBGr.js} +1 -1
  89. package/dist/client/assets/{decopilot-sse-pool-B2oCPmrV.js → decopilot-sse-pool-D6OR_Y2O.js} +1 -1
  90. package/dist/client/assets/{dialog-CoY4OqeZ.js → dialog-BzMnbY0y.js} +1 -1
  91. package/dist/client/assets/{domain-settings-CMWSn0zk.js → domain-settings-B8Pje__5.js} +1 -1
  92. package/dist/client/assets/{drawer-DIPBI3Ew.js → drawer-Betz0cqi.js} +1 -1
  93. package/dist/client/assets/{dropdown-menu-C4erEwUT.js → dropdown-menu-D9PPKBun.js} +1 -1
  94. package/dist/client/assets/{empty-state-B2WvTR5T.js → empty-state-DskAldEF.js} +1 -1
  95. package/dist/client/assets/{extract-connection-data-CvsTuXe4.js → extract-connection-data-Bw-zB1Ar.js} +1 -1
  96. package/dist/client/assets/{file-explorer-CcBtmj_M.js → file-explorer-C48eyWES.js} +1 -1
  97. package/dist/client/assets/{form-BxZkLi-F.js → form-nCYEFeTX.js} +1 -1
  98. package/dist/client/assets/{general-BAouvXDL.js → general-DSsCPbwO.js} +1 -1
  99. package/dist/client/assets/{github-repo-picker-CCVoBXDN.js → github-repo-picker-CWDwkoIY.js} +1 -1
  100. package/dist/client/assets/{hooks-DWB9Jr-e.js → hooks-7JU4nGqE.js} +1 -1
  101. package/dist/client/assets/{index-BwSb9Tpn.js → index-Ba90eMAE.js} +1 -1
  102. package/dist/client/assets/{index-DoIQcEC5.js → index-Bhg9KFf2.js} +1 -1
  103. package/dist/client/assets/{index-LFORbuHF.js → index-ChMgVZkD.js} +3 -3
  104. package/dist/client/assets/{index-B1vKGiSv.js → index-DAF8zLJU.js} +1 -1
  105. package/dist/client/assets/{index-CYe42nAN.js → index-DapTXAOT.js} +1 -1
  106. package/dist/client/assets/{index-GfePnBR0.js → index-DkwGWB0f.js} +1 -1
  107. package/dist/client/assets/{index-BXNDg5EZ.js → index-Dukpacs4.js} +1 -1
  108. package/dist/client/assets/{index-BXIXS7Nh.js → index-i969VkBs.js} +5 -5
  109. package/dist/client/assets/{index-DsrnK0MM.js → index-iLlzzCFl.js} +1 -1
  110. package/dist/client/assets/{index-redirect-BB51dzCR.js → index-redirect-BPH8gYxN.js} +1 -1
  111. package/dist/client/assets/{index-MkYVkr6U.js → index-weL-u6Ee.js} +1 -1
  112. package/dist/client/assets/{index-NqSlWKeo.js → index-zIjIdkLn.js} +3 -3
  113. package/dist/client/assets/{input-B126aqDI.js → input-B3sbKVA9.js} +1 -1
  114. package/dist/client/assets/{integration-icon-DyLOD03j.js → integration-icon-CO4aoJ91.js} +1 -1
  115. package/dist/client/assets/{invite-member-dialog-NXpk9_n4.js → invite-member-dialog-C91mFXNo.js} +1 -1
  116. package/dist/client/assets/{label-C_bkFqVN.js → label-BMJgRH7M.js} +1 -1
  117. package/dist/client/assets/{layout-5MZ-UWNX.js → layout-DAEmdbA0.js} +1 -1
  118. package/dist/client/assets/{login-DolqPTPf.js → login-CCcT7OLg.js} +1 -1
  119. package/dist/client/assets/{mcp-oauth-D02BMVQM.js → mcp-oauth-DYUC1gDR.js} +1 -1
  120. package/dist/client/assets/{members-iJrRVQAL.js → members-Dxppzxxd.js} +1 -1
  121. package/dist/client/assets/{monaco-editor-DGSx896C.js → monaco-editor-Dev-PS6i.js} +1 -1
  122. package/dist/client/assets/{monitoring-stats-row-BueRWSgz.js → monitoring-stats-row-BEB6r1lP.js} +1 -1
  123. package/dist/client/assets/{multi-select-CT0fCW6h.js → multi-select-BnNqWpTO.js} +1 -1
  124. package/dist/client/assets/{oauth-callback-ai-provider-4gNIjcK8.js → oauth-callback-ai-provider-CetxyDdJ.js} +1 -1
  125. package/dist/client/assets/{oauth-callback-CYLSpDZi.js → oauth-callback-rujxnxwe.js} +1 -1
  126. package/dist/client/assets/{onboarding--IWpup8z.js → onboarding-DUzcLfNr.js} +1 -1
  127. package/dist/client/assets/{org-layout-XPipUL0i.js → org-layout-B2r2p2yW.js} +1 -1
  128. package/dist/client/assets/{organization-choice-C-aqmVCS.js → organization-choice-IjJKbal_.js} +1 -1
  129. package/dist/client/assets/{orgs-CRkOTI3y.js → orgs-Duu1Uklt.js} +1 -1
  130. package/dist/client/assets/{page-seo-form-BDxe7xmG.js → page-seo-form-BAH5DmS_.js} +1 -1
  131. package/dist/client/assets/{popover-DrFugEcq.js → popover-BFrRsm_m.js} +1 -1
  132. package/dist/client/assets/{post-editor-B3PQMPD_.js → post-editor-BCgo9L0q.js} +1 -1
  133. package/dist/client/assets/{primitives-VF4_uC37.js → primitives-DwvQkJT5.js} +1 -1
  134. package/dist/client/assets/{profile-Y3Zl3zkZ.js → profile-Au8IKhHg.js} +1 -1
  135. package/dist/client/assets/project-app-view-Bx8cV8TV.js +1 -0
  136. package/dist/client/assets/record-editor-BrJdugZS.js +1 -0
  137. package/dist/client/assets/{redirect-editor-BQ9ZwAAA.js → redirect-editor-DrNjGjqG.js} +1 -1
  138. package/dist/client/assets/registry-Drg7UK_L.js +2 -0
  139. package/dist/client/assets/{registry-layout-BHF3Gqk5.js → registry-layout-DpKHRTKK.js} +1 -1
  140. package/dist/client/assets/{reports-BN1RzD5v.js → reports-VCVe_jdH.js} +1 -1
  141. package/dist/client/assets/{require-capability-BAwNnbYl.js → require-capability-BG_pf6ig.js} +1 -1
  142. package/dist/client/assets/{required-auth-layout-BVFXUSUq.js → required-auth-layout-BKi8OUrq.js} +1 -1
  143. package/dist/client/assets/{reset-password-BXhZpZys.js → reset-password-Br-XmQyy.js} +1 -1
  144. package/dist/client/assets/roles-MHk4Zzub.js +1 -0
  145. package/dist/client/assets/{search-input-CF27_KpN.js → search-input-DuTUAY5x.js} +1 -1
  146. package/dist/client/assets/{secrets-CjSBU9Kr.js → secrets-kkLzeRpG.js} +1 -1
  147. package/dist/client/assets/{sections-editor-Bjg7wyBv.js → sections-editor-B3vvjYzg.js} +1 -1
  148. package/dist/client/assets/{select-DXogB_-h.js → select-BGWvnjAE.js} +1 -1
  149. package/dist/client/assets/{select-model-I0NFV9Uk.js → select-model-DVhvGCUy.js} +1 -1
  150. package/dist/client/assets/{self-tool-result-C9O9bPwI.js → self-tool-result-BP89aEBz.js} +1 -1
  151. package/dist/client/assets/{seo-editor-CTR59v6R.js → seo-editor-BZY1hGxI.js} +1 -1
  152. package/dist/client/assets/{settings-layout-BCuXyU8r.js → settings-layout-CbEFafMq.js} +1 -1
  153. package/dist/client/assets/{settings-section-Dhg9xevw.js → settings-section-BYJ6_Dw0.js} +1 -1
  154. package/dist/client/assets/{shell-controls-CtHFWYyX.js → shell-controls-D1NXuyNH.js} +1 -1
  155. package/dist/client/assets/{shell-layout-jKzqe2YT.js → shell-layout-sFSj26fA.js} +1 -1
  156. package/dist/client/assets/{sidebar-BL6QRfzo.js → sidebar-DLncAejG.js} +1 -1
  157. package/dist/client/assets/{skeleton-DoaSwgI-.js → skeleton-DU8UZn0r.js} +1 -1
  158. package/dist/client/assets/{spinner-CxWncV5e.js → spinner-rIS0ABMP.js} +1 -1
  159. package/dist/client/assets/{sso-D6jGO0D7.js → sso-D1t-0Iir.js} +1 -1
  160. package/dist/client/assets/{store-DH16f7DH.js → store-OylfZIBr.js} +1 -1
  161. package/dist/client/assets/store-registry-BYD6EfZc.js +2 -0
  162. package/dist/client/assets/{studio-tools-BU-Aqu_G.js → studio-tools-tD8_ZGRY.js} +1 -1
  163. package/dist/client/assets/{switch-BuFqMzCY.js → switch-ikrIxe3J.js} +1 -1
  164. package/dist/client/assets/{tab-id-CRgBfVKo.js → tab-id-DTllZLmx.js} +1 -1
  165. package/dist/client/assets/{table-CqhKzWtF.js → table-CqaQZ_2r.js} +1 -1
  166. package/dist/client/assets/{tabs-D8AhZBdN.js → tabs-CK29JuYS.js} +1 -1
  167. package/dist/client/assets/{textarea-ByKpF6iY.js → textarea-DL7IKYY-.js} +1 -1
  168. package/dist/client/assets/{toggle-group-DimGo8w8.js → toggle-group-CH32tsa3.js} +1 -1
  169. package/dist/client/assets/{toolbar-DMerAygd.js → toolbar-C7J4euUt.js} +1 -1
  170. package/dist/client/assets/{tooltip-BcdcxYvW.js → tooltip-DsmWOmDJ.js} +1 -1
  171. package/dist/client/assets/{use-ai-providers-DylMZYNE.js → use-ai-providers-BSflXlCU.js} +1 -1
  172. package/dist/client/assets/{use-automations-Cgmm-lc3.js → use-automations-DGNoqHIJ.js} +1 -1
  173. package/dist/client/assets/{use-autosave-CJjMYRwB.js → use-autosave-Ca1PEmfd.js} +1 -1
  174. package/dist/client/assets/{use-capability-iS6a03SC.js → use-capability-CfWBCcId.js} +1 -1
  175. package/dist/client/assets/{use-clock-tick-B3xC65Ez.js → use-clock-tick-BCEETnVe.js} +1 -1
  176. package/dist/client/assets/{use-connection-BpaC0y9_.js → use-connection-BtdpZocr.js} +1 -1
  177. package/dist/client/assets/{use-copy-BFDwgFt_.js → use-copy-D_Bxj49m.js} +1 -1
  178. package/dist/client/assets/{use-create-virtual-mcp-Bda58_Lc.js → use-create-virtual-mcp-DwjkzodM.js} +1 -1
  179. package/dist/client/assets/{use-debounced-autosave-DSLtyXCH.js → use-debounced-autosave-CCjPmjS6.js} +1 -1
  180. package/dist/client/assets/{use-debounced-value-BuhPKj07.js → use-debounced-value-CNwM2YnA.js} +1 -1
  181. package/dist/client/assets/{use-deco-credits-BU6owhHn.js → use-deco-credits-DPXsXoE5.js} +1 -1
  182. package/dist/client/assets/{use-decopilot-events-Cp_4Zx6Y.js → use-decopilot-events-fX0gc0wo.js} +1 -1
  183. package/dist/client/assets/{use-delete-connection-DCNeT1ZN.js → use-delete-connection-ClDETq2s.js} +1 -1
  184. package/dist/client/assets/{use-deployment-admin-DS1-k-Sw.js → use-deployment-admin-L2JDadkC.js} +1 -1
  185. package/dist/client/assets/{use-file-configs-DTgshHaV.js → use-file-configs-CeMBw_HW.js} +1 -1
  186. package/dist/client/assets/{use-infinite-scroll-DubxVdoI.js → use-infinite-scroll-6wMnauGa.js} +1 -1
  187. package/dist/client/assets/{use-join-requests-3EFpA3gt.js → use-join-requests-C0aIg3F1.js} +1 -1
  188. package/dist/client/assets/{use-mcp-auth-status-e2XUmbzU.js → use-mcp-auth-status-evboM2Ix.js} +1 -1
  189. package/dist/client/assets/{use-mcp-client-wvJJ9Hzp.js → use-mcp-client-BIu-60Aj.js} +1 -1
  190. package/dist/client/assets/{use-mcp-tools-Cmz-JSr4.js → use-mcp-tools-Dh2sgcn0.js} +1 -1
  191. package/dist/client/assets/{use-members-B0hxliEV.js → use-members-CRgKWHwi.js} +1 -1
  192. package/dist/client/assets/{use-mobile-BUlMzYS0.js → use-mobile-De4clCMR.js} +1 -1
  193. package/dist/client/assets/{use-navigate-to-agent-BCV3sdRc.js → use-navigate-to-agent-avNdODKh.js} +1 -1
  194. package/dist/client/assets/{use-org-auth-client-CZpW_6-_.js → use-org-auth-client-SG2mclqB.js} +1 -1
  195. package/dist/client/assets/{use-org-sso-DMV1Tbv9.js → use-org-sso-Dg-iwhyL.js} +1 -1
  196. package/dist/client/assets/{use-organization-roles-D3Lrzy1p.js → use-organization-roles-BI8xpEQc.js} +1 -1
  197. package/dist/client/assets/{use-organization-settings-DgXoR4sV.js → use-organization-settings-DDfxk3TG.js} +1 -1
  198. package/dist/client/assets/{use-registry-connections-B5i_oaIw.js → use-registry-connections-VVgQ-6vc.js} +1 -1
  199. package/dist/client/assets/{use-secrets-Bsu0Yd1k.js → use-secrets-D9w_mAbk.js} +1 -1
  200. package/dist/client/assets/{use-status-sounds-C3_zuoo5.js → use-status-sounds-Dh7Mx4Ba.js} +1 -1
  201. package/dist/client/assets/{use-tags-Bf_YFpsk.js → use-tags-Bqcvdo4W.js} +1 -1
  202. package/dist/client/assets/{use-view-mode-Crr9lraw.js → use-view-mode-ChG1pQ8o.js} +1 -1
  203. package/dist/client/assets/{use-virtual-mcp-CfgJMpMO.js → use-virtual-mcp-Bu_UqNaZ.js} +1 -1
  204. package/dist/client/assets/useInfiniteQuery-CU6f6rac.js +1 -0
  205. package/dist/client/assets/{useQueries-Bd6QIH3C.js → useQueries-laoigcOm.js} +1 -1
  206. package/dist/client/assets/{useRouterState-pp64ne3L.js → useRouterState-JlJnOUa5.js} +1 -1
  207. package/dist/client/assets/useSuspenseInfiniteQuery-DxoKTUow.js +1 -0
  208. package/dist/client/assets/{users-GcDULaMY.js → users-BTPAa-CI.js} +1 -1
  209. package/dist/client/assets/{variant-calendar-B8dq3fp3.js → variant-calendar-Cv5HqJyk.js} +1 -1
  210. package/dist/client/assets/{view-mode-toggle-BuyxeZfU.js → view-mode-toggle-CkL5qH8D.js} +1 -1
  211. package/dist/client/index.html +1 -1
  212. package/dist/server/cli.js +869 -91320
  213. package/dist/server/server.js +390 -405
  214. package/package.json +1 -4
  215. package/dist/client/assets/ai-providers-c4DXzUXH.js +0 -1
  216. package/dist/client/assets/chat-context-Bh5kq1MT.js +0 -36
  217. package/dist/client/assets/project-app-view-CNm3Trx4.js +0 -1
  218. package/dist/client/assets/record-editor-DuThY9-T.js +0 -1
  219. package/dist/client/assets/registry-DlJxKE66.js +0 -2
  220. package/dist/client/assets/roles-DwcM6alS.js +0 -1
  221. package/dist/client/assets/store-registry-DL2SDWeu.js +0 -2
  222. package/dist/client/assets/useInfiniteQuery-CsJhdvWo.js +0 -1
  223. package/dist/client/assets/useSuspenseInfiniteQuery-D1R-SSJS.js +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "decocms",
3
- "version": "4.160.0",
3
+ "version": "4.160.2",
4
4
  "description": "Deco CMS — Self-hostable MCP Gateway for managing AI connections and tools",
5
5
  "author": "Deco team",
6
6
  "repository": {
@@ -30,7 +30,6 @@
30
30
  "migrate": "bun run src/database/migrate.ts",
31
31
  "test": "bun test src",
32
32
  "better-auth:migrate": "bunx --bun @better-auth/cli migrate -y --config src/auth/index.ts",
33
- "smoke:link": "bun run scripts/smoke-link.ts",
34
33
  "prepublishOnly": "bun run --cwd=../.. build:studio"
35
34
  },
36
35
  "optionalDependencies": {
@@ -82,7 +81,6 @@
82
81
  "@decocms/runtime": "workspace:*",
83
82
  "@decocms/sandbox": "workspace:*",
84
83
  "@decocms/shared": "workspace:*",
85
- "@decocms/tunnel": "workspace:*",
86
84
  "@jitl/quickjs-wasmfile-release-sync": "0.31.0",
87
85
  "@modelcontextprotocol/sdk": "1.29.0",
88
86
  "@nats-io/jwt": "0.0.10-5",
@@ -112,7 +110,6 @@
112
110
  "pg": "^8.16.3",
113
111
  "typescript": "^7.0.2",
114
112
  "typescript5": "npm:typescript@^5.9.3",
115
- "vite": "^7.2.1",
116
113
  "zod": "4.3.6"
117
114
  },
118
115
  "homepage": "https://github.com/decocms/studio",
@@ -1 +0,0 @@
1
- import{X as J,Y as D,a2 as Me,a4 as Ae,a5 as de,a3 as qe,b7 as Fe,c as Z,b as le,Z as ze,_ as Be,r as X,j as s,a6 as rt,t as ae,av as He,F as we,o as Ke,e as _e,K as re,n as Le,m as Oe,B as oe,p as Ve,v as lt,E as nt}from"./index-NqSlWKeo.js";import{i as at}from"./AlertCircle-DE0mjiPH.js";import{P as Ne}from"./index-BXNDg5EZ.js";import{S as Re}from"./skeleton-DoaSwgI-.js";import{b as Qe,a as Ee,S as Te,c as ct}from"./settings-section-Dhg9xevw.js";import{u as Ce,b as Ie,i as dt,c as mt,p as ut,d as Ge}from"./use-ai-providers-DylMZYNE.js";import{i as ft}from"./CheckCircle-bg6wDqUV.js";import{b as pt,j as gt}from"./use-organization-settings-DgXoR4sV.js";import{e as ht,f as We,P as xt,h as $e}from"./select-model-I0NFV9Uk.js";import{u as bt}from"./use-debounced-autosave-DSLtyXCH.js";import{I as De}from"./input-B126aqDI.js";import{T as Ue,a as vt}from"./toggle-group-DimGo8w8.js";import{c as Ye,d as Xe,b as Je,f as Ze,g as et,e as tt,a as st,A as it}from"./alert-dialog-Ba_RpcbN.js";import{u as Se}from"./studio-tools-BU-Aqu_G.js";import{s as yt}from"./Plus-D3nKWb6A.js";import{p as jt,f as St}from"./pt-BR-CLy76QW2.js";import{c as _t}from"./Tool01-B_rP1jKd.js";import{s as Ct}from"./Trash01-CMNjH_DW.js";import{A as kt}from"./avatar-DAFzzHLj.js";import{i as Pt}from"./Settings02-Kjl6lXer.js";import{s as Nt}from"./Eye-BcQ_NcXu.js";import{b as It,a as Dt,d as wt,e as Kt,c as At}from"./dialog-CoY4OqeZ.js";import{S as Mt}from"./spinner-CxWncV5e.js";import{R as Rt}from"./require-capability-BAwNnbYl.js";import"./sidebar-BL6QRfzo.js";import"./LayoutLeft-CLrYEhVB.js";import"./use-mobile-BUlMzYS0.js";import"./X-Cs3qvsde.js";import"./tooltip-BcdcxYvW.js";import"./card-BwBZjRrY.js";import"./ArrowUpRight-oB3jqICm.js";import"./use-mcp-client-wvJJ9Hzp.js";import"./auth-DXfb7O-1.js";import"./drawer-DIPBI3Ew.js";import"./chat-context-Bh5kq1MT.js";import"./tab-id-CRgBfVKo.js";import"./Check-0n5WRv25.js";import"./Copy01-qEs1pBUe.js";import"./hooks-DWB9Jr-e.js";import"./delay-CnY5UFtP.js";import"./backoff-CrEUbyZT.js";import"./decopilot-sse-pool-B2oCPmrV.js";import"./use-virtual-mcp-CfgJMpMO.js";import"./use-decopilot-events-Cp_4Zx6Y.js";import"./checkbox-kd_d5C6h.js";import"./select-DXogB_-h.js";import"./ChevronDown-CGoHrjX5.js";import"./ChevronUp-jIoouGz9.js";import"./Key01-CAeu9IRG.js";import"./SearchMd-pXmBLv22.js";import"./ai-providers-logos-DD3qZ33J.js";import"./Monitor01-C5gSFm53.js";import"./ChevronRight-6Rye04P5.js";import"./use-is-desktop-app-BNujXJc_.js";import"./Stars01-BwY1PqO8.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./User01-CIrKbulM.js";import"./use-capability-iS6a03SC.js";import"./access-gate-D9Dnosst.js";import"./capability-load-error-BFpTi9Lb.js";J({title:D(),url:D(),icon:D()});J({registries:Ae(D(),J({enabled:de()})).describe("Per-registry enabled/disabled state. Key is connection ID. Absent registries are treated as enabled."),blockedMcps:Me(D()).describe("List of MCP app_name or app_id values to hide from the store.")});const ce=J({keyId:D(),modelId:D(),title:D().optional()}).nullable();qe(["fast","smart","thinking","image","web_search","deep_research"]);qe(["fast","smart","thinking"]);const Et=J({tiers:J({fast:ce,smart:ce,thinking:ce,image:ce,web_search:ce,deep_research:ce})});J({tiers:J({fast:ce.optional(),smart:ce.optional(),thinking:ce.optional()})});J({ids:Me(D()).describe("Ordered list of custom virtual MCP agent ids to show on the home view.")});J({demo_mode:de().optional().describe("Curated demo org: the commerce connect modal proceeds without a configured required data source."),reports_only:de().optional().describe("Curated commerce (reports) look: hides agent navigation, the home Customize button, and the Settings/Automations tabs. Defaulted on for orgs created by commerce onboarding."),qa_agent_enabled:de().optional().describe("Run the QA Agent on a task's pull request once it's In Review — it verifies the task actually solved the problem (exercises the feature, not just the diff)."),code_reviewer_enabled:de().optional().describe("Run the Code Reviewer on a task's pull request once it's In Review — it reviews the code using the repo's stack-appropriate review skills."),auto_merge:de().optional().describe("When every enabled reviewer (QA Agent / Code Reviewer) approves a task's pull request, merge it automatically instead of leaving the merge to a human."),sandbox_go_daemon:de().optional().describe("Which sandbox daemon this org's new sandboxes run. Go is the default, so this is an OPT-OUT: set it to `false` to keep the org on the TypeScript daemon; unset (or `true`) means Go. Affects the NEXT sandbox only — live sandboxes drain on the binary they booted with. Ignored unless the deployment sets STUDIO_SANDBOX_GO_TEMPLATE_NAME (the global kill switch); SANDBOX_START's `daemonImpl` overrides it per sandbox in either direction.")});J({id:D().describe("Brand context ID"),name:D().describe("Company name"),domain:D().describe("Company domain (e.g. example.com)"),overview:D().describe("Company overview / description"),logo:D().nullable().optional().describe("Logo URL"),favicon:D().nullable().optional().describe("Favicon URL"),ogImage:D().nullable().optional().describe("OG image URL"),fonts:J({heading:D().optional().describe("Font family for headings"),body:D().optional().describe("Font family for body text"),code:D().optional().describe("Font family for code / monospace")}).nullable().optional().describe("Font families by semantic role"),colors:J({primary:D().optional().describe("Primary brand color (hex)"),secondary:D().optional().describe("Secondary brand color (hex)"),accent:D().optional().describe("Accent / highlight color (hex)"),background:D().optional().describe("Background color (hex)"),foreground:D().optional().describe("Foreground / text color (hex)")}).nullable().optional().describe("Semantic color palette"),images:Me(Ae(D(),Fe())).nullable().optional().describe("Brand images"),metadata:Ae(D(),Fe()).nullable().optional().describe("Extra design tokens (typography, components, spacing, layout, tone, etc.)"),archivedAt:D().nullable().optional().describe("Archive timestamp (null to unarchive)"),isDefault:de().optional().describe("Whether this is the default brand for the organization")});const Tt=e=>e.capabilities?.includes("image")===!0,Ft=e=>dt(e),Ot=e=>mt(e),$t=[{key:"fast",filter:void 0},{key:"smart",filter:void 0},{key:"thinking",filter:void 0},{key:"image",filter:Tt},{key:"web_search",filter:Ft},{key:"deep_research",filter:Ot}];function Ut(e){const t=Z.c(26),{slot:i,onSlotChange:r,filterModels:n,defaultKeyId:a}=e,c=Ce(),[l,v]=X.useState(i?.keyId??a);let C;t[0]!==i?(C=()=>{i?.keyId&&v(i.keyId)},t[0]=i,t[1]=C):C=t[1];const y=i?.keyId;let o;t[2]!==y?(o=[y],t[2]=y,t[3]=o):o=t[3],X.useEffect(C,o);const d=l??a;let m;t[4]!==d||t[5]!==c?(m=d?c.find(b=>b.id===d):null,t[4]=d,t[5]=c,t[6]=m):m=t[6];const f=m,{models:h,isLoading:g}=Ie(n?d??void 0:void 0),k=n?g||h.some(n):!0;let p;t[7]!==i||t[8]!==f?.providerId?(p=i?{modelId:i.modelId,title:i.title??i.modelId,keyId:i.keyId,providerId:f?.providerId??"deco",description:null,logo:null,capabilities:[],limits:null,costs:null}:null,t[7]=i,t[8]=f?.providerId,t[9]=p):p=t[9];const j=p,N=le();if(n&&!k){let b;t[10]!==N?(b=N("settings.simpleModeSection.notAvailableWithCurrentProvider"),t[10]=N,t[11]=b):b=t[11];let w;return t[12]!==b?(w=s.jsx("p",{className:"text-xs text-muted-foreground italic",children:b}),t[12]=b,t[13]=w):w=t[13],w}let S;t[14]!==N?(S=N("settings.simpleModeSection.pickModel"),t[14]=N,t[15]=S):S=t[15];let _;t[16]===Symbol.for("react.memo_cache_sentinel")?(_=b=>v(b),t[16]=_):_=t[16];let u;t[17]!==d||t[18]!==r?(u=b=>{const w=b.keyId??d??"";v(w),r({keyId:w,modelId:b.modelId,title:b.title})},t[17]=d,t[18]=r,t[19]=u):u=t[19];let P;return t[20]!==d||t[21]!==n||t[22]!==j||t[23]!==S||t[24]!==u?(P=s.jsx(ht,{variant:"bordered",placeholder:S,model:j,credentialId:d,filterModels:n,onCredentialChange:_,onModelChange:u}),t[20]=d,t[21]=n,t[22]=j,t[23]=S,t[24]=u,t[25]=P):P=t[25],P}function qt(e){const t=Z.c(10),{isPending:i,showSaved:r}=e,n=le();if(i){let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a=s.jsx(He,{size:12,className:"animate-spin"}),t[0]=a):a=t[0];let c;t[1]!==n?(c=n("settings.simpleModeSection.saving"),t[1]=n,t[2]=c):c=t[2];let l;return t[3]!==c?(l=s.jsxs("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[a,c]}),t[3]=c,t[4]=l):l=t[4],l}if(r){let a;t[5]===Symbol.for("react.memo_cache_sentinel")?(a=s.jsx(ft,{size:12}),t[5]=a):a=t[5];let c;t[6]!==n?(c=n("settings.simpleModeSection.saved"),t[6]=n,t[7]=c):c=t[7];let l;return t[8]!==c?(l=s.jsxs("span",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[a,c]}),t[8]=c,t[9]=l):l=t[9],l}return null}function zt(){const e=Z.c(58),t=le(),i=Ce(),r=pt(),n=i.length>0;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=ze(Et),e[0]=a):a=e[0];let c;e[1]!==r?(c={resolver:a,values:r,mode:"onChange"},e[1]=r,e[2]=c):c=e[2];const l=Be(c),{mutate:v,isPending:C,isSuccess:y}=gt(),o=l.formState.isDirty;let d;e[3]!==l||e[4]!==r||e[5]!==t||e[6]!==v?(d={delayMs:250,save:async()=>{const x=l.getValues();v(x,{onSuccess:()=>l.reset(x,{keepValues:!0}),onError:A=>{l.reset(r),ae.error(t("settings.simpleModeSection.failedToSave",{error:A.message}))}})}},e[3]=l,e[4]=r,e[5]=t,e[6]=v,e[7]=d):d=e[7];const{schedule:m}=bt(d),f=i[0],h=i[1],g=i[2],{models:k}=Ie(f?.id),{models:p}=Ie(h?.id),{models:j}=Ie(g?.id);let N,S;e[8]!==l||e[9]!==n?(N=()=>{n||l.reset({tiers:{fast:null,smart:null,thinking:null,image:null,web_search:null,deep_research:null}})},S=[n,l],e[8]=l,e[9]=n,e[10]=N,e[11]=S):(N=e[10],S=e[11]),X.useEffect(N,S);let _;e[12]!==i||e[13]!==l||e[14]!==f||e[15]!==h||e[16]!==g||e[17]!==k||e[18]!==p||e[19]!==j?(_=()=>{const x=l.getValues(),A=new Set(i.map(Bt)),M={};f?.id&&(M[f.id]=k),h?.id&&(M[h.id]=p),g?.id&&(M[g.id]=j);const K=L=>L!=null&&!A.has(L.keyId),I={fast:K(x.tiers.fast)?null:x.tiers.fast,smart:K(x.tiers.smart)?null:x.tiers.smart,thinking:K(x.tiers.thinking)?null:x.tiers.thinking,image:K(x.tiers.image)?null:x.tiers.image,web_search:K(x.tiers.web_search)?null:x.tiers.web_search,deep_research:K(x.tiers.deep_research)?null:x.tiers.deep_research},W=!I.fast||!I.smart||!I.thinking||!I.image||!I.web_search||!I.deep_research,Y=I.fast===x.tiers.fast&&I.smart===x.tiers.smart&&I.thinking===x.tiers.thinking&&I.image===x.tiers.image&&I.web_search===x.tiers.web_search&&I.deep_research===x.tiers.deep_research;if(!W&&Y)return;const O=ut(i,M);l.reset({tiers:{fast:I.fast??O.chat.fast,smart:I.smart??O.chat.smart,thinking:I.thinking??O.chat.thinking,image:I.image??O.image,web_search:I.web_search??O.webSearch,deep_research:I.deep_research??O.deepResearch}},{keepDirty:!0})},e[12]=i,e[13]=l,e[14]=f,e[15]=h,e[16]=g,e[17]=k,e[18]=p,e[19]=j,e[20]=_):_=e[20];const u=f?.id,P=h?.id,b=g?.id;let w;e[21]!==i||e[22]!==l||e[23]!==k||e[24]!==p||e[25]!==j||e[26]!==u||e[27]!==P||e[28]!==b?(w=[l,i,k,p,j,u,P,b],e[21]=i,e[22]=l,e[23]=k,e[24]=p,e[25]=j,e[26]=u,e[27]=P,e[28]=b,e[29]=w):w=e[29],X.useEffect(_,w);let V;e[30]!==t?(V=x=>({fast:t("settings.simpleModeSection.tierFast"),smart:t("settings.simpleModeSection.tierSmart"),thinking:t("settings.simpleModeSection.tierThinking"),image:t("settings.simpleModeSection.tierImage"),web_search:t("settings.simpleModeSection.tierWebSearch"),deep_research:t("settings.simpleModeSection.tierDeepResearch")})[x]||x,e[30]=t,e[31]=V):V=e[31];const H=V;let $;e[32]!==t?($=x=>({fast:t("settings.simpleModeSection.tierFastDesc"),smart:t("settings.simpleModeSection.tierSmartDesc"),thinking:t("settings.simpleModeSection.tierThinkingDesc"),image:t("settings.simpleModeSection.tierImageDesc"),web_search:t("settings.simpleModeSection.tierWebSearchDesc"),deep_research:t("settings.simpleModeSection.tierDeepResearchDesc")})[x]||"",e[32]=t,e[33]=$):$=e[33];const Q=$;let U;e[34]!==t?(U=t("settings.simpleModeSection.defaultModels"),e[34]=t,e[35]=U):U=e[35];let R;e[36]!==t?(R=t("settings.simpleModeSection.modelsPowerDescription"),e[36]=t,e[37]=R):R=e[37];let q;e[38]!==R?(q=s.jsx("p",{className:"text-sm text-muted-foreground",children:R}),e[38]=R,e[39]=q):q=e[39];const G=y&&!o;let z;e[40]!==C||e[41]!==G?(z=s.jsx(qt,{isPending:C,showSaved:G}),e[40]=C,e[41]=G,e[42]=z):z=e[42];let E;e[43]!==q||e[44]!==z?(E=s.jsxs("div",{className:"flex items-center justify-between -mt-2 mb-2",children:[q,z]}),e[43]=q,e[44]=z,e[45]=E):E=e[45];let T;e[46]!==i[0]?.id||e[47]!==l.control||e[48]!==Q||e[49]!==H||e[50]!==m?(T=$t.map(x=>s.jsx(rt,{control:l.control,name:`tiers.${x.key}`,render:A=>{const{field:M}=A;return s.jsx(Qe,{title:H(x.key),description:Q(x.key),action:s.jsx(Ut,{slot:M.value,defaultKeyId:i[0]?.id??null,filterModels:x.filter,onSlotChange:K=>{M.onChange(K),m()}})})}},x.key)),e[46]=i[0]?.id,e[47]=l.control,e[48]=Q,e[49]=H,e[50]=m,e[51]=T):T=e[51];let F;e[52]!==T?(F=s.jsx(Ee,{children:T}),e[52]=T,e[53]=F):F=e[53];let B;return e[54]!==U||e[55]!==E||e[56]!==F?(B=s.jsxs(Te,{title:U,headerClassName:"pl-0",children:[E,F]}),e[54]=U,e[55]=E,e[56]=F,e[57]=B):B=e[57],B}function Bt(e){return e.id}const Ht={usd:[10,20,100],brl:[50,100,500]};function Lt(){const e=Z.c(30),t=le(),i=Se(),[r,n]=X.useState(!1);let a;e[0]!==t?(a=u=>{ae.error(t("settings.decoCreditsHero.topUpFailed",{message:u.message}))},e[0]=t,e[1]=a):a=e[1];const{mutate:c,isPending:l}=_e({mutationFn:async u=>{const{url:P}=await i.call("AI_PROVIDER_TOPUP_URL",{providerId:"deco",amountCents:u,currency:d});return P},onSuccess:Vt,onError:a}),[v,C]=X.useState(""),[y,o]=X.useState("usd"),d=y,m=parseFloat(v),f=!isNaN(m)&&m>=1,h=d==="brl"?"R$":"$";let g;e[2]!==o?(g=u=>{u&&o(u)},e[2]=o,e[3]=g):g=e[3];let k,p;e[4]===Symbol.for("react.memo_cache_sentinel")?(k=s.jsx(Ue,{value:"usd",className:"px-3.5 text-sm",children:"USD"}),p=s.jsx(Ue,{value:"brl",className:"px-3.5 text-sm",children:"BRL"}),e[4]=k,e[5]=p):(k=e[4],p=e[5]);let j;e[6]!==d||e[7]!==g?(j=s.jsxs(vt,{type:"single",variant:"outline",size:"default",value:d,onValueChange:g,children:[k,p]}),e[6]=d,e[7]=g,e[8]=j):j=e[8];let N;e[9]!==d||e[10]!==h||e[11]!==r||e[12]!==l||e[13]!==t||e[14]!==c?(N=!r&&s.jsxs(s.Fragment,{children:[Ht[d].map(u=>s.jsxs(oe,{variant:"outline",className:"h-10 px-4 text-sm font-medium tabular-nums",disabled:l,onClick:()=>c(u*100),children:[h,u]},u)),s.jsx(oe,{variant:"ghost",className:"h-10 px-4 text-sm text-muted-foreground",onClick:()=>n(!0),disabled:l,children:t("settings.decoCreditsHero.custom")})]}),e[9]=d,e[10]=h,e[11]=r,e[12]=l,e[13]=t,e[14]=c,e[15]=N):N=e[15];let S;e[16]!==h||e[17]!==v||e[18]!==m||e[19]!==r||e[20]!==f||e[21]!==l||e[22]!==C||e[23]!==t||e[24]!==c?(S=r&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"relative max-w-[140px]",children:[s.jsx("span",{className:"absolute left-3 top-1/2 -translate-y-1/2 text-sm text-muted-foreground select-none",children:h}),s.jsx(De,{type:"number",min:"1",step:"1",placeholder:t("settings.decoCreditsHero.amountPlaceholder"),value:v,onChange:u=>C(u.target.value),className:"h-10 text-sm pl-7",autoFocus:!0})]}),s.jsx(oe,{className:"h-10",disabled:!f||l,onClick:()=>c(Math.round(m*100)),children:l?"...":t("settings.decoCreditsHero.add")}),s.jsx(oe,{variant:"ghost",className:"h-10 text-sm text-muted-foreground",onClick:()=>{n(!1),C("")},children:t("settings.decoCreditsHero.cancel")})]}),e[16]=h,e[17]=v,e[18]=m,e[19]=r,e[20]=f,e[21]=l,e[22]=C,e[23]=t,e[24]=c,e[25]=S):S=e[25];let _;return e[26]!==j||e[27]!==N||e[28]!==S?(_=s.jsx("div",{className:"flex flex-col gap-2.5",children:s.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[j,N,S]})}),e[26]=j,e[27]=N,e[28]=S,e[29]=_):_=e[29],_}function Vt(e){e&&window.open(e,"_blank","noopener,noreferrer")}function Qt(e){return e<=0?"text-destructive":e<=1?"text-warning":"text-foreground"}function Gt(){const e=Z.c(121),t=le(),{org:i}=we(),r=Se(),n=Ke(),a=Ce();let c;e[0]!==a?(c=a.find(Wt),e[0]=a,e[1]=c):c=e[1];const l=c,[v,C]=X.useState(!1);let y;e[2]!==l||e[3]!==r?(y=async()=>{l&&await r.call("AI_PROVIDER_KEY_DELETE",{keyId:l.id})},e[2]=l,e[3]=r,e[4]=y):y=e[4];let o;e[5]!==i.id||e[6]!==n||e[7]!==t?(o=()=>{n.invalidateQueries({queryKey:re.aiProviderKeys(i.id)}),n.invalidateQueries({queryKey:re.aiProviders(i.id)}),ae.success(t("settings.decoCreditsHero.disconnectSuccess")),C(!1)},e[5]=i.id,e[6]=n,e[7]=t,e[8]=o):o=e[8];let d;e[9]!==t?(d=ot=>{ae.error(t("settings.decoCreditsHero.disconnectError",{message:ot.message}))},e[9]=t,e[10]=d):d=e[10];let m;e[11]!==y||e[12]!==o||e[13]!==d?(m={mutationFn:y,onSuccess:o,onError:d},e[11]=y,e[12]=o,e[13]=d,e[14]=m):m=e[14];const{mutate:f,isPending:h}=_e(m);let g;e[15]!==i.id?(g=re.aiProviderCredits(i.id,"deco"),e[15]=i.id,e[16]=g):g=e[16];const k=!!l;let p;e[17]!==r?(p=async()=>{try{return await r.call("AI_PROVIDER_CREDITS",{providerId:"deco"})}catch{return null}},e[17]=r,e[18]=p):p=e[18];let j;e[19]!==g||e[20]!==k||e[21]!==p?(j={queryKey:g,enabled:k,staleTime:6e4,queryFn:p},e[19]=g,e[20]=k,e[21]=p,e[22]=j):j=e[22];const{data:N,isLoading:S,refetch:_,isFetching:u}=Le(j);if(!l)return null;const P=N?.balanceCents!=null?N.balanceCents/100:null;let b;e[23]!==P?(b=P!=null?`$${P.toFixed(2)}`:"—",e[23]=P,e[24]=b):b=e[24];const w=b;let V;e[25]!==t?(V=t("settings.decoCreditsHero.title"),e[25]=t,e[26]=V):V=e[26];let H;e[27]!==t?(H=t("settings.decoCreditsHero.decoAiGatewayAlt"),e[27]=t,e[28]=H):H=e[28];let $;e[29]!==H?($=s.jsx("img",{src:"/logos/deco%20logo.svg",alt:H,className:"size-9 rounded-lg object-contain dark:bg-white dark:p-0.5"}),e[29]=H,e[30]=$):$=e[30];let Q;e[31]!==t?(Q=t("settings.decoCreditsHero.accessModels"),e[31]=t,e[32]=Q):Q=e[32];let U;e[33]!==Q?(U=s.jsx("div",{children:s.jsx("p",{className:"text-xs text-muted-foreground",children:Q})}),e[33]=Q,e[34]=U):U=e[34];let R;e[35]!==$||e[36]!==U?(R=s.jsxs("div",{className:"flex items-center gap-3",children:[$,U]}),e[35]=$,e[36]=U,e[37]=R):R=e[37];let q;e[38]===Symbol.for("react.memo_cache_sentinel")?(q=()=>C(!0),e[38]=q):q=e[38];let G;e[39]!==t?(G=t("settings.decoCreditsHero.disconnect"),e[39]=t,e[40]=G):G=e[40];let z;e[41]!==h||e[42]!==G?(z=s.jsx(oe,{variant:"ghost",size:"sm",className:"text-xs text-muted-foreground hover:text-destructive",onClick:q,disabled:h,children:G}),e[41]=h,e[42]=G,e[43]=z):z=e[43];let E;e[44]!==R||e[45]!==z?(E=s.jsxs("div",{className:"flex items-center justify-between",children:[R,z]}),e[44]=R,e[45]=z,e[46]=E):E=e[46];let T;e[47]!==t?(T=t("settings.decoCreditsHero.disconnectTitle"),e[47]=t,e[48]=T):T=e[48];let F;e[49]!==T?(F=s.jsx(Ye,{children:T}),e[49]=T,e[50]=F):F=e[50];let B;e[51]!==t?(B=t("settings.decoCreditsHero.disconnectDescription"),e[51]=t,e[52]=B):B=e[52];let x;e[53]!==B?(x=s.jsx(Xe,{children:B}),e[53]=B,e[54]=x):x=e[54];let A;e[55]!==F||e[56]!==x?(A=s.jsxs(Je,{children:[F,x]}),e[55]=F,e[56]=x,e[57]=A):A=e[57];let M;e[58]!==t?(M=t("settings.decoCreditsHero.cancelButton"),e[58]=t,e[59]=M):M=e[59];let K;e[60]!==M?(K=s.jsx(Ze,{children:M}),e[60]=M,e[61]=K):K=e[61];let I;e[62]!==f?(I=()=>f(),e[62]=f,e[63]=I):I=e[63];let W;e[64]!==t?(W=t("settings.decoCreditsHero.disconnectButton"),e[64]=t,e[65]=W):W=e[65];let Y;e[66]!==I||e[67]!==W?(Y=s.jsx(et,{onClick:I,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:W}),e[66]=I,e[67]=W,e[68]=Y):Y=e[68];let O;e[69]!==K||e[70]!==Y?(O=s.jsxs(tt,{children:[K,Y]}),e[69]=K,e[70]=Y,e[71]=O):O=e[71];let L;e[72]!==A||e[73]!==O?(L=s.jsxs(st,{children:[A,O]}),e[72]=A,e[73]=O,e[74]=L):L=e[74];let ee;e[75]!==v||e[76]!==L?(ee=s.jsx(it,{open:v,onOpenChange:C,children:L}),e[75]=v,e[76]=L,e[77]=ee):ee=e[77];let te;e[78]!==P||e[79]!==w||e[80]!==u||e[81]!==S?(te=S||u?s.jsx(Re,{className:"h-9 w-24"}):s.jsx("span",{className:Oe("text-3xl font-semibold tabular-nums tracking-tight",P!=null&&Qt(P)),children:w}),e[78]=P,e[79]=w,e[80]=u,e[81]=S,e[82]=te):te=e[82];let se;e[83]!==_?(se=()=>_(),e[83]=_,e[84]=se):se=e[84];let ie;e[85]!==t?(ie=t("settings.decoCreditsHero.refreshBalance"),e[85]=t,e[86]=ie):ie=e[86];const ne=u&&"animate-spin";let me;e[87]!==ne?(me=Oe(ne),e[87]=ne,e[88]=me):me=e[88];let ue;e[89]!==me?(ue=s.jsx(He,{size:14,className:me}),e[89]=me,e[90]=ue):ue=e[90];let fe;e[91]!==u||e[92]!==se||e[93]!==ie||e[94]!==ue?(fe=s.jsx("button",{type:"button",onClick:se,disabled:u,className:"text-muted-foreground hover:text-foreground disabled:opacity-50 transition-colors p-1 rounded-md hover:bg-muted/50","aria-label":ie,children:ue}),e[91]=u,e[92]=se,e[93]=ie,e[94]=ue,e[95]=fe):fe=e[95];let pe;e[96]!==te||e[97]!==fe?(pe=s.jsxs("div",{className:"flex items-baseline gap-2",children:[te,fe]}),e[96]=te,e[97]=fe,e[98]=pe):pe=e[98];let ge;e[99]!==t?(ge=t("settings.decoCreditsHero.availableBalance"),e[99]=t,e[100]=ge):ge=e[100];let he;e[101]!==ge?(he=s.jsx("p",{className:"text-xs text-muted-foreground",children:ge}),e[101]=ge,e[102]=he):he=e[102];let xe;e[103]!==pe||e[104]!==he?(xe=s.jsxs("div",{className:"flex flex-col gap-2 pt-2",children:[pe,he]}),e[103]=pe,e[104]=he,e[105]=xe):xe=e[105];let be;e[106]!==t?(be=t("settings.decoCreditsHero.addCredits"),e[106]=t,e[107]=be):be=e[107];let ve;e[108]!==be?(ve=s.jsx("p",{className:"text-xs font-medium text-muted-foreground mb-2.5",children:be}),e[108]=be,e[109]=ve):ve=e[109];let ke;e[110]===Symbol.for("react.memo_cache_sentinel")?(ke=s.jsx(Lt,{}),e[110]=ke):ke=e[110];let ye;e[111]!==ve?(ye=s.jsxs("div",{className:"pt-4 border-t border-border/60",children:[ve,ke]}),e[111]=ve,e[112]=ye):ye=e[112];let je;e[113]!==E||e[114]!==ee||e[115]!==xe||e[116]!==ye?(je=s.jsx(Ee,{children:s.jsxs("div",{className:"px-5 py-5 flex flex-col gap-5",children:[E,ee,xe,ye]})}),e[113]=E,e[114]=ee,e[115]=xe,e[116]=ye,e[117]=je):je=e[117];let Pe;return e[118]!==V||e[119]!==je?(Pe=s.jsx(Te,{title:V,children:je}),e[118]=V,e[119]=je,e[120]=Pe):Pe=e[120],Pe}function Wt(e){return e.providerId==="deco"}function Yt(){const e=Z.c(8),{org:t}=we(),i=Se(),r=Ke();let n;e[0]!==i?(n=async()=>{await i.call("AI_PROVIDER_PROVISION_KEY",{providerId:"deco"})},e[0]=i,e[1]=n):n=e[1];let a;e[2]!==t||e[3]!==r?(a=()=>{Ve("ai_provider_provision_succeeded",{provider_id:"deco"}),r.invalidateQueries({queryKey:re.aiProviderKeys(t.id)}),r.invalidateQueries({queryKey:re.aiProviders(t.id)}),ae.success("Deco AI Gateway connected successfully")},e[2]=t,e[3]=r,e[4]=a):a=e[4];let c;return e[5]!==n||e[6]!==a?(c={mutationFn:n,onSuccess:a,onError:Xt},e[5]=n,e[6]=a,e[7]=c):c=e[7],_e(c)}function Xt(e){Ve("ai_provider_provision_failed",{provider_id:"deco",error:e.message}),ae.error(`Failed to connect Deco AI Gateway: ${e.message}`)}function Jt(){const e=Z.c(37),t=le(),{mutate:i,isPending:r}=Yt();let n;e[0]===Symbol.for("react.memo_cache_sentinel")?(n=["radial-gradient(ellipse 50% 150% at -15% 50%, rgba(165,149,255,0.14) 0%, transparent 60%)","radial-gradient(ellipse 50% 150% at 115% 50%, rgba(208,236,26,0.11) 0%, transparent 60%)"],e[0]=n):n=e[0];let a;e[1]===Symbol.for("react.memo_cache_sentinel")?(a=s.jsx("div",{className:"absolute inset-0 pointer-events-none",style:{backgroundImage:n.join(", ")}}),e[1]=a):a=e[1];let c;e[2]!==t?(c=t("settings.decoNudgeCard.decoAiGateway"),e[2]=t,e[3]=c):c=e[3];let l;e[4]!==c?(l=s.jsx("img",{src:"/logos/deco%20logo.svg",alt:c,className:"size-12 shrink-0 rounded-xl object-contain dark:bg-white dark:p-1"}),e[4]=c,e[5]=l):l=e[5];let v;e[6]!==t?(v=t("settings.decoNudgeCard.decoAiGateway"),e[6]=t,e[7]=v):v=e[7];let C;e[8]!==v?(C=s.jsx("p",{className:"text-base font-semibold",children:v}),e[8]=v,e[9]=C):C=e[9];let y;e[10]!==t?(y=t("settings.decoNudgeCard.recommended"),e[10]=t,e[11]=y):y=e[11];let o;e[12]!==y?(o=s.jsx("span",{className:"rounded-full border border-border/60 bg-background/60 px-2 py-0.5 text-[10px] font-medium text-muted-foreground",children:y}),e[12]=y,e[13]=o):o=e[13];let d;e[14]!==C||e[15]!==o?(d=s.jsxs("div",{className:"flex items-center gap-2 mb-1",children:[C,o]}),e[14]=C,e[15]=o,e[16]=d):d=e[16];let m;e[17]!==t?(m=t("settings.decoNudgeCard.description"),e[17]=t,e[18]=m):m=e[18];let f;e[19]!==m?(f=s.jsx("p",{className:"text-sm text-muted-foreground",children:m}),e[19]=m,e[20]=f):f=e[20];let h;e[21]!==f||e[22]!==d?(h=s.jsxs("div",{className:"flex-1 min-w-0",children:[d,f]}),e[21]=f,e[22]=d,e[23]=h):h=e[23];let g;e[24]!==i?(g=()=>i(),e[24]=i,e[25]=g):g=e[25];let k;e[26]!==r||e[27]!==t?(k=t(r?"settings.decoNudgeCard.connecting":"settings.decoNudgeCard.connectDeco"),e[26]=r,e[27]=t,e[28]=k):k=e[28];let p;e[29]!==r||e[30]!==g||e[31]!==k?(p=s.jsx(oe,{variant:"outline",disabled:r,onClick:g,children:k}),e[29]=r,e[30]=g,e[31]=k,e[32]=p):p=e[32];let j;return e[33]!==h||e[34]!==p||e[35]!==l?(j=s.jsxs("div",{className:"relative rounded-xl border border-border overflow-hidden",children:[a,s.jsxs("div",{className:"relative flex items-center gap-5 px-6 py-5",children:[l,h,p]})]}),e[33]=h,e[34]=p,e[35]=l,e[36]=j):j=e[36],j}const Zt=e=>J({label:D().min(1,e("settings.editProviderDialog.labelRequired")).max(100),apiKey:D().optional(),baseUrl:D().optional()});function es({isOpenAICompatible:e,baseUrl:t,currentBaseUrl:i,apiKey:r}){return e&&!!t&&t!==i&&!r}function ts({providerKey:e,provider:t,preset:i,maskedKey:r,currentLabel:n,currentBaseUrl:a,onCancel:c,onSuccess:l}){const{org:v}=we(),C=Se(),y=Ke(),o=le(),[d,m]=X.useState(!1),f=t.id==="openai-compatible",h=t.supportedMethods.includes("api-key"),g=Zt(o),{register:k,handleSubmit:p,watch:j,setError:N,formState:{errors:S}}=Be({resolver:ze(g),defaultValues:{label:n,apiKey:"",baseUrl:a??""}}),_=j("apiKey")??"",{mutate:u,isPending:P}=_e({mutationFn:async b=>{let w;b.apiKey&&(f?w=JSON.stringify({baseUrl:b.baseUrl||a||"",apiKey:b.apiKey}):w=b.apiKey),await C.call("AI_PROVIDER_KEY_UPDATE",{keyId:e.id,label:b.label,...w!==void 0?{apiKey:w}:{}})},onSuccess:()=>{y.invalidateQueries({queryKey:re.aiProviderKeys(v.id)}),y.invalidateQueries({queryKey:re.aiProviders(v.id)}),ae.success(o("settings.editProviderDialog.providerUpdated")),l()},onError:b=>ae.error(o("settings.editProviderDialog.failedToUpdate",{error:b.message}))});return s.jsxs("form",{onSubmit:p(b=>{if(es({isOpenAICompatible:f,baseUrl:b.baseUrl,currentBaseUrl:a,apiKey:b.apiKey})){N("apiKey",{message:o("settings.editProviderDialog.apiKeyRequiredForBaseUrlChange")});return}u(b)}),className:"space-y-3",children:[s.jsxs("div",{className:"space-y-1",children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground",children:o("settings.editProviderDialog.label")}),s.jsx(De,{placeholder:o("settings.editProviderDialog.labelPlaceholder"),...k("label"),className:"h-8 text-sm"}),S.label&&s.jsx("p",{className:"text-xs text-destructive",children:S.label.message})]}),f&&!i?.defaultBaseUrl&&s.jsxs("div",{className:"space-y-1",children:[s.jsx("label",{className:"text-xs font-medium text-muted-foreground",children:o("settings.editProviderDialog.baseUrl")}),s.jsx(De,{type:"url",placeholder:i?.baseUrlPlaceholder??o("settings.editProviderDialog.baseUrlPlaceholder"),...k("baseUrl"),className:"h-8 text-sm"})]}),h&&s.jsxs("div",{className:"space-y-1",children:[s.jsxs("label",{className:"text-xs font-medium text-muted-foreground",children:[o("settings.editProviderDialog.apiKey")," ",s.jsxs("span",{className:"text-muted-foreground/60",children:["(",o("settings.editProviderDialog.leaveBlankHint"),")"]})]}),s.jsxs("div",{className:"relative",children:[s.jsx(De,{type:d&&_?"text":"password",placeholder:r,...k("apiKey"),className:"ph-no-capture h-8 text-sm pr-8"}),_&&s.jsx("button",{type:"button",onClick:()=>m(!d),"aria-label":o(d?"settings.editProviderDialog.hideApiKey":"settings.editProviderDialog.showApiKey"),className:"absolute right-2 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground",children:d?s.jsx(Pt,{size:14}):s.jsx(Nt,{size:14})})]}),S.apiKey&&s.jsx("p",{className:"text-xs text-destructive",children:S.apiKey.message})]}),i?.helpText&&s.jsx("p",{className:"text-xs text-muted-foreground",children:i.helpText}),s.jsxs(At,{children:[s.jsx(oe,{type:"button",variant:"ghost",size:"sm",onClick:c,disabled:P,children:o("settings.editProviderDialog.cancel")}),s.jsx(oe,{type:"submit",size:"sm",disabled:P,children:o(P?"settings.editProviderDialog.saving":"settings.editProviderDialog.save")})]})]})}function ss(e){const t=Z.c(31),{providerKey:i,provider:r,open:n,onOpenChange:a}=e,c=le(),l=Se(),v=r.id==="openai-compatible"&&i.presetId?We(i.presetId):void 0,C=v?.name??r.name;let y;t[0]!==i.id?(y=re.aiProviderKeyPreview(i.id),t[0]=i.id,t[1]=y):y=t[1];let o;t[2]!==i.id||t[3]!==l?(o=()=>l.call("AI_PROVIDER_KEY_PREVIEW",{keyId:i.id}),t[2]=i.id,t[3]=l,t[4]=o):o=t[4];let d;t[5]!==n||t[6]!==y||t[7]!==o?(d={queryKey:y,queryFn:o,enabled:n,staleTime:0},t[5]=n,t[6]=y,t[7]=o,t[8]=d):d=t[8];const{data:m,isLoading:f}=Le(d),h=Kt,g=wt,k="sm:max-w-md",p=Dt,j=It,N=c("settings.editProviderDialog.editTitle",{name:C});let S;t[9]!==j||t[10]!==N?(S=s.jsx(j,{children:N}),t[9]=j,t[10]=N,t[11]=S):S=t[11];let _;t[12]!==p||t[13]!==S?(_=s.jsx(p,{children:S}),t[12]=p,t[13]=S,t[14]=_):_=t[14];let u;t[15]!==f||t[16]!==a||t[17]!==v||t[18]!==m||t[19]!==r||t[20]!==i?(u=f||!m?s.jsx("div",{className:"flex justify-center py-8",children:s.jsx(Mt,{})}):s.jsx(ts,{providerKey:i,provider:r,preset:v,maskedKey:m.maskedKey,currentLabel:m.label,currentBaseUrl:m.baseUrl,onCancel:()=>a(!1),onSuccess:()=>a(!1)}),t[15]=f,t[16]=a,t[17]=v,t[18]=m,t[19]=r,t[20]=i,t[21]=u):u=t[21];let P;t[22]!==g||t[23]!==_||t[24]!==u?(P=s.jsxs(g,{className:k,children:[_,u]}),t[22]=g,t[23]=_,t[24]=u,t[25]=P):P=t[25];let b;return t[26]!==h||t[27]!==a||t[28]!==n||t[29]!==P?(b=s.jsx(h,{open:n,onOpenChange:a,children:P}),t[26]=h,t[27]=a,t[28]=n,t[29]=P,t[30]=b):b=t[30],b}function is(e){const t=Z.c(88),{providerKey:i,provider:r}=e,{org:n}=we(),a=Se(),c=Ke(),[l,v]=X.useState(!1),[C,y]=X.useState(!1),o=le(),[d]=lt(),m=d.language==="pt-BR"?jt:void 0,f=r.id==="openai-compatible";let h;t[0]!==f||t[1]!==i.presetId?(h=f&&i.presetId?We(i.presetId):void 0,t[0]=f,t[1]=i.presetId,t[2]=h):h=t[2];const g=h;let k;t[3]!==f||t[4]!==g||t[5]!==r.name||t[6]!==o?(k=g?g.name:f?o("settings.aiProviders.customOpenAiCompatible"):r.name,t[3]=f,t[4]=g,t[5]=r.name,t[6]=o,t[7]=k):k=t[7];const p=k,j=g?.logo??r.logo;let N;e:{if(f){N=i.label;break e}let ne;t[8]!==m||t[9]!==i.createdAt||t[10]!==i.label||t[11]!==o?(ne=o("settings.providerKeyRow.addedTimeAgo",{label:i.label,time:St(new Date(i.createdAt),{locale:m})}),t[8]=m,t[9]=i.createdAt,t[10]=i.label,t[11]=o,t[12]=ne):ne=t[12],N=ne}const S=N;let _;t[13]!==i.id||t[14]!==a?(_=async()=>{await a.call("AI_PROVIDER_KEY_DELETE",{keyId:i.id})},t[13]=i.id,t[14]=a,t[15]=_):_=t[15];let u;t[16]!==n||t[17]!==i.id||t[18]!==c||t[19]!==o?(u=()=>{c.invalidateQueries({queryKey:re.aiProviderKeys(n.id)}),c.invalidateQueries({queryKey:re.aiProviders(n.id)}),c.invalidateQueries({queryKey:re.aiProviderModels(n.id,i.id)}),ae.success(o("settings.providerKeyRow.keyDeleted")),v(!1)},t[16]=n,t[17]=i.id,t[18]=c,t[19]=o,t[20]=u):u=t[20];let P;t[21]!==o?(P=ne=>ae.error(o("settings.providerKeyRow.failedToDeleteKey",{error:ne.message})),t[21]=o,t[22]=P):P=t[22];let b;t[23]!==_||t[24]!==u||t[25]!==P?(b={mutationFn:_,onSuccess:u,onError:P},t[23]=_,t[24]=u,t[25]=P,t[26]=b):b=t[26];const{mutate:w,isPending:V}=_e(b);let H;t[27]!==p||t[28]!==j?(H=j?s.jsx("img",{src:j,alt:p,className:"size-8 rounded-md object-contain dark:bg-white dark:p-0.5"}):s.jsx(kt,{fallback:p.charAt(0),className:"size-8 bg-primary/10 text-primary"}),t[27]=p,t[28]=j,t[29]=H):H=t[29];let $;t[30]!==o?($=o("settings.providerKeyRow.editProviderKey"),t[30]=o,t[31]=$):$=t[31];let Q,U;t[32]===Symbol.for("react.memo_cache_sentinel")?(Q=()=>y(!0),U=s.jsx(_t,{size:14}),t[32]=Q,t[33]=U):(Q=t[32],U=t[33]);let R;t[34]!==$?(R=s.jsx(oe,{variant:"ghost",size:"icon","aria-label":$,className:"h-7 w-7 text-muted-foreground hover:text-foreground",onClick:Q,children:U}),t[34]=$,t[35]=R):R=t[35];let q;t[36]!==o?(q=o("settings.providerKeyRow.deleteProviderKey"),t[36]=o,t[37]=q):q=t[37];let G,z;t[38]===Symbol.for("react.memo_cache_sentinel")?(G=()=>v(!0),z=s.jsx(Ct,{size:14}),t[38]=G,t[39]=z):(G=t[38],z=t[39]);let E;t[40]!==V||t[41]!==q?(E=s.jsx(oe,{variant:"ghost",size:"icon","aria-label":q,className:"h-7 w-7 text-muted-foreground hover:text-destructive",disabled:V,onClick:G,children:z}),t[40]=V,t[41]=q,t[42]=E):E=t[42];let T;t[43]!==R||t[44]!==E?(T=s.jsxs("div",{className:"flex items-center gap-0.5",children:[R,E]}),t[43]=R,t[44]=E,t[45]=T):T=t[45];let F;t[46]!==S||t[47]!==p||t[48]!==T||t[49]!==H?(F=s.jsx(Qe,{icon:H,title:p,description:S,action:T}),t[46]=S,t[47]=p,t[48]=T,t[49]=H,t[50]=F):F=t[50];let B;t[51]!==C||t[52]!==r||t[53]!==i?(B=s.jsx(ss,{providerKey:i,provider:r,open:C,onOpenChange:y}),t[51]=C,t[52]=r,t[53]=i,t[54]=B):B=t[54];let x;t[55]!==o?(x=o("settings.providerKeyRow.deleteApiKey"),t[55]=o,t[56]=x):x=t[56];let A;t[57]!==x?(A=s.jsx(Ye,{children:x}),t[57]=x,t[58]=A):A=t[58];let M;t[59]!==i.label?(M=s.jsxs(Xe,{children:["This action cannot be undone. This will permanently delete"," ",s.jsx("span",{className:"font-medium text-foreground",children:i.label}),"."]}),t[59]=i.label,t[60]=M):M=t[60];let K;t[61]!==A||t[62]!==M?(K=s.jsxs(Je,{children:[A,M]}),t[61]=A,t[62]=M,t[63]=K):K=t[63];let I;t[64]!==o?(I=o("settings.providerKeyRow.cancel"),t[64]=o,t[65]=I):I=t[65];let W;t[66]!==I?(W=s.jsx(Ze,{children:I}),t[66]=I,t[67]=W):W=t[67];let Y;t[68]!==w?(Y=()=>w(),t[68]=w,t[69]=Y):Y=t[69];let O;t[70]!==o?(O=o("settings.providerKeyRow.delete"),t[70]=o,t[71]=O):O=t[71];let L;t[72]!==Y||t[73]!==O?(L=s.jsx(et,{onClick:Y,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:O}),t[72]=Y,t[73]=O,t[74]=L):L=t[74];let ee;t[75]!==W||t[76]!==L?(ee=s.jsxs(tt,{children:[W,L]}),t[75]=W,t[76]=L,t[77]=ee):ee=t[77];let te;t[78]!==K||t[79]!==ee?(te=s.jsxs(st,{children:[K,ee]}),t[78]=K,t[79]=ee,t[80]=te):te=t[80];let se;t[81]!==l||t[82]!==te?(se=s.jsx(it,{open:l,onOpenChange:v,children:te}),t[81]=l,t[82]=te,t[83]=se):se=t[83];let ie;return t[84]!==F||t[85]!==B||t[86]!==se?(ie=s.jsxs(s.Fragment,{children:[F,B,se]}),t[84]=F,t[85]=B,t[86]=se,t[87]=ie):ie=t[87],ie}function os(e){const t=Z.c(17),{onConnectClick:i}=e,r=le(),n=Ce(),a=Ge();let c;t[0]!==a?.providers?(c=a?.providers??[],t[0]=a?.providers,t[1]=c):c=t[1];const l=c;let v;if(t[2]!==n||t[3]!==i||t[4]!==l||t[5]!==r){let C;t[7]!==l?(C=h=>({key:h,provider:l.find(g=>g.id===h.providerId)}),t[7]=l,t[8]=C):C=t[8];const y=n.filter(ns).map(C).filter(ls);let o;t[9]!==r?(o=r("settings.connectedProvidersSection.sectionTitle"),t[9]=r,t[10]=o):o=t[10];let d;t[11]===Symbol.for("react.memo_cache_sentinel")?(d=s.jsx(yt,{size:14}),t[11]=d):d=t[11];let m;t[12]!==r?(m=r("settings.connectedProvidersSection.connectButton"),t[12]=r,t[13]=m):m=t[13];let f;t[14]!==i||t[15]!==m?(f=s.jsxs(oe,{size:"sm",onClick:i,children:[d,m]}),t[14]=i,t[15]=m,t[16]=f):f=t[16],v=s.jsx(Te,{title:o,headerClassName:"px-0",actions:f,children:y.length===0?s.jsx("p",{className:"text-sm text-muted-foreground px-1",children:r("settings.connectedProvidersSection.emptyState")}):s.jsx(Ee,{children:y.map(rs)})}),t[2]=n,t[3]=i,t[4]=l,t[5]=r,t[6]=v}else v=t[6];return v}function rs(e){const{key:t,provider:i}=e;return s.jsx(is,{providerKey:t,provider:i},t.id)}function ls(e){return e.provider!==void 0}function ns(e){return e.providerId!=="deco"}function as(e){const t=Z.c(3),{error:i}=e;let r;t[0]===Symbol.for("react.memo_cache_sentinel")?(r=s.jsx(at,{size:16}),t[0]=r):r=t[0];let n;return t[1]!==i.message?(n=s.jsxs("div",{className:"p-4 rounded-md bg-destructive/10 text-destructive flex items-center gap-2",children:[r,s.jsxs("span",{className:"text-sm font-medium",children:["Failed to load AI providers: ",i.message]})]}),t[1]=i.message,t[2]=n):n=t[2],n}function cs(){const e=Z.c(23),t=Ce();let i;e[0]!==t?(i=t.some(ds),e[0]=t,e[1]=i):i=e[1];const r=i,n=t.length>0,[a,c]=X.useState(!1),[l,v]=X.useState(null),C=Ge();let y;e[2]!==C?.providers?(y=C?.providers??[],e[2]=C?.providers,e[3]=y):y=e[3];const o=y;if(!n){let k;e[4]===Symbol.for("react.memo_cache_sentinel")?(k=()=>c(!0),e[4]=k):k=e[4];let p;e[5]!==o?(p=s.jsx(xt,{providers:o,onSelect:v,onShowAll:k}),e[5]=o,e[6]=p):p=e[6];const j=l!==null||a;let N;e[7]===Symbol.for("react.memo_cache_sentinel")?(N=P=>{P||(v(null),c(!1))},e[7]=N):N=e[7];const S=l??void 0;let _;e[8]!==j||e[9]!==S?(_=s.jsx($e,{open:j,onOpenChange:N,initialProvider:S}),e[8]=j,e[9]=S,e[10]=_):_=e[10];let u;return e[11]!==p||e[12]!==_?(u=s.jsxs(s.Fragment,{children:[p,_]}),e[11]=p,e[12]=_,e[13]=u):u=e[13],u}let d;e[14]===Symbol.for("react.memo_cache_sentinel")?(d=s.jsx(X.Suspense,{fallback:s.jsx(Re,{className:"h-16 w-full"}),children:s.jsx(zt,{})}),e[14]=d):d=e[14];let m;e[15]!==r?(m=r?s.jsx(Gt,{}):s.jsx(Jt,{}),e[15]=r,e[16]=m):m=e[16];let f;e[17]===Symbol.for("react.memo_cache_sentinel")?(f=s.jsx(os,{onConnectClick:()=>c(!0)}),e[17]=f):f=e[17];let h;e[18]!==a?(h=s.jsx($e,{open:a,onOpenChange:c}),e[18]=a,e[19]=h):h=e[19];let g;return e[20]!==m||e[21]!==h?(g=s.jsxs(s.Fragment,{children:[d,m,f,h]}),e[20]=m,e[21]=h,e[22]=g):g=e[22],g}function ds(e){return e.providerId==="deco"}function ms(){const e=Z.c(7),t=le();let i;e[0]!==t?(i=t("settings.nav.aiProviders"),e[0]=t,e[1]=i):i=e[1];let r;e[2]!==i?(r=s.jsx(Ne.Title,{children:i}),e[2]=i,e[3]=r):r=e[3];let n;e[4]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(nt,{fallback:us,children:s.jsx(X.Suspense,{fallback:s.jsx(Re,{className:"h-64 w-full"}),children:s.jsx(cs,{})})}),e[4]=n):n=e[4];let a;return e[5]!==r?(a=s.jsx(Ne,{children:s.jsx(Ne.Content,{children:s.jsx(Ne.Body,{children:s.jsxs(ct,{children:[r,n]})})})}),e[5]=r,e[6]=a):a=e[6],a}function us(e){const{error:t}=e;return s.jsx(as,{error:t??new Error("Failed to load AI providers")})}function vi(){const e=Z.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(Rt,{capability:"ai-providers:manage",area:"AI providers",children:s.jsx(ms,{})}),e[0]=t):t=e[0],t}export{vi as default};
@@ -1,36 +0,0 @@
1
- import{X as x,a2 as M,Y as i,a5 as Ie,a3 as de,a4 as Se,aG as we,cw as kt,bi as Ue,b7 as it,c as Y,F as Z,K as oe,n as rt,aH as It,J as lt,u as Ne,o as Fe,t as ce,I as he,G as me,d as ct,f as wt,r as S,e as Mt,j as xe,b as $e,a as Tt,v as Ct,a9 as At,p as Pt}from"./index-NqSlWKeo.js";import{d as _t,s as Rt,A as dt,t as Et,u as $t,o as Dt,w as Ot}from"./tab-id-CRgBfVKo.js";import{S as Ut,u as Lt,f as Nt,b as Ft}from"./hooks-DWB9Jr-e.js";import{u as ut,c as qt}from"./studio-tools-BU-Aqu_G.js";import{a as jt,u as Kt,S as Vt}from"./use-mcp-client-wvJJ9Hzp.js";import{u as Ht}from"./use-virtual-mcp-CfgJMpMO.js";import{p as Qt,u as Bt,b as ye,i as Wt,c as Gt}from"./use-ai-providers-DylMZYNE.js";import{u as zt}from"./use-decopilot-events-Cp_4Zx6Y.js";import{b as Xt}from"./use-organization-settings-DgXoR4sV.js";const ve=x({connection_id:i().describe("Connection ID"),selected_tools:M(i()).nullable().describe("Selected tool names. null = all tools included, array = only these tools included"),selected_resources:M(i()).nullable().describe("Selected resource URIs or patterns. Supports * and ** wildcards for pattern matching. null = all resources included, array = only these resources included"),selected_prompts:M(i()).nullable().describe("Selected prompt names. null = all prompts included, array = only these prompts included")}),pt=ve.extend({selected_tools:ve.shape.selected_tools.optional(),selected_resources:ve.shape.selected_resources.optional(),selected_prompts:ve.shape.selected_prompts.optional()}),Yt=x({connectionId:i(),toolName:i(),label:i(),icon:i().nullable().optional()}),Zt=x({id:i().describe("Stable id; used as React key and ?tab= value"),title:i().describe("Tab label"),icon:i().optional().describe("Optional lucide icon name"),view:x({type:Ue("ext-app"),appId:i(),args:Se(i(),it()).optional()})}),Jt=x({defaultMainView:x({type:i(),id:i().optional(),toolName:i().optional()}).nullable().optional(),chatDefaultOpen:Ie().nullable().optional(),cmsDefaultOpen:Ie().nullable().optional(),tabs:M(Zt).optional()}),Ze=x({tileId:i().optional(),connectionId:i().optional().describe("Connection that owns the resource — the host opens a direct MCP client to this connection so the iframe can call tools by their bare names."),resourceUri:i().describe("ui:// resource URI exposed by `connectionId`. Read on the home page and rendered via MCPAppRenderer."),toolName:i().optional().describe("Tool name — identifies which tool's inputSchema to display when editing tile props."),toolInput:Se(i(),it()).optional().describe("User-configured input props passed to MCPAppRenderer when rendering the tile."),minHeight:we().int().positive().optional(),maxHeight:we().int().positive().optional()}),qe=x({banner:i().nullable().optional(),bannerColor:i().nullable().optional(),icon:i().nullable().optional(),themeColor:i().nullable().optional(),pinnedViews:M(Yt).nullable().optional(),layout:Jt.nullable().optional(),homeTile:Ze.nullable().optional(),homeTiles:M(Ze).nullable().optional(),homePrompts:M(i()).nullable().optional()});function ls(t){const e=t?.homeTiles;if(Array.isArray(e)&&e.length>0)return e;const s=t?.homeTile;return s?[s]:[]}const en=/^[A-Za-z_][A-Za-z0-9_]*$/,Je=i().min(1).regex(en,{message:"Env var key must start with a letter or underscore and contain only letters, digits, and underscores."}),tn=kt("kind",[x({key:Je,kind:Ue("literal"),value:i()}),x({key:Je,kind:Ue("secret"),secretId:i().min(1)})]),nn=/^[a-zA-Z0-9.-]+(?::[0-9]+)?$/,sn=x({host:i().min(1).regex(nn).describe("Submodule host, e.g. 'github.com' (bare hostname, no scheme)."),secretId:i().min(1).describe("Vault secret id holding the PAT used to fetch this host.")}),je=x({selected:i().nullable().optional().describe("User-selected package manager (npm | pnpm | yarn | bun | deno). Null/absent means autodetect on next SANDBOX_START."),port:i().nullable().optional().describe("User-selected dev server port as a string (allows '' / null for unset). Null/absent means autodetect."),path:i().nullable().optional().describe("Optional path (relative to repo root) to the directory containing package.json. Null/absent means repo root. Forwarded as `application.packageManager.path` to the daemon config."),env:M(tn).nullable().optional().describe("Env vars injected on every SANDBOX_START. Literal entries inline their value; secret entries store a secretId that Studio resolves via the credential vault before posting /_sandbox/config."),submoduleCredentials:M(sn).nullable().optional().describe("Git submodule credentials injected on every SANDBOX_START. Each entry maps a host to a vault secret (PAT) that Studio resolves before posting /_sandbox/config; the daemon uses it to authenticate `git submodule update` for submodules on that host.")}),Ke=x({url:i().describe("GitHub repository URL"),owner:i().describe("Repository owner"),name:i().describe("Repository name"),installationId:we().optional().describe("GitHub App installation ID. Absent when the repo was linked without a GitHub connection (public-clone mode)."),connectionId:i().optional().describe("ID of the mcp-github connection used for authentication. Absent for public repos cloned without credentials.")}),on=de(["agent-sandbox","user-desktop"]),an=de(["agent-sandbox","user-desktop","cluster"]);function Ve(t){return t==="cluster"?"agent-sandbox":t}const ht={sandboxHandle:i().describe("Provider-specific handle"),previewUrl:i().nullable().describe("URL where the sandbox's iframe-proxied UI is served, or null when the sandbox has no dev server (blank / tool sandboxes)."),sandboxApiUrl:i().nullable().optional().describe("Daemon's public URL — what cluster→daemon RPCs target. Equal to previewUrl for user-desktop; null/absent for the agent-sandbox provider (routes through hosted ingress)."),sandboxProviderKind:on.optional(),createdAt:we().optional().describe("Epoch ms the entry was first written by SANDBOX_START. Used by the booting overlay to show a stable elapsed timer that survives browser reloads. Optional for backward compatibility with entries written before this field existed."),startedWith:x({packageManager:i().nullable().optional().describe("metadata.runtime.selected at the time of SANDBOX_START"),port:i().nullable().optional().describe("metadata.runtime.port at the time of SANDBOX_START"),path:i().nullable().optional().describe("metadata.runtime.path at the time of SANDBOX_START")}).optional().describe("Snapshot of metadata.runtime fields (selected/port/path) used at SANDBOX_START. The Preview tab compares the live metadata.runtime against this to decide if a restart is required to apply changes.")},mt=x(ht),rn=x({...ht,sandboxProviderKind:an.optional()});function ln(t){const e=rn.parse(t);return mt.parse({...e,sandboxProviderKind:e.sandboxProviderKind?Ve(e.sandboxProviderKind):void 0})}function cs(t){if(!t||typeof t!="object"||Array.isArray(t))return{};const e=t,s={};for(const[n,o]of Object.entries(e)){if(!o||typeof o!="object"||n!=="cluster"&&n!=="agent-sandbox"&&n!=="user-desktop")continue;const a=Ve(n);try{if(n==="cluster"&&s[a])continue;s[a]=ln(o)}catch{}}return s}const He=Se(i().describe("userId"),Se(i().describe("branch"),Se(i().describe("sandboxProviderKind"),mt))),cn=x({id:i().describe("Stable identifier for this knowledge file"),name:i().describe("File name shown in the UI"),kind:de(["file","skill"]).optional().describe("'file' (a single document) or 'skill' (a Claude Code skill folder containing SKILL.md). Defaults to 'file'."),volume:i().describe("Org filesystem (Library) volume the file lives in"),path:i().describe("Path within the volume"),url:i().describe("Same-origin URL to read the file (display/download)"),contentType:i().nullable().optional().describe("MIME type, used to decide whether to inline the content"),size:we().nullable().optional().describe("File size in bytes"),addedAt:i().describe("ISO timestamp when the file was attached")}),Qe=M(cn).nullable().optional().describe("Files attached to the agent as reference knowledge. Surfaced in the system prompt: small text documents are inlined, others are listed as retrievable references."),dn=de(["smart","code-review","open"]),Be=dn.nullable().optional().describe("Controls when this code agent's changes may be published directly vs. requiring PR review. 'smart' (default) uses AI to judge per change; 'code-review' requires review for any code; 'open' allows direct publish always."),ds=x({id:i().describe("Unique identifier"),title:i().describe("Human-readable name"),description:i().nullable().describe("Description"),icon:i().nullable().describe("Icon URL"),created_at:i().describe("Creation timestamp"),updated_at:i().describe("Last update timestamp"),created_by:i().describe("User ID who created this item"),updated_by:i().optional().describe("User ID who last updated this item"),organization_id:i().describe("Organization ID this item belongs to"),status:de(["active","inactive"]).describe("Current status"),pinned:Ie().describe("Whether this space is pinned to the sidebar"),metadata:x({instructions:i().nullable().describe("Instructions also used as system prompt"),enabled_plugins:M(i()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:M(i()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:i().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:qe.nullable().optional().describe("UI customization settings"),githubRepo:Ke.nullable().optional().describe("Linked GitHub repository"),runtime:je.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:He.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:Qe,siteSlug:i().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:Be,productionUrl:i().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking.")}).loose().describe("Metadata"),connections:M(ve).describe("Connections with their selected tools, resources, and prompts")}),bt=x({title:i().min(1).max(120).describe("Short label shown on the chip"),description:i().max(280).optional().describe("One-line subtitle shown under the title"),text:i().min(1).describe("The message sent to the agent when the prompt is clicked")});x({title:i().min(1).max(255).describe("Name for the virtual MCP"),description:i().nullable().optional().describe("Optional description"),icon:i().nullish().describe("Optional icon URL"),status:de(["active","inactive"]).optional().default("active").describe("Initial status"),pinned:Ie().optional().default(!1).describe("Pin to sidebar"),metadata:x({instructions:i().nullable().optional().describe("MCP server instructions"),enabled_plugins:M(i()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:M(i()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:i().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:qe.nullable().optional().describe("UI customization settings"),githubRepo:Ke.nullable().optional().describe("Linked GitHub repository"),runtime:je.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:He.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:Qe,siteSlug:i().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:Be,productionUrl:i().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking.")}).loose().nullable().optional().describe("Additional metadata including MCP server instructions"),connections:M(pt).describe("Connections to include/exclude (can be empty for exclusion mode)"),prompts:M(bt).optional().describe("Optional kickstart prompts to seed on the agent. Each becomes a clickable conversation starter (icebreaker) on the agent. Author them from the agent's role and the tools it will have so they're coherent and immediately useful.")});x({title:i().min(1).max(255).optional().describe("New name"),description:i().nullable().optional().describe("New description (null to clear)"),icon:i().nullish().describe("New icon URL"),status:de(["active","inactive"]).optional().describe("New status"),pinned:Ie().optional().describe("Pin/unpin from sidebar"),metadata:x({instructions:i().nullable().optional().describe("MCP server instructions"),enabled_plugins:M(i()).nullable().optional().describe("List of enabled plugin IDs"),subAgents:M(i()).nullable().optional().describe("Allowlist of Virtual MCP (agent) or concrete MCP connection IDs this agent may delegate to via subtask. Concrete connections create ephemeral subagents. null/absent = all active org targets; empty array = itself only."),liveAgentId:i().nullable().optional().describe("ID of the live agent this (dev) agent develops. Set only on dev agents; powers the Develop/Live toggle. A dev agent is hidden from the sidebar (reached via the toggle on its live counterpart)."),ui:qe.nullable().optional().describe("UI customization settings"),githubRepo:Ke.nullable().optional().describe("Linked GitHub repository"),runtime:je.nullable().optional().describe("User-pinned runtime config (package manager, dev port). Empty fields = autodetect."),sandboxMap:He.optional().describe("Per-user, per-branch sandbox mapping: sandboxMap[userId][branch] -> { sandboxHandle, previewUrl }"),knowledge:Qe,siteSlug:i().nullable().optional().describe("Linked asset site slug (managed storage tenancy)"),publishPolicy:Be,productionUrl:i().nullable().optional().describe("Live production URL of the linked site (e.g. https://acme.com). Painted in the preview iframe while the sandbox dev server is waking.")}).loose().nullable().optional().describe("Additional metadata including MCP server instructions"),connections:M(pt).optional().describe("New connections (replaces existing)"),prompts:M(bt).optional().describe("Replace the agent's kickstart prompts with this full set. Omit to leave them unchanged; pass an empty array to remove all. Each becomes a clickable conversation starter (icebreaker).")});function un(t,e=[]){return t==="stop"?e.filter(o=>o.type==="text"&&o.text).map(o=>o.text).join(`
2
- `).replace(/https?:\/\/[^\s)>\]]+/g,"").includes("?")?"requires_action":"completed":t==="tool-calls"?e.some(n=>n.type==="tool-user_ask"&&n.state==="input-available"||n.state==="approval-requested")?"requires_action":"completed":"failed"}const Re={decopilot:{harness:"decopilot",sandbox:"agent-sandbox"},"claude-code-desktop":{harness:"claude-code",sandbox:"user-desktop"},"codex-desktop":{harness:"codex",sandbox:"user-desktop"}};function pn(t,e){if(!t)return null;const s=e?Ve(e):null;if(t==="decopilot"&&s===null)return"decopilot";for(const[n,o]of Object.entries(Re))if(o.harness===t&&o.sandbox===s)return n;return null}function hn(t){return t.claudeCode?"claude-code-desktop":t.codex?"codex-desktop":null}function mn({pendingOption:t,lockedHarness:e,availability:s}){return e==="claude-code"?"claude-code-desktop":e==="codex"?"codex-desktop":t==="claude-code-desktop"||t==="codex-desktop"?t:hn(s)}function bn(t,e){return e&&t&&Re[t].sandbox==="user-desktop"?"decopilot":t}const et={online:!1,capabilities:[],ready:!1};function ft(t){const e=Y.c(9),{org:s}=Z(),n=ut(),o=t?.fast??!1;let a;e[0]!==s.id?(a=oe.currentLink(s.id),e[0]=s.id,e[1]=a):a=e[1];let r;e[2]!==n?(r=async()=>{const y=await n.call("LINK_CURRENT_GET",{});return y?{...y,ready:!0}:{...et,ready:!0}},e[2]=n,e[3]=r):r=e[3];const l=o?1e3:1e4,p=o?2e3:15e3;let u;e[4]!==a||e[5]!==r||e[6]!==l||e[7]!==p?(u={queryKey:a,queryFn:r,staleTime:l,refetchInterval:p,refetchOnWindowFocus:!0},e[4]=a,e[5]=r,e[6]=l,e[7]=p,e[8]=u):u=e[8];const{data:m}=rt(u);return m??et}function fn(){const t=Y.c(11),e=ft(),s=It();let n;t[0]!==e.capabilities||t[1]!==e.online?(n=e.online&&e.capabilities.includes("claude-code"),t[0]=e.capabilities,t[1]=e.online,t[2]=n):n=t[2];let o;t[3]!==e.capabilities||t[4]!==e.online?(o=e.online&&e.capabilities.includes("codex"),t[3]=e.capabilities,t[4]=e.online,t[5]=o):o=t[5];let a;return t[6]!==e.online||t[7]!==s.runtime.agentSandbox||t[8]!==n||t[9]!==o?(a={agentSandbox:s.runtime.agentSandbox,userDesktop:e.online,claudeCode:n,codex:o},t[6]=e.online,t[7]=s.runtime.agentSandbox,t[8]=n,t[9]=o,t[10]=a):a=t[10],a}function gn(t){return t.thread?.harness_id!=null?{}:{harnessId:t.globals.harnessId,sandboxProviderKind:t.globals.sandboxProviderKind,branch:t.globals.branch??null}}const yn="home",vn=new Set(["output","upload","public","home"]),Sn=/^[A-Za-z0-9][A-Za-z0-9._-]*$/;function us(t){return vn.has(t)||!Sn.test(t)?"home":t}function xn(t){const e=t?t.split("/").filter(Boolean):[],s=e[0]==="public",n=s?e[1]??null:null,o=s?n?`public-${n}`:null:e[0]??null,a=(s?e.slice(2):e.slice(1)).join("/");return{segments:e,volume:o,dirPath:a,isPublic:s,publicSet:n,readOnly:s,isHomeRoot:o===yn&&a===""}}function ps(t){return t==="public"?"skills":t}function hs(t,e){return t.isPublic&&t.publicSet?`public/${t.publicSet}/${e}`:t.volume?`${t.volume}/${e}`:e}const tt="public-";function gt(t){return t.startsWith(tt)?t.slice(tt.length):null}function ms(t,e){const s=gt(t);return s?`public/${s}/${e}`:`${t}/${e}`}function kn(t){const e=t.lastIndexOf("/");return e===-1?t:t.slice(e+1)}function In(t){const{volume:e,dirPath:s}=xn(t);if(!e)return null;let n;if(e==="home")n="org/home";else if(e==="outputs")n="org/.outputs";else if(e==="uploads")n="org/.uploads";else{const o=gt(e);n=o?`org/public/${o}`:`org/${e}`}return s?`${n}/${s}`:n}function wn(t){const e=Y.c(21);let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s={from:"/shell/$org/settings/connections/$appSlug/$collectionName/$itemId",shouldThrow:!1},e[0]=s):s=e[0];const n=lt(s);let o;e[1]===Symbol.for("react.memo_cache_sentinel")?(o={strict:!1},e[1]=o):o=e[1];const a=Ne(o);let r;e[2]!==a.brand||e[3]!==a.main||e[4]!==a.preview||e[5]!==a.skill?(r=(typeof a.main=="string"?_t(a.main)?.path:void 0)??a.preview??a.skill??a.brand??null,e[2]=a.brand,e[3]=a.main,e[4]=a.preview,e[5]=a.skill,e[6]=r):r=e[6];const l=r;let p;if(e[7]!==n?.params.appSlug||e[8]!==n?.params.collectionName||e[9]!==n?.params.itemId||e[10]!==l||e[11]!==t){if(p=[],t&&p.push(`### Selected Agent
3
- - ID: ${t}`),l){let m;e[13]!==l?(m=In(l),e[13]=l,e[14]=m):m=e[14];const y=m;let I;e[15]!==l?(I=kn(l),e[15]=l,e[16]=I):I=e[16],p.push(`### Currently Open File
4
- The user has this file open in the Library and is most likely referring to it:
5
- - Name: ${I}
6
- - Library path: ${l}${y?`
7
- - Read/edit it with your file tools at: \`${y}\``:""}
8
-
9
- When a request is ambiguous about which file or resource it targets (e.g. "change the h1", "fix this", "what's in this file", "update the title"), assume it means this file unless the user clearly indicates otherwise.`)}let u;e[17]!==n?.params.appSlug||e[18]!==n?.params.collectionName||e[19]!==n?.params.itemId?(u=[],n?.params.appSlug&&u.push(`- Connection ID: ${n?.params.appSlug}`),n?.params.collectionName&&u.push(`- Collection: ${n?.params.collectionName}`),n?.params.itemId&&u.push(`- Item ID: ${n?.params.itemId}`),e[17]=n?.params.appSlug,e[18]=n?.params.collectionName,e[19]=n?.params.itemId,e[20]=u):u=e[20],u.length>0&&p.push(`### Current Resource
10
- The user is viewing the following resource:
11
- ${u.join(`
12
- `)}
13
-
14
- Help the user understand and work with this resource.`),e[7]=n?.params.appSlug,e[8]=n?.params.collectionName,e[9]=n?.params.itemId,e[10]=l,e[11]=t,e[12]=p}else p=e[12];return p.join(`
15
-
16
- `)}function Mn(){const t=Y.c(5),e=Fe(),{org:s}=Z();let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n={from:"/shell/$org/settings/connections/$appSlug/$collectionName/$itemId",shouldThrow:!1},t[0]=n):n=t[0];const o=lt(n);let a;return t[1]!==o?.params||t[2]!==s||t[3]!==e?(a=r=>{const p=r.toolCall.toolName.match(/^COLLECTION_([A-Z_]+)_(CREATE|UPDATE|DELETE)$/);if(!p||!p[1])return;const u=p[1],m=o?.params.appSlug;if(!m)return;e.invalidateQueries({queryKey:oe.collection(s.slug,m,u)});const y=u.toLowerCase().replace(/_/g," ");ce.success(`${y} updated`)},t[1]=o?.params,t[2]=s,t[3]=e,t[4]=a):a=t[4],a}function Tn(){const t=Y.c(4),{org:e,project:s}=Z(),n=`${e.id}/${s.id}`;let o;t[0]!==n?(o=me.taskLastViewed(n),t[0]=n,t[1]=o):o=t[1];const[,a]=he(o,Cn);let r;return t[2]!==a?(r={markTaskRead:p=>{a(u=>({...u,[p]:new Date().toISOString()}))}},t[2]=a,t[3]=r):r=t[3],r}function Cn(t){return t??{}}function yt(){const t=ct(),{org:e}=Z(),s=Ne({strict:!1}),n=wt({strict:!1}),o=s.virtualmcpid??jt(e.id).id,a=(p,u)=>{t({to:"/$org/$taskId",params:{org:e.slug,taskId:p},search:m=>{const y={},I=u?.virtualMcpId??m.virtualmcpid;I&&(y.virtualmcpid=I);const b=m.main;return b&&typeof b=="string"&&!Rt(b)&&(y.main=b),(m.sidepanel==="chat"||m.sidepanel===0)&&(y.sidepanel=m.sidepanel),u?.autosend&&(y.autosend=dt),y}})},r=S.useRef(crypto.randomUUID()),l=n.taskId??r.current;return{virtualMcpId:o,taskId:l,navigateToTask:a}}function An(t,e){const{mimeType:s,data:n}=t;if(s.startsWith("text/"))try{const o=new TextDecoder().decode(Uint8Array.from(atob(n),a=>a.charCodeAt(0)));return[{type:"text",text:`${e}
17
- ${o}`}]}catch(o){console.error("Failed to decode text file:",o)}return[{type:"file",url:`data:${s};base64,${n}`,filename:e,mediaType:s}]}function nt(t,e){const s=[];for(const n of t)!n||typeof n!="object"||("text"in n&&n.text?s.push({type:"text",text:`[${e}]
18
- ${n.text}`}):"blob"in n&&n.blob&&n.mimeType&&s.push({type:"file",url:`data:${n.mimeType};base64,${n.blob}`,filename:String(n.uri),mediaType:String(n.mimeType)}));return s}function Pn(t,e){const s=(t.files??[]).filter(r=>r.content?.trim()),n=t.omittedPaths??[];if(s.length===0&&n.length===0)return[];const o=s.map(r=>`<skill-file path="${r.relPath}">
19
- ${r.content.trim()}
20
- </skill-file>`).join(`
21
-
22
- `),a=n.length>0?`
23
-
24
- Other files in \`${t.sandboxPath}/\`: ${n.join(", ")}`:"";return[{type:"text",text:`[${e}]
25
- ${o}${a}`}]}function _n(t,e){const s=[];for(const n of t){if(n.role!=="user"||!n.content)continue;const o=Array.isArray(n.content)?n.content:[n.content];for(const a of o)switch(a.type){case"text":{const r=a.text?.trim();if(!r)continue;s.push({type:"text",text:`[${e}]
26
- ${r}`});break}case"image":case"audio":{if(!a.data||!a.mimeType)continue;s.push({type:"file",url:`data:${a.mimeType};base64,${a.data}`,mediaType:a.mimeType});break}case"resource":{const r=a.resource;if(!r||!r.mimeType)continue;r&&("text"in r&&r.text?s.push({type:"text",text:`[${e}]
27
- ${r.text}`}):"blob"in r&&r.blob&&r.mimeType&&s.push({type:"file",url:`data:${r.mimeType};base64,${r.blob}`,filename:String(r.uri),mediaType:String(r.mimeType)}));break}}}return s}function vt(t){if(!t)return[];const e=[];let s="";const n=o=>{if(o){if(o.type==="text"&&"text"in o&&typeof o.text=="string")s+=o.text;else if(o.type==="mention"&&o.attrs){const a=o.attrs.char??"/",r=`${a}${o.attrs.name}`;if(o.attrs.kind==="task"){const l=o.attrs.metadata,p=l?.title??o.attrs.name??"",u=l?.context?.trim()||[p,l?.description?.trim()].filter(Boolean).join(`
28
-
29
- `);u&&e.push({type:"text",text:u});return}if(s+=r,a==="@"){const l=o.attrs.metadata;l&&typeof l=="object"&&!Array.isArray(l)&&"agentId"in l?e.push({type:"text",text:`[DELEGATE TO AGENT: ${l.title??o.attrs.name} (agent_id: ${l.agentId})]
30
- Use the subtask tool to delegate this task to the agent above. Include the full relevant context from this conversation in the prompt field — the subagent has no conversation history.`}):Array.isArray(l)&&e.push(...nt(l,r))}else if(o.attrs.kind==="skill"){const l=o.attrs.metadata;l&&!Array.isArray(l)&&Array.isArray(l.files)&&e.push(...Pn(l,r))}else{const l=o.attrs.metadata||o.attrs.prompts||[];Array.isArray(l)&&l.length>0&&typeof l[0]=="object"&&l[0]!==null&&"role"in l[0]?e.push(..._n(l,r)):Array.isArray(l)&&e.push(...nt(l,r))}}else if(o.type==="file"&&o.attrs){const a=o.attrs,r=`[file:://${encodeURIComponent(a.name)}]`;s+=r,e.push(...An(a,r))}if("content"in o&&Array.isArray(o.content))for(const a of o.content)n(a)}};return n(t),s.trim()&&e.unshift({type:"text",text:s.trim()}),e}function bs(t){const e=vt(t);return e.length===0?[]:[{id:crypto.randomUUID(),role:"user",parts:e,metadata:{tiptapDoc:t}}]}function fs(t){return new Set(t.filter(e=>e.status==="queued").map(e=>e.messageId))}function Rn(t){return(t??[]).map(e=>e?.type==="text"&&typeof e.text=="string"?e.text:"").join("").trim()}function gs(t){return t.filter(e=>e.status==="queued").sort((e,s)=>e.enqueuedAt-s.enqueuedAt)}function En(t,e){return t.some(s=>s.messageId===e.messageId)?t:[...t,e]}function $n(t,e){return t.filter(s=>s.messageId!==e)}const st=new Map,We=new Set;function Dn(t){We.add(t)}function On(t){return We.has(t)}function Un(t){We.delete(t)}function Me(t){let e=st.get(t);return e||(e=new Ut([]),st.set(t,e)),e}function St(t,e){Me(t).update(s=>En(s,e))}function Le(t,e){Me(t).update(s=>$n(s,e))}function Ln(t,e){Me(t).set(e)}const Ee=new Map;function Nn(t,e){Ee.set(`${t}:${e.id}`,e)}function Fn(t,e){const s=`${t}:${e}`,n=Ee.get(s);return Ee.delete(s),n}function ot(t,e){Ee.delete(`${t}:${e}`)}async function se(t,e){try{const s=await fetch(`/api/${encodeURIComponent(t)}/decopilot/queue/${encodeURIComponent(e)}`,{credentials:"include"});if(!s.ok)return;const n=await s.json();Ln(e,n.items??[])}catch{}}function ys(t){const e=Y.c(2);let s;e[0]!==t?(s=Me(t),e[0]=t,e[1]=s):s=e[1];const n=s;return S.useSyncExternalStore(n.subscribe,n.get,n.get)}function qn(){const{org:t}=Z();return{enqueue:St,refresh:e=>se(t.slug,e),cancel:async(e,s)=>{const n=`thread-run:${e}:${s}`;Le(e,s);try{const o=await fetch(`/api/${encodeURIComponent(t.slug)}/decopilot/queue/${encodeURIComponent(e)}/cancel/${encodeURIComponent(n)}`,{method:"POST",credentials:"include"});if(!o.ok&&o.status!==404)throw new Error(`Cancel failed: ${o.status}`);return!0}catch(o){return ce.error(o instanceof Error?o.message:"Failed to cancel"),!1}finally{await se(t.slug,e)}}}}const ke={tiers:{}};function jn(){const t=Y.c(7),{org:e}=Z();let s;t[0]!==e.id?(s=oe.userModelPreferences(e.id),t[0]=e.id,t[1]=s):s=t[1];let n;t[2]!==e.slug?(n=async()=>{const a=await qt(e.slug,"USER_MODEL_PREFERENCES_GET",{});return a?.tiers?a:ke},t[2]=e.slug,t[3]=n):n=t[3];let o;return t[4]!==s||t[5]!==n?(o={queryKey:s,queryFn:n,staleTime:6e4},t[4]=s,t[5]=n,t[6]=o):o=t[6],rt(o)}function Kn(){return jn().data??ke}function vs(){const t=Y.c(19),{org:e}=Z(),s=ut(),n=Fe();let o;t[0]!==e.id?(o=oe.userModelPreferences(e.id),t[0]=e.id,t[1]=o):o=t[1];const a=o;let r;t[2]!==a||t[3]!==n||t[4]!==s?(r=async I=>{const b=n.getQueryData(a)??ke;return await s.call("USER_MODEL_PREFERENCES_UPDATE",b)??b},t[2]=a,t[3]=n,t[4]=s,t[5]=r):r=t[5];let l,p,u,m;t[6]!==a||t[7]!==n?(l=I=>{const{tier:b,slot:C}=I,K=n.getQueryData(a),F=K??ke;return n.setQueryData(a,{tiers:{...F.tiers,[b]:C}}),{prev:K}},p=(I,b,C)=>{n.setQueryData(a,C?.prev??ke)},u=I=>{n.setQueryData(a,I)},m=()=>{n.isMutating({mutationKey:a})===1&&n.invalidateQueries({queryKey:a})},t[6]=a,t[7]=n,t[8]=l,t[9]=p,t[10]=u,t[11]=m):(l=t[8],p=t[9],u=t[10],m=t[11]);let y;return t[12]!==a||t[13]!==r||t[14]!==l||t[15]!==p||t[16]!==u||t[17]!==m?(y={mutationKey:a,mutationFn:r,onMutate:l,onError:p,onSuccess:u,onSettled:m},t[12]=a,t[13]=r,t[14]=l,t[15]=p,t[16]=u,t[17]=m,t[18]=y):y=t[18],Mt(y)}function Vn(){const t=Y.c(5),e=Xt(),s=Kn(),n=s.tiers.fast??e.tiers.fast,o=s.tiers.smart??e.tiers.smart,a=s.tiers.thinking??e.tiers.thinking;let r;return t[0]!==e.tiers||t[1]!==n||t[2]!==o||t[3]!==a?(r={tiers:{...e.tiers,fast:n,smart:o,thinking:a}},t[0]=e.tiers,t[1]=n,t[2]=o,t[3]=a,t[4]=r):r=t[4],r}function re(t,e,s,n){if(!t)return null;const o=e.find(r=>r.id===t.keyId);if(!o)return null;const a=s.find(r=>r.modelId===t.modelId);return a?{...a,keyId:t.keyId}:{modelId:t.modelId,title:n??t.modelId,keyId:t.keyId,providerId:o.providerId,description:null,logo:null,capabilities:[],limits:null,costs:null}}function Hn(t){return t==="fast"||t==="smart"||t==="thinking"?t:"smart"}function Qn(t,e,s,n){if(!s||n.length===0)return null;const o=e.find(p=>p.id===s);if(!o)return null;const a=Qt([o],{[s]:n}),r=t==="fast"?a.chat.fast:t==="thinking"?a.chat.thinking:a.chat.smart;if(!r)return null;const l=n.find(p=>p.modelId===r.modelId);return l?{...l,keyId:s}:null}const at=new Set,le=new Set;function pe(t){return S.useSyncExternalStore(t.subscribe,t.get,t.get)}function Bn(t){return t.kind==="loading"?"ready":t.kind}const Wn=1e4,Gn=10,Ge=S.createContext(null),ze=S.createContext(null),Xe=S.createContext(null),xt=S.createContext(null);function zn({children:t}){const{locator:e}=Z(),{virtualMcpId:s}=yt(),[n,o]=he(me.chatSelectedImageModel(e),null),[a,r]=he(me.chatSelectedWebSearchModel(e),null),[l,p]=he(me.chatSelectedDeepResearchModel(e),null),[u,m]=S.useState(null),[y,I]=S.useState("default"),b=Vn(),[C,K]=he(me.chatSimpleModeTier(e),null),F=Hn(C),w=Bt(),A=b.tiers[F],q=u&&w.some(c=>c.id===u)?u:A?.keyId??w[0]?.id??null,{models:j,isLoading:_}=ye(q??void 0),{models:W}=ye(A?.keyId),{models:ae}=ye(b.tiers.image?.keyId),{models:D}=ye(b.tiers.web_search?.keyId),{models:V}=ye(b.tiers.deep_research?.keyId),te=re(A,w,W,A?.title)??Qn(F,w,q,j),J=_,G=j.filter(c=>c.capabilities?.includes("image")),H=re(n,w,G),ne=re(b.tiers.image,w,ae,b.tiers.image?.title)??H??G[0]??null,f=j.filter(Wt),L=re(a,w,f),z=f.find(c=>c.modelId==="perplexity/sonar")??f[0]??null,X=re(b.tiers.web_search,w,D,b.tiers.web_search?.title)??L??z,Q=j.filter(Gt),P=re(l,w,Q),B=Q.find(c=>c.modelId==="perplexity/deep-research")??Q.find(c=>c.asyncResearch===!0)??Q[0]??null,E=re(b.tiers.deep_research,w,V,b.tiers.deep_research?.title)??P??B,De=Ht(s)??{id:s,title:"",description:null,icon:null},[Te,Ce]=S.useState({}),Ae=(c,O)=>{const U=[];for(const $ of O.content??[])$.type==="text"&&$.text?.trim()&&U.push($.text.trim());const T=U.join(`
31
- `);if(!T){be(c);return}new TextEncoder().encode(T).length>Wn||Ce($=>Object.keys($).length>=Gn&&!(c in $)?$:{...$,[c]:T})},be=c=>{Ce(O=>{const{[c]:U,...T}=O;return T})},[fe,ue]=he(me.chatLastAgentOption(e),c=>c&&c in Re?c:null),ee=Zn(),Oe=ee?.isThreadLocked&&ee.lockedHarness!=null?pn(ee.lockedHarness,ee.lockedSandbox):null,Pe=ft(),Ye=fn();mn({pendingOption:fe,lockedHarness:ee?.isThreadLocked?ee.lockedHarness:null,availability:Ye});const _e=bn(fe,Pe.ready&&!Pe.online),ge=ee?.isThreadLocked?Oe:_e,d=ge?Re[ge]:null,h=d?.harness??null,N=d?.sandbox??null,[R,g]=S.useState(void 0),k=S.useRef(R);k.current=R;const v={selectedModel:te,setModel:()=>{},credentialId:q,setCredentialId:m,allModelsConnections:w,isModelsLoading:J,selectedVirtualMcp:De,imageModel:ne,setImageModel:c=>{o(c?.keyId?{keyId:c.keyId,modelId:c.modelId}:null)},webSearchModel:X,setWebSearchModel:c=>{r(c?.keyId?{keyId:c.keyId,modelId:c.modelId}:null)},deepResearchModel:E,setDeepResearchModel:c=>{p(c?.keyId?{keyId:c.keyId,modelId:c.modelId}:null)},chatMode:y,setChatMode:I,appContexts:Te,setAppContext:Ae,clearAppContext:be,tiptapDoc:R,setTiptapDoc:g,tiptapDocRef:k,resetInteraction:()=>{},simpleModeTier:F,setSimpleModeTier:c=>K(c),pendingAgentOption:ge,setPendingAgentOption:ue,pendingHarnessId:h,pendingSandboxProviderKind:N};return xe.jsx(Xe.Provider,{value:v,children:t})}function Ss(t){const e=Y.c(41),{virtualMcpId:s,task:n,children:o}=t,{locator:a}=Z(),{data:r}=Tt.useSession(),l=r?.user??null,{taskId:p,virtualMcpId:u,navigateToTask:m}=yt(),[y]=Ct(),{markTaskRead:I}=Tn(),b=Ft(),C=p,K=u,F=wn(K);let w;e[0]!==I||e[1]!==m?(w=(P,B)=>{I(P),m(P,{virtualMcpId:B?.virtualMcpId,autosend:B?.autosend})},e[0]=I,e[1]=m,e[2]=w):w=e[2];const A=w,q=C&&n?.id===C?n:null,j=q?.harness_id??null,_=q?.sandbox_provider_kind??null,W=q?.branch??null,ae=j!=null,D=W;let V;e[3]!==D||e[4]!==A||e[5]!==b||e[6]!==s?(V=()=>{const P=crypto.randomUUID();return b.create({id:P,virtual_mcp_id:s,...D?{branch:D}:{}}).then(()=>A(P)).catch(()=>{A(P)}),P},e[3]=D,e[4]=A,e[5]=b,e[6]=s,e[7]=V):V=e[7];const te=V;let J;e[8]!==D||e[9]!==a||e[10]!==A||e[11]!==b||e[12]!==s?(J=P=>{const B=crypto.randomUUID(),E=P.virtualMcpId??s,ie=E===s?D:null;Ot(sessionStorage,a,B,P.message),b.create({id:B,virtual_mcp_id:E,...ie?{branch:ie}:{}}).then(()=>A(B,{virtualMcpId:P.virtualMcpId,autosend:!0})).catch(()=>{A(B,{virtualMcpId:P.virtualMcpId,autosend:!0})})},e[8]=D,e[9]=a,e[10]=A,e[11]=b,e[12]=s,e[13]=J):J=e[13];const G=J;let H;e[14]!==C||e[15]!==b?(H=P=>{C&&b.setBranch(C,P)},e[14]=C,e[15]=b,e[16]=H):H=e[16];let ne;e[17]!==q||e[18]!==te||e[19]!==G||e[20]!==D||e[21]!==C||e[22]!==K||e[23]!==ae||e[24]!==W||e[25]!==j||e[26]!==_||e[27]!==A||e[28]!==H?(ne={virtualMcpId:K,taskId:C,openTask:A,createTask:te,createTaskWithMessage:G,activeTask:q,isThreadLocked:ae,lockedHarness:j,lockedSandbox:_,lockedBranch:W,currentBranch:D,setCurrentTaskBranch:H},e[17]=q,e[18]=te,e[19]=G,e[20]=D,e[21]=C,e[22]=K,e[23]=ae,e[24]=W,e[25]=j,e[26]=_,e[27]=A,e[28]=H,e[29]=ne):ne=e[29];const f=ne;let L;e[30]!==F||e[31]!==y||e[32]!==m||e[33]!==l?(L={user:l,contextPrompt:F,preferences:y,rawNavigateToTask:m},e[30]=F,e[31]=y,e[32]=m,e[33]=l,e[34]=L):L=e[34];const z=L;let X;e[35]!==o||e[36]!==z?(X=xe.jsx(zn,{children:xe.jsx(xt.Provider,{value:z,children:o})}),e[35]=o,e[36]=z,e[37]=X):X=e[37];let Q;return e[38]!==X||e[39]!==f?(Q=xe.jsx(ze.Provider,{value:f,children:X}),e[38]=X,e[39]=f,e[40]=Q):Q=e[40],Q}function xs({taskId:t,children:e}){const s=$e(),{virtualMcpId:n,activeTask:o,currentBranch:a}=Xn();t&&!at.has(t)&&(at.add(t),Pt("chat_opened",{thread_id:t}));const{imageModel:r,webSearchModel:l,deepResearchModel:p,chatMode:u,setChatMode:m,appContexts:y,setTiptapDoc:I,simpleModeTier:b,pendingSandboxProviderKind:C,pendingHarnessId:K}=Yn(),F=S.useContext(xt);if(!F)throw new Error(s("chat.chatContext.activeTaskProviderMissingContext"));const{user:w,contextPrompt:A,preferences:q,rawNavigateToTask:j}=F,{org:_,locator:W}=Z(),ae=qn(),[D,V]=S.useState(null),te=Mn(),J=Fe(),G=Lt(),H=ct(),ne=Kt({connectionId:Vt,orgId:_.id,orgSlug:_.slug}),f=Nt(_.slug,t,{client:ne});S.use(f.ready);const L=pe(f.messages),z=pe(f.status),X=pe(f.finishReason),Q=pe(f.runStatusStage),P=pe(f.hasMoreOlder),B=pe(f.isFetchingOlder),E=S.useRef({onToolCall:te,queryClient:J,rawNavigateToTask:j,taskId:t,manager:G,navigate:H,orgId:_.id,orgSlug:_.slug});E.current={onToolCall:te,queryClient:J,rawNavigateToTask:j,taskId:t,manager:G,navigate:H,orgId:_.id,orgSlug:_.slug},zt({orgSlug:_.slug,taskId:t,onTaskStatus:d=>{const h=E.current,N=d.data.message_id;if(d.data.status==="in_progress"&&N){Le(h.taskId,N);const R=Fn(h.taskId,N);R&&f.applyLocalMessage(R),se(h.orgSlug,h.taskId)}On(h.taskId)&&(async()=>(await se(h.orgSlug,h.taskId),await f.reconcileFromServer()&&Me(h.taskId).get().length===0&&Un(h.taskId)))()}}),S.useEffect(()=>{const d={onData:g=>{if(g.type==="data-thread-title"){const k=g.data;if(!k?.title)return;const v=E.current;if(!v.taskId)return;v.manager.patchThread({id:v.taskId,title:k.title,updated_at:new Date().toISOString()});return}if(g.type==="data-deck-updated"){const k=g.data;if(!k?.path)return;const v=k.path,c=E.current;c.queryClient.invalidateQueries({queryKey:oe.orgFsStat(c.orgId,"home",v)}),c.queryClient.invalidateQueries({queryKey:oe.orgFsRecent(c.orgId)}),c.navigate({to:".",search:O=>({...O,main:Dt(v)}),replace:!0});return}if(g.type==="data-open-preview"){const k=g.data,v=E.current,c=v.taskId;if(c){const O=v.manager.threads.get().find(U=>U.id===c);v.manager.patchThread({id:c,...k?.branch?{branch:k.branch}:{},...k?.sandboxProviderKind?{sandbox_provider_kind:k.sandboxProviderKind}:{},metadata:{...O?.metadata??{},...k?.githubRepo?{githubRepo:k.githubRepo}:{},...k?.sandboxMap?{sandboxMap:k.sandboxMap}:{}}})}v.navigate({to:".",search:O=>({...O,main:"preview"}),replace:!0});return}},onFinish:(g,k,v)=>{const c=E.current;c.taskId&&se(c.orgSlug,c.taskId),c.taskId&&c.manager.patchThread({id:c.taskId,status:un(v,g.parts),updated_at:new Date().toISOString()});const O=g.parts?.some(T=>{const $=T;return($.type==="tool-share_with_user"||$.type==="tool-bash"||$.type==="tool-write")&&$.state==="output-available"});if(c.taskId&&O){const T=oe.threadOutputs(c.taskId);for(const $ of[0,1500,3e3,6e3,12e3,25e3])setTimeout(()=>{c.queryClient.invalidateQueries({queryKey:T})},$)}c.queryClient.invalidateQueries({queryKey:oe.homeNextActions(c.orgSlug)});const U=g.metadata?.thread_id;U&&U!==c.taskId&&c.rawNavigateToTask(U)},onError:g=>{V(g),console.error("[chat] Error",g)},onToolCall:g=>E.current.onToolCall(g)};f.observer=d,se(E.current.orgSlug,E.current.taskId);const h=g=>g==="submitted"||g==="streaming";let N=h(f.status.get().kind);const R=f.status.subscribe(()=>{const g=h(f.status.get().kind);if(g===N)return;N=g;const k=E.current;se(k.orgSlug,k.taskId)});return()=>{f.observer===d&&(f.observer=null),R()}},[f]);const ie=z.kind==="submitted"||z.kind==="streaming",De=L.length===0,Te=L.at(-1),Ce=!ie&&Te?.role==="assistant"&&Te.parts.some(d=>"state"in d&&d.state==="approval-requested"),Ae=o,be=(Ae?.status==="in_progress"||Ae?.status==="expired")&&z.kind==="ready"&&L.length>0;async function fe(d){const h=t,N=n,R=Object.entries(y),g=R.length>0?R.map(([U,T])=>`### App Context: ${U}
32
- ${T}`).join(`
33
-
34
- `):"",k=[A,g].filter(Boolean).join(`
35
-
36
- `);let v=u;v==="gen-image"&&!r&&(v="default"),v==="web-search"&&!l&&(v="default"),v==="deep-research"&&!p&&(v="default"),(v==="web-search"||v==="deep-research")&&m("default");const c=gn({thread:o?{harness_id:o.harness_id??null,sandbox_provider_kind:o.sandbox_provider_kind??null,branch:o.branch??null}:null,globals:{harnessId:K??void 0,sandboxProviderKind:C??void 0,branch:a}});o?.harness_id||G.patchThread({id:h,harness_id:c.harnessId??"decopilot",updated_at:new Date().toISOString()});const O={tier:b,mode:v,toolApprovalLevel:q.toolApprovalLevel??At(),system:k||void 0,agent:{id:N},thread_id:h,...c};try{if(ie||be){let U=!0;try{Nn(h,d),await f.enqueue(d,O),St(h,{workflowId:`thread-run:${h}:${d.id}`,messageId:d.id,text:Rn(d.parts),hasAttachments:d.parts.some(T=>T.type==="file"),status:"queued",enqueuedAt:Date.now(),optimistic:!0}),Dn(h)}catch(T){U=!1,ot(h,d.id),Le(h,d.id),V(T instanceof Error?T:new Error(String(T))),ce.error(T instanceof Error?T.message:s("chat.chatContext.failedToQueueMessage"))}return se(_.slug,h),U}return await f.submit({kind:"message",message:d},O),!0}finally{le.delete(h)}}async function ue(d){const h=d.parts??vt(d.tiptapDoc);if(h.length===0||le.has(t))return;le.add(t),V(null),I(void 0);const N={tiptapDoc:d.tiptapDoc,created_at:new Date().toISOString(),user:{avatar:w?.image??void 0,name:w?.name??"you"}},R={id:crypto.randomUUID(),role:"user",parts:h,metadata:N};await fe(R)}async function ee(d,h){if(le.has(t))return ce.info(s("chat.chatContext.stillSendingPreviousMessage")),!1;if(le.add(t),!await ae.cancel(t,d))return le.delete(t),ce.error(s("chat.chatContext.couldNotRemoveOriginalMessage")),!1;ot(t,d),f.removeLocalMessage(d);const R={id:crypto.randomUUID(),role:"user",parts:[{type:"text",text:h}],metadata:{created_at:new Date().toISOString(),user:{avatar:w?.image??void 0,name:w?.name??"you"}}};try{return await fe(R)}catch(g){return ce.error(g instanceof Error?g.message:s("chat.chatContext.failedToSendEditedMessage")),!1}}const Oe=async()=>{f.stop();try{const d=await fetch(`/api/${_.slug}/decopilot/cancel/${t}`,{method:"POST",credentials:"include"});if(d.status===404)return;if(!d.ok){const h=await d.json().catch(()=>({}));throw new Error(h.message??s("chat.chatContext.cancelFailedStatus",{status:d.status}))}}catch(d){const h=d instanceof Error?d.message:s("chat.chatContext.failedToCancel");ce.error(h),console.error("[chat] cancelRun",d)}},Pe=d=>d&&typeof d=="object"&&"type"in d?ue({tiptapDoc:d}):ue(d),_e=Ne({strict:!1}).autosend===dt;S.useEffect(()=>{if(!_e||L.length>0)return;const d=Et(sessionStorage,W,t);d&&ue(d.message).then(()=>{$t(sessionStorage,W,t)})},[_e,L.length,W,t,ue]);const ge={messages:L,status:Bn(z),sendMessage:Pe,editQueuedMessage:ee,stop:()=>{Oe()},submit:(d,h)=>f.submit(d,h),removeLocalMessage:d=>f.removeLocalMessage(d),isSendInFlight:()=>le.has(t),error:D,clearError:()=>V(null),finishReason:X,runStatusStage:Q,clearFinishReason:()=>f.finishReason.set(null),isStreaming:ie,isChatEmpty:De,isWaitingForApprovals:Ce??!1,isRunInProgress:be,hasMoreOlder:P,isFetchingOlder:B,fetchOlderMessages:f.fetchOlderMessages.bind(f)};return xe.jsx(Ge.Provider,{value:ge,children:e})}function ks(){const t=$e(),e=S.useContext(Ge);if(!e)throw new Error(t("chat.chatContext.useChatStreamMissingContext"));return e}function Is(){return S.useContext(Ge)}function Xn(){const t=$e(),e=S.useContext(ze);if(!e)throw new Error(t("chat.chatContext.useChatTaskMissingContext"));return e}function Yn(){const t=$e(),e=S.useContext(Xe);if(!e)throw new Error(t("chat.chatContext.useChatPrefsMissingContext"));return e}function ws(){return S.useContext(Xe)}function Zn(){return S.useContext(ze)}export{xs as A,gt as B,zn as C,ms as D,en as E,yt as F,ws as G,yn as H,nn as S,ds as V,ks as a,Zn as b,ft as c,Xn as d,ys as e,qn as f,ot as g,fn as h,jn as i,vs as j,Vn as k,Is as l,Ss as m,fs as n,cs as o,hn as p,ls as q,vt as r,gs as s,bs as t,Yn as u,xn as v,kn as w,ps as x,us as y,hs as z};
@@ -1 +0,0 @@
1
- import{c as L,F as H,j as U}from"./index-NqSlWKeo.js";import{a as O,g as $,s as E}from"./automation-runs-CJLmWoxl.js";import{s as k,u as B}from"./use-mcp-client-wvJJ9Hzp.js";import{b as V,c as Y}from"./use-mcp-tools-Cmz-JSr4.js";import{u as q}from"./index-BXIXS7Nh.js";import{c as G}from"./monaco-editor-DGSx896C.js";import{g as F,M as K,a as D}from"./index-CYe42nAN.js";import{a as W,u as z}from"./chat-context-Bh5kq1MT.js";import{u as J}from"./shell-layout-jKzqe2YT.js";import{O as Q}from"./tab-id-CRgBfVKo.js";import"./select-DXogB_-h.js";import"./tooltip-BcdcxYvW.js";import"./Check-0n5WRv25.js";import"./ChevronDown-CGoHrjX5.js";import"./ChevronUp-jIoouGz9.js";import"./useInfiniteQuery-CsJhdvWo.js";import"./use-infinite-scroll-DubxVdoI.js";import"./use-connection-BpaC0y9_.js";import"./use-virtual-mcp-CfgJMpMO.js";import"./card-BwBZjRrY.js";import"./sidebar-BL6QRfzo.js";import"./LayoutLeft-CLrYEhVB.js";import"./use-mobile-BUlMzYS0.js";import"./X-Cs3qvsde.js";import"./table-CqhKzWtF.js";import"./empty-state-B2WvTR5T.js";import"./use-members-B0hxliEV.js";import"./use-org-auth-client-CZpW_6-_.js";import"./use-clock-tick-B3xC65Ez.js";import"./AlertCircle-DE0mjiPH.js";import"./CheckCircle-bg6wDqUV.js";import"./DotsVertical-DEPqJnUT.js";import"./agent-icon-CFTYRZ70.js";import"./Tool01-B_rP1jKd.js";import"./ArrowUp-C_9DgAm2.js";import"./Settings02-Kjl6lXer.js";import"./Tool02-Du9fr3Nt.js";import"./XCircle-8X6NoxQY.js";import"./ArrowUpRight-oB3jqICm.js";import"./TrendUp01-B3aBaGrd.js";import"./ZapSquare-BOBVT-1J.js";import"./Users03-B67MacfK.js";import"./ChevronRight-6Rye04P5.js";import"./Stars02-CWrAVcB7.js";import"./Copy01-qEs1pBUe.js";import"./CpuChip01-CmnNTJ2S.js";import"./Eye-BcQ_NcXu.js";import"./FilterLines-CZlxQkSy.js";import"./Star01-BFHufkD9.js";import"./Palette-9WcvEjNV.js";import"./SwitchHorizontal01-CUj3pS6I.js";import"./HardDrive-CmGgTtHs.js";import"./Key01-CAeu9IRG.js";import"./LinkExternal01-CadAJyYe.js";import"./LogOut01-tcWra5nB.js";import"./Monitor01-C5gSFm53.js";import"./Sun-CXzkyXLf.js";import"./Play-Cdjrcp_8.js";import"./Plus-D3nKWb6A.js";import"./SearchLg-SWGVodt2.js";import"./SearchMd-pXmBLv22.js";import"./Shield01-dAGbGMt2.js";import"./Stars01-BwY1PqO8.js";import"./Trash01-CMNjH_DW.js";import"./Upload01-gLSk7mBr.js";import"./User01-CIrKbulM.js";import"./Users01-Dj3IxaU2.js";import"./XClose-DtR7jMXw.js";import"./Zap-Bp3ZDJnx.js";import"./use-automations-Cgmm-lc3.js";import"./studio-tools-BU-Aqu_G.js";import"./useSuspenseInfiniteQuery-D1R-SSJS.js";import"./avatar-DAFzzHLj.js";import"./format-time-BnbuEtat.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-BFDwgFt_.js";import"./calendar-8VGV3Aks.js";import"./dialog-CoY4OqeZ.js";import"./hooks-DWB9Jr-e.js";import"./delay-CnY5UFtP.js";import"./backoff-CrEUbyZT.js";import"./decopilot-sse-pool-B2oCPmrV.js";import"./integration-icon-DyLOD03j.js";import"./use-navigate-to-agent-BCV3sdRc.js";import"./reusable-new-chat-CouMjkYR.js";import"./AreaChart-eCQ-t4s1.js";import"./form-BxZkLi-F.js";import"./label-C_bkFqVN.js";import"./input-B126aqDI.js";import"./spinner-CxWncV5e.js";import"./auth-DXfb7O-1.js";import"./drawer-DIPBI3Ew.js";import"./collection-search-C12nojTO.js";import"./index-LFORbuHF.js";import"./get-initials-D-f_fDFw.js";import"./popover-DrFugEcq.js";import"./dropdown-menu-C4erEwUT.js";import"./github-repo-picker-CCVoBXDN.js";import"./use-debounced-value-BuhPKj07.js";import"./authenticate-and-persist-oauth-Cuc1WyK7.js";import"./mcp-oauth-D02BMVQM.js";import"./extract-connection-data-CvsTuXe4.js";import"./metadata-dUsYcpuu.js";import"./provision-repo-scoped-github-connection-CAXumITS.js";import"./use-decopilot-events-Cp_4Zx6Y.js";import"./use-tags-Bf_YFpsk.js";import"./skeleton-DoaSwgI-.js";import"./use-organization-settings-DgXoR4sV.js";import"./command-CWWTtUxa.js";import"./index-BwSb9Tpn.js";import"./companions-core-C4Sn49zw.js";import"./tabs-D8AhZBdN.js";import"./toggle-group-DimGo8w8.js";import"./use-deco-credits-BU6owhHn.js";import"./alert-dialog-Ba_RpcbN.js";import"./toolbar-DMerAygd.js";import"./agent-capabilities-cXfbMfjV.js";import"./connection-card-CZgLIhPE.js";import"./use-registry-connections-B5i_oaIw.js";import"./retry-CErkP7V6.js";import"./connection-slug-eyAPH6o3.js";import"./textarea-ByKpF6iY.js";import"./connection-form-helpers-DEhmBIsz.js";import"./collection-tabs-Sk2pSREI.js";import"./badge-C3gtcQlV.js";import"./use-ai-providers-DylMZYNE.js";import"./select-model-I0NFV9Uk.js";import"./checkbox-kd_d5C6h.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-Dhg9xevw.js";import"./use-is-desktop-app-BNujXJc_.js";import"./question-004-sINsf4GQ.js";import"./use-status-sounds-C3_zuoo5.js";import"./deco-site-production-url-CaKZ7xBn.js";import"./use-capability-iS6a03SC.js";import"./pt-BR-CLy76QW2.js";import"./use-mcp-auth-status-e2XUmbzU.js";import"./use-debounced-autosave-DSLtyXCH.js";import"./index-BXNDg5EZ.js";import"./search-input-CF27_KpN.js";import"./switch-BuFqMzCY.js";import"./use-secrets-Bsu0Yd1k.js";import"./useQueries-Bd6QIH3C.js";import"./use-file-configs-DTgshHaV.js";import"./automation-list-row-qq59G5f4.js";import"./required-auth-layout-BVFXUSUq.js";import"./use-org-sso-DMV1Tbv9.js";const X="studio://navigate";function Z(M){const[t]=M;if(M.length!==1||t?.type!=="resource_link"||!t.uri.startsWith(X))return{isNavigate:!1};let o=null;try{o=new URL(t.uri).searchParams.get("main")}catch{}return{isNavigate:!0,tab:o&&Q.has(o)?o:null}}const tt={};function ot(M){const t=L.c(38),{client:o,resourceURI:I,tool:e,connectionId:p,orgId:a,args:v}=M,{sendMessage:C}=W(),{setAppContext:f,clearAppContext:l}=z(),{openSidePanel:g,openTab:s}=J(),i=`${p}:${e.name}`;let c;t[0]!==s?(c=x=>x==="inline"?(s("0"),"inline"):"fullscreen",t[0]=s,t[1]=c):c=t[1];const m=c,n=v??tt;let u;t[2]!==o||t[3]!==e.name||t[4]!==n?(u={client:o,toolName:e.name,toolArguments:n},t[2]=o,t[3]=e.name,t[4]=n,t[5]=u):u=t[5];const{data:r}=Y(u);let h;if(t[6]!==e._meta||t[7]!==e.name){const x=$(e._meta);h=E(e.name,x),t[6]=e._meta,t[7]=e.name,t[8]=h}else h=t[8];const A=h;let d;t[9]!==e.inputSchema?(d=e.inputSchema??{type:"object"},t[9]=e.inputSchema,t[10]=d):d=t[10];let R;t[11]!==A||t[12]!==d||t[13]!==e?(R={...e,name:A,inputSchema:d},t[11]=A,t[12]=d,t[13]=e,t[14]=R):R=t[14];const b=R;let _;t[15]!==g||t[16]!==s||t[17]!==C?(_=x=>{const j=Z(x.content);if(j.isNavigate){j.tab&&s(j.tab);return}const w=G(x.content);w.content.length>0&&(g("chat"),C({tiptapDoc:w}))},t[15]=g,t[16]=s,t[17]=C,t[18]=_):_=t[18];const y=_;let P;t[19]!==b?(P={tool:b},t[19]=b,t[20]=P):P=t[20];let N;t[21]!==f||t[22]!==i?(N=x=>f(i,x),t[21]=f,t[22]=i,t[23]=N):N=t[23];let T;t[24]!==l||t[25]!==i?(T=()=>l(i),t[24]=l,t[25]=i,t[26]=T):T=t[26];let S;return t[27]!==o||t[28]!==y||t[29]!==m||t[30]!==a||t[31]!==I||t[32]!==P||t[33]!==N||t[34]!==T||t[35]!==n||t[36]!==r?(S=U.jsx(K,{resourceURI:I,orgId:a,toolInfo:P,toolInput:n,toolResult:r,displayMode:"fullscreen",minHeight:D.fullscreen.minHeight,maxHeight:D.fullscreen.maxHeight,client:o,onMessage:y,onUpdateModelContext:N,onTeardown:T,onRequestDisplayMode:m,className:"h-full"}),t[27]=o,t[28]=y,t[29]=m,t[30]=a,t[31]=I,t[32]=P,t[33]=N,t[34]=T,t[35]=n,t[36]=r,t[37]=S):S=t[37],S}function Ve(M){const t=L.c(24),{connectionId:o,toolName:I,args:e}=M,{org:p}=H(),a=q();let v;t[0]!==o||t[1]!==a?(v=k(o)&&a.vmEntry?.sandboxProviderKind==="user-desktop"&&a.previewUrl?`${a.previewUrl.replace(/\/+$/,"")}/api/mcp`:void 0,t[0]=o,t[1]=a,t[2]=v):v=t[2];const C=v;let f;t[3]!==o||t[4]!==C||t[5]!==p.id||t[6]!==p.slug?(f={connectionId:o,orgId:p.id,orgSlug:p.slug,mcpUrl:C},t[3]=o,t[4]=C,t[5]=p.id,t[6]=p.slug,t[7]=f):f=t[7];const l=B(f);let g;t[8]!==l?(g={client:l},t[8]=l,t[9]=g):g=t[9];const{data:s}=V(g);let i,c,m;t[10]!==I||t[11]!==s.tools?(i=O(decodeURIComponent(I)),m=s.tools.find(r=>r.name===i)??s.tools.find(r=>{const h=$(r._meta);if(!h)return!1;if(E(r.name,h)===i)return!0;const d=E(i,h);return d!==i&&r.name===d}),c=m?._meta?F(m._meta):void 0,t[10]=I,t[11]=s.tools,t[12]=i,t[13]=c,t[14]=m):(i=t[12],c=t[13],m=t[14]);const n=c;if(!m||!n){let r;return t[15]!==i?(r=U.jsx("div",{className:"flex items-center justify-center h-full w-full",children:U.jsxs("p",{className:"text-sm text-muted-foreground",children:['Tool "',i,'" not found or has no UI']})}),t[15]=i,t[16]=r):r=t[16],r}let u;return t[17]!==e||t[18]!==l||t[19]!==o||t[20]!==p.id||t[21]!==n||t[22]!==m?(u=U.jsx(ot,{client:l,resourceURI:n,tool:m,connectionId:o,orgId:p.id,args:e}),t[17]=e,t[18]=l,t[19]=o,t[20]=p.id,t[21]=n,t[22]=m,t[23]=u):u=t[23],u}export{Ve as AppViewContent};
@@ -1 +0,0 @@
1
- import{c as L,b as A,j as r}from"./index-NqSlWKeo.js";import{I as O}from"./input-B126aqDI.js";import{L as F}from"./label-C_bkFqVN.js";import{S as R,a as z,b as V,c as D,d as J}from"./select-DXogB_-h.js";import{T as M}from"./textarea-ByKpF6iY.js";import{O as Q,P as Y,Q as $,I as q,T as G,Y as H}from"./index-BXIXS7Nh.js";import{s as I}from"./primitives-VF4_uC37.js";import{u as U}from"./use-autosave-CJjMYRwB.js";import"./tooltip-BcdcxYvW.js";import"./Check-0n5WRv25.js";import"./ChevronDown-CGoHrjX5.js";import"./ChevronUp-jIoouGz9.js";import"./ArrowUp-C_9DgAm2.js";import"./chat-context-Bh5kq1MT.js";import"./tab-id-CRgBfVKo.js";import"./dialog-CoY4OqeZ.js";import"./X-Cs3qvsde.js";import"./Copy01-qEs1pBUe.js";import"./hooks-DWB9Jr-e.js";import"./use-mcp-client-wvJJ9Hzp.js";import"./auth-DXfb7O-1.js";import"./delay-CnY5UFtP.js";import"./backoff-CrEUbyZT.js";import"./decopilot-sse-pool-B2oCPmrV.js";import"./studio-tools-BU-Aqu_G.js";import"./use-virtual-mcp-CfgJMpMO.js";import"./use-ai-providers-DylMZYNE.js";import"./use-decopilot-events-Cp_4Zx6Y.js";import"./use-organization-settings-DgXoR4sV.js";import"./automation-runs-CJLmWoxl.js";import"./useInfiniteQuery-CsJhdvWo.js";import"./use-infinite-scroll-DubxVdoI.js";import"./use-connection-BpaC0y9_.js";import"./card-BwBZjRrY.js";import"./sidebar-BL6QRfzo.js";import"./LayoutLeft-CLrYEhVB.js";import"./use-mobile-BUlMzYS0.js";import"./table-CqhKzWtF.js";import"./empty-state-B2WvTR5T.js";import"./use-members-B0hxliEV.js";import"./use-org-auth-client-CZpW_6-_.js";import"./use-clock-tick-B3xC65Ez.js";import"./AlertCircle-DE0mjiPH.js";import"./CheckCircle-bg6wDqUV.js";import"./DotsVertical-DEPqJnUT.js";import"./agent-icon-CFTYRZ70.js";import"./Tool01-B_rP1jKd.js";import"./Settings02-Kjl6lXer.js";import"./Tool02-Du9fr3Nt.js";import"./XCircle-8X6NoxQY.js";import"./ArrowUpRight-oB3jqICm.js";import"./TrendUp01-B3aBaGrd.js";import"./ZapSquare-BOBVT-1J.js";import"./Users03-B67MacfK.js";import"./ChevronRight-6Rye04P5.js";import"./Stars02-CWrAVcB7.js";import"./CpuChip01-CmnNTJ2S.js";import"./Eye-BcQ_NcXu.js";import"./FilterLines-CZlxQkSy.js";import"./Star01-BFHufkD9.js";import"./Palette-9WcvEjNV.js";import"./SwitchHorizontal01-CUj3pS6I.js";import"./HardDrive-CmGgTtHs.js";import"./Key01-CAeu9IRG.js";import"./LinkExternal01-CadAJyYe.js";import"./LogOut01-tcWra5nB.js";import"./Monitor01-C5gSFm53.js";import"./Sun-CXzkyXLf.js";import"./Play-Cdjrcp_8.js";import"./Plus-D3nKWb6A.js";import"./SearchLg-SWGVodt2.js";import"./SearchMd-pXmBLv22.js";import"./Shield01-dAGbGMt2.js";import"./Stars01-BwY1PqO8.js";import"./Trash01-CMNjH_DW.js";import"./Upload01-gLSk7mBr.js";import"./User01-CIrKbulM.js";import"./Users01-Dj3IxaU2.js";import"./XClose-DtR7jMXw.js";import"./Zap-Bp3ZDJnx.js";import"./use-automations-Cgmm-lc3.js";import"./useSuspenseInfiniteQuery-D1R-SSJS.js";import"./avatar-DAFzzHLj.js";import"./format-time-BnbuEtat.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-BFDwgFt_.js";import"./calendar-8VGV3Aks.js";import"./monaco-editor-DGSx896C.js";import"./spinner-CxWncV5e.js";import"./index-CYe42nAN.js";import"./shell-layout-jKzqe2YT.js";import"./use-is-desktop-app-BNujXJc_.js";import"./required-auth-layout-BVFXUSUq.js";import"./use-org-sso-DMV1Tbv9.js";import"./integration-icon-DyLOD03j.js";import"./use-navigate-to-agent-BCV3sdRc.js";import"./reusable-new-chat-CouMjkYR.js";import"./AreaChart-eCQ-t4s1.js";import"./form-BxZkLi-F.js";import"./drawer-DIPBI3Ew.js";import"./collection-search-C12nojTO.js";import"./index-LFORbuHF.js";import"./get-initials-D-f_fDFw.js";import"./popover-DrFugEcq.js";import"./dropdown-menu-C4erEwUT.js";import"./github-repo-picker-CCVoBXDN.js";import"./use-debounced-value-BuhPKj07.js";import"./authenticate-and-persist-oauth-Cuc1WyK7.js";import"./mcp-oauth-D02BMVQM.js";import"./use-mcp-tools-Cmz-JSr4.js";import"./extract-connection-data-CvsTuXe4.js";import"./metadata-dUsYcpuu.js";import"./provision-repo-scoped-github-connection-CAXumITS.js";import"./use-tags-Bf_YFpsk.js";import"./skeleton-DoaSwgI-.js";import"./command-CWWTtUxa.js";import"./index-BwSb9Tpn.js";import"./companions-core-C4Sn49zw.js";import"./tabs-D8AhZBdN.js";import"./toggle-group-DimGo8w8.js";import"./use-deco-credits-BU6owhHn.js";import"./alert-dialog-Ba_RpcbN.js";import"./toolbar-DMerAygd.js";import"./agent-capabilities-cXfbMfjV.js";import"./connection-card-CZgLIhPE.js";import"./use-registry-connections-B5i_oaIw.js";import"./retry-CErkP7V6.js";import"./connection-slug-eyAPH6o3.js";import"./connection-form-helpers-DEhmBIsz.js";import"./collection-tabs-Sk2pSREI.js";import"./badge-C3gtcQlV.js";import"./select-model-I0NFV9Uk.js";import"./checkbox-kd_d5C6h.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-Dhg9xevw.js";import"./question-004-sINsf4GQ.js";import"./use-status-sounds-C3_zuoo5.js";import"./deco-site-production-url-CaKZ7xBn.js";import"./use-capability-iS6a03SC.js";import"./pt-BR-CLy76QW2.js";import"./use-mcp-auth-status-e2XUmbzU.js";import"./use-debounced-autosave-DSLtyXCH.js";import"./index-BXNDg5EZ.js";import"./search-input-CF27_KpN.js";import"./switch-BuFqMzCY.js";import"./use-secrets-Bsu0Yd1k.js";import"./useQueries-Bd6QIH3C.js";import"./use-file-configs-DTgshHaV.js";import"./automation-list-row-qq59G5f4.js";const W={authors:[{key:"name",labelKey:"sandbox.recordEditor.fieldName",widget:"text"},{key:"type",labelKey:"sandbox.recordEditor.fieldType",widget:"select",options:[{value:"Person",labelKey:"sandbox.recordEditor.optionPerson"},{value:"Organization",labelKey:"sandbox.recordEditor.optionOrganization"}]},{key:"email",labelKey:"sandbox.recordEditor.fieldEmail",widget:"text",placeholderKey:"sandbox.recordEditor.placeholderEmail"},{key:"jobTitle",labelKey:"sandbox.recordEditor.fieldJobTitle",widget:"text"},{key:"company",labelKey:"sandbox.recordEditor.fieldCompany",widget:"text"},{key:"avatar",labelKey:"sandbox.recordEditor.fieldAvatar",widget:"image"}]},X={authors:"sandbox.recordEditor.titleAuthor"};function Dr(C){const t=L.c(40),{orgSlug:K,virtualMcpId:h,branch:w,kind:a,blockKey:g,block:P}=C,i=A(),f=Q(h);let b;t[0]!==w||t[1]!==K||t[2]!==f||t[3]!==h?(b={orgSlug:K,virtualMcpId:h,branch:w,packagePath:f},t[0]=w,t[1]=K,t[2]=f,t[3]=h,t[4]=b):b=t[4];const p=Y(b);let k;t[5]!==P||t[6]!==a?(k=$(P,a),t[5]=P,t[6]=a,t[7]=k):k=t[7];const B=k;let v;t[8]!==g||t[9]!==a||t[10]!==p?(v=l=>{p.mutate({blockKey:g,data:G(g,a,l)})},t[8]=g,t[9]=a,t[10]=p,t[11]=v):v=t[11];const[e,S]=U(B,v);let j;t[12]!==e||t[13]!==S?(j=(l,o)=>S({...e,[l]:o}),t[12]=e,t[13]=S,t[14]=j):j=t[14];const s=j,T=X[a];let n;t[15]!==i||t[16]!==T?(n=i(T),t[15]=i,t[16]=T,t[17]=n):n=t[17];let c;t[18]!==n?(c=r.jsx("span",{className:"text-sm font-medium",children:n}),t[18]=n,t[19]=c):c=t[19];let d;t[20]!==p.isError||t[21]!==p.isPending?(d=r.jsx(q,{isPending:p.isPending,isError:p.isError}),t[20]=p.isError,t[21]=p.isPending,t[22]=d):d=t[22];let y;t[23]!==c||t[24]!==d?(y=r.jsxs("div",{className:"flex h-12 shrink-0 items-center justify-between border-b px-6",children:[c,d]}),t[23]=c,t[24]=d,t[25]=y):y=t[25];const N=W[a];let x;if(t[26]!==e||t[27]!==s||t[28]!==i||t[29]!==N){let l;t[31]!==e||t[32]!==s||t[33]!==i?(l=o=>r.jsx("div",{className:"space-y-2",children:o.widget==="image"?r.jsx(H,{schema:{type:"string",format:"image-uri",title:i(o.labelKey)},value:e[o.key],onChange:m=>s(o.key,m),path:o.key,label:i(o.labelKey)}):o.widget==="select"?r.jsxs(r.Fragment,{children:[r.jsx(F,{htmlFor:o.key,children:i(o.labelKey)}),r.jsxs(R,{value:I(e[o.key])||o.options?.[0]?.value,onValueChange:m=>s(o.key,m),children:[r.jsx(z,{id:o.key,className:"h-10 w-full",children:r.jsx(V,{placeholder:i(o.labelKey)})}),r.jsx(D,{children:(o.options??[]).map(m=>r.jsx(J,{value:m.value,children:i(m.labelKey)},m.value))})]})]}):r.jsxs(r.Fragment,{children:[r.jsx(F,{htmlFor:o.key,children:i(o.labelKey)}),o.widget==="textarea"?r.jsx(M,{id:o.key,value:I(e[o.key]),onChange:m=>s(o.key,m.target.value),rows:3}):r.jsx(O,{id:o.key,value:I(e[o.key]),placeholder:o.placeholderKey?i(o.placeholderKey):void 0,onChange:m=>s(o.key,m.target.value),className:"h-10"})]})},o.key),t[31]=e,t[32]=s,t[33]=i,t[34]=l):l=t[34],x=N.map(l),t[26]=e,t[27]=s,t[28]=i,t[29]=N,t[30]=x}else x=t[30];let u;t[35]!==x?(u=r.jsx("div",{className:"min-w-0 flex-1 overflow-y-auto px-6 py-6",children:r.jsx("div",{className:"mx-auto max-w-xl space-y-6",children:x})}),t[35]=x,t[36]=u):u=t[36];let E;return t[37]!==y||t[38]!==u?(E=r.jsxs("div",{className:"flex h-full flex-col",children:[y,u]}),t[37]=y,t[38]=u,t[39]=E):E=t[39],E}export{Dr as RecordEditor};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-BHF3Gqk5.js","assets/index-NqSlWKeo.js","assets/index-DMFn6dNg.css","assets/Tool02-Du9fr3Nt.js","assets/CheckCircle-bg6wDqUV.js","assets/Settings02-Kjl6lXer.js","assets/use-mcp-client-wvJJ9Hzp.js","assets/auth-DXfb7O-1.js","assets/useInfiniteQuery-CsJhdvWo.js","assets/use-infinite-scroll-DubxVdoI.js","assets/studio-tools-BU-Aqu_G.js","assets/badge-C3gtcQlV.js","assets/input-B126aqDI.js","assets/dropdown-menu-C4erEwUT.js","assets/Check-0n5WRv25.js","assets/ChevronRight-6Rye04P5.js","assets/DotsVertical-DEPqJnUT.js","assets/table-CqhKzWtF.js","assets/toggle-group-DimGo8w8.js","assets/use-view-mode-Crr9lraw.js","assets/use-mobile-BUlMzYS0.js","assets/FilterLines-CZlxQkSy.js","assets/SearchMd-pXmBLv22.js","assets/dialog-CoY4OqeZ.js","assets/X-Cs3qvsde.js","assets/AlertCircle-DE0mjiPH.js","assets/Upload01-gLSk7mBr.js","assets/metadata-dUsYcpuu.js","assets/alert-dialog-Ba_RpcbN.js","assets/card-BwBZjRrY.js","assets/Trash01-CMNjH_DW.js","assets/label-C_bkFqVN.js","assets/select-DXogB_-h.js","assets/tooltip-BcdcxYvW.js","assets/ChevronDown-CGoHrjX5.js","assets/ChevronUp-jIoouGz9.js","assets/switch-BuFqMzCY.js","assets/textarea-ByKpF6iY.js","assets/XCircle-8X6NoxQY.js","assets/checkbox-kd_d5C6h.js","assets/Eye-BcQ_NcXu.js","assets/LinkExternal01-CadAJyYe.js","assets/use-copy-BFDwgFt_.js","assets/Copy01-qEs1pBUe.js","assets/Key01-CAeu9IRG.js","assets/Plus-D3nKWb6A.js","assets/mcp-oauth-D02BMVQM.js","assets/Play-Cdjrcp_8.js"])))=>i.map(i=>d[i]);
2
- import{c as i,j as e,r as s,k as a,aF as o}from"./index-NqSlWKeo.js";import{R as m}from"./require-capability-BAwNnbYl.js";import"./use-capability-iS6a03SC.js";import"./access-gate-D9Dnosst.js";import"./capability-load-error-BFpTi9Lb.js";const n=s.lazy(()=>o(()=>import("./registry-layout-BHF3Gqk5.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47])));function f(){const r=i.c(1);let t;return r[0]===Symbol.for("react.memo_cache_sentinel")?(t=e.jsx(m,{capability:"registry:manage",area:"the registry",children:e.jsx(s.Suspense,{fallback:e.jsx("div",{className:"flex-1 flex items-center justify-center",children:e.jsx(a,{size:20,className:"animate-spin text-muted-foreground"})}),children:e.jsx(n,{})})}),r[0]=t):t=r[0],t}export{f as default};
@@ -1 +0,0 @@
1
- import{b as re,r as $,F as Be,K as me,n as Fe,j as s,m as W,k as je,B as ce,c as J,X as Xe,a2 as Ue,Y as ae,a4 as Je,a5 as et,o as rt,_ as Ot,Z as jt,e as at,t as ve,p as Ke,y as ct,z as vt,E as Mt,d as Dt,u as yt}from"./index-NqSlWKeo.js";import{u as Pt}from"./use-organization-roles-D3Lrzy1p.js";import{u as $e}from"./use-org-auth-client-CZpW_6-_.js";import{g as dt,a as Lt}from"./role-color-Dn2tXDDF.js";import{B as Me}from"./badge-C3gtcQlV.js";import{A as mt,a as ut,c as ft,d as gt,b as ht,f as xt,g as pt,e as Tt}from"./alert-dialog-Ba_RpcbN.js";import{c as wt,D as Gt,b as kt,a as Ut}from"./dropdown-menu-C4erEwUT.js";import{a as Bt}from"./DotsVertical-DEPqJnUT.js";import{s as ze}from"./Plus-D3nKWb6A.js";import{s as Vt}from"./Trash01-CMNjH_DW.js";import{C as Yt}from"./collection-table-wrapper-CsH48uAl.js";import{P as ie}from"./index-BXNDg5EZ.js";import{E as tt}from"./empty-state-B2WvTR5T.js";import{S as Qe}from"./search-input-CF27_KpN.js";import{P as Et,D as It}from"./ai-providers-logos-DD3qZ33J.js";import{I as Ze}from"./integration-icon-DyLOD03j.js";import{u as zt}from"./use-infinite-scroll-DubxVdoI.js";import{C as He}from"./checkbox-kd_d5C6h.js";import{b as Ft}from"./Settings02-Kjl6lXer.js";import{u as Kt}from"./useSuspenseInfiniteQuery-D1R-SSJS.js";import{u as $t,S as Qt}from"./use-mcp-client-wvJJ9Hzp.js";import{C as Zt}from"./collection-search-C12nojTO.js";import{p as Ht}from"./connection-Dzd-hklf.js";import{u as _t}from"./use-members-B0hxliEV.js";import{g as Rt}from"./get-initials-D-f_fDFw.js";import{u as qt}from"./use-connection-BpaC0y9_.js";import{u as Wt,e as Xt}from"./use-ai-providers-DylMZYNE.js";import{A as St}from"./avatar-DAFzzHLj.js";import{S as De}from"./switch-BuFqMzCY.js";import{b as ye,c as Pe,T as Le,a as we}from"./tooltip-BcdcxYvW.js";import{S as st,a as lt,b as ot}from"./settings-section-Dhg9xevw.js";import{t as Jt}from"./ChevronDown-CGoHrjX5.js";import{i as es}from"./ChevronRight-6Rye04P5.js";import{i as nt}from"./X-Cs3qvsde.js";import{a as ts}from"./use-capability-iS6a03SC.js";import{A as ss}from"./access-gate-D9Dnosst.js";import"./Check-0n5WRv25.js";import"./table-CqhKzWtF.js";import"./ArrowUp-C_9DgAm2.js";import"./sidebar-BL6QRfzo.js";import"./LayoutLeft-CLrYEhVB.js";import"./use-mobile-BUlMzYS0.js";import"./SearchMd-pXmBLv22.js";import"./Tool02-Du9fr3Nt.js";import"./agent-icon-CFTYRZ70.js";import"./AlertCircle-DE0mjiPH.js";import"./Tool01-B_rP1jKd.js";import"./XCircle-8X6NoxQY.js";import"./ArrowUpRight-oB3jqICm.js";import"./TrendUp01-B3aBaGrd.js";import"./ZapSquare-BOBVT-1J.js";import"./Users03-B67MacfK.js";import"./CheckCircle-bg6wDqUV.js";import"./ChevronUp-jIoouGz9.js";import"./Stars02-CWrAVcB7.js";import"./Copy01-qEs1pBUe.js";import"./CpuChip01-CmnNTJ2S.js";import"./Eye-BcQ_NcXu.js";import"./FilterLines-CZlxQkSy.js";import"./Star01-BFHufkD9.js";import"./Palette-9WcvEjNV.js";import"./SwitchHorizontal01-CUj3pS6I.js";import"./HardDrive-CmGgTtHs.js";import"./Key01-CAeu9IRG.js";import"./LinkExternal01-CadAJyYe.js";import"./LogOut01-tcWra5nB.js";import"./Monitor01-C5gSFm53.js";import"./Sun-CXzkyXLf.js";import"./Play-Cdjrcp_8.js";import"./SearchLg-SWGVodt2.js";import"./Shield01-dAGbGMt2.js";import"./Stars01-BwY1PqO8.js";import"./Upload01-gLSk7mBr.js";import"./User01-CIrKbulM.js";import"./Users01-Dj3IxaU2.js";import"./XClose-DtR7jMXw.js";import"./Zap-Bp3ZDJnx.js";import"./auth-DXfb7O-1.js";import"./studio-tools-BU-Aqu_G.js";import"./card-BwBZjRrY.js";import"./capability-load-error-BFpTi9Lb.js";const qe="basic-usage",We=[{id:qe,label:"Basic Usage",description:"Tools all org members can access by default",section:"Basic Usage",tools:["COLLECTION_CONNECTIONS_LIST","COLLECTION_CONNECTIONS_GET","CONNECTION_TEST","COLLECTION_VIRTUAL_MCP_LIST","COLLECTION_VIRTUAL_MCP_GET","VIRTUAL_MCP_PLUGIN_CONFIG_GET","VIRTUAL_MCP_LAST_USED_LIST","AUTOMATION_GET","AUTOMATION_LIST","AUTOMATION_RUN_STATS","AI_PROVIDERS_LIST","AI_PROVIDERS_LIST_MODELS","AI_PROVIDERS_ACTIVE","AI_PROVIDER_KEY_LIST","AI_PROVIDER_CREDITS","AI_PROVIDER_TOPUP_URL","LIST_OBJECTS","GET_OBJECT_METADATA","GET_PRESIGNED_URL","PUT_PRESIGNED_URL","FILE_OBJECTS_LIST","SANDBOX_START","SANDBOX_DELETE","GLOBAL_SEARCH","ORGANIZATION_SETTINGS_GET","USER_GET","LINK_CURRENT_GET","LINK_DISCONNECT","BRAND_CONTEXT_LIST","COLLECTION_THREADS_CREATE","COLLECTION_THREADS_LIST","COLLECTION_THREADS_GET","COLLECTION_THREADS_UPDATE","COLLECTION_THREADS_DELETE","COLLECTION_THREAD_MESSAGES_LIST","THREAD_BACKGROUND_TOOL_START","THREAD_SUBTASK_DELIVER","TASK_BOARD_ITEM_CREATE","TASK_BOARD_ITEM_LIST","TASK_BOARD_ITEM_UPDATE","TASK_BOARD_ITEM_DELETE","TASK_BOARD_ITEM_PRS_GET","TASK_BOARD_REVIEW_DECISION","TASK_BOARD_PROMOTE_TO_PRODUCTION","TASK_BOARD_ACTIVITY_LIST"]},{id:"org:manage",label:"Manage organization",description:"Edit organization settings, brand context, and domain configuration",section:"Organization",tools:["ORGANIZATION_GET","ORGANIZATION_LIST","ORGANIZATION_UPDATE","ORGANIZATION_SETTINGS_GET","ORGANIZATION_SETTINGS_UPDATE","BRAND_CONTEXT_LIST","BRAND_CONTEXT_GET","BRAND_CONTEXT_CREATE","BRAND_CONTEXT_UPDATE","BRAND_CONTEXT_DELETE","BRAND_CONTEXT_EXTRACT","BRAND_GET","BRAND_LIST","ORGANIZATION_DOMAIN_LIST","ORGANIZATION_DOMAIN_ADD","ORGANIZATION_DOMAIN_UPDATE","ORGANIZATION_DOMAIN_VERIFY","ORGANIZATION_DOMAIN_REMOVE"]},{id:"members:manage",label:"Manage members",description:"Invite members, remove them, and change their roles",section:"Organization",tools:["ORGANIZATION_MEMBER_LIST","ORGANIZATION_MEMBER_ADD","ORGANIZATION_MEMBER_REMOVE","ORGANIZATION_MEMBER_UPDATE_ROLE","ORGANIZATION_SEATS_GET","ORGANIZATION_SEATS_SET","ORGANIZATION_BILLING_CHECKOUT_START","ORGANIZATION_SEATS_PREVIEW","ORGANIZATION_BILLING_PORTAL","ORGANIZATION_INCLUDED_REPORT_SET","ORGANIZATION_REPORT_RUN_PAID","ORGANIZATION_JOIN_REQUEST_LIST","ORGANIZATION_JOIN_REQUEST_APPROVE","ORGANIZATION_JOIN_REQUEST_DENY"],dangerous:!0},{id:"connections:manage",label:"Manage connections",description:"Create, update, and delete connections",section:"Connections & Agents",tools:["COLLECTION_CONNECTIONS_CREATE","COLLECTION_CONNECTIONS_UPDATE","COLLECTION_CONNECTIONS_DELETE","COMMERCE_DISCOVERY_SETUP","COMMERCE_DISCOVERY_RUN","COMMERCE_DISCOVERY_BIND","COMMERCE_DISCOVERY_CONNECTION_STATUS"],dangerous:!0},{id:"agents:manage",label:"Manage agents",description:"Create, configure, and delete agents",section:"Connections & Agents",tools:["COLLECTION_VIRTUAL_MCP_CREATE","COLLECTION_VIRTUAL_MCP_UPDATE","COLLECTION_VIRTUAL_MCP_DELETE","VIRTUAL_MCP_PLUGIN_CONFIG_UPDATE","VIRTUAL_MCP_PINNED_VIEWS_UPDATE"],dangerous:!0},{id:"automations:manage",label:"Manage automations",description:"Create, update, run, and delete automations",section:"Automations",tools:["AUTOMATION_CREATE","AUTOMATION_UPDATE","AUTOMATION_DELETE","AUTOMATION_TRIGGER_ADD","AUTOMATION_TRIGGER_REMOVE","AUTOMATION_TRIGGER_ROTATE_TOKEN","AUTOMATION_RUN"],dangerous:!0},{id:"monitoring:view",label:"View monitoring",description:"Access logs and usage statistics",section:"Monitoring",tools:["MONITORING_LOG_GET","MONITORING_LOGS_LIST","MONITORING_STATS","MONITORING_THREAD_USAGE"]},{id:"secrets:manage",label:"Manage secrets",description:"Create and list secrets stored in the credential vault",section:"Organization",tools:["SECRET_CREATE","SECRET_LIST"]},{id:"file-configs:manage",label:"Manage file configs",description:"Create, list, update and delete S3 bucket configurations",section:"Organization",tools:["FILE_CONFIG_CREATE","FILE_CONFIG_LIST","FILE_CONFIG_UPDATE","FILE_CONFIG_DELETE","FILE_OBJECTS_LIST"]},{id:"ai-providers:manage",label:"Manage AI providers",description:"Add or remove API keys and provision provider credentials",section:"AI Providers",tools:["AI_PROVIDER_KEY_CREATE","AI_PROVIDER_KEY_LIST","AI_PROVIDER_KEY_DELETE","AI_PROVIDER_KEY_UPDATE","AI_PROVIDER_KEY_PREVIEW","AI_PROVIDER_OAUTH_URL","AI_PROVIDER_OAUTH_EXCHANGE","AI_PROVIDER_PROVISION_KEY","AI_PROVIDER_TOPUP_URL","AI_PROVIDER_CREDITS"]},{id:"tags:manage",label:"Manage tags",description:"Create, assign, and delete organization tags",section:"Organization",tools:["TAGS_LIST","TAGS_CREATE","TAGS_DELETE","MEMBER_TAGS_GET","MEMBER_TAGS_SET"]},{id:"registry:manage",label:"Manage registry",description:"Browse, publish, and manage items in the registry",section:"Store & Registry",tools:["COLLECTION_REGISTRY_APP_LIST","COLLECTION_REGISTRY_APP_GET","COLLECTION_REGISTRY_APP_VERSIONS","COLLECTION_REGISTRY_APP_FILTERS","REGISTRY_ITEM_LIST","REGISTRY_ITEM_SEARCH","REGISTRY_ITEM_GET","REGISTRY_ITEM_VERSIONS","REGISTRY_ITEM_FILTERS","REGISTRY_DISCOVER_TOOLS","REGISTRY_ITEM_CREATE","REGISTRY_ITEM_BULK_CREATE","REGISTRY_ITEM_UPDATE","REGISTRY_ITEM_DELETE","REGISTRY_AI_GENERATE","REGISTRY_PUBLISH_REQUEST_LIST","REGISTRY_PUBLISH_REQUEST_REVIEW","REGISTRY_PUBLISH_REQUEST_COUNT","REGISTRY_PUBLISH_REQUEST_DELETE","REGISTRY_PUBLISH_API_KEY_GENERATE","REGISTRY_PUBLISH_API_KEY_LIST","REGISTRY_PUBLISH_API_KEY_REVOKE"],dangerous:!0},{id:"registry:monitor",label:"Monitor registry health",description:"Run health checks on registry connections and view results",section:"Store & Registry",tools:["REGISTRY_MONITOR_RUN_START","REGISTRY_MONITOR_RUN_LIST","REGISTRY_MONITOR_RUN_GET","REGISTRY_MONITOR_RUN_CANCEL","REGISTRY_MONITOR_RESULT_LIST","REGISTRY_MONITOR_CONNECTION_LIST","REGISTRY_MONITOR_CONNECTION_SYNC","REGISTRY_MONITOR_CONNECTION_UPDATE_AUTH"]},{id:"api-keys:manage",label:"Manage API keys",description:"Create, update, and revoke API keys",section:"Developer",tools:["API_KEY_CREATE","API_KEY_LIST","API_KEY_UPDATE","API_KEY_DELETE"]},{id:"storage:delete",label:"Delete from storage",description:"Permanently delete files from object storage",section:"Developer",tools:["DELETE_OBJECT","DELETE_OBJECTS"],dangerous:!0},{id:"connections:sql",label:"Run SQL queries",description:"Execute raw SQL against connected databases",section:"Developer",tools:["DATABASES_RUN_SQL"],dangerous:!0}];[...We.find(t=>t.id===qe)?.tools??[]];const ls=["agents:manage","connections:manage"];new Set(We.filter(t=>ls.includes(t.id)).flatMap(t=>t.tools));function os(){const t=new Map;for(const e of We){if(e.id===qe)continue;const l=t.get(e.section)??[];l.push(e),t.set(e.section,l)}return Array.from(t.entries()).map(([e,l])=>({section:e,capabilities:l}))}function ns(t,e,l){return l?!0:t.tools.every(n=>e.includes(n))}function is(t,e,l){if(l){const i=new Set(e);for(const o of t.tools)i.add(o);return Array.from(i)}const n=new Set(e);for(const i of t.tools)n.delete(i);return Array.from(n)}function rs(t){const e=J.c(21),{connection:l,isSelected:n,hasToolsEnabled:i,activeToolsCount:o,totalToolsCount:c,onSelect:g,onToggle:h}=t,m=n?"bg-accent/50":"hover:bg-muted/50";let f;e[0]!==m?(f=W("flex items-center gap-3 p-2 rounded-lg transition-colors will-change-auto",m),e[0]=m,e[1]=f):f=e[1];let a;e[2]!==l.icon||e[3]!==l.title?(a=s.jsx(Ze,{icon:l.icon,name:l.title,size:"xs"}),e[2]=l.icon,e[3]=l.title,e[4]=a):a=e[4];let u;e[5]!==l.title?(u=s.jsx("div",{className:"flex-1 min-w-0",children:s.jsx("p",{className:"text-sm font-medium text-foreground truncate",children:l.title})}),e[5]=l.title,e[6]=u):u=e[6];let x;e[7]!==g||e[8]!==a||e[9]!==u?(x=s.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0 cursor-pointer",onClick:g,children:[a,u]}),e[7]=g,e[8]=a,e[9]=u,e[10]=x):x=e[10];let d;e[11]!==o||e[12]!==l.tools||e[13]!==i||e[14]!==h||e[15]!==c?(d=l.tools&&l.tools.length>0&&s.jsxs(s.Fragment,{children:[s.jsxs("span",{className:"text-xs text-muted-foreground shrink-0",children:[o,"/",c]}),s.jsx(He,{checked:i,onCheckedChange:h,onClick:as})]}),e[11]=o,e[12]=l.tools,e[13]=i,e[14]=h,e[15]=c,e[16]=d):d=e[16];let p;return e[17]!==f||e[18]!==x||e[19]!==d?(p=s.jsxs("div",{className:f,children:[x,d]}),e[17]=f,e[18]=x,e[19]=d,e[20]=p):p=e[20],p}function as(t){return t.stopPropagation()}function cs(t){const e=J.c(18),{connectionId:l,tool:n,isSelected:i,onToggle:o}=t,c=`tool-${l}-${n.name}`,g=i?"text-foreground":"text-muted-foreground";let h;e[0]!==g?(h=W("text-sm font-medium",g),e[0]=g,e[1]=h):h=e[1];let m;e[2]!==h||e[3]!==n.name?(m=s.jsx("div",{className:"flex items-center gap-2 mb-1",children:s.jsx("span",{className:h,children:n.name})}),e[2]=h,e[3]=n.name,e[4]=m):m=e[4];let f;e[5]!==n.description?(f=n.description&&s.jsx("p",{className:"text-xs text-muted-foreground line-clamp-2",children:n.description}),e[5]=n.description,e[6]=f):f=e[6];let a;e[7]!==m||e[8]!==f?(a=s.jsxs("div",{className:"flex-1 min-w-0",children:[m,f]}),e[7]=m,e[8]=f,e[9]=a):a=e[9];const u=`tool-${l}-${n.name}`;let x;e[10]!==i||e[11]!==o||e[12]!==u?(x=s.jsx("div",{className:"flex items-center shrink-0",children:s.jsx(He,{id:u,checked:i,onCheckedChange:o,onClick:ds})}),e[10]=i,e[11]=o,e[12]=u,e[13]=x):x=e[13];let d;return e[14]!==c||e[15]!==a||e[16]!==x?(d=s.jsxs("label",{className:"flex items-center gap-3 p-3 rounded-lg hover:bg-muted/50 cursor-pointer group will-change-auto",htmlFor:c,children:[a,x]}),e[14]=c,e[15]=a,e[16]=x,e[17]=d):d=e[17],d}function ds(t){return t.stopPropagation()}function ms({toolSet:t,onToolSetChange:e,excludeVirtualMcpId:l,searchQuery:n}){const i=re(),[o,c]=$.useState(""),g=n!==void 0?n:o,h=$.useDeferredValue(g),[m,f]=$.useState("all"),[a,u]=$.useState(!1),x=$.useRef(new Set(Object.keys(t))),{org:d}=Be(),p=$t({connectionId:Qt,orgId:d.id,orgSlug:d.slug}),C=100,R=h.trim(),_=R?{operator:"or",conditions:[{field:["title"],operator:"contains",value:R},{field:["description"],operator:"contains",value:R}]}:void 0,A=!!l,N={..._&&{where:_},orderBy:[{field:["updated_at"],direction:"asc"}],limit:C,offset:0,...A&&{include_virtual:!0}},v=JSON.stringify(N),{data:S,fetchNextPage:O,hasNextPage:M,isFetchingNextPage:E}=Kt({queryKey:me.collectionListInfinite(p,d.id,"","CONNECTIONS",v),queryFn:async({pageParam:T=0})=>(await p.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{..._&&{where:_},orderBy:[{field:["updated_at"],direction:"asc"}],limit:C,offset:T,...A&&{include_virtual:!0}}})).structuredContent,initialPageParam:0,getNextPageParam:(T,G)=>{if(T?.hasMore)return G.reduce((Q,q)=>Q+(q?.items?.length??0),0)},staleTime:3e4}),b=S?.pages.flatMap(T=>T?.items??[])??[],D=zt(O,M??!1,E),r=l?b.filter(T=>T.connection_type!=="VIRTUAL"?!0:Ht(T.connection_url)!==l):b,I=x.current,k=[...I.values()].map(T=>r.find(G=>G.id===T)).filter(T=>T!==void 0),w=r.filter(T=>!I.has(T.id)),Y=[...k,...w],y=T=>{const G=t[T];return G!==void 0&&G.length>0},z=Y.filter(T=>{if(m==="all")return!0;const G=y(T.id);return m==="selected"?G:m==="unselected"?!G:!0}),[P,F]=$.useState(Y[0]?.id??null),V=P?Y.find(T=>T.id===P)??null:null,{data:U,isFetching:B}=Fe({queryKey:me.collectionItem(p,d.id,"","CONNECTIONS",P??""),queryFn:async()=>P?(await p.callTool({name:"COLLECTION_CONNECTIONS_GET",arguments:{id:P}})).structuredContent?.item??null:null,enabled:!!P,staleTime:3e4}),Z=U?.tools??[],X=(T,G)=>t[T]?.includes(G)??!1,te=(T,G)=>{const Q=t[T]??[],q=Q.includes(G),ne={...t};if(q){const se=Q.filter(oe=>oe!==G);se.length===0?delete ne[T]:ne[T]=se}else ne[T]=[...Q,G];e(ne)},le=T=>{const G=T===P?Z:[];if(!G.length)return;const Q=t[T]??[],q=G.map(oe=>oe.name),ne=Q.length>0&&q.every(oe=>Q.includes(oe)),se={...t};ne?delete se[T]:(se[T]=q,F(T)),e(se)},K=T=>{F(T),u(!0)},H=()=>{u(!1)};return s.jsxs("div",{className:"flex h-full",children:[s.jsxs("div",{className:W("w-full md:w-80 border-r border-border flex flex-col",a&&"hidden md:flex"),children:[n===void 0&&s.jsx(Zt,{value:o,onChange:c,placeholder:i("common.toolSetSelector.searchPlaceholder")}),s.jsxs("div",{className:"flex gap-1 p-2 border-b border-border",children:[s.jsx("button",{onClick:()=>f("all"),className:W("flex-1 px-3 py-1.5 text-xs font-medium rounded-md transition-colors border cursor-pointer",m==="all"?"bg-muted border-border":"border-border opacity-75 hover:opacity-100"),children:i("common.toolSetSelector.filterAll")}),s.jsx("button",{onClick:()=>f("selected"),className:W("flex-1 px-3 py-1.5 text-xs font-medium rounded-md transition-colors border cursor-pointer",m==="selected"?"bg-muted border-border":"border-border opacity-75 hover:opacity-100"),children:i("common.toolSetSelector.filterSelected")}),s.jsx("button",{onClick:()=>f("unselected"),className:W("flex-1 px-3 py-1.5 text-xs font-medium rounded-md transition-colors border cursor-pointer",m==="unselected"?"bg-muted border-border":"border-border opacity-75 hover:opacity-100"),children:i("common.toolSetSelector.filterUnselected")})]}),s.jsx("div",{className:"flex-1 overflow-auto",children:z.length===0?s.jsx("div",{className:"p-4 text-sm text-muted-foreground text-center",children:i(g?"common.toolSetSelector.noConnectionsFound":m==="selected"?"common.toolSetSelector.noServersSelected":m==="unselected"?"common.toolSetSelector.noUnselectedServers":"common.toolSetSelector.noConnectionsAvailable")}):s.jsxs("div",{className:"p-2 space-y-1",children:[z.map(T=>{const G=P===T.id,Q=G?Z.length:0,q=t[T.id]?.length??0;return s.jsx(rs,{connection:{...T,tools:G?Z:T.tools},isSelected:G,hasToolsEnabled:y(T.id),activeToolsCount:q,totalToolsCount:Q,onSelect:()=>K(T.id),onToggle:()=>le(T.id)},T.id)}),s.jsx("div",{ref:D,className:"h-4"}),E&&s.jsx("div",{className:"flex justify-center py-3",children:s.jsx(je,{size:18,className:"animate-spin text-muted-foreground"})})]})})]}),s.jsx("div",{className:W("flex-1 flex-col",a?"flex":"hidden md:flex"),children:V?s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"md:hidden border-b border-border p-4 flex items-center gap-3",children:[s.jsx(ce,{variant:"ghost",size:"sm",onClick:H,className:"h-8 w-8 p-0 shrink-0",children:s.jsx(Ft,{size:20})}),s.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:[s.jsx(Ze,{icon:V.icon,name:V.title,size:"sm"}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:V.title}),V.description&&s.jsx("p",{className:"text-sm text-muted-foreground truncate",children:V.description})]})]})]}),s.jsx("div",{className:"flex-1 overflow-auto p-4",children:B?s.jsx("div",{className:"flex justify-center py-8",children:s.jsx(je,{size:18,className:"animate-spin text-muted-foreground"})}):Z.length===0?s.jsx("div",{className:"text-sm text-muted-foreground text-center py-8",children:i("common.toolSetSelector.noToolsAvailable")}):s.jsx("div",{className:"space-y-2",children:Z.map(T=>s.jsx(cs,{connectionId:V.id,tool:T,isSelected:X(V.id,T.name),onToggle:()=>te(V.id,T.name)},T.name))})})]}):s.jsx("div",{className:"flex-1 flex items-center justify-center",children:s.jsx("div",{className:"text-sm text-muted-foreground text-center",children:i("common.toolSetSelector.selectConnection")})})})]})}const us=Xe({role:Xe({id:ae().optional(),slug:ae().optional(),label:ae()}),allowAllStaticPermissions:et(),staticPermissions:Ue(ae()),toolSet:Je(ae(),Ue(ae())),allowAllModels:et(),modelSet:Je(ae(),Ue(ae())),memberIds:Ue(ae())});function it(t,e,l,n){const i=s.jsx(De,{checked:e,disabled:l,onCheckedChange:n});return l?s.jsx(ye,{children:s.jsxs(Pe,{children:[s.jsx(Le,{asChild:!0,children:s.jsx("div",{children:i})}),s.jsx(we,{children:s.jsx("p",{children:t("settings.orgRoleDetail.builtinRolePermissionsCannotBeChanged")})})]})}):i}function fs(t){const e=J.c(41),{allowAllStaticPermissions:l,staticPermissions:n,onAllowAllChange:i,onPermissionsChange:o,readOnly:c,searchQuery:g}=t,h=c===void 0?!1:c,m=re();let f;e[0]!==g?(f=g.trim().toLowerCase(),e[0]=g,e[1]=f):f=e[1];const a=$.useDeferredValue(f);let u;if(e[2]!==l||e[3]!==a||e[4]!==i||e[5]!==o||e[6]!==h||e[7]!==g||e[8]!==n||e[9]!==m){const x=os(),d=(E,b)=>{if(!h){if(l&&b){const D=x.flatMap(xs).flatMap(hs);i(!1),o(D.filter(r=>!E.tools.includes(r)));return}l||o(is(E,n,!b))}};let p;e[11]!==a?(p=E=>{const{section:b,capabilities:D}=E;return{section:b,capabilities:D.filter(r=>!a||r.label.toLowerCase().includes(a)||r.description.toLowerCase().includes(a))}},e[11]=a,e[12]=p):p=e[12];const C=x.map(p).filter(gs);let R;e[13]!==m?(R=m("settings.orgRoleDetail.general"),e[13]=m,e[14]=R):R=e[14];let _;e[15]!==m?(_=m("settings.orgRoleDetail.allOrgPermissions"),e[15]=m,e[16]=_):_=e[16];let A;e[17]!==m?(A=m("settings.orgRoleDetail.grantFullAccessToAllFeaturesBelow"),e[17]=m,e[18]=A):A=e[18];let N;e[19]!==l||e[20]!==i||e[21]!==o?(N=()=>{i(!l),o([])},e[19]=l,e[20]=i,e[21]=o,e[22]=N):N=e[22];let v;e[23]!==l||e[24]!==h||e[25]!==m||e[26]!==N?(v=it(m,l,h,N),e[23]=l,e[24]=h,e[25]=m,e[26]=N,e[27]=v):v=e[27];let S;e[28]!==l||e[29]!==i||e[30]!==o||e[31]!==h?(S=h?void 0:()=>{i(!l),o([])},e[28]=l,e[29]=i,e[30]=o,e[31]=h,e[32]=S):S=e[32];let O;e[33]!==S||e[34]!==_||e[35]!==A||e[36]!==v?(O=s.jsx(lt,{children:s.jsx(ot,{title:_,description:A,action:v,onClick:S})}),e[33]=S,e[34]=_,e[35]=A,e[36]=v,e[37]=O):O=e[37];let M;e[38]!==O||e[39]!==R?(M=s.jsx(st,{title:R,children:O}),e[38]=O,e[39]=R,e[40]=M):M=e[40],u=s.jsx("div",{children:s.jsxs("div",{className:"flex flex-col gap-10 py-4",children:[M,C.length===0&&a?s.jsx("p",{className:"text-sm text-muted-foreground py-4",children:m("settings.orgRoleDetail.noPermissionsMatch",{searchQuery:g})}):C.map(E=>{const{section:b,capabilities:D}=E;return s.jsx(st,{title:b,children:s.jsx(lt,{children:D.map(r=>{const I=ns(r,n,l);return s.jsx(ot,{title:s.jsxs("span",{className:"flex items-center gap-1.5",children:[r.label,r.dangerous&&s.jsx(vt,{size:12,className:"text-warning shrink-0"})]}),description:r.description,action:it(m,I,h,()=>d(r,I)),onClick:h?void 0:()=>d(r,I)},r.id)})})},b)})]})}),e[2]=l,e[3]=a,e[4]=i,e[5]=o,e[6]=h,e[7]=g,e[8]=n,e[9]=m,e[10]=u}else u=e[10];return u}function gs(t){return t.capabilities.length>0}function hs(t){return t.tools}function xs(t){return t.capabilities}const Nt={anthropic:"Anthropic",openrouter:"OpenRouter"},ps={openai:"OpenAI",anthropic:"Anthropic",google:"Google","meta-llama":"Meta",mistralai:"Mistral","x-ai":"xAI",deepseek:"DeepSeek",qwen:"Qwen",moonshotai:"MoonshotAI",nvidia:"NVIDIA",perplexity:"Perplexity",cohere:"Cohere",amazon:"Amazon",microsoft:"Microsoft","z-ai":"Z.ai","ibm-granite":"IBM Granite",alibaba:"Alibaba",baidu:"Baidu",bytedance:"ByteDance",tencent:"Tencent",minimax:"MiniMax",nousresearch:"Nous Research",allenai:"Allen AI",inception:"Inception"};function Ts(t,e){const l=t.indexOf("/"),n=l>0?t.slice(0,l):e;return n.startsWith("~")?n.slice(1):n}function Es(t){return ps[t]??Nt[t]??t}function Is(t){const e=t.indexOf(": ");return e>0&&e<32?t.slice(e+2):t}const bt=30;function _s(t){const e=J.c(40),{connectionId:l,subProviderId:n,subProviderName:i,groupLogo:o,models:c,allConnectionModelIds:g,selectedModels:h,allowAllModels:m,allConnectionModelsSelected:f,onToggleModel:a,onExitAllowAll:u,readOnly:x,defaultExpanded:d}=t,p=re(),[C,R]=$.useState(d),_=d||C,A=R,[N,v]=$.useState(bt);let S;e[0]!==f||e[1]!==m||e[2]!==h?(S=E=>m||f||h.includes("*")||h.includes(E),e[0]=f,e[1]=m,e[2]=h,e[3]=S):S=e[3];const O=S;let M;if(e[4]!==g||e[5]!==m||e[6]!==l||e[7]!==_||e[8]!==o||e[9]!==O||e[10]!==c||e[11]!==u||e[12]!==a||e[13]!==x||e[14]!==n||e[15]!==i||e[16]!==p||e[17]!==N){let E;e[19]!==O?(E=B=>O(B.id),e[19]=O,e[20]=E):E=e[20];const b=c.filter(E).length,D=c.slice(0,N),r=c.length>N;let I;e[21]===Symbol.for("react.memo_cache_sentinel")?(I=()=>A(bs),e[21]=I):I=e[21];const k=o??Et[n]??It;let w;e[22]!==i||e[23]!==k?(w=s.jsx(Ze,{icon:k,name:i,size:"sm"}),e[22]=i,e[23]=k,e[24]=w):w=e[24];let Y;e[25]!==i?(Y=s.jsx("span",{className:"text-sm font-medium truncate",children:i}),e[25]=i,e[26]=Y):Y=e[26];let y;e[27]!==w||e[28]!==Y?(y=s.jsxs("div",{className:"flex items-center gap-3 flex-1 min-w-0",children:[w,Y]}),e[27]=w,e[28]=Y,e[29]=y):y=e[29];const z=p("settings.orgRoleDetail.enabledCount",{enabledCount:b,total:c.length});let P;e[30]!==z?(P=s.jsx(Me,{variant:"secondary",className:"text-xs text-muted-foreground",children:z}),e[30]=z,e[31]=P):P=e[31];let F;e[32]!==_?(F=_?s.jsx(Jt,{size:16,className:"text-muted-foreground shrink-0"}):s.jsx(es,{size:16,className:"text-muted-foreground shrink-0"}),e[32]=_,e[33]=F):F=e[33];let V;e[34]!==P||e[35]!==F?(V=s.jsxs("div",{className:"flex items-center gap-3 shrink-0",children:[P,F]}),e[34]=P,e[35]=F,e[36]=V):V=e[36];let U;e[37]!==V||e[38]!==y?(U=s.jsxs("div",{className:"flex items-center justify-between gap-3 px-4 py-3 hover:bg-muted/50 cursor-pointer",onClick:I,children:[y,V]}),e[37]=V,e[38]=y,e[39]=U):U=e[39],M=s.jsxs("div",{className:"border border-border rounded-lg overflow-hidden bg-card",children:[U,_&&s.jsxs("div",{className:"border-t border-border bg-muted/20",children:[D.map(B=>{const Z=O(B.id),X=()=>{if(!x){if(m){u(l,g,B.id);return}a(l,B.id)}};return s.jsxs("div",{className:W("flex items-center justify-between gap-3 px-4 py-3 border-b border-border last:border-b-0",!x&&"hover:bg-muted/50 cursor-pointer"),onClick:X,children:[s.jsx("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:s.jsx("span",{className:"text-sm truncate",children:B.title})}),s.jsx("div",{onClick:Ns,children:x?s.jsx(ye,{children:s.jsxs(Pe,{children:[s.jsx(Le,{asChild:!0,children:s.jsx("div",{children:s.jsx(De,{checked:Z,disabled:!0,onCheckedChange:Ss})})}),s.jsx(we,{children:s.jsx("p",{children:p("settings.orgRoleDetail.builtinRolePermissionsCannotBeChanged")})})]})}):s.jsx(De,{checked:Z,onCheckedChange:X})})]},B.id)}),r&&s.jsx("button",{type:"button",className:"w-full px-4 py-2 text-xs text-muted-foreground hover:text-foreground hover:bg-muted/50 transition-colors",onClick:()=>v(Rs),children:p("settings.orgRoleDetail.showMore",{remaining:c.length-N})})]})]}),e[4]=g,e[5]=m,e[6]=l,e[7]=_,e[8]=o,e[9]=O,e[10]=c,e[11]=u,e[12]=a,e[13]=x,e[14]=n,e[15]=i,e[16]=p,e[17]=N,e[18]=M}else M=e[18];return M}function Rs(t){return t+bt}function Ss(){}function Ns(t){return t.stopPropagation()}function bs(t){return!t}function Cs(t){const e=J.c(33),{connection:l,selectedModels:n,allowAllModels:i,onToggleModel:o,onExitAllowAll:c,allConnectionModelsSelected:g,searchQuery:h,readOnly:m}=t,f=Xt(l.id);let a,u,x,d,p;if(e[0]!==g||e[1]!==i||e[2]!==l.id||e[3]!==l.label||e[4]!==l.providerId||e[5]!==c||e[6]!==o||e[7]!==f||e[8]!==m||e[9]!==h||e[10]!==n){p=Symbol.for("react.early_return_sentinel");e:{let _;e[16]!==l.label?(_=I=>({...I,id:I.modelId,provider:l.label}),e[16]=l.label,e[17]=_):_=e[17];const A=f.filter(vs).map(_),N=h.trim().toLowerCase(),v=N?A.filter(I=>I.title.toLowerCase().includes(N)||I.id.toLowerCase().includes(N)||I.provider?.toLowerCase().includes(N)):A;if(v.length===0){p=null;break e}const S=new Map;for(const I of v){const k=Ts(I.id,l.providerId),w=S.get(k)??{models:[],logo:null};w.models.push({id:I.id,title:Is(I.title),logo:I.logo}),!w.logo&&I.logo&&(w.logo=I.logo),S.set(k,w)}const O=Array.from(S.entries()).map(js).sort(Os),M=O.length===1||N.length>0;x="flex flex-col gap-3";const E=Et[l.providerId]??It;let b;e[18]!==l.providerId||e[19]!==E?(b=s.jsx("img",{src:E,alt:l.providerId,className:"w-4 h-4 rounded-sm dark:bg-white dark:rounded-sm dark:p-px"}),e[18]=l.providerId,e[19]=E,e[20]=b):b=e[20];const D=Nt[l.providerId]??l.providerId;let r;e[21]!==D?(r=s.jsx("h4",{className:"text-sm font-medium",children:D}),e[21]=D,e[22]=r):r=e[22],e[23]!==r||e[24]!==b?(d=s.jsxs("div",{className:"flex items-center gap-2",children:[b,r]}),e[23]=r,e[24]=b,e[25]=d):d=e[25],a="flex flex-col gap-3",u=O.map(I=>s.jsx(_s,{connectionId:l.id,subProviderId:I.id,subProviderName:I.name,groupLogo:I.logo,models:I.models,allConnectionModelIds:A.map(As),selectedModels:n,allowAllModels:i,allConnectionModelsSelected:g,onToggleModel:o,onExitAllowAll:c,readOnly:m,defaultExpanded:M},I.id))}e[0]=g,e[1]=i,e[2]=l.id,e[3]=l.label,e[4]=l.providerId,e[5]=c,e[6]=o,e[7]=f,e[8]=m,e[9]=h,e[10]=n,e[11]=a,e[12]=u,e[13]=x,e[14]=d,e[15]=p}else a=e[11],u=e[12],x=e[13],d=e[14],p=e[15];if(p!==Symbol.for("react.early_return_sentinel"))return p;let C;e[26]!==a||e[27]!==u?(C=s.jsx("div",{className:a,children:u}),e[26]=a,e[27]=u,e[28]=C):C=e[28];let R;return e[29]!==x||e[30]!==d||e[31]!==C?(R=s.jsxs("div",{className:x,children:[d,C]}),e[29]=x,e[30]=d,e[31]=C,e[32]=R):R=e[32],R}function As(t){return t.id}function Os(t,e){return t.name.localeCompare(e.name)}function js(t){const[e,l]=t;return{id:e,name:Es(e),logo:l.logo,models:l.models}}function vs(t,e,l){return l.findIndex(n=>n.modelId===t.modelId)===e}function Ms(t){const e=J.c(41),{allowAllModels:l,modelSet:n,onAllowAllChange:i,onModelSetChange:o,readOnly:c,searchQuery:g}=t,h=c===void 0?!1:c,m=re(),f=$.useDeferredValue(g),a=Wt();let u;e[0]!==n||e[1]!==o?(u=(E,b)=>{const D=n[E]??[],r={...n};if(D.includes(b)){const I=D.filter(k=>k!==b);I.length===0?delete r[E]:r[E]=I}else r[E]=[...D,b];o(r)},e[0]=n,e[1]=o,e[2]=u):u=e[2];const x=u;let d;e[3]!==n||e[4]!==i||e[5]!==o?(d=(E,b,D)=>{i(!1),o({...n,[E]:b.filter(r=>r!==D)})},e[3]=n,e[4]=i,e[5]=o,e[6]=d):d=e[6];const p=d,C=!h&&"hover:bg-muted/50 cursor-pointer";let R;e[7]!==C?(R=W("flex items-center justify-between px-4 py-3 rounded-lg border border-border bg-card",C),e[7]=C,e[8]=R):R=e[8];let _;e[9]!==l||e[10]!==i||e[11]!==o||e[12]!==h?(_=()=>{if(h)return;const E=!l;i(E),E&&o({})},e[9]=l,e[10]=i,e[11]=o,e[12]=h,e[13]=_):_=e[13];let A;e[14]!==m?(A=m("settings.orgRoleDetail.allModels"),e[14]=m,e[15]=A):A=e[15];let N;e[16]!==A?(N=s.jsx("span",{className:"text-sm font-medium",children:A}),e[16]=A,e[17]=N):N=e[17];let v;e[18]!==l||e[19]!==i||e[20]!==o||e[21]!==h||e[22]!==m?(v=s.jsx("div",{onClick:ys,children:h?s.jsx(ye,{children:s.jsxs(Pe,{children:[s.jsx(Le,{asChild:!0,children:s.jsx("div",{children:s.jsx(De,{checked:l,disabled:!0,onCheckedChange:Ds})})}),s.jsx(we,{children:s.jsx("p",{children:m("settings.orgRoleDetail.builtinRolePermissionsCannotBeChanged")})})]})}):s.jsx(De,{checked:l,onCheckedChange:E=>{i(E),E&&o({})}})}),e[18]=l,e[19]=i,e[20]=o,e[21]=h,e[22]=m,e[23]=v):v=e[23];let S;e[24]!==R||e[25]!==_||e[26]!==N||e[27]!==v?(S=s.jsxs("div",{className:R,onClick:_,children:[N,v]}),e[24]=R,e[25]=_,e[26]=N,e[27]=v,e[28]=S):S=e[28];let O;e[29]!==a||e[30]!==l||e[31]!==f||e[32]!==p||e[33]!==n||e[34]!==h||e[35]!==m||e[36]!==x?(O=a.length===0?s.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:m("settings.orgRoleDetail.noLlmConnectionsConfigured")}):a.map(E=>s.jsx($.Suspense,{fallback:s.jsxs("div",{className:"px-4 py-3 flex items-center gap-2 text-sm text-muted-foreground",children:[s.jsx(je,{className:"size-4 animate-spin"}),m("settings.orgRoleDetail.loadingModels")]}),children:s.jsx(Cs,{connection:E,selectedModels:n[E.id]??[],allowAllModels:l,onToggleModel:x,onExitAllowAll:p,allConnectionModelsSelected:(n[E.id]??[]).includes("*"),searchQuery:f,readOnly:h})},E.id)),e[29]=a,e[30]=l,e[31]=f,e[32]=p,e[33]=n,e[34]=h,e[35]=m,e[36]=x,e[37]=O):O=e[37];let M;return e[38]!==S||e[39]!==O?(M=s.jsxs("div",{className:"flex flex-col h-full overflow-auto gap-6 pb-6",children:[S,O]}),e[38]=S,e[39]=O,e[40]=M):M=e[40],M}function Ds(){}function ys(t){return t.stopPropagation()}function Ps(t){const e=J.c(75),{open:l,onOpenChange:n,selectedMemberIds:i,onAddMembers:o}=t,c=re(),[g,h]=$.useState(""),m=$.useDeferredValue(g);let f;e[0]===Symbol.for("react.memo_cache_sentinel")?(f=[],e[0]=f):f=e[0];const[a,u]=$.useState(f),{data:x}=_t();let d,p,C,R,_,A,N,v,S,O,M;if(e[1]!==x?.data?.members||e[2]!==m||e[3]!==o||e[4]!==n||e[5]!==l||e[6]!==a||e[7]!==g||e[8]!==i||e[9]!==c){const P=x?.data?.members??[];let F;e[21]!==m?(F=K=>{const H=m.toLowerCase();return K.user?.name?.toLowerCase().includes(H)||K.user?.email?.toLowerCase().includes(H)},e[21]=m,e[22]=F):F=e[22];const V=P.filter(F);let U;e[23]!==o||e[24]!==n||e[25]!==a?(U=()=>{o(a),u([]),n(!1)},e[23]=o,e[24]=n,e[25]=a,e[26]=U):U=e[26],C=U,p=mt,O=l,M=n,d=ut,v="sm:max-w-md p-0";let B;e[27]!==c?(B=c("settings.orgRoleDetail.addMembersToRole"),e[27]=c,e[28]=B):B=e[28];let Z;e[29]!==B?(Z=s.jsx(ft,{children:B}),e[29]=B,e[30]=Z):Z=e[30];let X;e[31]!==c?(X=c("settings.orgRoleDetail.selectMembersToAddToThisRole"),e[31]=c,e[32]=X):X=e[32];let te;e[33]!==X?(te=s.jsx(gt,{children:X}),e[33]=X,e[34]=te):te=e[34],e[35]!==Z||e[36]!==te?(S=s.jsxs(ht,{className:"px-6 pt-6",children:[Z,te]}),e[35]=Z,e[36]=te,e[37]=S):S=e[37],A="flex flex-col h-80";let le;e[38]!==c?(le=c("settings.orgRoleDetail.searchMembers"),e[38]=c,e[39]=le):le=e[39],e[40]!==g||e[41]!==le?(N=s.jsx("div",{className:"border-b border-border px-4 py-3",children:s.jsx(Qe,{value:g,onChange:h,placeholder:le,className:"w-full"})}),e[40]=g,e[41]=le,e[42]=N):N=e[42],R="flex-1 overflow-auto",_=V.length===0?s.jsx("div",{className:"flex items-center justify-center h-full px-6",children:s.jsx("p",{className:"text-sm text-muted-foreground",children:c(g?"settings.orgRoleDetail.noMembersFound":"settings.orgRoleDetail.noMembersAvailable")})}):s.jsx("div",{className:"px-6 py-2 space-y-1",children:V.map(K=>{const H=K.role!=="owner",T=i.includes(K.id),G=a.includes(K.id);return s.jsxs("label",{className:W("flex items-center gap-3 p-2 rounded-lg",!H||T?"opacity-50 cursor-not-allowed":"cursor-pointer hover:bg-muted/50"),children:[s.jsx(He,{checked:G||T,onCheckedChange:()=>{!H||T||u(Q=>Q.includes(K.id)?Q.filter(q=>q!==K.id):[...Q,K.id])},disabled:!H||T}),s.jsx(St,{url:K.user?.image??void 0,fallback:Rt(K.user?.name),shape:"circle",size:"sm"}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("p",{className:"text-sm font-medium truncate",children:K.user?.name||c("settings.orgRoleDetail.unknown")}),s.jsx("p",{className:"text-xs text-muted-foreground truncate",children:K.user?.email})]}),!H&&s.jsx(Me,{variant:"secondary",className:"shrink-0",children:c("settings.orgRoleDetail.owner")}),T&&H&&s.jsx(Me,{variant:"outline",className:"shrink-0",children:c("settings.orgRoleDetail.added")})]},K.id)})}),e[1]=x?.data?.members,e[2]=m,e[3]=o,e[4]=n,e[5]=l,e[6]=a,e[7]=g,e[8]=i,e[9]=c,e[10]=d,e[11]=p,e[12]=C,e[13]=R,e[14]=_,e[15]=A,e[16]=N,e[17]=v,e[18]=S,e[19]=O,e[20]=M}else d=e[10],p=e[11],C=e[12],R=e[13],_=e[14],A=e[15],N=e[16],v=e[17],S=e[18],O=e[19],M=e[20];let E;e[43]!==R||e[44]!==_?(E=s.jsx("div",{className:R,children:_}),e[43]=R,e[44]=_,e[45]=E):E=e[45];let b;e[46]!==E||e[47]!==A||e[48]!==N?(b=s.jsxs("div",{className:A,children:[N,E]}),e[46]=E,e[47]=A,e[48]=N,e[49]=b):b=e[49];let D;e[50]!==c?(D=c("settings.orgRoleDetail.cancel"),e[50]=c,e[51]=D):D=e[51];let r;e[52]!==D?(r=s.jsx(xt,{children:D}),e[52]=D,e[53]=r):r=e[53];const I=a.length===0;let k;e[54]!==a.length||e[55]!==c?(k=c("settings.orgRoleDetail.addWithCount",{count:a.length}),e[54]=a.length,e[55]=c,e[56]=k):k=e[56];let w;e[57]!==C||e[58]!==I||e[59]!==k?(w=s.jsx(pt,{onClick:C,disabled:I,children:k}),e[57]=C,e[58]=I,e[59]=k,e[60]=w):w=e[60];let Y;e[61]!==r||e[62]!==w?(Y=s.jsxs(Tt,{className:"px-6 pb-6",children:[r,w]}),e[61]=r,e[62]=w,e[63]=Y):Y=e[63];let y;e[64]!==d||e[65]!==b||e[66]!==Y||e[67]!==v||e[68]!==S?(y=s.jsxs(d,{className:v,children:[S,b,Y]}),e[64]=d,e[65]=b,e[66]=Y,e[67]=v,e[68]=S,e[69]=y):y=e[69];let z;return e[70]!==p||e[71]!==y||e[72]!==O||e[73]!==M?(z=s.jsx(p,{open:O,onOpenChange:M,children:y}),e[70]=p,e[71]=y,e[72]=O,e[73]=M,e[74]=z):z=e[74],z}function Ls(t){const e=J.c(33),{memberIds:l,onMemberIdsChange:n,readOnly:i,readOnlyMessage:o,searchQuery:c,addMemberDialogOpen:g,onAddMemberDialogOpenChange:h}=t,m=i===void 0?!1:i,f=o===void 0?void 0:o,a=re(),u=$.useDeferredValue(c),{data:x}=_t();let d,p,C;if(e[0]!==x?.data?.members||e[1]!==u||e[2]!==l||e[3]!==n||e[4]!==m||e[5]!==f||e[6]!==c||e[7]!==a){const v=x?.data?.members??[];let S;e[11]!==l?(S=r=>l.includes(r.id),e[11]=l,e[12]=S):S=e[12];const O=v.filter(S);let M;e[13]!==u?(M=r=>{const I=u.toLowerCase();return r.user?.name?.toLowerCase().includes(I)||r.user?.email?.toLowerCase().includes(I)},e[13]=u,e[14]=M):M=e[14];const E=O.filter(M);let b;e[15]!==f||e[16]!==a?(b=f??a("settings.orgRoleDetail.ownerMembershipCannotBeChanged"),e[15]=f,e[16]=a,e[17]=b):b=e[17];const D=b;C="flex flex-col h-full",d="flex-1 overflow-auto",p=O.length===0?s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsxs("div",{className:"text-center",children:[s.jsx("h3",{className:"text-base font-medium mb-1",children:a("settings.orgRoleDetail.noMembers")}),s.jsx("p",{className:"text-sm text-muted-foreground",children:a("settings.orgRoleDetail.addMembersToGrantPermissions")})]})}):E.length===0?s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx("p",{className:"text-sm text-muted-foreground",children:a("settings.orgRoleDetail.noMembersMatch",{searchQuery:c})})}):s.jsx("div",{className:"p-4 space-y-2",children:E.map(r=>s.jsxs("div",{className:"flex items-center gap-3 p-3 rounded-lg bg-muted/30",children:[s.jsx(St,{url:r.user?.image??void 0,fallback:Rt(r.user?.name),shape:"circle",size:"sm"}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("p",{className:"text-sm font-medium truncate",children:r.user?.name||a("settings.orgRoleDetail.unknown")}),s.jsx("p",{className:"text-xs text-muted-foreground truncate",children:r.user?.email})]}),m?s.jsx(ye,{children:s.jsxs(Pe,{children:[s.jsx(Le,{asChild:!0,children:s.jsx("div",{children:s.jsx(ce,{variant:"ghost",size:"sm",disabled:!0,"aria-label":a("settings.orgRoleDetail.removeMember",{name:r.user?.name||a("settings.orgRoleDetail.unknown")}),children:s.jsx(nt,{size:16})})})}),s.jsx(we,{children:s.jsx("p",{children:D})})]})}):s.jsx(ce,{variant:"ghost",size:"sm","aria-label":a("settings.orgRoleDetail.removeMember",{name:r.user?.name||a("settings.orgRoleDetail.unknown")}),onClick:()=>n(l.filter(I=>I!==r.id)),children:s.jsx(nt,{size:16})})]},r.id))}),e[0]=x?.data?.members,e[1]=u,e[2]=l,e[3]=n,e[4]=m,e[5]=f,e[6]=c,e[7]=a,e[8]=d,e[9]=p,e[10]=C}else d=e[8],p=e[9],C=e[10];let R;e[18]!==d||e[19]!==p?(R=s.jsx("div",{className:d,children:p}),e[18]=d,e[19]=p,e[20]=R):R=e[20];let _;e[21]!==l||e[22]!==n?(_=v=>n([...l,...v]),e[21]=l,e[22]=n,e[23]=_):_=e[23];let A;e[24]!==g||e[25]!==l||e[26]!==h||e[27]!==_?(A=s.jsx(Ps,{open:g,onOpenChange:h,selectedMemberIds:l,onAddMembers:_}),e[24]=g,e[25]=l,e[26]=h,e[27]=_,e[28]=A):A=e[28];let N;return e[29]!==C||e[30]!==R||e[31]!==A?(N=s.jsxs("div",{className:C,children:[R,A]}),e[29]=C,e[30]=R,e[31]=A,e[32]=N):N=e[32],N}function ws(t){const e=J.c(3);let l;e[0]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx(je,{size:24,className:"animate-spin text-muted-foreground"})}),e[0]=l):l=e[0];let n;return e[1]!==t?(n=s.jsx($.Suspense,{fallback:l,children:s.jsx(Ls,{...t})}),e[1]=t,e[2]=n):n=e[2],n}const Gs={owner:[],admin:[],user:[]};function ks(t,e,l,n){const i=t==="owner"||t==="admin";return{role:{id:l?.id,slug:t,label:t.charAt(0).toUpperCase()+t.slice(1)},allowAllStaticPermissions:i,staticPermissions:Gs[t],toolSet:{},allowAllModels:!0,modelSet:{},memberIds:e.filter(o=>o.role===t).map(o=>o.id)}}function Us(t,e,l){const n=t.permission||{},i=n.self||[],o=i.includes("*"),c=o?[]:i.filter(a=>a!=="*"),g={};for(const[a,u]of Object.entries(n))if(!(a==="self"||a==="models"))if(a==="*")for(const x of l)g[x.id]=u.includes("*")?x.tools?.map(d=>d.name)??[]:u;else{const x=l.find(d=>d.id===a);x&&(g[a]=u.includes("*")?x.tools?.map(d=>d.name)??[]:u)}const h=n.models||[],m=h.length===0||h.includes("*:*"),f={};if(!m)for(const a of h){const u=a.indexOf(":");if(u===-1)continue;const x=a.slice(0,u),d=a.slice(u+1);f[x]||(f[x]=[]),f[x].push(d)}return{role:{id:t.id,slug:t.role,label:t.label},allowAllStaticPermissions:o,staticPermissions:c,toolSet:g,allowAllModels:m,modelSet:f,memberIds:e.filter(a=>a.role===t.role).map(a=>a.id)}}function Bs(t,e){const l={};t.allowAllStaticPermissions?l.self=["*"]:t.staticPermissions.length>0&&(l.self=t.staticPermissions);for(const[n,i]of Object.entries(t.toolSet))if(i.length>0){const c=e.find(g=>g.id===n)?.tools?.map(g=>g.name)??[];l[n]=c.length>0&&c.every(g=>i.includes(g))?["*"]:i}if(t.allowAllModels)l.models=["*:*"];else{const n=[];for(const[i,o]of Object.entries(t.modelSet))for(const c of o)n.push(`${i}:${c}`);n.length>0&&(l.models=n)}return l}function Vs(t,e,l){return t.kind==="builtin"?ks(t.role,e,void 0):t.kind==="custom"?Us(t.role,e,l):{role:{id:void 0,slug:void 0,label:""},allowAllStaticPermissions:!1,staticPermissions:[],toolSet:{},allowAllModels:!0,modelSet:{},memberIds:[]}}function Ys(t){const e=J.c(19),{readOnly:l,readOnlyMessage:n,onOpen:i}=t,o=n===void 0?void 0:n,c=re();let g;e[0]!==o||e[1]!==c?(g=o??c("settings.orgRoleDetail.ownerMembershipCannotBeChanged"),e[0]=o,e[1]=c,e[2]=g):g=e[2];const h=g;if(l){let u;e[3]===Symbol.for("react.memo_cache_sentinel")?(u=s.jsx(ze,{size:16}),e[3]=u):u=e[3];let x;e[4]!==c?(x=c("settings.orgRoleDetail.addMember"),e[4]=c,e[5]=x):x=e[5];let d;e[6]!==x?(d=s.jsx(Le,{asChild:!0,children:s.jsx("div",{children:s.jsxs(ce,{variant:"outline",size:"sm",disabled:!0,children:[u,x]})})}),e[6]=x,e[7]=d):d=e[7];let p;e[8]!==h?(p=s.jsx(we,{children:s.jsx("p",{children:h})}),e[8]=h,e[9]=p):p=e[9];let C;return e[10]!==d||e[11]!==p?(C=s.jsx(ye,{children:s.jsxs(Pe,{children:[d,p]})}),e[10]=d,e[11]=p,e[12]=C):C=e[12],C}let m;e[13]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx(ze,{size:16}),e[13]=m):m=e[13];let f;e[14]!==c?(f=c("settings.orgRoleDetail.addMember"),e[14]=c,e[15]=f):f=e[15];let a;return e[16]!==i||e[17]!==f?(a=s.jsxs(ce,{variant:"outline",size:"sm",onClick:i,children:[m,f]}),e[16]=i,e[17]=f,e[18]=a):a=e[18],a}function zs(t){const e=J.c(14),{locator:l}=Be(),n=$e(),i=qt();let o;e[0]!==l?(o=me.members(l),e[0]=l,e[1]=o):o=e[1];let c;e[2]!==n?(c=()=>n.organization.listMembers(),e[2]=n,e[3]=c):c=e[3];let g;e[4]!==o||e[5]!==c?(g={queryKey:o,queryFn:c},e[4]=o,e[5]=c,e[6]=g):g=e[6];const{data:h,isPending:m}=Fe(g);if(m||!i){let x;return e[7]===Symbol.for("react.memo_cache_sentinel")?(x=s.jsx(ie,{children:s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx(je,{size:32,className:"animate-spin text-muted-foreground"})})}),e[7]=x):x=e[7],x}let f;e[8]!==h?.data?.members?(f=h?.data?.members??[],e[8]=h?.data?.members,e[9]=f):f=e[9];const a=f;let u;return e[10]!==i||e[11]!==a||e[12]!==t?(u=s.jsx(Fs,{...t,members:a,connections:i}),e[10]=i,e[11]=a,e[12]=t,e[13]=u):u=e[13],u}function Fs({target:t,onBack:e,onSaved:l,members:n,connections:i}){const o=re(),{locator:c}=Be(),g=$e(),h=rt(),m=t.kind==="builtin",f=t.kind==="builtin"&&t.role==="owner",a=t.kind==="new",[u,x]=$.useState(m?"org":"mcp"),d=Ot({resolver:jt(us),defaultValues:Vs(t,n,i)}),p=d.formState.isValid,C=d.formState.isDirty,R=at({mutationFn:async r=>{const I=Bs(r,i),k=r.role.slug||r.role.label.toLowerCase().replace(/\s+/g,"-"),w=(r.role.slug==="owner"||r.role.slug==="admin"||r.role.slug==="user")&&!r.role.id,Y=async(y,z)=>{const P=n.filter(U=>U.role===(z??y)).map(U=>U.id),F=r.memberIds.filter(U=>!P.includes(U)),V=P.filter(U=>!r.memberIds.includes(U));for(const U of F){const B=await g.organization.updateMemberRole({memberId:U,role:[y]});if(B?.error)throw new Error(B.error.message??o("settings.orgRoleDetail.somethingWentWrong"))}for(const U of V){const B=await g.organization.updateMemberRole({memberId:U,role:["user"]});if(B?.error)throw new Error(B.error.message??o("settings.orgRoleDetail.somethingWentWrong"))}};if(w)return await Y(r.role.slug),r;if(r.role.id){const y=r.role.label.toLowerCase().replace(/\s+/g,"-"),z=r.role.slug,P=y!==z,F=await g.organization.updateRole({roleId:r.role.id,data:{permission:I,...P?{roleName:y}:{}}});if(F?.error)throw new Error(F.error.message??o("settings.orgRoleDetail.somethingWentWrong"));return await Y(P?y:z,P?z:void 0),P?{...r,role:{...r.role,slug:y}}:r}else{const y=await g.organization.createRole({role:k,permission:I});if(y?.error)throw new Error(y.error.message??o("settings.orgRoleDetail.somethingWentWrong"));for(const z of r.memberIds){const P=await g.organization.updateMemberRole({memberId:z,role:[k]});if(P?.error)throw new Error(P.error.message)}return{...r,role:{...r.role,id:y.data?.roleData?.id,slug:k}}}},onSuccess:(r,I)=>{h.invalidateQueries({queryKey:me.members(c)}),h.invalidateQueries({queryKey:me.organizationRoles(c)});const k=!I.role.id&&!I.role.slug,w=I.role.slug==="owner"&&!I.role.id;Ke(w?"role_members_updated":k?"role_created":"role_updated",{role_slug:I.role.slug??null}),ve.success(o(w?"settings.orgRoleDetail.membersUpdatedSuccessfully":k?"settings.orgRoleDetail.roleCreatedSuccessfully":"settings.orgRoleDetail.roleUpdatedSuccessfully")),d.reset(r),l(r.role.id)},onError:r=>{ve.error(r instanceof Error?r.message:o("settings.orgRoleDetail.failedToSaveRole"))}}),_=d.handleSubmit(r=>{if(!r.role.label.trim()){ve.error(o("settings.orgRoleDetail.roleNameIsRequired")),d.setFocus("role.label");return}R.mutate(r)}),A=!f,N=t.kind==="builtin"?t.role.charAt(0).toUpperCase()+t.role.slice(1):t.kind==="custom"?t.role.label:"",v=[...f?[]:[{id:"mcp",label:o("settings.orgRoleDetail.mcpPermissions")}],{id:"org",label:o("settings.orgRoleDetail.organizationPermissions")},{id:"models",label:o("settings.orgRoleDetail.models")},{id:"members",label:o("settings.orgRoleDetail.members")}],[S,O]=$.useState(""),[M,E]=$.useState(!1),b=r=>{x(r),O("")},D={mcp:o("settings.orgRoleDetail.searchMcpServers"),org:o("settings.orgRoleDetail.searchPermissions"),models:o("settings.orgRoleDetail.searchModels"),members:o("settings.orgRoleDetail.searchMembers")};return s.jsx(ie,{children:s.jsxs(ie.Content,{className:W("flex flex-col",u!=="org"&&"overflow-hidden"),children:[s.jsx("div",{className:"shrink-0 mx-auto w-full max-w-[1200px] px-4 md:px-10 pt-8 md:pt-12 pb-4",children:s.jsxs("div",{className:"flex flex-col gap-5",children:[s.jsx(ie.Title,{actions:A&&s.jsxs(s.Fragment,{children:[s.jsx(ce,{variant:"outline",size:"sm",onClick:e,disabled:R.isPending,children:o("settings.orgRoleDetail.cancel")}),s.jsx(ce,{size:"sm",onClick:_,disabled:R.isPending||!p||!C,children:R.isPending?o("settings.orgRoleDetail.saving"):o(a?"settings.orgRoleDetail.createRole":"settings.orgRoleDetail.saveChanges")})]}),children:s.jsxs("div",{className:"flex items-center gap-2.5 min-w-0",children:[s.jsx("div",{className:W("size-2.5 rounded-full shrink-0",t.kind==="builtin"?dt(t.role,!0):Lt(d.watch("role.label")))}),f&&s.jsx(ct,{size:16,className:"text-muted-foreground shrink-0"}),a||t.kind==="custom"?s.jsx("input",{...d.register("role.label"),placeholder:o("settings.orgRoleDetail.roleName"),className:"leading-tight text-foreground bg-transparent border-none outline-none px-1 -mx-1 rounded hover:bg-input/25 focus:bg-input/25 transition-colors w-64 placeholder:text-muted-foreground/50",autoFocus:a}):s.jsx("span",{className:"truncate",children:N})]})}),s.jsx("div",{className:"flex items-center gap-2",children:v.map(r=>s.jsx("button",{type:"button",onClick:()=>b(r.id),className:W("h-7 px-2 text-sm rounded-lg border border-input transition-colors inline-flex items-center",u===r.id?"bg-accent border-border text-foreground":"bg-transparent text-muted-foreground hover:border-border hover:bg-accent/50 hover:text-foreground"),children:r.label},r.id))}),s.jsxs("div",{className:"flex items-center justify-between gap-3",children:[s.jsx(Qe,{value:S,onChange:O,placeholder:D[u]??"Search...",className:"w-full md:w-[375px]"}),u==="members"&&s.jsx(Ys,{readOnly:t.kind==="builtin"&&t.role==="owner",onOpen:()=>E(!0)})]})]})}),s.jsx("div",{className:W("mx-auto w-full max-w-[1200px] px-4 md:px-10 pb-6",u!=="org"&&"flex-1 min-h-0"),children:s.jsxs("div",{className:W(u!=="org"&&"h-full overflow-hidden",u!=="models"&&u!=="org"&&"border border-border rounded-xl bg-card"),children:[u==="mcp"&&!f&&s.jsx(ms,{toolSet:d.watch("toolSet"),onToolSetChange:r=>d.setValue("toolSet",r,{shouldDirty:!0}),searchQuery:S}),u==="org"&&s.jsx(fs,{allowAllStaticPermissions:d.watch("allowAllStaticPermissions"),staticPermissions:d.watch("staticPermissions"),onAllowAllChange:r=>d.setValue("allowAllStaticPermissions",r,{shouldDirty:!0}),onPermissionsChange:r=>d.setValue("staticPermissions",r,{shouldDirty:!0}),readOnly:f,searchQuery:S}),u==="models"&&s.jsx(Ms,{allowAllModels:d.watch("allowAllModels"),modelSet:d.watch("modelSet"),onAllowAllChange:r=>d.setValue("allowAllModels",r,{shouldDirty:!0}),onModelSetChange:r=>d.setValue("modelSet",r,{shouldDirty:!0}),readOnly:f,searchQuery:S}),u==="members"&&s.jsx(ws,{memberIds:d.watch("memberIds"),onMemberIdsChange:r=>d.setValue("memberIds",r,{shouldDirty:!0}),readOnly:t.kind==="builtin"&&(t.role==="owner"||t.role==="user"),readOnlyMessage:t.kind==="builtin"&&t.role==="user"?o("settings.orgRoleDetail.userIsDefaultRoleMessage"):o("settings.orgRoleDetail.ownerMembershipCannotBeChanged"),searchQuery:S,addMemberDialogOpen:M,onAddMemberDialogOpenChange:E})]})})]})})}function Ks(t){return t.kind==="builtin"?`builtin-${t.role}`:t.kind==="custom"?`custom-${t.role.id}`:"new"}function $s(t){const e=J.c(6),{area:l,children:n}=t,{isPrivileged:i,loading:o,error:c}=ts();let g;return e[0]!==l||e[1]!==n||e[2]!==c||e[3]!==i||e[4]!==o?(g=s.jsx(ss,{granted:i,loading:o,error:c,area:l,children:n}),e[0]=l,e[1]=n,e[2]=c,e[3]=i,e[4]=o,e[5]=g):g=e[5],g}const Qs=[{role:"owner",labelKey:"settings.roles.roleOwner"},{role:"admin",labelKey:"settings.roles.roleAdmin"},{role:"user",labelKey:"settings.roles.roleUser"}];function Zs(){const t=J.c(135),e=re(),[l,n]=$.useState(""),[i,o]=$.useState(null),c=Dt();let g;t[0]===Symbol.for("react.memo_cache_sentinel")?(g={strict:!1},t[0]=g):g=t[0];const{role:h}=yt(g),{locator:m}=Be(),f=$e(),a=rt(),{customRoles:u,refetch:x}=Pt();let d;t[1]!==c?(d=j=>c({to:".",search:L=>({...L,role:j})}),t[1]=c,t[2]=d):d=t[2];const p=d;let C;e:{if(!h){C=null;break e}if(h==="new"){C={kind:"new"};break e}if(h.startsWith("builtin-")){C={kind:"builtin",role:h.slice(8)};break e}let j;t[3]!==h?(j=ee=>ee.id===h,t[3]=h,t[4]=j):j=t[4];const L=u.find(j);C=L?{kind:"custom",role:L}:null}const R=C;let _;t[5]!==m?(_=me.members(m),t[5]=m,t[6]=_):_=t[6];let A;t[7]!==f?(A=()=>f.organization.listMembers(),t[7]=f,t[8]=A):A=t[8];let N;t[9]!==_||t[10]!==A?(N={queryKey:_,queryFn:A},t[9]=_,t[10]=A,t[11]=N):N=t[11];const{data:v}=Fe(N);let S;t[12]!==v?.data?.members?(S=v?.data?.members??[],t[12]=v?.data?.members,t[13]=S):S=t[13];const O=S;let M;t[14]!==O?(M=j=>O.filter(L=>L.role===j).length,t[14]=O,t[15]=M):M=t[15];const E=M;let b;if(t[16]!==u||t[17]!==E||t[18]!==l||t[19]!==e){let j;t[21]!==E||t[22]!==e?(j=de=>({kind:"builtin",role:{...de,memberCount:E(de.role),label:e(de.labelKey)}}),t[21]=E,t[22]=e,t[23]=j):j=t[23];const L=Qs.map(j);let ee;t[24]!==E?(ee=de=>({kind:"custom",role:{...de,memberCount:E(de.role)}}),t[24]=E,t[25]=ee):ee=t[25];const Ct=u.map(ee);if(b=[...L,...Ct],l){const de=l.toLowerCase();b=b.filter(At=>At.role.label.toLowerCase().includes(de))}t[16]=u,t[17]=E,t[18]=l,t[19]=e,t[20]=b}else b=t[20];let D;t[26]!==f?(D=async j=>{const L=await f.organization.deleteRole({roleId:j});if(L?.error)throw new Error(L.error.message);return L?.data},t[26]=f,t[27]=D):D=t[27];const r=at({mutationFn:D,onSuccess:(j,L)=>{Ke("role_deleted",{role_id:L}),a.invalidateQueries({queryKey:me.members(m)}),a.invalidateQueries({queryKey:me.organizationRoles(m)}),ve.success(e("settings.roles.deletedSuccessfully")),x(),R?.kind==="custom"&&R.role.id===L&&p(void 0)},onError:Js});let I;t[28]!==e?(I=e("settings.roles.columnRole"),t[28]=e,t[29]=I):I=t[29];let k;t[30]!==I?(k={id:"role",header:I,render:Xs,cellClassName:"flex-1 min-w-0",sortable:!0},t[30]=I,t[31]=k):k=t[31];let w;t[32]!==e?(w=e("settings.roles.columnType"),t[32]=e,t[33]=w):w=t[33];let Y;t[34]!==e?(Y=j=>j.kind==="builtin"?s.jsx(Me,{variant:"secondary",className:"text-xs",children:e("settings.roles.builtIn")}):s.jsx(Me,{variant:"outline",className:"text-xs",children:e("settings.roles.custom")}),t[34]=e,t[35]=Y):Y=t[35];let y;t[36]!==w||t[37]!==Y?(y={id:"type",header:w,render:Y,cellClassName:"w-28 shrink-0"},t[36]=w,t[37]=Y,t[38]=y):y=t[38];let z;t[39]!==e?(z=e("settings.roles.columnPermissions"),t[39]=e,t[40]=z):z=t[40];let P;t[41]!==e?(P=j=>{if(j.kind==="builtin")return j.role.role==="owner"||j.role.role==="admin"?s.jsx("span",{className:"text-sm text-muted-foreground",children:e("settings.roles.fullAccess")}):s.jsx("span",{className:"text-sm text-muted-foreground",children:e("settings.roles.basicAccess")});const L=j.role,ee=[];return L.allowsAllStaticPermissions?ee.push(e("settings.roles.fullOrgAccess")):L.staticPermissionCount&&L.staticPermissionCount>0&&ee.push(e("settings.roles.orgPermsCount",{count:L.staticPermissionCount})),L.allowsAllConnections?ee.push(e("settings.roles.allConnections")):L.connectionCount&&L.connectionCount>0&&ee.push(e("settings.roles.connectionCount",{count:L.connectionCount})),s.jsx("span",{className:"text-sm text-muted-foreground truncate",children:ee.length>0?ee.join(", "):e("settings.roles.noPermissions")})},t[41]=e,t[42]=P):P=t[42];let F;t[43]!==z||t[44]!==P?(F={id:"permissions",header:z,render:P,cellClassName:"flex-1 min-w-0"},t[43]=z,t[44]=P,t[45]=F):F=t[45];let V;t[46]!==e?(V=e("settings.roles.columnMembers"),t[46]=e,t[47]=V):V=t[47];let U;t[48]!==V?(U={id:"members",header:V,render:Ws,cellClassName:"w-24 shrink-0"},t[48]=V,t[49]=U):U=t[49];let B;t[50]!==e?(B={id:"actions",header:"",render:j=>j.kind==="builtin"?null:s.jsxs(wt,{children:[s.jsx(Gt,{asChild:!0,children:s.jsx(ce,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:qs,children:s.jsx(Bt,{size:16})})}),s.jsx(kt,{align:"end",onClick:Hs,children:s.jsxs(Ut,{variant:"destructive",onClick:()=>{const L=j.role;L.id&&o({id:L.id,label:L.label})},children:[s.jsx(Vt,{size:16}),e("settings.roles.delete")]})})]}),cellClassName:"w-12 shrink-0"},t[50]=e,t[51]=B):B=t[51];let Z;t[52]!==k||t[53]!==y||t[54]!==F||t[55]!==U||t[56]!==B?(Z=[k,y,F,U,B],t[52]=k,t[53]=y,t[54]=F,t[55]=U,t[56]=B,t[57]=Z):Z=t[57];const X=Z;let te;t[58]!==p?(te=j=>{if(j.kind==="builtin")p(`builtin-${j.role.role}`);else{const L=j.role;p(L.id)}},t[58]=p,t[59]=te):te=t[59];const le=te;if(R){let j;t[60]!==p?(j=()=>p(void 0),t[60]=p,t[61]=j):j=t[61];let L;return t[62]!==x||t[63]!==p?(L=()=>{x(),p(void 0)},t[62]=x,t[63]=p,t[64]=L):L=t[64],s.jsx(zs,{target:R,onBack:j,onSaved:L},Ks(R))}let K;t[65]!==e?(K=e("settings.roles.pageTitle"),t[65]=e,t[66]=K):K=t[66];let H;t[67]!==K?(H=s.jsx(ie.Title,{children:K}),t[67]=K,t[68]=H):H=t[68];let T;t[69]!==e?(T=e("settings.roles.searchPlaceholder"),t[69]=e,t[70]=T):T=t[70];let G;t[71]===Symbol.for("react.memo_cache_sentinel")?(G=j=>{j.key==="Escape"&&(n(""),j.target.blur())},t[71]=G):G=t[71];let Q;t[72]!==l||t[73]!==T?(Q=s.jsx(Qe,{value:l,onChange:n,placeholder:T,className:"w-full md:w-[375px]",onKeyDown:G}),t[72]=l,t[73]=T,t[74]=Q):Q=t[74];let q;t[75]!==p?(q=()=>p("new"),t[75]=p,t[76]=q):q=t[76];let ne;t[77]===Symbol.for("react.memo_cache_sentinel")?(ne=s.jsx(ze,{size:16}),t[77]=ne):ne=t[77];let se;t[78]!==e?(se=e("settings.roles.createRole"),t[78]=e,t[79]=se):se=t[79];let oe;t[80]!==q||t[81]!==se?(oe=s.jsxs(ce,{onClick:q,children:[ne,se]}),t[80]=q,t[81]=se,t[82]=oe):oe=t[82];let ue;t[83]!==Q||t[84]!==oe?(ue=s.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[Q,oe]}),t[83]=Q,t[84]=oe,t[85]=ue):ue=t[85];let fe;t[86]!==l||t[87]!==e?(fe=l?s.jsx(tt,{title:e("settings.roles.noRolesFound"),description:e("settings.roles.noRolesMatchSearch",{search:l})}):s.jsx(tt,{title:e("settings.roles.noRoles"),description:e("settings.roles.createRoleGetStarted")}),t[86]=l,t[87]=e,t[88]=fe):fe=t[88];let ge;t[89]!==b||t[90]!==X||t[91]!==le||t[92]!==fe?(ge=s.jsx(Yt,{columns:X,data:b,isLoading:!1,onRowClick:le,emptyState:fe}),t[89]=b,t[90]=X,t[91]=le,t[92]=fe,t[93]=ge):ge=t[93];let he;t[94]!==H||t[95]!==ue||t[96]!==ge?(he=s.jsx(ie.Content,{children:s.jsx(ie.Body,{children:s.jsxs("div",{className:"flex flex-col gap-6",children:[H,ue,ge]})})}),t[94]=H,t[95]=ue,t[96]=ge,t[97]=he):he=t[97];const Ve=i!==null;let Ge;t[98]===Symbol.for("react.memo_cache_sentinel")?(Ge=j=>!j&&o(null),t[98]=Ge):Ge=t[98];let xe;t[99]!==e?(xe=e("settings.roles.deleteRoleTitle"),t[99]=e,t[100]=xe):xe=t[100];let pe;t[101]!==xe?(pe=s.jsx(ft,{children:xe}),t[101]=xe,t[102]=pe):pe=t[102];const Ye=i?.label??"";let Te;t[103]!==e||t[104]!==Ye?(Te=e("settings.roles.deleteRoleConfirm",{role:Ye}),t[103]=e,t[104]=Ye,t[105]=Te):Te=t[105];let Ee;t[106]!==Te?(Ee=s.jsx(gt,{children:Te}),t[106]=Te,t[107]=Ee):Ee=t[107];let Ie;t[108]!==pe||t[109]!==Ee?(Ie=s.jsxs(ht,{children:[pe,Ee]}),t[108]=pe,t[109]=Ee,t[110]=Ie):Ie=t[110];let _e;t[111]!==e?(_e=e("settings.roles.cancel"),t[111]=e,t[112]=_e):_e=t[112];let Re;t[113]!==_e?(Re=s.jsx(xt,{children:_e}),t[113]=_e,t[114]=Re):Re=t[114];let Se;t[115]!==r||t[116]!==i?(Se=()=>{i?.id&&r.mutate(i.id),o(null)},t[115]=r,t[116]=i,t[117]=Se):Se=t[117];let Ne;t[118]!==e?(Ne=e("settings.roles.delete"),t[118]=e,t[119]=Ne):Ne=t[119];let be;t[120]!==Se||t[121]!==Ne?(be=s.jsx(pt,{onClick:Se,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:Ne}),t[120]=Se,t[121]=Ne,t[122]=be):be=t[122];let Ce;t[123]!==Re||t[124]!==be?(Ce=s.jsxs(Tt,{children:[Re,be]}),t[123]=Re,t[124]=be,t[125]=Ce):Ce=t[125];let Ae;t[126]!==Ie||t[127]!==Ce?(Ae=s.jsxs(ut,{children:[Ie,Ce]}),t[126]=Ie,t[127]=Ce,t[128]=Ae):Ae=t[128];let Oe;t[129]!==Ve||t[130]!==Ae?(Oe=s.jsx(mt,{open:Ve,onOpenChange:Ge,children:Ae}),t[129]=Ve,t[130]=Ae,t[131]=Oe):Oe=t[131];let ke;return t[132]!==he||t[133]!==Oe?(ke=s.jsxs(ie,{children:[he,Oe]}),t[132]=he,t[133]=Oe,t[134]=ke):ke=t[134],ke}function Hs(t){return t.stopPropagation()}function qs(t){return t.stopPropagation()}function Ws(t){return s.jsx("span",{className:"text-sm text-foreground",children:t.role.memberCount})}function Xs(t){return s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx("div",{className:W("size-2.5 rounded-full shrink-0",dt(t.role.role,t.kind==="builtin"))}),s.jsx("span",{className:"text-sm font-medium text-foreground truncate",children:t.role.label}),t.kind==="builtin"&&s.jsx(ct,{size:12,className:"text-muted-foreground shrink-0"})]})}function Js(t,e){Ke("role_delete_failed",{role_id:e,error:t instanceof Error?t.message:String(t)}),ve.error(t instanceof Error?t.message:"Failed to delete role")}function el(){const t=J.c(7),e=re();let l;t[0]!==e?(l=e("settings.roles.failedToLoad"),t[0]=e,t[1]=l):l=t[1];let n;t[2]!==l?(n=s.jsx(ie,{children:s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx("div",{className:"text-sm text-muted-foreground",children:l})})}),t[2]=l,t[3]=n):n=t[3];let i;t[4]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsx($.Suspense,{fallback:s.jsx(ie,{children:s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx(je,{size:32,className:"animate-spin text-muted-foreground"})})}),children:s.jsx(Zs,{})}),t[4]=i):i=t[4];let o;return t[5]!==n?(o=s.jsx(Mt,{fallback:n,children:i}),t[5]=n,t[6]=o):o=t[6],o}function jo(){const t=J.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx($s,{area:"roles",children:s.jsx(el,{})}),t[0]=e):e=t[0],e}export{jo as default};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-BHF3Gqk5.js","assets/index-NqSlWKeo.js","assets/index-DMFn6dNg.css","assets/Tool02-Du9fr3Nt.js","assets/CheckCircle-bg6wDqUV.js","assets/Settings02-Kjl6lXer.js","assets/use-mcp-client-wvJJ9Hzp.js","assets/auth-DXfb7O-1.js","assets/useInfiniteQuery-CsJhdvWo.js","assets/use-infinite-scroll-DubxVdoI.js","assets/studio-tools-BU-Aqu_G.js","assets/badge-C3gtcQlV.js","assets/input-B126aqDI.js","assets/dropdown-menu-C4erEwUT.js","assets/Check-0n5WRv25.js","assets/ChevronRight-6Rye04P5.js","assets/DotsVertical-DEPqJnUT.js","assets/table-CqhKzWtF.js","assets/toggle-group-DimGo8w8.js","assets/use-view-mode-Crr9lraw.js","assets/use-mobile-BUlMzYS0.js","assets/FilterLines-CZlxQkSy.js","assets/SearchMd-pXmBLv22.js","assets/dialog-CoY4OqeZ.js","assets/X-Cs3qvsde.js","assets/AlertCircle-DE0mjiPH.js","assets/Upload01-gLSk7mBr.js","assets/metadata-dUsYcpuu.js","assets/alert-dialog-Ba_RpcbN.js","assets/card-BwBZjRrY.js","assets/Trash01-CMNjH_DW.js","assets/label-C_bkFqVN.js","assets/select-DXogB_-h.js","assets/tooltip-BcdcxYvW.js","assets/ChevronDown-CGoHrjX5.js","assets/ChevronUp-jIoouGz9.js","assets/switch-BuFqMzCY.js","assets/textarea-ByKpF6iY.js","assets/XCircle-8X6NoxQY.js","assets/checkbox-kd_d5C6h.js","assets/Eye-BcQ_NcXu.js","assets/LinkExternal01-CadAJyYe.js","assets/use-copy-BFDwgFt_.js","assets/Copy01-qEs1pBUe.js","assets/Key01-CAeu9IRG.js","assets/Plus-D3nKWb6A.js","assets/mcp-oauth-D02BMVQM.js","assets/Play-Cdjrcp_8.js"])))=>i.map(i=>d[i]);
2
- import{c as m,d as n,f as c,j as t,k as f,r as l,aF as p}from"./index-NqSlWKeo.js";import{R as u}from"./require-capability-BAwNnbYl.js";import"./use-capability-iS6a03SC.js";import"./access-gate-D9Dnosst.js";import"./capability-load-error-BFpTi9Lb.js";const g=l.lazy(()=>p(()=>import("./registry-layout-BHF3Gqk5.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47])));function j(){const e=m.c(5),i=n();let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s={from:"/shell/$org"},e[0]=s):s=e[0];const{org:o}=c(s);let r;e[1]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx("div",{className:"h-full flex items-center justify-center",children:t.jsx(f,{size:20,className:"animate-spin text-muted-foreground"})}),e[1]=r):r=e[1];let a;return e[2]!==i||e[3]!==o?(a=t.jsx(u,{capability:"registry:manage",area:"the registry",children:t.jsx(l.Suspense,{fallback:r,children:t.jsx(g,{onBack:()=>i({to:"/$org/settings/store",params:{org:o}})})})}),e[2]=i,e[3]=o,e[4]=a):a=e[4],a}export{j as default};
@@ -1 +0,0 @@
1
- import{I as u}from"./use-infinite-scroll-DubxVdoI.js";import{e4 as i}from"./index-NqSlWKeo.js";function t(e,r){return i(e,u,r)}export{t as u};
@@ -1 +0,0 @@
1
- import{I as s}from"./use-infinite-scroll-DubxVdoI.js";import{e4 as u,W as n}from"./index-NqSlWKeo.js";function a(e,r){return u({...e,enabled:!0,suspense:!0,throwOnError:n},s,r)}export{a as u};