@decocms/mesh 2.96.1 → 2.96.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 (179) hide show
  1. package/dist/client/assets/{AlertCircle-Uhm-vg87.js → AlertCircle-4DBdKyiN.js} +1 -1
  2. package/dist/client/assets/{AlertOctagon-BnG7_0Lj.js → AlertOctagon-CJ4814e4.js} +1 -1
  3. package/dist/client/assets/{ArrowLeft-DZdpcFcm.js → ArrowLeft-BbUXsmjT.js} +1 -1
  4. package/dist/client/assets/{ArrowUp-o8GkJfpb.js → ArrowUp-Cf0ZCNqn.js} +1 -1
  5. package/dist/client/assets/{Check-RSjbQD0O.js → Check-DVZrDl7E.js} +1 -1
  6. package/dist/client/assets/{CheckCircle-BabFBaUr.js → CheckCircle-CA3HsvdF.js} +1 -1
  7. package/dist/client/assets/{CheckDone01-TcspZYjj.js → CheckDone01-CDAeIQ63.js} +1 -1
  8. package/dist/client/assets/{ChevronDown-C42nqF2a.js → ChevronDown-BrnUqul2.js} +1 -1
  9. package/dist/client/assets/{ChevronRight-CYPNNnez.js → ChevronRight-lTpPQGwH.js} +1 -1
  10. package/dist/client/assets/{Clock-DXNO1b12.js → Clock-BpIUYvY9.js} +1 -1
  11. package/dist/client/assets/{Code01-n69ilXrX.js → Code01-CgOGThgh.js} +1 -1
  12. package/dist/client/assets/{Container-CS-v1KY-.js → Container-CMQiv6Ns.js} +1 -1
  13. package/dist/client/assets/{Copy01-BCPsfObr.js → Copy01-CMA5_oKx.js} +1 -1
  14. package/dist/client/assets/{Dataflow03-Dh760DjE.js → Dataflow03-CJHUSZDC.js} +1 -1
  15. package/dist/client/assets/{DotsHorizontal-Ctv-gwuL.js → DotsHorizontal-bihG3j6i.js} +1 -1
  16. package/dist/client/assets/{DotsVertical-BAQdtXzK.js → DotsVertical-XqPeTgM4.js} +1 -1
  17. package/dist/client/assets/{Download01-k9Xf7rXk.js → Download01-COYP-wbM.js} +1 -1
  18. package/dist/client/assets/{Edit01-BR94fmFd.js → Edit01-CN-BVNm7.js} +1 -1
  19. package/dist/client/assets/{Eye-BRCzsGxl.js → Eye-DBhpblAN.js} +1 -1
  20. package/dist/client/assets/{File02-Di-6VT8b.js → File02-C2olsFnm.js} +1 -1
  21. package/dist/client/assets/{File06-CSDN93G4.js → File06-CyuQ1kk7.js} +1 -1
  22. package/dist/client/assets/{FilterLines-BqWnRXAG.js → FilterLines-DNMtf_47.js} +1 -1
  23. package/dist/client/assets/{Globe01-Bxre7Rfj.js → Globe01-S1shXduq.js} +1 -1
  24. package/dist/client/assets/{Grid01-pdQxycFL.js → Grid01-BB6GzE_H.js} +1 -1
  25. package/dist/client/assets/{Home02-DKf-8C4k.js → Home02-9-Cl82ip.js} +1 -1
  26. package/dist/client/assets/{Image01-Bsy7A2Dk.js → Image01-Bllq3U2e.js} +1 -1
  27. package/dist/client/assets/{Inbox01-C1fHCz6f.js → Inbox01-_QG6HIJd.js} +1 -1
  28. package/dist/client/assets/{InfoCircle-CLk2ditJ.js → InfoCircle-BzKPKNIV.js} +1 -1
  29. package/dist/client/assets/{Key01-C1I0sRBn.js → Key01-kq7PX1YS.js} +1 -1
  30. package/dist/client/assets/{LinkExternal01-BYZW5cd9.js → LinkExternal01-B7R1mSP2.js} +1 -1
  31. package/dist/client/assets/{List-Dd8vk8oh.js → List-ByKRHbSO.js} +1 -1
  32. package/dist/client/assets/{Loading01-CXnHH69h.js → Loading01-C30bDA9h.js} +1 -1
  33. package/dist/client/assets/{Lock01-JsNkKI7l.js → Lock01-CMTkVFHx.js} +1 -1
  34. package/dist/client/assets/{Pin01-yqsENtKk.js → Pin01-DpTPW-9K.js} +1 -1
  35. package/dist/client/assets/{Play-lOQ1Ymlo.js → Play-BweooOYS.js} +1 -1
  36. package/dist/client/assets/{Plus-D0x-Dibo.js → Plus-q5YWe4us.js} +1 -1
  37. package/dist/client/assets/{RefreshCcw01-h4iMlxqc.js → RefreshCcw01-DRWlmqw5.js} +1 -1
  38. package/dist/client/assets/{RefreshCw01-DMkeO6TB.js → RefreshCw01-Bb8t9XLS.js} +1 -1
  39. package/dist/client/assets/{Save01-B2I-fdos.js → Save01-DXWV5nj4.js} +1 -1
  40. package/dist/client/assets/{SearchMd-vTjANW25.js → SearchMd-hERLZOdx.js} +1 -1
  41. package/dist/client/assets/{Settings01-GQQE44Uf.js → Settings01-K_PXf5Q7.js} +1 -1
  42. package/dist/client/assets/{Settings02-5UGbAEAm.js → Settings02-ZV7r5q4D.js} +1 -1
  43. package/dist/client/assets/{Share07-B1IjUJ7I.js → Share07-Dx2Rb32N.js} +1 -1
  44. package/dist/client/assets/{Terminal-D3JARzN3.js → Terminal-VY7qOx_i.js} +1 -1
  45. package/dist/client/assets/{Tool01-CoNpy80w.js → Tool01-BP_mkdy3.js} +1 -1
  46. package/dist/client/assets/{Trash01-ULZyLlT5.js → Trash01-Dk9pv506.js} +1 -1
  47. package/dist/client/assets/{Upload01-C_yAut88.js → Upload01-BokmTptz.js} +1 -1
  48. package/dist/client/assets/{Users03-CrTVA02D.js → Users03-C_ymlzx3.js} +1 -1
  49. package/dist/client/assets/{X-CMKSGw1c.js → X-BofIsacr.js} +1 -1
  50. package/dist/client/assets/{XClose-fbnekwJM.js → XClose-B9jvydA5.js} +1 -1
  51. package/dist/client/assets/{agent-connections-preview-BATYW9_y.js → agent-connections-preview-CcWJACAV.js} +1 -1
  52. package/dist/client/assets/{agent-detail-DuEm4NiU.js → agent-detail-BTNxaZph.js} +1 -1
  53. package/dist/client/assets/{agents-63xbxJ_E.js → agents-isWhMnyk.js} +1 -1
  54. package/dist/client/assets/{alert-dialog-CqIibzn6.js → alert-dialog-Cl76sYVz.js} +1 -1
  55. package/dist/client/assets/{auth-catchall-DMyukblD.js → auth-catchall-BmUeke0B.js} +1 -1
  56. package/dist/client/assets/{avatar-CNNflJo3.js → avatar-DbtnoOEU.js} +1 -1
  57. package/dist/client/assets/{badge-DEQawiWd.js → badge-D_aixLlt.js} +1 -1
  58. package/dist/client/assets/{binder-Dgk1prvv.js → binder-BeHB3-7Y.js} +1 -1
  59. package/dist/client/assets/{breadcrumb-DLtCbZMJ.js → breadcrumb-ClGbT9Pe.js} +1 -1
  60. package/dist/client/assets/{button-CJa3f3rL.js → button-D-PerQqC.js} +1 -1
  61. package/dist/client/assets/{card-CsxzEYEk.js → card-ZafkYtyj.js} +1 -1
  62. package/dist/client/assets/{checkbox-BCyD8z4q.js → checkbox-DGTMQZYw.js} +1 -1
  63. package/dist/client/assets/{circle-alert-uu9PM4o-.js → circle-alert-B5MH-I2D.js} +1 -1
  64. package/dist/client/assets/{collection-detail-BisjiYIh.js → collection-detail-D7K7KZ3j.js} +1 -1
  65. package/dist/client/assets/{collection-search-BzW9Bci5.js → collection-search-CFO7XWxi.js} +1 -1
  66. package/dist/client/assets/{collection-tab-DNw4-AZ3.js → collection-tab-ZK9qGzbi.js} +1 -1
  67. package/dist/client/assets/{collection-table-wrapper-DuKaQpn1.js → collection-table-wrapper-aEUpSjNT.js} +1 -1
  68. package/dist/client/assets/{collection-tabs-DFXuzfRm.js → collection-tabs-zYgpPtAl.js} +1 -1
  69. package/dist/client/assets/{command-1Xg305EH.js → command-riBVGEeS.js} +1 -1
  70. package/dist/client/assets/{connect-DEAY8vzy.js → connect-CxlD4pzc.js} +1 -1
  71. package/dist/client/assets/{connection-card-Dc-oh5tv.js → connection-card-DibEpgAJ.js} +1 -1
  72. package/dist/client/assets/connection-detail-VawJXFkM.js +1 -0
  73. package/dist/client/assets/{connections-U7rjaHrz.js → connections-rTehwMXP.js} +1 -1
  74. package/dist/client/assets/{constants-LnQa4w9L.js → constants-CH9byiKA.js} +1 -1
  75. package/dist/client/assets/constants-kLsxGUtY.js +1 -0
  76. package/dist/client/assets/{create-organization-dialog-BuI8Z4tH.js → create-organization-dialog-DBHZfDPt.js} +1 -1
  77. package/dist/client/assets/{create-project-dialog-DNH_FaKC.js → create-project-dialog-Yqgc0Gmy.js} +1 -1
  78. package/dist/client/assets/{dialog-Bzq7eXqS.js → dialog-CFptoDdD.js} +1 -1
  79. package/dist/client/assets/{dropdown-menu-DC2vYQhY.js → dropdown-menu-C8QhWQVm.js} +1 -1
  80. package/dist/client/assets/{dynamic-plugin-layout-lKDUzSNP.js → dynamic-plugin-layout-DYwd3Z58.js} +1 -1
  81. package/dist/client/assets/{empty-state-CegLfGmA.js → empty-state-DoBcZdM-.js} +1 -1
  82. package/dist/client/assets/{empty-state-K93degI9.js → empty-state-DyXzPX9E.js} +1 -1
  83. package/dist/client/assets/{env-vars-editor-A56x5u0c.js → env-vars-editor-DyPP_8RR.js} +1 -1
  84. package/dist/client/assets/{error-boundary-BHZBr65c.js → error-boundary-8guJh7VT.js} +1 -1
  85. package/dist/client/assets/{extract-connection-data-Bagxseai.js → extract-connection-data-DkrrvIEC.js} +1 -1
  86. package/dist/client/assets/{file-browser-BcBVgyZ_.js → file-browser-Fvr2IbiZ.js} +2 -2
  87. package/dist/client/assets/{form-BiNvV3_m.js → form-CtFhf1V_.js} +1 -1
  88. package/dist/client/assets/{grid-view-C_FVYERW.js → grid-view-Ce3NoRpj.js} +1 -1
  89. package/dist/client/assets/{home-HO-4OJaE.js → home-BjMglPl-.js} +1 -1
  90. package/dist/client/assets/{index-Dp8TDmPV.js → index-B29giag9.js} +2 -2
  91. package/dist/client/assets/{index-BuinBUAv.js → index-BCTs9n6O.js} +14 -14
  92. package/dist/client/assets/index-BT14xSn0.css +1 -0
  93. package/dist/client/assets/{index-B75ddzLB.js → index-BlBYI35m.js} +1 -1
  94. package/dist/client/assets/{index-CxGA93Pi.js → index-Bourcgd_.js} +1 -1
  95. package/dist/client/assets/{index-CbHJdukr.js → index-CrTEMTct.js} +1 -1
  96. package/dist/client/assets/{index-DQZLC-Ha.js → index-CwR6GYR2.js} +1 -1
  97. package/dist/client/assets/{index-wYRfl08q.js → index-D1S818JH.js} +1 -1
  98. package/dist/client/assets/{index-zbOyivpa.js → index-D8tHe059.js} +1 -1
  99. package/dist/client/assets/{index-DBhC1Bw_.js → index-V777tuW4.js} +1 -1
  100. package/dist/client/assets/{infiniteQueryObserver-D_e-0DLm.js → infiniteQueryObserver-Dzcc9UjY.js} +1 -1
  101. package/dist/client/assets/{input-DNUbpYNz.js → input-Cxci79To.js} +1 -1
  102. package/dist/client/assets/{integration-icon-BrB9FdFC.js → integration-icon-ByKWru2D.js} +1 -1
  103. package/dist/client/assets/{label-SUAIjh3i.js → label-BN7IWnf6.js} +1 -1
  104. package/dist/client/assets/{layout-Co6gOE--.js → layout-DUHhpHXf.js} +1 -1
  105. package/dist/client/assets/{localstorage-keys-DvX9S-u8.js → localstorage-keys-CwGoMvvj.js} +1 -1
  106. package/dist/client/assets/{login-CqtWDfWF.js → login-Ty0R4DxW.js} +1 -1
  107. package/dist/client/assets/{mcp-oauth-BkEfZYjh.js → mcp-oauth-ChVLA9f3.js} +1 -1
  108. package/dist/client/assets/{mcp-server-card-CPLkUd67.js → mcp-server-card-DBYZ33HR.js} +1 -1
  109. package/dist/client/assets/{mcp-server-detail-BqnowxA3.js → mcp-server-detail-Du-GkpxI.js} +2 -2
  110. package/dist/client/assets/{members-C_lwQkhW.js → members-DsiwYbO8.js} +1 -1
  111. package/dist/client/assets/{monitoring-Cura7IdF.js → monitoring-BlxCJU8J.js} +1 -1
  112. package/dist/client/assets/{monitoring-dashboard-edit-DS-AAspi.js → monitoring-dashboard-edit-DSM3xa4Q.js} +1 -1
  113. package/dist/client/assets/{monitoring-dashboard-view-Drr802Ja.js → monitoring-dashboard-view-CJ1f1bB7.js} +1 -1
  114. package/dist/client/assets/{oauth-callback-BjD4G2wX.js → oauth-callback-DmySymdW.js} +1 -1
  115. package/dist/client/assets/page-D0Sa9mFI.js +1 -0
  116. package/dist/client/assets/{page-d0dzeaxa.js → page-Tih4SWMI.js} +1 -1
  117. package/dist/client/assets/{plugin-empty-state-DUWxbNZT.js → plugin-empty-state-D05hsZ5h.js} +1 -1
  118. package/dist/client/assets/{plugin-empty-state--d7z38bx.js → plugin-empty-state-hheYGSVX.js} +1 -1
  119. package/dist/client/assets/{plugin-header-BA3h83Bj.js → plugin-header-CE-bMrP6.js} +1 -1
  120. package/dist/client/assets/{plugin-header-BAHaZxid.js → plugin-header-CmN2-mKw.js} +1 -1
  121. package/dist/client/assets/{popover-NmdUTNcA.js → popover-Bq8aZ27v.js} +1 -1
  122. package/dist/client/assets/{project-layout-BYeS0BnN.js → project-layout-ByRKYVau.js} +1 -1
  123. package/dist/client/assets/{project-settings-SIbKavxy.js → project-settings-ByYa3pFP.js} +1 -1
  124. package/dist/client/assets/{projects-list-Denhxpmm.js → projects-list-CDpKF2Ed.js} +1 -1
  125. package/dist/client/assets/registry-layout-CfGazoo8.js +5 -0
  126. package/dist/client/assets/{registry-utils-DB2T-f6C.js → registry-utils-6Y4tQn0C.js} +1 -1
  127. package/dist/client/assets/{resizable-T_yUYvbE.js → resizable-DfSFqzWY.js} +1 -1
  128. package/dist/client/assets/{save-actions-5R6BlOXt.js → save-actions-htT4YoqX.js} +1 -1
  129. package/dist/client/assets/{scroll-area-CBpNMZKr.js → scroll-area-BJ5bePQ1.js} +1 -1
  130. package/dist/client/assets/{select-C2nUbKfi.js → select-D6oaQfJS.js} +1 -1
  131. package/dist/client/assets/{shell-layout-BhIOsSah.js → shell-layout-GR3VdFoR.js} +3 -3
  132. package/dist/client/assets/{spinner-uWSwEI1n.js → spinner-BstVffOp.js} +1 -1
  133. package/dist/client/assets/{store-invite-NFRL1rLj.js → store-invite-C4VxiywO.js} +1 -1
  134. package/dist/client/assets/{switch-B_mHCx3S.js → switch-Bi5F4S-5.js} +1 -1
  135. package/dist/client/assets/{table-C_SqJ2pz.js → table-C576YCZw.js} +1 -1
  136. package/dist/client/assets/tasks-BDnJjeaX.js +1 -0
  137. package/dist/client/assets/{textarea-CTzgIHFy.js → textarea-DhETf1og.js} +1 -1
  138. package/dist/client/assets/{time-range-picker-DC9mhGh1.js → time-range-picker-CG48KHqL.js} +1 -1
  139. package/dist/client/assets/{toggle-group-Dz6DkmD4.js → toggle-group-BdU9v1nm.js} +1 -1
  140. package/dist/client/assets/{tools-list-plHC71me.js → tools-list-DhfY_SNs.js} +1 -1
  141. package/dist/client/assets/{tooltip-C8pD5y5P.js → tooltip-D-FT-fCa.js} +1 -1
  142. package/dist/client/assets/{topbar-portal-DAwgzTHb.js → topbar-portal-IUe4pf8g.js} +1 -1
  143. package/dist/client/assets/{typewriter-title-e9bmrxry.js → typewriter-title-cc0Pz_LM.js} +1 -1
  144. package/dist/client/assets/{use-binding-BMUJf9fk.js → use-binding-B7W2mOcc.js} +1 -1
  145. package/dist/client/assets/{use-connection-Bpj__KJl.js → use-connection-DrWeJHXu.js} +1 -1
  146. package/dist/client/assets/use-copy-BNoj9l5V.js +1 -0
  147. package/dist/client/assets/{use-create-virtual-mcp-2ig7XE3k.js → use-create-virtual-mcp-DhPfPD_b.js} +1 -1
  148. package/dist/client/assets/{use-deco-chat-open-cRBnqBrA.js → use-deco-chat-open-B0b2QgDS.js} +1 -1
  149. package/dist/client/assets/{use-install-from-registry-C0CQR1XL.js → use-install-from-registry-BMfOY5TA.js} +1 -1
  150. package/dist/client/assets/{use-list-state-j_os04A2.js → use-list-state-qDaPNHfK.js} +1 -1
  151. package/dist/client/assets/{use-llm-C9Qa_Kzo.js → use-llm-DjYTM2HW.js} +1 -1
  152. package/dist/client/assets/{use-mcp-prompts-BgJx9Ng3.js → use-mcp-prompts-BMZQCyj7.js} +1 -1
  153. package/dist/client/assets/{use-mcp-tools-kVBrFVQ_.js → use-mcp-tools-CdAhr98j.js} +1 -1
  154. package/dist/client/assets/{use-mobile-BhG5mqie.js → use-mobile-DcwTOp-X.js} +1 -1
  155. package/dist/client/assets/{use-organization-settings-CrqFuGPr.js → use-organization-settings-6xOluKFM.js} +1 -1
  156. package/dist/client/assets/{use-project-BDU5VGwr.js → use-project-DY_ihdkL.js} +1 -1
  157. package/dist/client/assets/{use-view-mode-B21E886q.js → use-view-mode-CY4TLkHz.js} +1 -1
  158. package/dist/client/assets/{use-virtual-mcp-CamkpUx0.js → use-virtual-mcp-IiP1g_wm.js} +1 -1
  159. package/dist/client/assets/useInfiniteQuery-eF9xXIkq.js +1 -0
  160. package/dist/client/assets/{useMutation-CkwG6xTN.js → useMutation-WNJB1RXH.js} +1 -1
  161. package/dist/client/assets/useQuery-BO0TdkAU.js +1 -0
  162. package/dist/client/assets/useSuspenseInfiniteQuery-DfH90Jor.js +1 -0
  163. package/dist/client/assets/{view-mode-toggle-CkMs1Dwx.js → view-mode-toggle-CRrDEnZy.js} +1 -1
  164. package/dist/client/assets/{workflow-B9m2KhXI.js → workflow-CD5ePGpY.js} +1 -1
  165. package/dist/client/index.html +2 -2
  166. package/dist/server/cli.js +198 -198
  167. package/dist/server/migrate.js +173 -173
  168. package/dist/server/server.js +175 -175
  169. package/package.json +1 -1
  170. package/dist/client/assets/ArrowRight-DDCJ7vCm.js +0 -1
  171. package/dist/client/assets/connection-detail-DimjcjkK.js +0 -1
  172. package/dist/client/assets/constants-CXdUDujD.js +0 -1
  173. package/dist/client/assets/index-hnZfQSPC.css +0 -1
  174. package/dist/client/assets/page-MGUA0r79.js +0 -1
  175. package/dist/client/assets/registry-layout-CPldmLnW.js +0 -5
  176. package/dist/client/assets/tasks-DvY2XPl_.js +0 -1
  177. package/dist/client/assets/useInfiniteQuery-R7yz1vmu.js +0 -1
  178. package/dist/client/assets/useQuery-DCx9kDUK.js +0 -1
  179. package/dist/client/assets/useSuspenseInfiniteQuery-CYwzFakG.js +0 -1
@@ -1 +0,0 @@
1
- import{c as b,j as s,r as A,u as ne,g as oe,t as ee}from"./index-Dp8TDmPV.js";import{V as ae,C as g}from"./index-BuinBUAv.js";import{T as ce,i as me,a as de,t as fe}from"./typewriter-title-e9bmrxry.js";import{E as ue}from"./error-boundary-BHZBr65c.js";import{u as Z,S as Y}from"./use-deco-chat-open-cRBnqBrA.js";import{I as te}from"./integration-icon-BrB9FdFC.js";import{P as pe,a as he,b as xe}from"./popover-NmdUTNcA.js";import{c as se,B as H}from"./button-CJa3f3rL.js";import{i as ge,d as je}from"./constants-LnQa4w9L.js";import{b as be}from"./use-virtual-mcp-CamkpUx0.js";import{i as ye}from"./ChevronRight-CYPNNnez.js";import{t as ie}from"./Users03-CrTVA02D.js";import{P as E}from"./index-DQZLC-Ha.js";import{T as J,a as Q,b as X}from"./tooltip-C8pD5y5P.js";import{c as Ne}from"./Pin01-yqsENtKk.js";import{s as _e}from"./Plus-D0x-Dibo.js";import{i as Se}from"./Share07-B1IjUJ7I.js";import"./spinner-uWSwEI1n.js";import"./use-mcp-prompts-BgJx9Ng3.js";import"./useQuery-DCx9kDUK.js";import"./dialog-Bzq7eXqS.js";import"./X-CMKSGw1c.js";import"./form-BiNvV3_m.js";import"./label-SUAIjh3i.js";import"./input-DNUbpYNz.js";import"./ArrowUp-o8GkJfpb.js";import"./ChevronDown-C42nqF2a.js";import"./Edit01-BR94fmFd.js";import"./AlertCircle-Uhm-vg87.js";import"./ArrowLeft-DZdpcFcm.js";import"./ArrowRight-DDCJ7vCm.js";import"./badge-DEQawiWd.js";import"./Check-RSjbQD0O.js";import"./Code01-n69ilXrX.js";import"./SearchMd-vTjANW25.js";import"./use-create-virtual-mcp-2ig7XE3k.js";import"./usage-B8eRkRZY.js";import"./marked.esm-BaswSlok.js";import"./Copy01-BCPsfObr.js";import"./empty-state-CegLfGmA.js";import"./use-connection-Bpj__KJl.js";import"./useMutation-CkwG6xTN.js";import"./generate-id-Dyweu44Y.js";import"./Clock-DXNO1b12.js";import"./Trash01-ULZyLlT5.js";import"./use-llm-C9Qa_Kzo.js";import"./use-binding-BMUJf9fk.js";import"./binder-Dgk1prvv.js";import"./localstorage-keys-DvX9S-u8.js";import"./select-C2nUbKfi.js";import"./index-DBhC1Bw_.js";import"./File06-CSDN93G4.js";import"./Grid01-pdQxycFL.js";import"./Image01-Bsy7A2Dk.js";import"./RefreshCcw01-h4iMlxqc.js";import"./useSuspenseInfiniteQuery-CYwzFakG.js";import"./infiniteQueryObserver-D_e-0DLm.js";import"./Container-CS-v1KY-.js";function ve(e){const t=b.c(15),{agent:i}=e,{setVirtualMcpId:p}=Z();let r;t[0]!==i.id||t[1]!==p?(r=()=>{p(i.id)},t[0]=i.id,t[1]=p,t[2]=r):r=t[2];const l=r;let m;t[3]===Symbol.for("react.memo_cache_sentinel")?(m=se("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors hover:bg-accent/30","cursor-pointer","self-stretch"),t[3]=m):m=t[3];const d=`Select agent ${i.title}`;let n;t[4]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(ie,{size:20}),t[4]=n):n=t[4];let c;t[5]!==i.icon||t[6]!==i.title?(c=s.jsx(te,{icon:i.icon,name:i.title,fallbackIcon:n}),t[5]=i.icon,t[6]=i.title,t[7]=c):c=t[7];let o;t[8]!==i.title?(o=s.jsx("p",{className:"text-sm text-foreground text-center leading-tight line-clamp-2",children:i.title}),t[8]=i.title,t[9]=o):o=t[9];let a;return t[10]!==l||t[11]!==d||t[12]!==c||t[13]!==o?(a=s.jsxs("button",{type:"button",onClick:l,className:m,"aria-label":d,children:[c,o]}),t[10]=l,t[11]=d,t[12]=c,t[13]=o,t[14]=a):a=t[14],a}function Ce(e){const t=b.c(14),{virtualMcps:i,selectedVirtualMcpId:p,onVirtualMcpChange:r}=e,[l,m]=A.useState(!1),d=A.useRef(null);let n,c;t[0]!==l?(n=()=>{l&&setTimeout(()=>{d.current?.focus()},0)},c=[l],t[0]=l,t[1]=n,t[2]=c):(n=t[1],c=t[2]),A.useEffect(n,c);let o;t[3]!==r?(o=y=>{r(y),m(!1)},t[3]=r,t[4]=o):o=t[4];const a=o;let f;t[5]===Symbol.for("react.memo_cache_sentinel")?(f=se("flex flex-col items-center gap-3 p-2 rounded-lg","transition-colors hover:bg-accent/30","cursor-pointer","self-stretch"),t[5]=f):f=t[5];let u;t[6]===Symbol.for("react.memo_cache_sentinel")?(u=s.jsx(pe,{asChild:!0,children:s.jsxs("button",{type:"button",className:f,"aria-label":"See all agents",children:[s.jsx("div",{className:"size-12 rounded-lg bg-accent flex items-center justify-center shrink-0",children:s.jsx(ye,{size:24,className:"text-foreground"})}),s.jsx("p",{className:"text-sm text-foreground text-center leading-tight",children:"See all"})]})}),t[6]=u):u=t[6];let h;t[7]!==a||t[8]!==p||t[9]!==i?(h=s.jsx(he,{className:"w-[550px] p-0 overflow-hidden",align:"start",side:"top",sideOffset:8,children:s.jsx(ae,{virtualMcps:i,selectedVirtualMcpId:p,onVirtualMcpChange:a,searchInputRef:d})}),t[7]=a,t[8]=p,t[9]=i,t[10]=h):h=t[10];let j;return t[11]!==l||t[12]!==h?(j=s.jsxs(xe,{open:l,onOpenChange:m,children:[u,h]}),t[11]=l,t[12]=h,t[13]=j):j=t[13],j}function we(){const e=b.c(20),t=be(),{selectedVirtualMcp:i,setVirtualMcpId:p}=Z();let r,l,m,d,n,c;if(e[0]!==t){n=Symbol.for("react.early_return_sentinel");e:{const h=t.filter(ze).slice(0,6);if(h.length===0){n=null;break e}c=t.map(Te),m="w-full max-w-[800px]",e[7]===Symbol.for("react.memo_cache_sentinel")?(d=s.jsx("h2",{className:"text-sm font-medium text-muted-foreground mb-4",children:"Recently used agents"}),e[7]=d):d=e[7],r="grid grid-cols-3 sm:grid-cols-4 md:grid-cols-7 gap-2",l=h.map(ke)}e[0]=t,e[1]=r,e[2]=l,e[3]=m,e[4]=d,e[5]=n,e[6]=c}else r=e[1],l=e[2],m=e[3],d=e[4],n=e[5],c=e[6];if(n!==Symbol.for("react.early_return_sentinel"))return n;const o=i?.id??null;let a;e[8]!==p||e[9]!==o||e[10]!==c?(a=s.jsx(Ce,{virtualMcps:c,selectedVirtualMcpId:o,onVirtualMcpChange:p}),e[8]=p,e[9]=o,e[10]=c,e[11]=a):a=e[11];let f;e[12]!==r||e[13]!==l||e[14]!==a?(f=s.jsxs("div",{className:r,children:[l,a]}),e[12]=r,e[13]=l,e[14]=a,e[15]=f):f=e[15];let u;return e[16]!==m||e[17]!==d||e[18]!==f?(u=s.jsxs("div",{className:m,children:[d,f]}),e[16]=m,e[17]=d,e[18]=f,e[19]=u):u=e[19],u}function ke(e){return s.jsx(ve,{agent:e},e.id??"default")}function Te(e){return{id:e.id,title:e.title,description:e.description,icon:e.icon}}function ze(e){return e.id!==null&&!ge(e.id)}function Me(){const e=b.c(2);let t;e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(Y,{className:"h-5 w-40 mb-4"}),e[0]=t):t=e[0];let i;return e[1]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsxs("div",{className:"w-full max-w-[800px]",children:[t,s.jsx("div",{className:"grid grid-cols-3 sm:grid-cols-4 md:grid-cols-7 gap-2",children:Array.from({length:7}).map(Ie)})]}),e[1]=i):i=e[1],i}function Ie(e,t){return s.jsxs("div",{className:"flex flex-col items-center gap-3 p-2 self-stretch",children:[s.jsx(Y,{className:"size-6 rounded-md shrink-0"}),s.jsx(Y,{className:"h-4 w-full"})]},t)}function Pe(){const e=b.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(A.Suspense,{fallback:s.jsx(Me,{}),children:s.jsx(we,{})}),e[0]=t):t=e[0],t}function $e(){const e=new Date().getHours();return e>=5&&e<12?"Morning":e>=12&&e<17?"Afternoon":e>=17&&e<22?"Evening":"Night"}function Ve(){const e=b.c(61),{org:t}=ne(),{data:i}=oe.useSession(),{modelsConnections:p,isChatEmpty:r,activeThreadId:l,createThread:m,switchToThread:d,threads:n,selectedVirtualMcp:c}=Z();let o;if(e[0]!==l||e[1]!==n){let x;e[3]!==l?(x=re=>re.id===l,e[3]=l,e[4]=x):x=e[4],o=n.find(x),e[0]=l,e[1]=n,e[2]=o}else o=e[2];const a=o,[f,u]=A.useState(!1);let h;e[5]!==i?.user?.name?(h=i?.user?.name?.split(" ")[0]||"there",e[5]=i?.user?.name,e[6]=h):h=e[6];const j=h;let y;e[7]===Symbol.for("react.memo_cache_sentinel")?(y=$e(),e[7]=y):y=e[7];const le=y;let R;e[8]!==t.id?(R=je(t.id),e[8]=t.id,e[9]=R):R=e[9];const B=c??R;if(p.length===0){let x;return e[10]!==t?(x=s.jsx("div",{className:"flex flex-col size-full bg-background items-center justify-center",children:s.jsx(g.NoLlmBindingEmptyState,{org:t})}),e[10]=t,e[11]=x):x=e[11],x}let N;e[12]!==a?(N=a?.title&&s.jsx(ce,{text:a.title,className:"text-sm font-medium text-foreground"}),e[12]=a,e[13]=N):N=e[13];let _;e[14]!==N?(_=s.jsx(E.Header.Left,{className:"gap-2",children:N}),e[14]=N,e[15]=_):_=e[15];let S;e[16]!==m?(S=()=>m(),e[16]=m,e[17]=S):S=e[17];let L;e[18]===Symbol.for("react.memo_cache_sentinel")?(L=s.jsx(_e,{size:16}),e[18]=L):L=e[18];let v;e[19]!==r||e[20]!==S?(v=s.jsx(J,{asChild:!0,children:s.jsx(H,{type:"button",variant:"outline",size:"icon",className:"size-7 border border-input",onClick:S,disabled:r,"aria-label":"New chat",children:L})}),e[19]=r,e[20]=S,e[21]=v):v=e[21];let O;e[22]===Symbol.for("react.memo_cache_sentinel")?(O=s.jsx(Q,{children:"New chat"}),e[22]=O):O=e[22];let C;e[23]!==v?(C=s.jsxs(X,{children:[v,O]}),e[23]=v,e[24]=C):C=e[24];let D;e[25]===Symbol.for("react.memo_cache_sentinel")?(D=()=>u(!0),e[25]=D):D=e[25];let F;e[26]===Symbol.for("react.memo_cache_sentinel")?(F=s.jsxs(X,{children:[s.jsx(J,{asChild:!0,children:s.jsx(H,{type:"button",variant:"outline",size:"icon",className:"size-7 border border-input",onClick:D,"aria-label":"Chat history",children:s.jsx(me,{size:16})})}),s.jsx(Q,{children:"Chat history"})]}),e[26]=F):F=e[26];let W;e[27]===Symbol.for("react.memo_cache_sentinel")?(W=s.jsx(Ne,{size:16}),e[27]=W):W=e[27];let w;e[28]!==r?(w=s.jsx(J,{asChild:!0,children:s.jsx(H,{type:"button",variant:"outline",size:"icon",className:"size-7 border border-input",onClick:Ee,disabled:r,"aria-label":"Pin chat",children:W})}),e[28]=r,e[29]=w):w=e[29];let q;e[30]===Symbol.for("react.memo_cache_sentinel")?(q=s.jsx(Q,{children:"Pin chat"}),e[30]=q):q=e[30];let k;e[31]!==w?(k=s.jsxs(X,{children:[w,q]}),e[31]=w,e[32]=k):k=e[32];let G;e[33]===Symbol.for("react.memo_cache_sentinel")?(G=s.jsx(Se,{size:16}),e[33]=G):G=e[33];let T;e[34]!==r?(T=s.jsx(J,{asChild:!0,children:s.jsx(H,{type:"button",variant:"outline",size:"icon",className:"size-7 border border-input",onClick:Ae,disabled:r,"aria-label":"Share chat",children:G})}),e[34]=r,e[35]=T):T=e[35];let K;e[36]===Symbol.for("react.memo_cache_sentinel")?(K=s.jsx(Q,{children:"Share chat"}),e[36]=K):K=e[36];let z;e[37]!==T?(z=s.jsxs(X,{children:[T,K]}),e[37]=T,e[38]=z):z=e[38];let M;e[39]!==C||e[40]!==k||e[41]!==z?(M=s.jsxs(E.Header.Right,{className:"gap-1",children:[C,F,k,z]}),e[39]=C,e[40]=k,e[41]=z,e[42]=M):M=e[42];let I;e[43]!==M||e[44]!==_?(I=s.jsxs(E.Header,{className:"flex-none z-10 bg-background",children:[_,M]}),e[43]=M,e[44]=_,e[45]=I):I=e[45];let P;e[46]!==B||e[47]!==r||e[48]!==j?(P=r?s.jsxs("div",{className:"flex-1 min-h-0 flex flex-col items-center justify-center px-10 pb-32 pt-10",children:[s.jsxs("div",{className:"flex flex-col items-center gap-3 w-full max-w-[600px]",children:[s.jsx("div",{className:"flex justify-center",children:s.jsx(te,{icon:B.icon,name:B.title,size:"md",fallbackIcon:s.jsx(ie,{size:20}),className:"size-12 rounded-xl border border-stone-200/60 shadow-sm aspect-square transition-opacity duration-200"})}),s.jsxs("div",{className:"text-center",children:[s.jsxs("p",{className:"text-lg font-medium text-foreground",children:[le," ",j,","]}),s.jsx("p",{className:"text-base text-muted-foreground opacity-50 mb-0",children:"What are we building today?"})]}),s.jsx("div",{className:"w-full -mt-1",children:s.jsx(g.Input,{})}),s.jsx(g.IceBreakers,{className:"w-full"})]}),s.jsx("div",{className:"flex flex-col items-center w-full mt-4",children:s.jsx(Pe,{})})]}):s.jsxs(s.Fragment,{children:[s.jsx(g.Main,{children:s.jsx(g.Messages,{})}),s.jsx(g.Footer,{children:s.jsx(g.Input,{})})]}),e[46]=B,e[47]=r,e[48]=j,e[49]=P):P=e[49];let $;e[50]!==d?($=async x=>{await d(x),u(!1)},e[50]=d,e[51]=$):$=e[51];let V;e[52]!==l||e[53]!==f||e[54]!==$||e[55]!==n?(V=s.jsx(de,{open:f,onOpenChange:u,threads:n,activeThreadId:l,onThreadSelect:$}),e[52]=l,e[53]=f,e[54]=$,e[55]=n,e[56]=V):V=e[56];let U;return e[57]!==I||e[58]!==P||e[59]!==V?(U=s.jsxs(g,{className:"bg-background",children:[I,P,V]}),e[57]=I,e[58]=P,e[59]=V,e[60]=U):U=e[60],U}function Ae(){ee.info("Share feature coming soon")}function Ee(){ee.info("Pin feature coming soon")}function He(e){const t=b.c(14),{error:i,onRetry:p}=e,r=i?.message?.includes("401")||i?.message?.toLowerCase().includes("unauthorized");let l;t[0]===Symbol.for("react.memo_cache_sentinel")?(l=s.jsxs(E.Header,{className:"flex-none",children:[s.jsx(E.Header.Left,{className:"gap-2"}),s.jsx(E.Header.Right,{className:"gap-1"})]}),t[0]=l):l=t[0];let m;t[1]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx("div",{className:"bg-destructive/10 p-3 rounded-full mx-auto w-fit",children:s.jsx(fe,{className:"h-6 w-6 text-destructive"})}),t[1]=m):m=t[1];const d=r?"Unable to load models":"Something went wrong";let n;t[2]!==d?(n=s.jsx("h3",{className:"text-lg font-medium",children:d}),t[2]=d,t[3]=n):n=t[3];const c=r?"There was an authentication error while loading the models. This might be due to an expired session or invalid API key.":i?.message||"An unexpected error occurred";let o;t[4]!==c?(o=s.jsx("p",{className:"text-sm text-muted-foreground",children:c}),t[4]=c,t[5]=o):o=t[5];let a;t[6]!==n||t[7]!==o?(a=s.jsxs("div",{className:"space-y-2",children:[n,o]}),t[6]=n,t[7]=o,t[8]=a):a=t[8];let f;t[9]!==p?(f=s.jsx(H,{variant:"outline",onClick:p,children:"Try again"}),t[9]=p,t[10]=f):f=t[10];let u;return t[11]!==a||t[12]!==f?(u=s.jsxs(g,{className:"bg-background",children:[l,s.jsx("div",{className:"flex-1 flex flex-col items-center justify-center p-6 text-center",children:s.jsxs("div",{className:"max-w-sm space-y-4",children:[m,a,f]})})]}),t[11]=a,t[12]=f,t[13]=u):u=t[13],u}function Wt(){const e=b.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=s.jsx(ue,{fallback:Re,children:s.jsx(A.Suspense,{fallback:s.jsx(g.Skeleton,{className:"bg-background"}),children:s.jsx(Ve,{})})}),e[0]=t):t=e[0],t}function Re(e){const{error:t,resetError:i}=e;return s.jsx(He,{error:t,onRetry:i})}export{Wt as default};
@@ -1,5 +0,0 @@
1
- import{r as C,c as Ie,u as Qe,z as Ft,j as s,t as Te,bA as bt}from"./index-Dp8TDmPV.js";import{B as te,c as ze}from"./button-CJa3f3rL.js";import{n as ws}from"./Container-CS-v1KY-.js";import{t as Ss}from"./Settings01-GQQE44Uf.js";import{u as Ot}from"./useQuery-DCx9kDUK.js";import{u as dt}from"./useMutation-CkwG6xTN.js";import{u as _s}from"./useInfiniteQuery-R7yz1vmu.js";import{a as at,u as st,j as Is}from"./constants-LnQa4w9L.js";import{B as je}from"./badge-DEQawiWd.js";import{I as $e}from"./input-DNUbpYNz.js";import{a as jt,c as lt,D as vt,b as yt,h as Dt,i as Rt,g as Ts}from"./dropdown-menu-DC2vYQhY.js";import{e as Gt,a as Bt,b as pt,T as Pe,d as Vt,c as Ue}from"./table-C_SqJ2pz.js";import{a as Lt,T as ks}from"./toggle-group-Dz6DkmD4.js";import{u as Ds}from"./use-view-mode-B21E886q.js";import{i as qt}from"./DotsVertical-BAQdtXzK.js";import{i as Rs}from"./FilterLines-BqWnRXAG.js";import{i as Nt}from"./Globe01-Bxre7Rfj.js";import{i as ot}from"./Loading01-CXnHH69h.js";import{i as Qt}from"./SearchMd-vTjANW25.js";import{b as Ht,c as Kt,d as Yt,e as Wt,a as Zt,D as Jt}from"./dialog-Bzq7eXqS.js";import{i as mt}from"./AlertCircle-Uhm-vg87.js";import{i as Ct}from"./CheckCircle-BabFBaUr.js";import{n as Ls}from"./Download01-k9Xf7rXk.js";import{i as Et}from"./Upload01-C_yAut88.js";import{c as Es,b as Ps,d as Us,A as zs,g as Ms,e as $s,a as As,f as Fs}from"./alert-dialog-CqIibzn6.js";import{C as xt}from"./card-CsxzEYEk.js";import{s as wt}from"./Trash01-ULZyLlT5.js";import{L as Ee}from"./label-SUAIjh3i.js";import{n as Os,S as Xt,a as es,b as ts,c as ss,d as ht}from"./select-C2nUbKfi.js";import{S as Gs}from"./switch-B_mHCx3S.js";import{T as Pt}from"./textarea-CTzgIHFy.js";import{i as Bs}from"./ArrowLeft-DZdpcFcm.js";import{i as Vs}from"./ArrowRight-DDCJ7vCm.js";import{s as St}from"./RefreshCcw01-h4iMlxqc.js";import{i as qs}from"./X-CMKSGw1c.js";import{t as rs}from"./ChevronDown-C42nqF2a.js";import{h as Qs,e as Hs}from"./use-connection-Bpj__KJl.js";import{b as Ks,P as Ys,a as Ws}from"./popover-NmdUTNcA.js";import{i as Zs,a as Js}from"./Save01-B2I-fdos.js";import"./infiniteQueryObserver-D_e-0DLm.js";import"./Check-RSjbQD0O.js";import"./ChevronRight-CYPNNnez.js";import"./use-mobile-BhG5mqie.js";import"./index-DBhC1Bw_.js";const is=({size:t=24,color:e="currentColor",...r})=>C.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...r},C.createElement("path",{d:"M12.5 3H7.8c-1.68 0-2.52 0-3.162.327a3 3 0 0 0-1.311 1.311C3 5.28 3 6.12 3 7.8v8.4c0 1.68 0 2.52.327 3.162a3 3 0 0 0 1.311 1.311C5.28 21 6.12 21 7.8 21H17c.93 0 1.395 0 1.776-.102a3 3 0 0 0 2.122-2.122C21 18.395 21 17.93 21 17m-2-9V2m-3 3h6M10.5 8.5a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4.49 3.418-8.459 7.69c-.476.433-.714.649-.735.836a.5.5 0 0 0 .167.431C6.105 21 6.426 21 7.07 21h9.387c1.44 0 2.159 0 2.724-.242a3 3 0 0 0 1.578-1.578c.242-.565.242-1.285.242-2.724 0-.484 0-.726-.053-.952a2.001 2.001 0 0 0-.374-.778c-.143-.182-.332-.333-.71-.636l-2.797-2.237c-.379-.303-.568-.454-.776-.508a1 1 0 0 0-.557.018c-.205.066-.384.23-.743.555Z"}));is.displayName="ImagePlus";const _t=({size:t=24,color:e="currentColor",...r})=>C.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...r},C.createElement("path",{d:"m12.708 18.364-1.415 1.414a5 5 0 1 1-7.07-7.07l1.413-1.415m12.728 1.414 1.415-1.414a5 5 0 0 0-7.071-7.071l-1.415 1.414M8.5 15.5l7-7"}));_t.displayName="Link01";const ns=({size:t=24,color:e="currentColor",...r})=>C.createElement("svg",{viewBox:"0 0 24 24",width:t,height:t,stroke:e,strokeWidth:"2",fill:"none",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",...r},C.createElement("path",{d:"m6 6 4.5 4.5M6 6H3L2 3l1-1 3 1v3Zm13.259-3.259-2.628 2.628c-.396.396-.594.594-.668.822a1 1 0 0 0 0 .618c.074.228.272.426.668.822l.238.238c.396.396.594.594.822.668a1 1 0 0 0 .618 0c.228-.074.426-.272.822-.668L21.59 5.41a5.5 5.5 0 0 1-6.16 7.485c-.485-.096-.729-.144-.876-.13a.836.836 0 0 0-.373.114c-.13.07-.261.201-.523.463L6.5 20.5a2.121 2.121 0 0 1-3-3l7.157-7.157c.262-.262.393-.393.463-.524a.836.836 0 0 0 .113-.372c.015-.148-.033-.39-.129-.877a5.5 5.5 0 0 1 8.155-5.83ZM12 15l5.5 5.5a2.121 2.121 0 0 0 3-3l-4.525-4.525a5.475 5.475 0 0 1-.934-.17c-.39-.107-.816-.03-1.101.255L12 15Z"}));ns.displayName="Tool02";const Me={all:["private-registry"],items:()=>[...Me.all,"items"],itemsList:(t,e,r,i)=>[...Me.items(),"list",{search:t,tags:e,categories:r,limit:i}],item:t=>[...Me.items(),"item",t],filters:()=>[...Me.all,"filters"],registryConfig:()=>[...Me.all,"registry-config"],registryConfigByPlugin:(t,e)=>[...Me.registryConfig(),t,e]},Xs=24;function er(t){return t.trim()}async function qe(t,e,r){const i=await t.callTool({name:e,arguments:r});if(!i||typeof i!="object")throw new Error(`Invalid tool response for ${e}`);if(i.isError){const n=i.content?.find(l=>l.type==="text")?.text??`Tool ${e} returned an error`;throw new Error(n)}return i.structuredContent??i}function ls(t){const e=Ie.c(19),{org:r}=Qe();let i;e[0]!==r.id?(i={connectionId:at,orgId:r.id},e[0]=r.id,e[1]=i):i=e[1];const n=st(i);let l,m,o,a;e[2]!==t.categories||e[3]!==t.limit||e[4]!==t.search||e[5]!==t.tags?(m=er(t.search),l=t.limit??Xs,a=_s,o=Me.itemsList(m,t.tags,t.categories,l),e[2]=t.categories,e[3]=t.limit,e[4]=t.search,e[5]=t.tags,e[6]=l,e[7]=m,e[8]=o,e[9]=a):(l=e[6],m=e[7],o=e[8],a=e[9]);let u;e[10]!==n||e[11]!==l||e[12]!==t.categories||e[13]!==t.tags||e[14]!==m?(u=async h=>{const{pageParam:p}=h,x=m.length>0?{operator:"or",conditions:[{field:["title"],operator:"contains",value:m},{field:["description"],operator:"contains",value:m},{field:["id"],operator:"contains",value:m},{field:["server","name"],operator:"contains",value:m}]}:void 0;return qe(n,"COLLECTION_REGISTRY_APP_LIST",{cursor:p,limit:l,tags:t.tags.length?t.tags:void 0,categories:t.categories.length?t.categories:void 0,where:x})},e[10]=n,e[11]=l,e[12]=t.categories,e[13]=t.tags,e[14]=m,e[15]=u):u=e[15];let c;return e[16]!==o||e[17]!==u?(c={queryKey:o,queryFn:u,initialPageParam:void 0,getNextPageParam:tr,staleTime:3e4},e[16]=o,e[17]=u,e[18]=c):c=e[18],a(c)}function tr(t){return t.nextCursor}function sr(){const t=Ie.c(8),{org:e}=Qe();let r;t[0]!==e.id?(r={connectionId:at,orgId:e.id},t[0]=e.id,t[1]=r):r=t[1];const i=st(r);let n;t[2]===Symbol.for("react.memo_cache_sentinel")?(n=Me.filters(),t[2]=n):n=t[2];let l;t[3]!==i?(l=async()=>qe(i,"COLLECTION_REGISTRY_APP_FILTERS",{}),t[3]=i,t[4]=l):l=t[4];let m;t[5]===Symbol.for("react.memo_cache_sentinel")?(m={tags:[],categories:[]},t[5]=m):m=t[5];let o;return t[6]!==l?(o={queryKey:n,queryFn:l,placeholderData:m,staleTime:6e4},t[6]=l,t[7]=o):o=t[7],Ot(o)}function rr(){const t=Ie.c(29),e=Ft(),{org:r}=Qe();let i;t[0]!==r.id?(i={connectionId:at,orgId:r.id},t[0]=r.id,t[1]=i):i=t[1];const n=st(i);let l;t[2]!==e?(l=async()=>{await Promise.all([e.invalidateQueries({queryKey:Me.items()}),e.invalidateQueries({queryKey:Me.filters()})])},t[2]=e,t[3]=l):l=t[3];const m=l;let o;t[4]!==n?(o=async b=>(await qe(n,"COLLECTION_REGISTRY_APP_CREATE",{data:b})).item,t[4]=n,t[5]=o):o=t[5];let a;t[6]!==m||t[7]!==o?(a={mutationFn:o,onSuccess:m},t[6]=m,t[7]=o,t[8]=a):a=t[8];const u=dt(a);let c;t[9]!==n?(c=async b=>{const{id:D,data:w}=b;return(await qe(n,"COLLECTION_REGISTRY_APP_UPDATE",{id:D,data:w})).item},t[9]=n,t[10]=c):c=t[10];let h;t[11]!==m||t[12]!==c?(h={mutationFn:c,onSuccess:m},t[11]=m,t[12]=c,t[13]=h):h=t[13];const p=dt(h);let x;t[14]!==n?(x=async b=>(await qe(n,"COLLECTION_REGISTRY_APP_DELETE",{id:b})).item,t[14]=n,t[15]=x):x=t[15];let d;t[16]!==m||t[17]!==x?(d={mutationFn:x,onSuccess:m},t[16]=m,t[17]=x,t[18]=d):d=t[18];const v=dt(d);let g;t[19]!==n?(g=async b=>qe(n,"COLLECTION_REGISTRY_APP_BULK_CREATE",{items:b}),t[19]=n,t[20]=g):g=t[20];let N;t[21]!==m||t[22]!==g?(N={mutationFn:g,onSuccess:m},t[21]=m,t[22]=g,t[23]=N):N=t[23];const S=dt(N);let y;return t[24]!==S||t[25]!==u||t[26]!==v||t[27]!==p?(y={createMutation:u,updateMutation:p,deleteMutation:v,bulkCreateMutation:S},t[24]=S,t[25]=u,t[26]=v,t[27]=p,t[28]=y):y=t[28],y}function It(t){const e=Ie.c(31),{org:r,project:i}=Qe();let n;e[0]!==r.id?(n={connectionId:at,orgId:r.id},e[0]=r.id,e[1]=n):n=e[1];const l=st(n),m=Ft();let o;e[2]!==t||e[3]!==i.id?(o=Me.registryConfigByPlugin(i.id??"",t),e[2]=t,e[3]=i.id,e[4]=o):o=e[4];let a;e[5]!==l||e[6]!==t||e[7]!==i.id?(a=async()=>qe(l,"PROJECT_PLUGIN_CONFIG_GET",{projectId:i.id,pluginId:t}),e[5]=l,e[6]=t,e[7]=i.id,e[8]=a):a=e[8];const u=!!i.id;let c;e[9]!==o||e[10]!==a||e[11]!==u?(c={queryKey:o,queryFn:a,enabled:u,staleTime:6e4},e[9]=o,e[10]=a,e[11]=u,e[12]=c):c=e[12];const h=Ot(c);let p;e[13]!==l||e[14]!==t||e[15]!==i.id?(p=async D=>{const z=(await qe(l,"PROJECT_PLUGIN_CONFIG_GET",{projectId:i.id,pluginId:t}))?.config?.settings??{};return qe(l,"PROJECT_PLUGIN_CONFIG_UPDATE",{projectId:i.id,pluginId:t,settings:{...z,...D}})},e[13]=l,e[14]=t,e[15]=i.id,e[16]=p):p=e[16];let x;e[17]!==t||e[18]!==i.id||e[19]!==m?(x=async()=>{await m.invalidateQueries({queryKey:Me.registryConfigByPlugin(i.id??"",t)})},e[17]=t,e[18]=i.id,e[19]=m,e[20]=x):x=e[20];let d;e[21]!==p||e[22]!==x?(d={mutationFn:p,onSuccess:x},e[21]=p,e[22]=x,e[23]=d):d=e[23];const v=dt(d),g=h.data?.config?.settings?.registryName??"Private Registry",N=h.data?.config?.settings?.registryIcon??"",S=h.data?.config?.settings?.llmConnectionId??"",y=h.data?.config?.settings?.llmModelId??"";let b;return e[24]!==h.isLoading||e[25]!==N||e[26]!==S||e[27]!==y||e[28]!==g||e[29]!==v?(b={registryName:g,registryIcon:N,registryLLMConnectionId:S,registryLLMModelId:y,isLoadingConfig:h.isLoading,saveRegistryConfigMutation:v},e[24]=h.isLoading,e[25]=N,e[26]=S,e[27]=y,e[28]=g,e[29]=v,e[30]=b):b=e[30],b}function Ut(t){return t?t.split(/[;|]/).map(e=>e.trim()).filter(Boolean):[]}function zt(t){const e=[];let r="",i=!1;for(let n=0;n<t.length;n+=1){const l=t[n],m=t[n+1];if(l==='"'){i&&m==='"'?(r+='"',n+=1):i=!i;continue}if(l===","&&!i){e.push(r.trim()),r="";continue}r+=l}return e.push(r.trim()),e}const ir=["id","title"],nr=["id","title","description","remote_url","remote_type","tags","categories","is_public"];function lr(t){const e=t.split(/\r?\n/).map(u=>u.trim()).filter(Boolean);if(e.length<2)return{items:[],warnings:[{line:0,message:"CSV must have a header row and at least one data row"}],skipped:0};const r=zt(e[0]??""),i=new Map,n=[];r.forEach((u,c)=>{const h=u.toLowerCase().trim();h&&i.set(h,c)});for(const u of ir)i.has(u)||n.push({line:1,message:`Missing required column: "${u}"`});for(const u of r){const c=u.toLowerCase().trim();c&&!nr.includes(c)&&n.push({line:1,message:`Unknown column "${u}" will be ignored`})}if(!i.has("id")||!i.has("title"))return{items:[],warnings:n,skipped:0};const l=(u,c)=>{const h=i.get(c);return typeof h=="number"?u[h]??"":""},m=[],o=new Set;let a=0;for(let u=1;u<e.length;u+=1){const c=zt(e[u]??""),h=l(c,"id").trim(),p=l(c,"title").trim();if(!h){n.push({line:u+1,message:"Missing id — row skipped"}),a+=1;continue}if(!p){n.push({line:u+1,message:`Missing title for id="${h}" — row skipped`}),a+=1;continue}if(o.has(h)){n.push({line:u+1,message:`Duplicate id="${h}" — row skipped`}),a+=1;continue}o.add(h);const x=l(c,"description").trim(),d=l(c,"remote_url").trim(),g=l(c,"remote_type").trim().toLowerCase()==="sse"?"sse":"http",N=Ut(l(c,"tags")),S=Ut(l(c,"categories")),y=l(c,"is_public").trim().toLowerCase(),b=y==="true"||y==="1"||y==="yes";m.push({id:h,title:p,description:x||null,is_public:b,_meta:{"mcp.mesh":{...N.length>0?{tags:N}:{},...S.length>0?{categories:S}:{}}},server:{name:h,title:p,description:x||void 0,remotes:d?[{type:g,url:d}]:[]}})}return{items:m,warnings:n,skipped:a}}const or=`id,title,description,remote_url,remote_type,tags,categories,is_public
2
- my-mcp-server,My MCP Server,A useful MCP server,https://example.com/mcp,http,ai|tools,productivity,true
3
- another-server,Another Server,Another useful server,https://example2.com/mcp,http,data|analytics,data-processing,false`;function ar(){const t=new Blob([or],{type:"text/csv;charset=utf-8"}),e=URL.createObjectURL(t),r=document.createElement("a");r.href=e,r.download="registry-import-template.csv",r.click(),URL.revokeObjectURL(e)}function cr(t){const e=Ie.c(63),{open:r,onOpenChange:i,isImporting:n,onImport:l}=t,m=n===void 0?!1:n,[o,a]=C.useState(null),[u,c]=C.useState(null),[h,p]=C.useState(null),x=C.useRef(null);let d;e[0]!==i?(d=le=>{i(le),le||(a(null),c(null),p(null),x.current&&(x.current.value=""))},e[0]=i,e[1]=d):d=e[1];const v=d;let g;e[2]===Symbol.for("react.memo_cache_sentinel")?(g=async le=>{if(!le)return;p(le.name),c(null);const me=await le.text();a(lr(me))},e[2]=g):g=e[2];const N=g;let S;e[3]!==l||e[4]!==o?(S=async()=>{if(!o?.items.length)return;const le=await l(o.items);c(le)},e[3]=l,e[4]=o,e[5]=S):S=e[5];const y=S;let b;e[6]!==o?.items?(b=o?.items??[],e[6]=o?.items,e[7]=b):b=e[7];const D=b;let w;e[8]!==o?.warnings?(w=o?.warnings??[],e[8]=o?.warnings,e[9]=w):w=e[9];const z=w;let $;e[10]!==z?($=z.some(xr),e[10]=z,e[11]=$):$=e[11];const E=$,T=u!==null;let _;e[12]===Symbol.for("react.memo_cache_sentinel")?(_=s.jsxs(Ht,{children:[s.jsx(Kt,{children:"Import MCP Servers from CSV"}),s.jsx(Yt,{children:"Upload a CSV file to bulk-import MCP servers into the registry."})]}),e[12]=_):_=e[12];let I;e[13]===Symbol.for("react.memo_cache_sentinel")?(I=()=>x.current?.click(),e[13]=I):I=e[13];let M;e[14]===Symbol.for("react.memo_cache_sentinel")?(M=s.jsx(Et,{size:14}),e[14]=M):M=e[14];const k=h?"Change file":"Choose CSV file";let f;e[15]!==m||e[16]!==k?(f=s.jsxs(te,{variant:"outline",size:"sm",className:"gap-1.5",onClick:I,disabled:m,children:[M,k]}),e[15]=m,e[16]=k,e[17]=f):f=e[17];let R;e[18]===Symbol.for("react.memo_cache_sentinel")?(R=s.jsx("input",{ref:x,type:"file",accept:".csv,text/csv",className:"hidden",onChange:le=>N(le.target.files?.[0]??null)}),e[18]=R):R=e[18];let A;e[19]!==h?(A=h&&s.jsx("span",{className:"text-sm text-muted-foreground truncate",children:h}),e[19]=h,e[20]=A):A=e[20];let B;e[21]===Symbol.for("react.memo_cache_sentinel")?(B=s.jsx("div",{className:"flex-1"}),e[21]=B):B=e[21];let K;e[22]===Symbol.for("react.memo_cache_sentinel")?(K=s.jsxs(te,{variant:"ghost",size:"sm",className:"gap-1.5 text-xs text-muted-foreground",onClick:ar,children:[s.jsx(Ls,{size:14}),"Download template"]}),e[22]=K):K=e[22];let F;e[23]!==f||e[24]!==A?(F=s.jsxs("div",{className:"flex items-center gap-3",children:[f,R,A,B,K]}),e[23]=f,e[24]=A,e[25]=F):F=e[25];let O;e[26]!==z?(O=z.length>0&&s.jsx("div",{className:"rounded-lg border border-yellow-200 bg-yellow-50 dark:border-yellow-900 dark:bg-yellow-950/30 p-3 grid gap-1",children:z.map(ur)}),e[26]=z,e[27]=O):O=e[27];let G;e[28]!==D||e[29]!==o?(G=D.length>0&&s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:"text-sm font-medium",children:"Preview"}),s.jsxs(je,{variant:"secondary",children:[D.length," items"]}),o?.skipped?s.jsxs(je,{variant:"outline",className:"text-yellow-600",children:[o.skipped," skipped"]}):null]}),s.jsx("div",{className:"border rounded-lg overflow-hidden",children:s.jsx("div",{className:"max-h-[300px] overflow-y-auto",children:s.jsxs(Gt,{children:[s.jsx(Bt,{children:s.jsxs(pt,{children:[s.jsx(Pe,{className:"w-[140px]",children:"ID"}),s.jsx(Pe,{children:"Title"}),s.jsx(Pe,{children:"Remote URL"}),s.jsx(Pe,{className:"w-[80px] text-center",children:"Public"}),s.jsx(Pe,{children:"Tags"})]})}),s.jsx(Vt,{children:D.map(mr)})]})})})]}),e[28]=D,e[29]=o,e[30]=G):G=e[30];let Y;e[31]!==u?(Y=u&&s.jsxs("div",{className:"rounded-lg border p-3 grid gap-1.5",children:[s.jsxs("div",{className:"flex items-center gap-2 text-sm font-medium",children:[s.jsx(Ct,{size:16,className:"text-emerald-600"}),"Imported ",u.created," item(s) successfully"]}),u.errors.length>0&&s.jsx("div",{className:"grid gap-1 mt-1",children:u.errors.map(dr)})]}),e[31]=u,e[32]=Y):Y=e[32];let V;e[33]!==T||e[34]!==o?(V=!o&&!T&&s.jsxs("div",{className:"flex flex-col items-center justify-center py-8 text-center",children:[s.jsx(Et,{size:32,className:"text-muted-foreground/40 mb-3"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Choose a CSV file or download the template to get started."}),s.jsxs("p",{className:"text-xs text-muted-foreground/70 mt-1",children:["Required columns: ",s.jsx("code",{children:"id"}),", ",s.jsx("code",{children:"title"}),". Optional:"," ",s.jsx("code",{children:"description"}),", ",s.jsx("code",{children:"remote_url"}),","," ",s.jsx("code",{children:"remote_type"}),", ",s.jsx("code",{children:"tags"}),","," ",s.jsx("code",{children:"categories"}),", ",s.jsx("code",{children:"is_public"}),"."]}),s.jsxs("p",{className:"text-xs text-muted-foreground/70 mt-1",children:["Use ",s.jsx("code",{children:"|"})," or ",s.jsx("code",{children:";"})," to separate multiple tags/categories within a cell."]})]}),e[33]=T,e[34]=o,e[35]=V):V=e[35];let X;e[36]!==F||e[37]!==O||e[38]!==G||e[39]!==Y||e[40]!==V?(X=s.jsxs("div",{className:"flex-1 overflow-y-auto grid gap-4 pr-1",children:[F,O,G,Y,V]}),e[36]=F,e[37]=O,e[38]=G,e[39]=Y,e[40]=V,e[41]=X):X=e[41];let se;e[42]!==v?(se=()=>v(!1),e[42]=v,e[43]=se):se=e[43];const re=T?"Done":"Cancel";let q;e[44]!==se||e[45]!==re?(q=s.jsx(te,{variant:"outline",onClick:se,children:re}),e[44]=se,e[45]=re,e[46]=q):q=e[46];let ne;e[47]!==y||e[48]!==E||e[49]!==T||e[50]!==m||e[51]!==D.length?(ne=!T&&s.jsx(te,{onClick:y,disabled:m||D.length===0||E,children:m?"Importing...":`Import ${D.length} item(s)`}),e[47]=y,e[48]=E,e[49]=T,e[50]=m,e[51]=D.length,e[52]=ne):ne=e[52];let Q;e[53]!==q||e[54]!==ne?(Q=s.jsxs(Wt,{className:"gap-2 sm:gap-0",children:[q,ne]}),e[53]=q,e[54]=ne,e[55]=Q):Q=e[55];let W;e[56]!==X||e[57]!==Q?(W=s.jsxs(Zt,{className:"sm:max-w-3xl max-h-[85vh] flex flex-col",children:[_,X,Q]}),e[56]=X,e[57]=Q,e[58]=W):W=e[58];let Z;return e[59]!==v||e[60]!==r||e[61]!==W?(Z=s.jsx(Jt,{open:r,onOpenChange:v,children:W}),e[59]=v,e[60]=r,e[61]=W,e[62]=Z):Z=e[62],Z}function dr(t){return s.jsxs("p",{className:"text-xs text-destructive flex items-start gap-1.5",children:[s.jsx(mt,{size:12,className:"shrink-0 mt-0.5"}),s.jsxs("span",{children:[s.jsx("span",{className:"font-mono",children:t.id}),": ",t.error]})]},t.id)}function mr(t){return s.jsxs(pt,{children:[s.jsx(Ue,{className:"font-mono text-xs",children:t.id}),s.jsx(Ue,{className:"text-sm",children:t.title}),s.jsx(Ue,{className:"text-xs text-muted-foreground max-w-[200px] truncate",children:t.server.remotes?.[0]?.url??s.jsx("span",{className:"italic",children:"none"})}),s.jsx(Ue,{className:"text-center",children:t.is_public?s.jsx(je,{variant:"secondary",className:"text-[10px] bg-emerald-100 text-emerald-700 dark:bg-emerald-950 dark:text-emerald-400",children:"Yes"}):s.jsx("span",{className:"text-xs text-muted-foreground",children:"No"})}),s.jsx(Ue,{className:"text-xs text-muted-foreground",children:(t._meta?.["mcp.mesh"]?.tags??[]).join(", ")||"-"})]},t.id)}function ur(t,e){return s.jsxs("p",{className:"text-xs text-yellow-700 dark:text-yellow-400 flex items-start gap-1.5",children:[s.jsx(mt,{size:12,className:"shrink-0 mt-0.5"}),s.jsxs("span",{children:[t.line>0&&s.jsxs("span",{className:"font-mono text-[10px] mr-1",children:["Line ",t.line,":"]}),t.message]})]},`${t.line}-${e}`)}function xr(t){return t.message.startsWith("Missing required column:")}function hr(t){const e=Ie.c(19),{open:r,onOpenChange:i,title:n,isDeleting:l,onConfirm:m}=t,o=l===void 0?!1:l;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=s.jsx(Es,{children:"Delete registry item?"}),e[0]=a):a=e[0];let u;e[1]!==n?(u=s.jsxs(Ps,{children:[a,s.jsxs(Us,{children:["This action cannot be undone. Item ",s.jsx("strong",{children:n})," will be permanently removed from this private registry."]})]}),e[1]=n,e[2]=u):u=e[2];let c;e[3]!==o?(c=s.jsx(zs,{disabled:o,children:"Cancel"}),e[3]=o,e[4]=c):c=e[4];const h=o?"Deleting...":"Delete";let p;e[5]!==o||e[6]!==m||e[7]!==h?(p=s.jsx(Ms,{disabled:o,onClick:m,children:h}),e[5]=o,e[6]=m,e[7]=h,e[8]=p):p=e[8];let x;e[9]!==c||e[10]!==p?(x=s.jsxs($s,{children:[c,p]}),e[9]=c,e[10]=p,e[11]=x):x=e[11];let d;e[12]!==u||e[13]!==x?(d=s.jsxs(As,{children:[u,x]}),e[12]=u,e[13]=x,e[14]=d):d=e[14];let v;return e[15]!==i||e[16]!==r||e[17]!==d?(v=s.jsx(Fs,{open:r,onOpenChange:i,children:d}),e[15]=i,e[16]=r,e[17]=d,e[18]=v):v=e[18],v}function pr(t){const[e]=t.id.split("/");return e??"provider"}function gr(t){return t._meta?.["mcp.mesh"]?.tags??[]}function fr(t){return t._meta?.["mcp.mesh"]?.categories??[]}function jr(t){return t.server?.icons?.[0]?.src??null}function vr(t){const e=Ie.c(56),{item:r,onEdit:i,onDelete:n}=t;let l;e[0]!==r?(l=jr(r),e[0]=r,e[1]=l):l=e[1];const m=l;let o;e[2]!==r?(o=[...gr(r),...fr(r)],e[2]=r,e[3]=o):o=e[3];const a=o;let u;e[4]!==a?(u=a.slice(0,3),e[4]=a,e[5]=u):u=e[5];const c=u,h=Math.max(0,a.length-c.length);let p;e[6]!==m||e[7]!==r.title?(p=s.jsx("div",{className:"size-10 rounded-lg border border-border bg-muted/20 overflow-hidden shrink-0 flex items-center justify-center",children:m?s.jsx("img",{src:m,alt:r.title,className:"h-full w-full object-cover",loading:"lazy"}):s.jsx("span",{className:"text-xs font-semibold text-muted-foreground",children:r.title.charAt(0).toUpperCase()})}),e[6]=m,e[7]=r.title,e[8]=p):p=e[8];let x;e[9]!==r.title?(x=s.jsx("p",{className:"font-medium truncate",children:r.title}),e[9]=r.title,e[10]=x):x=e[10];let d;e[11]!==r?(d=pr(r),e[11]=r,e[12]=d):d=e[12];let v;e[13]!==d?(v=s.jsx("p",{className:"text-xs text-muted-foreground truncate",children:d}),e[13]=d,e[14]=v):v=e[14];let g;e[15]!==r.is_public?(g=r.is_public?s.jsxs(je,{variant:"default",className:"gap-1",children:[s.jsx(Nt,{size:10}),"Public"]}):s.jsx(je,{variant:"secondary",children:"Private"}),e[15]=r.is_public,e[16]=g):g=e[16];let N;e[17]!==v||e[18]!==g?(N=s.jsxs("div",{className:"flex items-center gap-2",children:[v,g]}),e[17]=v,e[18]=g,e[19]=N):N=e[19];let S;e[20]!==x||e[21]!==N?(S=s.jsxs("div",{className:"min-w-0 flex-1",children:[x,N]}),e[20]=x,e[21]=N,e[22]=S):S=e[22];let y;e[23]!==S||e[24]!==p?(y=s.jsxs("div",{className:"flex items-center gap-3 min-w-0",children:[p,S]}),e[23]=S,e[24]=p,e[25]=y):y=e[25];let b;e[26]===Symbol.for("react.memo_cache_sentinel")?(b=s.jsx(jt,{asChild:!0,children:s.jsx(te,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",children:s.jsx(qt,{size:18})})}),e[26]=b):b=e[26];let D;e[27]!==r||e[28]!==i?(D=s.jsx(lt,{onClick:()=>i(r),children:"Edit"}),e[27]=r,e[28]=i,e[29]=D):D=e[29];let w;e[30]!==r||e[31]!==n?(w=()=>n(r),e[30]=r,e[31]=n,e[32]=w):w=e[32];let z;e[33]===Symbol.for("react.memo_cache_sentinel")?(z=s.jsx(wt,{size:14}),e[33]=z):z=e[33];let $;e[34]!==w?($=s.jsxs(lt,{variant:"destructive",onClick:w,children:[z,"Delete"]}),e[34]=w,e[35]=$):$=e[35];let E;e[36]!==D||e[37]!==$?(E=s.jsxs(vt,{children:[b,s.jsxs(yt,{align:"end",children:[D,$]})]}),e[36]=D,e[37]=$,e[38]=E):E=e[38];let T;e[39]!==y||e[40]!==E?(T=s.jsxs("div",{className:"flex items-start justify-between gap-3",children:[y,E]}),e[39]=y,e[40]=E,e[41]=T):T=e[41];const _=r._meta?.["mcp.mesh"]?.short_description||r.description||r.server.description||"No description provided.";let I;e[42]!==_?(I=s.jsx("p",{className:"text-sm text-muted-foreground line-clamp-2 min-h-10",children:_}),e[42]=_,e[43]=I):I=e[43];let M;e[44]!==r.id||e[45]!==c?(M=c.map(A=>s.jsx(je,{variant:"secondary",children:A},`${r.id}-badge-${A}`)),e[44]=r.id,e[45]=c,e[46]=M):M=e[46];let k;e[47]!==h?(k=h>0&&s.jsxs(je,{variant:"outline",children:["+",h]}),e[47]=h,e[48]=k):k=e[48];let f;e[49]!==M||e[50]!==k?(f=s.jsxs("div",{className:"flex flex-wrap gap-1",children:[M,k]}),e[49]=M,e[50]=k,e[51]=f):f=e[51];let R;return e[52]!==T||e[53]!==I||e[54]!==f?(R=s.jsxs(xt,{className:"p-4 gap-4 transition-colors hover:bg-muted/50",children:[T,I,f]}),e[52]=T,e[53]=I,e[54]=f,e[55]=R):R=e[55],R}function os(t){const e=Ie.c(27),{value:r,onChange:i,onFileUpload:n,error:l,isUploading:m}=t,o=m===void 0?!1:m,[a,u]=C.useState(!1),[c,h]=C.useState(!1),p=C.useRef(null);let x;e[0]!==o?(x=_=>{_.preventDefault(),o||u(!0)},e[0]=o,e[1]=x):x=e[1];const d=x;let v;e[2]===Symbol.for("react.memo_cache_sentinel")?(v=_=>{_.preventDefault(),u(!1)},e[2]=v):v=e[2];const g=v;let N;e[3]!==o||e[4]!==n?(N=async _=>{if(_.preventDefault(),u(!1),o)return;const I=_.dataTransfer.files[0];I&&await n(I)},e[3]=o,e[4]=n,e[5]=N):N=e[5];const S=N;let y;e[6]!==o||e[7]!==n?(y=async _=>{const I=_.target.files?.[0];I&&!o&&await n(I),_.target.value=""},e[6]=o,e[7]=n,e[8]=y):y=e[8];const b=y,D=r.length>0;let w;e[9]===Symbol.for("react.memo_cache_sentinel")?(w=s.jsx(Ee,{children:"Image"}),e[9]=w):w=e[9];let z;e[10]!==d||e[11]!==S||e[12]!==D||e[13]!==a||e[14]!==o||e[15]!==i||e[16]!==c||e[17]!==r?(z=D?s.jsx("div",{className:"relative group min-h-[180px] rounded-xl border border-border overflow-hidden bg-muted/10",children:s.jsxs("div",{className:"flex items-center gap-3 p-3 h-full",children:[s.jsx("div",{className:"size-20 rounded-lg border border-border bg-muted/20 overflow-hidden shrink-0",children:s.jsx("img",{src:r,alt:"Preview",className:"w-full h-full object-cover"})}),s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("p",{className:"text-xs text-muted-foreground truncate",children:r}),s.jsxs("div",{className:"flex items-center gap-2 mt-2",children:[s.jsxs(te,{type:"button",variant:"outline",size:"sm",className:"h-7 text-xs gap-1.5",onClick:()=>p.current?.click(),disabled:o,children:[s.jsx(St,{className:"size-3"}),"Change"]}),s.jsxs(te,{type:"button",variant:"outline",size:"sm",className:"h-7 text-xs gap-1.5 text-destructive hover:text-destructive",onClick:()=>{i(""),h(!1)},disabled:o,children:[s.jsx(wt,{className:"size-3"}),"Remove"]})]})]})]})}):o?s.jsxs("div",{className:"relative min-h-[180px] rounded-xl border border-border bg-muted/10 flex flex-col items-center justify-center gap-3",children:[s.jsx(ot,{className:"size-8 animate-spin text-muted-foreground"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Uploading image..."})]}):s.jsxs("div",{className:ze("relative min-h-[180px] rounded-xl border-2 border-dashed transition-colors cursor-pointer flex flex-col",a?"border-primary bg-primary/5":"border-border hover:border-muted-foreground/40 hover:bg-muted/30"),onDragOver:d,onDragLeave:g,onDrop:S,onClick:()=>p.current?.click(),children:[s.jsxs("div",{className:"flex flex-col items-center justify-center gap-2 py-6 px-4 flex-1",children:[s.jsx("div",{className:ze("size-10 rounded-lg flex items-center justify-center transition-colors",a?"bg-primary/10 text-primary":"bg-muted/50 text-muted-foreground"),children:s.jsx(is,{size:20})}),s.jsxs("div",{className:"text-center",children:[s.jsx("p",{className:"text-sm font-medium text-foreground",children:a?"Drop image here":"Click or drag to upload"}),s.jsx("p",{className:"text-xs text-muted-foreground mt-0.5",children:"PNG, JPG, SVG up to 2MB"})]})]}),c?s.jsx("div",{className:"border-t border-border px-3 py-2",onClick:yr,children:s.jsx($e,{placeholder:"https://example.com/logo.png",value:r,className:"text-xs h-8",onChange:_=>i(_.target.value)})}):s.jsx("div",{className:"border-t border-border px-4 py-2",children:s.jsxs("button",{type:"button",className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors w-full justify-center",onClick:_=>{_.stopPropagation(),h(!0)},children:[s.jsx(_t,{className:"size-3"}),"Or paste an image URL"]})})]}),e[10]=d,e[11]=S,e[12]=D,e[13]=a,e[14]=o,e[15]=i,e[16]=c,e[17]=r,e[18]=z):z=e[18];let $;e[19]!==b?($=s.jsx("input",{ref:p,type:"file",accept:"image/*",className:"hidden",onChange:b}),e[19]=b,e[20]=$):$=e[20];let E;e[21]!==l?(E=l&&s.jsx("p",{className:"text-xs text-destructive",children:l}),e[21]=l,e[22]=E):E=e[22];let T;return e[23]!==z||e[24]!==$||e[25]!==E?(T=s.jsxs("div",{className:"grid gap-1.5",children:[w,z,$,E]}),e[23]=z,e[24]=$,e[25]=E,e[26]=T):T=e[26],T}function yr(t){return t.stopPropagation()}function as(){const[t,e]=C.useState("idle"),[r,i]=C.useState(null),{org:n}=Qe(),l=st({connectionId:at,orgId:n.id});return{discover:async(a,u)=>{if(!a)return null;e("loading"),i(null);try{const c=await l.callTool({name:"REGISTRY_DISCOVER_TOOLS",arguments:{url:a,type:u==="sse"?"sse":"http"}}),h=c.structuredContent??c;if(c.isError){const p=c.content?.find(x=>x.type==="text")?.text??"Tool returned an error";return i(p),e("error"),null}return h.error?br(h.error)?(i(h.error),e("auth_required"),null):(i(h.error),e("error"),null):!h.tools||h.tools.length===0?(i("No tools found on this MCP server."),e("error"),null):(e("success"),h.tools)}catch(c){const h=c instanceof Error?c.message:String(c);return i(h||"Could not discover tools."),e("error"),null}},discoverStatus:t,discoverError:r,resetDiscover:()=>{e("idle"),i(null)}}}function br(t){const e=t.toLowerCase();return e.includes("authentication")||e.includes("unauthorized")||e.includes("credentials")}function Nr(t){const e=Ie.c(54),{tools:r,onChange:i,remoteUrl:n,remoteType:l,externalDiscoverStatus:m,externalDiscoverError:o}=t,[a,u]=C.useState(r.length>0),{discover:c,discoverStatus:h,discoverError:p,resetDiscover:x}=as(),d=m??h,v=o??p;let g;e[0]!==c||e[1]!==i||e[2]!==l||e[3]!==n?(g=async()=>{if(!n)return;const K=await c(n,l??"http");K&&(i(K),u(!0))},e[0]=c,e[1]=i,e[2]=l,e[3]=n,e[4]=g):g=e[4];const N=g;let S;e[5]!==i||e[6]!==x?(S=()=>{i([]),x()},e[5]=i,e[6]=x,e[7]=S):S=e[7];const y=S;let b;e[8]!==a?(b=()=>u(!a),e[8]=a,e[9]=b):b=e[9];let D,w;e[10]===Symbol.for("react.memo_cache_sentinel")?(D=s.jsx(ns,{size:14,className:"text-muted-foreground"}),w=s.jsx("span",{children:"Tools"}),e[10]=D,e[11]=w):(D=e[10],w=e[11]);let z;e[12]!==r.length?(z=r.length>0&&s.jsx(je,{variant:"secondary",className:"text-xs px-1.5 py-0",children:r.length}),e[12]=r.length,e[13]=z):z=e[13];let $;e[14]!==a?($=a?s.jsx(Os,{size:14,className:"text-muted-foreground"}):s.jsx(rs,{size:14,className:"text-muted-foreground"}),e[14]=a,e[15]=$):$=e[15];let E;e[16]!==b||e[17]!==z||e[18]!==$?(E=s.jsxs("button",{type:"button",className:"flex items-center gap-2 text-sm font-medium cursor-pointer",onClick:b,children:[D,w,z,$]}),e[16]=b,e[17]=z,e[18]=$,e[19]=E):E=e[19];let T;e[20]!==y||e[21]!==r.length?(T=r.length>0&&s.jsxs(te,{type:"button",variant:"ghost",size:"sm",className:"h-7 text-xs gap-1.5 text-muted-foreground",onClick:y,children:[s.jsx(wt,{size:12}),"Clear"]}),e[20]=y,e[21]=r.length,e[22]=T):T=e[22];let _;e[23]!==d||e[24]!==N||e[25]!==n||e[26]!==r.length?(_=n&&s.jsxs(te,{type:"button",variant:"outline",size:"sm",className:"h-7 text-xs gap-1.5 border-green-500/30 text-green-600 dark:text-green-400 shadow-[0_0_8px_rgba(34,197,94,0.3)] hover:shadow-[0_0_14px_rgba(34,197,94,0.5)] hover:border-green-500/50 transition-all",onClick:N,disabled:d==="loading",children:[d==="loading"?s.jsx(ot,{size:12,className:"animate-spin"}):s.jsx(St,{size:12}),d==="loading"?"Discovering...":r.length>0?"Refresh":"Auto-discover"]}),e[23]=d,e[24]=N,e[25]=n,e[26]=r.length,e[27]=_):_=e[27];let I;e[28]!==_||e[29]!==T?(I=s.jsxs("div",{className:"flex items-center gap-2",children:[T,_]}),e[28]=_,e[29]=T,e[30]=I):I=e[30];let M;e[31]!==I||e[32]!==E?(M=s.jsxs("div",{className:"flex items-center justify-between",children:[E,I]}),e[31]=I,e[32]=E,e[33]=M):M=e[33];let k;e[34]!==d||e[35]!==r.length?(k=d==="success"&&s.jsxs("div",{className:"flex items-center gap-2 text-xs text-green-600 dark:text-green-400 bg-green-50 dark:bg-green-950/30 rounded-lg px-3 py-2",children:[s.jsx(Ct,{size:14,className:"shrink-0"}),s.jsxs("span",{children:["Discovered ",r.length," tool",r.length!==1?"s":""," ","successfully."]})]}),e[34]=d,e[35]=r.length,e[36]=k):k=e[36];let f;e[37]!==v||e[38]!==d?(f=d==="error"&&v&&s.jsxs("div",{className:"flex items-center gap-2 text-xs text-destructive bg-destructive/10 rounded-lg px-3 py-2",children:[s.jsx(mt,{size:14,className:"shrink-0"}),s.jsx("span",{children:v})]}),e[37]=v,e[38]=d,e[39]=f):f=e[39];let R;e[40]!==a||e[41]!==r?(R=a&&r.length>0&&s.jsx("div",{className:"rounded-xl border border-border divide-y divide-border overflow-hidden max-h-48 overflow-y-auto",children:r.map(Cr)}),e[40]=a,e[41]=r,e[42]=R):R=e[42];let A;e[43]!==d||e[44]!==a||e[45]!==n||e[46]!==r.length?(A=a&&r.length===0&&d==="idle"&&s.jsx("p",{className:"text-xs text-muted-foreground px-1",children:n?'Click "Auto-discover" to load tools from the MCP server.':"Add a Remote URL first, then tools can be auto-discovered."}),e[43]=d,e[44]=a,e[45]=n,e[46]=r.length,e[47]=A):A=e[47];let B;return e[48]!==M||e[49]!==k||e[50]!==f||e[51]!==R||e[52]!==A?(B=s.jsxs("div",{className:"space-y-3",children:[M,k,f,R,A]}),e[48]=M,e[49]=k,e[50]=f,e[51]=R,e[52]=A,e[53]=B):B=e[53],B}function Cr(t){return s.jsx("div",{className:"flex items-center gap-3 px-3 py-2",children:s.jsxs("div",{className:"flex-1 min-w-0",children:[s.jsx("p",{className:"text-sm font-mono truncate",children:t.name}),t.description&&s.jsx("p",{className:"text-xs text-muted-foreground truncate",children:t.description})]})},t.name)}function cs(t){const{org:e}=Qe(),[r,i]=C.useState(!1),l=typeof window<"u"&&window.location.hostname==="localhost"?`${e.id}_dev-assets`:null,m=st({connectionId:l??"noop",orgId:e.id});return{uploadImage:async(a,u)=>{if(!l)return Te.error("Image upload requires an object-storage connection. Configure one in plugin settings."),null;if(!a.type.startsWith("image/"))return Te.error("Only image files are supported"),null;if(a.size>5*1024*1024)return Te.error("Image size must be less than 5MB"),null;i(!0);try{const c=await m.callTool({name:"PUT_PRESIGNED_URL",arguments:{key:u,contentType:a.type}}),h=c.structuredContent?.url||c.url;if(!h)throw new Error("Failed to get presigned URL");const p=await fetch(h,{method:"PUT",body:a,headers:{"Content-Type":a.type}});if(!p.ok)throw new Error(`Upload failed: ${p.statusText}`);const x=await m.callTool({name:"GET_PRESIGNED_URL",arguments:{key:u,expiresIn:31536e3}}),d=x.structuredContent?.url||x.url;if(!d)throw new Error("Failed to get public URL");return d}catch(c){return console.error("Image upload failed:",c),Te.error(c instanceof Error?c.message:"Failed to upload image. Please try again."),null}finally{i(!1)}},isUploading:r}}function wr(){const{org:t}=Qe(),[e,r]=C.useState(null),i=C.useRef(0),n=st({connectionId:at,orgId:t.id});return{generate:async m=>{i.current+=1,r(m.type);try{const o=await n.callTool({name:"REGISTRY_AI_GENERATE",arguments:m});if(o.isError){const a=o.content?.find(u=>u.type==="text")?.text??"Failed to generate content";throw new Error(a)}return o.structuredContent??o}finally{i.current-=1,i.current===0&&r(null)}},loadingType:e,isGenerating:e!==null}}const Sr=new Set(["http","sse","stdio"]),_r=/^[a-z0-9]+(?:[/-][a-z0-9._-]+)*$/,Mt=["internal","automation","support","sales","ops","ai"],ds=["productivity","communication","customer-support","development","data","operations"],Ir=["Essentials","Details","Advanced"],it="h-7 text-xs border-green-500/30 text-green-600 dark:text-green-400 shadow-[0_0_8px_rgba(34,197,94,0.3)] hover:shadow-[0_0_14px_rgba(34,197,94,0.5)] hover:border-green-500/50 transition-all";function $t(t){return t.replace(/^https?:\/\//i,"").trim()}function nt(t){const e=t.trim();return e?/^https?:\/\//i.test(e)?e:`https://${e}`:""}function Je(t){return t.trim().toLowerCase()}function ut(t){return Array.from(new Set(t.map(Je).filter(e=>e.length>0)))}function tt(t){return t.trim().toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9._-]+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function Tr(t){const e=Ie.c(4),{current:r}=t;let i;e[0]!==r?(i=Ir.map((l,m)=>{const o=m+1,a=o===r,u=o<r;return s.jsxs("div",{className:"flex items-center gap-1.5",children:[m>0&&s.jsx("div",{className:ze("w-4 h-px",u?"bg-primary":"bg-border")}),s.jsxs("div",{className:ze("flex items-center gap-1.5 px-2 py-0.5 rounded-full text-xs transition-colors",a?"bg-primary/10 text-primary font-medium":u?"text-primary":"text-muted-foreground"),children:[s.jsx("span",{className:ze("size-5 rounded-full inline-flex items-center justify-center text-[10px] font-semibold shrink-0",a?"bg-primary text-primary-foreground":u?"bg-primary/20 text-primary":"bg-muted text-muted-foreground"),children:o}),s.jsx("span",{className:"hidden sm:inline",children:l})]})]},l)}),e[0]=r,e[1]=i):i=e[1];let n;return e[2]!==i?(n=s.jsx("div",{className:"flex items-center gap-1.5",children:i}),e[2]=i,e[3]=n):n=e[3],n}function kr(t){const e=Ie.c(28),{id:r,label:i,values:n,availableOptions:l,placeholder:m,onChange:o}=t,[a,u]=C.useState(""),[c,h]=C.useState(!1);let p,x,d,v,g;if(e[0]!==l||e[1]!==r||e[2]!==a||e[3]!==c||e[4]!==i||e[5]!==o||e[6]!==m||e[7]!==n){const y=ut(l),b=ut(n),D=new Set(b),w=Je(a),z=y.filter(f=>!D.has(f)).filter(f=>w?f.includes(w):!0).slice(0,8),$=f=>{const R=Je(f);!R||D.has(R)||o([...b,R])},E=f=>{o(b.filter(R=>R!==f))},T=()=>{const f=a.split(/[,\n;]/).map(Je).filter(Boolean);if(f.length===0)return;const R=[...b];for(const A of f)R.includes(A)||R.push(A);o(R),u("")},_=w;v="grid gap-2",e[13]!==r||e[14]!==i?(g=s.jsx(Ee,{htmlFor:r,children:i}),e[13]=r,e[14]=i,e[15]=g):g=e[15],p="relative";let I;e[16]!==r?(I=()=>{const f=document.getElementById(r);f instanceof HTMLInputElement&&f.focus()},e[16]=r,e[17]=I):I=e[17];let M;e[18]===Symbol.for("react.memo_cache_sentinel")?(M=()=>h(!0),e[18]=M):M=e[18];let k;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=f=>u(f.target.value),e[19]=k):k=e[19],x=s.jsx("div",{className:"min-h-9 w-full rounded-xl border border-input bg-background px-2.5 py-1.5 text-sm focus-within:border-ring focus-within:ring-ring/50 focus-within:ring-[3px]",onClick:I,children:s.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[b.map(f=>s.jsxs(je,{variant:"secondary",className:"gap-1",children:[f,s.jsx("button",{type:"button",onClick:R=>{R.preventDefault(),R.stopPropagation(),E(f)},children:s.jsx(qs,{size:12})})]},`${r}-${f}`)),s.jsx("input",{id:r,className:"flex-1 min-w-[120px] bg-transparent outline-none border-none text-sm",placeholder:b.length?"":m,value:a,onFocus:M,onBlur:()=>{h(!1),T()},onChange:k,onKeyDown:f=>{if(f.key==="Enter"||f.key===","){f.preventDefault(),T();return}f.key==="Backspace"&&!a&&b.length&&E(b[b.length-1]??"")}})]})}),d=c&&s.jsx("div",{className:"absolute z-50 mt-1 w-full rounded-xl border border-border bg-background shadow-lg max-h-56 overflow-y-auto",children:z.length>0?z.map(f=>s.jsx("button",{type:"button",className:"w-full text-left px-2.5 py-1.5 text-sm hover:bg-muted",onMouseDown:Rr,onClick:()=>{$(f),u("")},children:f},`${r}-suggestion-${f}`)):_?s.jsxs("button",{type:"button",className:"w-full text-left px-2.5 py-1.5 text-sm hover:bg-muted",onMouseDown:Dr,onClick:()=>{$(_),u("")},children:['Create "',_,'"']}):s.jsx("div",{className:"px-2.5 py-1.5 text-sm text-muted-foreground",children:"Type to search or create."})}),e[0]=l,e[1]=r,e[2]=a,e[3]=c,e[4]=i,e[5]=o,e[6]=m,e[7]=n,e[8]=p,e[9]=x,e[10]=d,e[11]=v,e[12]=g}else p=e[8],x=e[9],d=e[10],v=e[11],g=e[12];let N;e[20]!==p||e[21]!==x||e[22]!==d?(N=s.jsxs("div",{className:p,children:[x,d]}),e[20]=p,e[21]=x,e[22]=d,e[23]=N):N=e[23];let S;return e[24]!==v||e[25]!==g||e[26]!==N?(S=s.jsxs("div",{className:v,children:[g,N]}),e[24]=v,e[25]=g,e[26]=N,e[27]=S):S=e[27],S}function Dr(t){return t.preventDefault()}function Rr(t){return t.preventDefault()}function Lr({id:t,value:e,availableOptions:r,onChange:i}){const[n,l]=C.useState(e),[m,o]=C.useState(!1),a=C.useRef(e);a.current!==e&&(a.current=e,l(e));const u=ut([...ds,...r,e]).filter(Boolean),c=Je(n),h=u.filter(x=>c?x.includes(c):!0).slice(0,8),p=x=>{const d=Je(x);i(d),l(d),o(!1)};return s.jsxs("div",{className:"grid gap-2",children:[s.jsx(Ee,{htmlFor:t,children:"Category"}),s.jsxs("div",{className:"relative",children:[s.jsx($e,{id:t,className:"h-9 text-sm",placeholder:"Select or create category",value:n,onFocus:()=>{l(e),o(!0)},onBlur:()=>{p(n)},onChange:x=>l(x.target.value),onKeyDown:x=>{x.key==="Enter"&&(x.preventDefault(),p(n))}}),e&&s.jsx("button",{type:"button",className:"absolute right-2 top-1/2 -translate-y-1/2 text-xs text-muted-foreground hover:text-foreground",onMouseDown:x=>x.preventDefault(),onClick:()=>{i(""),l("")},children:"clear"}),m&&s.jsx("div",{className:"absolute z-50 mt-1 w-full rounded-xl border border-border bg-background shadow-lg max-h-56 overflow-y-auto",children:h.length>0?h.map(x=>s.jsx("button",{type:"button",className:"w-full text-left px-2.5 py-1.5 text-sm hover:bg-muted",onMouseDown:d=>d.preventDefault(),onClick:()=>p(x),children:x},`${t}-${x}`)):c?s.jsxs("button",{type:"button",className:"w-full text-left px-2.5 py-1.5 text-sm hover:bg-muted",onMouseDown:x=>x.preventDefault(),onClick:()=>p(c),children:['Create "',c,'"']}):s.jsx("div",{className:"px-2.5 py-1.5 text-sm text-muted-foreground",children:"Type to search or create."})})]})]})}function Er({open:t,onOpenChange:e,item:r,draft:i,availableTags:n=[],availableCategories:l=[],defaultLLMConnectionId:m="",defaultLLMModelId:o="",isSubmitting:a=!1,onSubmit:u}){const{org:c}=Qe(),{uploadImage:h,isUploading:p}=cs(),{generate:x,loadingType:d}=wr(),{discover:v,discoverStatus:g,discoverError:N,resetDiscover:S}=as(),y=!!r,b=i?._meta?.["mcp.mesh"],D=r?.title??i?.title??"",w=r?.id?.split("/")[0]??i?.id?.split("/")[0]??"",z=r?.description??i?.description??"",$=r?._meta?.["mcp.mesh"]?.short_description??b?.short_description??"",E=r?._meta?.["mcp.mesh"]?.owner??b?.owner??"",T=r?.server?.repository?.url??i?.server?.repository?.url??"",_=r?._meta?.["mcp.mesh"]?.readme??b?.readme??"",I=r?._meta?.["mcp.mesh"]?.readme_url??b?.readme_url??"",M=$t(r?.server?.remotes?.[0]?.url??i?.server?.remotes?.[0]?.url??""),k=r?.server?.remotes?.[0]?.type??i?.server?.remotes?.[0]?.type??"http",f=r?._meta?.["mcp.mesh"]?.tags??b?.tags??[],R=r?._meta?.["mcp.mesh"]?.categories?.[0]??b?.categories?.[0]??"",A=r?.server?.icons?.[0]?.src??i?.server?.icons?.[0]?.src??"",B=r?._meta?.["mcp.mesh"]?.tools??b?.tools??[],K=r?.is_public??i?.is_public??!1,[F,O]=C.useState(1),[G,Y]=C.useState(D),[V,X]=C.useState(w),[se,re]=C.useState(z),[q,ne]=C.useState($),[Q,W]=C.useState(E),[Z,le]=C.useState(T),[me,ve]=C.useState(_),[ae,he]=C.useState(I),[ee,ce]=C.useState(_?"content":"link"),[J,ue]=C.useState(M),[P,ie]=C.useState(k),[pe,ye]=C.useState(f),[xe,Ce]=C.useState(R),[ge,be]=C.useState(A),[de,Se]=C.useState(B),[_e,ke]=C.useState(K),[H,we]=C.useState({}),oe=!!(m&&o),De=()=>{O(1),Y(D),X(w),re(z),ne($),W(E),le(T),ve(_),he(I),ce(_?"content":"link"),ue(M),ie(k),ye(f),Ce(R),be(A),Se(B),ke(K),we({}),S(),Re.current="",fe.current&&(clearTimeout(fe.current),fe.current=null)},Ae=async j=>{if(!j)return;const L=y?r?.id:`${V}/${G}`.toLowerCase(),Le=tt(L||"temp"),Ge=j.name.split(".").pop()||"png",Be=`registry/${c.id}/${Le}/icon.${Ge}`,et=await h(j,Be);et?(be(et),we(Ve=>({...Ve,imageUrl:void 0}))):we(Ve=>({...Ve,imageUrl:"Failed to upload image. Please try again."}))},fe=C.useRef(null),Re=C.useRef(""),He=C.useRef(P);He.current=P;const Xe=j=>{!j&&fe.current&&(clearTimeout(fe.current),fe.current=null),e(j),j||De()},Ke=async()=>{const j=nt(J);if(!j)return;Re.current=j;const L=await v(j,He.current);L&&Se(L)},Ye=j=>{fe.current&&clearTimeout(fe.current);const L=nt(j);!L||L===Re.current||j.includes(".")&&(fe.current=setTimeout(async()=>{Re.current=L;const Le=await v(L,He.current);Le&&Se(Le)},800))},Fe=()=>oe?{llmConnectionId:m,modelId:o}:null,Oe=()=>({name:G.trim(),provider:V.trim(),url:nt(J),owner:Q.trim(),repositoryUrl:Z.trim(),description:se.trim(),shortDescription:q.trim(),tags:pe,categories:xe?[xe]:[],availableTags:[...Mt,...n],availableCategories:[...ds,...l],tools:de}),We=async()=>{const j=Fe();if(!j)return;const L=await x({...j,type:"description",context:Oe()});L.result&&re(L.result.slice(0,1500))},Ze=async()=>{const j=Fe();if(!j)return;const L=await x({...j,type:"short_description",context:Oe()});L.result&&ne(L.result.slice(0,160))},U=async()=>{const j=Fe();if(!j)return;const L=await x({...j,type:"tags",context:Oe()});L.items?.length&&ye(ut(L.items))},Ne=async()=>{const j=Fe();if(!j)return;const L=await x({...j,type:"categories",context:Oe()});L.items?.[0]&&Ce(Je(L.items[0]))},rt=async()=>{const j=Fe();if(!j)return;const L=await x({...j,type:"readme",context:Oe()});L.result&&(ve(L.result.slice(0,5e4)),ce("content"))},Tt=j=>{const L={};if(j===1){const Le=tt(V),Ge=tt(G),Be=`${Le}/${Ge}`;G.trim()||(L.title="Name is required."),y||(Le?Ge?_r.test(Be)||(L.provider="Use lowercase letters/numbers and separators '/' or '-'."):L.title="Name must contain valid characters.":L.provider="Provider is required.");const et=nt(J),Ve=P.trim().toLowerCase();if(Ve!=="stdio"&&et)try{const ct=new URL(et);["http:","https:"].includes(ct.protocol)||(L.remoteUrl="Remote URL must be http(s).")}catch{L.remoteUrl="Remote URL is invalid."}if(Ve&&!Sr.has(Ve)&&(L.remoteType="Remote type must be: http, sse or stdio."),ge.trim()&&!ge.trim().startsWith("data:image/"))try{const gt=new URL(ge.trim());["http:","https:"].includes(gt.protocol)||(L.imageUrl="Image URL must be http(s).")}catch{L.imageUrl="Image URL is invalid."}}if(j===2&&(se.length>1500&&(L.description="Description must be 1500 characters or less."),q.trim().length>160&&(L.shortDescription="Short description must be 160 characters or less.")),j===3){const Le=ae.trim();if(Le)try{const Be=new URL(Le);["http:","https:"].includes(Be.protocol)||(L.readmeUrl="README URL must be http(s).")}catch{L.readmeUrl="README URL is invalid."}me.trim().length>5e4&&(L.readme="README must be 50 000 characters or less.");const Ge=Z.trim();if(Ge)try{const Be=new URL(Ge);["http:","https:"].includes(Be.protocol)||(L.repositoryUrl="Repository URL must be http(s).")}catch{L.repositoryUrl="Repository URL is invalid."}}return we(L),Object.values(L).every(Le=>Le===void 0)},ms=()=>{Tt(F)&&F<3&&O(F+1)},us=()=>{F>1&&O(F-1)},xs=async()=>{if(!Tt(3))return;const j=G.trim(),L=tt(V),Le=tt(j),Ge=`${L}/${Le}`,Be=nt(J),et=P.trim().toLowerCase(),Ve=ge.trim(),ct=Z.trim(),gt=q.trim(),fs=me.trim(),js=ae.trim(),vs=ut(pe),ys=xe?[Je(xe)]:[],bs=r?r.server?.name??r.id:"",Ns=(y?bs:Ge).trim(),ft=se.trim(),Cs=Q.trim(),kt={title:j,description:ft.length>0?ft:null,is_public:_e,_meta:{"mcp.mesh":{tags:vs,categories:ys,short_description:gt||null,owner:Cs||null,readme:fs||null,readme_url:js||null,...de.length>0?{tools:de}:{}}},server:{name:Ns,title:j,description:ft||void 0,icons:Ve?[{src:Ve}]:[],repository:ct?{url:ct}:void 0,remotes:Be?[{type:et||"http",url:Be}]:[]}};if(y&&r){await u({id:r.id,data:kt}),e(!1);return}await u({id:Ge,...kt}),e(!1),De()},hs=s.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[s.jsxs("div",{className:"row-span-2 grid gap-3 content-start",children:[s.jsxs("div",{className:"grid gap-1.5",children:[s.jsx(Ee,{htmlFor:"registry-item-provider",children:"Provider"}),s.jsx($e,{id:"registry-item-provider",className:"h-9 text-sm",placeholder:"acme",value:V,onChange:j=>X(j.target.value),disabled:y}),!y&&s.jsxs("p",{className:"text-xs text-muted-foreground",children:["Item ID:"," ",s.jsx("span",{className:"font-mono",children:`${tt(V)||"provider"}/${tt(G)||"name"}`})]}),H.provider&&s.jsx("p",{className:"text-xs text-destructive",children:H.provider})]}),s.jsxs("div",{className:"grid gap-1.5",children:[s.jsx(Ee,{htmlFor:"registry-item-title",children:"Name"}),s.jsx($e,{id:"registry-item-title",className:"h-9 text-sm",placeholder:"Internal MCP",value:G,onChange:j=>Y(j.target.value)}),H.title&&s.jsx("p",{className:"text-xs text-destructive",children:H.title})]})]}),s.jsx("div",{className:"row-span-2 content-start",children:s.jsx(os,{value:ge,onChange:j=>{be(j),we(L=>({...L,imageUrl:void 0}))},onFileUpload:Ae,error:H.imageUrl,isUploading:p})}),s.jsxs("div",{className:"col-span-2 grid gap-1.5",children:[s.jsx(Ee,{htmlFor:"registry-remote-url",children:"Remote URL"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("div",{className:"flex-1 flex items-center rounded-xl border border-input px-3",children:[s.jsx("span",{className:"text-xs font-semibold text-muted-foreground mr-1",children:"https://"}),s.jsx("input",{id:"registry-remote-url",className:"flex-1 h-9 bg-transparent outline-none text-sm",placeholder:"example.com/mcp",value:J,onChange:j=>{const L=$t(j.target.value);ue(L),Ye(L)}})]}),s.jsxs(Xt,{value:P,onValueChange:ie,children:[s.jsx(es,{id:"registry-remote-type",className:"w-[90px] h-9 shrink-0",children:s.jsx(ts,{placeholder:"Type"})}),s.jsxs(ss,{children:[s.jsx(ht,{value:"http",children:"http"}),s.jsx(ht,{value:"sse",children:"sse"}),s.jsx(ht,{value:"stdio",children:"stdio"})]})]})]}),H.remoteUrl&&s.jsx("p",{className:"text-xs text-destructive",children:H.remoteUrl}),H.remoteType&&s.jsx("p",{className:"text-xs text-destructive",children:H.remoteType})]}),J.trim()&&s.jsxs("div",{className:"col-span-2 space-y-2",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs(te,{type:"button",variant:"outline",size:"sm",className:ze(it,"gap-1.5"),onClick:Ke,disabled:g==="loading",children:[g==="loading"?s.jsx(ot,{size:12,className:"animate-spin"}):s.jsx(St,{size:12}),g==="loading"?"Discovering tools...":de.length>0?"Re-discover tools":"Discover tools from URL"]}),de.length>0&&g!=="loading"&&s.jsxs("span",{className:"text-xs text-muted-foreground",children:[de.length," tool",de.length!==1?"s":""," loaded"]})]}),g==="success"&&de.length>0&&s.jsxs("div",{className:"rounded-lg border border-green-500/20 bg-green-50 dark:bg-green-950/20 px-3 py-2 space-y-1.5",children:[s.jsxs("div",{className:"flex items-center gap-2 text-xs text-green-600 dark:text-green-400",children:[s.jsx(Ct,{size:14,className:"shrink-0"}),s.jsxs("span",{className:"font-medium",children:[de.length," tool",de.length!==1?"s":""," discovered"]})]}),s.jsxs("div",{className:"flex flex-wrap gap-1",children:[de.slice(0,8).map(j=>s.jsx(je,{variant:"secondary",className:"text-[10px] px-1.5 py-0 font-mono",children:j.name},j.name)),de.length>8&&s.jsxs("span",{className:"text-[10px] text-muted-foreground self-center",children:["+",de.length-8," more"]})]}),s.jsx("p",{className:"text-[10px] text-muted-foreground",children:"These tools will enrich AI-generated descriptions, tags and categories in the next step."})]}),g==="auth_required"&&N&&s.jsxs("div",{className:"flex items-center gap-2 text-xs text-amber-600 dark:text-amber-400 bg-amber-50 dark:bg-amber-950/20 border border-amber-500/20 rounded-lg px-3 py-2",children:[s.jsx(mt,{size:14,className:"shrink-0"}),s.jsx("span",{children:"This server requires authentication. The connection is valid but tools cannot be listed without credentials."})]}),g==="error"&&N&&s.jsxs("div",{className:"flex items-center gap-2 text-xs text-destructive bg-destructive/10 rounded-lg px-3 py-2",children:[s.jsx(mt,{size:14,className:"shrink-0"}),s.jsx("span",{children:N})]})]})]}),ps=s.jsxs("div",{className:"grid gap-3",children:[s.jsxs("div",{className:"grid gap-1.5",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(Ee,{htmlFor:"registry-item-short-description",children:"Short Description"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("span",{className:"text-xs text-muted-foreground",children:[q.length,"/160"]}),oe&&s.jsx(te,{type:"button",variant:"outline",size:"sm",className:it,disabled:d==="short_description",onClick:Ze,children:d==="short_description"?"Generating...":"AI Generate"})]})]}),s.jsx($e,{id:"registry-item-short-description",className:"h-9 text-sm",placeholder:"Short summary for the store card",value:q,maxLength:160,onChange:j=>ne(j.target.value)}),H.shortDescription&&s.jsx("p",{className:"text-xs text-destructive",children:H.shortDescription})]}),s.jsxs("div",{className:"grid gap-1.5",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(Ee,{htmlFor:"registry-item-description",children:"Description"}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsxs("span",{className:"text-xs text-muted-foreground",children:[se.length,"/1500"]}),oe&&s.jsx(te,{type:"button",variant:"outline",size:"sm",className:it,disabled:d==="description",onClick:We,children:d==="description"?"Generating...":"AI Generate"})]})]}),s.jsx(Pt,{id:"registry-item-description",className:"text-sm max-h-28 overflow-y-auto resize-none",placeholder:"Brief description of this MCP server",rows:2,value:se,onChange:j=>re(j.target.value)}),H.description&&s.jsx("p",{className:"text-xs text-destructive",children:H.description})]}),s.jsx("div",{className:"border-t border-border"}),s.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[s.jsxs("div",{className:"grid content-start gap-2",children:[s.jsx(Lr,{id:"registry-category",value:xe,availableOptions:l,onChange:Ce}),oe&&s.jsx(te,{type:"button",variant:"outline",size:"sm",className:ze(it,"justify-self-start"),disabled:d==="categories",onClick:Ne,children:d==="categories"?"Suggesting...":"AI Suggest"})]}),s.jsxs("div",{className:"grid content-start gap-2",children:[s.jsx(kr,{id:"registry-tags",label:"Tags",values:pe,availableOptions:[...Mt,...n],placeholder:"Type and press Enter or comma",onChange:ye}),oe&&s.jsx(te,{type:"button",variant:"outline",size:"sm",className:ze(it,"justify-self-start"),disabled:d==="tags",onClick:U,children:d==="tags"?"Suggesting...":"AI Suggest"})]})]}),s.jsxs("div",{className:"flex items-center justify-between rounded-xl border border-border px-4 py-3",children:[s.jsxs("div",{className:"grid gap-0.5",children:[s.jsx(Ee,{htmlFor:"registry-is-public",className:"text-sm",children:"Public"}),s.jsx("p",{className:"text-xs text-muted-foreground",children:"Make this MCP visible in the public store URL."})]}),s.jsx(Gs,{id:"registry-is-public",checked:_e,onCheckedChange:ke})]})]}),gs=s.jsxs("div",{className:"grid gap-3",children:[s.jsxs("div",{className:"grid grid-cols-2 gap-3",children:[s.jsxs("div",{className:"grid gap-1.5",children:[s.jsx(Ee,{htmlFor:"registry-item-owner",children:"Owner (optional)"}),s.jsx($e,{id:"registry-item-owner",className:"h-9 text-sm",placeholder:"Team, company, or responsible person",value:Q,onChange:j=>W(j.target.value)})]}),s.jsxs("div",{className:"grid gap-1.5",children:[s.jsx(Ee,{htmlFor:"registry-item-repository-url",children:"Repository URL (optional)"}),s.jsx($e,{id:"registry-item-repository-url",className:"h-9 text-sm",placeholder:"https://github.com/org/repo",value:Z,onChange:j=>le(j.target.value)}),H.repositoryUrl&&s.jsx("p",{className:"text-xs text-destructive",children:H.repositoryUrl})]})]}),s.jsxs("div",{className:"rounded-xl border border-border p-4 space-y-3",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(Ee,{children:"README"}),s.jsxs("span",{className:"text-xs text-muted-foreground",children:[me.length,"/50000"]})]}),s.jsx("div",{className:"inline-flex rounded-lg border border-border p-0.5",children:(oe?["link","content","generate"]:["link","content"]).map(j=>s.jsx("button",{type:"button",className:ze("px-2.5 py-1 text-xs rounded-md",ee===j?"bg-primary text-primary-foreground":"text-muted-foreground"),onClick:()=>ce(j),children:j==="link"?"Link":j==="content"?"Content":"Generate"},j))}),ee==="link"&&s.jsxs("div",{className:"grid gap-1.5",children:[s.jsx($e,{className:"h-9 text-sm",placeholder:"https://raw.githubusercontent.com/org/repo/main/README.md",value:ae,onChange:j=>he(j.target.value)}),H.readmeUrl&&s.jsx("p",{className:"text-xs text-destructive",children:H.readmeUrl})]}),ee==="content"&&s.jsxs("div",{className:"grid gap-1.5",children:[s.jsx(Pt,{className:"text-sm max-h-48 overflow-y-auto resize-none",placeholder:`# README
4
-
5
- Describe your MCP here...`,rows:6,value:me,onChange:j=>ve(j.target.value)}),H.readme&&s.jsx("p",{className:"text-xs text-destructive",children:H.readme})]}),oe&&ee==="generate"&&s.jsxs("div",{className:"flex items-center justify-between gap-3 rounded-lg border border-dashed border-border p-3",children:[s.jsx("p",{className:"text-xs text-muted-foreground",children:"Generates a README using name, description, tools, category and tags as context."}),s.jsx(te,{type:"button",variant:"outline",size:"sm",className:it,disabled:d==="readme",onClick:rt,children:d==="readme"?"Generating...":"Generate with AI"})]})]}),s.jsx(Nr,{tools:de,onChange:Se,remoteUrl:nt(J)||void 0,remoteType:P,externalDiscoverStatus:g,externalDiscoverError:N})]});return s.jsx(Jt,{open:t,onOpenChange:Xe,children:s.jsxs(Zt,{className:"sm:max-w-[820px] max-h-[90vh] overflow-hidden flex flex-col",children:[s.jsxs(Ht,{className:"space-y-3",children:[s.jsx(Kt,{children:y?"Edit MCP Server":"Add MCP Server"}),s.jsx(Tr,{current:F}),s.jsxs(Yt,{children:[F===1&&"Set up the identity, connection and discover available tools.",F===2&&"Add descriptions, categories and tags to help discovery.",F===3&&"Configure optional metadata, README and tools."]})]}),s.jsxs("div",{className:"flex-1 overflow-y-auto pr-1 py-2",children:[F===1&&hs,F===2&&ps,F===3&&gs]}),s.jsxs(Wt,{className:"flex items-center justify-between gap-2 sm:justify-between",children:[s.jsx("div",{children:F>1&&s.jsxs(te,{variant:"ghost",size:"sm",onClick:us,children:[s.jsx(Bs,{size:14}),"Back"]})}),s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(te,{variant:"outline",size:"sm",onClick:()=>Xe(!1),disabled:a,children:"Cancel"}),F<3?s.jsxs(te,{size:"sm",onClick:ms,children:["Next",s.jsx(Vs,{size:14})]}):s.jsx(te,{size:"sm",onClick:xs,disabled:a,children:a?"Saving...":y?"Save changes":"Create"})]})]})]})})}function At(t,e){return t.includes(e)?t.filter(r=>r!==e):[...t,e]}function Pr(t){return t._meta?.["mcp.mesh"]?.tags??[]}function Ur(t){return t._meta?.["mcp.mesh"]?.categories??[]}function zr(t){return t.server?.remotes?.[0]?.url??"-"}function Mr(){const t=Ie.c(120),[e,r]=C.useState(""),i=C.useDeferredValue(e);let n;t[0]===Symbol.for("react.memo_cache_sentinel")?(n=[],t[0]=n):n=t[0];const[l,m]=C.useState(n);let o;t[1]===Symbol.for("react.memo_cache_sentinel")?(o=[],t[1]=o):o=t[1];const[a,u]=C.useState(o),[c,h]=C.useState(!1),[p,x]=C.useState(!1),[d,v]=C.useState(null),[g,N]=C.useState(null),[S,y]=Ds("private-registry-list","cards"),b=C.useRef(null);let D;t[2]!==i||t[3]!==a||t[4]!==l?(D={search:i,tags:l,categories:a},t[2]=i,t[3]=a,t[4]=l,t[5]=D):D=t[5];const w=ls(D),z=sr(),{registryLLMConnectionId:$,registryLLMModelId:E}=It(bt),{createMutation:T,updateMutation:_,deleteMutation:I,bulkCreateMutation:M}=rr();let k,f,R,A,B,K,F,O;if(t[6]!==T||t[7]!==I||t[8]!==g||t[9]!==z.data||t[10]!==w||t[11]!==i||t[12]!==e||t[13]!==a||t[14]!==l||t[15]!==y||t[16]!==_||t[17]!==S){const ee=w.data?.pages.flatMap(Gr).filter(Boolean)??[],ce=w.data?.pages[0]?.totalCount??ee.length,J=l.length>0||a.length>0||i.length>0,ue=z.data;let P;t[26]!==ue?(P=Array.isArray(ue?.tags)?ue.tags:[],t[26]=ue,t[27]=P):P=t[27],O=P;let ie;t[28]!==ue?(ie=Array.isArray(ue?.categories)?ue.categories:[],t[28]=ue,t[29]=ie):ie=t[29],k=ie;let pe;t[30]!==w?(pe=U=>{b.current&&(b.current.disconnect(),b.current=null),!(!U||!w.hasNextPage||w.isFetchingNextPage)&&(b.current=new IntersectionObserver(Ne=>{Ne[0]?.isIntersecting&&w.hasNextPage&&!w.isFetchingNextPage&&w.fetchNextPage()},{rootMargin:"240px 0px"}),b.current.observe(U))},t[30]=w,t[31]=pe):pe=t[31];const ye=pe;let xe;t[32]!==T||t[33]!==_?(xe=async U=>{try{"data"in U?(await _.mutateAsync(U),Te.success("Registry item updated")):(await T.mutateAsync(U),Te.success("Registry item created"))}catch(Ne){const rt=Ne;throw Te.error(rt instanceof Error?rt.message:"Failed to save item"),rt}},t[32]=T,t[33]=_,t[34]=xe):xe=t[34],f=xe;let Ce;t[35]!==I||t[36]!==g?(Ce=async()=>{if(g)try{await I.mutateAsync(g.id),Te.success("Registry item deleted"),N(null)}catch(U){const Ne=U;Te.error(Ne instanceof Error?Ne.message:"Failed to delete item")}},t[35]=I,t[36]=g,t[37]=Ce):Ce=t[37],R=Ce,K="h-full flex flex-col";let ge;t[38]===Symbol.for("react.memo_cache_sentinel")?(ge=s.jsx("h2",{className:"text-sm font-medium",children:"Items"}),t[38]=ge):ge=t[38];const be=s.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[ge,s.jsx(je,{variant:"secondary",className:"text-xs",children:ce})]});let de;t[39]===Symbol.for("react.memo_cache_sentinel")?(de=s.jsx(jt,{asChild:!0,children:s.jsxs(te,{variant:"outline",size:"sm",className:ze("h-8","gap-1.5"),children:[s.jsx(Rs,{size:14}),"Filters"]})}),t[39]=de):de=t[39];let Se;t[40]===Symbol.for("react.memo_cache_sentinel")?(Se=s.jsx(Rt,{children:"Tags"}),t[40]=Se):Se=t[40];let _e;t[41]!==l||t[42]!==O?(_e=O.length>0?O.map(U=>s.jsxs(Dt,{checked:l.includes(U.value),onCheckedChange:()=>m(Ne=>At(Ne,U.value)),children:[U.value," (",U.count,")"]},U.value)):s.jsx(lt,{disabled:!0,children:"No tags available"}),t[41]=l,t[42]=O,t[43]=_e):_e=t[43];let ke,H;t[44]===Symbol.for("react.memo_cache_sentinel")?(ke=s.jsx(Ts,{}),H=s.jsx(Rt,{children:"Categories"}),t[44]=ke,t[45]=H):(ke=t[44],H=t[45]);let we;t[46]!==k||t[47]!==a?(we=k.length>0?k.map(U=>s.jsxs(Dt,{checked:a.includes(U.value),onCheckedChange:()=>u(Ne=>At(Ne,U.value)),children:[U.value," (",U.count,")"]},U.value)):s.jsx(lt,{disabled:!0,children:"No categories available"}),t[46]=k,t[47]=a,t[48]=we):we=t[48];let oe;t[49]!==_e||t[50]!==we?(oe=s.jsxs(vt,{children:[de,s.jsxs(yt,{align:"end",className:"w-[260px]",children:[Se,_e,ke,H,we]})]}),t[49]=_e,t[50]=we,t[51]=oe):oe=t[51];let De;t[52]!==y?(De=U=>{(U==="cards"||U==="table")&&y(U)},t[52]=y,t[53]=De):De=t[53];let Ae,fe;t[54]===Symbol.for("react.memo_cache_sentinel")?(Ae=s.jsx(Lt,{value:"cards","aria-label":"Cards view",className:"h-8",children:"Cards"}),fe=s.jsx(Lt,{value:"table","aria-label":"Table view",className:"h-8",children:"Table"}),t[54]=Ae,t[55]=fe):(Ae=t[54],fe=t[55]);let Re;t[56]!==De||t[57]!==S?(Re=s.jsxs(ks,{type:"single",value:S,onValueChange:De,variant:"outline",className:"h-8",children:[Ae,fe]}),t[56]=De,t[57]=S,t[58]=Re):Re=t[58];let He;t[59]===Symbol.for("react.memo_cache_sentinel")?(He=s.jsx(te,{variant:"outline",size:"sm",className:"h-8",onClick:()=>x(!0),children:"Import CSV"}),t[59]=He):He=t[59];let Xe;t[60]===Symbol.for("react.memo_cache_sentinel")?(Xe=s.jsx(te,{size:"sm",className:"h-8",onClick:()=>h(!0),children:"Add MCP Servers"}),t[60]=Xe):Xe=t[60];let Ke;t[61]!==oe||t[62]!==Re?(Ke=s.jsxs("div",{className:"flex items-center gap-2 self-stretch",children:[oe,Re,He,Xe]}),t[61]=oe,t[62]=Re,t[63]=Ke):Ke=t[63];let Ye;t[64]!==be||t[65]!==Ke?(Ye=s.jsxs("div",{className:"h-12 px-4 md:px-6 flex items-center justify-between gap-2",children:[be,Ke]}),t[64]=be,t[65]=Ke,t[66]=Ye):Ye=t[66];let Fe;t[67]===Symbol.for("react.memo_cache_sentinel")?(Fe=s.jsx(Qt,{size:16,className:"text-muted-foreground shrink-0"}),t[67]=Fe):Fe=t[67];let Oe;t[68]===Symbol.for("react.memo_cache_sentinel")?(Oe=U=>r(U.target.value),t[68]=Oe):Oe=t[68];let We;t[69]!==e?(We=s.jsx("div",{className:"border-t border-border h-12 px-4 md:px-6 flex items-center",children:s.jsxs("label",{className:"flex items-center gap-2.5 h-12 w-full cursor-text",children:[Fe,s.jsx($e,{value:e,onChange:Oe,placeholder:"Search by id, title, description, or server name",className:"flex-1 border-0 shadow-none focus-visible:ring-0 px-0 h-full text-sm placeholder:text-muted-foreground/50 bg-transparent"})]})}),t[69]=e,t[70]=We):We=t[70];let Ze;t[71]!==J||t[72]!==e||t[73]!==a||t[74]!==l?(Ze=J&&s.jsxs("div",{className:"border-t border-border px-4 md:px-6 py-2 flex flex-wrap items-center gap-2",children:[l.map(Or),a.map(Fr),e.trim()&&s.jsxs(je,{variant:"secondary",className:"max-w-[280px] truncate",children:["Search: ",e]}),s.jsx(te,{size:"sm",variant:"ghost",className:"h-7 ml-auto",onClick:()=>{r(""),m([]),u([])},children:"Clear filters"})]}),t[71]=J,t[72]=e,t[73]=a,t[74]=l,t[75]=Ze):Ze=t[75],t[76]!==Ye||t[77]!==We||t[78]!==Ze?(F=s.jsxs("div",{className:"shrink-0 border-b border-border",children:[Ye,We,Ze]}),t[76]=Ye,t[77]=We,t[78]=Ze,t[79]=F):F=t[79],A="flex-1 overflow-auto px-4 md:px-6 py-4",B=ee.length===0?s.jsx("div",{className:"min-h-[320px] rounded-xl border border-dashed border-border flex flex-col items-center justify-center gap-3 p-6 text-center",children:w.isLoading?s.jsxs(s.Fragment,{children:[s.jsx(ot,{className:"size-5 animate-spin text-muted-foreground"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading items..."})]}):s.jsxs(s.Fragment,{children:[s.jsx("h3",{className:"text-base font-medium",children:J?"No items found":"No MCPs in your registry"}),s.jsx("p",{className:"text-sm text-muted-foreground max-w-md",children:J?"Try removing filters or changing your search to find matching MCPs.":"Add your first MCP item to start building your private registry catalog."}),!J&&s.jsx(te,{size:"lg",onClick:()=>h(!0),children:"Add MCP Servers"})]})}):S==="cards"?s.jsxs("div",{className:"space-y-4",children:[s.jsx("div",{className:"grid grid-cols-1 md:grid-cols-3 lg:grid-cols-4 gap-4",children:ee.map(U=>s.jsx(vr,{item:U,onEdit:v,onDelete:N},U.id))}),w.hasNextPage&&s.jsx("div",{ref:ye,className:"h-2"})]}):s.jsxs("div",{className:"space-y-4",children:[s.jsx("div",{className:"border rounded-lg overflow-auto",children:s.jsxs(Gt,{children:[s.jsx(Bt,{children:s.jsxs(pt,{children:[s.jsx(Pe,{className:"w-[56px]",children:"Icon"}),s.jsx(Pe,{children:"Title"}),s.jsx(Pe,{children:"ID"}),s.jsx(Pe,{children:"Tags"}),s.jsx(Pe,{children:"Categories"}),s.jsx(Pe,{children:"Remote URL"}),s.jsx(Pe,{children:"Visibility"}),s.jsx(Pe,{className:"text-right w-[68px]",children:"Actions"})]})}),s.jsx(Vt,{children:ee.map(U=>s.jsxs(pt,{children:[s.jsx(Ue,{children:s.jsx("div",{className:"size-8 rounded-md border border-border bg-muted/20 overflow-hidden flex items-center justify-center",children:U.server?.icons?.[0]?.src?s.jsx("img",{src:U.server.icons[0].src,alt:U.title,className:"h-full w-full object-cover",loading:"lazy"}):s.jsx("span",{className:"text-[10px] font-semibold text-muted-foreground",children:U.title.charAt(0).toUpperCase()})})}),s.jsx(Ue,{children:U.title}),s.jsx(Ue,{className:"font-mono",children:U.id}),s.jsx(Ue,{children:s.jsx("div",{className:"flex flex-wrap gap-1",children:Pr(U).slice(0,3).map(Ne=>s.jsx(je,{variant:"outline",children:Ne},`${U.id}-tag-${Ne}`))})}),s.jsx(Ue,{children:s.jsx("div",{className:"flex flex-wrap gap-1",children:Ur(U).slice(0,3).map(Ne=>s.jsx(je,{variant:"outline",children:Ne},`${U.id}-category-${Ne}`))})}),s.jsx(Ue,{children:zr(U)}),s.jsx(Ue,{children:U.is_public?s.jsxs(je,{variant:"default",className:"gap-1",children:[s.jsx(Nt,{size:10}),"Public"]}):s.jsx(je,{variant:"secondary",children:"Private"})}),s.jsx(Ue,{className:"text-right",children:s.jsxs(vt,{children:[s.jsx(jt,{asChild:!0,children:s.jsx(te,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",children:s.jsx(qt,{size:18})})}),s.jsxs(yt,{align:"end",children:[s.jsx(lt,{onClick:()=>v(U),children:"Edit"}),s.jsx(lt,{variant:"destructive",onClick:()=>N(U),children:"Delete"})]})]})})]},U.id))})]})}),w.hasNextPage&&s.jsx("div",{ref:ye,className:"h-2"})]}),t[6]=T,t[7]=I,t[8]=g,t[9]=z.data,t[10]=w,t[11]=i,t[12]=e,t[13]=a,t[14]=l,t[15]=y,t[16]=_,t[17]=S,t[18]=k,t[19]=f,t[20]=R,t[21]=A,t[22]=B,t[23]=K,t[24]=F,t[25]=O}else k=t[18],f=t[19],R=t[20],A=t[21],B=t[22],K=t[23],F=t[24],O=t[25];let G;t[80]!==w.isFetchingNextPage?(G=w.isFetchingNextPage&&s.jsxs("div",{className:"py-4 flex items-center justify-center gap-2 text-sm text-muted-foreground",children:[s.jsx(ot,{className:"size-4 animate-spin"}),"Loading more items..."]}),t[80]=w.isFetchingNextPage,t[81]=G):G=t[81];let Y;t[82]!==A||t[83]!==B||t[84]!==G?(Y=s.jsxs("div",{className:A,children:[B,G]}),t[82]=A,t[83]=B,t[84]=G,t[85]=Y):Y=t[85];const V=d?.id??"create",X=c||!!d;let se;t[86]===Symbol.for("react.memo_cache_sentinel")?(se=ee=>{ee||(h(!1),v(null))},t[86]=se):se=t[86];let re;t[87]!==O?(re=O.map(Ar),t[87]=O,t[88]=re):re=t[88];let q;t[89]!==k?(q=k.map($r),t[89]=k,t[90]=q):q=t[90];const ne=T.isPending||_.isPending;let Q;t[91]!==d||t[92]!==f||t[93]!==$||t[94]!==E||t[95]!==X||t[96]!==re||t[97]!==q||t[98]!==ne||t[99]!==V?(Q=s.jsx(Er,{open:X,onOpenChange:se,item:d,availableTags:re,availableCategories:q,defaultLLMConnectionId:$,defaultLLMModelId:E,isSubmitting:ne,onSubmit:f},V),t[91]=d,t[92]=f,t[93]=$,t[94]=E,t[95]=X,t[96]=re,t[97]=q,t[98]=ne,t[99]=V,t[100]=Q):Q=t[100];let W;t[101]!==M?(W=async ee=>{try{const ce=await M.mutateAsync(ee);return Te.success(`Imported ${ce.created} item(s)`),ce}catch(ce){const J=ce;throw Te.error(J instanceof Error?J.message:"Failed to import CSV"),J}},t[101]=M,t[102]=W):W=t[102];let Z;t[103]!==M.isPending||t[104]!==p||t[105]!==W?(Z=s.jsx(cr,{open:p,onOpenChange:x,isImporting:M.isPending,onImport:W}),t[103]=M.isPending,t[104]=p,t[105]=W,t[106]=Z):Z=t[106];const le=!!g;let me;t[107]===Symbol.for("react.memo_cache_sentinel")?(me=ee=>{ee||N(null)},t[107]=me):me=t[107];const ve=g?.title??g?.id??"";let ae;t[108]!==I.isPending||t[109]!==R||t[110]!==le||t[111]!==ve?(ae=s.jsx(hr,{open:le,onOpenChange:me,title:ve,isDeleting:I.isPending,onConfirm:R}),t[108]=I.isPending,t[109]=R,t[110]=le,t[111]=ve,t[112]=ae):ae=t[112];let he;return t[113]!==Q||t[114]!==Z||t[115]!==ae||t[116]!==K||t[117]!==F||t[118]!==Y?(he=s.jsxs("div",{className:K,children:[F,Y,Q,Z,ae]}),t[113]=Q,t[114]=Z,t[115]=ae,t[116]=K,t[117]=F,t[118]=Y,t[119]=he):he=t[119],he}function $r(t){return t.value}function Ar(t){return t.value}function Fr(t){return s.jsx(je,{variant:"outline",children:t},`selected-category-${t}`)}function Or(t){return s.jsxs(je,{variant:"default",children:["#",t]},`selected-tag-${t}`)}function Gr(t){return t.items??[]}function Br(t){const e=Ie.c(104),{connectionId:r,modelId:i,connections:n,models:l,onConnectionChange:m,onModelChange:o,connectionLabel:a,modelLabel:u,connectionPlaceholder:c,modelPlaceholder:h,className:p}=t,x=a===void 0?"LLM Connection":a,d=u===void 0?"Model":u,v=c===void 0?"Select LLM connection":c,g=h===void 0?"Select model":h,[N,S]=C.useState(!1),[y,b]=C.useState("");let D;if(e[0]!==i||e[1]!==l){let P;e[3]!==i?(P=ie=>ie.id===i,e[3]=i,e[4]=P):P=e[4],D=l.find(P),e[0]=i,e[1]=l,e[2]=D}else D=e[2];const w=D;let z;if(e[5]!==l||e[6]!==y){const P=y.trim().toLowerCase();z=P?l.filter(ie=>ie.title.toLowerCase().includes(P)||ie.id.toLowerCase().includes(P)):l,e[5]=l,e[6]=y,e[7]=z}else z=e[7];const $=z;let E,T,_,I,M,k,f,R,A,B,K,F,O,G,Y,V,X,se,re,q,ne,Q;if(e[8]!==p||e[9]!==r||e[10]!==x||e[11]!==v||e[12]!==n||e[13]!==d||e[14]!==g||e[15]!==m||e[16]!==N||e[17]!==y||e[18]!==w?.title){let P;e[41]!==r?(P=be=>be.id===r,e[41]=r,e[42]=P):P=e[42];const ie=n.find(P);M=qr,e[43]!==p?(se=ze("grid gap-1.5",p),e[43]=p,e[44]=se):se=e[44],e[45]!==d?(re=s.jsx(Ee,{children:d}),e[45]=d,e[46]=re):re=e[46],I=Ks,Y=N,V=S;const pe=w?.title||g;let ye;e[47]!==pe?(ye=s.jsx("span",{className:"truncate text-left",children:pe}),e[47]=pe,e[48]=ye):ye=e[48];let xe;e[49]===Symbol.for("react.memo_cache_sentinel")?(xe=s.jsx(rs,{className:"size-4 shrink-0 opacity-60"}),e[49]=xe):xe=e[49],e[50]!==d||e[51]!==ye?(X=s.jsx(Ys,{asChild:!0,children:s.jsxs(te,{type:"button",variant:"outline",size:"sm",className:"h-9 w-full justify-between px-3","aria-label":d,children:[ye,xe]})}),e[50]=d,e[51]=ye,e[52]=X):X=e[52],_=Ws,F="w-[calc(100vw-2rem)] sm:w-[460px] lg:w-[500px] max-w-[92vw] p-0",O="start",G=8,B="p-3 border-b border-border grid grid-cols-[1fr_auto] items-center gap-3";let Ce;e[53]===Symbol.for("react.memo_cache_sentinel")?(Ce=s.jsx(Qt,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 size-4 text-muted-foreground"}),e[53]=Ce):Ce=e[53];let ge;e[54]===Symbol.for("react.memo_cache_sentinel")?(ge=be=>b(be.target.value),e[54]=ge):ge=e[54],e[55]!==y?(K=s.jsxs("div",{className:"relative flex-1 min-w-0",children:[Ce,s.jsx($e,{value:y,onChange:ge,className:"h-9 pl-8",placeholder:"Search for a model..."})]}),e[55]=y,e[56]=K):K=e[56],A="w-auto shrink-0",T=Xt,f=r,R=m,E=es,q="llm-connection-select",ne="h-9 min-w-[160px] max-w-[220px]",Q=x,k=ie?s.jsxs("span",{className:"flex items-center gap-2 min-w-0",children:[s.jsx("span",{className:"size-4 rounded-sm overflow-hidden bg-muted/30 shrink-0 flex items-center justify-center",children:ie.icon?s.jsx("img",{src:ie.icon,alt:ie.title,className:"w-full h-full object-cover"}):s.jsx("span",{className:"text-[10px] font-semibold text-muted-foreground",children:ie.title.slice(0,1).toUpperCase()})}),s.jsx("span",{className:"truncate",children:ie.title})]}):s.jsx(ts,{placeholder:v}),e[8]=p,e[9]=r,e[10]=x,e[11]=v,e[12]=n,e[13]=d,e[14]=g,e[15]=m,e[16]=N,e[17]=y,e[18]=w?.title,e[19]=E,e[20]=T,e[21]=_,e[22]=I,e[23]=M,e[24]=k,e[25]=f,e[26]=R,e[27]=A,e[28]=B,e[29]=K,e[30]=F,e[31]=O,e[32]=G,e[33]=Y,e[34]=V,e[35]=X,e[36]=se,e[37]=re,e[38]=q,e[39]=ne,e[40]=Q}else E=e[19],T=e[20],_=e[21],I=e[22],M=e[23],k=e[24],f=e[25],R=e[26],A=e[27],B=e[28],K=e[29],F=e[30],O=e[31],G=e[32],Y=e[33],V=e[34],X=e[35],se=e[36],re=e[37],q=e[38],ne=e[39],Q=e[40];let W;e[57]!==E||e[58]!==k||e[59]!==q||e[60]!==ne||e[61]!==Q?(W=s.jsx(E,{id:q,className:ne,"aria-label":Q,children:k}),e[57]=E,e[58]=k,e[59]=q,e[60]=ne,e[61]=Q,e[62]=W):W=e[62];let Z;e[63]!==n?(Z=n.map(Vr),e[63]=n,e[64]=Z):Z=e[64];let le;e[65]!==Z?(le=s.jsx(ss,{children:Z}),e[65]=Z,e[66]=le):le=e[66];let me;e[67]!==T||e[68]!==f||e[69]!==R||e[70]!==W||e[71]!==le?(me=s.jsxs(T,{value:f,onValueChange:R,children:[W,le]}),e[67]=T,e[68]=f,e[69]=R,e[70]=W,e[71]=le,e[72]=me):me=e[72];let ve;e[73]!==A||e[74]!==me?(ve=s.jsx("div",{className:A,children:me}),e[73]=A,e[74]=me,e[75]=ve):ve=e[75];let ae;e[76]!==B||e[77]!==K||e[78]!==ve?(ae=s.jsxs("div",{className:B,children:[K,ve]}),e[76]=B,e[77]=K,e[78]=ve,e[79]=ae):ae=e[79];let he;e[80]!==$||e[81]!==M||e[82]!==i||e[83]!==o?(he=$.length===0?s.jsx("p",{className:"text-xs text-muted-foreground px-2 py-3",children:"No models found."}):$.map(P=>{const ie=P.id===i,pe=M(P.capabilities);return s.jsxs("button",{type:"button",className:ze("w-full text-left px-3 py-3 rounded-lg text-sm flex items-center gap-3",ie?"bg-accent text-accent-foreground":"hover:bg-muted"),onClick:()=>{o(P.id),S(!1)},children:[s.jsx("div",{className:"size-8 rounded-md border border-border bg-muted/40 overflow-hidden shrink-0 flex items-center justify-center",children:P.logo?s.jsx("img",{src:P.logo,alt:P.title,className:"w-full h-full object-contain"}):s.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:(P.title||P.id).slice(0,1).toUpperCase()})}),s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsx("div",{className:"truncate",children:P.title}),P.title!==P.id&&s.jsx("div",{className:"text-xs text-muted-foreground truncate",children:P.id})]}),pe.length>0&&s.jsx("div",{className:"flex items-center gap-2 shrink-0",children:pe.map(ye=>s.jsx("span",{className:"text-xs font-medium px-2.5 py-1 rounded-md bg-primary/12 text-primary",children:ye},`${P.id}-${ye}`))})]},P.id)}),e[80]=$,e[81]=M,e[82]=i,e[83]=o,e[84]=he):he=e[84];let ee;e[85]!==he?(ee=s.jsx("div",{className:"max-h-[55vh] sm:max-h-[420px] overflow-y-auto p-2",children:he}),e[85]=he,e[86]=ee):ee=e[86];let ce;e[87]!==_||e[88]!==F||e[89]!==O||e[90]!==G||e[91]!==ae||e[92]!==ee?(ce=s.jsxs(_,{className:F,align:O,sideOffset:G,children:[ae,ee]}),e[87]=_,e[88]=F,e[89]=O,e[90]=G,e[91]=ae,e[92]=ee,e[93]=ce):ce=e[93];let J;e[94]!==I||e[95]!==Y||e[96]!==V||e[97]!==X||e[98]!==ce?(J=s.jsxs(I,{open:Y,onOpenChange:V,children:[X,ce]}),e[94]=I,e[95]=Y,e[96]=V,e[97]=X,e[98]=ce,e[99]=J):J=e[99];let ue;return e[100]!==se||e[101]!==re||e[102]!==J?(ue=s.jsxs("div",{className:se,children:[re,J]}),e[100]=se,e[101]=re,e[102]=J,e[103]=ue):ue=e[103],ue}function Vr(t){return s.jsx(ht,{value:t.id,children:s.jsxs("span",{className:"flex items-center gap-2 min-w-0",children:[s.jsx("span",{className:"size-4 rounded-sm overflow-hidden bg-muted/30 shrink-0 flex items-center justify-center",children:t.icon?s.jsx("img",{src:t.icon,alt:t.title,className:"w-full h-full object-cover"}):s.jsx("span",{className:"text-[10px] font-semibold text-muted-foreground",children:t.title.slice(0,1).toUpperCase()})}),s.jsx("span",{className:"truncate",children:t.title})]})},t.id)}function qr(t){const e=new Set((t??[]).map(Qr)),r=[];return e.has("text")&&r.push("Text"),e.has("vision")&&r.push("Vision"),e.has("tools")&&r.push("Tools"),r}function Qr(t){return t.toLowerCase()}function Hr(t){const e=Ie.c(86),{initialName:r,initialIcon:i,initialLLMConnectionId:n,initialLLMModelId:l}=t,{org:m}=Qe(),{uploadImage:o,isUploading:a}=cs(),{saveRegistryConfigMutation:u}=It(bt),[c,h]=C.useState(r),[p,x]=C.useState(i),[d,v]=C.useState(n),[g,N]=C.useState(l);let S;e[0]===Symbol.for("react.memo_cache_sentinel")?(S={search:"",tags:[],categories:[],limit:50},e[0]=S):S=e[0];const y=ls(S),D=(Qs()??[]).filter(Jr),w=d||n||D[0]?.id||"",z=Is({connectionId:w||void 0,orgId:m.id}),$=Hs(w||"no-llm-connection","LLM",z),E=`${window.location.origin}/org/${m.slug}/registry/mcp`;let T;e[1]!==y.data?.pages?(T=(y.data?.pages.flatMap(Zr)??[]).filter(Wr),e[1]=y.data?.pages,e[2]=T):T=e[2];const _=T.length;let I;e[3]!==p||e[4]!==i||e[5]!==n||e[6]!==l||e[7]!==r||e[8]!==d||e[9]!==g||e[10]!==c?(I=c.trim()!==r.trim()||p.trim()!==i.trim()||d.trim()!==n.trim()||g.trim()!==l.trim(),e[3]=p,e[4]=i,e[5]=n,e[6]=l,e[7]=r,e[8]=d,e[9]=g,e[10]=c,e[11]=I):I=e[11];const M=I,k=u.isPending;let f;e[12]!==m.id||e[13]!==o?(f=async oe=>{if(!oe)return;const De=oe.name.split(".").pop()||"png",Ae=`registry/${m.id}/identity/icon.${De}`,fe=await o(oe,Ae);fe?x(fe):Te.error("Failed to upload icon. Please try again.")},e[12]=m.id,e[13]=o,e[14]=f):f=e[14];const R=f,A=async()=>{const oe=c.trim();if(!oe)return;const De=g.trim(),Ae=De?d.trim()||w||"":d.trim();try{await u.mutateAsync({registryName:oe,registryIcon:p.trim(),llmConnectionId:Ae,llmModelId:De}),Te.success("Registry settings updated")}catch(fe){const Re=fe;Te.error(Re instanceof Error?Re.message:"Failed to save registry settings")}};let B;e[15]!==i||e[16]!==n||e[17]!==l||e[18]!==r?(B=()=>{h(r),x(i),v(n),N(l)},e[15]=i,e[16]=n,e[17]=l,e[18]=r,e[19]=B):B=e[19];const K=B,F="h-full overflow-auto px-4 md:px-6 py-4";let O;e[20]!==K||e[21]!==M||e[22]!==k?(O=M&&s.jsxs(te,{variant:"outline",size:"sm",onClick:K,disabled:k,children:[s.jsx(Zs,{size:14}),"Undo"]}),e[20]=K,e[21]=M,e[22]=k,e[23]=O):O=e[23];const G=k||!M;let Y;e[24]!==k?(Y=k?s.jsx(ot,{size:14,className:"animate-spin"}):s.jsx(Js,{size:14}),e[24]=k,e[25]=Y):Y=e[25];let V;e[26]!==A||e[27]!==Y||e[28]!==G?(V=s.jsxs(te,{variant:"default",size:"sm",onClick:A,disabled:G,children:[Y,"Save"]}),e[26]=A,e[27]=Y,e[28]=G,e[29]=V):V=e[29];let X;e[30]!==V||e[31]!==O?(X=s.jsxs("div",{className:"flex items-center justify-end gap-2 mb-4 min-h-[32px]",children:[O,V]}),e[30]=V,e[31]=O,e[32]=X):X=e[32];const se="grid grid-cols-1 gap-4 items-start xl:grid-cols-2";let re;e[33]===Symbol.for("react.memo_cache_sentinel")?(re=s.jsxs("div",{children:[s.jsx("h3",{className:"text-base font-semibold",children:"Registry Identity"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Configure the name and icon shown in the store selector."})]}),e[33]=re):re=e[33];let q;e[34]===Symbol.for("react.memo_cache_sentinel")?(q=s.jsx(Ee,{htmlFor:"identity-name",children:"Name"}),e[34]=q):q=e[34];let ne;e[35]===Symbol.for("react.memo_cache_sentinel")?(ne=oe=>h(oe.target.value),e[35]=ne):ne=e[35];let Q;e[36]!==c?(Q=s.jsxs("div",{className:"grid gap-1.5",children:[q,s.jsx($e,{id:"identity-name",value:c,onChange:ne,placeholder:"Private Registry"})]}),e[36]=c,e[37]=Q):Q=e[37];let W;e[38]!==R||e[39]!==p||e[40]!==a?(W=s.jsx(os,{value:p,onChange:x,onFileUpload:R,isUploading:a}),e[38]=R,e[39]=p,e[40]=a,e[41]=W):W=e[41];let Z;e[42]!==Q||e[43]!==W?(Z=s.jsxs(xt,{className:"min-w-0 p-4 grid gap-4 content-start",children:[re,Q,W]}),e[42]=Q,e[43]=W,e[44]=Z):Z=e[44];const le="grid gap-4 min-w-0 content-start";let me;e[45]===Symbol.for("react.memo_cache_sentinel")?(me=s.jsxs("div",{children:[s.jsx("h3",{className:"text-base font-semibold",children:"Public Registry"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Public URL to consume this registry as an MCP."})]}),e[45]=me):me=e[45];const ve=_===1?"public item":"public items";let ae;e[46]!==_||e[47]!==ve?(ae=s.jsxs("div",{className:"flex items-center justify-between gap-2",children:[me,s.jsxs(je,{variant:"secondary",children:[_," ",ve]})]}),e[46]=_,e[47]=ve,e[48]=ae):ae=e[48];let he;e[49]===Symbol.for("react.memo_cache_sentinel")?(he=s.jsx(Nt,{size:14,className:"text-muted-foreground shrink-0"}),e[49]=he):he=e[49];let ee;e[50]!==E?(ee=s.jsx("code",{className:"text-xs font-mono break-all leading-5 min-w-0",children:E}),e[50]=E,e[51]=ee):ee=e[51];let ce;e[52]!==E?(ce=()=>{navigator.clipboard.writeText(E),Te.success("URL copied to clipboard")},e[52]=E,e[53]=ce):ce=e[53];let J;e[54]===Symbol.for("react.memo_cache_sentinel")?(J=s.jsx(_t,{size:12}),e[54]=J):J=e[54];let ue;e[55]!==ce?(ue=s.jsxs(te,{variant:"ghost",size:"sm",className:"h-7 gap-1.5 text-xs shrink-0",onClick:ce,children:[J,"Copy"]}),e[55]=ce,e[56]=ue):ue=e[56];let P;e[57]!==ee||e[58]!==ue?(P=s.jsxs("div",{className:"rounded-lg border border-border bg-muted/30 px-3 py-2 grid grid-cols-[auto,1fr,auto] items-start gap-2 min-w-0",children:[he,ee,ue]}),e[57]=ee,e[58]=ue,e[59]=P):P=e[59];let ie;e[60]!==ae||e[61]!==P?(ie=s.jsxs(xt,{className:"min-w-0 p-4 grid gap-3 content-start",children:[ae,P]}),e[60]=ae,e[61]=P,e[62]=ie):ie=e[62];const pe=xt,ye="min-w-0 p-4 grid gap-3 content-start";let xe;e[63]===Symbol.for("react.memo_cache_sentinel")?(xe=s.jsxs("div",{children:[s.jsx("h3",{className:"text-base font-semibold",children:"AI Configuration"}),s.jsx("p",{className:"text-sm text-muted-foreground",children:"Set the default model used for AI suggestions."})]}),e[63]=xe):xe=e[63];const Ce=Br,ge=D.map(Yr);let be;e[64]!==$?(be=$.map(Kr),e[64]=$,e[65]=be):be=e[65];let de;e[66]===Symbol.for("react.memo_cache_sentinel")?(de=oe=>{v(oe),N("")},e[66]=de):de=e[66];let Se;e[67]!==Ce||e[68]!==w||e[69]!==g||e[70]!==ge||e[71]!==be?(Se=s.jsx(Ce,{connectionId:w,modelId:g,connections:ge,models:be,onConnectionChange:de,onModelChange:N}),e[67]=Ce,e[68]=w,e[69]=g,e[70]=ge,e[71]=be,e[72]=Se):Se=e[72];let _e;e[73]!==pe||e[74]!==xe||e[75]!==Se?(_e=s.jsxs(pe,{className:ye,children:[xe,Se]}),e[73]=pe,e[74]=xe,e[75]=Se,e[76]=_e):_e=e[76];let ke;e[77]!==ie||e[78]!==_e?(ke=s.jsxs("div",{className:le,children:[ie,_e]}),e[77]=ie,e[78]=_e,e[79]=ke):ke=e[79];let H;e[80]!==Z||e[81]!==ke?(H=s.jsxs("div",{className:se,children:[Z,ke]}),e[80]=Z,e[81]=ke,e[82]=H):H=e[82];let we;return e[83]!==X||e[84]!==H?(we=s.jsxs("div",{className:F,children:[X,H]}),e[83]=X,e[84]=H,e[85]=we):we=e[85],we}function Kr(t){return{id:t.id,title:t.title||t.id,logo:t.logo??null,capabilities:t.capabilities??[]}}function Yr(t){return{id:t.id,title:t.title,icon:t.icon??null}}function Wr(t){return t.is_public}function Zr(t){return t.items??[]}function Jr(t){return(t.tools??[]).some(Xr)}function Xr(t){return t.name==="LLM_DO_GENERATE"}function ei(t){const e=Ie.c(9),{activeTab:r,onChange:i,items:n}=t;let l;if(e[0]!==r||e[1]!==n||e[2]!==i){let o;e[4]!==r||e[5]!==i?(o=a=>{const u=r===a.tab,c=a.icon;return s.jsxs("button",{type:"button",className:ze("h-7 px-2 text-sm rounded-lg border border-input transition-colors inline-flex gap-1.5 items-center whitespace-nowrap",u?"bg-accent border-border text-foreground":"bg-transparent text-muted-foreground hover:border-border hover:bg-accent/50 hover:text-foreground"),onClick:()=>i(a.tab),children:[s.jsx(c,{size:14}),s.jsx("span",{children:a.label})]},a.id)},e[4]=r,e[5]=i,e[6]=o):o=e[6],l=n.map(o),e[0]=r,e[1]=n,e[2]=i,e[3]=l}else l=e[3];let m;return e[7]!==l?(m=s.jsx("nav",{className:"flex items-center gap-2 overflow-x-auto no-scrollbar",children:l}),e[7]=l,e[8]=m):m=e[8],m}const ti=[{id:"items",label:"Items",icon:ws,tab:"items"},{id:"settings",label:"Settings",icon:Ss,tab:"settings"}];function Qi(){const t=Ie.c(30),[e,r]=C.useState("items"),{registryName:i,registryIcon:n,registryLLMConnectionId:l,registryLLMModelId:m}=It(bt),o=`${i}|${n}|${l}|${m}`;let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a=()=>r("settings"),t[0]=a):a=t[0];let u;t[1]!==n||t[2]!==i?(u=s.jsx("div",{className:"size-7 rounded-lg border border-border overflow-hidden bg-muted/20 flex items-center justify-center shrink-0",children:n?s.jsx("img",{src:n,alt:i,className:"h-full w-full object-cover"}):s.jsx("span",{className:"text-[10px] font-semibold text-muted-foreground",children:i.slice(0,1).toUpperCase()})}),t[1]=n,t[2]=i,t[3]=u):u=t[3];let c;t[4]!==i?(c=s.jsx("span",{className:"text-sm font-medium truncate max-w-[220px]",children:i}),t[4]=i,t[5]=c):c=t[5];let h;t[6]!==u||t[7]!==c?(h=s.jsxs("button",{type:"button",className:"min-w-0 flex items-center gap-2 hover:opacity-90 transition-opacity cursor-pointer",onClick:a,children:[u,c]}),t[6]=u,t[7]=c,t[8]=h):h=t[8];let p;t[9]===Symbol.for("react.memo_cache_sentinel")?(p=s.jsx("div",{className:"h-6 w-px bg-border shrink-0"}),t[9]=p):p=t[9];let x;t[10]!==e?(x=s.jsx(ei,{activeTab:e,onChange:r,items:ti}),t[10]=e,t[11]=x):x=t[11];let d;t[12]!==h||t[13]!==x?(d=s.jsx("header",{className:"shrink-0 w-full border-b border-border h-12 overflow-x-auto flex items-center justify-between gap-3 px-4 min-w-max",children:s.jsxs("div",{className:"flex items-center gap-3 min-w-0",children:[h,p,x]})}),t[12]=h,t[13]=x,t[14]=d):d=t[14];let v;t[15]!==e?(v=e==="items"&&s.jsx(Mr,{}),t[15]=e,t[16]=v):v=t[16];let g;t[17]!==e||t[18]!==n||t[19]!==l||t[20]!==m||t[21]!==i||t[22]!==o?(g=e==="settings"&&s.jsx(Hr,{initialName:i,initialIcon:n,initialLLMConnectionId:l,initialLLMModelId:m},o),t[17]=e,t[18]=n,t[19]=l,t[20]=m,t[21]=i,t[22]=o,t[23]=g):g=t[23];let N;t[24]!==v||t[25]!==g?(N=s.jsxs("main",{className:"flex-1 min-w-0 overflow-hidden",children:[v,g]}),t[24]=v,t[25]=g,t[26]=N):N=t[26];let S;return t[27]!==d||t[28]!==N?(S=s.jsxs("div",{className:"h-full flex flex-col bg-background overflow-hidden",children:[d,N]}),t[27]=d,t[28]=N,t[29]=S):S=t[29],S}export{Qi as default};
@@ -1 +0,0 @@
1
- import{c as B,j as r,r as F,u as O,m as W,n as Q,K as Y}from"./index-Dp8TDmPV.js";import"./index-BuinBUAv.js";import{C as G,a as J}from"./collection-table-wrapper-DuKaQpn1.js";import{C as X}from"./collection-search-BzW9Bci5.js";import{E as I}from"./empty-state-CegLfGmA.js";import{E as Z}from"./error-boundary-BHZBr65c.js";import{P as h}from"./index-DQZLC-Ha.js";import{u as ee,U as te}from"./use-list-state-j_os04A2.js";import{f as re}from"./format-time-CMKyl-GC.js";import{a as se,u as oe}from"./constants-LnQa4w9L.js";import{B as ie,a as ae,b as le,c as ne}from"./breadcrumb-DLtCbZMJ.js";import{B as f}from"./badge-DEQawiWd.js";import{i as ce}from"./AlertCircle-Uhm-vg87.js";import{c as me}from"./AlertOctagon-BnG7_0Lj.js";import{n as V}from"./CheckDone01-TcspZYjj.js";import{i as de}from"./Check-RSjbQD0O.js";import{s as pe}from"./Clock-DXNO1b12.js";import{i as R}from"./Loading01-CXnHH69h.js";import{u as ue}from"./use-deco-chat-open-cRBnqBrA.js";import"./button-CJa3f3rL.js";import"./popover-NmdUTNcA.js";import"./spinner-uWSwEI1n.js";import"./tooltip-C8pD5y5P.js";import"./index-DBhC1Bw_.js";import"./use-mcp-prompts-BgJx9Ng3.js";import"./useQuery-DCx9kDUK.js";import"./dialog-Bzq7eXqS.js";import"./X-CMKSGw1c.js";import"./form-BiNvV3_m.js";import"./label-SUAIjh3i.js";import"./input-DNUbpYNz.js";import"./integration-icon-BrB9FdFC.js";import"./Container-CS-v1KY-.js";import"./ArrowUp-o8GkJfpb.js";import"./ChevronDown-C42nqF2a.js";import"./Edit01-BR94fmFd.js";import"./Users03-CrTVA02D.js";import"./ArrowLeft-DZdpcFcm.js";import"./ArrowRight-DDCJ7vCm.js";import"./Code01-n69ilXrX.js";import"./use-virtual-mcp-CamkpUx0.js";import"./use-connection-Bpj__KJl.js";import"./useMutation-CkwG6xTN.js";import"./SearchMd-vTjANW25.js";import"./use-create-virtual-mcp-2ig7XE3k.js";import"./usage-B8eRkRZY.js";import"./ChevronRight-CYPNNnez.js";import"./marked.esm-BaswSlok.js";import"./Copy01-BCPsfObr.js";import"./generate-id-Dyweu44Y.js";import"./Trash01-ULZyLlT5.js";import"./dropdown-menu-DC2vYQhY.js";import"./Grid01-pdQxycFL.js";import"./List-Dd8vk8oh.js";import"./view-mode-toggle-CkMs1Dwx.js";import"./table-C_SqJ2pz.js";import"./avatar-CNNflJo3.js";import"./use-view-mode-B21E886q.js";import"./use-mobile-BhG5mqie.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-llm-C9Qa_Kzo.js";import"./use-binding-BMUJf9fk.js";import"./binder-Dgk1prvv.js";import"./localstorage-keys-DvX9S-u8.js";import"./select-C2nUbKfi.js";import"./File06-CSDN93G4.js";import"./Image01-Bsy7A2Dk.js";import"./RefreshCcw01-h4iMlxqc.js";import"./useSuspenseInfiniteQuery-CYwzFakG.js";import"./infiniteQueryObserver-D_e-0DLm.js";function fe(e){const s=B.c(7),{status:a}=e;switch(a){case"in_progress":{let o;return s[0]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(f,{variant:"secondary",className:"gap-1",children:[r.jsx(R,{size:11,className:"animate-spin"}),"Running"]}),s[0]=o):o=s[0],o}case"completed":{let o;return s[1]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(f,{variant:"success",className:"gap-1",children:[r.jsx(de,{size:11}),"Completed"]}),s[1]=o):o=s[1],o}case"requires_action":{let o;return s[2]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(f,{variant:"outline",className:"gap-1 text-blue-600 border-blue-600/40",children:[r.jsx(ce,{size:11}),"Waiting for input"]}),s[2]=o):o=s[2],o}case"failed":{let o;return s[3]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(f,{variant:"destructive",className:"gap-1",children:[r.jsx(me,{size:11}),"Failed"]}),s[3]=o):o=s[3],o}case"expired":{let o;return s[4]===Symbol.for("react.memo_cache_sentinel")?(o=r.jsxs(f,{variant:"outline",className:"gap-1 text-warning border-warning/40",children:[r.jsx(pe,{size:11}),"Timed out"]}),s[4]=o):o=s[4],o}default:{let o;return s[5]!==a?(o=r.jsx(f,{variant:"secondary",className:"gap-1",children:a}),s[5]=a,s[6]=o):o=s[6],o}}}function he(){const e=B.c(49),{org:s,project:a,locator:o}=O();let x;e[0]!==s.id?(x={connectionId:se,orgId:s.id},e[0]=s.id,e[1]=x):x=e[1];const g=oe(x),v=W(),{switchToThread:k}=ue();let j;e[2]!==s.slug?(j={namespace:s.slug,resource:"tasks",defaultSortKey:"updated_at",defaultViewMode:"table"},e[2]=s.slug,e[3]=j):j=e[3];const t=ee(j);let l;e[4]!==o?(l=Y.taskThreads(o),e[4]=o,e[5]=l):l=e[5];let n;e[6]!==g?(n=async()=>{if(!g)throw new Error("MCP client is not available");const i=await g.callTool({name:"COLLECTION_THREADS_LIST",arguments:{limit:100,offset:0}});return(i.structuredContent??i).items??[]},e[6]=g,e[7]=n):n=e[7];let y;e[8]!==l||e[9]!==n?(y={queryKey:l,queryFn:n,staleTime:3e4},e[8]=l,e[9]=n,e[10]=y):y=e[10];const{data:D}=Q(y);let S;if(e[11]!==D||e[12]!==t){const i=D.filter(Se),z=t.searchTerm?i.filter(M=>M.title.toLowerCase().includes(t.searchTerm.toLowerCase())):i;let T;e[14]!==t?(T=(M,H)=>{const{sortKey:L,sortDirection:P}=t;if(!L||!P)return 0;const U=String(M[L]??""),q=String(H[L]??""),$=U.localeCompare(q);return P==="asc"?$:-$},e[14]=t,e[15]=T):T=e[15],S=[...z].sort(T),e[11]=D,e[12]=t,e[13]=S}else S=e[13];const K=S;let _;e[16]!==v||e[17]!==s.slug||e[18]!==a.slug||e[19]!==k?(_=async i=>{await k(i.id),v({to:"/$org/$project",params:{org:s.slug,project:a.slug}})},e[16]=v,e[17]=s.slug,e[18]=a.slug,e[19]=k,e[20]=_):_=e[20];const E=_;let b;e[21]===Symbol.for("react.memo_cache_sentinel")?(b=[{id:"title",header:"Title",render:ye,cellClassName:"flex-1 min-w-0",sortable:!0},{id:"status",header:"Status",render:je,cellClassName:"w-40 shrink-0",sortable:!0},{id:"created_by",header:"Created by",render:ge,cellClassName:"w-32 shrink-0"},{id:"updated_at",header:"Updated",render:xe,cellClassName:"max-w-24 w-24 shrink-0",sortable:!0}],e[21]=b):b=e[21];const A=b;let w;e[22]===Symbol.for("react.memo_cache_sentinel")?(w=r.jsx(h.Header.Left,{children:r.jsx(ie,{children:r.jsx(ae,{children:r.jsx(le,{children:r.jsx(ne,{children:"Tasks"})})})})}),e[22]=w):w=e[22];let C;e[23]===Symbol.for("react.memo_cache_sentinel")?(C=[{id:"title",label:"Title"},{id:"status",label:"Status"},{id:"updated_at",label:"Updated"}],e[23]=C):C=e[23];let c;e[24]!==t.handleSort||e[25]!==t.setViewMode||e[26]!==t.sortDirection||e[27]!==t.sortKey||e[28]!==t.viewMode?(c=r.jsxs(h.Header,{children:[w,r.jsx(h.Header.Right,{children:r.jsx(G,{viewMode:t.viewMode,onViewModeChange:t.setViewMode,sortKey:t.sortKey,sortDirection:t.sortDirection,onSort:t.handleSort,sortOptions:C})})]}),e[24]=t.handleSort,e[25]=t.setViewMode,e[26]=t.sortDirection,e[27]=t.sortKey,e[28]=t.viewMode,e[29]=c):c=e[29];let m;e[30]!==t?(m=i=>{i.key==="Escape"&&(t.setSearch(""),i.target.blur())},e[30]=t,e[31]=m):m=e[31];let d;e[32]!==t.search||e[33]!==t.setSearch||e[34]!==m?(d=r.jsx(X,{value:t.search,onChange:t.setSearch,placeholder:"Search tasks...",onKeyDown:m}),e[32]=t.search,e[33]=t.setSearch,e[34]=m,e[35]=d):d=e[35];let p;e[36]!==t.search?(p=t.search?r.jsx(I,{image:r.jsx(V,{size:36,className:"text-muted-foreground"}),title:"No tasks found",description:`No tasks match "${t.search}"`}):r.jsx(I,{image:r.jsx("div",{className:"flex items-center justify-center w-16 h-16 rounded-full bg-muted",children:r.jsx(V,{size:32,className:"text-muted-foreground"})}),title:"No tasks yet",description:"Tasks will appear here when agents start processing work."}),e[36]=t.search,e[37]=p):p=e[37];let u;e[38]!==t.handleSort||e[39]!==t.sortDirection||e[40]!==t.sortKey||e[41]!==E||e[42]!==p||e[43]!==K?(u=r.jsx(h.Content,{children:r.jsx("div",{className:"h-full flex flex-col overflow-hidden",children:r.jsx(J,{columns:A,data:K,isLoading:!1,sortKey:t.sortKey,sortDirection:t.sortDirection,onSort:t.handleSort,onRowClick:E,emptyState:p})})}),e[38]=t.handleSort,e[39]=t.sortDirection,e[40]=t.sortKey,e[41]=E,e[42]=p,e[43]=K,e[44]=u):u=e[44];let N;return e[45]!==c||e[46]!==d||e[47]!==u?(N=r.jsxs(h,{children:[c,d,u]}),e[45]=c,e[46]=d,e[47]=u,e[48]=N):N=e[48],N}function xe(e){return r.jsx("span",{className:"text-xs text-muted-foreground whitespace-nowrap",children:e.updated_at?re(new Date(e.updated_at)):"—"})}function ge(e){return r.jsx(te,{id:e.created_by,size:"3xs"})}function je(e){return r.jsx(fe,{status:e.status??"completed"})}function ye(e){return r.jsx("span",{className:"text-sm font-medium text-foreground truncate",children:e.title})}function Se(e){return!e.hidden}function $t(){const e=B.c(1);let s;return e[0]===Symbol.for("react.memo_cache_sentinel")?(s=r.jsx(Z,{children:r.jsx(F.Suspense,{fallback:r.jsx("div",{className:"flex h-full items-center justify-center",children:r.jsx(R,{size:32,className:"animate-spin text-muted-foreground"})}),children:r.jsx(he,{})})}),e[0]=s):s=e[0],s}export{$t as default};
@@ -1 +0,0 @@
1
- import{I as u}from"./infiniteQueryObserver-D_e-0DLm.js";import{B as i}from"./index-Dp8TDmPV.js";function t(e,r){return i(e,u,r)}export{t as u};
@@ -1 +0,0 @@
1
- import{B as u,ac as s}from"./index-Dp8TDmPV.js";function o(e,r){return u(e,s,r)}export{o as u};
@@ -1 +0,0 @@
1
- import{I as s}from"./infiniteQueryObserver-D_e-0DLm.js";import{B as u,D as n}from"./index-Dp8TDmPV.js";function a(r,e){return u({...r,enabled:!0,suspense:!0,throwOnError:n},s,e)}export{a as u};